@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,700&family=JetBrains+Mono:wght@400&family=Literata:opsz,wght@7..72,400;7..72,600&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Literata',Georgia,serif;font-size:19px;line-height:1.72;color:#2A2118;background:#FAF6F0;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:#C4654A;text-decoration-thickness:1px;text-underline-offset:3px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.surface-paper{background:#FAF6F0;color:#2A2118}
.surface-warm{background:#F2EBE0;color:#2A2118}
.surface-umber{background:#2A2118;color:#FAF6F0}
.surface-terra{background:#C4654A;color:#FAF6F0}
.site-header{position:sticky;top:0;z-index:100;background:#FAF6F0;border-bottom:1px solid rgba(42,33,24,.12)}
.header-inner{max-width:1140px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{font-family:'Fraunces',serif;font-weight:700;font-size:1.2rem;color:#2A2118;text-decoration:none}
.nav-list{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.nav-list a{color:#2A2118;text-decoration:none;opacity:.75}
.nav-list a[aria-current="page"]{opacity:1;color:#C4654A}
.nav-toggle{display:none;background:transparent;border:1px solid rgba(42,33,24,.2);width:44px;height:44px;border-radius:4px;cursor:pointer;flex-direction:column;justify-content:center;gap:5px}
.nav-toggle span{display:block;width:18px;height:1px;background:#2A2118;margin:0 auto}
@media(max-width:768px){.nav-toggle{display:flex}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#FAF6F0;border-top:1px solid rgba(42,33,24,.12);padding:16px 24px}.site-nav.is-open{display:block}.nav-list{flex-direction:column}.header-inner{position:relative}}
.studio-hero{padding:72px 24px 88px;max-width:1140px;margin:0 auto}
.studio-ribbon{display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7A7268;margin-bottom:40px}
.studio-headline{display:grid;gap:24px;margin-bottom:40px}
@media(min-width:900px){.studio-headline{grid-template-columns:1.2fr .8fr;align-items:end}}
.studio-headline h1{font-family:'Fraunces',serif;font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1.1}
.studio-tagline{border-left:3px solid #C4654A;padding-left:20px;font-size:1.05rem;color:#7A7268}
.drop-cap-lead{max-width:66ch;margin-bottom:48px}
.drop-cap-lead::first-letter{font-family:'Fraunces',serif;font-size:3.5em;float:left;line-height:.82;padding-right:10px;color:#C4654A;font-weight:700}
.timeline-feed{max-width:1140px;margin:0 auto;padding:0 24px 104px}
.timeline-row{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:32px 0;border-top:1px solid rgba(42,33,24,.12);text-decoration:none;color:inherit}
@media(min-width:768px){.timeline-row{grid-template-columns:140px 200px 1fr}}
.timeline-row__date{font-family:'JetBrains Mono',monospace;font-size:11px;color:#7A7268;line-height:1.6}
.timeline-row__thumb{border:1px solid rgba(196,101,74,.25);padding:4px;display:none}
@media(min-width:768px){.timeline-row__thumb{display:block}}
.timeline-row__thumb img{aspect-ratio:4/3;object-fit:cover;width:100%}
.timeline-row__title{font-family:'Fraunces',serif;font-size:1.35rem;margin-bottom:8px}
.timeline-row:hover .timeline-row__title{color:#C4654A}
.pull-band{margin:64px 24px;padding:48px;background:#F2EBE0;border-top:1px solid rgba(196,101,74,.3);border-bottom:1px solid rgba(196,101,74,.3);max-width:1140px;margin-left:auto;margin-right:auto}
.pull-band blockquote{font-family:'Fraunces',serif;font-size:1.4rem;line-height:1.45;color:#2A2118;max-width:48ch}
.torn-divider{height:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 24'%3E%3Cpath fill='%23F2EBE0' d='M0 12 Q30 0 60 12 T120 12 T180 12 T240 12 T300 12 T360 12 T420 12 T480 12 T540 12 T600 12 T660 12 T720 12 T780 12 T840 12 T900 12 T960 12 T1020 12 T1080 12 T1140 12 T1200 12 V24 H0Z'/%3E%3C/svg%3E") center/contain repeat-x;margin:48px 0}
.article-header{padding:88px 24px 32px;max-width:720px;margin:0 auto}
.article-header .dateline{font-family:'JetBrains Mono',monospace;font-size:12px;color:#C4654A;margin-bottom:12px}
.article-header h1{font-family:'Fraunces',serif;font-size:clamp(2rem,4vw,2.8rem);line-height:1.12}
.article-body{max-width:66ch;margin:0 auto;padding:0 24px 104px}
.article-body p{margin-bottom:1.35em}
.article-figure{margin:2rem 0;border:1px solid rgba(196,101,74,.22);padding:6px;background:#FAF6F0}
.article-figure figcaption{font-family:'JetBrains Mono',monospace;font-size:11px;color:#7A7268;padding-top:8px}
.journal-timeline{max-width:1140px;margin:0 auto;padding:80px 24px}
.journal-timeline h1{font-family:'Fraunces',serif;font-size:2.4rem;margin-bottom:24px}
.journal-intro{max-width:66ch;margin-bottom:48px}
.year-marker{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.12em;color:#C4654A;margin:48px 0 24px;padding-bottom:8px;border-bottom:1px solid rgba(196,101,74,.25)}
.journal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}
.journal-card{text-decoration:none;color:inherit;border:1px solid rgba(42,33,24,.1);background:#FAF6F0;padding:6px}
.journal-card img{aspect-ratio:3/2;object-fit:cover;width:100%}
.journal-card h3{font-family:'Fraunces',serif;font-size:1.15rem;margin:12px 8px 4px}
.journal-card .date{font-family:'JetBrains Mono',monospace;font-size:11px;color:#7A7268;margin:0 8px 12px}
.about-band{margin-bottom:48px;border:1px solid rgba(196,101,74,.2);padding:6px;max-width:1140px;margin-left:auto;margin-right:auto}
.about-band img{width:100%;max-height:260px;aspect-ratio:21/7;object-fit:cover;object-position:center 40%}
.about-columns{display:grid;gap:40px;max-width:1140px;margin:0 auto;padding:0 24px 104px}
@media(min-width:900px){.about-columns{grid-template-columns:62fr 38fr}}
.contact-desk{max-width:1140px;margin:0 auto;padding:72px 24px;display:grid;gap:48px}
@media(min-width:1024px){.contact-desk{grid-template-columns:1fr 1fr}}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.chip{font-family:'JetBrains Mono',monospace;font-size:10px;padding:6px 12px;border:1px solid rgba(42,33,24,.15);border-radius:999px;color:#7A7268}
.contact-form{display:grid;gap:20px}
.form-group label{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;margin-bottom:8px;color:#7A7268}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:1px solid rgba(42,33,24,.15);border-radius:4px;background:#FAF6F0;font:inherit;color:#2A2118}
.form-group textarea{min-height:160px;resize:vertical}
.form-error{color:#C4654A;font-size:.9rem;margin-top:6px}
.form-success{padding:16px;background:rgba(196,101,74,.1);border-left:3px solid #C4654A;margin-bottom:24px}
.checkbox-row{display:flex;gap:10px;align-items:flex-start;font-size:.92rem}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.btn-submit{padding:12px 24px;background:#C4654A;color:#FAF6F0;border:none;border-radius:4px;font-family:'JetBrains Mono',monospace;font-size:11px;cursor:pointer}
.disclaimer-box{margin-top:32px;padding:20px;border-left:3px solid #C4654A;background:rgba(196,101,74,.08);font-size:.95rem}
.legal-page{max-width:720px;margin:0 auto;padding:72px 24px 104px}
.legal-page h1{font-family:'Fraunces',serif;font-size:2.2rem;margin-bottom:32px}
.legal-section{margin-bottom:32px}
.legal-section h2{font-family:'Fraunces',serif;font-size:1.3rem;color:#C4654A;margin-bottom:12px}
.legal-section p{margin-bottom:1em}
.map-section iframe{border:0;width:100%;display:block}
.map-section--strip{border-top:1px solid rgba(42,33,24,.1);background:#F2EBE0}
.map-section--band{max-width:1140px;margin:0 auto;padding:0 24px 72px}
.map-section--primary{padding:0}
.map-section--compact{max-width:460px;margin:0 auto;padding:0 24px 48px}
.map-embed--strip{height:190px}
.map-embed--band{height:300px;border:1px solid rgba(196,101,74,.2)}
.map-embed--primary{height:480px;border:1px solid rgba(196,101,74,.2)}
.map-embed--compact{height:165px;border:1px solid rgba(196,101,74,.2)}
.site-footer{border-top:1px solid rgba(42,33,24,.1);padding:64px 24px;background:#F2EBE0}
.footer-inner{max-width:1140px;margin:0 auto;font-size:.92rem;line-height:1.7}
.footer-disclaimer{margin-top:16px;font-size:.85rem;opacity:.8;max-width:52ch}
.footer-legal{margin-top:12px}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#F2EBE0;border-top:1px solid rgba(42,33,24,.12);padding:16px 24px}
.cookie-banner__inner{max-width:1140px;margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.cookie-banner__actions{display:flex;gap:8px;flex-wrap:wrap}
.btn-cookie{padding:8px 16px;border-radius:4px;border:1px solid #C4654A;background:#C4654A;color:#FAF6F0;font-family:'JetBrains Mono',monospace;font-size:11px;cursor:pointer}
.btn-cookie--ghost{background:transparent;color:#2A2118}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.reveal{opacity:1;transform:none}
.js .reveal:not(.is-visible){opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .55s ease}
@media(prefers-reduced-motion:reduce){.js .reveal,.js .reveal:not(.is-visible){opacity:1!important;transform:none!important;transition:none!important}}
