:root{
  --navy:#0A1246;
  --navy-deep:#050B2F;
  --gold:#FFA500;
  --gold-soft:#FFC15A;
  --white:#FFFFFF;
  --warm:#F5F3EE;
  --soft:#FAF9F6;
  --stone:#E8E4DC;
  --ink:#17191F;
  --muted:#666B75;
  --line:rgba(10,18,70,.13);
  --shell:1180px;
  --shadow:0 28px 70px rgba(5,11,47,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,video{display:block;width:100%}
button,input,select,textarea{font:inherit}
h1,h2,h3,p{margin-top:0}
.shell{width:min(var(--shell),calc(100% - 48px));margin-inline:auto}
.section{padding:112px 0}
.section-tight{padding:84px 0}
.soft-section{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-kicker{margin:0 0 16px;color:var(--gold);font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.section-kicker.light{color:var(--gold-soft)}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.04em}
h1{font-size:clamp(54px,6vw,92px);line-height:.95}
h2{font-size:clamp(40px,4.2vw,64px);line-height:1.04;color:var(--navy)}
h3{color:var(--navy)}

/* Header — compact gateway style inspired by the ZH Digital build discipline */
.site-header{position:sticky;top:0;z-index:50;background:rgba(5,11,47,.97);border-bottom:1px solid rgba(255,255,255,.11);backdrop-filter:blur(12px)}
.nav-wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{width:264px;flex:0 0 auto}
.site-nav{display:flex;align-items:center;gap:22px;color:#fff;font-size:13px;font-weight:700}
.nav-link{position:relative;padding:34px 0 32px;color:rgba(255,255,255,.78);transition:color .2s ease}
.nav-link:hover,.nav-link.is-active{color:#fff}
.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.nav-link:hover::after,.nav-link.is-active::after{transform:scaleX(1)}
.menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;padding:10px 14px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:0;font-size:13px;font-weight:800;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.btn:hover{transform:translateY(-1px)}
.btn-small{min-height:42px;padding:0 17px}
.btn-gold{background:var(--gold);color:var(--navy-deep)}
.btn-gold:hover{background:#ffb11f}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:#101b61}
.btn-ghost{border:1px solid rgba(255,255,255,.36);color:#fff;background:rgba(255,255,255,.02)}
.nav-cta{margin-left:5px}

/* Homepage hero */
.home-hero{position:relative;min-height:690px;overflow:hidden;background:var(--navy-deep);color:#fff}
.home-hero-bg{position:absolute;inset:0}
.home-hero-bg video{height:100%;object-fit:cover;object-position:center}
.home-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,11,47,.94) 0%,rgba(5,11,47,.82) 42%,rgba(5,11,47,.30) 76%,rgba(5,11,47,.18) 100%),linear-gradient(180deg,rgba(5,11,47,.08),rgba(5,11,47,.58))}
.home-hero-inner{position:relative;z-index:2;min-height:690px;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}
.home-hero-copy{max-width:760px}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 28px;color:rgba(255,255,255,.72);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.eyebrow span{width:34px;height:2px;background:var(--gold)}
.home-hero h1{margin-bottom:26px}
.home-hero h1 em{font-style:normal;color:var(--gold)}
.home-hero-copy>p:not(.eyebrow){max-width:650px;color:rgba(255,255,255,.76);font-size:18px;line-height:1.7}
.home-hero-actions{display:flex;gap:12px;margin-top:34px}
.home-hero-proof{align-self:end;margin-bottom:58px;padding:20px 22px;border-left:2px solid var(--gold);background:rgba(5,11,47,.42);backdrop-filter:blur(8px);display:grid;min-width:205px}
.home-hero-proof strong{font-family:Georgia,"Times New Roman",serif;color:var(--gold);font-size:44px;font-weight:400;line-height:.9}
.home-hero-proof span{margin-top:8px;max-width:150px;color:rgba(255,255,255,.74);font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.11em;font-weight:800}

/* Homepage gateway */
.gateway{background:var(--soft);border-bottom:1px solid var(--line)}
.gateway-heading{display:grid;grid-template-columns:.75fr 1fr 1fr;gap:50px;align-items:end;margin-bottom:42px}
.gateway-heading h2{margin:0;font-size:clamp(38px,3.4vw,54px)}
.gateway-heading>p:last-child{margin:0;color:var(--muted);line-height:1.72}
.gateway-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.gateway-grid a{min-height:285px;padding:28px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:background .2s ease,transform .2s ease}
.gateway-grid a:hover{background:#fffaf2;transform:translateY(-2px)}
.gateway-grid span{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.14em}
.gateway-grid h3{margin:36px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:400}
.gateway-grid p{color:var(--muted);font-size:14px;line-height:1.65}
.gateway-grid b{margin-top:auto;color:var(--navy);font-size:12px}

/* Shared section headings */
.section-head{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;margin-bottom:46px}
.section-head>p,.split-head>div:last-child>p{color:var(--muted);line-height:1.72}
.text-link{display:inline-flex;align-items:center;gap:9px;width:max-content;max-width:100%;padding-bottom:5px;border-bottom:1px solid rgba(10,18,70,.3);color:var(--navy);font-size:13px;font-weight:800}
.text-link span{color:var(--gold)}

/* Projects — centrepiece */
.projects-centrepiece{background:var(--warm)}
.project-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.project-card-featured{display:grid;grid-template-columns:1.25fr .75fr;min-height:560px}
.project-card-image{position:relative;min-height:390px;overflow:hidden;background:#ddd}
.project-card-featured .project-card-image{min-height:560px}
.project-card-image img{height:100%;object-fit:cover;transition:transform .5s ease}
.project-card:hover .project-card-image img{transform:scale(1.025)}
.project-card-status{position:absolute;left:20px;top:20px;padding:9px 12px;background:var(--navy);color:#fff;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.project-card-body{padding:42px}
.project-card-featured .project-card-body{padding:60px 50px;display:flex;flex-direction:column;justify-content:center}
.project-card-meta{display:flex;flex-wrap:wrap;gap:9px 20px;margin-bottom:22px;color:var(--gold);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.project-card h3{margin:0 0 18px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.05}
.project-card-body>p{color:var(--muted);line-height:1.72}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0 28px}
.project-tags span{padding:7px 9px;border:1px solid var(--line);color:var(--navy);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.project-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.project-index-grid .project-card{display:block}
.project-index-grid .project-card-body{padding:32px}
.project-index-grid .project-card h3{font-size:31px}

/* Home about/process */
.home-about-grid{display:grid;grid-template-columns:1fr .8fr;gap:110px;align-items:start}
.home-about-grid>div:last-child{padding-top:34px}
.home-about-grid>div:last-child p{color:var(--muted);font-size:17px;line-height:1.8}
.process-preview{background:var(--navy);color:#fff}
.process-preview h2{color:#fff}
.process-preview-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}
.process-preview-list{border-top:1px solid rgba(255,255,255,.16)}
.process-preview-list a{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.process-preview-list>a>span{color:var(--gold);font-size:11px;font-weight:800;padding-top:4px}
.process-preview-list h3{margin:0 0 7px;color:#fff;font-size:17px}
.process-preview-list p{margin:0;color:rgba(255,255,255,.62);font-size:14px;line-height:1.6}
.home-cta{padding:90px 0;background:linear-gradient(110deg,#fff 0%,#f6f3eb 100%);border-top:1px solid var(--line)}
.home-cta-grid{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:center}
.home-cta-grid>div:last-child p{color:var(--muted);line-height:1.7;margin-bottom:24px}

/* Inner page hero */
.inner-hero{background:linear-gradient(125deg,var(--navy-deep),#111c61);color:#fff;padding:88px 0 92px;position:relative;overflow:hidden}
.inner-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:100px 100px;pointer-events:none}
.inner-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .65fr;gap:100px;align-items:end}
.inner-hero h1{margin:0;max-width:800px;font-size:clamp(52px,5.5vw,82px)}
.inner-hero-grid>div:last-child>p{margin:0;color:rgba(255,255,255,.7);font-size:17px;line-height:1.75}
.inner-hero .btn{margin-top:24px}

/* About page */
.about-page-grid{display:grid;grid-template-columns:.55fr 1fr;gap:100px;align-items:start}
.large-stat{background:var(--navy);color:#fff;padding:50px;min-height:330px;display:flex;flex-direction:column;justify-content:center}
.large-stat strong{font-family:Georgia,"Times New Roman",serif;color:var(--gold);font-size:100px;font-weight:400;line-height:.8}
.large-stat span{margin-top:24px;max-width:190px;font-size:12px;font-weight:800;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.72)}
.prose-block h2{margin-bottom:28px}
.prose-block p{color:var(--muted);font-size:17px;line-height:1.85}
.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.principle-grid article{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:260px}
.principle-grid span,.service-index{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.14em}
.principle-grid h3{margin:50px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:26px;font-weight:400}
.principle-grid p{color:var(--muted);line-height:1.7;font-size:14px}
.split-cta-grid{display:grid;grid-template-columns:1fr .7fr;gap:100px;align-items:center}
.split-cta-grid>div:last-child p{color:var(--muted);line-height:1.7}

/* Services */
.service-page{border-bottom:1px solid var(--line)}
.service-row{display:grid;grid-template-columns:60px 1fr .9fr;gap:50px;align-items:start}
.service-row>div:last-child{padding-top:34px}
.service-row>div:last-child>p{color:var(--muted);line-height:1.75}
.service-row ul{list-style:none;padding:0;margin:24px 0 30px;display:grid;gap:10px}
.service-row li{position:relative;padding-left:18px;color:#444952}
.service-row li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;background:var(--gold)}
.service-index{padding-top:8px}

/* Projects index & detail */
.project-index-intro{border-bottom:1px solid var(--line);background:#fff}
.project-index-meta{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.project-index-meta>div:first-child{display:flex;align-items:baseline;gap:14px}
.project-index-meta strong{color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:26px;font-weight:400}
.project-index-meta>div:first-child span{color:var(--muted);font-size:12px}
.filter-pills{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.filter-pills span{padding:8px 10px;border:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--navy)}
.filter-pills span:first-child{background:var(--navy);color:#fff;border-color:var(--navy)}
.portfolio-system{background:var(--navy);color:#fff;padding:90px 0}
.portfolio-system-grid{display:grid;grid-template-columns:.8fr 1fr;gap:100px}
.portfolio-system h2{color:#fff}
.portfolio-system p{color:rgba(255,255,255,.66);line-height:1.8}
.project-detail-hero{background:var(--navy-deep);color:#fff;padding:52px 0 80px}
.back-link{display:inline-block;margin-bottom:54px;color:rgba(255,255,255,.62);font-size:12px}
.project-detail-head{display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end}
.project-detail-head h1{margin:0;max-width:850px;font-size:clamp(52px,6vw,86px)}
.project-detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}
.project-detail-tags span{padding:7px 9px;border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.74);font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.project-detail-status{display:grid;gap:8px;text-align:right}
.project-detail-status span{color:var(--gold);text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.12em}
.project-detail-status strong{font-size:14px}
.project-detail-image{background:var(--navy-deep);padding-bottom:28px}
.project-detail-image img{height:min(68vh,760px);object-fit:cover}
.project-overview-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}
.project-overview-grid>div:last-child>p{color:var(--muted);font-size:17px;line-height:1.85}
.project-detail-rows{margin-top:36px;border-top:1px solid var(--line)}
.project-detail-rows>div{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:17px 0;border-bottom:1px solid var(--line)}
.project-detail-rows span{color:var(--muted);font-size:12px}
.project-detail-rows strong{color:var(--navy);font-size:13px}
.project-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.project-gallery-item{margin:0;position:relative;height:320px;overflow:hidden;background:#ddd}
.project-gallery-item-wide{grid-column:span 2;height:420px}
.project-gallery-item img{height:100%;object-fit:cover}
.project-gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 18px 17px;background:linear-gradient(transparent,rgba(5,11,47,.88));color:#fff;font-size:12px;font-weight:700}
.project-gallery-item figcaption span{color:var(--gold-soft);margin-right:10px}

/* Process */
.process-page-list{display:grid}
.process-page-list article{display:grid;grid-template-columns:60px 1fr .8fr;gap:48px;padding:52px 0;border-bottom:1px solid var(--line);align-items:start}
.process-page-list article>span{color:var(--gold);font-size:11px;font-weight:800;padding-top:5px}
.process-page-list h2{font-size:clamp(34px,3.4vw,52px)}
.process-page-list article>p{color:var(--muted);line-height:1.8;padding-top:28px}
.process-doc-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}
.doc-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.doc-flow span{padding:14px 16px;background:#fff;border:1px solid var(--line);color:var(--navy);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.doc-flow i{font-style:normal;color:var(--gold);font-weight:800}

/* Testimonials */
.testimonial-empty-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:stretch}
.testimonial-empty-card{background:var(--navy);color:#fff;padding:54px;min-height:430px;display:flex;flex-direction:column;justify-content:center}
.testimonial-empty-card .quote-mark{color:var(--gold);font-family:Georgia,"Times New Roman",serif;font-size:90px;line-height:.6;margin-bottom:22px}
.testimonial-empty-card h2{color:#fff;margin-bottom:20px}
.testimonial-empty-card p{color:rgba(255,255,255,.65);line-height:1.75}
.testimonial-source-list{border-top:1px solid var(--line)}
.testimonial-source-list article{padding:34px 0;border-bottom:1px solid var(--line)}
.testimonial-source-list article>span{color:var(--gold);font-size:10px;font-weight:800}
.testimonial-source-list h3{margin:14px 0 10px}
.testimonial-source-list p{margin:0;color:var(--muted);line-height:1.7}

/* Contact */
.contact-page-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.contact-card{min-height:285px;padding:36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-card>a,.contact-card>strong{display:block;margin:50px 0 14px;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:400;line-height:1.25;overflow-wrap:anywhere}
.contact-card>span{color:var(--muted);font-size:13px;line-height:1.6}
.contact-choice{display:flex;align-items:center;justify-content:space-between;gap:60px}
.contact-choice h2{margin-bottom:20px}
.contact-choice p{color:var(--muted);line-height:1.7;max-width:680px}

/* Request project */
.request-page-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:start}
.request-side{position:sticky;top:120px}
.request-side h2{margin-bottom:28px}
.request-side ul{list-style:none;padding:0;margin:0 0 28px;border-top:1px solid var(--line)}
.request-side li{padding:15px 0;border-bottom:1px solid var(--line);color:var(--navy);font-weight:700}
.request-side>p:last-child{color:var(--muted);line-height:1.7}
.request-form{background:var(--warm);border:1px solid var(--stone);padding:42px;display:grid;gap:30px;box-shadow:0 24px 60px rgba(5,11,47,.06)}
.form-section{display:grid;gap:18px;padding-bottom:28px;border-bottom:1px solid #d6d1c7}
.form-section>span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.14em}
.form-section h3{margin:0 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:400}
.request-form label{display:grid;gap:8px;color:var(--navy);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.request-form input,.request-form select,.request-form textarea{width:100%;padding:14px 15px;background:#fff;border:1px solid #d4cfc5;border-radius:0;color:var(--ink);text-transform:none;letter-spacing:0;outline:none}
.request-form input:focus,.request-form select:focus,.request-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 2px rgba(10,18,70,.08)}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.file-field{padding:17px;border:1px dashed #c7c0b5;background:rgba(255,255,255,.45)}
.file-field input{padding:0;border:0;background:transparent}
.file-field small,.form-note{color:#777;line-height:1.5;text-transform:none;letter-spacing:0;font-weight:400}

/* Footer */
.site-footer{background:var(--navy-deep);color:#fff;padding:68px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;gap:60px}
.footer-brand img{width:270px}
.footer-brand p{max-width:340px;margin-top:20px;color:rgba(255,255,255,.56);line-height:1.7}
.footer-label{margin-bottom:16px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.footer-grid>div:not(.footer-brand) a,.footer-grid>div:not(.footer-brand)>p:not(.footer-label){display:block;color:rgba(255,255,255,.68);font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:54px;padding-top:22px;border-top:1px solid rgba(255,255,255,.11);color:rgba(255,255,255,.42);font-size:11px}

/* Gentle ZH-style reveal rhythm */
.reveal-item{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.reveal-item.is-visible{opacity:1;transform:none}

@media(max-width:1080px){
  .site-nav{gap:16px;font-size:12px}.brand{width:235px}
  .home-hero-inner{grid-template-columns:1fr}.home-hero-proof{display:none}
  .gateway-heading{grid-template-columns:1fr 1fr}.gateway-heading>.section-kicker{grid-column:1/-1}
  .gateway-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:920px){
  .menu-toggle{display:block}.site-nav{display:none;position:absolute;top:88px;left:24px;right:24px;padding:20px;background:var(--navy-deep);border:1px solid rgba(255,255,255,.12);flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.nav-link{padding:14px 6px;border-bottom:1px solid rgba(255,255,255,.1)}.nav-link::after{display:none}.nav-cta{margin:16px 0 0}
  .section-head,.home-about-grid,.process-preview-grid,.home-cta-grid,.inner-hero-grid,.about-page-grid,.split-cta-grid,.portfolio-system-grid,.project-overview-grid,.process-doc-grid,.testimonial-empty-grid,.request-page-grid{grid-template-columns:1fr;gap:42px}
  .project-card-featured{grid-template-columns:1fr}.project-card-featured .project-card-image{min-height:430px}.project-card-featured .project-card-body{padding:40px}
  .principle-grid,.contact-page-grid{grid-template-columns:1fr 1fr}
  .service-row,.process-page-list article{grid-template-columns:50px 1fr}.service-row>div:last-child,.process-page-list article>p{grid-column:2;padding-top:0}
  .project-index-grid{grid-template-columns:1fr}.project-detail-head{grid-template-columns:1fr}.project-detail-status{text-align:left}.project-gallery-grid{grid-template-columns:1fr 1fr}.project-gallery-item-wide{grid-column:1/-1}
  .request-side{position:static}.footer-grid{grid-template-columns:1fr 1fr}.contact-choice{align-items:flex-start;flex-direction:column}
}
@media(max-width:650px){
  .shell{width:min(var(--shell),calc(100% - 32px))}.nav-wrap{min-height:78px}.brand{width:215px}.site-nav{top:78px;left:16px;right:16px}
  .section{padding:78px 0}.section-tight{padding:68px 0}
  .home-hero,.home-hero-inner{min-height:640px}.home-hero-overlay{background:linear-gradient(90deg,rgba(5,11,47,.94),rgba(5,11,47,.72)),linear-gradient(180deg,transparent,rgba(5,11,47,.5))}.home-hero h1{font-size:56px}.home-hero-actions{flex-direction:column;align-items:stretch}.home-hero-copy>p:not(.eyebrow){font-size:16px}
  .gateway-heading{grid-template-columns:1fr;gap:18px}.gateway-heading>.section-kicker{grid-column:auto}.gateway-grid{grid-template-columns:1fr}.gateway-grid a{min-height:225px}
  .project-card-featured .project-card-image{min-height:330px}.project-card-body,.project-card-featured .project-card-body{padding:28px}.project-card h3{font-size:30px}
  .principle-grid,.contact-page-grid{grid-template-columns:1fr}.large-stat{min-height:260px}.large-stat strong{font-size:82px}
  .inner-hero{padding:68px 0}.inner-hero h1{font-size:52px}
  .service-row,.process-page-list article{grid-template-columns:1fr;gap:14px}.service-row>div:last-child,.process-page-list article>p{grid-column:auto}.service-index{padding-top:0}
  .project-index-meta{align-items:flex-start;flex-direction:column;padding:26px 0}.filter-pills{justify-content:flex-start}.project-detail-image img{height:420px}.project-gallery-grid{grid-template-columns:1fr}.project-gallery-item,.project-gallery-item-wide{grid-column:auto;height:300px}
  .field-pair{grid-template-columns:1fr}.request-form{padding:26px 20px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-item{opacity:1;transform:none}}

/* V0.6 content-depth refinements */
.home-proof-strip{background:#fff;border-bottom:1px solid var(--line)}
.home-proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.home-proof-grid>div{padding:24px 28px;border-right:1px solid var(--line);display:grid;gap:4px}
.home-proof-grid>div:first-child{padding-left:0}.home-proof-grid>div:last-child{border-right:0}
.home-proof-grid strong{color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400}
.home-proof-grid span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.home-service-grid{margin-top:42px}
.process-preview-intro{margin-top:24px;max-width:520px;color:rgba(255,255,255,.62);line-height:1.72}
.home-contact-preview{background:#fff}
.home-contact-preview-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}
.home-contact-methods{border-top:1px solid var(--line)}
.home-contact-methods a{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}
.home-contact-methods span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.home-contact-methods strong{color:var(--navy);font-size:16px;overflow-wrap:anywhere}

.about-media-band{background:var(--navy);padding:42px 0;color:#fff}
.about-media-grid{display:grid;grid-template-columns:1.25fr .75fr;min-height:520px;align-items:stretch}
.about-media-large{margin:0;overflow:hidden;min-height:520px}
.about-media-large img{height:100%;object-fit:cover}
.about-media-copy{padding:60px 54px;display:flex;flex-direction:column;justify-content:center}
.about-media-copy h2{color:#fff;margin-bottom:24px}
.about-media-copy p:not(.section-kicker){color:rgba(255,255,255,.68);line-height:1.78;margin-bottom:28px}
.principle-grid{grid-template-columns:repeat(4,1fr)}
.button-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px}
.light-link{color:#fff;border-color:rgba(255,255,255,.35)}

.service-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.service-index-card,.service-mini-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.service-index-card{min-height:360px;padding:38px}
.service-index-card:hover,.service-mini-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(5,11,47,.08);background:#fffaf2}
.service-index-card>span,.service-mini-card>span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.14em}
.service-index-card h3{margin:55px 0 15px;font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:400;line-height:1.06}
.service-index-card p,.service-mini-card p{color:var(--muted);line-height:1.68}
.service-index-card b,.service-mini-card b{margin-top:auto;padding-top:25px;color:var(--navy);font-size:12px}
.service-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.service-mini-card{min-height:260px;padding:26px}
.service-mini-card h3{margin:38px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:400;line-height:1.08}
.service-mini-card p{font-size:13px}
.service-project-proof{background:var(--navy);padding:42px 0}
.service-project-proof-grid{display:grid;grid-template-columns:1.2fr .8fr;min-height:500px}
.service-project-proof-image{overflow:hidden}.service-project-proof-image img{height:100%;object-fit:cover}
.service-project-proof-copy{padding:58px 52px;display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(135deg,#101b61,var(--navy-deep))}
.service-project-proof-copy h2{color:#fff;margin-bottom:22px}.service-project-proof-copy p:not(.section-kicker){color:rgba(255,255,255,.68);line-height:1.76;margin-bottom:26px}

.service-detail-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .7fr;gap:100px;align-items:end}
.service-detail-hero-grid>div:last-child>p{color:rgba(255,255,255,.7);font-size:17px;line-height:1.75}
.service-detail-image-band{background:var(--navy-deep);padding:0 0 50px}
.service-detail-image-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:stretch}
.service-detail-image{height:520px;overflow:hidden}.service-detail-image img{height:100%;object-fit:cover}
.service-detail-note{background:#fff;padding:48px;display:flex;flex-direction:column;justify-content:center}
.service-detail-note>p:last-child{margin:0;color:var(--muted);font-size:17px;line-height:1.8}
.service-detail-cap-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}
.capability-list{border-top:1px solid var(--line)}
.capability-list>div{display:grid;grid-template-columns:60px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.capability-list span{color:var(--gold);font-size:10px;font-weight:800}.capability-list strong{color:var(--navy);font-size:17px}
.service-detail-next-grid{display:grid;grid-template-columns:.8fr 1fr;gap:100px}.service-detail-next-grid>div:last-child>p{color:var(--muted);line-height:1.8;font-size:17px}
.service-other{padding:95px 0;background:var(--navy);color:#fff}.service-other h2{color:#fff;max-width:650px}.service-other-head{margin-bottom:36px}.service-other .service-mini-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.14)}.service-other .service-mini-card:hover{background:rgba(255,255,255,.08)}.service-other .service-mini-card h3,.service-other .service-mini-card b{color:#fff}.service-other .service-mini-card p{color:rgba(255,255,255,.62)}

.project-index-count{display:flex;align-items:baseline;gap:12px}.project-index-count strong{font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-size:34px;font-weight:400}.project-index-count span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.filter-pills button{appearance:none;border:1px solid var(--line);background:#fff;color:var(--navy);padding:9px 13px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.filter-pills button:hover,.filter-pills button.is-active{background:var(--navy);color:#fff;border-color:var(--navy)}
.project-filter-empty{padding:50px;border:1px solid var(--line);background:var(--soft);color:var(--muted);text-align:center}
.portfolio-story{background:var(--navy);padding:92px 0;color:#fff}.portfolio-story-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.portfolio-story h2{color:#fff}.portfolio-story-grid>div:last-child>p{color:rgba(255,255,255,.66);line-height:1.78}.portfolio-story-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:28px}.portfolio-story-flow span{padding:12px 14px;border:1px solid rgba(255,255,255,.18);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.portfolio-story-flow i{font-style:normal;color:var(--gold)}
.project-back-link{display:inline-flex;margin-bottom:32px;color:rgba(255,255,255,.62);font-size:12px;font-weight:800}.project-back-link:hover{color:#fff}
.project-scope-band{background:var(--navy);padding:72px 0;color:#fff}.project-scope-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.project-scope-grid h2{color:#fff}.project-detail-tags-large{justify-content:flex-start}.project-detail-tags-large span{padding:12px 14px;font-size:10px;background:rgba(255,255,255,.04)}
.project-gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in;color:inherit}.project-gallery-open img{height:100%;object-fit:cover}.gallery-expand{position:absolute;right:14px;top:14px;padding:7px 9px;background:rgba(5,11,47,.8);color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:0;transition:opacity .2s ease}.project-gallery-item:hover .gallery-expand{opacity:1}
.gallery-lightbox{position:fixed;z-index:100;inset:0;background:rgba(3,7,28,.94);display:flex;align-items:center;justify-content:center;padding:60px}.gallery-lightbox[hidden]{display:none}.gallery-lightbox img{max-width:min(1400px,94vw);max-height:88vh;width:auto;height:auto;box-shadow:0 30px 90px rgba(0,0,0,.4)}.gallery-lightbox-close{position:absolute;right:24px;top:18px;border:0;background:none;color:#fff;font-size:40px;cursor:pointer}

.process-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.process-intro-grid>div:last-child p{color:var(--muted);font-size:17px;line-height:1.8}.process-doc-copy{color:var(--muted);line-height:1.75;margin-bottom:26px}

.testimonial-ready-section{background:#fff}.testimonial-empty-card .btn{margin-top:18px;width:max-content}.testimonial-principles{background:var(--navy);padding:90px 0;color:#fff}.testimonial-principles-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.testimonial-principles h2{color:#fff}.testimonial-principles-grid>div:last-child p{color:rgba(255,255,255,.65);font-size:17px;line-height:1.8}

.contact-route-section{background:var(--navy);padding:92px 0;color:#fff}.contact-route-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.contact-route-grid h2{color:#fff}.contact-route-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-route-options article{padding:34px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035)}.contact-route-options article>span{color:var(--gold);font-size:10px;font-weight:800}.contact-route-options h3{margin:28px 0 12px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:400}.contact-route-options p{color:rgba(255,255,255,.62);line-height:1.72}

.request-progress-band{background:#fff;border-bottom:1px solid var(--line)}.request-progress-grid{display:grid;grid-template-columns:repeat(4,1fr)}.request-progress-grid>div{padding:21px 24px;border-right:1px solid var(--line);display:flex;gap:12px;align-items:center}.request-progress-grid>div:first-child{padding-left:0}.request-progress-grid>div:last-child{border-right:0}.request-progress-grid span{color:var(--gold);font-size:10px;font-weight:800}.request-progress-grid strong{color:var(--navy);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.request-side-contact{margin-top:32px;padding:22px;border-left:2px solid var(--gold);background:var(--soft);display:grid;gap:7px}.request-side-contact span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.request-side-contact a{color:var(--navy);font-size:20px;font-weight:800}.checkbox-field{grid-template-columns:auto 1fr!important;align-items:start;gap:10px!important;text-transform:none!important;letter-spacing:0!important;font-weight:500!important;line-height:1.5}.checkbox-field input{width:auto!important;margin-top:2px;box-shadow:none!important}.request-submit{min-height:54px}.form-status{margin:0;min-height:20px;color:var(--navy);font-size:13px;font-weight:700}.request-after-section{background:var(--navy);padding:92px 0;color:#fff}.request-after-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.request-after-grid h2{color:#fff}.request-after-grid>div:last-child>p{color:rgba(255,255,255,.66);line-height:1.78}.request-flow span{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.16);color:#fff}

@media(max-width:920px){
  .home-proof-grid,.request-progress-grid{grid-template-columns:1fr 1fr}.home-proof-grid>div:nth-child(2),.request-progress-grid>div:nth-child(2){border-right:0}.home-proof-grid>div,.request-progress-grid>div{border-bottom:1px solid var(--line);padding-left:20px}
  .home-contact-preview-grid,.about-media-grid,.service-project-proof-grid,.service-detail-hero-grid,.service-detail-image-grid,.service-detail-cap-grid,.service-detail-next-grid,.portfolio-story-grid,.project-scope-grid,.process-intro-grid,.testimonial-principles-grid,.contact-route-grid,.request-after-grid{grid-template-columns:1fr;gap:42px}
  .about-media-copy,.service-project-proof-copy{padding:42px}.about-media-large,.service-detail-image{min-height:400px;height:400px}
  .principle-grid,.service-mini-grid,.service-index-grid{grid-template-columns:1fr 1fr}
  .contact-route-options{grid-template-columns:1fr}.service-other .service-mini-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .home-proof-grid,.request-progress-grid{grid-template-columns:1fr}.home-proof-grid>div,.request-progress-grid>div{border-right:0}.home-proof-grid>div:first-child,.request-progress-grid>div:first-child{padding-left:20px}
  .home-contact-methods a{grid-template-columns:1fr;gap:6px}.principle-grid,.service-mini-grid,.service-index-grid,.service-other .service-mini-grid{grid-template-columns:1fr}.service-index-card{min-height:300px;padding:28px}.service-index-card h3{margin-top:38px}.service-mini-card{min-height:220px}
  .about-media-large,.service-detail-image{min-height:310px;height:310px}.about-media-copy,.service-project-proof-copy,.service-detail-note{padding:30px 26px}.capability-list>div{grid-template-columns:40px 1fr}
  .gallery-lightbox{padding:30px 16px}.project-scope-band,.portfolio-story,.testimonial-principles,.contact-route-section,.request-after-section{padding:72px 0}.contact-route-options article{padding:26px}
}

/* Project video media */
.project-video-section{background:#fff}
.project-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.project-video-card{margin:0;background:var(--navy-deep);color:#fff;overflow:hidden}
.project-video-card video{display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:cover}
.project-video-card span{display:block;padding:14px 16px;color:rgba(255,255,255,.65);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.project-video-link{min-height:160px;border:1px solid var(--line);background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px;color:var(--navy)}
.project-video-link span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--muted)}
.project-video-link strong{font-size:14px}
@media(max-width:650px){.project-video-grid{grid-template-columns:1fr}.project-video-link{align-items:flex-start;flex-direction:column}}

/* v0.9.0 live project request form -------------------------------------- */
.request-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.request-success,.request-error{margin:0 0 34px;padding:22px 24px;border:1px solid;display:grid;gap:7px}
.request-success{background:#f1faf5;border-color:#bddfc9;color:#175d3c}
.request-error{background:#fff5f5;border-color:#efc9c9;color:#862a2a}
.request-success>span{text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:900;color:var(--gold)}
.request-success>strong,.request-error>strong{font-size:15px}
.request-success p{margin:0;line-height:1.6;font-size:13px}
.request-submit[disabled]{opacity:.65;cursor:wait;transform:none}

/* v0.10.0 Client request follow-up --------------------------------------- */
.request-side-existing{margin-top:14px;padding:19px 22px;border:1px solid var(--line);display:grid;gap:6px;background:#fff}
.request-side-existing span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.request-side-existing a{color:var(--navy);font-size:13px;font-weight:850}.request-side-existing b{color:var(--gold)}
.request-success .btn{justify-self:start;margin-top:6px}.request-success>small{font-size:11px;line-height:1.5;color:#42705a}
.request-success.compact{margin-bottom:24px}
.client-request-lookup-section{background:var(--warm)}
.client-request-lookup-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.client-request-intro{max-width:540px;color:var(--muted);font-size:17px;line-height:1.8;margin:24px 0 32px}
.client-request-help{display:grid;gap:5px;padding:22px 0;border-top:1px solid var(--line);max-width:440px}
.client-request-help span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}.client-request-help a{color:var(--navy);font-weight:800}
.client-request-lookup-form{background:#fff;border:1px solid var(--line);padding:38px;display:grid;gap:19px;box-shadow:var(--shadow)}
.client-request-lookup-form label,.client-followup-form label{display:grid;gap:8px;color:var(--navy);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.client-request-lookup-form input,.client-followup-form textarea,.client-followup-form input[type=file]{width:100%;border:1px solid #d7d9df;background:#fff;padding:14px 15px;outline:none;color:var(--ink);text-transform:none;letter-spacing:0}
.client-request-lookup-form input:focus,.client-followup-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 2px rgba(10,18,70,.07)}
.client-request-lookup-form>small{color:var(--muted);line-height:1.5}
.request-status-hero{min-height:400px}.client-request-status-summary{align-self:end;padding-bottom:8px}.client-request-status-summary>span{display:block;color:rgba(255,255,255,.6);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;margin-bottom:10px}.client-request-status-summary p{margin:18px 0 0;color:rgba(255,255,255,.68);line-height:1.7;max-width:520px}
.client-status{display:inline-flex;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.client-status.status-accepted{background:#dff5e8;color:#17633f}.client-status.status-declined,.client-status.status-archived{background:#ececef;color:#575b64}
.client-request-section{background:#f5f6f8}.client-request-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:24px;align-items:start}.client-request-layout main{display:grid;gap:24px}.client-request-layout aside{display:grid;gap:18px;position:sticky;top:108px}
.client-request-panel{background:#fff;border:1px solid var(--line);box-shadow:0 18px 48px rgba(5,11,47,.06)}.client-request-panel-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px 28px 22px;border-bottom:1px solid var(--line)}.client-request-panel-head .section-kicker{margin-bottom:8px}.client-request-panel-head h2{font-size:31px}
.client-count{display:grid;place-items:center;min-width:36px;height:36px;border-radius:50%;background:var(--warm);color:var(--navy);font-size:12px;font-weight:900}
.client-request-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--line)}.client-request-detail-grid>div{padding:20px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.client-request-detail-grid>div:nth-child(2n){border-right:0}.client-request-detail-grid span,.client-request-scope>span{display:block;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;margin-bottom:7px}.client-request-detail-grid strong{color:var(--navy);font-size:13px}.client-request-scope{padding:26px}.client-request-scope p{margin:0;white-space:pre-wrap;color:#4d5159;line-height:1.75}
.client-file-list{display:grid}.client-file-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;border-top:1px solid var(--line);background:#fff}.client-file-card:first-child{border-top:0}.client-file-card>div{display:grid;gap:4px;min-width:0}.client-file-card strong{color:var(--navy);font-size:12px;overflow-wrap:anywhere}.client-file-card span{color:var(--muted);font-size:10px}.client-file-card b{color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.client-empty-state{margin:0;padding:24px 28px;color:var(--muted)}
.client-update-list{display:grid}.client-update-card{padding:22px 26px;border-top:1px solid var(--line)}.client-update-card:first-child{border-top:0}.client-update-card>div{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:10px}.client-update-card>div b{color:var(--gold)}.client-update-card p{white-space:pre-wrap;color:#444952;line-height:1.7;margin:12px 0 0}.client-update-card small{display:block;margin-top:10px;color:var(--muted);line-height:1.5}
.client-followup-form{overflow:hidden}.client-followup-body{padding:24px 26px 28px;display:grid;gap:18px}.client-followup-body>p{color:var(--muted);line-height:1.65;margin:0}.client-followup-form .file-field input{padding:12px;background:var(--warm)}.client-security-note{color:var(--muted);line-height:1.5}.client-request-help-card{background:var(--navy);color:#fff;padding:24px;display:grid;gap:6px}.client-request-help-card span{color:rgba(255,255,255,.55);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.client-request-help-card a{font-weight:800}
@media(max-width:980px){.client-request-lookup-grid,.client-request-layout{grid-template-columns:1fr;gap:38px}.client-request-layout aside{position:static}.client-request-detail-grid{grid-template-columns:1fr}.client-request-detail-grid>div{border-right:0}}
@media(max-width:650px){.client-request-lookup-form{padding:24px 20px}.client-request-panel-head{padding:22px 20px}.client-request-panel-head h2{font-size:27px}.client-file-card{align-items:flex-start;flex-direction:column}.client-update-card>div{flex-direction:column}.client-followup-body{padding:22px 20px}}

/* v0.13 site utilities ---------------------------------------------------- */
.site-announcement{background:var(--gold);color:var(--navy-deep);border-bottom:1px solid rgba(5,11,47,.12)}
.site-announcement .shell{min-height:38px;display:flex;align-items:center;justify-content:center;gap:16px;text-align:center;font-size:11px;font-weight:800}
.site-announcement a{border-bottom:1px solid rgba(5,11,47,.35);font-weight:900}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item details{padding:0}
.faq-item summary{list-style:none;display:grid;grid-template-columns:42px 1fr auto;gap:18px;align-items:center;padding:24px 0;cursor:pointer;color:var(--navy);font-weight:800}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{color:var(--gold);font-size:10px;letter-spacing:.1em}
.faq-item summary::after{content:'+';font-size:24px;font-weight:400;color:var(--gold)}
.faq-item details[open] summary::after{content:'−'}
.faq-item .faq-answer{max-width:820px;padding:0 60px 26px;color:var(--muted);font-size:15px;line-height:1.8;white-space:pre-line}
.faq-empty-public{padding:30px 0;color:var(--muted);font-size:15px}
@media(max-width:650px){.site-announcement .shell{padding:9px 0;flex-direction:column;gap:3px}.faq-item summary{grid-template-columns:30px 1fr auto}.faq-item .faq-answer{padding-left:48px}}

/* v0.14 project storytelling -------------------------------------------- */
.project-gallery-stage{margin-top:58px}.project-gallery-stage:first-of-type{margin-top:24px}
.project-gallery-stage-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:14px}
.project-gallery-stage-head .section-kicker{margin:0}.project-gallery-stage-head>p:last-child{margin:0;color:var(--muted);font-size:13px;line-height:1.6;max-width:430px;text-align:right}
.project-comparison-section{background:#fff}
.before-after{position:relative;overflow:hidden;aspect-ratio:16/9;max-height:700px;background:var(--navy-deep);box-shadow:var(--shadow)}
.before-after>img,.before-after-before img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.before-after-before{position:absolute;inset:0 auto 0 0;width:50%;overflow:hidden;z-index:2}
.before-after-before img{max-width:none}
.before-after-divider{position:absolute;z-index:3;top:0;bottom:0;left:50%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.before-after-divider::after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--gold);color:var(--navy-deep);font-weight:900;box-shadow:0 10px 28px rgba(5,11,47,.25)}
.before-after input[type=range]{position:absolute;z-index:4;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.before-after-label{position:absolute;z-index:5;top:18px;padding:7px 10px;background:rgba(5,11,47,.78);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;pointer-events:none}
.before-after-label.is-before{left:18px}.before-after-label.is-after{right:18px}
@media(max-width:650px){.project-gallery-stage-head{align-items:flex-start;flex-direction:column;gap:6px}.project-gallery-stage-head>p:last-child{text-align:left}.before-after{aspect-ratio:4/3}.before-after-before img{max-width:none}}

/* v0.16 visual / UX audit --------------------------------------------------- */
.brand{height:78px;display:flex;align-items:center}
.brand img{width:auto;max-width:100%;height:76px;object-fit:contain;object-position:left center}
.nav-wrap{min-height:92px}
.inner-hero,.project-detail-hero{scroll-margin-top:110px}

/* Autoplay before/after: premium wipe remains manually adjustable. */
.before-after{--compare-position:100%;isolation:isolate}
.before-after-before{width:var(--compare-position)}
.before-after-divider{left:var(--compare-position);transition:box-shadow .25s ease}
.before-after.is-auto-running .before-after-divider::after{box-shadow:0 12px 34px rgba(5,11,47,.28),0 0 0 5px rgba(255,165,0,.13)}
.before-after input[type=range]:focus-visible~.before-after-label{outline:2px solid var(--gold)}
.before-after-motion-note{margin-top:12px;color:var(--muted);font-size:11px;text-align:center}

@media(max-width:980px){
  .brand{height:68px;width:218px}.brand img{height:66px}
  .nav-wrap{min-height:82px}
}
@media(max-width:650px){
  .brand{width:196px;height:62px}.brand img{height:60px}
  .nav-wrap{min-height:76px}
}

/* V0.16 — configurable homepage hero media rotation */
.home-hero-video-stack{position:absolute;inset:0;background:var(--navy-deep)}
.home-hero-video{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.35s cubic-bezier(.4,0,.2,1);pointer-events:none}
.home-hero-video.is-active{opacity:1}
@media (prefers-reduced-motion: reduce){.home-hero-video{transition:none}.home-hero-video:not(.is-active){display:none}}

/* --------------------------------------------------------------------------
   Visual audit V0.17 — premium public navigation + motion storytelling
   -------------------------------------------------------------------------- */
.site-header{
  background:linear-gradient(180deg,rgba(5,11,47,.965),rgba(5,11,47,.92));
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 1px 0 rgba(255,165,0,.05),0 14px 34px rgba(2,7,31,.10);
  backdrop-filter:blur(16px) saturate(118%);
  -webkit-backdrop-filter:blur(16px) saturate(118%);
  transition:background .35s ease,box-shadow .35s ease,border-color .35s ease
}
.site-header::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(255,165,0,.05) 20%,rgba(255,193,90,.38) 50%,rgba(255,165,0,.05) 80%,transparent 100%);
  opacity:.58;transition:opacity .35s ease
}
.site-header.is-scrolled{background:rgba(5,11,47,.965);box-shadow:0 16px 44px rgba(2,7,31,.18);border-bottom-color:rgba(255,255,255,.09)}
.site-header.is-scrolled::after{opacity:.92}
.brand{transition:transform .3s ease,filter .3s ease}
.brand:hover{transform:translateY(-1px);filter:drop-shadow(0 8px 16px rgba(255,165,0,.08))}
.nav-link{transition:color .24s ease,text-shadow .24s ease}
.nav-link:hover,.nav-link.is-active{text-shadow:0 0 18px rgba(255,255,255,.12)}
.nav-link::after{height:1px;box-shadow:0 0 10px rgba(255,165,0,.45)}
.nav-cta{position:relative;overflow:hidden;isolation:isolate;box-shadow:0 8px 24px rgba(255,165,0,.11)}
.nav-cta::after{content:"";position:absolute;z-index:-1;top:-65%;bottom:-65%;width:34%;left:-55%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);transition:left .72s cubic-bezier(.2,.7,.2,1)}
.nav-cta:hover::after{left:125%}

/* Animated homepage process journey */
.process-motion{position:relative;overflow:hidden;background:linear-gradient(128deg,#07103d 0%,var(--navy) 55%,#111d62 100%)}
.process-motion::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 78% 44%,rgba(255,165,0,.075),transparent 26%)}
.process-motion>.shell{position:relative;z-index:1}
.process-motion-copy{position:sticky;top:145px}
.process-preview-intro{color:rgba(255,255,255,.62);line-height:1.75;max-width:460px;margin:22px 0 28px}
.process-motion-link{display:inline-flex;gap:10px;color:#fff;font-size:12px;font-weight:800;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.28)}
.process-motion-link span{color:var(--gold)}
.process-preview-list{position:relative;padding-left:36px;border-top:0}
.process-progress-track{position:absolute;left:5px;top:14px;bottom:14px;width:1px;background:rgba(255,255,255,.13);overflow:visible}
.process-progress-track::before{content:"";position:absolute;left:-3px;top:-1px;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(255,165,0,.08)}
.process-progress-track i{display:block;width:2px;height:0;background:linear-gradient(var(--gold-soft),var(--gold));box-shadow:0 0 18px rgba(255,165,0,.4);transition:height .7s cubic-bezier(.2,.7,.2,1)}
.process-preview-list a{position:relative;opacity:.46;transform:translateX(0);transition:opacity .4s ease,transform .4s ease,background .4s ease;padding-left:10px;padding-right:12px}
.process-preview-list a::before{content:"";position:absolute;left:-35px;top:31px;width:9px;height:9px;border-radius:50%;background:#57608f;border:2px solid var(--navy);box-shadow:0 0 0 1px rgba(255,255,255,.16);transition:background .35s ease,box-shadow .35s ease,transform .35s ease}
.process-preview-list a.is-active{opacity:1;transform:translateX(7px);background:linear-gradient(90deg,rgba(255,165,0,.055),transparent 78%)}
.process-preview-list a.is-active::before{background:var(--gold);box-shadow:0 0 0 5px rgba(255,165,0,.12),0 0 20px rgba(255,165,0,.3);transform:scale(1.04)}
.process-preview-list a.is-complete{opacity:.74}

/* Full Process page — scroll-led animated journey */
.process-story-shell{position:relative;padding-left:46px}
.process-story-rail{position:absolute;left:10px;top:36px;bottom:36px;width:2px}
.process-story-rail span,.process-story-rail i{position:absolute;inset:0 auto auto 0;width:100%;border-radius:3px}
.process-story-rail span{height:100%;background:rgba(10,18,70,.12)}
.process-story-rail i{height:0;background:linear-gradient(var(--gold),#ffbf45);box-shadow:0 0 16px rgba(255,165,0,.23);transition:height .45s ease-out}
.process-story .process-page-list article{position:relative;opacity:.48;transform:translateY(15px);transition:opacity .5s ease,transform .5s ease,background .4s ease;padding-left:24px;padding-right:18px}
.process-story .process-page-list article::before{content:"";position:absolute;left:-40px;top:59px;width:11px;height:11px;border-radius:50%;background:#dad9d5;border:3px solid var(--warm);box-shadow:0 0 0 1px rgba(10,18,70,.16);transition:.35s ease}
.process-story .process-page-list article.is-active{opacity:1;transform:none;background:linear-gradient(90deg,rgba(255,165,0,.045),transparent 64%)}
.process-story .process-page-list article.is-active::before{background:var(--gold);box-shadow:0 0 0 6px rgba(255,165,0,.10),0 0 18px rgba(255,165,0,.22)}

/* Testimonials: honest animated proof while verified feedback is pending */
.testimonial-proof-motion{overflow:hidden;background:linear-gradient(180deg,#fff,#fbfaf7)}
.testimonial-proof-head{display:grid;grid-template-columns:1fr .72fr;gap:90px;align-items:end;margin-bottom:44px}
.testimonial-proof-head>div:last-child p{color:var(--muted);line-height:1.75}
.testimonial-proof-viewport{overflow:hidden;margin-inline:auto;max-width:1600px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.testimonial-proof-track{display:flex;width:max-content;gap:16px;animation:premiumProofMarquee 34s linear infinite;will-change:transform}
.testimonial-proof-viewport:hover .testimonial-proof-track{animation-play-state:paused}
.testimonial-proof-card{position:relative;width:360px;height:260px;overflow:hidden;background:var(--navy);flex:0 0 auto}
.testimonial-proof-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.testimonial-proof-card:hover img{transform:scale(1.035)}
.testimonial-proof-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(5,11,47,.88) 100%)}
.testimonial-proof-card figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:17px;color:#fff;display:grid;gap:4px}
.testimonial-proof-card figcaption span{color:var(--gold-soft);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.testimonial-proof-card figcaption strong{font-family:Georgia,"Times New Roman",serif;font-size:21px;font-weight:400;line-height:1.05}
.testimonial-empty-card-polished{position:relative;overflow:hidden;background:linear-gradient(140deg,var(--navy),#101d64)}
.testimonial-empty-card-polished::after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,165,0,.12);right:-80px;bottom:-120px;transform:rotate(35deg);pointer-events:none}
@keyframes premiumProofMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

@media(max-width:980px){
  .process-motion-copy{position:static}
  .testimonial-proof-head{grid-template-columns:1fr;gap:28px}
  .process-story-shell{padding-left:32px}
  .process-story-rail{left:4px}
  .process-story .process-page-list article::before{left:-29px}
}
@media(max-width:650px){
  .testimonial-proof-card{width:280px;height:210px}
  .process-preview-list{padding-left:27px}
  .process-progress-track{left:2px}
  .process-preview-list a::before{left:-27px}
  .process-story-shell{padding-left:24px}
  .process-story-rail{left:0}
  .process-story .process-page-list article{padding-left:14px;padding-right:8px}
  .process-story .process-page-list article::before{left:-26px;top:24px}
}
@media(prefers-reduced-motion:reduce){
  .testimonial-proof-track{animation:none!important}
  .process-preview-list a,.process-story .process-page-list article{opacity:1;transform:none}
  .process-progress-track i,.process-story-rail i{height:100%!important;transition:none!important}
  .nav-cta::after{display:none}
}
.testimonial-proof-fallback{width:min(900px,calc(100vw - 48px));padding:58px;background:var(--warm);border:1px solid var(--line);color:var(--muted);text-align:center;font-size:14px}

/* Process page visual audit refinement */
.process-page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#08103e 0%,#0a1246 48%,#15206c 100%)}
.process-page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 20%,rgba(255,165,0,.15),transparent 24%),linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,120px 120px,120px 120px;opacity:.42;pointer-events:none}
.process-page-hero-grid{align-items:end;gap:56px}
.process-page-hero-copy{max-width:640px;color:rgba(255,255,255,.74);font-size:18px;line-height:1.78;margin-top:26px}
.process-page-hero-card{justify-self:end;max-width:430px;width:100%}
.process-page-hero-card-inner{border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));backdrop-filter:blur(10px);padding:30px 30px 26px;box-shadow:0 24px 70px rgba(4,8,30,.22)}
.process-page-hero-card-inner span{display:block;color:#ffc45c;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}
.process-page-hero-card-inner strong{display:block;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:28px;line-height:1.2;font-weight:400;margin-bottom:18px}
.process-page-hero-card-inner em{display:block;color:rgba(255,255,255,.65);font-style:normal;line-height:1.7}

.process-journey{padding:118px 0;background:linear-gradient(180deg,#fff 0%,#fbfaf6 100%)}
.process-journey-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);gap:84px;align-items:start}
.process-journey-copy{position:relative;padding-left:48px}
.process-journey-intro{max-width:650px;color:var(--muted);line-height:1.8;font-size:17px;margin:24px 0 38px}
.process-journey-steps{display:grid;gap:10px}
.process-journey-steps > article{position:relative;display:grid;grid-template-columns:60px 1fr;gap:28px;padding:28px 22px 28px 0;border-bottom:1px solid var(--line);opacity:.54;transform:translateX(0);transition:opacity .32s ease,transform .32s ease,background .32s ease}
.process-journey-steps > article>span{display:block;color:var(--gold);font-size:11px;font-weight:800;padding-top:4px}
.process-journey-steps > article h3{margin:0 0 10px;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:31px;line-height:1.08;font-weight:400}
.process-journey-steps > article div>p:last-child{margin-bottom:0;color:var(--muted);line-height:1.78}
.process-journey-steps > article.is-active{opacity:1;transform:translateX(8px);background:linear-gradient(90deg,rgba(255,165,0,.06),transparent 70%)}
.process-journey-steps > article.is-complete{opacity:.8}
.process-journey-steps > article::before{content:"";position:absolute;left:-38px;top:36px;width:12px;height:12px;border-radius:50%;background:#d2d3d9;border:3px solid #fff;box-shadow:0 0 0 1px rgba(10,18,70,.16);transition:.3s ease}
.process-journey-steps > article.is-active::before{background:var(--gold);box-shadow:0 0 0 6px rgba(255,165,0,.12),0 0 20px rgba(255,165,0,.22)}
.process-journey-steps > article.is-complete::before{background:#f0b54b}
.process-journey-copy .process-story-rail{left:11px;top:146px;bottom:34px}

.process-journey-visual{position:sticky;top:138px;align-self:start}
.process-scene-stack{position:relative;min-height:620px}
.process-scene{position:absolute;inset:0;display:flex;flex-direction:column;gap:18px;padding:34px 34px 32px;background:linear-gradient(180deg,#0a1246 0%,#101853 100%);color:#fff;border:1px solid rgba(255,255,255,.06);box-shadow:0 30px 75px rgba(5,11,47,.18);opacity:0;visibility:hidden;transform:translateY(18px) scale(.985);transition:opacity .45s ease,transform .45s ease,visibility .45s ease;overflow:hidden}
.process-scene::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 24%,rgba(255,165,0,.12),transparent 24%),linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,62px 62px,62px 62px;opacity:.32}
.process-scene>*{position:relative;z-index:1}
.process-scene.is-active{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.process-scene-meta{color:#ffc45c;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800}
.process-scene h3{margin:0;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1.06;font-weight:400;max-width:540px}
.process-scene>p{margin:0 0 6px;color:rgba(255,255,255,.7);line-height:1.78;max-width:540px}
.scene-blueprint-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}
.scene-blueprint-grid span,.scene-note-stack>div,.scene-closeout-card,.scene-doc-card, .scene-photo-collage{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.05)}
.scene-blueprint-grid span{padding:18px 18px;font-size:14px;color:#fff}
.scene-note-stack{display:grid;gap:14px;margin-top:8px}
.scene-note-stack>div{padding:18px 18px 16px}
.scene-note-stack strong,.scene-closeout-card strong{display:block;color:#fff;font-size:15px;margin-bottom:7px}
.scene-note-stack em,.scene-closeout-card span{display:block;color:rgba(255,255,255,.62);font-style:normal}
.scene-photo-collage{display:grid;gap:14px;padding:14px}
.scene-photo-collage--wide{grid-template-columns:1.1fr .9fr}
.scene-photo-collage--stacked{grid-template-columns:1fr 1fr}
.scene-photo-collage img{height:240px;object-fit:cover;width:100%}
.scene-doc-card{max-width:360px;padding:18px 18px 16px}
.scene-doc-card header{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.11);margin-bottom:14px}
.scene-doc-card header span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.62);font-weight:700;max-width:170px}
.scene-doc-card header strong{font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:400}
.scene-doc-card ul{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:10px}
.scene-doc-card li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:10px;color:#fff}
.scene-doc-card li span{color:rgba(255,255,255,.62)}
.scene-doc-card footer{color:#ffc45c;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.scene-closeout{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.scene-closeout-card{padding:20px 18px 18px}

.process-documents-band{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.process-band-head{margin-bottom:44px}
.process-flow{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;padding-top:16px}
.process-flow article{position:relative;padding:24px 22px 22px;background:#fff;border:1px solid rgba(10,18,70,.08);box-shadow:0 18px 40px rgba(5,11,47,.05);opacity:.56;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.process-flow article span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:rgba(255,165,0,.12);color:var(--gold);font-size:11px;font-weight:800;margin-bottom:18px}
.process-flow article strong{display:block;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:28px;line-height:1.08;font-weight:400;margin-bottom:10px}
.process-flow article p{margin:0;color:var(--muted);line-height:1.7}
.process-flow article.is-active,.process-flow article.is-complete{opacity:1;transform:none}
.process-flow article.is-active{box-shadow:0 22px 44px rgba(5,11,47,.11);border-color:rgba(255,165,0,.25)}
.process-flow-line{position:absolute;left:32px;right:32px;top:0;height:2px;background:rgba(10,18,70,.10)}
.process-flow-line span{display:block;height:100%;width:var(--doc-flow-progress,0%);background:linear-gradient(90deg,var(--gold),#ffc151);box-shadow:0 0 16px rgba(255,165,0,.25);transition:width .45s ease,height .45s ease}


.process-mobile-scene{display:none}

.process-page-closeout{position:relative;overflow:hidden;background:linear-gradient(135deg,#07103d 0%,var(--navy) 52%,#121d63 100%);padding:104px 0;color:#fff}
.process-page-closeout::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 20%,rgba(255,165,0,.14),transparent 22%),linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,120px 120px,120px 120px;opacity:.32;pointer-events:none}
.process-page-closeout-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}
.process-page-closeout h2{color:#fff}
.process-page-closeout p:not(.section-kicker){max-width:560px;color:rgba(255,255,255,.7);font-size:17px;line-height:1.8;margin-top:22px}
.process-page-closeout-actions{display:flex;gap:12px;align-items:center}

@media (max-width: 1180px){
  .process-journey-grid{grid-template-columns:1fr;gap:52px}
  .process-journey-visual{position:relative;top:auto}
  .process-scene-stack{min-height:560px}
}
@media (max-width: 980px){
  .process-page-hero-grid,.process-page-closeout-grid{grid-template-columns:1fr;gap:30px}
  .process-page-hero-card{justify-self:start;max-width:none}

  /* Dedicated tablet/mobile storytelling mode: each chapter owns its visual. */
  .process-journey{padding:88px 0}
  .process-story-mobile-ready .process-journey-visual{display:none}
  .process-journey-steps{gap:6px}
  .process-journey-steps > article{align-items:start;padding-top:34px;padding-bottom:42px}
  .process-mobile-scene{display:flex;position:relative;inset:auto;grid-column:2;margin-top:18px;min-height:0;padding:24px 22px 22px;opacity:.3;visibility:visible;transform:translateY(16px);box-shadow:0 20px 52px rgba(5,11,47,.13);transition:opacity .42s ease,transform .42s ease}
  .process-journey-steps > article.is-active .process-mobile-scene,.process-journey-steps > article.is-complete .process-mobile-scene{opacity:1;transform:none}
  .process-mobile-scene::before{background-size:auto,54px 54px,54px 54px}
  .process-mobile-scene .scene-blueprint-grid,.process-mobile-scene .scene-photo-collage--wide,.process-mobile-scene .scene-photo-collage--stacked{grid-template-columns:1fr 1fr}
  .process-mobile-scene .scene-photo-collage img{height:210px}
  .process-mobile-scene .scene-closeout{grid-template-columns:1fr 1fr 1fr}

  /* Connected Documents becomes a scroll-led vertical journey on small screens. */
  .process-flow{grid-template-columns:1fr;gap:14px;padding:10px 0 0 30px}
  .process-flow article,.process-flow article:last-of-type{grid-column:auto}
  .process-flow article{min-height:0;padding:22px 22px 20px;transform:translateY(8px)}
  .process-flow-line{display:block;left:8px;right:auto;top:10px;bottom:0;width:2px;height:auto;background:rgba(10,18,70,.10)}
  .process-flow-line span{width:100%;height:var(--doc-flow-progress,0%);background:linear-gradient(180deg,var(--gold),#ffc151)}
  .scene-closeout{grid-template-columns:1fr}
}
@media (max-width: 760px){
  .process-page-hero-card-inner{padding:24px 22px 22px}
  .process-page-hero-card-inner strong{font-size:24px}
  .process-journey{padding:72px 0}
  .process-journey-copy{padding-left:30px}
  .process-journey-copy .process-story-rail{left:7px;top:178px;bottom:18px}
  .process-journey-intro{font-size:16px;margin-bottom:26px}
  .process-journey-steps > article{grid-template-columns:38px 1fr;gap:14px;padding:28px 0 36px}
  .process-journey-steps > article::before{left:-28px;top:35px}
  .process-journey-steps > article h3{font-size:28px}
  .process-mobile-scene{grid-column:1 / -1;margin:18px 0 0 0;padding:20px 18px 18px}
  .process-mobile-scene .scene-blueprint-grid,.process-mobile-scene .scene-photo-collage--wide,.process-mobile-scene .scene-photo-collage--stacked{grid-template-columns:1fr}
  .process-mobile-scene .scene-photo-collage img{height:190px}
  .process-mobile-scene .scene-closeout{grid-template-columns:1fr}
  .process-mobile-scene .scene-doc-card{max-width:none}
  .process-flow{padding-left:26px}
  .process-flow-line{left:6px}
  .process-flow article strong{font-size:25px}
  .process-page-closeout{padding:82px 0}
  .process-page-closeout-actions{flex-direction:column;align-items:stretch}
}
@media (prefers-reduced-motion: reduce){
  .process-journey-steps > article,.process-scene,.process-flow article{transition:none}
}

/* V0.20 — Process mobile scene sizing hardening.
   Samsung/Chrome mobile exposed an intrinsic flex/grid shrink case where the
   cloned chapter media could collapse into narrow vertical strips. Keep every
   inline scene and its visual payload explicitly full width. */
@media (max-width: 760px){
  .process-journey-grid,
  .process-journey-copy,
  .process-journey-steps,
  .process-journey-steps > article,
  .process-journey-steps > article>div,
  .process-mobile-scene,
  .process-mobile-scene>*{
    min-width:0;
  }

  .process-mobile-scene{
    width:100%;
    max-width:100%;
    align-self:stretch;
    overflow:hidden;
    gap:14px;
    padding:18px;
    min-height:auto;
  }

  .process-mobile-scene .scene-blueprint-grid,
  .process-mobile-scene .scene-note-stack,
  .process-mobile-scene .scene-photo-collage,
  .process-mobile-scene .scene-doc-card,
  .process-mobile-scene .scene-closeout{
    width:100%;
    max-width:100%;
    min-width:0;
    align-self:stretch;
    flex:0 0 auto;
  }

  .process-mobile-scene .scene-photo-collage{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px;
    padding:8px;
  }

  .process-mobile-scene .scene-photo-collage img{
    display:block;
    width:100% !important;
    min-width:100%;
    max-width:100%;
    height:auto !important;
    aspect-ratio:4 / 5;
    object-fit:cover;
    object-position:center;
  }

  .process-mobile-scene .scene-blueprint-grid{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .process-mobile-scene .scene-closeout{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .process-mobile-scene .scene-doc-card{
    margin:0;
  }

  .process-journey-steps > article{
    overflow:visible;
  }

  /* Give the copy a little more breathing room without making the chapter
     feel oversized on a narrow phone. */
  .process-journey-steps > article h3{
    font-size:clamp(27px,8vw,34px);
    line-height:1.08;
  }
  .process-journey-steps > article div>p:last-child{
    font-size:15px;
    line-height:1.72;
  }
}

@media (max-width: 430px){
  .process-journey{padding:58px 0 64px}
  .process-journey-copy{padding-left:27px}
  .process-journey-copy .process-story-rail{left:6px}
  .process-journey-steps > article{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:24px 0 31px}
  .process-journey-steps > article::before{left:-25px;top:31px}
  .process-mobile-scene{grid-column:1 / -1;margin-top:16px;padding:14px}
  .process-mobile-scene .scene-photo-collage{padding:7px;gap:7px}
  .process-mobile-scene .scene-photo-collage img{aspect-ratio:4 / 5}
}

/* V0.21 — Process mobile component correction.
   Inline visuals are neutral divs, and chapter styling is limited to direct
   journey articles so nested visual content can never inherit the timeline grid. */
@media (max-width: 760px){
  .process-mobile-scene{
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    margin-top:18px;
    padding:18px;
    gap:12px;
    min-height:0;
    overflow:hidden;
  }

  .process-mobile-scene > *{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }

  .process-mobile-scene .scene-blueprint-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px;
    margin:0;
  }
  .process-mobile-scene .scene-blueprint-grid span{
    display:flex;
    align-items:center;
    min-height:66px;
    padding:14px;
    overflow-wrap:anywhere;
  }

  .process-mobile-scene .scene-note-stack{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin:0;
  }
  .process-mobile-scene .scene-note-stack > div{
    width:100%;
    padding:15px 16px;
  }

  .process-mobile-scene .scene-photo-collage,
  .process-mobile-scene .scene-photo-collage--wide,
  .process-mobile-scene .scene-photo-collage--stacked{
    display:grid;
    grid-template-columns:1fr !important;
    width:100%;
    gap:8px;
    padding:8px;
  }
  .process-mobile-scene .scene-photo-collage img{
    display:block;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 10;
    object-fit:cover;
  }

  .process-mobile-scene .scene-doc-card{
    width:100%;
    max-width:none;
    margin:0;
    padding:16px;
  }
  .process-mobile-scene .scene-doc-card header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:end;
  }
  .process-mobile-scene .scene-doc-card header span{
    max-width:none;
    overflow-wrap:anywhere;
  }
  .process-mobile-scene .scene-doc-card header strong{
    font-size:25px;
  }
  .process-mobile-scene .scene-doc-card li{
    align-items:baseline;
  }

  .process-mobile-scene .scene-closeout{
    display:grid;
    grid-template-columns:1fr !important;
    width:100%;
    gap:8px;
    margin:0;
  }
  .process-mobile-scene .scene-closeout-card{
    width:100%;
    padding:15px 16px;
  }
}

@media (max-width: 430px){
  .process-mobile-scene{padding:14px;margin-top:15px}
  .process-mobile-scene .scene-blueprint-grid{grid-template-columns:1fr 1fr !important}
  .process-mobile-scene .scene-blueprint-grid span{min-height:60px;padding:12px;font-size:13px}
  .process-mobile-scene .scene-doc-card header{grid-template-columns:1fr;gap:8px}
  .process-mobile-scene .scene-doc-card header strong{font-size:28px}
}

/* v0.23 Services visual polish — restrained motion + project-proof handoff */
.services-index-section{position:relative;overflow:hidden}
.services-index-section::before{content:"";position:absolute;right:-140px;top:90px;width:420px;height:420px;border:1px solid rgba(10,18,70,.045);transform:rotate(24deg);pointer-events:none}
.service-index-card{position:relative;overflow:hidden;isolation:isolate;transition:transform .32s cubic-bezier(.2,.7,.2,1),box-shadow .32s ease,border-color .32s ease,background .32s ease}
.service-index-card::before{content:"";position:absolute;z-index:-1;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--gold),#ffc65e);transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.2,.7,.2,1)}
.service-index-card::after{content:"";position:absolute;z-index:-1;right:-70px;bottom:-85px;width:190px;height:190px;border:1px solid rgba(10,18,70,.06);transform:rotate(35deg);transition:transform .45s ease,border-color .45s ease}
.service-index-card:hover{transform:translateY(-6px);box-shadow:0 24px 58px rgba(5,11,47,.1);border-color:rgba(255,165,0,.28)}
.service-index-card:hover::before{transform:scaleX(1)}
.service-index-card:hover::after{transform:rotate(35deg) scale(1.08);border-color:rgba(255,165,0,.16)}
.services-motion-ready .service-index-card{opacity:0;transform:translateY(22px)}
.services-motion-ready .service-index-card.is-visible{opacity:1;transform:none;transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .32s ease,border-color .32s ease,background .32s ease}
.service-project-proof{position:relative;overflow:hidden}
.service-project-proof-image{position:relative}
.service-project-proof-image::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(10,18,70,.14),transparent 48%);pointer-events:none}
.service-project-proof-image img{transform:scale(1.035);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.service-project-proof.is-visible .service-project-proof-image img{transform:scale(1)}
.service-project-proof-copy{position:relative}
.service-project-proof-copy::before{content:"";position:absolute;left:0;top:58px;bottom:58px;width:2px;background:linear-gradient(var(--gold),rgba(255,165,0,.12));opacity:.8}
.service-detail-cap-grid .capability-list>div{transition:opacity .45s ease,transform .45s cubic-bezier(.2,.7,.2,1),background .25s ease}
.services-motion-ready .service-detail-cap-grid .capability-list>div{opacity:.35;transform:translateX(14px)}
.services-motion-ready .service-detail-cap-grid .capability-list>div.is-visible{opacity:1;transform:none}
.service-detail-cap-grid .capability-list>div:hover{background:linear-gradient(90deg,rgba(255,165,0,.055),transparent 72%)}
.service-mini-card{position:relative;overflow:hidden}
.service-mini-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.service-mini-card:hover::before{transform:scaleX(1)}
@media(max-width:760px){
  .service-project-proof-copy::before{top:30px;bottom:30px}
  .service-index-card:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .services-motion-ready .service-index-card,.services-motion-ready .service-detail-cap-grid .capability-list>div{opacity:1;transform:none}
  .service-project-proof-image img{transform:none;transition:none}
}

/* V1.0 support + legal pages */
.footer-grid{grid-template-columns:1.45fr .9fr .9fr .85fr 1fr;gap:46px}
.footer-bottom a{color:inherit}.footer-bottom a:hover{color:#fff}

.legal-updated{display:block;margin-top:18px;color:rgba(255,255,255,.55);font-size:12px;letter-spacing:.04em}
.legal-section{background:#fff}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,820px);gap:76px;align-items:start;justify-content:center}
.legal-nav{position:sticky;top:138px;display:grid;gap:10px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.legal-nav>span{color:var(--navy);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.legal-nav a{color:var(--muted);font-size:13px;line-height:1.45}.legal-nav a:hover{color:var(--gold)}
.legal-copy{display:grid;gap:0}
.legal-copy>section{scroll-margin-top:140px;padding:0 0 46px;margin:0 0 46px;border-bottom:1px solid var(--line)}
.legal-copy>section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.legal-copy h2{font-size:clamp(30px,3vw,46px);margin-bottom:20px}
.legal-copy p{color:var(--muted);font-size:16px;line-height:1.85;margin:0 0 18px}
.legal-copy a{color:var(--navy);font-weight:750;text-decoration:underline;text-decoration-color:rgba(255,165,0,.45);text-underline-offset:3px}

.support-main{background:#fff}
.support-head{margin-bottom:42px}
.support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.support-card{position:relative;padding:34px 32px 32px;border:1px solid var(--line);background:#fff;box-shadow:0 16px 42px rgba(5,11,47,.045);overflow:hidden}
.support-card::after{content:"";position:absolute;right:-60px;top:-60px;width:140px;height:140px;border-radius:50%;background:rgba(255,165,0,.055)}
.support-card-featured{background:linear-gradient(145deg,#08103e,var(--navy));border-color:transparent;color:#fff}
.support-card>span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:rgba(255,165,0,.11);color:var(--gold);font-size:11px;font-weight:800;margin-bottom:20px}
.support-card-featured>span{background:rgba(255,165,0,.15);color:#ffc45c}
.support-card h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:31px;line-height:1.1;color:var(--navy);margin:0 0 14px;max-width:520px}
.support-card-featured h3{color:#fff}
.support-card>p:not(.section-kicker){color:var(--muted);line-height:1.78;margin-bottom:24px;max-width:620px}
.support-card-featured>p:not(.section-kicker){color:rgba(255,255,255,.68)}
.support-links{display:grid;gap:7px}.support-links a{color:var(--navy);font-weight:800;overflow-wrap:anywhere}.support-card-featured .support-links a{color:#fff}
.support-reference-band{position:relative;overflow:hidden;background:linear-gradient(135deg,#07103d 0%,var(--navy) 55%,#151f68 100%);padding:88px 0;color:#fff}
.support-reference-band::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 10%,rgba(255,165,0,.12),transparent 25%);pointer-events:none}
.support-reference-grid{position:relative;z-index:1;display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center}
.support-reference-grid h2{color:#fff}
.support-reference-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.support-reference-list>div{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.045);padding:20px}
.support-reference-list span{display:block;color:rgba(255,255,255,.58);font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.support-reference-list strong{color:#fff;font-size:17px}
.support-bottom-grid{display:grid;grid-template-columns:1fr auto;gap:52px;align-items:end}.support-bottom-grid>div:first-child>p:last-child{color:var(--muted);line-height:1.8;max-width:650px}.support-bottom-actions{display:flex;gap:12px;flex-wrap:wrap}.btn-ghost-dark{border:1px solid rgba(10,18,70,.25);color:var(--navy);background:transparent}

.policy-acknowledgement{margin-top:14px;color:var(--muted);font-size:12px;line-height:1.65}.policy-acknowledgement a{color:var(--navy);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.client-support-link{display:inline-flex;margin-top:10px;color:var(--navy);font-size:13px;font-weight:800}

@media (max-width: 1100px){
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:42px}
  .legal-layout{grid-template-columns:210px minmax(0,1fr);gap:46px}
}
@media (max-width: 860px){
  .legal-layout{grid-template-columns:1fr;gap:28px}.legal-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 0}.legal-nav>span{grid-column:1/-1}
  .support-grid,.support-reference-grid,.support-bottom-grid{grid-template-columns:1fr}.support-reference-list{grid-template-columns:1fr 1fr}.support-bottom-actions{align-items:stretch}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 560px){
  .legal-nav{grid-template-columns:1fr}.legal-nav>span{grid-column:auto}.legal-copy>section{padding-bottom:34px;margin-bottom:34px}
  .support-grid{grid-template-columns:1fr}.support-card{padding:28px 22px 26px}.support-reference-list{grid-template-columns:1fr}.support-bottom-actions{flex-direction:column}.footer-grid{grid-template-columns:1fr}
}
.checkbox-field a,.form-note a,.client-security-note a{color:var(--navy);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.checkbox-field a,.form-note a,.client-security-note a{color:var(--navy);font-weight:800;text-decoration:underline;text-underline-offset:2px}
