/* Save Greater Moe's Valley - shared stylesheet. Edit the site-wide header,
   menu, hero and footer here and every page updates. */
:root{
  --ink:#1b1815; --body:#4c463e; --muted:#8a8178; --line:#eceae4;
  --bg:#ffffff; --soft:#faf8f4; --card:#ffffff;
  --orange:#ea580c; --orange-d:#c2410c; --blue:#0284c7; --green:#15803d; --purple:#7c3aed;
  --sh:0 1px 2px rgba(20,15,8,.05),0 10px 30px rgba(20,15,8,.06);
  --sh-h:0 2px 6px rgba(20,15,8,.08),0 18px 44px rgba(20,15,8,.12);
  --r:16px; --wrap:1000px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--body);
  font:16px/1.65 -apple-system,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3{color:var(--ink);letter-spacing:-.02em;line-height:1.1;margin:0}
a{color:var(--orange-d)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
section{scroll-margin-top:78px}

/* ---------- sticky top nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;border-bottom:1px solid transparent;
  transition:background .25s,box-shadow .25s,border-color .25s}
.nav .in{max-width:var(--wrap);margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:16px}
.brand{font-weight:800;letter-spacing:.14em;font-size:13px;text-transform:uppercase;color:#fff;
  white-space:nowrap;display:flex;align-items:center;gap:9px;text-decoration:none}
.brand .dot{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(234,88,12,.25)}
.navlinks{margin-left:auto;display:flex;align-items:center;gap:2px}
.navlinks a{color:#fff;font-weight:600;font-size:13.5px;padding:8px 10px;border-radius:9px;opacity:.92;
  white-space:nowrap;text-decoration:none;transition:background .15s,opacity .15s}
.navlinks a:hover{background:rgba(255,255,255,.14);opacity:1}
.navlinks a.active{background:rgba(255,255,255,.16);opacity:1}
.nav.solid{background:rgba(255,255,255,.95);-webkit-backdrop-filter:saturate(1.2) blur(10px);
  backdrop-filter:saturate(1.2) blur(10px);border-color:var(--line);box-shadow:0 4px 20px rgba(20,15,8,.06)}
.nav.solid .brand{color:var(--ink)}
.nav.solid .navlinks a{color:var(--ink);opacity:.86}
.nav.solid .navlinks a:hover,.nav.solid .navlinks a.active{background:#f1ede7;opacity:1}
.burger{margin-left:auto;display:none;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);
  color:#fff;width:42px;height:38px;border-radius:10px;font-size:18px;cursor:pointer}
.nav.solid .burger{background:#f1ede7;border-color:var(--line);color:var(--ink)}
@media(max-width:860px){
  .navlinks{display:none;position:absolute;top:60px;right:16px;left:16px;flex-direction:column;align-items:stretch;
    background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--sh-h)}
  .navlinks.open{display:flex}
  .navlinks a{color:var(--ink)!important;opacity:1;padding:11px 12px}
  .navlinks a.active{background:#fbeee4}
  .burger{display:block}
}

/* ---------- header / hero ---------- */
.hero{position:relative;width:100%;height:clamp(170px,24vh,280px);display:flex;align-items:flex-end;
  background:#20242b url("moes-header.jpg") center top / cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,12,15,.45) 0%,rgba(10,12,15,0) 42%,rgba(10,12,15,.72) 100%)}
.hero .in{position:relative;z-index:2;width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px 20px}
.hero .eb{color:#ffdcc4;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:12px;
  margin:0 0 8px;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.hero h1{color:#fff;font-weight:800;font-size:clamp(28px,4.6vw,44px);line-height:1.05;max-width:20ch;
  text-shadow:0 2px 22px rgba(0,0,0,.55)}

/* ---------- parallax sub-header band (full-bleed image divider) ---------- */
.subhead{position:relative;width:100%;height:clamp(180px,24vh,280px);overflow:hidden;
  background:#20242b center 50%/cover no-repeat}
.subhead::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,12,15,.18),rgba(10,12,15,0) 30%,rgba(10,12,15,.28))}
.subhead .cap{position:absolute;right:14px;bottom:10px;z-index:2;color:#fff;font-size:11.5px;font-weight:600;
  background:rgba(20,15,10,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  padding:4px 10px;border-radius:999px;text-shadow:0 1px 4px rgba(0,0,0,.5)}

/* ---------- shared footer ---------- */
.site-footer{background:#17140f;color:#c9c0b4;padding:48px 0 44px;font-size:13px;margin-top:20px}
.site-footer .wrap{display:grid;gap:22px}
.site-footer .top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:26px}
.site-footer .fb{font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:#fff;display:flex;align-items:center;gap:8px}
.site-footer .fb .dot{width:9px;height:9px;border-radius:50%;background:var(--orange)}
.site-footer .cols{display:flex;flex-wrap:wrap;gap:40px}
.site-footer .cols div{min-width:140px}
.site-footer .cols b{display:block;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px}
.site-footer a{color:#f7b98e;text-decoration:none}
.site-footer a:hover{color:#fff}
.site-footer .fine{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-size:12px;color:#8f867a;line-height:1.7}
.site-footer .fver{font:11px/1 ui-monospace,Menlo,Consolas,monospace;opacity:.45;letter-spacing:.02em}

