/* Navigation */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{gap:24px}.site-header .primary-nav{margin-left:auto;gap:24px}.header-actions{display:flex;align-items:center;gap:12px}.site-header .primary-nav .mobile-contact{display:none}.menu-toggle{display:none;border:1px solid #d5d9dc;background:white;color:var(--navy);height:44px;padding:0 12px;align-items:center;gap:10px;cursor:pointer}.menu-icon{display:flex;flex-direction:column;gap:6px;width:20px}.menu-icon i{display:block;height:2px;width:20px;background:currentColor;transition:transform .2s}.menu-label{font-size:11px;font-weight:bold}.menu-toggle[aria-expanded=true] .menu-icon i:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-4px) rotate(-45deg)}
/* Sector carousel */
.hero-visual.carousel{background:none;isolation:isolate;min-height:640px;overflow:hidden;outline-offset:-4px}.hero-visual.carousel:after{z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(3,15,32,.92),rgba(3,15,32,.08) 57%)}.hero-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .85s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-slide:nth-child(2) img{object-position:center 40%}.carousel-caption{position:absolute;z-index:2;left:35px;right:30px;bottom:108px;border-left:2px solid var(--gold);padding-left:18px}.carousel-caption>span{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#e6bd72}.carousel-caption h2{font-size:29px;letter-spacing:-.8px;line-height:1.15;color:#fff;margin:12px 0 10px;max-width:390px}.carousel-caption small{font-size:10px;color:#c0cbd6}.carousel-controls{position:absolute;bottom:29px;left:35px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:15px;z-index:3}.carousel-dots{display:flex;gap:6px}.carousel-dot{width:28px;height:30px;position:relative;background:transparent;border:0;padding:0;cursor:pointer}.carousel-dot:before{content:'';position:absolute;inset:13px 0;background:#ffffff55;height:3px;transition:background .2s}.carousel-dot.is-active:before{background:#e2b45f}.carousel-arrows{display:flex;gap:6px}.carousel-arrows button{height:38px;width:38px;background:#071a3440;border:1px solid #ffffff65;color:#fff;font-size:17px;cursor:pointer;backdrop-filter:blur(5px)}.carousel-arrows button:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}
/* Work gallery */
.works-section{background:#eeefea;border-bottom:1px solid #daddd6}.works-section .intro{max-width:390px}.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 25px}.work-filters{display:flex;gap:6px;flex-wrap:wrap}.work-filter{font-size:11px;padding:11px 16px;border:1px solid #d0d5ce;background:none;color:var(--navy);cursor:pointer;transition:background .2s,color .2s}.work-filter.active,.work-filter:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.work-count{font-size:10px;color:var(--muted);white-space:nowrap}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.work-card{padding:0;text-align:left;border:0;background:white;cursor:pointer;color:var(--navy);min-width:0}.work-card[hidden],.work-card.work-extra{display:none}.work-grid.is-expanded .work-card.work-extra:not([hidden]){display:block}.work-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:#d5dad6}.work-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.3,1)}.work-card:first-child .work-photo img{object-position:center 38%}.work-card:hover .work-photo img{transform:scale(1.045)}.work-kind{position:absolute;top:16px;left:16px;color:white;background:#061a34cf;backdrop-filter:blur(3px);font-size:8px;letter-spacing:1.1px;padding:7px 9px}.work-open{position:absolute;right:17px;bottom:16px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffffb0;background:#061a348c;color:white;font-size:16px;transition:background .2s}.work-card:hover .work-open{background:var(--gold);color:var(--navy);border-color:var(--gold)}.work-card-copy{padding:21px 22px 24px}.work-card-copy>span{font-size:9px;color:#997226;text-transform:uppercase;letter-spacing:1px}.work-card-copy h3{font-size:20px;font-weight:500;letter-spacing:-.5px;margin:10px 0 0;line-height:1.25}.work-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:28px}.work-bottom p{font-size:11px;line-height:1.7;color:var(--muted)}.work-more{background:none;border-color:#a8b0a8;font-size:11px}.work-cta{margin-top:38px;padding-top:27px;border-top:1px solid #cbd1c8;display:flex;align-items:center;justify-content:space-between;gap:25px}.work-cta p{font-size:23px;letter-spacing:-.7px;line-height:1.6;margin:0}.work-cta p span{font-size:12px;color:var(--muted);letter-spacing:0}.work-cta>a{font-size:13px;font-weight:bold;display:flex;gap:30px;align-items:center;white-space:nowrap}.work-cta>a:hover{color:#a77a26}
/* Real work photo/video viewer */
.work-viewer{border:1px solid #374558;background:#06162b;color:white;padding:0;width:min(1160px,95vw);max-width:95vw;max-height:94dvh;overflow:auto}.work-viewer::backdrop{background:#020916ed;backdrop-filter:blur(5px)}.work-viewer-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 23px;border-bottom:1px solid #ffffff26;gap:20px}.work-viewer-bar>span{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#d4aa5a}.viewer-close{background:none;color:white;border:0;cursor:pointer;display:flex;gap:15px;align-items:center;font-size:12px;min-height:38px}.viewer-close span{font-size:25px}.work-viewer-media{height:min(66dvh,700px);display:flex;justify-content:center;align-items:center;background:#030b15}.work-viewer-media img,.work-viewer-media video{display:block;width:100%;height:100%;object-fit:contain}.work-viewer-media [hidden]{display:none}.work-viewer-footer{padding:20px 23px;display:flex;align-items:center;justify-content:space-between;gap:25px}.work-viewer-footer h3{font-size:22px;font-weight:500;margin:0 0 8px;letter-spacing:-.4px}.work-viewer-footer p{font-size:12px;color:#bac7d5;line-height:1.6;margin:0;max-width:650px}.work-viewer-navigation{display:flex;align-items:center;gap:15px;white-space:nowrap}.work-viewer-navigation button{height:39px;width:39px;background:none;color:white;border:1px solid #ffffff60;cursor:pointer;font-size:17px}.work-viewer-navigation span{font-size:11px;color:#c0ccd8}.work-viewer-navigation button:hover{background:#c99635;color:#061a34}.viewer-open{overflow:hidden}
/* Restrained entrance animation; content remains visible without JS. */
@keyframes hero-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.hero-copy>.eyebrow{animation:hero-enter .65s both}.hero-copy h1{animation:hero-enter .8s .12s both}.hero-copy>p{animation:hero-enter .8s .24s both}.hero-copy>.actions{animation:hero-enter .8s .36s both}.reveal-ready{opacity:0;transform:translateY(23px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.65,.3,1)}.reveal-ready.is-revealed{opacity:1;transform:none}.work-card:focus-visible,.menu-toggle:focus-visible,.carousel button:focus-visible,.work-viewer button:focus-visible,.work-filter:focus-visible{outline:3px solid #c99635;outline-offset:3px}.work-card:focus-visible{outline-offset:5px}
@media(max-width:1100px){.site-header{gap:18px}.site-header .primary-nav{gap:16px;font-size:12px}.header-quote{font-size:12px;padding:15px 18px}.carousel-caption h2{font-size:25px}.carousel-dots{gap:4px}.carousel-dot{width:23px}.carousel-arrows button{width:34px}.work-toolbar{align-items:start;flex-direction:column;gap:15px}}
@media(max-width:1000px){html{scroll-padding-top:90px}.site-header{height:82px}.brand img{height:65px}.site-header .primary-nav{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:10px 6% 20px;background:#fff;border-bottom:2px solid #c99635;box-shadow:0 16px 22px #00172c20;max-height:calc(100dvh - 82px);overflow:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .2s,transform .2s,visibility .2s}.site-header .primary-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.site-header .primary-nav a,.site-header .primary-nav .mobile-contact{display:block!important;padding:15px 0;font-size:14px;border-bottom:1px solid #e5e8e9;font-weight:500}.header-actions{margin-left:auto}.menu-toggle{display:flex}.menu-open{overflow:hidden}.work-grid{gap:16px}.work-card-copy{padding:18px}.work-card-copy h3{font-size:18px}}
@media(max-width:750px){.hero{grid-template-columns:1fr}.hero-copy{padding-top:52px}.hero-copy h1{font-size:56px;max-width:540px}.hero-visual.carousel{min-height:460px;height:460px;border-left:0;border-top:2px solid var(--gold)}.hero-slide img{object-position:center 53%}.hero-slide:nth-child(2) img{object-position:center 41%}.carousel-caption{bottom:102px;left:6%;right:6%}.carousel-controls{left:6%;right:6%}.carousel-caption h2{font-size:30px;max-width:350px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-count{font-size:10px}.work-cta{align-items:start;flex-direction:column;gap:20px}.work-viewer-media{height:61dvh}.work-viewer-footer{align-items:start;flex-direction:column;gap:18px}.work-viewer-navigation{align-self:end}.work-viewer-footer h3{font-size:19px}}
@media(max-width:650px){.site-header{height:76px;padding:0 5%;gap:10px}.site-header .brand img{width:77px;height:60px}.site-header .primary-nav{max-height:calc(100dvh - 76px);padding:8px 6% 20px}.header-actions{gap:8px}.header-quote{padding:12px 13px;min-height:44px;font-size:11px;gap:14px}.menu-toggle{padding:0 10px;height:44px}.menu-label{font-size:10px}.hero-copy h1{font-size:48px}.hero-visual.carousel{min-height:400px;height:400px}.carousel-caption h2{font-size:27px;max-width:290px}.carousel-caption{bottom:98px}.carousel-controls{bottom:24px}.carousel-dot{width:25px}.carousel-arrows button{width:35px;height:35px}.work-filters{gap:6px}.work-filter{padding:10px 12px;font-size:10px}.work-grid{gap:12px}.work-photo{aspect-ratio:4/3}.work-card-copy{padding:14px 12px 17px}.work-card-copy h3{font-size:16px;line-height:1.3;margin-top:8px;letter-spacing:-.3px}.work-card-copy>span{font-size:8px;line-height:1.5;letter-spacing:.5px}.work-kind{top:10px;left:10px;font-size:7px;padding:5px 6px;letter-spacing:.6px}.work-open{width:30px;height:30px;bottom:10px;right:10px;font-size:13px}.work-bottom{align-items:start;flex-direction:column;gap:12px}.work-bottom .button{min-height:44px}.work-cta p{font-size:21px}.work-viewer{max-height:94dvh}.work-viewer-bar{padding:10px 15px}.work-viewer-media{height:57dvh}.work-viewer-footer{padding:15px}.work-viewer-bar>span{font-size:8px}.work-viewer-footer p{font-size:11px}.work-viewer-footer h3{font-size:18px}.work-viewer-navigation button{width:42px;height:42px}}
@media(max-width:360px){.menu-label{display:none}.menu-toggle{width:43px;justify-content:center}.hero-copy h1{font-size:43px}.carousel-dot{width:21px}.carousel-arrows button{width:32px}.work-card-copy h3{font-size:14px}.work-card-copy>span{font-size:7px}.work-photo{aspect-ratio:1/1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy>*,.hero-copy h1{animation:none!important}.reveal-ready{opacity:1;transform:none;transition:none}.hero-slide,.work-photo img,.menu-icon i,.primary-nav{transition:none!important}.work-card:hover .work-photo img{transform:none}}
.hero-visual.carousel:after{display:none}.hero-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,15,32,.94),rgba(3,15,32,.08) 60%);z-index:1;pointer-events:none}
[hidden]{display:none!important}

/* Company identity at the opening and in browser surfaces. */
.hero-copy{isolation:isolate;overflow:hidden}.hero-copy>.hero-watermark{position:absolute;width:84%;max-width:520px;height:auto;right:1%;top:52%;transform:translateY(-50%);opacity:.095;z-index:-1;pointer-events:none;user-select:none}@media(max-width:750px){.hero-copy>.hero-watermark{width:68%;max-width:440px;right:4%;top:51%;opacity:.08}}@media(max-width:650px){.hero-copy>.hero-watermark{width:92%;max-width:390px;right:-7%;top:51%;opacity:.085}}
