
:root{
  --navy:#16213E; --amber:#E8A33D; --amber-soft:#F6C878; --cream:#FAF6EC;
  --cream-deep:#F2EADA; --rule:#DED2BA; --ink:#222B45; --muted:#5C6479;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);
  font-family:"Assistant",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;line-height:1.72;}
h1,h2,h3,h4{font-family:"Cormorant Garamond",Georgia,serif;color:var(--navy);
  font-weight:600;line-height:1.16;margin:0 0 .5em;letter-spacing:.005em}
h1{font-size:clamp(2.3rem,5.2vw,3.5rem)}
h2{font-size:clamp(1.6rem,3vw,2.1rem)}
h3{font-size:1.45rem}
p{margin:0 0 1.05em}
a{color:var(--navy)}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.narrow{max-width:720px}

/* header */
.site-head{background:var(--cream);border-bottom:1px solid var(--rule);
  position:sticky;top:0;z-index:40}
.head-in{max-width:1080px;margin:0 auto;padding:14px 22px;display:flex;
  align-items:center;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brandmark{display:block;flex:none}
.brand-name{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.5rem;
  color:var(--navy);letter-spacing:.06em;text-transform:uppercase}
.nav{margin-left:auto;display:flex;gap:26px}
.nav a{text-decoration:none;color:var(--navy);font-size:.94rem;letter-spacing:.04em;
  text-transform:uppercase;padding:4px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-bottom-color:var(--amber)}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--rule);
  border-radius:3px;padding:7px 12px;font:inherit;font-size:.9rem;color:var(--navy);cursor:pointer}
#nav-toggle{display:none}
@media(max-width:800px){
  .menu-btn{display:block}
  .nav{flex-basis:100%;flex-direction:column;gap:0;margin:0;display:none;
    border-top:1px solid var(--rule);padding-top:6px}
  #nav-toggle:checked ~ .nav{display:flex}
  .nav a{padding:10px 0;border-bottom:1px solid var(--rule)}
}

/* shadow box */
.sbox{display:inline-block;line-height:0;padding:10px;background:var(--cream-deep);
  border:1px solid var(--rule);border-radius:4px;
  box-shadow:inset 0 2px 8px rgba(22,33,62,.14)}
.sbox svg{display:block;border-radius:3px}
.flourish,.tinymark{display:inline-block;vertical-align:middle;border-radius:2px;flex:none}

/* hero */
.hero{padding:62px 0 48px;position:relative;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 100%, rgba(232,163,61,.42) 0%, rgba(232,163,61,.16) 46%, rgba(250,246,236,0) 78%)}
.hero .skyline{position:absolute;left:0;right:0;bottom:0;width:100%;height:56px;opacity:.9}
.hero .wrap{position:relative;z-index:2;padding-bottom:58px}
.hero p.lede{font-size:1.14rem;max-width:640px;color:var(--muted)}
.eyebrow{font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  margin:0 0 14px}

.hero-img{display:block;width:100%;max-width:560px;height:auto;margin:30px 0 0;
  border-radius:4px;border:1px solid var(--rule)}

/* category panels */
.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;
  padding:56px 0}
.panel{background:var(--cream);border:1px solid var(--rule);border-radius:5px;padding:22px;
  text-align:center;text-decoration:none;display:block;
  box-shadow:0 1px 0 rgba(22,33,62,.05)}
.panel:hover{border-color:var(--amber);box-shadow:0 4px 18px rgba(22,33,62,.09)}
.panel h3{margin:18px 0 8px}
.panel p{font-size:.95rem;color:var(--muted);margin-bottom:.8em}
.count{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}

.closing{border-top:1px solid var(--rule);padding:44px 0 56px}
.closing p{max-width:680px;color:var(--muted)}

/* category page */
.cat-head{padding:52px 0 26px;display:flex;align-items:center;gap:14px}
.cat-head h1{margin:0}
.cat-intro{max-width:700px;color:var(--muted);padding-bottom:10px}
.entry{border-top:1px solid var(--rule);padding:34px 0}
.entry:first-of-type{border-top:2px solid var(--navy)}
.entry-name{display:flex;align-items:center;gap:11px;margin:0 0 4px}
.entry-name h2{margin:0}
.place{font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  margin:0 0 16px}
.entry .body{max-width:760px}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:14px 0 0}
.tags li{font-size:.8rem;letter-spacing:.03em;color:var(--navy);background:rgba(232,163,61,.18);
  border:1px solid rgba(232,163,61,.55);border-radius:2px;padding:4px 10px}

/* plain pages */
.page{padding:52px 0 60px}
.page-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.page-head h1{margin:0}
.page h2{margin-top:1.8em}
.page ul{padding-left:1.2em}
.page li{margin-bottom:.4em}

/* footer */
.site-foot{background:var(--navy);color:#D8DCE8;margin-top:10px;padding:52px 0 26px}
.site-foot a{color:#D8DCE8;text-decoration:none}
.site-foot a:hover{color:var(--amber)}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}
.foot-grid h4{color:var(--cream);font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;
  margin-bottom:14px}
.foot-brand p{font-size:.95rem;color:#AEB6C8;max-width:360px}
.foot-brand .fb-name{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.5rem;
  color:var(--cream);letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px}
.foot-grid ul{list-style:none;margin:0;padding:0}
.foot-grid li{margin-bottom:9px;font-size:.95rem}
.foot-note{border-top:1px solid rgba(255,255,255,.16);margin-top:38px;padding-top:18px;
  font-size:.85rem;color:#98A1B5}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr;gap:26px}}
