/* Oak & Edison — theme drawn from the business card */
@font-face{font-family:"Rye";src:url(fonts/rye-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Cinzel";src:url(fonts/cinzel-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Cinzel";src:url(fonts/cinzel-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/eb-garamond-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/eb-garamond-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/eb-garamond-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  --bg:#1e1209;
  --bg-2:#2a190c;
  --panel:rgba(22,13,6,.72);
  --cream:#f3dcae;
  --parchment:#e9c98d;
  --gold:#e3a648;
  --amber:#d9772a;
  --copper:#b85f22;
  --ink:#d8c4a0;
  --muted:#b49a74;
  --line:rgba(227,166,72,.35);
  --glow:0 0 24px rgba(255,170,70,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--ink);background-color:var(--bg);
  background-image:
    radial-gradient(ellipse at 50% 0%,rgba(217,119,42,.18),transparent 60%),
    radial-gradient(ellipse at 50% 120%,rgba(0,0,0,.65),transparent 60%),
    url(texture.jpg);
  background-attachment:fixed,fixed,scroll;
  font:400 1.1875rem/1.65 "EB Garamond",Georgia,serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--gold);text-decoration-color:rgba(227,166,72,.45);text-underline-offset:3px}
a:hover{color:var(--cream)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

/* header */
.site-head{position:sticky;top:0;z-index:10;background:rgba(18,10,4,.82);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.brand{font-family:"Rye",serif;font-size:1.45rem;color:var(--cream);text-decoration:none;letter-spacing:.02em;white-space:nowrap;text-shadow:0 2px 0 #000}
.brand span{color:var(--amber)}
.nav{display:flex;gap:22px;flex-wrap:wrap}
.nav a{font-family:"Cinzel",serif;font-weight:600;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--parchment);text-decoration:none}
.nav a:hover,.nav a[aria-current]{color:var(--gold)}

/* hero */
.hero{padding:40px 0 24px;text-align:center}
.hero-logo{width:min(720px,100%);margin:0 auto;
  -webkit-mask-image:radial-gradient(ellipse 60% 57% at 50% 50%,#000 74%,transparent 100%);
          mask-image:radial-gradient(ellipse 60% 57% at 50% 50%,#000 74%,transparent 100%)}
.hero h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.lede{max-width:620px;margin:8px auto 28px;font-size:1.3rem;font-style:italic;color:var(--parchment)}
.btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;font-family:"Cinzel",serif;font-weight:700;font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  padding:14px 26px;border-radius:3px;border:1px solid var(--gold);color:#1b0f05;
  background:linear-gradient(180deg,#f0b75a,#c9782c);box-shadow:var(--glow),inset 0 1px 0 rgba(255,255,255,.35)}
.btn:hover{color:#1b0f05;filter:brightness(1.08)}
.btn.ghost{background:transparent;color:var(--gold);box-shadow:none}
.btn.ghost:hover{color:var(--cream);border-color:var(--cream)}

/* ornament divider */
.flourish{display:flex;align-items:center;gap:14px;justify-content:center;margin:56px auto 28px;max-width:560px;color:var(--gold)}
.flourish::before,.flourish::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.flourish svg{width:26px;height:26px;filter:drop-shadow(0 0 6px rgba(255,170,70,.6))}

/* sections */
section{scroll-margin-top:80px}
.eyebrow{font-family:"Cinzel",serif;font-weight:600;letter-spacing:.24em;font-size:.8rem;text-transform:uppercase;color:var(--amber);text-align:center;margin:0 0 6px}
h2{font-family:"Rye",serif;font-weight:400;color:var(--cream);font-size:clamp(2rem,5vw,2.8rem);line-height:1.15;text-align:center;margin:0 0 18px;text-shadow:0 3px 0 rgba(0,0,0,.6)}
h3{font-family:"Cinzel",serif;font-weight:700;color:var(--gold);letter-spacing:.06em;font-size:1.15rem;margin:0 0 8px}
.intro{max-width:680px;margin:0 auto 32px;text-align:center}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:24px 22px;box-shadow:inset 0 0 0 4px rgba(0,0,0,.25),0 10px 30px rgba(0,0,0,.35)}
.card p{margin:0}

/* banner (ribbon-style) */
.banner{position:relative;margin:28px auto 0;max-width:760px;text-align:center;padding:22px 26px;
  background:linear-gradient(180deg,rgba(60,32,12,.9),rgba(34,18,7,.92));border:2px solid var(--copper);border-radius:3px;
  box-shadow:inset 0 0 0 1px rgba(243,220,174,.15),0 8px 24px rgba(0,0,0,.4)}
.banner p{margin:0;color:var(--parchment)}
.banner strong{color:var(--cream)}

.app{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start}
.app-icon{width:76px;height:76px;border-radius:18px;background:linear-gradient(160deg,#3a2210,#160c05);border:1px solid var(--line);display:grid;place-items:center;font-size:2.1rem}
.tag{display:inline-block;font-family:"Cinzel",serif;font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#1b0f05;background:var(--gold);padding:3px 9px;border-radius:2px;margin-bottom:8px}
.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pill{font-size:.95rem;border:1px solid var(--line);border-radius:999px;padding:3px 12px;color:var(--parchment)}

/* prose pages */
.prose{max-width:760px;margin:40px auto 0;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:clamp(22px,5vw,48px)}
.prose h1{font-family:"Rye",serif;font-weight:400;color:var(--cream);font-size:clamp(1.9rem,5vw,2.6rem);line-height:1.15;margin:0 0 6px}
.prose .meta{color:var(--muted);font-style:italic;margin:0 0 26px}
.prose h2{font-family:"Cinzel",serif;font-weight:700;text-align:left;font-size:1.15rem;letter-spacing:.08em;color:var(--gold);text-shadow:none;margin:30px 0 8px}
.prose p,.prose li{color:var(--ink)}
.prose ul{padding-left:1.2em}

/* footer */
.site-foot{margin-top:72px;border-top:1px solid var(--line);background:rgba(12,7,3,.75)}
.site-foot .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;align-items:center;padding:26px 20px;font-size:1rem;color:var(--muted)}
.site-foot nav{display:flex;gap:20px;flex-wrap:wrap}
.site-foot a{color:var(--parchment);text-decoration:none}
.site-foot a:hover{color:var(--gold)}

@media (max-width:640px){
  .nav{gap:14px}
  .nav a{font-size:.72rem;letter-spacing:.1em}
  .brand{font-size:1.2rem}
  .app{grid-template-columns:1fr}
}
@media (max-width:420px){ .nav .hide-sm{display:none} }
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
