/* Focused refinements of the approved home. */
:root{--button-radius:9px}
button,.button,.text-link,.service-contact,.service summary,header nav a:last-child,.photo-cue{border-radius:var(--button-radius)}
.button,.menu-toggle,.photo-dialog button,.insight-trigger{min-height:44px}
.method-button{margin-top:14px}
.text-link{padding:12px 16px;border:1px solid #ffffff50}
.service-contact{border:1px solid #aeb4a9;padding:8px 12px;min-height:40px}
.service-contact:hover{border-color:var(--orange)}
.structure-details h3{color:var(--orange)}
.process .timeline h3{margin-top:0}.process-visual figcaption{justify-content:flex-start}
.hero-photo{object-position:55% center}.asset>img{object-position:50% 45%}
.field-insights{margin-top:28px}.planning-copy .insight-hint{font-size:10px;letter-spacing:.3px;margin-bottom:12px}.insight-hint span{margin-left:12px;color:var(--orange)}
.insight-triggers{margin-top:0;gap:9px}.insight-trigger{position:relative;display:inline-flex;align-items:center;gap:14px;background:transparent;color:var(--ink);border:1px solid #abb0a5;padding:9px 12px;font-size:10px;line-height:1.5;text-align:left;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.insight-trigger>span{border:0;padding:0;font-size:16px;line-height:1;color:var(--orange);transition:transform .2s}
.insight-trigger:after{content:'';position:absolute;inset:-1px;border:1px solid var(--orange);border-radius:inherit;opacity:0;pointer-events:none}
.insight-trigger[aria-expanded="true"]{background:var(--navy);border-color:var(--navy);color:white}.insight-trigger[aria-expanded="true"]>span{transform:rotate(45deg)}
.insight-trigger:hover{border-color:var(--orange)}
.field-insights.is-discovered .insight-trigger:after{animation:insight-call 3s ease-out 2}.field-insights.is-discovered .insight-trigger:nth-child(2):after{animation-delay:.5s}.field-insights.is-discovered .insight-trigger:nth-child(3):after{animation-delay:1s}
.field-insights.has-interacted .insight-trigger:after{animation:none}
.insight-panels{min-height:140px;margin-top:17px;padding:17px 0 0;border-top:1px solid #c6cbbf}.planning-copy .insight-panel p{font-size:12px;line-height:1.9;margin:0}.insight-panel:not([hidden]){animation:insight-in .24s ease-out}.insight-panel[hidden]{display:none}
.planning-image{min-height:650px}.planning-image img{height:100%;min-height:650px}.planning{align-items:stretch}
.operation-film{display:grid;grid-template-columns:1fr minmax(250px,360px);gap:8vw;align-items:center;padding:40px 6vw;margin:0 0 70px;background:var(--navy);color:white;border-radius:12px}.film-copy h3{font-size:clamp(28px,3vw,43px);line-height:1.2;letter-spacing:-1px}.film-copy>p:not(.eyebrow){color:#b9bac6;max-width:370px}.film-copy .film-duration{font-size:11px;border-top:1px solid #ffffff30;margin-top:30px;padding-top:18px}.film-copy .eyebrow{color:var(--orange)}
.film-media{margin:0;max-width:100%;min-width:0}.film-media video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#090d16;border-radius:var(--button-radius)}.film-media figcaption{font-size:10px;color:#b9bac6;line-height:1.7;margin-top:12px}.film-media video:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
@keyframes insight-call{0%,65%,100%{opacity:0;transform:scale(1)}15%{opacity:.42}45%{opacity:0;transform:scale(1.025,1.09)}}
@keyframes insight-in{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.operation-film{gap:5vw;padding:35px}.planning-copy{padding-top:50px;padding-bottom:50px}}
@media(max-width:800px){.process .timeline li{display:block}.process .timeline p{margin-top:0}.process .timeline h3{margin:0 0 12px}.planning-image{min-height:0}.planning-image img{min-height:0;height:430px}.insight-panels{min-height:130px}.operation-film{grid-template-columns:1fr;gap:25px;padding:28px 22px;margin-bottom:45px}.film-media{width:min(100%,350px);justify-self:center}.film-copy h3{font-size:30px}.film-copy .film-duration{margin-top:20px}.film-copy .eyebrow{margin-bottom:20px}.hero-photo{object-position:60% center}.asset>img{object-position:60% center}}
@media(max-width:420px){.insight-trigger{font-size:10px;gap:10px;padding:9px 10px}.insight-panels{min-height:150px}.operation-film{padding:25px 18px}.film-copy h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.insight-trigger:after,.insight-panel:not([hidden]){animation:none!important}}
