/* Dreamtone LA: site theme layer. Shared by every page shell (index.html, work.html, ...). */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--site-bg,#fff);}
a{text-decoration:none;color:inherit;}
a:hover{color:var(--la,#B15CD9);}

.theme-light{
  --site-bg:#FFFFFF; --site-bg-alt:#F6F1E7; --site-bg-deep:#0B0B0B;
  --site-text:#0B0B0B; --site-text-2:#46453F; --site-text-3:#6B6960;
  --site-border:rgba(11,11,11,0.12); --site-header-bg:rgba(255,255,255,0.82);
  --site-on-deep:#FFFFFF; --site-eyebrow:#0B0B0B;
}
.theme-dark{
  --site-bg:#0B0B0B; --site-bg-alt:#141413; --site-bg-deep:#0B0B0B;
  --site-text:#FFFFFF; --site-text-2:#B5B2A6; --site-text-3:#6B6960;
  --site-border:#33322F; --site-header-bg:rgba(11,11,11,0.82);
  --site-on-deep:#FFFFFF; --site-eyebrow:#F0D030;
}

.dt-mark{font-style:normal;color:inherit;}
.theme-light .dt-mark{color:#0B0B0B;
  background:linear-gradient(var(--accent),var(--accent)) no-repeat;
  background-size:100% 0.13em; background-position:0 95%; padding-bottom:0.02em;
  box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.theme-dark .dt-mark{color:#FFFFFF;
  background:linear-gradient(var(--accent),var(--accent)) no-repeat;
  background-size:100% 0.13em; background-position:0 95%;
  box-decoration-break:clone;-webkit-box-decoration-break:clone;}
section[style*="rgb(11, 11, 11)"] .dt-mark{color:#FFFFFF;}
/* Design-system text and outline buttons default to ink. On the black bands they need to be white. */
section[style*="rgb(11, 11, 11)"]{--text-primary:#FFFFFF;--text-secondary:rgba(255,255,255,0.72);--border-strong:rgba(255,255,255,0.45);--surface-card-hover:rgba(255,255,255,0.08);}
.emph-plain .dt-mark{background:none !important;}

@keyframes dt-rec{0%,55%{opacity:1;}56%,100%{opacity:0.12;}}

@font-face{font-family:'Biturg';src:url('/uploads/BITURG__.TTF') format('truetype');font-weight:400 900;font-style:normal;font-display:swap;}
@font-face{font-family:'Helicopter';src:url('/uploads/Bring Me A Helicopter!.otf') format('opentype');font-weight:400 900;font-style:normal;font-display:swap;}
@font-face{font-family:'Perfect Girl';src:url('/uploads/PerfectGirl-SansSerif.otf') format('opentype');font-weight:400 900;font-style:normal;font-display:swap;}
/* Unique Kingdom is a demo cut: every digit and punctuation mark is a "DEMO FONT" stamp. The range below
   limits it to letters, so numbers, @ and & fall through to Archivo instead of showing the stamp. */
@font-face{font-family:'Unique Kingdom';src:url('/uploads/UniqueKingdomDemoRegular.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:swap;unicode-range:U+0020,U+0041-005A,U+0061-007A;}
@font-face{font-family:'Deventer';src:url('/uploads/Deventer - PERSONAL USE 7.otf') format('opentype');font-weight:400 900;font-style:normal;font-display:swap;}
@font-face{font-family:'AFL Font';src:url('/uploads/aflfont.TTF') format('truetype');font-weight:400 900;font-style:normal;font-display:swap;}
@font-face{font-family:'Anthrope';src:url('/uploads/Anthrope Personal Use Only.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:swap;}

header nav a, header nav button, button, a[role="button"]{ font-family:'Unique Kingdom','Archivo',sans-serif !important; letter-spacing:0.02em; }
header nav a{ color:#fff !important; }
header nav a:hover{ color:#fff !important; }
p{ font-family:'AFL Font','Archivo',sans-serif !important; }
h2,h3{ font-family:'Perfect Girl','Anthrope','Anton',sans-serif !important; }

/* Static first paint: what shows before the app loads, and what crawlers without JavaScript read. */
.la-static{max-width:1200px;margin:0 auto;padding:64px 32px;font-family:Archivo,system-ui,sans-serif;color:#0B0B0B}
.la-static img{width:100%;max-width:420px;height:auto;display:block}
.la-static h1{font-size:44px;line-height:1.05;margin:28px 0 0;text-transform:uppercase}
.la-static h2{font-size:22px;margin:36px 0 0}
.la-static p{font-size:19px;line-height:1.55;max-width:60ch;margin:18px 0 0}
.la-static nav{display:flex;flex-wrap:wrap;gap:18px;margin-top:32px;font-size:16px}
.la-static nav a{text-decoration:underline}
.la-static .la-loading{font-family:monospace !important;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:#6B6960;margin-top:40px}
