:root { --navy:#061c36; --gold:#c78a2b; --ink:#102743; --paper:#fdfbf8; --page-gutter:clamp(38px,4.2vw,82px); --ease-premium:cubic-bezier(.22,1,.36,1); }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; background:#fbfaf8; color:var(--ink); font-family:"Inter",Arial,sans-serif; }
.page-shell { position:relative; overflow:hidden; width:100%; min-height:100vh; margin:0; background:linear-gradient(118deg,#fffdf9 0%,#fefcf9 55%,#f8f4ee 100%); }
.site-header { position:relative; z-index:3; height:96px; display:flex; align-items:center; padding:0 var(--page-gutter); gap:32px; }
.wordmark { display:block; width:215px; text-decoration:none; }
.wordmark img { display:block; width:100%; height:auto; }
.navigation { display:flex; align-items:center; justify-content:center; gap:clamp(25px,2.55vw,49px); margin-left:auto; }
.navigation a { position:relative; display:inline-flex; align-items:center; gap:7px; min-height:36px; color:#071d37; font-size:12px; font-weight:700; line-height:1; letter-spacing:.045em; text-decoration:none; text-transform:uppercase; white-space:nowrap; -webkit-font-smoothing:antialiased; text-rendering:geometricPrecision; transition:color .18s ease; }
.navigation a::after { content:""; position:absolute; right:0; bottom:2px; left:0; height:1px; border-radius:1px; background:var(--gold); transform:scaleX(0); transform-origin:center; transition:transform .18s ease; }
.navigation a:hover,.navigation a:focus-visible { color:#a66f1e; }
.navigation a:hover::after,.navigation a:focus-visible::after { transform:scaleX(1); }
.navigation a:focus-visible { outline:2px solid #c78a2b55; outline-offset:5px; border-radius:3px; }
.navigation svg { width:10px; height:7px; flex:0 0 auto; overflow:visible; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transform:translateY(-.5px); }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 29px; border-radius:999px; font-size:11px; font-weight:700; letter-spacing:.025em; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
.button-dark { color:white; background:var(--navy); box-shadow:0 7px 15px #061c3612; }
.button-light { color:var(--navy); border:1px solid #a9c9e5; background:#ffffffba; }
.header-cta { min-height:55px; margin-left:26px; padding-inline:27px; }
.menu-toggle { display:none; }
.hero { position:relative; z-index:1; display:flex; min-height:calc(100vh - 96px); align-items:center; padding:52px var(--page-gutter); padding-left:calc(var(--page-gutter) + 6px); }
.hero-copy { position:relative; z-index:3; width:min(770px,55%); }
h1 { position:relative; margin:0; color:var(--navy); font-family:"DM Serif Display",Georgia,serif; font-size:clamp(40px,3vw,60px); font-weight:400; letter-spacing:-.029em; line-height:1.06; }
h1 em { color:var(--gold); font-weight:400; }
.hero-line { display:block; padding:.06em .04em .16em; margin:-.06em -.04em -.16em; white-space:nowrap; }
.hero-line + .hero-line { margin-top:10px; margin-left:7px; }
.intro { max-width:590px; margin:25px 0 30px; color:#263140; font-size:14px; line-height:1.65; }
.hero-actions { display:flex; gap:18px; }
.hero-art { position:absolute; z-index:1; top:-96px; right:0; width:100%; height:100vh; overflow:hidden; }
.hero-art img { position:absolute; z-index:0; width:100%; height:100%; object-fit:cover; object-position:center 70%; transform-origin:72% 44%; }
.has-js .hero-copy > * { opacity:0; animation:heroCopyReveal 1.7s var(--ease-premium) forwards; }
.has-js .hero-copy > * { animation-play-state:paused; }
.neural-ready .hero-copy > * { animation-play-state:running; }
.has-js .hero-copy > :nth-child(2) { animation-delay:3.15s; }
.has-js .hero-copy > :nth-child(3) { animation-delay:3.48s; }
.has-js .hero-copy h1 { opacity:1; animation:none; }
.has-js .hero-copy h1 .hero-line { opacity:1; -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 43%,rgba(0,0,0,.78) 47%,rgba(0,0,0,.22) 52%,transparent 58%,transparent 100%); mask-image:linear-gradient(90deg,#000 0%,#000 43%,rgba(0,0,0,.78) 47%,rgba(0,0,0,.22) 52%,transparent 58%,transparent 100%); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:240% 100%; mask-size:240% 100%; -webkit-mask-position:100% 0; mask-position:100% 0; will-change:mask-position; animation:scribeLine 2.65s cubic-bezier(.22,.72,.18,1) forwards; animation-play-state:paused; }
.neural-ready .hero-copy h1 .hero-line { animation-play-state:running; }
.has-js .hero-copy h1 .hero-line:first-child { animation-delay:.3s; }
.has-js .hero-copy h1 .hero-line:last-child { animation-delay:1.48s; }
.neural-scribe { position:absolute; z-index:4; inset:-18px; width:calc(100% + 36px); height:calc(100% + 36px); overflow:visible; pointer-events:none; mix-blend-mode:multiply; }
.has-js .hero-art img { animation:heroBreathe 28s ease-in-out 1.5s infinite alternate; }
.credibility-style-control { position:relative; z-index:4; display:flex; align-items:center; justify-content:flex-end; gap:12px; min-height:52px; padding:8px var(--page-gutter); color:#6b7680; font-size:9px; font-weight:700; letter-spacing:.085em; text-transform:uppercase; background:#fbf8f3; }
.credibility-style-toggle { display:flex; padding:4px; border:1px solid rgba(34,72,104,.13); border-radius:999px; background:rgba(255,255,255,.78); box-shadow:0 8px 22px rgba(21,48,70,.05); }
.credibility-style-toggle button { min-width:66px; height:31px; padding:0 13px; border:0; border-radius:999px; color:#5c6975; font:700 9px/1 "Inter",Arial,sans-serif; letter-spacing:.055em; text-transform:uppercase; background:transparent; cursor:pointer; transition:color .2s ease,background .2s ease,box-shadow .2s ease; }
.credibility-style-toggle button.is-active { color:#fff; background:var(--navy); box-shadow:0 5px 14px rgba(6,28,54,.2); }
.credibility-style-toggle button:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.credibility-strip { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:30px var(--page-gutter); overflow:hidden; color:#fff; background:linear-gradient(110deg,#061b35 0%,#0a2949 54%,#071f3b 100%); box-shadow:0 18px 45px rgba(6,28,54,.12); transition:color .28s ease,background .28s ease,box-shadow .28s ease; }
.credibility-strip::before { content:""; position:absolute; top:-135px; right:8%; width:330px; height:330px; border:1px solid rgba(199,138,43,.13); border-radius:50%; box-shadow:0 0 0 48px rgba(255,255,255,.018),0 0 0 96px rgba(199,138,43,.025); pointer-events:none; }
.credibility-item { position:relative; z-index:1; display:flex; align-items:center; min-width:0; padding:7px clamp(24px,2.4vw,46px); border-left:1px solid rgba(255,255,255,.12); }
.credibility-item:first-child { padding-left:0; border-left:0; }
.credibility-item:last-child { padding-right:0; }
.credibility-item p { display:flex; min-width:0; flex-direction:column; gap:7px; margin:0; }
.credibility-item strong { color:#e0a84d; font-family:"DM Serif Display",Georgia,serif; font-size:clamp(20px,1.45vw,26px); font-weight:400; line-height:1; letter-spacing:-.01em; }
.credibility-item small { color:rgba(245,248,251,.84); font-size:12px; font-weight:500; line-height:1.5; letter-spacing:.01em; }
.credibility-strip[data-style="light"] { color:var(--navy); border-top:1px solid rgba(199,138,43,.2); border-bottom:1px solid rgba(199,138,43,.2); background:linear-gradient(108deg,#fffdf9 0%,#f8f1e6 52%,#f5f8fa 100%); box-shadow:0 17px 42px rgba(32,50,66,.065),inset 0 1px 0 #fff; }
.credibility-strip[data-style="light"]::before { border-color:rgba(72,120,157,.09); box-shadow:0 0 0 48px rgba(72,120,157,.018),0 0 0 96px rgba(199,138,43,.025); }
.credibility-strip[data-style="light"] .credibility-item { border-left-color:rgba(6,28,54,.11); }
.credibility-strip[data-style="light"] .credibility-item strong { color:var(--navy); }
.credibility-strip[data-style="light"] .credibility-item small { color:#506070; }
.credibility-strip[data-style="gold"] { color:#fff; background:linear-gradient(112deg,#b9771e 0%,#ce9235 48%,#bd7f25 100%); box-shadow:0 18px 42px rgba(135,82,13,.2); }
.credibility-strip[data-style="gold"]::before { border-color:rgba(255,255,255,.17); box-shadow:0 0 0 48px rgba(255,255,255,.035),0 0 0 96px rgba(6,28,54,.025); }
.credibility-strip[data-style="gold"] .credibility-item { border-left-color:rgba(255,255,255,.23); }
.credibility-strip[data-style="gold"] .credibility-item strong { color:#fff; }
.credibility-strip[data-style="gold"] .credibility-item small { color:rgba(255,255,255,.88); }
.services-section { position:relative; display:grid; grid-template-columns:minmax(430px,1.12fr) minmax(0,2.35fr); gap:clamp(30px,3vw,56px); padding:88px var(--page-gutter) 104px; overflow:hidden; background:linear-gradient(118deg,#fbf7f0 0%,#f7f2e9 48%,#faf8f4 100%); }
.services-section::before { content:""; position:absolute; top:-310px; right:-170px; width:680px; height:680px; border:1px solid rgba(77,126,165,.1); border-radius:50%; box-shadow:0 0 0 70px rgba(77,126,165,.025),0 0 0 140px rgba(189,128,36,.022); pointer-events:none; }
.services-section::after { content:""; position:absolute; bottom:-260px; left:-140px; width:520px; height:420px; border:1px solid rgba(189,128,36,.09); border-radius:50%; transform:rotate(-12deg); pointer-events:none; }
.services-intro,.services-cards { position:relative; z-index:1; }
.has-js .services-intro { opacity:0; filter:blur(3px); transform:translateY(35px); transition:opacity 1.05s var(--ease-premium),filter 1.05s var(--ease-premium),transform 1.2s var(--ease-premium); }
.has-js .services-intro.is-visible { opacity:1; filter:none; transform:none; }
.services-intro { align-self:center; width:100%; max-width:none; }
.section-kicker { margin:0 0 25px; color:var(--gold); font-size:14px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.services-intro h2 { width:100%; margin:0; color:var(--navy); font:400 clamp(38px,2.65vw,52px)/1.04 "DM Serif Display",Georgia,serif; letter-spacing:-.028em; }
.section-summary { max-width:470px; margin:30px 0 31px; color:#3d4d5e; font-size:14px; line-height:1.72; }
.section-link { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:54px; padding:0 25px; border:1px solid var(--gold); border-radius:999px; color:#fff; font-size:10px; font-weight:700; letter-spacing:.055em; text-decoration:none; text-transform:uppercase; background:var(--gold); box-shadow:0 9px 22px rgba(172,111,27,.18),inset 0 1px 0 rgba(255,255,255,.2); transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease; }
.section-link i { color:#fff; font-size:9px; transition:transform .2s ease; }.section-link:hover { border-color:#ae731e; background:#ae731e; box-shadow:0 12px 27px rgba(148,91,14,.26); transform:translateY(-2px); }.section-link:hover i { transform:translateX(4px); }
.services-cards { min-width:0; }
.service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.service-card { position:relative; display:flex; min-height:390px; flex-direction:column; padding:0; overflow:hidden; border:1px solid rgba(36,69,99,.1); border-radius:22px; background:rgba(255,255,255,.72); box-shadow:0 18px 48px rgba(19,43,64,.055),inset 0 1px 0 rgba(255,255,255,.95); backdrop-filter:blur(12px); transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .3s ease; }
.has-js .service-card { opacity:0; filter:blur(3px); transform:translate3d(0,38px,0); transition:opacity 1.05s var(--ease-premium),filter 1.05s var(--ease-premium),transform 1.2s var(--ease-premium),border-color .28s ease,box-shadow .28s ease,background .3s ease; transition-delay:var(--service-delay,0ms); }
.has-js .service-card.is-visible { opacity:1; filter:none; transform:none; }
.has-js .service-card.is-visible:hover { transform:translateY(-7px); }
.service-card::before { content:""; position:absolute; top:-55px; right:-55px; width:145px; height:145px; border-radius:50%; background:radial-gradient(circle,rgba(123,165,197,.13),transparent 70%); transition:transform .35s ease; }
.service-card:hover { border-color:rgba(189,128,36,.28); box-shadow:0 25px 65px rgba(19,43,64,.1),inset 0 1px 0 #fff; transform:translateY(-7px); }
.service-card:hover::before { transform:scale(1.25); }
.service-card-header { padding:27px 27px 0; transition:padding .3s ease,background .3s ease; }
.service-card-body { display:flex; flex:1; flex-direction:column; padding:0 27px 24px; transition:padding .3s ease; }
.service-icon { position:relative; display:grid; width:58px; height:58px; place-items:center; margin-bottom:24px; border:1px solid rgba(80,132,173,.15); border-radius:18px; color:#1d5987; font-size:22px; background:linear-gradient(145deg,#f7fbfe,#e5f0f7); box-shadow:0 8px 20px rgba(37,83,117,.07); transition:color .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease; }
.service-card h3 { margin:0 0 17px; color:var(--navy); font:400 clamp(22px,1.55vw,29px)/1.05 "DM Serif Display",Georgia,serif; letter-spacing:-.02em; transition:color .3s ease,margin .3s ease; }
.service-card p { margin:0 0 25px; color:#465364; font-size:12px; line-height:1.7; transition:font-size .3s ease; }
.service-card-body > a { display:inline-flex; align-items:center; gap:12px; margin-top:auto; color:var(--navy); font-size:9px; font-weight:700; letter-spacing:.06em; text-decoration:none; text-transform:uppercase; transition:font-size .3s ease; }
.service-card-body > a i { color:var(--gold); transition:transform .2s ease; }.service-card-body > a:hover i { transform:translateX(4px); }
.service-grid-editorial .service-card { overflow:hidden; border-color:rgba(189,128,36,.2); background:linear-gradient(155deg,#fffdf9 0%,#fbf4e8 100%); box-shadow:inset 0 4px 0 var(--gold),0 22px 55px rgba(62,43,16,.075); }
.service-grid-editorial .service-card::before { top:auto; right:auto; bottom:-95px; left:-70px; width:230px; height:230px; border:1px solid rgba(189,128,36,.13); background:none; }
.service-grid-editorial .service-card-header { position:relative; z-index:1; padding:31px 29px 0; }
.service-grid-editorial .service-icon { width:46px; height:46px; margin-bottom:31px; border:0; border-radius:50%; color:#fff; font-size:17px; background:var(--gold); box-shadow:0 9px 22px rgba(189,128,36,.23); }
.has-js .service-card.is-visible .service-icon { animation:signalPulse 5.8s ease-out calc(var(--service-delay,0ms) + 1.1s) infinite; }
.service-grid-editorial .service-card h3 { margin-bottom:20px; color:var(--navy); font-size:clamp(25px,1.7vw,31px); line-height:1.02; }
.service-grid-editorial .service-card-body { position:relative; z-index:1; padding:0 29px 28px; }
.service-grid-editorial .service-card p { color:#425163; font-size:14px; line-height:1.72; }
.service-grid-editorial .service-card-body > a { width:max-content; gap:15px; padding-bottom:5px; border-bottom:1px solid rgba(189,128,36,.45); font-size:11px; }
.pathways-section { position:relative; display:grid; grid-template-columns:minmax(430px,1.12fr) minmax(0,2.35fr); gap:clamp(30px,3vw,56px); padding:118px var(--page-gutter) 126px; overflow:hidden; background:#fffdfa; }
.pathways-section::before { content:""; position:absolute; top:0; right:var(--page-gutter); left:var(--page-gutter); height:1px; background:linear-gradient(90deg,rgba(199,138,43,.46),rgba(199,138,43,.08) 42%,transparent 82%); }
.pathways-section::after { content:""; position:absolute; bottom:-275px; left:-170px; width:520px; height:520px; border:1px solid rgba(62,111,149,.065); border-radius:50%; box-shadow:0 0 0 72px rgba(199,138,43,.018); pointer-events:none; }
.pathways-intro,.pathways-list { position:relative; z-index:1; }
.pathways-intro { align-self:start; width:100%; max-width:none; }
.pathways-intro .section-kicker { margin-bottom:28px; }
.pathways-intro h2 { max-width:520px; margin:0; color:var(--navy); font:400 clamp(38px,2.8vw,55px)/1.02 "DM Serif Display",Georgia,serif; letter-spacing:-.028em; }
.pathways-intro h2 em { color:var(--gold); font-weight:400; }
.pathways-intro > p:not(.section-kicker) { max-width:470px; margin:31px 0 34px; color:#405163; font-size:14px; line-height:1.75; }
.pathways-cta span { color:#fff; font-size:14px; transition:transform .2s ease; }
.pathways-cta:hover span { transform:translateX(5px); }
.pathways-list { border-top:1px solid rgba(6,28,54,.17); }
.pathway-row { position:relative; display:grid; grid-template-columns:minmax(220px,.9fr) minmax(270px,1.35fr) auto; gap:clamp(26px,3vw,56px); align-items:center; min-height:132px; padding:27px 4px; border-bottom:1px solid rgba(6,28,54,.14); color:inherit; text-decoration:none; transition:padding .25s ease,background .25s ease,border-color .25s ease; }
.pathway-row::after { content:""; position:absolute; right:0; bottom:-1px; left:0; height:1px; background:linear-gradient(90deg,var(--gold),rgba(199,138,43,.28) 55%,transparent); transform:scaleX(0); transform-origin:left center; }
.pathway-heading span { display:block; margin-bottom:9px; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.095em; text-transform:uppercase; }
.pathway-heading h3 { margin:0; color:var(--navy); font:400 clamp(25px,1.75vw,33px)/1.05 "DM Serif Display",Georgia,serif; letter-spacing:-.02em; }
.pathway-row > p { max-width:460px; margin:0; color:#536171; font-size:13px; line-height:1.7; }
.pathway-action { display:inline-flex; align-items:center; gap:13px; color:var(--navy); font-size:9px; font-weight:700; letter-spacing:.065em; text-transform:uppercase; white-space:nowrap; }
.pathway-action b { color:var(--gold); font-size:14px; font-weight:400; transition:transform .22s ease; }
.pathway-row:hover { padding-right:14px; padding-left:14px; border-bottom-color:rgba(199,138,43,.4); background:linear-gradient(90deg,rgba(248,241,229,.42),rgba(255,255,255,0)); }
.pathway-row:hover .pathway-action b { transform:translateX(5px); }
.has-js .pathways-intro { opacity:0; filter:blur(4px); transform:translate3d(0,34px,0); transition:opacity 1.15s cubic-bezier(.22,1,.36,1),filter 1.15s cubic-bezier(.22,1,.36,1),transform 1.25s cubic-bezier(.22,1,.36,1); }
.has-js .pathways-intro.is-visible { opacity:1; filter:blur(0); transform:none; }
.has-js .pathway-row { opacity:0; filter:blur(4px); transform:perspective(1000px) translate3d(0,54px,0) rotateX(-7deg); transform-origin:center bottom; transition:opacity 1.15s cubic-bezier(.22,1,.36,1),filter 1.15s cubic-bezier(.22,1,.36,1),transform 1.35s cubic-bezier(.22,1,.36,1),padding .25s ease,background .25s ease,border-color .25s ease; transition-delay:var(--reveal-delay,0ms); }
.has-js .pathway-row .pathway-heading,.has-js .pathway-row > p,.has-js .pathway-row .pathway-action { opacity:0; transform:translateY(15px); transition:opacity .95s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1); transition-delay:calc(var(--reveal-delay,0ms) + 220ms); }
.has-js .pathway-row.is-visible { opacity:1; filter:blur(0); transform:none; }
.has-js .pathway-row.is-visible::after { transform:scaleX(1); transition:transform 1.55s cubic-bezier(.22,1,.36,1); transition-delay:calc(var(--reveal-delay,0ms) + 260ms); }
.has-js .pathway-row.is-visible .pathway-heading,.has-js .pathway-row.is-visible > p,.has-js .pathway-row.is-visible .pathway-action { opacity:1; transform:none; }
@keyframes heroCopyReveal { from { opacity:0; filter:blur(1.5px); transform:translateY(14px); } to { opacity:1; filter:blur(0); transform:none; } }
@keyframes scribeLine { from { -webkit-mask-position:100% 0; mask-position:100% 0; } to { -webkit-mask-position:0 0; mask-position:0 0; } }
@keyframes heroBreathe { 0% { transform:scale(1); } 100% { transform:scale(1.006) translate3d(-2px,-1px,0); } }
@keyframes signalPulse { 0%,72%,100% { box-shadow:0 9px 22px rgba(189,128,36,.23),0 0 0 0 rgba(199,138,43,0); } 82% { box-shadow:0 9px 22px rgba(189,128,36,.23),0 0 0 7px rgba(199,138,43,.08); } 93% { box-shadow:0 9px 22px rgba(189,128,36,.23),0 0 0 12px rgba(199,138,43,0); } }
@media (min-width:901px) and (min-aspect-ratio:2/1) { .hero-art img{object-position:center 70%} }
@media (max-width:1200px) { .services-section{grid-template-columns:1fr;gap:40px}.services-intro{max-width:680px}.section-summary{max-width:570px}.pathways-section{grid-template-columns:1fr;gap:60px}.pathways-intro{max-width:680px}.pathways-intro>p:not(.section-kicker){max-width:570px} }
@media (max-width:1050px) { .credibility-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding-block:22px}.credibility-item{padding:14px 24px}.credibility-item:nth-child(3){border-left:0}.credibility-item:first-child,.credibility-item:nth-child(3){padding-left:0}.credibility-item:nth-child(3),.credibility-item:nth-child(4){border-top:1px solid rgba(255,255,255,.1)} }
@media (max-width:900px) { :root{--page-gutter:25px}.page-shell{min-height:100vh}.site-header{height:90px;padding:0 var(--page-gutter)}.navigation,.header-cta{display:none}.menu-toggle{display:grid;gap:5px;margin-left:auto;padding:8px;background:none;border:0}.menu-toggle i{display:block;width:25px;height:2px;background:var(--navy)}.hero{display:block;padding:82px var(--page-gutter) 55px;padding-left:calc(var(--page-gutter) + 6px);min-height:854px}.hero-copy{width:100%;max-width:570px}.hero-art{top:-90px;width:100%;height:900px}.hero-art img{transform:none}.desktop-only{display:none}h1{font-size:clamp(43px,8vw,54px)}.intro{max-width:530px;font-size:13px}.hero-actions{gap:14px}.button{padding:0 20px;font-size:10px} }
@media (max-width:700px) { .hero-line{white-space:normal} }
@media (max-width:900px) { .services-section{padding-top:70px;padding-bottom:78px}.service-grid{grid-template-columns:repeat(3,minmax(220px,1fr));overflow-x:auto;padding:4px 4px 25px;margin-inline:-4px;scroll-snap-type:x mandatory;scrollbar-width:none}.service-grid::-webkit-scrollbar{display:none}.service-card{min-height:360px;scroll-snap-align:start} }
@media (max-width:800px) { .pathways-section{gap:48px;padding-top:86px;padding-bottom:90px}.pathway-row{grid-template-columns:1fr auto;gap:18px 26px;padding-block:24px}.pathway-row>p{grid-column:1 / -1;grid-row:2}.pathway-action{grid-column:2;grid-row:1}.pathway-row:hover{padding-inline:4px} }
@media (max-width:500px) { .wordmark{width:175px}.hero{padding-top:27px}h1{font-size:42px}.hero-art{top:285px}.button{min-height:49px}.hero-actions .button{padding-inline:13px} }
@media (max-width:600px) { .credibility-strip{grid-template-columns:1fr;padding-block:18px}.credibility-item,.credibility-item:first-child,.credibility-item:nth-child(3){padding:15px 0;border-top:1px solid rgba(255,255,255,.1);border-left:0}.credibility-item:first-child{border-top:0}.credibility-item strong{font-size:22px}.credibility-item small{font-size:12px} }
@media (max-width:600px) { .credibility-style-control{justify-content:space-between;padding-inline:var(--page-gutter)}.credibility-style-toggle button{min-width:62px;padding-inline:10px}.credibility-strip[data-style="light"] .credibility-item{border-top-color:rgba(6,28,54,.1)}.credibility-strip[data-style="gold"] .credibility-item{border-top-color:rgba(255,255,255,.22)} }
@media (max-width:500px) { .services-section{gap:32px;padding-top:60px;padding-bottom:65px}.services-intro h2{font-size:39px}.section-summary{font-size:13px}.section-link{min-height:52px;padding-inline:22px}.service-grid{grid-template-columns:repeat(3,82vw)} }
@media (max-width:500px) { .pathways-section{gap:40px;padding-top:72px;padding-bottom:76px}.pathways-intro h2{font-size:41px}.pathways-intro>p:not(.section-kicker){font-size:13px}.pathway-heading h3{font-size:27px}.pathway-row>p{font-size:12px}.pathway-action{font-size:8px} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.neural-scribe{display:none}.has-js .hero-copy>*,.has-js .hero-copy h1 .hero-line,.has-js .hero-art img,.has-js .service-card.is-visible .service-icon{opacity:1;-webkit-mask:none;mask:none;filter:none;transform:none;animation:none}.has-js .services-intro,.has-js .service-card,.has-js .pathways-intro,.has-js .pathway-row,.has-js .pathway-row .pathway-heading,.has-js .pathway-row>p,.has-js .pathway-row .pathway-action{opacity:1;filter:none;transform:none;transition:none}.has-js .pathway-row::after{transform:scaleX(1);transition:none} }

/* Remaining homepage */
.process-section { position:relative; padding:118px var(--page-gutter) 126px; color:#fff; overflow:hidden; background:linear-gradient(125deg,#061b34 0%,#092744 62%,#0b3152 100%); }
.process-section::before { content:""; position:absolute; width:580px; height:580px; top:-340px; right:-100px; border:1px solid rgba(211,156,67,.16); border-radius:50%; box-shadow:0 0 0 72px rgba(255,255,255,.014),0 0 0 144px rgba(199,138,43,.025); }
.process-heading { position:relative; z-index:1; display:grid; grid-template-columns:1.12fr 1fr; column-gap:60px; align-items:end; padding-bottom:67px; }
.process-heading .section-kicker { grid-column:1 / -1; color:#dca044; }
.process-heading h2,.practice-copy h2,.stories-heading h2,.faq-intro h2,.insights-heading h2,.contact-copy h2 { margin:0; font:400 clamp(42px,3.4vw,66px)/1.01 "DM Serif Display",Georgia,serif; letter-spacing:-.03em; }
.process-heading h2 em,.practice-copy h2 em,.stories-heading h2 em,.faq-intro h2 em,.insights-heading h2 em,.contact-copy h2 em { color:var(--gold); font-weight:400; }
.process-heading > p:last-child { max-width:535px; justify-self:end; margin:0 0 4px; color:rgba(239,244,248,.72); font-size:14px; line-height:1.78; }
.process-steps { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0; border-top:1px solid rgba(255,255,255,.18); list-style:none; }
.process-step { position:relative; min-height:355px; padding:31px 31px 25px 0; border-right:1px solid rgba(255,255,255,.14); }
.process-step:not(:first-child) { padding-left:31px; }
.process-step:last-child { padding-right:0; border-right:0; }
.process-step > span { display:block; margin-bottom:67px; color:#d99b3a; font:italic 400 21px/1 "DM Serif Display",Georgia,serif; }
.process-step > div p { margin:0 0 9px; color:rgba(232,239,245,.55); font-size:9px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.process-step h3 { margin:0 0 28px; color:#fff; font:400 clamp(28px,2vw,37px)/1 "DM Serif Display",Georgia,serif; }
.process-step > p { max-width:295px; margin:0; color:rgba(235,241,246,.71); font-size:13px; line-height:1.75; }
.process-step::after { content:""; position:absolute; top:-4px; left:0; width:7px; height:7px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 6px rgba(199,138,43,.1); }

.practice-section { display:grid; grid-template-columns:minmax(0,1.22fr) minmax(420px,.78fr); min-height:760px; background:#f8f3eb; }
.practice-image { position:relative; min-height:720px; overflow:hidden; }
.practice-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 62%,rgba(248,243,235,.14)),linear-gradient(0deg,rgba(6,28,54,.24),transparent 35%); pointer-events:none; }
.practice-image img { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform 1.8s var(--ease-premium); }
.practice-image.is-visible img { transform:scale(1.018); }
.practice-image > p { position:absolute; z-index:2; right:35px; bottom:34px; margin:0; padding:17px 20px; border-radius:14px; color:#fff; font-size:11px; line-height:1.55; background:rgba(6,28,54,.88); backdrop-filter:blur(10px); }
.practice-image > p span { display:block; margin-bottom:3px; color:#e4aa4e; font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.practice-copy { display:flex; flex-direction:column; justify-content:center; padding:88px clamp(50px,5vw,96px); }
.practice-copy h2 { color:var(--navy); }
.practice-lead { max-width:500px; margin:31px 0 17px; color:var(--navy); font:400 23px/1.45 "DM Serif Display",Georgia,serif; }
.practice-copy > p:not(.section-kicker):not(.practice-lead) { max-width:510px; margin:0; color:#455466; font-size:14px; line-height:1.82; }
.practice-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:42px 0 35px; padding:25px 0; border-top:1px solid rgba(6,28,54,.13); border-bottom:1px solid rgba(6,28,54,.13); }
.practice-facts div { padding:0 18px; border-left:1px solid rgba(6,28,54,.1); }
.practice-facts div:first-child { padding-left:0; border-left:0; }
.practice-facts dt { color:var(--gold); font:400 22px/1.1 "DM Serif Display",Georgia,serif; }
.practice-facts dd { margin:7px 0 0; color:#526171; font-size:10px; line-height:1.45; }
.text-link { display:inline-flex; width:max-content; align-items:center; gap:16px; padding-bottom:7px; border-bottom:1px solid rgba(199,138,43,.55); color:var(--navy); font-size:10px; font-weight:700; letter-spacing:.065em; text-decoration:none; text-transform:uppercase; }
.text-link span { color:var(--gold); font-size:14px; transition:transform .2s ease; }
.text-link:hover span { transform:translateX(5px); }

.stories-section { position:relative; display:grid; grid-template-columns:minmax(360px,.75fr) minmax(0,1.25fr); gap:clamp(50px,7vw,130px); padding:122px var(--page-gutter) 132px; color:#fff; overflow:hidden; background:#071d37; }
.stories-section::after { content:""; position:absolute; width:540px; height:540px; right:-230px; bottom:-300px; border:1px solid rgba(199,138,43,.14); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.013); }
.stories-heading,.story-stage { position:relative; z-index:1; }
.stories-heading h2 { color:#fff; }
.story-controls { display:flex; gap:10px; margin-top:45px; }
.story-controls button { width:49px; height:49px; border:1px solid rgba(255,255,255,.22); border-radius:50%; color:#fff; font-size:17px; background:transparent; cursor:pointer; transition:.2s ease; }
.story-controls button:hover { border-color:var(--gold); color:var(--navy); background:var(--gold); transform:translateY(-2px); }
.story-stage { min-height:420px; padding:61px 0 56px clamp(35px,5vw,90px); border-left:1px solid rgba(255,255,255,.15); }
.story { position:absolute; inset:61px 0 70px clamp(35px,5vw,90px); display:flex; flex-direction:column; justify-content:space-between; opacity:0; visibility:hidden; transform:translateY(18px); transition:opacity .65s ease,transform .85s var(--ease-premium),visibility .65s; }
.story.is-active { opacity:1; visibility:visible; transform:none; }
.story blockquote { max-width:860px; margin:0; color:#f8f4ec; font:400 clamp(30px,2.55vw,49px)/1.24 "DM Serif Display",Georgia,serif; letter-spacing:-.02em; }
.story p { display:flex; flex-direction:column; gap:5px; margin:34px 0 0; }
.story strong { color:#e2a64a; font-size:12px; letter-spacing:.04em; }
.story p span { color:rgba(235,241,246,.55); font-size:10px; letter-spacing:.055em; text-transform:uppercase; }
.story-progress { position:absolute; right:0; bottom:0; left:clamp(35px,5vw,90px); display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.story-progress i { height:2px; background:rgba(255,255,255,.15); }
.story-progress i.is-active { background:var(--gold); }

.faq-section { display:grid; grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr); gap:clamp(70px,9vw,170px); padding:128px var(--page-gutter); background:#fffdfa; }
.faq-intro { align-self:start; position:sticky; top:45px; }
.faq-intro h2 { color:var(--navy); }
.faq-intro > p:not(.section-kicker) { max-width:520px; margin:31px 0 35px; color:#455567; font-size:14px; line-height:1.78; }
.faq-list { border-top:1px solid rgba(6,28,54,.18); }
.faq-item { border-bottom:1px solid rgba(6,28,54,.16); }
.faq-item button { display:grid; grid-template-columns:1fr 24px; gap:30px; width:100%; align-items:center; padding:28px 0; border:0; color:var(--navy); text-align:left; background:none; cursor:pointer; }
.faq-item button span { font:400 clamp(20px,1.45vw,27px)/1.2 "DM Serif Display",Georgia,serif; }
.faq-item button i { position:relative; width:22px; height:22px; }
.faq-item button i::before,.faq-item button i::after { content:""; position:absolute; top:10px; left:3px; width:16px; height:1px; background:var(--gold); transition:transform .35s var(--ease-premium); }
.faq-item button i::after { transform:rotate(90deg); }
.faq-item.is-open button i::after { transform:rotate(0deg); }
.faq-answer { display:grid; grid-template-rows:0fr; transition:grid-template-rows .55s var(--ease-premium); }
.faq-answer > p { min-height:0; overflow:hidden; max-width:710px; margin:0; color:#526171; font-size:13px; line-height:1.78; }
.faq-item.is-open .faq-answer { grid-template-rows:1fr; }
.faq-item.is-open .faq-answer > p { padding-bottom:29px; }

.insights-section { padding:122px var(--page-gutter) 132px; background:linear-gradient(125deg,#f6f1e8,#fbf9f5 62%,#f3f6f7); }
.insights-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:58px; }
.insights-heading h2 { color:var(--navy); }
.insights-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:18px; }
.insight-card { min-width:0; color:inherit; text-decoration:none; background:#fff; box-shadow:0 20px 55px rgba(20,43,62,.07); transition:transform .5s var(--ease-premium),box-shadow .4s ease; }
.insight-card:hover { transform:translateY(-8px); box-shadow:0 29px 72px rgba(20,43,62,.12); }
.insight-image { height:275px; overflow:hidden; }
.insight-card-large .insight-image { height:330px; }
.insight-image img { width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease-premium); }
.insight-card:hover img { transform:scale(1.035); }
.insight-card > div:last-child { padding:29px 29px 32px; }
.insight-card > div > p { margin:0 0 14px; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.insight-card h3 { margin:0; color:var(--navy); font:400 clamp(23px,1.7vw,32px)/1.08 "DM Serif Display",Georgia,serif; letter-spacing:-.018em; }
.insight-card > div > span { display:block; margin-top:30px; color:var(--navy); font-size:9px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }

.contact-section { position:relative; display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(70px,10vw,180px); padding:130px var(--page-gutter); overflow:hidden; background:linear-gradient(120deg,#ead4aa 0%,#d9a858 48%,#c58b2d 100%); }
.contact-section::before { content:""; position:absolute; width:620px; height:620px; left:-320px; bottom:-390px; border:1px solid rgba(255,255,255,.32); border-radius:50%; box-shadow:0 0 0 80px rgba(255,255,255,.055); }
.contact-copy,.contact-details { position:relative; z-index:1; }
.contact-copy .section-kicker { color:#66410d; }
.contact-copy h2 { color:var(--navy); }
.contact-copy h2 em { color:#fff; }
.contact-copy > p:not(.section-kicker) { max-width:660px; margin:31px 0 0; color:#27384a; font-size:14px; line-height:1.8; }
.contact-copy .contact-note { font-weight:600; }
.button-gold { gap:20px; margin-top:36px; color:#fff; background:var(--navy); box-shadow:0 15px 30px rgba(6,28,54,.18); }
.button-gold span { font-size:15px; transition:transform .2s ease; }
.button-gold:hover span { transform:translateX(5px); }
.contact-details { align-self:center; padding:47px 49px; border:1px solid rgba(255,255,255,.45); border-radius:24px; background:rgba(255,255,255,.4); box-shadow:0 24px 60px rgba(83,51,8,.12); backdrop-filter:blur(12px); }
.contact-details > p { margin:0 0 20px; color:#8a5912; font-size:9px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.contact-details address { margin:0; color:var(--navy); font:normal 400 clamp(27px,2.1vw,39px)/1.2 "DM Serif Display",Georgia,serif; }
.contact-details dl { margin:36px 0 0; }
.contact-details dl div { display:grid; grid-template-columns:100px 1fr; padding:17px 0; border-top:1px solid rgba(6,28,54,.14); }
.contact-details dt { color:#654b29; font-size:10px; font-weight:700; text-transform:uppercase; }
.contact-details dd { margin:0; }
.contact-details a { color:var(--navy); font-size:13px; text-decoration:none; }

.contact-section { min-height:690px; transition:background .55s var(--ease-premium),color .4s ease; }
.contact-section::before { transition:border-color .5s ease,box-shadow .5s ease,opacity .5s ease; }
.contact-copy,.contact-details { transition:color .4s ease,background .5s var(--ease-premium),border-color .4s ease,box-shadow .5s ease,transform .55s var(--ease-premium); }
.contact-human-image { position:absolute; z-index:0; inset:0 0 0 50%; display:none; overflow:hidden; }
.contact-human-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f7f3ed 0%,rgba(247,243,237,.1) 24%,rgba(6,28,54,.18) 100%); }
.contact-human-image img { width:100%; height:100%; object-fit:cover; object-position:center; }

/* Option 1 — Human split */
.contact-section[data-contact-style="human"] { grid-template-columns:1fr 1fr; gap:0; padding-right:var(--page-gutter); background:#f7f3ed; }
.contact-section[data-contact-style="human"]::before { left:-300px; border-color:rgba(199,138,43,.18); box-shadow:0 0 0 80px rgba(199,138,43,.025); }
.contact-section[data-contact-style="human"] .contact-human-image { display:block; }
.contact-section[data-contact-style="human"] .contact-human-image img { width:106%; max-width:none; object-position:left center; }
.contact-section[data-contact-style="human"] .contact-copy { max-width:760px; padding-right:clamp(45px,6vw,110px); }
.contact-section[data-contact-style="human"] .contact-copy .section-kicker { color:var(--gold); }
.contact-section[data-contact-style="human"] .contact-copy h2 em { color:var(--gold); }
.contact-section[data-contact-style="human"] .contact-details { top:0; align-self:center; justify-self:start; width:min(410px,88%); margin:36px 0 0 clamp(24px,2.5vw,48px); padding:34px 38px; border-color:rgba(255,255,255,.72); background:rgba(255,253,249,.89); box-shadow:0 28px 70px rgba(6,28,54,.19); backdrop-filter:blur(15px); }

/* Option 2 — Midnight */
.contact-section[data-contact-style="midnight"] { color:#fff; background:radial-gradient(circle at 82% 20%,rgba(199,138,43,.14),transparent 31%),linear-gradient(122deg,#05172c,#082640 63%,#0b3151); }
.contact-section[data-contact-style="midnight"]::before { border-color:rgba(217,157,66,.2); box-shadow:0 0 0 80px rgba(255,255,255,.014),0 0 0 160px rgba(199,138,43,.018); }
.contact-section[data-contact-style="midnight"] .contact-copy .section-kicker { color:#dfa54a; }
.contact-section[data-contact-style="midnight"] .contact-copy h2 { color:#fff; }
.contact-section[data-contact-style="midnight"] .contact-copy h2 em { color:#dca044; }
.contact-section[data-contact-style="midnight"] .contact-copy > p:not(.section-kicker) { color:rgba(239,244,248,.72); }
.contact-section[data-contact-style="midnight"] .button-gold { color:var(--navy); background:#d99b3a; box-shadow:0 15px 34px rgba(0,0,0,.25); }
.contact-section[data-contact-style="midnight"] .contact-details { border-color:rgba(218,158,68,.32); color:#fff; background:rgba(255,255,255,.045); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 28px 70px rgba(0,0,0,.2); backdrop-filter:blur(6px); }
.contact-section[data-contact-style="midnight"] .contact-details > p { color:#dfa54a; }
.contact-section[data-contact-style="midnight"] .contact-details address,.contact-section[data-contact-style="midnight"] .contact-details a { color:#fff; }
.contact-section[data-contact-style="midnight"] .contact-details dt { color:rgba(255,255,255,.5); }
.contact-section[data-contact-style="midnight"] .contact-details dl div { border-color:rgba(255,255,255,.14); }

/* Option 3 — Editorial */
.contact-section[data-contact-style="editorial"] { grid-template-columns:1.28fr .72fr; align-items:end; min-height:720px; background:#fffdfa; }
.contact-section[data-contact-style="editorial"]::before { width:520px; height:520px; left:auto; right:-310px; bottom:-330px; border-color:rgba(199,138,43,.17); box-shadow:0 0 0 72px rgba(199,138,43,.025); }
.contact-section[data-contact-style="editorial"] .contact-copy h2 { max-width:850px; font-size:clamp(56px,5vw,94px); line-height:.94; }
.contact-section[data-contact-style="editorial"] .contact-copy h2 em { color:var(--gold); }
.contact-section[data-contact-style="editorial"] .contact-copy > p:not(.section-kicker) { max-width:580px; }
.contact-section[data-contact-style="editorial"] .contact-details { align-self:end; padding:34px 0 0; border:0; border-top:2px solid var(--gold); border-radius:0; background:transparent; box-shadow:none; backdrop-filter:none; }
.contact-section[data-contact-style="editorial"] .contact-details address { font-size:clamp(30px,2.5vw,47px); }
.contact-section[data-contact-style="editorial"] .contact-details dl div { grid-template-columns:85px 1fr; }

/* Option 4 — Gold atelier */
.contact-section[data-contact-style="gold"] { background:linear-gradient(120deg,#ead4aa 0%,#d9a858 48%,#c58b2d 100%); }
.contact-section[data-contact-style="gold"] .contact-copy h2 em { color:#fff; }

.site-footer { display:grid; grid-template-columns:.9fr 1.45fr; gap:70px; padding:76px var(--page-gutter) 28px; color:rgba(236,242,247,.72); background:#06192f; }
.footer-brand img { width:205px; filter:brightness(0) invert(1); opacity:.93; }
.footer-brand > p { max-width:330px; margin:22px 0 0; font-size:12px; line-height:1.7; }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:45px; }
.footer-links div { display:flex; flex-direction:column; gap:11px; }
.footer-links p { margin:0 0 10px; color:#d99d42; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.footer-links a { width:max-content; color:rgba(239,244,248,.74); font-size:12px; text-decoration:none; }
.footer-links a:hover { color:#fff; }
.footer-bottom { grid-column:1 / -1; display:flex; justify-content:space-between; margin-top:35px; padding-top:24px; border-top:1px solid rgba(255,255,255,.11); font-size:9px; }
.footer-bottom p { margin:0; }
.footer-bottom div { display:flex; gap:25px; }
.footer-bottom a { color:inherit; text-decoration:none; }

.has-js .reveal-block { opacity:0; filter:blur(3px); transform:translate3d(0,34px,0); transition:opacity 1.2s var(--ease-premium),filter 1.2s var(--ease-premium),transform 1.35s var(--ease-premium); transition-delay:var(--section-delay,0ms); }
.has-js .reveal-block.is-visible { opacity:1; filter:none; transform:none; }
.has-js .reveal-image { opacity:0; clip-path:inset(0 8% 0 0); transform:scale(1.015); transition:opacity 1.25s ease,clip-path 1.65s var(--ease-premium),transform 1.6s var(--ease-premium); }
.has-js .reveal-image.is-visible { opacity:1; clip-path:inset(0); transform:none; }

@media (max-width:1100px) {
  .process-heading { grid-template-columns:1fr; }
  .process-heading > p:last-child { justify-self:start; margin-top:28px; }
  .process-steps { grid-template-columns:repeat(2,1fr); }
  .process-step:nth-child(2) { border-right:0; }
  .process-step:nth-child(n+3) { border-top:1px solid rgba(255,255,255,.14); }
  .practice-section { grid-template-columns:1fr; }
  .practice-image { min-height:620px; }
  .stories-section,.faq-section { grid-template-columns:1fr; }
  .story-stage { min-height:390px; }
  .faq-intro { position:static; max-width:720px; }
  .insights-grid { grid-template-columns:1.25fr 1fr; }
  .insight-card:last-child { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1fr; }
  .insight-card:last-child .insight-image { height:auto; min-height:280px; }
}

@media (max-width:800px) {
  .process-section,.stories-section,.faq-section,.insights-section,.contact-section { padding-top:86px; padding-bottom:92px; }
  .process-steps { grid-template-columns:1fr; }
  .process-step,.process-step:not(:first-child) { min-height:0; padding:29px 0 36px; border-right:0; border-top:1px solid rgba(255,255,255,.14); }
  .process-step:first-child { border-top:0; }
  .process-step > span { margin-bottom:30px; }
  .practice-image { min-height:500px; }
  .practice-copy { padding:76px var(--page-gutter) 84px; }
  .stories-section { gap:35px; }
  .story-stage { min-height:440px; padding-left:28px; }
  .story { left:28px; }
  .story-progress { left:28px; }
  .insights-heading { align-items:start; flex-direction:column; }
  .insights-grid { grid-template-columns:1fr; }
  .insight-card:last-child { grid-column:auto; display:block; }
  .insight-card:last-child .insight-image { height:275px; min-height:0; }
  .contact-section { grid-template-columns:1fr; gap:55px; }
  .site-footer { grid-template-columns:1fr; }
}

@media (max-width:900px) {
  .navigation.is-open { position:absolute; top:78px; right:18px; left:18px; z-index:20; display:flex; align-items:stretch; flex-direction:column; gap:0; padding:16px 22px; border:1px solid rgba(6,28,54,.09); border-radius:18px; background:rgba(255,253,249,.97); box-shadow:0 24px 60px rgba(6,28,54,.15); backdrop-filter:blur(16px); }
  .navigation.is-open a { min-height:48px; border-bottom:1px solid rgba(6,28,54,.08); }
  .navigation.is-open a:last-child { border-bottom:0; }
  .menu-toggle i { transition:transform .25s ease; }
  .menu-toggle.is-open i:first-child { transform:translateY(3.5px) rotate(45deg); }
  .menu-toggle.is-open i:last-child { transform:translateY(-3.5px) rotate(-45deg); }
}

@media (max-width:560px) {
  .process-section,.stories-section,.faq-section,.insights-section,.contact-section { padding-top:72px; padding-bottom:76px; }
  .process-heading h2,.practice-copy h2,.stories-heading h2,.faq-intro h2,.insights-heading h2,.contact-copy h2 { font-size:40px; }
  .practice-image { min-height:390px; }
  .practice-image > p { right:18px; bottom:18px; }
  .practice-copy { padding-top:65px; padding-bottom:68px; }
  .practice-facts { grid-template-columns:1fr; gap:18px; }
  .practice-facts div,.practice-facts div:first-child { padding:0; border:0; }
  .story-stage { min-height:500px; }
  .story blockquote { font-size:28px; }
  .faq-section { gap:50px; }
  .insight-image,.insight-card-large .insight-image { height:245px; }
  .contact-details { padding:34px 27px; }
  .contact-details dl div { grid-template-columns:1fr; gap:7px; }
  .footer-links { grid-template-columns:1fr 1fr; gap:38px; }
  .site-footer { padding-top:62px; }
}

@media (max-width:800px) {
  .contact-section[data-contact-style="human"] { grid-template-columns:1fr; padding-right:var(--page-gutter); }
  .contact-section[data-contact-style="human"] .contact-copy { grid-row:1; padding-right:0; }
  .contact-section[data-contact-style="human"] .contact-human-image { position:relative; inset:auto; grid-row:2; height:340px; margin:52px calc(var(--page-gutter) * -1) 0; }
  .contact-section[data-contact-style="human"] .contact-human-image img { width:100%; object-position:58% center; }
  .contact-section[data-contact-style="human"] .contact-human-image::after { background:linear-gradient(180deg,#f7f3ed 0%,transparent 23%,rgba(6,28,54,.2)); }
  .contact-section[data-contact-style="human"] .contact-details { top:0; grid-row:3; justify-self:center; width:100%; margin-top:-76px; margin-left:0; }
  .contact-section[data-contact-style="editorial"] { grid-template-columns:1fr; align-items:start; }
  .contact-section[data-contact-style="editorial"] .contact-copy h2 { font-size:clamp(46px,13vw,67px); }
}

@media (prefers-reduced-motion:reduce) {
  .has-js .reveal-block,.has-js .reveal-image { opacity:1; filter:none; clip-path:none; transform:none; transition:none; }
  .practice-image img,.insight-image img,.story { transition:none; }
}
