@font-face{font-family:InterLocal;src:url('/assets/fonts/inter-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
.case-page h1,.case-page h2{font-weight:800;text-transform:lowercase}
.case-page .lead,.case-list-card p{font-family:Georgia,serif;font-style:italic}
.case-page .service-hero figure{height:auto;aspect-ratio:1;border-radius:22px;background:radial-gradient(ellipse at top right,#5b2118,#100d0b);padding:32px}
.case-page .service-hero img{height:100%;object-fit:contain;filter:none;border-radius:15px}
.case-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px;margin-bottom:64px}
.case-list-card{max-width:680px;border:1px solid #34312e;border-radius:22px;padding:30px;background:linear-gradient(135deg,#29130e,#0d0d0d)}
.case-list-card img{width:240px;height:240px;object-fit:contain;margin:0 auto 30px;border-radius:16px}
.case-list-card h2{font-size:clamp(1.8rem,3vw,2.8rem);margin-bottom:20px}
.case-list-card p{color:#c9c9c4;margin-bottom:24px}
.case-list-card>a:first-child{text-decoration:none}
.editorial-header nav{flex-wrap:wrap}
:root{color-scheme:dark;--ink:#080808;--paper:#f1f1ed;--muted:#b6b6b3;--line:#333330;--accent:#ff3345;--gutter:clamp(22px,5vw,80px)}
*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:InterLocal,Arial,sans-serif;line-height:1.65}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:focus-visible,a:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.8vw,5.8rem);font-weight:750;text-wrap:balance}h2{font-size:clamp(2rem,3.8vw,3.7rem);font-weight:650}h3{font-size:1.45rem}em{font-style:normal;color:var(--accent)}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;top:12px;left:20px;z-index:100;background:var(--paper);color:var(--ink);padding:10px;transform:translateY(-200%)}.skip:focus{transform:none}
.editorial-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px var(--gutter);border-bottom:1px solid var(--line);background:var(--ink)}.wordmark{font-size:clamp(1.25rem,2.3vw,1.8rem);font-weight:800;letter-spacing:-.08em;text-decoration:none;line-height:1}.wordmark span{color:var(--accent);font-size:.65em;margin-left:5px}.editorial-header nav{display:flex;align-items:center;gap:clamp(18px,3vw,46px)}.editorial-header nav a{text-decoration:none;font-size:.88rem}.editorial-header nav a:last-child{border-bottom:1px solid var(--accent)}.editorial-header a[aria-current]{color:var(--accent)}.page-wrap{max-width:1440px;margin:auto;padding:0 var(--gutter)}.breadcrumbs{padding-top:28px;font-size:.78rem;color:var(--muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 14px;list-style:none;padding:0;margin:0}.breadcrumbs li+li::before{content:'/';margin-right:14px;color:#72726f}.breadcrumbs a{text-decoration:none}.eyebrow{text-transform:uppercase;font-size:.71rem;letter-spacing:.13em;font-weight:650;color:var(--muted)}.lead{font-size:clamp(1.06rem,1.65vw,1.26rem);line-height:1.6;color:#c9c9c4}.action{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 22px;border:1px solid #e40014;border-radius:3px;background:#e40014;color:white;font-size:.9rem;font-weight:650;text-decoration:none;line-height:1.35;transition:background .2s}.action:hover{background:#b90010}.text-link{display:inline-block;font-size:.92rem;font-weight:550}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:32px}
.service-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:7%;align-items:center;padding:65px 0 95px}.service-hero h1{margin:22px 0 28px}.service-hero .action{margin-top:30px}.service-hero figure{position:relative;margin:0;overflow:hidden;border-radius:5px;height:480px}.service-hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}.service-hero figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 24px 20px;background:linear-gradient(transparent,#000);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:clamp(40px,6vw,110px);align-items:start;padding:0 0 100px}.prose{max-width:800px;font-size:1.02rem;color:#d1d1cb}.prose h2{font-size:clamp(1.7rem,2.5vw,2.3rem);margin:55px 0 22px;color:var(--paper)}.prose>h2:first-child{margin-top:0}.prose h3{font-size:1.15rem;margin:30px 0 12px;color:var(--paper)}.prose p+p{margin-top:18px}.prose ul,.prose ol{padding-left:24px;margin:20px 0}.prose li{margin:10px 0}.prose a,.reading-aside a{color:var(--paper)}.prose strong{color:var(--paper);font-weight:650}.prose .editorial-grid{display:grid;gap:12px}.prose .editorial-grid section{padding:6px 0 20px;border-bottom:1px solid var(--line)}.editorial-grid h3{margin-top:10px}.reading-aside{position:sticky;top:36px;border-top:2px solid var(--accent);padding-top:22px;color:var(--muted);font-size:.87rem}.reading-aside h2{font-size:1.45rem;color:var(--paper);margin:22px 0 14px}.reading-aside p{margin-bottom:18px}.reading-aside a{font-size:.87rem}.table-wrap{max-width:100%;overflow:auto;margin:22px 0;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;padding:17px;border-bottom:1px solid var(--line);vertical-align:top;min-width:145px}th{color:var(--paper);background:#171716}details{border-top:1px solid var(--line);padding:19px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{font-weight:600;color:var(--paper);cursor:pointer;line-height:1.4}details p{padding-top:15px}.closing{margin-top:55px;padding:32px;background:#151514;border:1px solid var(--line)}.closing h2{margin:15px 0 24px}.closing .action+p{margin-top:20px;font-size:.86rem}.guide-hero{max-width:1020px;padding:65px 0 75px}.guide-hero h1{font-size:clamp(2.4rem,4.6vw,4.6rem);margin:22px 0 30px}.guide-hero .lead{max-width:900px}.byline{font-size:.78rem;color:var(--muted);margin-top:28px}.toc{padding-left:20px}.toc li{margin-bottom:16px;line-height:1.5}.toc a{text-decoration:none}.back-atlas{display:inline-block;margin-top:20px}.example-label{display:inline-block;margin-bottom:18px!important;padding:5px 10px;border:1px solid #554b4b;color:#ffd3d7;font-size:.75rem}.related-list{list-style:none;padding:0!important}.related-list li{border-top:1px solid var(--line);padding:15px 0 0}.related-list a{font-weight:650}.related-list p{font-size:.9rem;margin-top:7px}.sources{margin-top:50px;border-top:1px solid var(--line);font-size:.85rem}.sources h2{font-size:1.35rem}.sources p{color:var(--muted)}code{font-size:.87em;overflow-wrap:anywhere}pre{padding:22px;border:1px solid var(--line);background:#151514;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:24px 0}
.atlas-hero{padding:70px 0 55px;max-width:1120px}.atlas-hero h1{max-width:1080px;margin:25px 0 32px;font-size:clamp(3rem,6.2vw,6.1rem)}.atlas-hero .lead{max-width:730px}.red-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:7px}.atlas-facts{display:flex;gap:30px;margin-top:60px;padding-top:20px;border-top:1px solid var(--line);font-size:.74rem;color:var(--muted);letter-spacing:.04em}.atlas-section{padding:70px 0;border-top:1px solid var(--line)}.section-heading{margin-bottom:36px}.section-heading h2{margin:18px 0 20px}.section-heading>p:last-child{max-width:650px;color:var(--muted)}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.route-card{border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;background:#101010}.route-number{font-size:.78rem;color:var(--accent)}.route-card h3{margin:30px 0 20px;font-size:1.45rem;line-height:1.17}.route-card>p{color:var(--muted);font-size:.91rem}.route-card ol{padding-left:19px;font-size:.85rem;margin:22px 0}.route-card li{padding-left:5px;margin-bottom:7px}.route-button{background:transparent;border:0;border-top:1px solid var(--line);padding:18px 0 0;font-size:.82rem;text-align:left;margin-top:auto;display:flex;justify-content:space-between}.route-button[aria-pressed=true]{color:var(--accent);font-weight:700}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}.guide-card{padding:30px 0;border-top:1px solid var(--line)}.guide-card h3{margin:18px 0 16px;font-size:1.65rem}.guide-card h3 a{display:flex;justify-content:space-between;text-decoration:none;gap:15px}.guide-card h3 a span{color:var(--accent)}.guide-card>p:last-child{font-size:.94rem;color:var(--muted)}.map-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px}.map-controls button{border:1px solid var(--line);background:transparent;padding:9px 15px;font-size:.78rem;border-radius:3px}.map-controls button[aria-pressed=true]{border-color:var(--accent)}#route-status{flex:1;font-size:.8rem;color:var(--muted);min-width:180px}#toggle-map{display:none}.atlas-explorer{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);border:1px solid var(--line)}.atlas-map{position:relative;height:580px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#231012 0%,#0d0d0d 65%);isolation:isolate}.atlas-map::before{content:'';position:absolute;inset:0;background-image:radial-gradient(#33332d .8px,transparent .8px);background-size:22px 22px;opacity:.45;z-index:-1}.map-caption,.map-footnote{position:absolute;left:22px;font-size:.64rem;color:#aaa9a4;letter-spacing:.07em}.map-caption{top:20px;text-transform:uppercase}.map-footnote{bottom:16px;right:16px;letter-spacing:0;font-size:.62rem}.map-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.map-lines line{stroke:#56514d;stroke-width:.2;transition:stroke .2s,stroke-width .2s}.map-lines line.is-active{stroke:var(--accent);stroke-width:.45}.atlas-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:1px solid #64605e;border-radius:50%;width:18px;height:18px;background:#131313;padding:0;transition:background .2s,border-color .2s}.atlas-node::after{content:'';position:absolute;inset:-12px}.atlas-node span{position:absolute;top:29px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.68rem;line-height:1.2;font-weight:550;padding:4px;background:#101010}.atlas-node[aria-pressed=true]{background:var(--accent);border-color:var(--accent);outline:5px solid #ff334529}.atlas-node[aria-pressed=true] span{color:var(--accent);font-weight:750}.atlas-node.is-route{box-shadow:0 0 0 5px #ff33452b;border-color:var(--accent)}.concept-detail{padding:28px;border-left:1px solid var(--line);background:#131312}.concept-panel h3{margin:24px 0 20px;font-size:1.9rem}.concept-panel>p:not(.eyebrow){font-size:.92rem;color:#c5c4bf}.concept-panel .text-link{margin:24px 0;color:var(--accent);font-size:.85rem}.concept-panel h4{font-size:.75rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.concept-panel .related-list{margin:17px 0 0}.concept-panel .related-list a{font-size:.83rem}.concept-panel .related-list p{font-size:.78rem;color:var(--muted);line-height:1.5}.atlas-closing{display:flex;justify-content:space-between;align-items:center;gap:40px;border-top:1px solid var(--line);padding:70px 0}.atlas-closing h2{margin:20px 0}.atlas-closing p{max-width:580px;color:var(--muted)}.atlas-closing>div:last-child{display:grid;gap:20px;flex-shrink:0}.atlas-credit{font-size:.73rem;color:var(--muted);padding:0 0 70px;max-width:800px}.editorial-footer{padding:55px var(--gutter) 25px;max-width:1440px;margin:auto;border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px;font-size:.83rem;color:var(--muted)}.editorial-footer .wordmark{color:var(--paper)}.editorial-footer p{margin-top:22px}.editorial-footer nav,.editorial-footer>div:last-of-type{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.editorial-footer a{text-decoration:none;overflow-wrap:anywhere}.editorial-footer .footer-note{grid-column:1/-1;margin-top:20px;font-size:.72rem}.error-page{padding-top:100px;padding-bottom:150px}.error-page h1{margin:25px 0;max-width:900px}.error-page p{margin-bottom:30px}
@media(max-width:1000px){.reading-layout{grid-template-columns:minmax(0,1fr) 210px;gap:40px}.service-hero figure{height:420px}.atlas-explorer{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr)}.atlas-node span{font-size:.58rem}.route-card{padding:20px}.atlas-map{height:600px}.atlas-closing{display:block}.atlas-closing>div:last-child{margin-top:30px;display:flex;align-items:center}}
@media(max-width:760px){html{scroll-padding-top:20px}.editorial-header{padding:22px;flex-wrap:wrap;gap:20px}.editorial-header nav{gap:24px}.editorial-header nav a{font-size:.78rem}.service-hero{grid-template-columns:1fr;padding:45px 0 60px;gap:32px}.service-hero figure{height:250px}.service-hero img{object-position:center 37%}.reading-layout{display:flex;flex-direction:column;gap:35px;padding-bottom:65px}.reading-aside{position:static;width:100%;order:-1}.reading-aside .toc{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.toc li{margin:0}.reading-aside .back-atlas{margin-top:10px}.guide-hero{padding:45px 0}.prose{width:100%;font-size:.97rem}.closing{padding:24px}.prose h2{margin-top:42px}.route-grid{grid-template-columns:1fr}.route-card h3{margin:18px 0;font-size:1.5rem}.route-card ol{margin:15px 0}.route-button{padding-top:16px}.atlas-hero{padding:45px 0}.atlas-hero h1{font-size:clamp(2.7rem,9.4vw,4.6rem)}.atlas-facts{gap:12px;justify-content:space-between;font-size:.63rem;margin-top:40px}.atlas-section{padding:45px 0}.guide-grid{grid-template-columns:1fr}.atlas-explorer{display:block}.atlas-map{height:460px}.atlas-node span{font-size:.59rem}.concept-detail{border-left:0;border-top:1px solid var(--line);padding:24px}.map-caption{font-size:.57rem}.map-footnote{font-size:.55rem}#toggle-map{display:block}.atlas-closing{padding:50px 0}.atlas-closing>div:last-child{flex-wrap:wrap}.editorial-footer{grid-template-columns:1fr 1fr;padding-top:40px}.editorial-footer>div:first-child{grid-column:1/-1}.editorial-footer p{margin-top:16px}}
@media(max-width:380px){.editorial-header nav{width:100%;justify-content:space-between}.reading-aside .toc{grid-template-columns:1fr}.atlas-node span{font-size:.54rem}.map-caption{left:12px}.hero-actions{gap:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body{background:white;color:black}.editorial-header,.editorial-footer,.reading-aside,.hero-actions,.map-controls,.atlas-explorer{display:none}.page-wrap{padding:0}.reading-layout{display:block}.prose,.lead,.eyebrow,.guide-card>p:last-child{color:#222}.guide-hero{padding:20px 0}.action{color:black;background:white;border-color:black}.prose h2,.prose h3,.prose a{color:black}.guide-grid,.route-grid{display:block}a{overflow-wrap:anywhere}.closing{background:white}.atlas-section{padding:25px 0}}
:root{--button-radius:18px}
html body :is(.action,button:not(.atlas-node)){border-radius:var(--button-radius)}

/* Complete button outline and balanced spacing in every route card. */
.route-card .route-button{border:1px solid var(--line);padding:14px 16px;min-height:48px;align-items:center;gap:12px;line-height:1.4;flex-shrink:0}
.route-card .route-button:hover,.route-card .route-button[aria-pressed=true]{border-color:var(--accent);background:#ff334510}
.route-card .route-button span{flex-shrink:0}

/* Stretch the map to match longer concept descriptions on desktop. */
@media(min-width:761px){.atlas-explorer .atlas-map{height:auto;min-height:580px;align-self:stretch}}
@media(min-width:761px) and (max-width:1000px){.atlas-explorer .atlas-map{min-height:600px}}
