  :root{--red:#9c2b1e;--red2:#7c1f14;--cream:#f7efdc;--paper:#efe3c8;--wood:#6b4a2b;--ink:#33241a;--gold:#c9973f}
  *{margin:0;padding:0;box-sizing:border-box}
  body{background:var(--cream);color:var(--ink);font-family:'Zilla Slab',serif;line-height:1.65}
  .topstrip{background:var(--red2);color:var(--cream);text-align:center;padding:8px;font-family:'Special Elite',monospace;font-size:.82rem;letter-spacing:.06em}
  header{text-align:center;padding:38px 5vw 26px;border-bottom:4px double var(--wood)}
  .badge-star{display:inline-block;border:3px solid var(--red);color:var(--red);border-radius:50%;width:96px;height:96px;line-height:1.15;padding-top:20px;font-family:'Rye',serif;font-size:.78rem;transform:rotate(-8deg);background:var(--paper)}
  header h1{font-family:'Rye',serif;font-weight:400;font-size:3rem;color:var(--red);margin-top:16px;letter-spacing:.02em}
  header .tag{font-family:'Special Elite',monospace;color:var(--wood);margin-top:6px}
  nav{margin-top:20px}
  nav a{color:var(--ink);text-decoration:none;font-weight:700;margin:0 16px;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;border-bottom:2px solid transparent}
  nav a:hover{border-color:var(--red)}
  .hero{margin:38px 5vw;background:var(--red);color:var(--cream);padding:56px 6vw;text-align:center;border:3px solid var(--red2);outline:2px dashed var(--gold);outline-offset:-12px}
  .hero h2{font-family:'Rye',serif;font-weight:400;font-size:2.6rem;line-height:1.2}
  .hero p{max-width:620px;margin:16px auto 0;font-size:1.1rem}
  .hero .cta{display:inline-block;margin-top:28px;background:var(--cream);color:var(--red2);font-weight:700;padding:13px 30px;text-decoration:none;letter-spacing:.1em;text-transform:uppercase;font-size:.9rem;border:2px solid var(--red2)}
  .depts{padding:60px 5vw;max-width:1150px;margin:0 auto}
  .depts h2{font-family:'Rye',serif;font-weight:400;text-align:center;font-size:2rem;color:var(--red);margin-bottom:36px}
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .dept{background:#fffdf6;border:2px solid var(--wood);padding:28px;position:relative}
  .dept::before{content:"★";position:absolute;top:-14px;left:20px;background:var(--cream);padding:0 8px;color:var(--gold);font-size:1.2rem}
  .dept h3{font-weight:700;font-size:1.25rem;margin-bottom:8px}
  .dept p{font-size:.97rem;color:#5a4632}
  .story{background:var(--paper);border-top:3px solid var(--wood);border-bottom:3px solid var(--wood);padding:64px 5vw}
  .story .in{max-width:820px;margin:0 auto;text-align:center}
  .story h2{font-family:'Rye',serif;font-weight:400;font-size:1.9rem;color:var(--red);margin-bottom:14px}
  .story .sig{font-family:'Special Elite',monospace;margin-top:18px;color:var(--wood)}
  .visit{padding:64px 5vw;max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:46px}
  .visit h3{font-family:'Rye',serif;font-weight:400;color:var(--red);font-size:1.4rem;margin-bottom:12px}
  .visit li{list-style:none;padding:6px 0;border-bottom:1px dotted var(--wood)}
  footer{background:var(--ink);color:var(--paper);text-align:center;padding:28px 5vw;font-family:'Special Elite',monospace;font-size:.85rem}
  @media(max-width:820px){.grid,.visit{grid-template-columns:1fr}header h1{font-size:2.1rem}.hero h2{font-size:1.8rem}}
