:root{--ink:#eef2f5;--muted:#bdc8cf;--paper:#192228;--line:#ffffff24;--orange:#ff8a22}
body{background:#141b20;color:#eef2f5;line-height:1.65}main,.header,footer{position:relative;z-index:1}p{color:var(--muted)}.section{max-width:1320px;padding:100px 5%;scroll-margin-top:32px}.section .eyebrow,.eyebrow{color:var(--orange)}
.header{background:#141b2080;border-bottom:1px solid var(--line);height:94px;max-width:1440px;margin:auto}.header .brand img{width:54px;height:54px}.header nav>a:not(.nav-contact):hover{color:var(--orange)}.nav-contact{border-color:#ffffff60}.nav-contact:hover{background:var(--orange);color:#141b20}
.hero{max-width:1440px;margin:auto;min-height:670px;background:transparent;grid-template-columns:1.05fr 1fr;align-items:center}.hero-copy{padding:90px 5% 80px 9%;position:relative;z-index:2}.hero h1{font-size:clamp(3rem,5vw,5.5rem);max-width:700px}.hero-description{max-width:450px;font-size:1.12rem}.hero-proof{font-size:.85rem;color:#bdc8cf;margin-top:32px;line-height:1.8}.hero-image{height:540px;overflow:visible;align-self:center;margin-left:-30px;mask-image:radial-gradient(ellipse at center,#000 35%,#000a 62%,transparent 79%);-webkit-mask-image:radial-gradient(ellipse at center,#000 35%,#000a 62%,transparent 79%)}.hero-image>img{object-position:50% 50%;object-fit:cover}.hero-image:after{display:none}.image-caption{display:none}.orange{color:#141b20}.text-link{border-bottom-color:#ff8a2280;display:inline-block;margin-top:24px;color:#eef2f5}.text-link:hover{color:var(--orange)}
.service-directory{padding-block:30px 85px}.service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px}.service-links a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 0;border-top:1px solid var(--line);font-size:clamp(1rem,1.4vw,1.3rem);font-weight:700;line-height:1.35}.service-links a span{color:var(--orange);flex:none}.service-links a:hover{color:var(--orange)}
.survey-story{scroll-margin-top:30px}.story-intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.story-intro p+p{margin-top:20px}.story-intro h2{font-size:clamp(2.2rem,3.8vw,3.6rem)}.story-intro>div>p:not(.eyebrow){font-size:1.08rem;max-width:540px}.survey-story>.story-intro{padding-bottom:40px;border-top:1px solid var(--line)}
#vv-motion-demo{font-family:inherit;line-height:normal;max-width:1320px}#vv-motion-demo .intro{padding-top:38px}#vv-motion-demo .intro h2{font-size:clamp(28px,3.7vw,48px)}#vv-motion-demo .intro p{max-width:300px;font-size:14px;line-height:1.65}#vv-motion-demo .cad-deliverable{margin-bottom:0}#vv-motion-demo .cad-example-note{line-height:1.6}#vv-motion-demo .scroll-caption{font-size:clamp(12px,1.2vw,15px);line-height:1.6}#vv-motion-demo .tie-heading{margin-top:35px}
.survey-handoff{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:50px;padding-bottom:100px}.survey-handoff h3{font-size:clamp(1.8rem,2.7vw,2.7rem);line-height:1.2}.responsible-charge{border-top:1px solid var(--line);margin-top:30px;padding-top:15px;font-size:.85rem}.responsible-charge summary{cursor:pointer;color:#bdc8cf}.responsible-charge p{margin-top:12px;font-size:.85rem}
.service-story{border-top:1px solid var(--line)}.plain-list{list-style:none;padding:0;margin:22px 0 0}.plain-list li{padding:9px 0;border-bottom:1px solid var(--line);color:#cbd4da;font-size:.95rem}.model-callout{margin-top:50px;border-left:2px solid var(--orange);background:#141b2066;padding:28px 32px}.model-callout h3{font-size:1.65rem}.property-examples{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;margin-top:48px;align-items:center}.property-examples figure{margin:0}.property-examples .image-button{background:transparent}.property-examples img{height:330px;object-fit:contain;background:transparent;padding:0}.property-examples figcaption{font-size:.82rem;color:#b8c4cb;padding-top:16px}.image-button span{background:#141b20da;color:white}.tailored{padding-block:85px}.process{max-width:1320px;background:#141b2066;border-block:1px solid var(--line)}.process-grid span{color:var(--orange)}.process-grid h3{font-size:1.45rem}.about{gap:9%}.owner{font-size:1rem}.owner span{color:#bdc8cf}.contact{max-width:1320px;background:transparent;border-top:1px solid var(--line);gap:9%;padding:85px 5%}.contact h2{font-size:clamp(2.7rem,4vw,4.3rem)}.contact-info>a{font-size:clamp(1rem,1.8vw,1.65rem)}footer{max-width:1320px;margin:auto;border-top:1px solid var(--line);padding:30px 5%}.footer-brand{color:#eef2f5}dialog{color:#141b20}dialog p{color:#53606a}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#ffad61}
@media(max-width:1000px){.hero{min-height:580px}.hero-copy{padding:65px 6%}.hero h1{font-size:3.6rem}.hero-image{height:450px}.header nav{gap:18px}.header nav a{font-size:.8rem}.section{padding-block:70px}.story-intro,.survey-handoff{gap:6%}.property-examples img{height:270px}}
@media(max-width:760px){.header{height:82px}.header .brand img{width:46px;height:46px}.menu-toggle{background:#192228;color:#eef2f5}.header nav{background:#192228}.hero{grid-template-columns:1fr;min-height:0;gap:0}.hero-copy{padding:55px 6% 10px}.hero h1{font-size:clamp(2.8rem,10.5vw,4.4rem)}.hero-image{height:290px;width:100%;margin:0;mask-image:radial-gradient(ellipse at center,#000 25%,#000a 53%,transparent 76%);-webkit-mask-image:radial-gradient(ellipse at center,#000 25%,#000a 53%,transparent 76%)}.hero-description{font-size:1rem}.hero-proof{margin-top:24px}.section{padding:55px 6%}.service-directory{padding-top:12px}.service-links{grid-template-columns:1fr}.service-links a{padding:18px 0;font-size:1.1rem}.story-intro,.survey-handoff{grid-template-columns:1fr;gap:26px}.story-intro h2{font-size:2.45rem}.story-intro>div>p:not(.eyebrow){font-size:1rem}.survey-story>.story-intro{padding-bottom:20px}#vv-motion-demo .intro{padding-top:28px}#vv-motion-demo .intro p{max-width:none}#vv-motion-demo .scroll-caption{gap:14px}#vv-motion-demo .tie-heading{margin-block:28px 18px}.survey-handoff{padding-top:32px}.survey-handoff h3 br{display:none}.survey-handoff h3{max-width:340px;font-size:1.85rem;line-height:1.3}.survey-handoff h3 br:after{content:' '}.model-callout{margin-top:30px;padding:22px}.model-callout .button{margin-top:20px}.property-examples{grid-template-columns:1fr;gap:30px;margin-top:30px}.property-examples img{height:auto;max-height:350px}.contact{padding:55px 6%}.contact h2{font-size:2.8rem}.contact-info>a{font-size:clamp(1rem,4.6vw,1.6rem)}footer{padding:28px 6%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Reviewed typography and project media. */
.hero-image{height:580px;margin-left:0}.hero-image>img{object-fit:contain}
.story-intro h2,.survey-handoff h3,.contact h2{text-wrap:balance;line-height:1.14}.story-intro h2{font-size:clamp(2rem,3.2vw,3.2rem)}.survey-handoff h3{font-size:clamp(1.75rem,2.7vw,2.7rem)}
#vv-motion-demo .scroll-caption{justify-content:center;text-align:center;font-size:clamp(15px,1.4vw,20px);padding-block:24px;line-height:1.7}
.construction-film{margin:40px 0 0}.construction-film video{display:block;width:100%;max-height:75vh;aspect-ratio:4/3;object-fit:contain;background:#10171c;border:1px solid #ffffff20;border-radius:3px}
.model-callout{display:grid;grid-template-columns:minmax(200px,1.2fr) minmax(170px,1fr) auto;gap:28px;padding:28px 0 28px 26px}.model-thumbnail{display:block;min-width:0}.model-thumbnail img{width:100%;height:230px;object-fit:contain}.model-thumbnail:hover{filter:brightness(1.1)}.model-callout .button{white-space:nowrap}
.property-examples{grid-template-columns:1fr 1fr;align-items:start}.property-examples .image-button img{height:330px;width:100%;max-height:none;object-fit:contain}.communication{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.communication h3{font-size:1.35rem;margin-bottom:14px}
#contact .response-promise{font-size:.83rem;color:#bdc8cf;margin:12px 0 0;line-height:1.5}.inquiry-panel{grid-column:1/-1;border-top:1px solid var(--line);padding-top:35px}.inquiry-panel[hidden]{display:none}.inquiry-panel:not([hidden]){animation:form-in .35s ease-out}@keyframes form-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.inquiry-panel h3{font-size:1.7rem}.form-intro{margin:12px 0 26px;font-size:.9rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{display:flex;flex-direction:column;gap:8px;color:#dce3e7;font-size:.9rem;font-weight:600}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea{font:400 16px/1.5 Arial,Helvetica,sans-serif;color:#eef2f5;background:#172128d9;border:1px solid #6a7881;border-radius:2px;padding:12px 14px;width:100%}.form-grid textarea{resize:vertical;min-height:130px}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#9cabb5}.form-grid input:focus-visible,.form-grid textarea:focus-visible{outline:2px solid #ff8a22;outline-offset:3px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.form-note{font-size:.8rem;margin-top:14px}.inquiry-panel button{cursor:pointer}
@media(max-width:1100px){.model-callout{grid-template-columns:1fr 1fr}.model-callout>.button{grid-column:2;justify-self:start;margin-top:0}}
@media(max-width:760px){.hero-image{height:320px}.story-intro h2{font-size:clamp(1.85rem,7.5vw,2.45rem)}.construction-film{margin-top:28px}.model-callout{display:flex;flex-direction:column;align-items:stretch;padding:18px;gap:18px}.model-thumbnail img{height:220px}.model-callout .button{align-self:start;margin-top:0}.property-examples{grid-template-columns:1fr}.property-examples .image-button img{height:280px}.form-grid{grid-template-columns:1fr}.inquiry-panel{padding-top:26px}#vv-motion-demo .scroll-caption{font-size:15px}.contact h2{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){.inquiry-panel:not([hidden]){animation:none}}
/* Consistent section hierarchy and directional text entrances. */
main .section-title,main .story-intro .section-title,main .contact .section-title{font-size:clamp(34px,3.5vw,52px);line-height:1.12;font-weight:750;letter-spacing:-.035em;color:#eef2f5;margin:0 0 22px;text-wrap:balance}
main .section-tagline,main .story-intro .section-tagline{font-size:clamp(25px,2.65vw,38px);line-height:1.14;letter-spacing:-.035em;font-weight:750;color:#eef2f5;margin:0;text-wrap:balance}
main .section-tagline span{color:#ff8a22}.service-directory .section-title{margin-bottom:30px}.process>.section-tagline{margin-bottom:35px}
#vv-motion-demo .intro{display:block;padding-top:16px;padding-bottom:24px;min-height:0}#vv-motion-demo .intro p{color:#ff8a22;max-width:none;margin:0;text-align:center;font-size:15px}
.survey-handoff{display:block;padding-top:28px;padding-bottom:70px}.handoff-copy{max-width:100%;min-width:0}.handoff-lead{font-size:1.15rem;margin-bottom:14px}.handoff-lead strong{color:#eef2f5;font-weight:600}.handoff-copy>p{max-width:900px}.handoff-copy>.text-link{margin-top:18px}.sample-request{margin-top:26px}.sample-request>.button{cursor:pointer}.sample-request .inquiry-panel{margin-top:24px}.sample-request .inquiry-panel>p{margin-bottom:24px}.responsible-charge{max-width:900px}.sample-request .form-note,#sample-status{font-size:.85rem;margin-top:16px}
/* Percentage row gaps overflowed the grid when forms expanded. */
.contact,.about,.story-intro{column-gap:9%;row-gap:36px}.contact{align-items:start;grid-auto-rows:auto;height:auto;min-height:0}.contact>div{min-width:0}.inquiry-panel{position:static;width:100%;height:auto;max-height:none;overflow:visible;transform:none;scroll-margin-top:30px}.inquiry-panel:not([hidden]){animation:none}.form-grid{min-width:0}.form-grid label{min-width:0}.form-grid input,.form-grid textarea{box-sizing:border-box;max-width:100%}footer{clear:both}
.text-reveal{opacity:0;transform:translateX(52px);transition:opacity .8s ease,transform .95s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
.text-reveal[data-motion=title],.text-reveal[data-motion=tagline]{transform:translateX(-52px)}
.text-reveal.motion-visible{opacity:1;transform:none;will-change:auto}
.model-thumbnail{height:280px;display:flex;align-items:center;justify-content:center;overflow:hidden}.model-thumbnail img{width:260px;max-width:90%;height:260px;object-fit:contain;animation:model-spin 36s linear infinite;animation-play-state:paused}.model-thumbnail.spin-visible img{animation-play-state:running}.model-thumbnail:hover img,.model-thumbnail:focus-visible img{animation-play-state:paused}@keyframes model-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@media(max-width:760px){
 main .section-title,main .story-intro .section-title,main .contact .section-title{font-size:clamp(32px,9vw,42px);margin-bottom:18px}
 main .section-tagline,main .story-intro .section-tagline{font-size:clamp(25px,7vw,32px)}
 .contact{display:flex;flex-direction:column;gap:34px}.contact>div{width:100%}.contact-info{align-self:stretch}.about,.story-intro{row-gap:26px;column-gap:0}.survey-handoff{padding-top:24px;padding-bottom:50px}.handoff-lead{font-size:1.06rem}.sample-request>.button{max-width:100%;white-space:normal;text-align:center}.form-actions>.button{max-width:100%}
 .text-reveal[data-motion=title]{transform:translateX(-32px)}.text-reveal[data-motion=tagline]{transform:translateX(32px)}.text-reveal[data-motion=body]{transform:scale(.86);transform-origin:center}.text-reveal.motion-visible{transform:none}
 .model-thumbnail{height:270px}.model-thumbnail img{height:240px;width:240px}
}
@media(prefers-reduced-motion:reduce){.text-reveal{opacity:1;transform:none!important;transition:none}.model-thumbnail img{animation:none}}
@media print{.text-reveal{opacity:1;transform:none}}
body{overflow-x:visible}
/* White-to-orange title treatment, with a plain-color fallback. */
@supports (background-clip:text) or (-webkit-background-clip:text){
 #hero-heading,.section-title,.section-pin-inner>span,#vv-tie-heading{
 background-image:linear-gradient(105deg,#fff 0%,#ffdcba 22%,#ff8a22 58%,#ff8a22 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;background-size:100% 100%;
 }
 #hero-heading span{color:inherit;-webkit-text-fill-color:inherit}
 #vv-motion-demo .cad-overlay-title .cad-word{background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none}
 #vv-motion-demo .cad-compiled{background-image:linear-gradient(105deg,#fff,#ffcc99)}
 #vv-motion-demo .cad-center{background-image:linear-gradient(105deg,#ffcc99,#ff8a22)}
 #vv-motion-demo .cad-delivered{background-image:linear-gradient(105deg,#ff8a22,#ff8a22)}
}
.section-pin{position:fixed;z-index:20;top:0;left:0;right:0;pointer-events:none;background:linear-gradient(#141b20 0%,#141b20 86%,#141b20ed 95%,transparent 100%);padding:15px 0 22px}
.section-pin[hidden]{display:none}.section-pin-inner{max-width:1320px;margin:auto;padding:0 5%}.section-pin-inner>span{display:inline-block;font-family:Arial,Helvetica,sans-serif;font-size:clamp(30px,3.5vw,52px);font-weight:750;letter-spacing:-.035em;line-height:1.12}
.header nav{gap:22px}.header nav>a{white-space:nowrap}.header .brand{flex-shrink:0}
.construction-film{position:relative;max-width:920px;margin:40px auto 0;border-radius:24px;overflow:hidden;isolation:isolate;box-shadow:0 14px 45px #0003}
.construction-film video{width:100%;height:auto;max-height:70vh;aspect-ratio:4/3;object-fit:contain;border:0;border-radius:24px;background:#10171c;display:block}
.video-toggle{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:transparent;color:white;cursor:pointer;border-radius:24px}.video-toggle[hidden]{display:none}.video-control-icon{position:absolute;right:18px;bottom:18px;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#141b209c;font-size:19px;color:#fff;opacity:1;transition:opacity .25s ease}.construction-film.is-playing .video-control-icon{opacity:0}.construction-film:hover .video-control-icon,.video-toggle:focus-visible .video-control-icon{opacity:1}.video-toggle:focus-visible{outline:3px solid #ff8a22;outline-offset:-5px}
@media(min-width:761px) and (max-width:1100px){.header{height:auto;min-height:94px;flex-wrap:wrap;gap:14px;padding-block:18px}.header nav{gap:16px;flex-wrap:wrap}.header nav>a{font-size:.8rem}}
@media(max-width:760px){.section-pin{padding:12px 0 18px}.section-pin-inner{padding:0 6%}.section-pin-inner>span{font-size:clamp(28px,8vw,36px)}.construction-film{margin-top:28px;border-radius:18px}.construction-film video,.video-toggle{border-radius:18px}.video-control-icon{right:12px;bottom:12px;width:42px;height:42px}.header nav{gap:18px}}
@media(prefers-reduced-motion:reduce){.video-control-icon{transition:none}}

/* CAD title now flows below the screenshot, without the dark overlay vignette. */
#vv-motion-demo .cad-title-mask{position:relative;left:auto;top:auto;transform:none;margin:18px auto 8px;width:100%;padding:18px 0;background:none;overflow:hidden}
#vv-motion-demo .cad-overlay-title{background:none;text-shadow:none;font-size:clamp(23px,3.2vw,44px)}
#vv-motion-demo .cad-deliverable .cad-example-note{text-align:center;margin-top:0}
#vv-motion-demo .cad-sample-request{width:90%;max-width:1200px;margin:24px auto 0;text-align:center;line-height:1.6}
#vv-motion-demo .cad-sample-request>button{width:min(100%,620px);min-height:62px;padding:17px 28px;font:700 clamp(16px,1.4vw,20px)/1.35 Arial,Helvetica,sans-serif;background:#ff8a22;color:#141b20;border:1px solid #ff8a22;box-shadow:0 8px 24px #0003}
#vv-motion-demo .cad-sample-request>button:hover{background:#ffa250}
#vv-motion-demo .cad-sample-request .inquiry-panel{text-align:left}
#vv-motion-demo .cad-sample-request .form-actions .orange{background:#ff8a22;color:#141b20;border-color:#ff8a22}
#vv-motion-demo .cad-sample-request .form-actions .outline{border-color:#67727a;color:white}
#vv-motion-demo .cad-sample-request input{flex:none;min-width:0}
@media(max-width:600px){#vv-motion-demo .cad-title-mask{margin-top:12px;padding-block:14px}#vv-motion-demo .cad-overlay-title{font-size:clamp(19px,5vw,28px);gap:7px}#vv-motion-demo .cad-sample-request{margin-top:20px}}

main .section-tagline,main .story-intro .section-tagline{background:none;background-clip:border-box;-webkit-background-clip:border-box;color:#eef2f5;-webkit-text-fill-color:#eef2f5}
main .section-tagline span{color:#ff8a22;-webkit-text-fill-color:#ff8a22}
.hero-image{mask-image:radial-gradient(ellipse closest-side at center,#000 30%,#000e 48%,#0007 72%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse closest-side at center,#000 30%,#000e 48%,#0007 72%,transparent 100%)}


@media(max-width:760px){
 .header{height:auto;min-height:82px;display:grid;grid-template-columns:1fr auto;align-items:center;row-gap:0;padding-block:14px;background:#141b20}
 .header #navigation{position:static;top:auto;left:auto;right:auto;grid-column:1/-1;display:none;width:100%;margin-top:16px;padding:20px 0 6px;background:#141b20;box-shadow:none;border-top:1px solid #ffffff24}
 .header #navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}
 #construction>.native-pin,#property>.native-pin{padding-inline:6%}
}
/* Pinning ancestors remain ordinary, unclipped document containers. */
html,body,main,#survey-detail,#construction,#property,#vv-motion-demo,#vv-motion-demo .sequence-track{overflow:visible}
#vv-motion-demo,#vv-motion-demo .sequence-track{transform:none;will-change:auto}
#vv-motion-demo .sequence-track>.stage{position:-webkit-sticky;position:sticky;transform:none;will-change:auto}
.section-sticky-heading{position:-webkit-sticky;position:sticky;top:0;z-index:10;max-width:1320px;margin:0 auto;padding:14px 0 18px;background:linear-gradient(#141b20 0%,#141b20 85%,transparent 100%)}
main .section-sticky-heading>.section-title{margin:0;font-size:clamp(34px,3.5vw,52px);line-height:1.12}
.survey-story>.section-sticky-heading{padding-inline:5%}
.survey-story>.story-intro{padding-top:24px;border-top:0}
@media(max-width:760px){
 .section-sticky-heading{padding-block:12px 18px}
 main .section-sticky-heading>.section-title{font-size:clamp(32px,9vw,42px)}
 .survey-story>.section-sticky-heading{padding-inline:6%}
 .survey-story>.story-intro{padding-top:18px}
 .text-reveal[data-motion=title]{transform:translateX(-18px)}
 .text-reveal[data-motion=tagline]{transform:translateX(18px)}
 .text-reveal.motion-visible{transform:none}
}
@media(max-width:600px){
 #vv-motion-demo .sequence-track>.stage{top:var(--native-mobile-pin-top,24px);left:auto;width:90%;margin-inline:auto}
}

/* Compact rounded masks; native sticky containers and animation logic stay intact. */
.section-sticky-heading{background:none;padding-top:2px;padding-bottom:6px}
.section-sticky-heading .title-pill{display:inline-block;width:fit-content;max-width:calc(100% + 48px);padding:12px 24px;margin-left:-24px;border-radius:999px;background:#141b20f5;vertical-align:top}
main .section-sticky-heading .section-title{margin:0;line-height:1.12}
@media(max-width:760px){
 .section-sticky-heading{padding-top:2px;padding-bottom:8px}
 .section-sticky-heading .title-pill{padding:10px 18px;margin-left:-18px;max-width:calc(100% + 36px)}
}

/* DJI embed: bounded, stable viewport with an explicit exit from interaction. */
.dji-model-block{margin-top:48px;min-width:0}
.dji-model-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.dji-model-heading h3{font-size:clamp(1.6rem,3vw,2.2rem);margin:0}
.dji-model-heading .eyebrow{margin-bottom:8px}
.dji-model-heading>.text-link{flex-shrink:0}
.dji-viewer-shell{border:1px solid #ffffff24;border-radius:22px;background:#192228;overflow:hidden;isolation:isolate;scroll-margin-top:20px}
.dji-viewer-toolbar{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:#141b20}
.dji-viewer-toolbar p{margin:0;font-size:.85rem;color:#bdc8cf}
.dji-viewer-toolbar .button{padding:10px 16px;min-height:44px;font-size:.85rem;flex-shrink:0;margin:0;white-space:normal}
.dji-viewer-frame{position:relative;height:clamp(340px,58svh,640px);width:100%;overflow:hidden;overscroll-behavior:none;background:#262626}
.dji-viewer-frame iframe{display:block;width:100%;height:100%;border:0;touch-action:none;overscroll-behavior:none;pointer-events:none}
.dji-viewer-shell.is-interactive iframe{pointer-events:auto}
.dji-viewer-cover{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px;color:#eef2f5;cursor:pointer;background:radial-gradient(ellipse at center,#26343d,#141b20);text-align:center;font:inherit}
.dji-viewer-cover .dji-viewer-start-label{font-size:clamp(1.25rem,3vw,1.8rem);font-weight:700}
.dji-viewer-start-label>span{color:var(--orange)}
.dji-viewer-cover>span:last-child{font-size:.9rem;color:#bdc8cf;max-width:32em}
.dji-viewer-cover[hidden],.dji-viewer-done[hidden]{display:none}
.dji-viewer-help{margin-top:16px;border-bottom:1px solid var(--line);padding-bottom:12px}
.dji-viewer-help summary{width:fit-content;cursor:pointer;color:var(--orange);font-size:.9rem;padding:8px 0}
.dji-control-guide{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:4px 0 8px}
.dji-control-guide p{font-size:.9rem;line-height:1.8;margin:0;color:#bdc8cf}
.dji-control-guide strong{display:block;color:#eef2f5;margin-bottom:6px}
@media(max-width:760px){
 .dji-model-block{margin-top:30px}
 .dji-model-heading{align-items:start;flex-direction:column;gap:12px}
 .dji-viewer-shell{border-radius:16px}
 .dji-viewer-frame{height:55svh;min-height:240px;max-height:560px}
 .dji-viewer-toolbar{padding:10px 12px;min-height:70px;gap:10px}
 .dji-viewer-toolbar p{font-size:.75rem;line-height:1.4;max-width:55%}
 .dji-viewer-toolbar .button{max-width:46%;font-size:.75rem;padding:9px 12px}
 .dji-control-guide{grid-template-columns:1fr;gap:16px}
}
@media(max-height:480px){.dji-viewer-frame{height:calc(100svh - 110px);min-height:150px}}

/* High-contrast dismissal controls, including forms and the image lightbox. */
button.button.outline,#close-lightbox{background:#192228;color:#eef2f5;border:1px solid #ff8a22;cursor:pointer}
button.button.outline:hover,#close-lightbox:hover{background:#ff8a22;color:#141b20}
button.button.outline:focus-visible,#close-lightbox:focus-visible{outline:3px solid #ffad61;outline-offset:4px}
.dji-viewer-shell[data-interaction=desktop] #dji-viewer-done{display:none}
.dji-viewer-shell[data-interaction=touch].is-interactive .dji-viewer-toolbar{flex-direction:column;gap:10px;padding:14px}
.dji-viewer-shell[data-interaction=touch].is-interactive .dji-viewer-toolbar p{max-width:none;text-align:center;font-size:.85rem}
#dji-viewer-done{width:100%;max-width:none;min-height:56px;padding:14px 20px;font-size:1rem;line-height:1.35;font-weight:700;background:#ff8a22;color:#141b20;border:2px solid #ffad61;border-radius:12px;white-space:normal}
#dji-viewer-done:hover{background:#ffad61;color:#141b20}
.dji-viewer-shell[data-interaction=touch].is-interactive #dji-viewer-done{animation:dji-exit-pulse 2.4s ease-in-out infinite}
@keyframes dji-exit-pulse{0%,100%{box-shadow:0 0 0 0 #ff8a2200}50%{box-shadow:0 0 0 6px #ff8a2238}}
@media(prefers-reduced-motion:reduce){.dji-viewer-shell[data-interaction=touch].is-interactive #dji-viewer-done{animation:none}}

/* External full-view link stays above DJI and the touch activation cover. */
.dji-fullscreen{position:absolute;left:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 15px;border:1px solid #ff8a22;border-radius:10px;background:#141b20f5;color:#eef2f5;text-decoration:none;font-size:.85rem;font-weight:700;line-height:1.2;box-shadow:0 3px 14px #0005;touch-action:manipulation}
.dji-fullscreen:hover{background:#ff8a22;color:#141b20}
.dji-fullscreen:focus-visible{outline:3px solid #ffad61;outline-offset:3px}
@media(max-width:760px){.dji-fullscreen{left:10px;bottom:10px;padding:11px 13px}}

/* Floating mobile model preview, behind the activation copy. */
.dji-viewer-cover{isolation:isolate}
.dji-model-preview{position:absolute;z-index:-1;left:50%;top:50%;width:78%;height:auto;max-width:430px;max-height:85%;object-fit:contain;opacity:.7;pointer-events:none;transform:translate(-50%,-50%);animation:dji-preview-spin 45s linear infinite;animation-play-state:paused}
.dji-viewer-shell.preview-visible .dji-model-preview{animation-play-state:running}
.dji-viewer-cover>span{position:relative;z-index:1;text-shadow:0 2px 7px #000,0 0 24px #141b20}
.dji-viewer-cover>span:last-child{color:#eef2f5}
@keyframes dji-preview-spin{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.dji-model-preview{animation:none}}

/* Vector navigation arrows render identically without emoji-font substitution. */
.arrow-icon{display:inline-block;flex:none;width:1em;height:1em;vertical-align:-.12em;color:inherit;overflow:visible}
.service-links .arrow-icon{width:20px;height:20px}

#vv-motion-demo .cad-sample-request>.cloud-view-link{display:flex;align-items:center;justify-content:center;width:min(100%,620px);min-height:62px;margin:0 auto 14px;padding:17px 28px;font:700 clamp(16px,1.4vw,20px)/1.35 Arial,Helvetica,sans-serif;background:#ff8a22;color:#141b20;border:1px solid #ff8a22;box-shadow:0 8px 24px #0003;text-align:center}
#vv-motion-demo .cad-sample-request>.cloud-view-link:hover{background:#ffa250}

/* Equipment and software */
.equipment{border-bottom:1px solid var(--line)}
.equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:34px}
.equipment-column{min-width:0}
.equipment-column>h3{font-size:.85rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--orange);margin:0 0 24px}
.equipment-column ul{list-style:none;padding:0;margin:0}
.hardware-list li{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--line)}
.hardware-list li:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}
.hardware-list strong{display:block;font-size:1.06rem;line-height:1.4;color:#eef2f5}
.hardware-list p{font-size:.95rem;line-height:1.65;margin-top:6px}
.software-list li{position:relative;padding:0 0 15px 21px;font-size:1.06rem;line-height:1.5;color:#eef2f5}
.software-list li:before{content:'';position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--orange)}
.software-list li:last-child{padding-bottom:0}
@media(max-width:760px){.equipment-grid{grid-template-columns:1fr;gap:36px;margin-top:26px}.equipment-column>h3{margin-bottom:20px}}
