/* V3 brand calibration. Source: assets/brand-manifest.json.
   The original approved V3 composition is unchanged; no external fonts/assets. */
:root,:root[data-theme="midnight"],:root[data-theme="navy"]{
 --brand-gold:#D5AD34;--brand-navy:#0E2947;--paper:#F7F5EF;
 --brand:#0E2947;--dark:#081A2D;--ink:#0E2947;--muted:#657687;
 --gold:#80621A;--gold-light:#E7CB78;--soft:#EAF0F3;--wash:#EAF0F3;--line:#CCD6DD;
}
.preview-bar{background:#10263B;color:#DAE1E6}
.header{background:rgba(8,26,45,.96)}
.head-inner{height:82px}
.brand{line-height:1}
.brand-logo{display:block;width:158px;height:auto;max-width:none;object-fit:contain}
.footer .brand-logo{width:180px}
.hero{background:#081A2D}
.hero:before{background:radial-gradient(ellipse 70% 58% at 50% 95%,#1C436578,transparent 75%)}
.hero .eyebrow{color:#D5AD34}
.hero h1 em{color:#D5AD34;background:linear-gradient(112deg,#D5AD34 8%,#EAD48B 49%,#D5AD34 91%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero .btn,.nav .nav-contact,.cta .btn{background:#D5AD34;color:#0E2947}
.hero .btn:hover,.nav .nav-contact:hover,.cta .btn:hover{background:#E7CB78;color:#0E2947}
.nav a[aria-current="page"]:after{background:#D5AD34}
.hero .text-link{color:#F1E8CD}
.route-strip{background:#0E2947}
.route-caption{color:#BBC9D6}
.route-items span{font-size:13px;color:#EFF2F3}
.art-caption span:last-child{color:#CCB465}
.portal-front{background:linear-gradient(105deg,#16344F,#081A2D 52%,#132F4B) padding-box,linear-gradient(95deg,#0B2138,#45596B 8%,#142D43 15%,#D5AD3480 33%,#132A3E 52%,#988044 73%,#132D46 95%) border-box}
.portal-front:before{border-color:#D5AD3470}
.portal-inner{border-color:#D5AD34B8;box-shadow:inset 0 0 30px #0E294740,0 0 7px #D5AD3438}
.portal-mid{background:linear-gradient(120deg,#153852,#0A2239) padding-box,linear-gradient(90deg,#0B2138,#78818450 10%,#29465E 30%,#102B43 60%,#58626955 89%,#173650) border-box}
.portal-back{background:linear-gradient(95deg,#112E47,#173A54) padding-box,linear-gradient(115deg,#0B2238,#405D74 22%,#102B44 58%,#385873 84%,#0B2138) border-box}
.stair{border-top-color:#D5AD3454}
.grid.three.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-card{padding:32px 30px 26px;min-height:326px}
.service-card h3{font-size:25px;line-height:1.5;letter-spacing:-.8px}
.service-card p{font-size:14px;line-height:1.95}
.service-card:first-child{background:#0E2947}
.service-card:first-child .icon{color:#D5AD34}
.service-card:first-child .arrow{background:#D5AD34;color:#0E2947}
.service-top,.service-top .icon{color:#80621A}
.service-card .card-footer{font-size:9px;letter-spacing:.65px}
.soft.brand-section{background:#0A2138}
.story-poster{background:linear-gradient(135deg,#183D5D,#0E2947 42%,#081A2D)}
.story-poster .verse{color:#E7CB78}
.story-poster>.eyebrow,.brand-section .story-copy p.eyebrow{color:#D5AD34}
.story-poster .big-q{background:linear-gradient(125deg,#C9D6DC36,#7E9BB178 40%,#163754 72%);background-clip:text;-webkit-background-clip:text}
.brand-section .text-link{color:#E7CB78}
.case-cover.blue{background:linear-gradient(125deg,#234C6C,#0E2947);color:#E7CB78}
.case-cover.warm{background:linear-gradient(140deg,#EBDFAE,#CFB35C);color:#0E2947}
.case-cover.olive{background:linear-gradient(130deg,#D7E2EA,#9AAFC0);color:#0E2947}
.case-tag,.article-idx{color:#80621A}
.path-section{background:#EAF0F3}
.path-section .eyebrow{color:#80621A}
.process-item:before{background:#D5AD34}
.process-item .step{color:#80621A}
.filter[aria-pressed="true"]{background:#0E2947}
.cta{background:#081A2D}
.cta .eyebrow{color:#D5AD34}
.footer{background:#F7F5EF}
.subhero{background:#0E2947}
.subhero .eyebrow{color:#D5AD34}
.subhero .giant-index{color:#D5AD34}
.callout{background:#F1EBDD;border-left-color:#D5AD34;color:#695528}
.side-card{background:#EAF0F3}
.contact-panel{background:#0E2947}
.contact-panel>.eyebrow{color:#D5AD34}
.contact-icon{color:#D5AD34}
@media(max-width:1100px){
 .brand-logo{width:146px}.head-inner{gap:24px}
 .grid.three.service-grid{gap:18px}.service-card{padding:28px 24px;min-height:320px}.service-card h3{font-size:23px}
}
@media(max-width:780px){
 .head-inner{height:auto;min-height:76px;padding-top:12px;padding-bottom:12px}
 .brand-logo{width:140px}.footer .brand-logo{width:162px}
 .nav .nav-contact{background:transparent;color:#E7CB78}
 .nav .nav-contact:hover{background:transparent;color:#E7CB78}
 .grid.three.service-grid{grid-template-columns:1fr;gap:18px}
 .service-card{min-height:267px;padding:28px}.service-card h3{font-size:27px}
 .route-items{justify-content:space-around;gap:10px;flex-wrap:wrap}.route-items span{font-size:12px}
}
@media(max-width:480px){
 .brand-logo{width:134px}.head-inner{min-height:74px}
 .service-card{padding:25px 27px;min-height:260px}.service-card h3{font-size:25px}
 .route-items{column-gap:14px;row-gap:9px}.route-items span{font-size:11px}
}
