:root{--pd-ink:#0b0a0e;--pd-ink2:#15131a;--pd-paper:#f5f3ef;--pd-paper2:#ebe8e2;--pd-violet:#6d48d8;--pd-lavender:#b9a5ff;--pd-champagne:#d9b779;--pd-bronze:#7b463b}
body.pd-cinematic-active{margin:0!important;overflow-x:hidden!important;background:#0b0a0e!important}
body.pd-cinematic-active .site-header,body.pd-cinematic-active header.site-header,body.pd-cinematic-active #masthead,body.pd-cinematic-active .elementor-location-header{display:none!important}

/* Sticky cinematic chapters must not be trapped by Elementor or shortcode wrappers. */
body.pd-cinematic-active .elementor-widget-shortcode,
body.pd-cinematic-active .elementor-widget-shortcode>.elementor-widget-container,
body.pd-cinematic-active .elementor-shortcode{overflow:visible!important}
.pd-cinematic-site{--pd-progress:0;position:relative;width:100vw;margin-left:calc(50% - 50vw);background:var(--pd-ink);color:#fff;font-family:"Helvetica Neue","Aptos","Segoe UI",Arial,sans-serif;overflow:visible;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}
.pd-cinematic-site *{box-sizing:border-box}.pd-cinematic-site button,.pd-cinematic-site a{font:inherit}.pd-cinematic-site a{color:inherit;text-decoration:none}.pd-cinematic-site button{color:inherit}.pd-cinematic-site img,.pd-cinematic-site video{display:block;max-width:100%}.pd-cinematic-site ::selection{background:var(--pd-lavender);color:#111}
.pd-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--pd-paper);transition:opacity .8s ease,visibility .8s ease}.pd-loader.is-hidden{opacity:0;visibility:hidden}.pd-loader>div{width:min(72vw,570px)}.pd-loader img{width:100%;height:auto;opacity:0;transform:translateY(16px);animation:pdLogoIn .75s .1s ease forwards}.pd-loader i{display:block;height:1px;margin-top:24px;background:linear-gradient(90deg,var(--pd-violet),var(--pd-champagne),var(--pd-bronze));transform-origin:left;animation:pdLoad 1.35s .15s cubic-bezier(.65,0,.35,1) both}@keyframes pdLogoIn{to{opacity:1;transform:none}}@keyframes pdLoad{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.pd-grain{position:fixed;z-index:89;inset:0;pointer-events:none;opacity:.055;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E")}
.pd-nav{position:fixed;z-index:95;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:16px clamp(14px,3vw,44px);pointer-events:none}.pd-nav__brand,.pd-nav__actions{pointer-events:auto}.pd-nav__brand{display:block;width:var(--pd-logo-start);max-width:48vw;padding:8px 12px;border:1px solid rgba(255,255,255,var(--pd-logo-border-opacity));border-radius:999px;background:rgba(248,246,242,var(--pd-logo-bg-opacity));backdrop-filter:blur(var(--pd-logo-blur));box-shadow:0 18px 70px rgba(0,0,0,.12);transition:width .55s cubic-bezier(.16,1,.3,1),padding .4s ease}.pd-nav.is-scrolled .pd-nav__brand{width:var(--pd-logo-end);padding:6px 10px}.pd-nav__brand img{width:100%;height:auto;filter:drop-shadow(0 1px 1px rgba(255,255,255,.75)) drop-shadow(0 2px 8px rgba(0,0,0,.20))}.pd-nav__actions{display:flex;align-items:center;gap:9px;padding-top:2px}.pd-nav__menu{display:flex;gap:3px;padding:5px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(9,8,12,.28);backdrop-filter:blur(18px)}.pd-nav button{border:0;background:transparent;cursor:pointer}.pd-nav__menu button,.pd-nav__cta{padding:11px 15px;border-radius:999px;color:#fff;transition:.3s ease}.pd-nav__menu button:hover{background:rgba(255,255,255,.13)}.pd-nav__contacts{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:7px 10px;color:rgba(255,255,255,.84);font-size:11px;line-height:1.25;text-shadow:0 1px 12px rgba(0,0,0,.55)}.pd-nav__contacts a:hover{text-decoration:underline}.pd-nav__cta{display:inline-flex;border:1px solid rgba(255,255,255,.30);background:rgba(255,255,255,.12);backdrop-filter:blur(18px)}.pd-nav__cta:hover{background:#fff;color:#111}
.pd-hero{position:relative;min-height:100svh;display:grid;align-items:end;padding:150px clamp(20px,5vw,78px) clamp(36px,6vw,76px);overflow:hidden;isolation:isolate}.pd-hero__media{position:absolute;z-index:-4;inset:-6%;background:#181318;transform:scale(calc(1.06 + var(--pd-progress)*.07)) translate3d(0,calc(var(--pd-progress)*-2%),0);will-change:transform}.pd-hero__media img,.pd-hero__media video{width:100%;height:100%;object-fit:cover;object-position:var(--pd-object-position,50% 50%);filter:saturate(.92) contrast(1.04)}.pd-hero__mobile{display:none!important}.pd-hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,10,calc(.35 + var(--pd-hero-overlay))) 0%,rgba(8,7,10,calc(.10 + var(--pd-hero-overlay)*.65)) 42%,rgba(8,7,10,.08) 77%),linear-gradient(0deg,rgba(8,7,10,.77),transparent 52%)}.pd-hero__flare{position:absolute;z-index:-2;width:54vw;aspect-ratio:1;right:-18vw;top:-21vw;border-radius:50%;background:conic-gradient(from 20deg,rgba(255,255,255,.25),rgba(109,72,216,.08),rgba(217,183,121,.17),rgba(255,255,255,.02));filter:blur(48px);animation:pdSpin 20s linear infinite}@keyframes pdSpin{to{transform:rotate(360deg)}}.pd-hero__topline{position:absolute;left:clamp(20px,5vw,78px);top:128px;display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.68)}.pd-hero__topline:before{content:"";width:42px;height:1px;background:rgba(255,255,255,.55)}.pd-hero__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:clamp(36px,7vw,112px);align-items:end}.pd-hero h1{margin:0;max-width:1120px;font-size:clamp(58px,9.1vw,150px);line-height:.84;font-weight:300;letter-spacing:-.073em}.pd-hero h1 span{display:block;overflow:visible}.pd-hero h1 i{display:block;font-style:normal;transform:translateY(108%);animation:pdLineIn 1.15s cubic-bezier(.16,1,.3,1) forwards}.pd-hero h1 span:nth-child(2) i{animation-delay:.10s;color:rgba(255,255,255,.08);-webkit-text-stroke:1.35px rgba(255,255,255,.95)}@keyframes pdLineIn{to{transform:none}}.pd-hero__copy{padding-bottom:1vw}.pd-hero__copy p{margin:0 0 28px;color:rgba(255,255,255,.78);font-size:clamp(16px,1.35vw,20px);line-height:1.6}.pd-hero__services{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.pd-hero__services span{border:1px solid rgba(255,255,255,.20);background:rgba(10,9,13,.20);backdrop-filter:blur(14px);border-radius:999px;padding:9px 12px;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.pd-btn{display:inline-flex;align-items:center;gap:14px;border:1px solid rgba(255,255,255,.33);background:rgba(255,255,255,.11);backdrop-filter:blur(18px);color:#fff;border-radius:999px;padding:14px 16px 14px 21px;cursor:pointer;transition:.34s ease}.pd-btn span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#111;transition:.34s ease}.pd-btn:hover{background:#fff;color:#111;transform:translateY(-2px)}.pd-btn:hover span{background:#111;color:#fff;transform:rotate(45deg)}.pd-btn--dark{border-color:#17151a;background:#17151a;color:#fff;backdrop-filter:none}.pd-hero__scroll{position:absolute;right:clamp(18px,3vw,42px);bottom:clamp(32px,5vw,68px);display:flex;align-items:center;gap:14px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.52)}.pd-hero__scroll:after{content:"";width:1px;height:66px;background:linear-gradient(#fff,transparent);animation:pdScrollLine 1.8s ease-in-out infinite}@keyframes pdScrollLine{0%,100%{transform:scaleY(.22);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}
.pd-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--pd-lavender)}.pd-reveal{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.pd-reveal.is-visible{opacity:1;transform:none}
.pd-clarity{background:var(--pd-paper);color:#161419;padding:clamp(96px,15vw,220px) clamp(20px,6vw,92px);position:relative;overflow:hidden}.pd-clarity__eyebrow{margin-bottom:42px;color:var(--pd-violet);font-size:12px;letter-spacing:.13em;text-transform:uppercase}.pd-clarity h2{margin:0;max-width:1350px;font-size:clamp(45px,7vw,110px);font-weight:300;line-height:.95;letter-spacing:-.058em}.pd-clarity h2 em{font-style:normal;color:var(--pd-violet)}.pd-clarity__bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:56px;align-items:end}.pd-clarity__bottom>p{margin:0;max-width:590px;color:#6e6972;font-size:clamp(17px,1.45vw,21px);line-height:1.64}.pd-cap-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #d5d0c8}.pd-cap-list button{width:100%;min-height:66px;padding:17px 0;border:0;border-bottom:1px solid #d5d0c8;background:transparent;color:#17151a;text-align:left;cursor:pointer;font-size:13px;line-height:1.35;letter-spacing:.04em;transition:color .25s ease,background .25s ease}.pd-cap-list button:nth-child(even){padding-left:28px;border-left:1px solid #d5d0c8}.pd-cap-list button:hover{color:var(--pd-violet);background:rgba(109,72,216,.025)}
.pd-directions{background:#111016;padding:clamp(90px,12vw,160px) clamp(20px,5vw,76px)}.pd-directions__head{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:end;margin-bottom:56px}.pd-directions h2{margin:15px 0 0;font-size:clamp(44px,6.3vw,96px);font-weight:300;line-height:.93;letter-spacing:-.058em}.pd-directions__head p{margin:0;color:#a8a1ad;font-size:18px;line-height:1.65;max-width:560px}.pd-direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pd-direction-card{position:relative;min-height:68svh;border-radius:28px;overflow:hidden;isolation:isolate;cursor:pointer}.pd-direction-card--wide{grid-column:1/-1;min-height:74svh}.pd-direction-card__media,.pd-direction-card>.pd-placeholder{position:absolute;inset:-3%;width:106%;height:106%;object-fit:cover;object-position:var(--pd-object-position,50% 50%);transition:transform .9s cubic-bezier(.16,1,.3,1),filter .7s ease}.pd-direction-card:hover .pd-direction-card__media{transform:scale(1.035)}.pd-direction-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,7,11,.84),transparent 60%),linear-gradient(90deg,rgba(8,7,11,.18),transparent 55%)}.pd-direction-card__content{position:absolute;z-index:2;left:clamp(22px,3vw,46px);right:clamp(22px,3vw,46px);bottom:clamp(22px,3vw,42px)}.pd-direction-card__content>div{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:16px}.pd-direction-card h3{margin:0 0 13px;font-size:clamp(38px,4.6vw,74px);font-weight:300;letter-spacing:-.055em;line-height:.92}.pd-direction-card p{margin:0;max-width:720px;color:rgba(255,255,255,.76);line-height:1.55}.pd-direction-card p strong{color:#fff;font-weight:500}
.pd-story{position:relative;height:calc(100svh + (var(--pd-slide-count) - 1)*72svh);background:#0b090d}.pd-story--light{background:#f1eee8;color:#151319}.pd-story__sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate}.pd-story__slides{position:absolute;inset:0;z-index:-3}.pd-story--light .pd-story__slides{left:38%;background:#d9d4cc}.pd-story__slide{position:absolute;inset:-3%;opacity:0;transform:scale(1.07);transition:opacity .55s linear,transform .9s cubic-bezier(.16,1,.3,1)}.pd-story__slide.is-active{opacity:1;transform:scale(1.015)}.pd-story__media,.pd-story__slide>.pd-placeholder{width:100%;height:100%;object-fit:cover;object-position:var(--pd-object-position,50% 50%)}.pd-story__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,7,10,.89) 0%,rgba(8,7,10,.40) 44%,rgba(8,7,10,.10) 75%),linear-gradient(0deg,rgba(8,7,10,.62),transparent 48%);pointer-events:none}.pd-story--light .pd-story__shade{background:none}.pd-story__content{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);gap:50px;align-items:end;padding:130px clamp(20px,6vw,92px) clamp(38px,6vw,76px)}.pd-story--light .pd-story__content{grid-template-columns:minmax(300px,.38fr) minmax(0,.62fr);grid-template-rows:auto auto;align-content:end;gap:22px 48px;background:linear-gradient(90deg,rgba(245,243,239,1) 0%,rgba(245,243,239,1) 38%,transparent 38%)}.pd-story--light .pd-story__heading{grid-column:1;grid-row:1}.pd-story--light .pd-story__info{grid-column:1;grid-row:2;max-width:480px;padding:0 0 1.5vw}.pd-story__chapter{margin-bottom:18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.66)}.pd-story--light .pd-story__chapter{color:#6a646e}.pd-story__title{margin:0;max-width:74vw;font-size:clamp(64px,11.2vw,180px);line-height:.82;font-weight:300;letter-spacing:-.072em;overflow:visible;word-break:normal}.pd-story__title span{display:block;overflow:visible}.pd-story__title-outline{color:rgba(255,255,255,.07);-webkit-text-stroke:1.4px rgba(255,255,255,.92)}.pd-story--light .pd-story__title{max-width:36vw;font-size:clamp(58px,7.2vw,112px);line-height:.86;color:#151319}.pd-story--light .pd-story__title-outline{color:rgba(21,19,25,.06);-webkit-text-stroke:1.2px rgba(21,19,25,.55)}.pd-story__info{align-self:end;padding:0 0 1.5vw;max-width:560px}.pd-story__intro{margin-bottom:22px;color:rgba(255,255,255,.60);font-size:13px;line-height:1.52}.pd-story__info h3{margin:0 0 15px;font-size:clamp(30px,3.2vw,50px);font-weight:300;line-height:1;letter-spacing:-.045em}.pd-story__info p{margin:0 0 24px;color:rgba(255,255,255,.74);line-height:1.6;font-size:17px}.pd-story--light .pd-story__intro,.pd-story--light .pd-story__info p{color:#68616a}.pd-story__progress{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.58)}.pd-story--light .pd-story__progress{color:#6a646d}.pd-story__track{height:1px;flex:1;max-width:230px;background:rgba(255,255,255,.25);overflow:hidden}.pd-story--light .pd-story__track{background:rgba(20,18,24,.18)}.pd-story__track i{display:block;height:100%;width:0;background:currentColor;transition:width .45s ease}.pd-story__format{position:absolute;z-index:4;top:124px;right:clamp(20px,6vw,92px);padding:11px 16px;border:1px solid rgba(255,255,255,.30);border-radius:999px;background:rgba(25,14,11,.38);backdrop-filter:blur(16px);font-size:12px;letter-spacing:.04em;color:#f5e6c9}.pd-story--bronze .pd-story__shade{background:linear-gradient(90deg,rgba(26,15,12,.77),rgba(26,15,12,.10) 70%),linear-gradient(0deg,rgba(26,15,12,.65),transparent 54%)}.pd-story--technical,.pd-story--technical-dark{background:#15131a}.pd-story--technical .pd-story__shade,.pd-story--technical-dark .pd-story__shade{background:linear-gradient(90deg,rgba(10,9,13,.86),rgba(10,9,13,.16) 66%),linear-gradient(0deg,rgba(10,9,13,.78),transparent 55%)}.pd-story--technical .pd-story__title-outline,.pd-story--technical-dark .pd-story__title-outline{-webkit-text-stroke-color:rgba(199,185,255,.88)}
.pd-placeholder{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 17%,rgba(255,255,255,.12),transparent 22%),linear-gradient(145deg,#27242d,#0e0d11)}.pd-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.08) 47%,transparent 68%);transform:translateX(-100%);animation:pdSheen 5s ease-in-out infinite}@keyframes pdSheen{45%,100%{transform:translateX(100%)}}.pd-placeholder--waterjet span{position:absolute;inset:17%;clip-path:polygon(5% 12%,76% 4%,95% 27%,66% 48%,89% 75%,55% 94%,11% 80%,24% 47%);background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.025));filter:drop-shadow(0 38px 60px rgba(0,0,0,.45));transform:rotate(-4deg)}.pd-placeholder--waterjet i{position:absolute;inset:17%;clip-path:polygon(5% 12%,76% 4%,95% 27%,66% 48%,89% 75%,55% 94%,11% 80%,24% 47%);border:2px solid var(--pd-lavender);filter:drop-shadow(0 0 13px rgba(199,185,255,.6));animation:pdTrace 4s ease-in-out infinite alternate}@keyframes pdTrace{from{opacity:.18;transform:translate(-1%,1%) rotate(-4deg)}to{opacity:.9;transform:translate(1%,-1%) rotate(-4deg)}}.pd-placeholder--cnc span{position:absolute;inset:16% 11%;border-radius:26px;background:repeating-linear-gradient(112deg,rgba(255,255,255,.055) 0 1px,transparent 1px 8px),linear-gradient(145deg,#6b6257,#25221f);box-shadow:0 42px 100px rgba(0,0,0,.55),inset -26px -27px 50px rgba(0,0,0,.38);transform:rotate(-4deg)}.pd-placeholder--cnc i{position:absolute;width:95px;aspect-ratio:1;left:32%;top:35%;border-radius:50%;background:radial-gradient(circle,#171411 0 18%,#a69e92 19% 35%,#ece6dc 36% 47%,#70685f 48% 52%,transparent 53%);filter:drop-shadow(0 13px 18px rgba(0,0,0,.4));animation:pdHole 4s ease-in-out infinite alternate}@keyframes pdHole{to{transform:scale(1.07)}}
.pd-quick-contact{display:grid;grid-template-columns:1fr auto;gap:42px;align-items:center;padding:52px clamp(20px,6vw,92px);background:var(--pd-paper);color:#17151a;border-top:1px solid #d8d2ca;border-bottom:1px solid #d8d2ca}.pd-quick-contact h2{margin:0 0 8px;font-size:clamp(30px,3.7vw,58px);font-weight:300;letter-spacing:-.045em}.pd-quick-contact p{margin:0;max-width:700px;color:#6d6670;line-height:1.6}.pd-quick-contact__actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.pd-quick-contact__actions>a:not(.pd-btn){color:#4f4953;font-size:13px}.pd-quick-contact__actions>a:not(.pd-btn):hover{text-decoration:underline}
.pd-gallery{background:var(--pd-paper);color:#17151a;padding:clamp(94px,12vw,165px) 0;overflow:hidden}.pd-gallery__head{padding:0 clamp(20px,6vw,92px);display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:46px}.pd-gallery .pd-kicker{color:var(--pd-violet)}.pd-gallery h2{margin:15px 0 0;font-size:clamp(44px,6.4vw,96px);font-weight:300;line-height:.94;letter-spacing:-.058em}.pd-gallery__head p{margin:0;color:#6d6670;font-size:18px;line-height:1.62;max-width:560px}.pd-gallery__rail{display:flex;gap:16px;overflow-x:auto;padding:0 clamp(20px,6vw,92px) 18px;scroll-snap-type:x mandatory;scrollbar-width:none}.pd-gallery__rail::-webkit-scrollbar{display:none}.pd-gallery-card{position:relative;flex:0 0 min(64vw,720px);aspect-ratio:1.45;border-radius:24px;overflow:hidden;scroll-snap-align:start;background:#ddd}.pd-gallery-card--portrait{flex-basis:min(38vw,430px);aspect-ratio:.72}.pd-gallery-card__media,.pd-gallery-card>.pd-placeholder{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:var(--pd-object-position,50% 50%);transition:transform .8s cubic-bezier(.16,1,.3,1)}.pd-gallery-card:hover .pd-gallery-card__media{transform:scale(1.025)}.pd-gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,7,10,.65),transparent 45%)}.pd-gallery-card>span{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#fff;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.pd-contact{position:relative;min-height:100svh;padding:130px clamp(20px,6vw,92px) 48px;display:grid;align-items:center;overflow:hidden;background:#0e0c12;isolation:isolate}.pd-contact__bg{position:absolute;inset:-8%;z-index:-3}.pd-contact__media{width:100%;height:100%;object-fit:cover;object-position:var(--pd-object-position,50% 50%);filter:saturate(.82) contrast(1.08);transform:scale(1.07)}.pd-contact__bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,8,12,.94),rgba(9,8,12,.67) 54%,rgba(9,8,12,.18)),linear-gradient(0deg,rgba(9,8,12,.76),transparent 60%)}.pd-contact__inner{max-width:1080px}.pd-contact h2{margin:18px 0 28px;font-size:clamp(54px,9.2vw,142px);font-weight:300;line-height:.86;letter-spacing:-.067em}.pd-contact p{max-width:670px;margin:0 0 24px;color:rgba(255,255,255,.75);font-size:19px;line-height:1.62}.pd-contact__links{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:28px;color:rgba(255,255,255,.86)}.pd-contact__links a{border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:3px}.pd-plugin-footer{position:absolute;left:clamp(20px,6vw,92px);right:clamp(20px,6vw,92px);bottom:26px;border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.48);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1100px){.pd-nav__contacts{display:none}.pd-hero__grid,.pd-clarity__bottom,.pd-directions__head,.pd-gallery__head{grid-template-columns:1fr}.pd-hero__grid{gap:30px}.pd-hero__copy{max-width:650px}.pd-direction-grid{grid-template-columns:1fr}.pd-direction-card--wide{grid-column:auto}.pd-story__title{font-size:clamp(70px,15vw,160px);max-width:88vw}.pd-story__content{grid-template-columns:1fr 1fr}.pd-story--light .pd-story__title{font-size:clamp(58px,10vw,105px)}}
@media(max-width:850px){.pd-nav__menu{display:none}.pd-nav__brand{max-width:68vw}.pd-story--light .pd-story__slides{inset:0 0 43% 0}.pd-story--light .pd-story__content{display:flex;flex-direction:column;justify-content:flex-end;gap:14px;padding-top:59svh;background:linear-gradient(0deg,var(--pd-paper) 0 43%,transparent 43%)}.pd-story--light .pd-story__heading,.pd-story--light .pd-story__info{width:100%;max-width:620px}.pd-story--light .pd-story__title{max-width:none}.pd-story__content{grid-template-columns:1fr;align-content:end}.pd-story__heading{align-self:start}.pd-story__title{font-size:clamp(74px,20vw,150px)}.pd-story__info{max-width:580px}.pd-quick-contact{grid-template-columns:1fr}.pd-quick-contact__actions{justify-content:flex-start}.pd-gallery-card{flex-basis:82vw}.pd-gallery-card--portrait{flex-basis:60vw}}
@media(max-width:560px){.pd-nav{padding:12px}.pd-nav__brand{width:min(var(--pd-logo-start),235px);padding:5px 7px}.pd-nav.is-scrolled .pd-nav__brand{width:min(var(--pd-logo-end),180px)}.pd-nav__cta{padding:10px 12px;font-size:12px}.pd-hero{padding:145px 18px 36px}.pd-hero__desktop{display:none!important}.pd-hero__mobile{display:block!important}.pd-hero__topline{left:18px;top:105px}.pd-hero h1{font-size:clamp(52px,16.8vw,78px);line-height:.88}.pd-hero__copy p{font-size:16px}.pd-hero__scroll{display:none}.pd-clarity,.pd-directions{padding-left:18px;padding-right:18px}.pd-clarity h2{font-size:44px}.pd-cap-list{grid-template-columns:1fr}.pd-cap-list button:nth-child(even){padding-left:0;border-left:0}.pd-direction-card{min-height:62svh;border-radius:22px}.pd-story__slides,.pd-story--light .pd-story__slides{inset:0 0 auto 0;left:0;height:clamp(250px,38svh,340px);background:#17141a}.pd-story__shade{inset:0 0 auto 0;height:clamp(250px,38svh,340px);background:linear-gradient(0deg,rgba(8,7,10,.34),rgba(8,7,10,.04) 58%,rgba(8,7,10,.12))}.pd-story--light .pd-story__shade{display:none}.pd-story__content,.pd-story--light .pd-story__content{height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;padding:calc(clamp(250px,38svh,340px) + 18px) 18px 20px;background:none}.pd-story__heading,.pd-story--light .pd-story__heading,.pd-story__info,.pd-story--light .pd-story__info{width:100%;max-width:none;align-self:auto}.pd-story__chapter{margin-bottom:8px}.pd-story__title{font-size:19vw;line-height:.84;letter-spacing:-.055em;max-width:100%}.pd-story__title-outline{-webkit-text-stroke-width:1.1px;color:rgba(255,255,255,.13)}.pd-story--light .pd-story__title{font-size:15.5vw;line-height:.88;max-width:100%}.pd-story__info,.pd-story--light .pd-story__info{padding:0;margin-top:2px}.pd-story__intro{display:none}.pd-story__info h3{margin-bottom:10px;font-size:30px}.pd-story__info p,.pd-story--light .pd-story__info p{margin-bottom:16px;font-size:15px;line-height:1.48}.pd-story__progress{margin-top:0}.pd-story__format{top:92px;right:18px;max-width:170px;text-align:center}.pd-quick-contact{padding:38px 18px}.pd-quick-contact__actions{flex-direction:column;align-items:flex-start}.pd-gallery__head,.pd-gallery__rail{padding-left:18px;padding-right:18px}.pd-gallery-card{flex-basis:88vw}.pd-gallery-card--portrait{flex-basis:73vw}.pd-contact{padding-left:18px;padding-right:18px}.pd-contact h2{font-size:16vw}.pd-plugin-footer{left:18px;right:18px;flex-direction:column}.pd-contact__links{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){.pd-cinematic-site *{animation:none!important;scroll-behavior:auto!important}.pd-loader{display:none}.pd-reveal{opacity:1;transform:none}.pd-story__slide{transition:none}.pd-hero__media{transform:none}}

/* v5.2.0 hero spotlight overrides */
.pd-hero__media--spotlight{inset:0;--pd-spot-x:50%;--pd-spot-y:54%;--pd-spot-size:280px;--pd-spot-inner:208px;--pd-spot-mid:240px;--pd-spot-feather:72px;transform:scale(calc(1.025 + var(--pd-progress)*.045)) translate3d(0,calc(var(--pd-progress)*-1.3%),0);cursor:crosshair}
.pd-hero__media--spotlight .pd-hero__device{position:absolute;inset:0;display:block}
.pd-hero__media--spotlight .pd-hero__asset{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--pd-object-position,50% 50%)}
.pd-hero__media--spotlight .pd-hero__base,.pd-hero__media--spotlight .pd-hero__reveal{overflow:hidden}
.pd-hero__media--spotlight .pd-hero__reveal{-webkit-mask-image:radial-gradient(circle var(--pd-spot-size) at var(--pd-spot-x) var(--pd-spot-y),#fff 0,#fff var(--pd-spot-inner),rgba(255,255,255,.55) var(--pd-spot-mid),transparent var(--pd-spot-size));mask-image:radial-gradient(circle var(--pd-spot-size) at var(--pd-spot-x) var(--pd-spot-y),#fff 0,#fff var(--pd-spot-inner),rgba(255,255,255,.55) var(--pd-spot-mid),transparent var(--pd-spot-size));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.pd-hero__spot-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle var(--pd-spot-inner) at var(--pd-spot-x) var(--pd-spot-y),rgba(255,255,255,.16),rgba(255,255,255,.055) 38%,transparent 72%);mix-blend-mode:screen;opacity:.88}
.pd-hero__media--spotlight .pd-hero__device--mobile{display:none}
.pd-hero__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pd-btn--ghost{background:rgba(10,9,13,.24);text-decoration:none}
.pd-hero__spot-hint{position:absolute;right:clamp(58px,6vw,98px);bottom:clamp(36px,5vw,72px);z-index:2;max-width:180px;padding-left:36px;color:rgba(255,255,255,.64);font-size:10px;line-height:1.45;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}
.pd-hero__spot-hint:before{content:"";position:absolute;left:0;top:1px;width:22px;height:30px;border:1px solid rgba(255,255,255,.6);border-radius:12px}
.pd-hero__spot-hint:after{content:"";position:absolute;left:10px;top:6px;width:2px;height:6px;border-radius:2px;background:rgba(255,255,255,.7);animation:pdSpotHint 1.8s ease-in-out infinite}
.pd-hero__spot-hint-mobile{display:none}
@keyframes pdSpotHint{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(9px);opacity:1}}
@media(max-width:760px){.pd-hero__actions{align-items:flex-start;flex-direction:column}.pd-hero__actions .pd-btn{max-width:100%;font-size:13px}.pd-hero__spot-hint{right:18px;bottom:30px;max-width:150px}.pd-hero__spot-hint-desktop{display:none}.pd-hero__spot-hint-mobile{display:inline}.pd-hero__copy{padding-bottom:56px}}
@media(max-width:560px){.pd-hero__media--spotlight .pd-hero__device--desktop{display:none}.pd-hero__media--spotlight .pd-hero__device--mobile{display:block}.pd-hero__media--spotlight{cursor:default}.pd-hero__spot-hint{bottom:24px}.pd-hero__copy{padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){.pd-hero__spot-glow{display:none}.pd-hero__spot-hint:after{animation:none}}

/* =========================================================
   v5.3.0 — LIGHT EDITORIAL THEME
   Keeps the existing markup, media IDs, sticky stories and JS.
   ========================================================= */
:root{
  --pd-ink:#1b191e;
  --pd-ink2:#2b2830;
  --pd-paper:#f7f6f2;
  --pd-paper2:#efede7;
  --pd-white:#fff;
  --pd-muted:#706b73;
  --pd-line:#ddd9d2;
  --pd-violet:#6c53c8;
  --pd-lavender:#a997e9;
  --pd-champagne:#d7b576;
  --pd-bronze:#8a5547;
}
html{background:var(--pd-paper)}
body.pd-cinematic-active{background:var(--pd-paper)!important;color:var(--pd-ink)!important}
.pd-cinematic-site.pd-theme-light{background:var(--pd-paper);color:var(--pd-ink);color-scheme:light}
.pd-cinematic-site.pd-theme-light ::selection{background:#dcd3fb;color:#17141d}
.pd-theme-light .pd-grain{opacity:.022;mix-blend-mode:multiply}

/* Navigation */
.pd-theme-light .pd-nav{align-items:center;padding-top:14px}
.pd-theme-light .pd-nav__brand{border-color:rgba(25,22,30,calc(.08 + var(--pd-logo-border-opacity)));background:rgba(255,255,255,calc(.10 + var(--pd-logo-bg-opacity)));box-shadow:0 14px 40px rgba(35,28,42,.05)}
.pd-theme-light .pd-nav__brand img{filter:drop-shadow(0 1px 0 rgba(255,255,255,.8)) drop-shadow(0 4px 12px rgba(29,23,36,.08))}
.pd-theme-light .pd-nav__actions{color:var(--pd-ink)}
.pd-theme-light .pd-nav__menu{border:1px solid rgba(28,24,33,.09);background:rgba(255,255,255,.72);backdrop-filter:blur(22px) saturate(1.25);box-shadow:0 12px 36px rgba(33,27,38,.06)}
.pd-theme-light .pd-nav__menu button{color:#28242d}
.pd-theme-light .pd-nav__menu button:hover{background:rgba(108,83,200,.08);color:var(--pd-violet)}
.pd-theme-light .pd-nav__contacts{color:#514c55;text-shadow:none}
.pd-theme-light .pd-nav__cta{border:1px solid #211e24;background:#211e24;color:#fff;box-shadow:0 10px 28px rgba(30,25,35,.10)}
.pd-theme-light .pd-nav__cta:hover{background:var(--pd-violet);border-color:var(--pd-violet);color:#fff;transform:translateY(-1px)}
.pd-theme-light .pd-nav.is-scrolled .pd-nav__menu{background:rgba(255,255,255,.92)}

/* Hero — bright, airy, before/after PVD reveal */
.pd-theme-light .pd-hero{background:#f8f7f3;color:var(--pd-ink);min-height:100dvh}
.pd-theme-light .pd-hero__media{background:#f0eee8}
.pd-theme-light .pd-hero__media img,.pd-theme-light .pd-hero__media video{filter:saturate(.98) contrast(1.015) brightness(1.02)}
.pd-theme-light .pd-hero__media:after{background:
  linear-gradient(90deg,rgba(248,247,243,calc(.82 + var(--pd-hero-overlay)*.12)) 0%,rgba(248,247,243,calc(.58 + var(--pd-hero-overlay)*.10)) 30%,rgba(248,247,243,.14) 58%,rgba(248,247,243,.02) 78%),
  linear-gradient(0deg,rgba(248,247,243,.64) 0%,rgba(248,247,243,.12) 38%,transparent 62%)}
.pd-theme-light .pd-hero__flare{width:46vw;right:-17vw;top:-19vw;background:conic-gradient(from 20deg,rgba(255,255,255,.45),rgba(108,83,200,.07),rgba(215,181,118,.10),rgba(255,255,255,.08));filter:blur(68px);opacity:.72}
.pd-theme-light .pd-hero__topline{color:#6d6871}
.pd-theme-light .pd-hero__topline:before{background:#8e8790}
.pd-theme-light .pd-hero h1{color:#17151a;text-shadow:0 1px 0 rgba(255,255,255,.55)}
.pd-theme-light .pd-hero h1 span:nth-child(2) i{color:rgba(108,83,200,.025);-webkit-text-stroke:1.25px rgba(61,52,70,.82)}
.pd-theme-light .pd-hero__copy{position:relative}
.pd-theme-light .pd-hero__copy p{color:#5f5a62}
.pd-theme-light .pd-hero__services span{border:1px solid rgba(35,31,39,.11);background:rgba(255,255,255,.70);color:#3f3a43;backdrop-filter:blur(16px);box-shadow:0 8px 28px rgba(37,30,43,.035)}
.pd-theme-light .pd-btn{border:1px solid #1f1c22;background:#1f1c22;color:#fff;backdrop-filter:none;box-shadow:0 10px 30px rgba(31,27,35,.09)}
.pd-theme-light .pd-btn span{background:#fff;color:#17151a}
.pd-theme-light .pd-btn:hover{background:var(--pd-violet);border-color:var(--pd-violet);color:#fff}
.pd-theme-light .pd-btn:hover span{background:#fff;color:var(--pd-violet)}
.pd-theme-light .pd-btn--ghost{background:rgba(255,255,255,.74);border-color:rgba(32,28,36,.16);color:#27232a;box-shadow:none;backdrop-filter:blur(16px)}
.pd-theme-light .pd-btn--ghost:hover{background:#fff;border-color:#6c53c8;color:#6c53c8}
.pd-theme-light .pd-hero__scroll{color:#716b74}
.pd-theme-light .pd-hero__scroll:after{background:linear-gradient(#5e5862,transparent)}
.pd-theme-light .pd-hero__spot-hint{color:#69636c}
.pd-theme-light .pd-hero__spot-hint:before{border-color:rgba(41,36,46,.40);background:rgba(255,255,255,.36)}
.pd-theme-light .pd-hero__spot-hint:after{background:#625b66}
.pd-theme-light .pd-hero__spot-glow{background:
  radial-gradient(circle calc(var(--pd-spot-inner) + 8px) at var(--pd-spot-x) var(--pd-spot-y),rgba(255,255,255,.04) 0%,rgba(255,255,255,.02) 68%,transparent 72%),
  radial-gradient(circle var(--pd-spot-size) at var(--pd-spot-x) var(--pd-spot-y),transparent 72%,rgba(108,83,200,.10) 87%,rgba(215,181,118,.05) 94%,transparent 100%);mix-blend-mode:multiply;opacity:.92}
.pd-theme-light .pd-hero__media--spotlight .pd-hero__base .pd-hero__asset{filter:saturate(.58) brightness(1.055) contrast(.98)}
.pd-theme-light .pd-hero__media--spotlight .pd-hero__reveal .pd-hero__asset{filter:saturate(1.08) contrast(1.07) brightness(1.015)}
.pd-theme-light .pd-hero__media--spotlight .pd-hero__reveal{-webkit-mask-image:radial-gradient(circle var(--pd-spot-size) at var(--pd-spot-x) var(--pd-spot-y),#fff 0,#fff var(--pd-spot-inner),rgba(255,255,255,.82) var(--pd-spot-mid),transparent var(--pd-spot-size));mask-image:radial-gradient(circle var(--pd-spot-size) at var(--pd-spot-x) var(--pd-spot-y),#fff 0,#fff var(--pd-spot-inner),rgba(255,255,255,.82) var(--pd-spot-mid),transparent var(--pd-spot-size))}

/* Reusable type */
.pd-theme-light .pd-kicker,.pd-theme-light .pd-story__chapter{color:var(--pd-violet)}
.pd-theme-light .pd-reveal{will-change:opacity,transform}

/* Second screen */
.pd-theme-light .pd-clarity{background:#fff;color:#17151a;padding-top:clamp(110px,14vw,205px);padding-bottom:clamp(110px,14vw,205px)}
.pd-theme-light .pd-clarity:before{content:"";position:absolute;left:clamp(20px,6vw,92px);right:clamp(20px,6vw,92px);top:0;height:1px;background:linear-gradient(90deg,transparent,var(--pd-line) 15%,var(--pd-line) 85%,transparent)}
.pd-theme-light .pd-clarity__eyebrow{color:var(--pd-violet)}
.pd-theme-light .pd-clarity h2{color:#19171c}
.pd-theme-light .pd-clarity h2 em{color:var(--pd-violet)}
.pd-theme-light .pd-clarity__bottom>p{color:var(--pd-muted)}
.pd-theme-light .pd-cap-list{border-color:var(--pd-line)}
.pd-theme-light .pd-cap-list button{border-color:var(--pd-line);color:#29252d}
.pd-theme-light .pd-cap-list button:nth-child(even){border-color:var(--pd-line)}
.pd-theme-light .pd-cap-list button:hover{background:#f5f1ff;color:var(--pd-violet)}

/* PVD overview — white editorial cards, not a dark section */
.pd-theme-light .pd-directions{background:var(--pd-paper);color:var(--pd-ink);padding-top:clamp(100px,12vw,170px);padding-bottom:clamp(100px,12vw,170px)}
.pd-theme-light .pd-directions__head{border-top:1px solid var(--pd-line);padding-top:30px}
.pd-theme-light .pd-directions__head p{color:var(--pd-muted)}
.pd-theme-light .pd-direction-card{background:#fff;border:1px solid rgba(37,31,41,.08);box-shadow:0 22px 70px rgba(47,39,53,.055)}
.pd-theme-light .pd-direction-card:after{background:linear-gradient(0deg,rgba(250,249,246,.98) 0%,rgba(250,249,246,.90) 26%,rgba(250,249,246,.35) 47%,transparent 68%)}
.pd-theme-light .pd-direction-card__media{filter:saturate(.96) contrast(1.015)}
.pd-theme-light .pd-direction-card__content{color:#1c191f}
.pd-theme-light .pd-direction-card__content>div{color:#766f78}
.pd-theme-light .pd-direction-card p{color:#5f5962}
.pd-theme-light .pd-direction-card p strong{color:#1f1c22}

/* Sticky stories — retain full cinematic scroll, change the entire visual language */
.pd-theme-light .pd-story,.pd-theme-light .pd-story--light,.pd-theme-light .pd-story--bronze,.pd-theme-light .pd-story--technical,.pd-theme-light .pd-story--technical-dark{background:#f7f6f2;color:#1b191e}
.pd-theme-light .pd-story__sticky{background:#f7f6f2}
.pd-theme-light .pd-story__slides,.pd-theme-light .pd-story--light .pd-story__slides{background:#e9e6df}
.pd-theme-light .pd-story__media{filter:saturate(.96) contrast(1.02) brightness(1.015)}
.pd-theme-light .pd-story__shade,
.pd-theme-light .pd-story--bronze .pd-story__shade,
.pd-theme-light .pd-story--technical .pd-story__shade,
.pd-theme-light .pd-story--technical-dark .pd-story__shade{background:linear-gradient(90deg,rgba(248,247,243,.97) 0%,rgba(248,247,243,.91) 27%,rgba(248,247,243,.60) 43%,rgba(248,247,243,.14) 63%,rgba(248,247,243,.03) 79%),linear-gradient(0deg,rgba(248,247,243,.66),transparent 46%)}
.pd-theme-light .pd-story--light .pd-story__shade{background:none}
.pd-theme-light .pd-story__content{color:#19171c}
.pd-theme-light .pd-story--light .pd-story__content{background:linear-gradient(90deg,#f7f6f2 0%,#f7f6f2 38%,transparent 38%)}
.pd-theme-light .pd-story__chapter,.pd-theme-light .pd-story--light .pd-story__chapter{color:#6c53c8}
.pd-theme-light .pd-story__title,.pd-theme-light .pd-story--light .pd-story__title{color:#1b191e}
.pd-theme-light .pd-story__title-outline,.pd-theme-light .pd-story--light .pd-story__title-outline,.pd-theme-light .pd-story--technical .pd-story__title-outline,.pd-theme-light .pd-story--technical-dark .pd-story__title-outline{color:rgba(108,83,200,.018);-webkit-text-stroke:1.2px rgba(54,46,62,.50)}
.pd-theme-light .pd-story__intro,.pd-theme-light .pd-story--light .pd-story__intro{color:#77717a}
.pd-theme-light .pd-story__info h3{color:#201d23}
.pd-theme-light .pd-story__info p,.pd-theme-light .pd-story--light .pd-story__info p{color:#625c65}
.pd-theme-light .pd-story__progress,.pd-theme-light .pd-story--light .pd-story__progress{color:#736d76}
.pd-theme-light .pd-story__track,.pd-theme-light .pd-story--light .pd-story__track{background:rgba(35,31,39,.14)}
.pd-theme-light .pd-story__track i{background:var(--pd-violet)}
.pd-theme-light .pd-story__format{border:1px solid rgba(38,32,43,.10);background:rgba(255,255,255,.86);color:#3b3540;box-shadow:0 12px 34px rgba(40,32,46,.07);backdrop-filter:blur(18px)}
.pd-theme-light .pd-story__format strong{color:var(--pd-violet)}

/* Technical placeholders, in case real imagery has not yet been assigned */
.pd-theme-light .pd-placeholder{background:radial-gradient(circle at 80% 17%,rgba(255,255,255,.75),transparent 23%),linear-gradient(145deg,#f2f0eb,#dcd8d0)}
.pd-theme-light .pd-placeholder:after{background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.55) 47%,transparent 68%)}
.pd-theme-light .pd-placeholder--waterjet span{background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(170,163,174,.16));filter:drop-shadow(0 24px 40px rgba(61,52,66,.14))}
.pd-theme-light .pd-placeholder--waterjet i{border-color:#7f67d0;filter:drop-shadow(0 0 9px rgba(108,83,200,.25))}
.pd-theme-light .pd-placeholder--cnc span{background:repeating-linear-gradient(112deg,rgba(55,49,58,.04) 0 1px,transparent 1px 8px),linear-gradient(145deg,#e9e4dc,#b8ada0);box-shadow:0 34px 76px rgba(72,61,51,.15),inset -18px -20px 42px rgba(65,54,47,.10)}
.pd-theme-light .pd-placeholder--cnc i{filter:drop-shadow(0 10px 15px rgba(55,46,41,.17))}

/* Conversion strips */
.pd-theme-light .pd-quick-contact{background:#fff;color:#1a171d;border-color:var(--pd-line)}
.pd-theme-light .pd-quick-contact p{color:var(--pd-muted)}
.pd-theme-light .pd-quick-contact__actions>a:not(.pd-btn){color:#5d5760}
.pd-theme-light .pd-btn--dark{border-color:#201d23;background:#201d23;color:#fff}
.pd-theme-light .pd-btn--dark:hover{background:var(--pd-violet);border-color:var(--pd-violet)}

/* Gallery */
.pd-theme-light .pd-gallery{background:var(--pd-paper);color:#1b191e;border-top:1px solid var(--pd-line)}
.pd-theme-light .pd-gallery__head p{color:var(--pd-muted)}
.pd-theme-light .pd-gallery-card{background:#e9e6e0;border:1px solid rgba(35,30,39,.07);box-shadow:0 18px 54px rgba(45,37,50,.045)}
.pd-theme-light .pd-gallery-card:after{background:linear-gradient(0deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.86) 14%,rgba(255,255,255,.12) 36%,transparent 54%)}
.pd-theme-light .pd-gallery-card>span{color:#28242c;font-weight:500;text-shadow:0 1px 0 rgba(255,255,255,.8)}

/* Contact — no black finale */
.pd-theme-light .pd-contact{min-height:88svh;background:#fff;color:#19171d;border-top:1px solid var(--pd-line)}
.pd-theme-light .pd-contact__bg{inset:0;opacity:.28}
.pd-theme-light .pd-contact__media{filter:saturate(.65) contrast(.92) brightness(1.14);transform:scale(1.03)}
.pd-theme-light .pd-contact__bg:after{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 34%,rgba(255,255,255,.86) 58%,rgba(255,255,255,.58) 78%,rgba(255,255,255,.42)),linear-gradient(0deg,rgba(255,255,255,.82),transparent 52%)}
.pd-theme-light .pd-contact__inner{position:relative;max-width:900px;padding:clamp(28px,4vw,58px);margin-left:-clamp(20px,4vw,58px);background:rgba(255,255,255,.66);border:1px solid rgba(42,35,47,.07);border-radius:30px;backdrop-filter:blur(16px);box-shadow:0 26px 78px rgba(43,35,48,.055)}
.pd-theme-light .pd-contact h2{color:#1b191e}
.pd-theme-light .pd-contact p{color:#67616a}
.pd-theme-light .pd-contact__links{color:#514b54}
.pd-theme-light .pd-contact__links a{border-color:rgba(40,35,45,.20)}
.pd-theme-light .pd-plugin-footer{border-color:rgba(36,31,40,.12);color:#857e88}

/* Desktop refinement */
@media(min-width:1101px){
  .pd-theme-light .pd-directions__head,.pd-theme-light .pd-gallery__head{column-gap:clamp(60px,8vw,140px)}
  .pd-theme-light .pd-story:not(.pd-story--light) .pd-story__info{padding:24px 28px 25px;border:1px solid rgba(37,31,41,.08);border-radius:22px;background:rgba(255,255,255,.68);backdrop-filter:blur(18px);box-shadow:0 18px 52px rgba(42,34,48,.045)}
}

/* Tablet */
@media(max-width:1100px){
  .pd-theme-light .pd-hero__media:after{background:linear-gradient(0deg,rgba(248,247,243,.88) 0%,rgba(248,247,243,.52) 40%,rgba(248,247,243,.08) 72%),linear-gradient(90deg,rgba(248,247,243,.58),transparent 74%)}
  .pd-theme-light .pd-story__shade,.pd-theme-light .pd-story--bronze .pd-story__shade,.pd-theme-light .pd-story--technical .pd-story__shade,.pd-theme-light .pd-story--technical-dark .pd-story__shade{background:linear-gradient(0deg,rgba(248,247,243,.92) 0%,rgba(248,247,243,.65) 37%,rgba(248,247,243,.12) 66%,transparent 80%)}
}

/* Mobile: retain the no-gap v5.1.3 story layout, now fully light */
@media(max-width:560px){
  .pd-theme-light .pd-nav__brand{background:rgba(255,255,255,.76);border-color:rgba(35,30,39,.07)}
  .pd-theme-light .pd-nav__cta{font-size:11px}
  .pd-theme-light .pd-hero{padding-top:134px;background:#f8f7f3}
  .pd-theme-light .pd-hero__media:after{background:linear-gradient(0deg,rgba(248,247,243,.96) 0%,rgba(248,247,243,.73) 38%,rgba(248,247,243,.15) 68%,transparent 84%)}
  .pd-theme-light .pd-hero h1{font-size:clamp(46px,14.7vw,68px);line-height:.91}
  .pd-theme-light .pd-hero h1 span:nth-child(2) i{-webkit-text-stroke:1px rgba(54,47,62,.78)}
  .pd-theme-light .pd-hero__services{margin-bottom:17px}
  .pd-theme-light .pd-hero__services span{padding:7px 10px;background:rgba(255,255,255,.82)}
  .pd-theme-light .pd-hero__spot-hint{color:#6b6570}
  .pd-theme-light .pd-clarity{padding-top:92px;padding-bottom:96px}
  .pd-theme-light .pd-directions{padding-top:92px;padding-bottom:96px}
  .pd-theme-light .pd-direction-card:after{background:linear-gradient(0deg,rgba(250,249,246,.98) 0%,rgba(250,249,246,.89) 34%,rgba(250,249,246,.18) 64%,transparent 75%)}
  .pd-theme-light .pd-story,.pd-theme-light .pd-story--light,.pd-theme-light .pd-story--bronze,.pd-theme-light .pd-story--technical,.pd-theme-light .pd-story--technical-dark{background:#f7f6f2;color:#1b191e}
  .pd-theme-light .pd-story__slides,.pd-theme-light .pd-story--light .pd-story__slides{background:#ebe8e2}
  .pd-theme-light .pd-story__shade,.pd-theme-light .pd-story--bronze .pd-story__shade,.pd-theme-light .pd-story--technical .pd-story__shade,.pd-theme-light .pd-story--technical-dark .pd-story__shade{background:linear-gradient(0deg,rgba(248,247,243,.20),transparent 62%)}
  .pd-theme-light .pd-story--light .pd-story__shade{display:block;background:linear-gradient(0deg,rgba(248,247,243,.12),transparent 62%)}
  .pd-theme-light .pd-story__content,.pd-theme-light .pd-story--light .pd-story__content{background:#f7f6f2;color:#1b191e}
  .pd-theme-light .pd-story__title,.pd-theme-light .pd-story--light .pd-story__title{color:#1b191e}
  .pd-theme-light .pd-story__title-outline,.pd-theme-light .pd-story--light .pd-story__title-outline{color:rgba(108,83,200,.02);-webkit-text-stroke:1px rgba(55,47,62,.46)}
  .pd-theme-light .pd-story__info p,.pd-theme-light .pd-story--light .pd-story__info p{color:#655f68}
  .pd-theme-light .pd-story__format{background:rgba(255,255,255,.90);color:#49424c}
  .pd-theme-light .pd-quick-contact{background:#fff}
  .pd-theme-light .pd-gallery{background:#f7f6f2}
  .pd-theme-light .pd-contact{min-height:auto;padding-top:104px;padding-bottom:92px;background:#fff}
  .pd-theme-light .pd-contact__bg{opacity:.18}
  .pd-theme-light .pd-contact__inner{margin:0;padding:25px 20px;border-radius:22px;background:rgba(255,255,255,.78)}
  .pd-theme-light .pd-contact h2{font-size:15vw;line-height:.91}
}

@media(prefers-reduced-motion:reduce){
  .pd-theme-light .pd-hero__media--spotlight .pd-hero__base .pd-hero__asset,.pd-theme-light .pd-hero__media--spotlight .pd-hero__reveal .pd-hero__asset{filter:none}
}
/* Brand-accent CTAs keep the light theme from accumulating black UI blocks. */
.pd-theme-light .pd-nav__cta,.pd-theme-light .pd-btn,.pd-theme-light .pd-btn--dark{background:var(--pd-violet);border-color:var(--pd-violet);color:#fff}
.pd-theme-light .pd-nav__cta:hover,.pd-theme-light .pd-btn:hover,.pd-theme-light .pd-btn--dark:hover{background:#5841b7;border-color:#5841b7;color:#fff}
.pd-theme-light .pd-btn span{color:var(--pd-violet)}

/* =========================================================
   v5.4.0 — DUAL LIGHT / DARK PRESENTATION
   One content set, two visual themes, zero-sensitive hero veil.
   ========================================================= */
body.pd-cinematic-active.pd-body-theme-light{background:#f7f6f2!important}
body.pd-cinematic-active.pd-body-theme-dark{background:#0b0a0e!important}

/* Presentation switch */
.pd-theme-switch{position:fixed;z-index:98;left:clamp(14px,2.2vw,34px);bottom:clamp(14px,2vw,28px);display:flex;gap:3px;padding:4px;border-radius:999px;backdrop-filter:blur(20px) saturate(1.15);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;color-scheme:light dark}
.pd-theme-switch button{appearance:none;border:0;border-radius:999px;padding:8px 12px;background:transparent;font:600 10px/1 "Helvetica Neue","Aptos","Segoe UI",Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:background .25s ease,color .25s ease,box-shadow .25s ease;min-width:54px}
.pd-theme-light .pd-theme-switch{background:rgba(255,255,255,.78);border:1px solid rgba(30,26,34,.10);box-shadow:0 10px 35px rgba(32,27,38,.08)}
.pd-theme-light .pd-theme-switch button{color:#69636d}
.pd-theme-light .pd-theme-switch button[aria-pressed="true"]{background:#211e24;color:#fff;box-shadow:0 5px 16px rgba(25,22,29,.16)}
.pd-theme-dark .pd-theme-switch{background:rgba(10,9,13,.62);border:1px solid rgba(255,255,255,.16);box-shadow:0 10px 35px rgba(0,0,0,.22)}
.pd-theme-dark .pd-theme-switch button{color:rgba(255,255,255,.64)}
.pd-theme-dark .pd-theme-switch button[aria-pressed="true"]{background:#fff;color:#17141c;box-shadow:0 5px 18px rgba(255,255,255,.08)}

/* IMPORTANT: in v5.4 an overlay value of 0 means literally no global veil. */
.pd-theme-dark .pd-hero__media:after{background:
  linear-gradient(90deg,rgba(8,7,10,calc(var(--pd-hero-overlay-dark) * .92)) 0%,rgba(8,7,10,calc(var(--pd-hero-overlay-dark) * .58)) 42%,rgba(8,7,10,calc(var(--pd-hero-overlay-dark) * .16)) 78%,transparent 100%),
  linear-gradient(0deg,rgba(8,7,10,calc(var(--pd-hero-overlay-dark) * .72)) 0%,rgba(8,7,10,calc(var(--pd-hero-overlay-dark) * .16)) 38%,transparent 62%)}
.pd-theme-light .pd-hero__media:after{background:
  linear-gradient(90deg,rgba(248,247,243,calc(var(--pd-hero-overlay-light) * .92)) 0%,rgba(248,247,243,calc(var(--pd-hero-overlay-light) * .54)) 34%,rgba(248,247,243,calc(var(--pd-hero-overlay-light) * .12)) 62%,transparent 82%),
  linear-gradient(0deg,rgba(248,247,243,calc(var(--pd-hero-overlay-light) * .58)) 0%,rgba(248,247,243,calc(var(--pd-hero-overlay-light) * .10)) 40%,transparent 64%)}

/* Let the actual uploaded photography do the work. */
.pd-theme-light .pd-hero__media img,.pd-theme-light .pd-hero__media video{filter:saturate(1) contrast(1.01) brightness(1)}
.pd-theme-light .pd-hero__media--spotlight .pd-hero__base .pd-hero__asset{filter:saturate(.96) contrast(1.01) brightness(1)}
.pd-theme-light .pd-hero__media--spotlight .pd-hero__reveal .pd-hero__asset{filter:saturate(1.05) contrast(1.045) brightness(1)}
.pd-theme-light .pd-hero__flare{opacity:.28}

/* Dark mode is the original cinematic language, but without forced heavy dimming. */
.pd-theme-dark{background:#0b0a0e;color:#fff;color-scheme:dark}
.pd-theme-dark .pd-hero__media--spotlight .pd-hero__base .pd-hero__asset{filter:saturate(.88) contrast(1.035)}
.pd-theme-dark .pd-hero__media--spotlight .pd-hero__reveal .pd-hero__asset{filter:saturate(1.07) contrast(1.06)}

/* Local text support replaces the old full-frame veil. */
.pd-theme-dark .pd-hero h1,.pd-theme-dark .pd-hero__topline,.pd-theme-dark .pd-hero__copy{filter:drop-shadow(0 2px 16px rgba(0,0,0,.28))}
.pd-theme-light .pd-hero h1,.pd-theme-light .pd-hero__topline,.pd-theme-light .pd-hero__copy{filter:drop-shadow(0 1px 10px rgba(255,255,255,.22))}

@media(max-width:760px){
  .pd-theme-switch{left:12px;bottom:12px;padding:3px}
  .pd-theme-switch button{padding:7px 9px;min-width:48px;font-size:9px}
}

/* ==========================================================================
   v5.4.2 — clean imagery, zero means zero, full-height Serigrafia media
   ========================================================================== */

/* Force story media to fill its actual slide. Some WordPress/theme rules apply
   img { height:auto }, which caused the lower half of Serigrafia to appear empty. */
.pd-cinematic-site .pd-story__slide {
  overflow: hidden;
}
.pd-cinematic-site .pd-story__media {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: var(--pd-object-position, 50% 50%) !important;
}
@media (min-width: 851px) {
  .pd-cinematic-site .pd-story--light .pd-story__slides {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 38% !important;
    height: auto !important;
    overflow: hidden !important;
  }
  .pd-cinematic-site .pd-story--light .pd-story__slide {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
}

/* Light theme section veil. The veil itself gets opacity, so 0 is guaranteed
   to be completely transparent in every browser. */
.pd-theme-light .pd-story__shade,
.pd-theme-light .pd-story--bronze .pd-story__shade,
.pd-theme-light .pd-story--technical .pd-story__shade,
.pd-theme-light .pd-story--technical-dark .pd-story__shade {
  display: block !important;
  background: linear-gradient(90deg, #f8f7f3 0%, rgba(248,247,243,.82) 30%, rgba(248,247,243,.28) 52%, transparent 72%),
              linear-gradient(0deg, rgba(248,247,243,.62) 0%, transparent 48%) !important;
  opacity: var(--pd-story-veil-light, 0) !important;
}
.pd-theme-light .pd-story--light .pd-story__shade {
  display: none !important;
}

/* Dark theme section veil uses the same robust opacity control. */
.pd-theme-dark .pd-story__shade,
.pd-theme-dark .pd-story--bronze .pd-story__shade,
.pd-theme-dark .pd-story--technical .pd-story__shade,
.pd-theme-dark .pd-story--technical-dark .pd-story__shade {
  display: block !important;
  background: linear-gradient(90deg, #08070a 0%, rgba(8,7,10,.68) 42%, rgba(8,7,10,.16) 72%, transparent 90%),
              linear-gradient(0deg, rgba(8,7,10,.68) 0%, transparent 54%) !important;
  opacity: var(--pd-story-veil-dark, .18) !important;
}

/* Keep uploaded images neutral in Light mode; no brightness wash. */
.pd-theme-light .pd-story__media {
  filter: saturate(1) contrast(1.02) brightness(1) !important;
}

/* Contact image: the source image remains at full opacity. The optional veil is
   a separate pseudo-element, again with true zero opacity when set to 0. */
.pd-theme-light .pd-contact__bg {
  inset: 0 !important;
  opacity: 1 !important;
}
.pd-theme-light .pd-contact__media {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: saturate(1) contrast(1.02) brightness(1) !important;
  transform: scale(1.01) !important;
}
.pd-theme-light .pd-contact__bg::after {
  background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.80) 40%, rgba(255,255,255,.20) 67%, transparent 84%) !important;
  opacity: var(--pd-contact-veil-light, 0) !important;
}
.pd-theme-dark .pd-contact__bg {
  opacity: 1 !important;
}
.pd-theme-dark .pd-contact__bg::after {
  background: linear-gradient(90deg, #09080c 0%, rgba(9,8,12,.70) 52%, rgba(9,8,12,.18) 77%, transparent 93%) !important;
  opacity: var(--pd-contact-veil-dark, .28) !important;
}

/* On mobile/tablet, do not reintroduce the old hard-coded white wash. */
@media (max-width: 1100px) {
  .pd-theme-light .pd-story__shade,
  .pd-theme-light .pd-story--bronze .pd-story__shade,
  .pd-theme-light .pd-story--technical .pd-story__shade,
  .pd-theme-light .pd-story--technical-dark .pd-story__shade {
    background: linear-gradient(0deg, #f8f7f3 0%, rgba(248,247,243,.35) 48%, transparent 76%) !important;
    opacity: var(--pd-story-veil-light, 0) !important;
  }
  .pd-theme-light .pd-contact__bg { opacity: 1 !important; }
}


/* ==========================================================================
   v5.4.3 — LIGHT STORY STACKING FIX
   In Light mode the sticky container had an opaque background while the
   photography lived on z-index:-3. That placed every story image behind the
   sticky background (Campo lleno onward). Keep media inside the visible stack.
   ========================================================================== */
.pd-cinematic-site .pd-story__sticky{
  isolation:isolate;
}
.pd-cinematic-site .pd-story__slides{
  z-index:0 !important;
}
.pd-cinematic-site .pd-story__shade{
  z-index:1 !important;
}
.pd-cinematic-site .pd-story__content{
  position:relative;
  z-index:2;
}
.pd-theme-light .pd-story__sticky{
  background:transparent !important;
}
.pd-theme-light .pd-story__slides,
.pd-theme-light .pd-story--light .pd-story__slides{
  opacity:1 !important;
  visibility:visible !important;
}
.pd-theme-light .pd-story__slide.is-active{
  opacity:1 !important;
  visibility:visible !important;
}


/* ==========================================================================
   v5.4.4 — QUICK CTA CONTRAST FIX
   Some WordPress themes force link colors on anchors. Make the dark-theme
   quick-contact CTA deterministic and readable.
   ========================================================================== */
.pd-cinematic-site.pd-theme-dark .pd-quick-contact .pd-btn--dark,
.pd-cinematic-site.pd-theme-dark .pd-quick-contact a.pd-btn--dark {
  background:#17151a !important;
  border-color:#17151a !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.pd-cinematic-site.pd-theme-dark .pd-quick-contact .pd-btn--dark span {
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
.pd-cinematic-site.pd-theme-dark .pd-quick-contact .pd-btn--dark:hover {
  background:#fff !important;
  border-color:#fff !important;
  color:#17151a !important;
  -webkit-text-fill-color:#17151a !important;
}
.pd-cinematic-site.pd-theme-dark .pd-quick-contact .pd-btn--dark:hover span {
  background:#17151a !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* ==========================================================================
   v5.4.6 — MOBILE STORY LAYOUT FIX
   Portrait: the content layer must not paint an opaque panel over the media.
   Landscape phones: use a clean split layout instead of text over photography.
   ========================================================================== */

/* Portrait / narrow mobile: image on top, copy below. */
@media (max-width: 560px) {
  .pd-cinematic-site .pd-story__sticky {
    height: 100svh !important;
    min-height: 100svh !important;
    overflow: hidden !important;
  }

  .pd-cinematic-site .pd-story__slides,
  .pd-cinematic-site .pd-story--light .pd-story__slides {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    width: 100% !important;
    height: clamp(260px, 39svh, 360px) !important;
    z-index: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: hidden !important;
  }

  .pd-cinematic-site .pd-story__slide,
  .pd-cinematic-site .pd-story--light .pd-story__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  .pd-cinematic-site .pd-story__media,
  .pd-cinematic-site .pd-story__slide > .pd-placeholder {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
  }

  /* Critical fix: the old light-theme background covered the mobile photo. */
  .pd-cinematic-site.pd-theme-light .pd-story__content,
  .pd-cinematic-site.pd-theme-light .pd-story--light .pd-story__content {
    position: relative !important;
    z-index: 2 !important;
    height: 100% !important;
    padding: calc(clamp(260px, 39svh, 360px) + 18px) 18px 22px !important;
    background: linear-gradient(
      to bottom,
      transparent 0,
      transparent clamp(260px, 39svh, 360px),
      #f7f6f2 clamp(260px, 39svh, 360px),
      #f7f6f2 100%
    ) !important;
  }

  .pd-cinematic-site.pd-theme-dark .pd-story__content,
  .pd-cinematic-site.pd-theme-dark .pd-story--light .pd-story__content {
    position: relative !important;
    z-index: 2 !important;
    height: 100% !important;
    padding: calc(clamp(260px, 39svh, 360px) + 18px) 18px 22px !important;
    background: linear-gradient(
      to bottom,
      transparent 0,
      transparent clamp(260px, 39svh, 360px),
      #0b0a0e clamp(260px, 39svh, 360px),
      #0b0a0e 100%
    ) !important;
  }

  /* No full-frame shade over the photo on narrow screens. */
  .pd-cinematic-site .pd-story__shade,
  .pd-cinematic-site .pd-story--light .pd-story__shade,
  .pd-cinematic-site .pd-story--bronze .pd-story__shade,
  .pd-cinematic-site .pd-story--technical .pd-story__shade,
  .pd-cinematic-site .pd-story--technical-dark .pd-story__shade {
    top: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    height: clamp(260px, 39svh, 360px) !important;
    pointer-events: none !important;
  }

  .pd-cinematic-site.pd-theme-light .pd-story__shade,
  .pd-cinematic-site.pd-theme-light .pd-story--light .pd-story__shade,
  .pd-cinematic-site.pd-theme-light .pd-story--bronze .pd-story__shade,
  .pd-cinematic-site.pd-theme-light .pd-story--technical .pd-story__shade,
  .pd-cinematic-site.pd-theme-light .pd-story--technical-dark .pd-story__shade {
    background: linear-gradient(0deg, rgba(247,246,242,.10), transparent 45%) !important;
    opacity: var(--pd-story-veil-light, 0) !important;
  }

  .pd-cinematic-site .pd-story__title,
  .pd-cinematic-site .pd-story--light .pd-story__title {
    font-size: clamp(48px, 15.2vw, 70px) !important;
    line-height: .88 !important;
  }

  .pd-cinematic-site .pd-story__info h3 {
    font-size: clamp(27px, 8.2vw, 34px) !important;
  }

  .pd-cinematic-site .pd-story__format {
    top: 82px !important;
    right: 14px !important;
    max-width: 190px !important;
  }
}

/* Landscape phone: dedicated split-screen composition.
   This avoids placing dark copy directly over the image. */
@media (orientation: landscape) and (max-width: 960px) and (max-height: 600px) {
  .pd-cinematic-site .pd-story__sticky {
    height: 100svh !important;
    min-height: 100svh !important;
    overflow: hidden !important;
  }

  .pd-cinematic-site .pd-story__slides,
  .pd-cinematic-site .pd-story--light .pd-story__slides {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 44% !important;
    width: 56% !important;
    height: 100% !important;
    z-index: 0 !important;
    overflow: hidden !important;
  }

  .pd-cinematic-site .pd-story__slide,
  .pd-cinematic-site .pd-story--light .pd-story__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  .pd-cinematic-site .pd-story__media {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .pd-cinematic-site .pd-story__content,
  .pd-cinematic-site .pd-story--light .pd-story__content {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    width: 44% !important;
    height: 100% !important;
    gap: 6px !important;
    padding: 76px 22px 20px !important;
  }

  .pd-cinematic-site.pd-theme-light .pd-story__content,
  .pd-cinematic-site.pd-theme-light .pd-story--light .pd-story__content {
    background: #f7f6f2 !important;
    color: #1b191e !important;
  }

  .pd-cinematic-site.pd-theme-dark .pd-story__content,
  .pd-cinematic-site.pd-theme-dark .pd-story--light .pd-story__content {
    background: #0b0a0e !important;
    color: #fff !important;
  }

  .pd-cinematic-site .pd-story__shade {
    display: none !important;
  }

  .pd-cinematic-site .pd-story__heading,
  .pd-cinematic-site .pd-story__info,
  .pd-cinematic-site .pd-story--light .pd-story__heading,
  .pd-cinematic-site .pd-story--light .pd-story__info {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .pd-cinematic-site .pd-story__chapter {
    margin-bottom: 4px !important;
    font-size: 9px !important;
  }

  .pd-cinematic-site .pd-story__title,
  .pd-cinematic-site .pd-story--light .pd-story__title {
    max-width: 100% !important;
    font-size: clamp(42px, 8.2vw, 66px) !important;
    line-height: .88 !important;
    letter-spacing: -.055em !important;
  }

  .pd-cinematic-site .pd-story__intro {
    display: none !important;
  }

  .pd-cinematic-site .pd-story__info h3 {
    margin: 2px 0 6px !important;
    font-size: clamp(22px, 3.7vw, 30px) !important;
  }

  .pd-cinematic-site .pd-story__info p,
  .pd-cinematic-site .pd-story--light .pd-story__info p {
    margin: 0 0 10px !important;
    font-size: 12px !important;
    line-height: 1.38 !important;
  }

  .pd-cinematic-site .pd-story__progress {
    margin-top: 0 !important;
    font-size: 9px !important;
  }

  .pd-cinematic-site .pd-story__format {
    top: 74px !important;
    right: 14px !important;
    max-width: 180px !important;
    padding: 8px 12px !important;
    font-size: 10px !important;
  }

  /* Compact header in landscape so it does not consume the whole viewport. */
  .pd-cinematic-site .pd-nav {
    padding: 8px 12px !important;
  }
  .pd-cinematic-site .pd-nav__brand {
    width: min(var(--pd-logo-end), 190px) !important;
    max-width: 31vw !important;
    padding: 4px 6px !important;
  }
  .pd-cinematic-site .pd-nav__cta {
    padding: 9px 12px !important;
    font-size: 11px !important;
  }

  .pd-cinematic-site .pd-theme-switch {
    bottom: 8px !important;
    left: 8px !important;
  }
}

/* ==========================================================================
   v5.4.7 — READABILITY SYSTEM + EXPANDED NAV + FULL FOOTER
   ========================================================================== */

/* Expanded desktop navigation */
.pd-cinematic-site .pd-nav__menu a,
.pd-cinematic-site .pd-nav__menu button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 13px;
  border-radius:999px;
  white-space:nowrap;
}
.pd-cinematic-site .pd-nav__menu a:hover,
.pd-cinematic-site .pd-nav__menu button:hover{background:rgba(255,255,255,.13)}
.pd-cinematic-site.pd-theme-light .pd-nav__menu a,
.pd-cinematic-site.pd-theme-light .pd-nav__menu button{color:#242129}
.pd-cinematic-site.pd-theme-light .pd-nav__menu a:hover,
.pd-cinematic-site.pd-theme-light .pd-nav__menu button:hover{background:rgba(36,31,41,.07)}
.pd-nav__toggle{display:none;border:1px solid rgba(255,255,255,.18)!important;background:rgba(10,9,13,.28)!important;color:#fff!important;border-radius:999px!important;padding:11px 15px!important;backdrop-filter:blur(18px);cursor:pointer}
.pd-theme-light .pd-nav__toggle{background:rgba(255,255,255,.82)!important;color:#242129!important;border-color:rgba(35,30,39,.10)!important}

/* Mobile navigation drawer */
.pd-mobile-menu[hidden]{display:none!important}
.pd-mobile-menu{position:fixed;z-index:120;inset:0;background:rgba(8,7,10,.28);backdrop-filter:blur(8px);padding:16px;display:flex;justify-content:flex-end;align-items:flex-start}
.pd-mobile-menu__panel{width:min(88vw,390px);margin-top:78px;padding:22px;border-radius:28px;display:flex;flex-direction:column;gap:5px;box-shadow:0 24px 90px rgba(0,0,0,.22)}
.pd-theme-light .pd-mobile-menu__panel{background:rgba(250,249,247,.96);color:#1b191e;border:1px solid rgba(36,31,40,.09)}
.pd-theme-dark .pd-mobile-menu__panel{background:rgba(16,14,20,.96);color:#fff;border:1px solid rgba(255,255,255,.11)}
.pd-mobile-menu__panel>button:not(.pd-mobile-menu__close),.pd-mobile-menu__panel>a{border:0;background:transparent;color:inherit;text-align:left;font-size:23px;font-weight:300;letter-spacing:-.025em;padding:11px 8px;border-bottom:1px solid currentColor;opacity:.88;cursor:pointer}
.pd-mobile-menu__close{align-self:flex-end;border:0;background:transparent;color:inherit;font-size:32px;line-height:1;cursor:pointer;padding:0 4px 8px}
.pd-mobile-menu__contact{display:flex;flex-direction:column;gap:7px;padding:18px 8px 4px;font-size:13px;opacity:.70}
body.pd-menu-open{overflow:hidden!important}

/* v5.4.9: editable glass-card controls from WordPress admin. */
.pd-cinematic-site.pd-theme-light{--pd-text-card-opacity:var(--pd-text-card-opacity-light,.62);--pd-text-card-blur:var(--pd-text-card-blur-light,7px)}
.pd-cinematic-site.pd-theme-dark{--pd-text-card-opacity:var(--pd-text-card-opacity-dark,.48);--pd-text-card-blur:var(--pd-text-card-blur-dark,7px)}

/* Story text readability: use controlled glass underlays instead of global veils. */
@media (min-width:1101px){
  .pd-cinematic-site .pd-story__heading{
    width:max-content;
    max-width:min(78vw,1120px);
    padding:20px 28px 24px;
    border-radius:28px;
    backdrop-filter:blur(var(--pd-text-card-blur)) saturate(1.05);
    -webkit-backdrop-filter:blur(var(--pd-text-card-blur)) saturate(1.05);
  }
  .pd-cinematic-site.pd-theme-light .pd-story__heading{
    background:linear-gradient(90deg,rgba(249,248,245,var(--pd-text-card-opacity)) 0%,rgba(249,248,245,var(--pd-text-card-opacity)) 72%,transparent 100%);
    border:1px solid rgba(40,34,45,.07);
    box-shadow:0 16px 48px rgba(40,32,46,.05);
  }
  .pd-cinematic-site.pd-theme-dark .pd-story__heading{
    background:linear-gradient(90deg,rgba(12,11,15,var(--pd-text-card-opacity)) 0%,rgba(12,11,15,var(--pd-text-card-opacity)) 72%,transparent 100%);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 18px 55px rgba(0,0,0,.12);
  }
  .pd-cinematic-site .pd-story__info,
  .pd-cinematic-site .pd-story--light .pd-story__info{
    padding:24px 28px 25px!important;
    border-radius:24px;
    backdrop-filter:blur(var(--pd-text-card-blur)) saturate(1.05);
    -webkit-backdrop-filter:blur(var(--pd-text-card-blur)) saturate(1.05);
  }
  .pd-cinematic-site.pd-theme-light .pd-story__info,
  .pd-cinematic-site.pd-theme-light .pd-story--light .pd-story__info{
    background:rgba(255,255,255,var(--pd-text-card-opacity))!important;
    border:1px solid rgba(37,31,41,.08)!important;
    box-shadow:0 18px 52px rgba(42,34,48,.055)!important;
  }
  .pd-cinematic-site.pd-theme-dark .pd-story__info,
  .pd-cinematic-site.pd-theme-dark .pd-story--light .pd-story__info{
    background:rgba(13,12,17,var(--pd-text-card-opacity))!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 18px 58px rgba(0,0,0,.16)!important;
  }
}

/* Introductory technical copy must never become micro-text. */
.pd-cinematic-site .pd-story__intro{font-size:clamp(15px,1.02vw,18px)!important;line-height:1.55!important;margin-bottom:20px!important}
.pd-cinematic-site .pd-story__info p{font-size:clamp(16px,1.12vw,18px)!important;line-height:1.55!important}

/* Stronger second line: formato / lleno / KEIL remains editorial but readable. */
.pd-cinematic-site.pd-theme-light .pd-story__title-outline,
.pd-cinematic-site.pd-theme-light .pd-story--light .pd-story__title-outline,
.pd-cinematic-site.pd-theme-light .pd-story--technical .pd-story__title-outline,
.pd-cinematic-site.pd-theme-light .pd-story--technical-dark .pd-story__title-outline{
  color:rgba(64,53,82,.12)!important;
  -webkit-text-stroke:1.35px rgba(48,42,58,.68)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.pd-cinematic-site.pd-theme-dark .pd-story__title-outline{
  color:rgba(214,202,255,.08)!important;
  -webkit-text-stroke:1.35px rgba(229,220,255,.74)!important;
}

/* Keep light-theme solid titles readable on photography. */
.pd-cinematic-site.pd-theme-light .pd-story__title-solid{color:#17151b!important}
.pd-cinematic-site.pd-theme-dark .pd-story__title-solid{color:#fff!important}

/* Full design-system footer */
.pd-site-footer{padding:clamp(70px,8vw,118px) clamp(22px,5vw,78px) 28px;transition:background .35s ease,color .35s ease}
.pd-theme-light .pd-site-footer{background:#f6f4f0;color:#211e24;border-top:1px solid rgba(35,30,39,.10)}
.pd-theme-dark .pd-site-footer{background:#0d0c10;color:#f4f1f6;border-top:1px solid rgba(255,255,255,.10)}
.pd-site-footer__grid{display:grid;grid-template-columns:minmax(280px,1.45fr) .75fr .85fr .9fr;gap:clamp(34px,5vw,84px);align-items:start}
.pd-site-footer__brand img{width:min(250px,75%);height:auto;margin-bottom:30px}
.pd-site-footer__brand p{max-width:430px;margin:0;font-size:16px;line-height:1.7;opacity:.74}
.pd-site-footer__col{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.pd-site-footer__col h3{margin:0 0 14px;font-size:23px;font-weight:400;letter-spacing:-.025em}
.pd-site-footer__col p,.pd-site-footer__col a,.pd-site-footer__col button{margin:0;border:0;background:transparent;color:inherit;padding:0;font-size:15px;line-height:1.5;opacity:.78;text-align:left;cursor:pointer}
.pd-site-footer__col a:hover,.pd-site-footer__col button:hover{opacity:1;text-decoration:underline}
.pd-site-footer__bottom{margin-top:clamp(54px,7vw,92px);padding-top:24px;border-top:1px solid currentColor;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;font-size:13px;opacity:.72}
.pd-theme-light .pd-site-footer__bottom{border-color:rgba(35,30,39,.18)}
.pd-theme-dark .pd-site-footer__bottom{border-color:rgba(255,255,255,.16)}
.pd-site-footer__bottom>span:last-child{text-align:right}
.pd-site-footer__legal{display:flex;gap:15px;flex-wrap:wrap;justify-content:center}

/* Mobile story system: media first, content second, no text-on-image collisions. */
@media (max-width:760px){
  .pd-cinematic-site .pd-nav__menu,.pd-cinematic-site .pd-nav__contacts{display:none!important}
  .pd-cinematic-site .pd-nav__toggle{display:inline-flex!important;align-items:center;justify-content:center}
  .pd-cinematic-site .pd-nav__actions{gap:7px}
  .pd-cinematic-site .pd-nav__cta{padding:10px 13px!important;font-size:12px!important}
  .pd-cinematic-site .pd-nav__brand{max-width:52vw!important}

  .pd-cinematic-site .pd-story__sticky{height:100svh!important;min-height:100svh!important;overflow:hidden!important}
  .pd-cinematic-site .pd-story__slides,.pd-cinematic-site .pd-story--light .pd-story__slides{
    position:absolute!important;inset:0 0 auto 0!important;width:100%!important;height:44svh!important;min-height:290px!important;max-height:390px!important;z-index:0!important;overflow:hidden!important;background:#e9e6df!important
  }
  .pd-cinematic-site .pd-story__slide,.pd-cinematic-site .pd-story--light .pd-story__slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
  .pd-cinematic-site .pd-story__media,.pd-cinematic-site .pd-story__slide>.pd-placeholder{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
  .pd-cinematic-site .pd-story__content,.pd-cinematic-site .pd-story--light .pd-story__content{
    position:relative!important;z-index:2!important;width:100%!important;height:100%!important;display:block!important;padding:calc(max(44svh,290px) + 16px) 18px 74px!important;background:transparent!important;color:inherit!important
  }
  .pd-cinematic-site.pd-theme-light .pd-story__sticky{background:#f7f6f2!important}
  .pd-cinematic-site.pd-theme-dark .pd-story__sticky{background:#0b0a0e!important}
  .pd-cinematic-site .pd-story__heading,.pd-cinematic-site .pd-story__info,.pd-cinematic-site .pd-story--light .pd-story__heading,.pd-cinematic-site .pd-story--light .pd-story__info{
    width:100%!important;max-width:none!important;margin:0!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important
  }
  .pd-cinematic-site .pd-story__heading{padding:0!important;background:transparent!important}
  .pd-cinematic-site .pd-story__chapter{margin:0 0 7px!important;font-size:10px!important}
  .pd-cinematic-site .pd-story__title,.pd-cinematic-site .pd-story--light .pd-story__title{max-width:100%!important;margin:0 0 13px!important;font-size:clamp(44px,14vw,64px)!important;line-height:.87!important;letter-spacing:-.058em!important}
  .pd-cinematic-site .pd-story__info,.pd-cinematic-site .pd-story--light .pd-story__info{padding:0!important;background:transparent!important}
  .pd-cinematic-site .pd-story__intro{font-size:14px!important;line-height:1.42!important;margin:0 0 10px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pd-cinematic-site .pd-story__info h3{font-size:clamp(25px,7.6vw,33px)!important;margin:0 0 8px!important}
  .pd-cinematic-site .pd-story__info p{font-size:14px!important;line-height:1.43!important;margin:0 0 12px!important}
  .pd-cinematic-site .pd-story__progress{font-size:9px!important;margin-top:0!important}
  .pd-cinematic-site .pd-story__shade{display:none!important}
  .pd-cinematic-site .pd-story__format{top:84px!important;right:12px!important;max-width:185px!important;font-size:10px!important;padding:8px 11px!important}

  .pd-site-footer{padding:62px 22px 24px}
  .pd-site-footer__grid{grid-template-columns:1fr;gap:38px}
  .pd-site-footer__brand img{width:min(230px,70%)}
  .pd-site-footer__bottom{grid-template-columns:1fr;gap:13px;text-align:left}
  .pd-site-footer__bottom>span:last-child{text-align:left}
  .pd-site-footer__legal{justify-content:flex-start}
}

/* Landscape phones: retain split screen, but keep text in a readable panel. */
@media (orientation:landscape) and (max-width:960px) and (max-height:600px){
  .pd-cinematic-site .pd-story__content,.pd-cinematic-site .pd-story--light .pd-story__content{padding:70px 20px 18px!important}
  .pd-cinematic-site .pd-story__heading{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
  .pd-cinematic-site .pd-story__info,.pd-cinematic-site .pd-story--light .pd-story__info{padding:10px 12px!important;border-radius:14px!important}
  .pd-cinematic-site.pd-theme-light .pd-story__info{background:rgba(255,255,255,var(--pd-text-card-opacity))!important;backdrop-filter:blur(var(--pd-text-card-blur))!important;-webkit-backdrop-filter:blur(var(--pd-text-card-blur))!important}
  .pd-cinematic-site.pd-theme-dark .pd-story__info{background:rgba(12,11,15,var(--pd-text-card-opacity))!important;backdrop-filter:blur(var(--pd-text-card-blur))!important;-webkit-backdrop-filter:blur(var(--pd-text-card-blur))!important}
  .pd-cinematic-site .pd-story__title{font-size:clamp(36px,6.5vw,54px)!important}
  .pd-cinematic-site .pd-story__info p{font-size:11.5px!important;line-height:1.32!important}
  .pd-cinematic-site .pd-story__intro{font-size:11px!important;line-height:1.28!important;-webkit-line-clamp:2}
}

@media (min-width:761px) and (max-width:1500px){
  .pd-cinematic-site .pd-nav__menu a,.pd-cinematic-site .pd-nav__menu button{padding:10px 10px;font-size:12px}
  .pd-cinematic-site .pd-nav__contacts{display:none}
}

/* ==========================================================================
   v5.4.8 — HYBRID SITE ARCHITECTURE
   Main page = cinematic overview; existing WordPress pages = technical depth.
   ========================================================================== */

/* Compact Empresa dropdown keeps the desktop header usable without turning it
   into a long list of unrelated top-level destinations. */
.pd-cinematic-site .pd-nav__dropdown{position:relative;display:flex;align-items:center}
.pd-cinematic-site .pd-nav__dropdown-trigger span{font-size:.82em;margin-left:5px;opacity:.62;transform:translateY(-1px)}
.pd-cinematic-site .pd-nav__dropdown-panel{
  position:absolute;top:calc(100% + 10px);right:0;min-width:180px;padding:8px;border-radius:18px;
  opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  box-shadow:0 20px 65px rgba(0,0,0,.16);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)
}
.pd-cinematic-site .pd-nav__dropdown:hover .pd-nav__dropdown-panel,
.pd-cinematic-site .pd-nav__dropdown:focus-within .pd-nav__dropdown-panel{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.pd-cinematic-site.pd-theme-light .pd-nav__dropdown-panel{background:rgba(255,255,255,.96);border:1px solid rgba(35,30,39,.09)}
.pd-cinematic-site.pd-theme-dark .pd-nav__dropdown-panel{background:rgba(14,12,18,.96);border:1px solid rgba(255,255,255,.10)}
.pd-cinematic-site .pd-nav__dropdown-panel a{display:flex!important;justify-content:flex-start!important;width:100%;padding:10px 12px!important;border-radius:12px!important}

/* Links from the cinematic overview into the existing technical pages. */
.pd-directions__copy,.pd-gallery__copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.pd-section-link,.pd-story__deep-link{
  display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;
  padding:10px 14px;border-radius:999px;font-size:13px;line-height:1.2;text-decoration:none;
  transition:transform .22s ease,background .22s ease,border-color .22s ease,color .22s ease
}
.pd-theme-light .pd-section-link,.pd-theme-light .pd-story__deep-link{color:#28222f;border:1px solid rgba(42,34,48,.16);background:rgba(255,255,255,.62)}
.pd-theme-dark .pd-section-link,.pd-theme-dark .pd-story__deep-link{color:#f6f1fa;border:1px solid rgba(255,255,255,.18);background:rgba(16,14,20,.42)}
.pd-section-link:hover,.pd-story__deep-link:hover{transform:translateY(-1px);border-color:var(--pd-violet);color:var(--pd-violet)}
.pd-story__deep-link{margin-top:18px}

/* Mobile drawer group label. */
.pd-mobile-menu__divider{padding:19px 8px 4px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;opacity:.48}

/* Footer socials live only here, keeping the header focused on conversion. */
.pd-site-footer__social{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.pd-site-footer__social a{
  display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border-radius:999px;
  color:inherit;font-size:12px;text-decoration:none;border:1px solid currentColor;opacity:.68;transition:.2s ease
}
.pd-site-footer__social a:hover{opacity:1;transform:translateY(-1px)}
.pd-site-footer__hours{margin-top:18px;padding-top:18px;border-top:1px solid currentColor;opacity:.78}
.pd-site-footer__hours strong{display:block;margin-bottom:9px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.pd-site-footer__hours p{font-size:13px!important;opacity:.82!important}
.pd-site-footer__bottom>a{color:inherit;text-decoration:none;font-weight:600}
.pd-site-footer__bottom>a:hover{text-decoration:underline}

@media(max-width:1180px){
  .pd-cinematic-site .pd-nav__menu a,.pd-cinematic-site .pd-nav__menu button{padding:10px 10px;font-size:12px}
}
@media(max-width:760px){
  .pd-story__deep-link{margin-top:9px;padding:8px 11px;font-size:11px}
  .pd-directions__copy,.pd-gallery__copy{gap:12px}
  .pd-site-footer__social{margin-top:18px}
}
