:root{--navy:#293330;--navy2:#17201e;--gold:#f2b632;--cobalt:#d94a3d;--teal:#75b7a6;--paper:#ffffff;--ink:#202725;--muted:#68716e;--line:#dce1df;--serif:"Newsreader",serif;--sans:"Manrope",sans-serif;--mono:"DM Mono",monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:82px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}
a{color:inherit}
.site-nav{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4vw;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:800 15px/1.1 var(--sans);letter-spacing:.08em}
.brand small{display:block;font:500 9px/1.2 var(--mono);color:var(--muted);margin-top:4px}
.brand-spark{width:38px;height:38px;display:grid;place-items:center;background:var(--gold);color:var(--navy);font:800 18px var(--serif);border-radius:50%}
.site-nav nav{display:flex;gap:28px}
.site-nav nav a{font-size:13px;text-decoration:none;font-weight:600}
.nav-action{justify-self:end;background:var(--cobalt);color:#fff;padding:13px 18px;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.05em}
.report-hero{display:grid;grid-template-columns:3fr 1fr;min-height:650px;background:var(--navy);color:#fff}
.hero-main{padding:50px 5vw 60px}
.breadcrumb{font:11px var(--mono);color:#cbd3d0;margin:0 0 42px}
.breadcrumb span{padding:0 9px;color:var(--gold)}
.report-type,.chapter-label{font:500 12px var(--mono);letter-spacing:.12em;color:var(--gold);margin:0 0 16px}
.hero-main h1{font-size:clamp(52px,6.8vw,104px);letter-spacing:-.06em;line-height:.9;margin:0;max-width:980px}
.hero-meta{display:flex;align-items:center;gap:15px;margin-top:55px}
.identity-mark{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--navy);font:500 22px var(--serif)}
.hero-meta p{margin:0}
.hero-meta strong{display:block;font-size:16px}
.hero-meta span{display:block;font-size:13px;color:#d4dcda}
.hero-cover{background:#edf0ef;color:var(--navy2);padding:55px 2.4vw;overflow:hidden;display:grid;grid-template-rows:auto 1fr;align-items:start}
.hero-cover>p{font:500 11px var(--mono);letter-spacing:.12em}
.hero-marker{align-self:center;justify-self:center;width:min(100%,360px);aspect-ratio:1;background:var(--gold);color:var(--navy2);padding:32px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-2deg);box-shadow:14px 14px 0 var(--cobalt)}
.hero-marker span{font:700 12px var(--sans);letter-spacing:.1em}.hero-marker strong{align-self:center;font:500 clamp(95px,10vw,155px)/1 var(--serif);letter-spacing:-.1em}.hero-marker small{font:10px var(--mono);letter-spacing:.08em}
.abstract{display:grid;grid-template-columns:2.2fr .8fr;gap:8vw;padding:100px 7vw;background:#fff}
.abstract h2{background:var(--gold);font-size:26px;padding:10px 20px;margin:0 0 32px}
.abstract-copy p{max-width:850px;font-size:18px}
.abstract-copy .lead{font-family:var(--serif);font-size:30px;line-height:1.3;color:var(--navy)}
.brief-actions{padding-top:10px}
.brief-actions>a{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--navy);color:#fff;text-decoration:none;font-size:12px;font-weight:800;margin-bottom:14px}
.brief-actions>a.gold{background:var(--gold);color:var(--navy)}
.brief-actions>div{border-top:4px solid var(--navy);margin-top:38px;padding-top:16px}
.brief-actions strong{font:11px var(--mono)}
.brief-actions p{font:500 25px/1.25 var(--serif)}
.reader{display:grid;grid-template-columns:300px minmax(0,1fr);border-top:1px solid var(--line)}
.toc{align-self:start;position:sticky;top:78px;padding:45px 30px 60px 4vw;background:#f0f1ee;min-height:calc(100vh - 78px);border-right:1px solid var(--line)}
.toc>p{font:500 11px var(--mono);letter-spacing:.12em;margin:0 0 24px}
.toc a{display:grid;grid-template-columns:34px 1fr;gap:5px;padding:14px 0;border-top:1px solid #cdd1d5;text-decoration:none;font-size:11px;font-weight:700;line-height:1.35}
.toc a span{font:10px var(--mono);color:var(--muted)}
.toc a.active{color:var(--cobalt)}
.chapters{min-width:0}
.chapter,.applications,.studio,.method,.about{padding:100px clamp(35px,7vw,115px);border-bottom:1px solid var(--line);scroll-margin-top:78px}
.chapter h2,.applications>h2,.studio>h2,.method>h2{font-size:clamp(52px,7vw,108px);letter-spacing:-.06em;line-height:.86;margin:0 0 55px;color:var(--navy)}
.key-finding{background:var(--gold);padding:30px 38px;margin:0 0 40px}
.key-finding.cobalt{background:var(--cobalt);color:white}
.key-finding.teal{background:var(--teal);color:var(--navy2)}
.key-finding small{font:10px var(--mono);letter-spacing:.12em}
.key-finding blockquote{font:500 clamp(28px,3.5vw,48px)/1.08 var(--serif);margin:16px 0 0;max-width:950px}
.chapter>p:not(.chapter-label){font-size:18px;max-width:860px}
.field-note{margin-top:45px;padding:25px 30px;background:var(--navy);color:white;display:grid;grid-template-columns:.5fr 1fr;gap:30px}
.field-note>span{font:11px var(--mono);color:var(--gold)}
.field-note ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin:0;padding-left:20px}
.voice-lab{display:grid;grid-template-columns:.65fr 1.35fr;border:1px solid var(--navy);margin-top:48px}
.voice-controls{background:var(--navy);color:#fff;padding:30px}
.voice-controls>p{font:11px var(--mono);color:var(--gold)}
.source-chip{display:block;width:100%;text-align:left;border:0;border-top:1px solid rgba(255,255,255,.25);padding:16px 8px;background:transparent;color:white;font:600 14px var(--sans);cursor:pointer}
.source-chip:last-child{border-bottom:1px solid rgba(255,255,255,.25)}
.source-chip.active,.source-chip:hover{background:var(--gold);color:var(--navy);padding-left:18px}
.voice-output{padding:40px;display:flex;flex-direction:column;justify-content:center}
.voice-output small{font:10px var(--mono);color:var(--cobalt)}
.voice-output h3{font:500 clamp(32px,4vw,52px)/1.05 var(--serif);margin:15px 0}
.voice-output p{font-size:17px}
.knowledge-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;margin-top:50px;background:var(--navy);color:white;padding:30px}
.knowledge-flow div{padding:16px;display:flex;flex-direction:column}
.knowledge-flow b{font:11px var(--mono);color:var(--gold)}
.knowledge-flow strong{font:500 25px var(--serif);margin:28px 0 8px}
.knowledge-flow span{font-size:12px;color:#bdc7d7}
.knowledge-flow>i{align-self:center;color:var(--gold);font-style:normal}
.applications{background:#fff}
.application-tabs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--navy)}
.application-tabs button{min-height:70px;border:0;border-right:1px solid var(--navy);background:white;color:var(--navy);font:700 11px var(--sans);cursor:pointer;padding:14px}
.application-tabs button:last-child{border:0}
.application-tabs button.active,.application-tabs button:hover{background:var(--navy);color:white}
.application-panel{display:grid;grid-template-columns:1.25fr .75fr;background:var(--gold);padding:45px;margin-top:24px;gap:50px}
.application-panel>div+div{border-left:1px solid rgba(22,40,69,.35);padding-left:35px}
.application-panel p:first-child,.application-panel small{font:11px var(--mono)}
.application-panel h3{font:500 clamp(40px,5vw,70px)/1 var(--serif);margin:22px 0}
.application-panel>div>p:last-child{font-size:17px}
.application-panel ul{padding-left:18px}
.application-panel li{margin:8px 0}
.studio{background:var(--navy);color:white}
.studio>h2{color:white}
.studio-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px}
.goal{display:grid;grid-template-columns:45px 1fr;text-align:left;background:transparent;color:white;border:0;border-top:1px solid rgba(255,255,255,.3);padding:19px 8px;cursor:pointer}
.goal:last-child{border-bottom:1px solid rgba(255,255,255,.3)}
.goal span{font:11px var(--mono);grid-row:1/3}
.goal strong{font-size:18px}
.goal small{font-size:13px;color:#aeb8c9}
.goal.active,.goal:hover{background:var(--gold);color:var(--navy);padding-left:20px}
.goal.active small,.goal:hover small{color:var(--navy)}
.studio-result{background:white;color:var(--navy);padding:42px;display:flex;flex-direction:column;min-height:380px}
.studio-result small{font:11px var(--mono);color:var(--cobalt)}
.studio-result h3{font:500 clamp(42px,5vw,70px)/1 var(--serif);margin:30px 0 18px}
.studio-result p{font-size:17px}
.studio-result a{margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid var(--navy);padding-top:16px;text-decoration:none;font-size:11px;font-weight:800}
.method{background:#eef0f2}
.method-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--navy);border-left:1px solid var(--navy)}
.method-grid article{min-height:280px;padding:30px;border-right:1px solid var(--navy);border-bottom:1px solid var(--navy)}
.method-grid span{font:11px var(--mono);color:var(--cobalt)}
.method-grid h3{font:500 38px var(--serif);margin:55px 0 12px}
.method-grid p{max-width:380px}
.about{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;background:#fff}
.about-portrait{margin:0;min-height:560px;position:relative;overflow:hidden;background:var(--navy)}
.about-portrait img{width:100%;height:100%;min-height:560px;display:block;object-fit:cover;object-position:center 42%}
.about-portrait::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(23,32,30,.88))}
.about-portrait figcaption{position:absolute;z-index:1;left:28px;right:28px;bottom:25px;color:#fff;font:800 15px/1.25 var(--sans);letter-spacing:.1em}
.about-portrait figcaption span{display:block;margin-top:7px;font:10px/1.5 var(--mono);letter-spacing:.04em;color:rgba(255,255,255,.85)}
.about-copy h2{font:500 clamp(45px,5vw,72px)/1 var(--serif);margin:16px 0 30px;color:var(--navy)}
.about-copy>p:not(.chapter-label){font-size:17px}
.credentials{display:grid;grid-template-columns:1fr 1fr;margin-top:30px;border-top:1px solid var(--line)}
.credentials span{padding:14px 8px;border-bottom:1px solid var(--line);font-size:12px}
.conversation{padding:100px 7vw;background:var(--gold);color:var(--navy);display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:start}
.conversation-intro>p:first-child,.next-steps>p{font:11px var(--mono);letter-spacing:.12em}
.conversation h2{font-size:clamp(36px,5vw,70px);margin:25px 0 5px;letter-spacing:-.04em}
.conversation blockquote{font:500 clamp(42px,6vw,82px)/1 var(--serif);margin:0}
.conversation-copy{max-width:750px;margin:35px 0;font-size:18px}
.conversation a{display:inline-flex;gap:30px;border-bottom:2px solid var(--navy);padding:10px 0;text-decoration:none;font-size:11px;font-weight:800}
.conversation .email-link{font-size:15px}
.next-steps ol{list-style:none;margin:0 0 24px;padding:0}
.next-steps li{display:grid;grid-template-columns:45px 1fr;gap:10px;padding:16px 0;border-top:1px solid rgba(41,51,48,.4)}
.next-steps li:last-child{border-bottom:1px solid rgba(41,51,48,.4)}
.next-steps b{font:11px var(--mono)}
.next-steps strong{display:block;font:500 21px var(--serif);margin-bottom:4px}
.next-steps span{font-size:13px}
.start-note{background:var(--cobalt);color:white;border:0!important;padding:14px 18px!important}
.booking-panel{grid-column:1/-1;background:#fff;border:1px solid rgba(41,51,48,.28);padding:clamp(22px,4vw,52px);scroll-margin-top:96px;box-shadow:12px 12px 0 rgba(41,51,48,.12)}
.booking-heading{display:grid;grid-template-columns:.5fr 1.25fr 1fr;gap:28px;align-items:end;padding-bottom:28px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.booking-heading p{margin:0;font:11px var(--mono);letter-spacing:.12em;color:var(--cobalt)}
.booking-heading h3{margin:0;font:500 clamp(30px,4vw,52px)/1 var(--serif);color:var(--navy)}
.booking-heading span{font-size:14px;color:var(--muted)}
.booking-panel iframe{display:block;min-height:760px}
.booking-fallback{margin:18px 0 0;text-align:center;font-size:13px;color:var(--muted)}
.conversation .booking-fallback a{display:inline;border:0;padding:0;font-size:inherit;text-decoration:underline;text-underline-offset:3px}
footer{background:var(--navy2);color:white;padding:35px 4vw;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;font-size:11px}
footer a{text-decoration:none}
footer div{display:flex;flex-direction:column;gap:6px}
footer div:nth-child(2){text-align:center}
footer div:nth-child(3){text-align:right}
button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
@media(max-width:1000px){.site-nav{grid-template-columns:1fr auto}
.site-nav nav{display:none}
.report-hero{grid-template-columns:1fr}
.hero-cover{padding:35px 7vw}
.hero-marker{width:min(82vw,360px);transform:rotate(-1deg)}
.abstract{grid-template-columns:1fr}
.reader{grid-template-columns:1fr}
.toc{position:static;min-height:auto;display:flex;gap:18px;overflow:auto;padding:22px 5vw}
.toc>p{display:none}
.toc a{min-width:170px;border:0;border-left:1px solid var(--line);padding:6px 12px}
.chapter,.applications,.studio,.method,.about{padding:80px 6vw}
.knowledge-flow{grid-template-columns:1fr 1fr}
.knowledge-flow>i{display:none}
.application-tabs{grid-template-columns:1fr 1fr}
.application-tabs button:nth-child(2){border-right:0}
.application-tabs button{border-bottom:1px solid var(--navy)}
.application-panel,.about,.conversation{grid-template-columns:1fr}
.about-portrait,.about-portrait img{min-height:520px;max-height:720px}
.booking-heading{grid-template-columns:1fr 1.5fr}
.booking-heading span{grid-column:2}
}
@media(max-width:650px){.nav-action{font-size:0}
.nav-action:after{content:'CONTACT';font-size:11px}
.report-hero{min-height:0}
.hero-main{padding:36px 6vw 55px}
.hero-main h1{font-size:52px}
.hero-cover{padding:30px 6vw}
.abstract{padding:70px 6vw}
.abstract-copy .lead{font-size:25px}
.chapter h2,.applications>h2,.studio>h2,.method>h2{font-size:50px}
.field-note,.voice-lab,.studio-grid{grid-template-columns:1fr}
.field-note ul{grid-template-columns:1fr}
.knowledge-flow{grid-template-columns:1fr}
.application-tabs{grid-template-columns:1fr}
.application-tabs button{border-right:0}
.application-panel{padding:28px}
.application-panel>div+div{border-left:0;border-top:1px solid rgba(22,40,69,.35);padding:25px 0 0}
.method-grid{grid-template-columns:1fr}
.credentials{grid-template-columns:1fr}
.conversation{padding:80px 6vw}
.booking-panel{padding:18px;box-shadow:7px 7px 0 rgba(41,51,48,.12)}
.booking-heading{grid-template-columns:1fr;gap:10px}
.booking-heading span{grid-column:auto}
.booking-panel iframe{min-height:900px}
footer{grid-template-columns:1fr}
footer div:nth-child(2),footer div:nth-child(3){text-align:left}
}
