@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/anton-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/inter-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/jetbrains-mono-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/jetbrains-mono-latin-700-normal.woff2') format('woff2');}

:root{
  --charcoal:#1A1008;
  --ash:#2B1C12;
  --cream:#F7F0E4;
  --paper:#FBF7F0;
  --ember:#9B1C1C;
  --rust:#7A1515;
  --gold:#C87020;
  --muted:#7A6A5E;
  --line:rgba(26,16,8,0.13);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);
  color:var(--charcoal);
  font-family:'Inter',sans-serif;
  line-height:1.5;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
main{flex:1 0 auto;}
h1,h2,h3{
  font-family:'Anton',sans-serif;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:0.01em;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1320px;margin:0 auto;padding:0 24px;}

@media(prefers-reduced-motion:reduce){
  *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;}
}

/* ── NAV ── */
header{
  position:sticky;top:0;z-index:50;
  background:rgba(27,20,16,0.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(247,240,228,0.08);
}
nav.wrap{
  display:flex;align-items:center;justify-content:space-between;
  height:72px;
}
.brand{
  font-family:'Anton',sans-serif;font-size:1.4rem;
  color:var(--cream);letter-spacing:0.02em;
  display:flex;align-items:center;gap:10px;
  min-width:0;
}
.brand svg{width:20px;height:20px;flex-shrink:0;}
.brand-logo{
  height:64px;
  max-width:100%;
  object-fit:contain;
}
.navlinks{display:flex;gap:32px;font-size:0.92rem;}
.navlinks a{
  color:var(--cream);opacity:0.78;font-weight:500;
  position:relative;padding:4px 0;
  transition:opacity 0.2s ease;
}
.navlinks a:hover,.navlinks a.active{opacity:1;}
.navlinks a::after{
  content:'';position:absolute;left:0;bottom:-2px;
  width:0;height:2px;background:var(--ember);
  transition:width 0.25s ease;
}
.navlinks a:hover::after,.navlinks a.active::after{width:100%;}
.navlinks a:focus-visible,.brand:focus-visible{outline:2px solid var(--ember);outline-offset:4px;}
.nav-toggle{display:none;}

@media(max-width:760px){
  .navlinks{
    position:fixed;top:72px;left:0;right:0;
    flex-direction:column;gap:0;
    background:var(--charcoal);
    transform:translateY(calc(-100% - 80px));
    transition:transform 0.3s ease;
    border-bottom:1px solid rgba(247,240,228,0.1);
  }
  .navlinks.open{transform:translateY(0);}
  .navlinks a{padding:16px 24px;width:100%;border-bottom:1px solid rgba(247,240,228,0.06);}
  .nav-toggle{
    display:block;background:none;border:none;
    color:var(--cream);font-size:1.6rem;cursor:pointer;line-height:1;
    flex-shrink:0;
  }
  .nav-toggle:focus-visible{outline:2px solid var(--ember);}
}

@media(max-width:360px){
  .brand-logo{height:44px;}
}

/* ── BUTTONS ── */
.btn{
  font-family:'JetBrains Mono',monospace;
  font-size:0.85rem;font-weight:700;
  letter-spacing:0.04em;text-transform:uppercase;
  padding:15px 30px;border-radius:2px;
  border:1px solid transparent;cursor:pointer;
  transition:transform 0.15s ease,background 0.2s ease;
  display:inline-block;
}
.btn:hover{transform:translateY(-2px);}
.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.btn-primary{background:var(--ember);color:var(--cream);}
.btn-primary:hover{background:#f1693c;}
.btn-ghost{border-color:rgba(247,240,228,0.35);color:var(--cream);}
.btn-ghost:hover{border-color:var(--cream);}
.btn-outline{border-color:var(--rust);color:var(--rust);}
.btn-outline:hover{border-color:var(--ember);color:var(--ember);}

/* ── PAGE HERO (inner pages) ── */
.page-hero{
  background:linear-gradient(180deg,var(--charcoal),#1f1710);
  color:var(--cream);
  padding:72px 24px 60px;
  text-align:center;
}
.page-hero .eyebrow{
  font-family:'JetBrains Mono',monospace;font-size:0.8rem;
  letter-spacing:0.25em;color:var(--gold);
  text-transform:uppercase;margin-bottom:16px;display:block;
}
.page-hero h1{
  font-size:clamp(2.4rem,6vw,4rem);color:var(--cream);
}
.page-hero h1 span{color:var(--ember);}

/* ── SECTION GENERIC ── */
section{padding:80px 0;}
.section-head{text-align:center;margin-bottom:56px;}
.section-head .eyebrow{
  font-family:'JetBrains Mono',monospace;font-size:0.78rem;
  letter-spacing:0.22em;color:var(--rust);
  text-transform:uppercase;margin-bottom:12px;display:block;
}
.section-head h2{font-size:clamp(2rem,5vw,3rem);color:var(--charcoal);}
.section-head p{max-width:480px;margin:14px auto 0;color:#5a4f45;}

/* ── DIVIDER ── */
.divider{
  height:54px;display:flex;align-items:center;
  justify-content:center;gap:18px;background:var(--paper);
}
.divider .line{height:1px;flex:1;max-width:140px;background:var(--line);}
.divider .mark{
  font-family:'JetBrains Mono',monospace;font-size:0.75rem;
  letter-spacing:0.2em;color:var(--rust);text-transform:uppercase;
}

/* ── FOOTER ── */
footer{background:#120D0A;color:rgba(247,240,228,0.7);padding:56px 0 28px;}
.footer-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px;
}
.footer-grid h5{
  font-family:'JetBrains Mono',monospace;color:var(--cream);
  font-size:0.85rem;text-transform:uppercase;
  letter-spacing:0.08em;margin-bottom:16px;
}
.footer-grid p{font-size:0.92rem;max-width:260px;}
.footer-grid a{display:block;margin-bottom:10px;font-size:0.93rem;transition:color 0.2s;}
.footer-grid a:hover{color:var(--ember);}
.footer-bottom{
  border-top:1px solid rgba(247,240,228,0.08);padding-top:22px;
  font-size:0.8rem;text-align:center;color:rgba(247,240,228,0.4);
}
@media(max-width:700px){.footer-grid{grid-template-columns:1fr;}}
