:root{--ink:#1a1714;--coal:#2c2824;--gold:#b08a3e;--cream:#f4efe6;--muted:#b9ad99;--border:#b08a3e45}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--ink);color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--cream);outline-offset:5px;box-shadow:0 0 0 2px var(--ink)}
#main:focus{outline:none}
.skip{position:fixed;top:-80px;z-index:20;background:var(--cream);color:var(--ink);padding:12px}
.skip:focus{top:0}
.review{font:10px/1.5 monospace;letter-spacing:1.7px;color:#c3b79f;background:#24201b;padding:8px 5%;display:flex;justify-content:space-between;border-bottom:1px solid var(--border)}
header{min-height:86px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--border);background:#1a1714f5;position:sticky;top:0;z-index:10}
.brand{width:192px;display:block}
.brand img,footer img{width:100%;display:block}
nav{display:flex;gap:38px;font-size:12px;letter-spacing:1px}
nav a:hover,.text-link:hover{color:#ddba70}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--gold);color:#16120c;border:1px solid #c7a363;padding:17px 25px;font-size:13px;font-weight:700;letter-spacing:.3px;transition:background .2s}
.button:hover{background:#d3af68}
.button span{font-size:20px;line-height:1}
.compact{padding:11px 20px;font-size:12px}
.eyebrow{font:10px/1.6 monospace;letter-spacing:2.5px;color:#c9ab71}
.line{display:inline-block;width:35px;height:1px;background:var(--gold)}
h1,h2,h3,p{margin:0}
h1,h2,h3,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400}
h1{font-size:clamp(72px,7.7vw,120px);line-height:.99;letter-spacing:-5px;margin:28px 0}
em{font-weight:400;color:#caaa68}
h1 em{font-style:normal}
h2{font-size:clamp(38px,4vw,62px);line-height:1.1;letter-spacing:-1.8px;margin-top:17px}
.lead{font-size:22px;line-height:1.45;color:#e9e0d2}
.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.requirements{color:#b7a88e;font-size:11px;margin-top:18px}
.requirements span{padding:0 9px}
.arch{position:absolute;inset:30px 8% 0;border:1px solid #b08a3e35;border-radius:280px 280px 0 0;box-shadow:0 0 0 16px #b08a3e06,0 0 0 17px #b08a3e20}
.arch:after{content:'';position:absolute;inset:20px;border:1px solid #b08a3e20;border-radius:260px 260px 0 0}
.halo{position:absolute;inset:10%;background:radial-gradient(ellipse,#b08a3e25,transparent 65%)}
.art-caption{position:absolute;right:0;bottom:30px;z-index:2;font:9px/1.9 monospace;letter-spacing:2px;writing-mode:vertical-rl;color:#d1bb90}
.art-caption span{color:#9b8865}
.principles{display:flex;justify-content:space-between;padding:25px 7%;border-bottom:1px solid var(--border);gap:20px;font:10px monospace;color:#b08a3e}
.principles b{margin-left:15px;color:#bfb4a2;font:12px Arial;font-weight:400}
.section{padding:100px 7%;scroll-margin-top:25px}
.section-top{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:48px}
.section-top>p{max-width:340px;color:var(--muted);font-size:14px}
.ledger-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}
.ledger-paper{background:#e5dac4;color:#30291f;padding:32px 36px;box-shadow:9px 9px 0 #b08a3e12;border:1px solid #f4efe66b;background-image:repeating-linear-gradient(0deg,#907b4d08 0px,#907b4d08 1px,transparent 1px,transparent 4px)}
.paper-head{display:flex;justify-content:space-between;font:8px monospace;letter-spacing:1.1px;border-bottom:1px solid #9c865780;padding-bottom:17px}
.ledger-paper h3{font-size:30px;margin:22px 0}
.ledger-row{display:flex;gap:20px;align-items:center;border-top:1px solid #9c865740;padding:22px 0}
.ledger-row time{font:11px monospace;color:#62533f}
.ledger-row b{font:17px Georgia}
.ledger-row p{font-size:11px;color:#62533f;margin-top:4px}
.ledger-row>span{margin-left:auto;font:8px monospace;color:#62533f}
.paper-foot{font-size:10px;border-top:1px solid #9c865780;padding-top:20px;color:#675a45}
.explain article{display:flex;gap:25px;padding:20px 0;border-bottom:1px solid var(--border)}
.explain article>span{font:11px monospace;color:#b08a3e;padding-top:7px}
.explain h3{font-size:25px}
.explain p{font-size:13px;color:var(--muted);margin-top:7px}
.text-link{display:inline-block;margin-top:22px;font-size:11px;color:#cfb784}
.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:#211c17;border-block:1px solid var(--border)}
.story-visual{position:relative}
.story-visual img{display:block;width:100%;border:1px solid var(--border)}
.story-stamp{position:absolute;bottom:-28px;left:25px;border:1px solid #b08a3e88;background:var(--ink);padding:16px 22px;font:14px Georgia;letter-spacing:3px}
.story-stamp span{font:8px monospace;letter-spacing:1.8px}
.story-copy>p{color:var(--muted);margin-top:20px;font-size:14px}
.story-copy blockquote{margin:28px 0 0;border-left:1px solid var(--gold);padding-left:20px;font-size:22px;font-style:italic}
.story-copy cite{display:block;font:10px Arial;color:#a99b83;margin-top:10px}
.fine{font-size:10px;color:#b7a991;margin-top:10px}
.boundaries{background:#211c17;border-block:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:10%}
.boundaries-copy>p{font-size:16px;color:#d2c6b2;margin-bottom:25px}
details{border-top:1px solid var(--border);padding:16px 0}
summary{cursor:pointer;font-size:13px}
details p{font-size:13px;color:var(--muted);padding-top:15px}
footer{border-top:1px solid var(--border);padding:38px 7%;display:flex;align-items:center;justify-content:space-between;font:10px/1.8 monospace;color:#b7a68a}
footer img{width:170px}
footer p{font:11px Arial;margin-top:12px}
footer>div:nth-child(2){text-align:center;letter-spacing:2px}
footer span{letter-spacing:0}
@media(max-width:900px){
nav{gap:20px}
.actions{gap:15px}
.section{padding:70px 6%}
.ledger-layout{gap:30px}
.ledger-paper{padding:25px}
.ledger-row{gap:12px}
.ledger-row>span{display:none}
.story{gap:6%}
.principles b{font-size:11px;margin-left:7px}
}
@media(max-width:650px){
.review{font-size:8px;letter-spacing:1px}
.review span{display:none}
header{min-height:73px;padding:10px 5%}
.brand{width:140px}
nav{display:none}
.compact{padding:10px 12px;font-size:10px;gap:12px}
.lead{font-size:20px}
.art-caption{right:4%;font-size:8px}
.principles{padding:20px 6%;flex-direction:column;gap:12px}
.principles b{margin-left:12px;font-size:12px}
.section{padding:65px 6%}
.section-top{display:block;margin-bottom:30px}
.section-top>p{margin-top:20px}
.ledger-layout,.story,.boundaries{grid-template-columns:1fr;gap:40px}
.ledger-paper{padding:24px 20px}
.paper-head{font-size:7px}
.ledger-paper h3{font-size:27px}
.ledger-row>span{display:block;font-size:7px}
.story-copy{margin-top:15px}
.boundaries{gap:28px}
footer{flex-wrap:wrap;gap:25px}
footer>div:nth-child(2){text-align:right;font-size:8px}
footer img{width:135px}
footer>a{width:100%}
.actions .button{padding:16px 19px;gap:20px}
.requirements{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*{transition:none!important}
}
@media(prefers-contrast:more){
:root{--muted:#e5d9c5;--border:#b08a3eaa}
.fine,.requirements{color:#e5d9c5}
}
.brand{width:164px;height:62px;background:var(--cream);padding:5px 15px;display:flex;align-items:center;justify-content:center}
.brand img{width:auto;max-width:100%;height:100%;object-fit:contain}
footer img{background:var(--cream);padding:8px 15px;width:145px;height:80px;object-fit:contain}
@media(max-width:650px){
.brand{width:120px;height:53px}
}

/* Preserve the established layout when labels grow or the viewport narrows. */
.section-top>*,.ledger-layout>*,.story>*,.boundaries>*,.explain article>div{min-width:0}
.ledger-row>div{min-width:0;overflow-wrap:anywhere}
.paper-head,.ledger-row{flex-wrap:wrap}
.ledger-row time,.ledger-row>span{flex-shrink:0}
.brand{flex-shrink:0}
nav{flex-wrap:wrap}
summary{min-height:24px}
@media(max-width:650px){
header{position:relative}
html{scroll-padding-top:24px}
.ledger-row>span{margin-left:0}
.section-top h2,.story-copy h2,.boundaries h2{overflow-wrap:break-word}
}
