/* ============================================================
   AMUD ALEPH — CANONICAL BRAND SYSTEM
   Single source of truth for tokens + shared chrome (announce,
   nav, footer, buttons). Every page links this file so the brand
   cannot drift. Page-specific styles live in each page's <style>.
   ============================================================ */

:root{
  /* greens */
  --green-deep:#0e3b2e; --green:#36503e; --green-mid:#4a6848; --green-ink:#2d3a2e;
  --green-accent:#145a43; --green-btn:#4c5e4f; --green-badge:#1b3527;
  --sage-ink:#4a5c4b; --sage-sub:#6b7a68; --sage-line:#55604f;
  /* parchments */
  --parch:#f2ebdf; --parch-2:#ece7da; --header:#f3ecdb;
  --cream:#f6f1e7; --cream-2:#fffaf0; --card-top:#fffdf9; --off:#faf8f4;
  --gs-card:#eaf2ec;
  /* text */
  --ink:#26302a; --ink-2:#2a312a; --body:#4c574c;
  /* accents — ember = FILL, rust = TEXT */
  --ember:#c4744a; --rust:#8f4a24; --rust-italic:#b4703f;
  /* dark-section text */
  --dk-head:#f6f1e7; --dk-body:#a9bcaa; --dk-quote:#c9d6c8;
  /* lines */
  --line-warm:#e5dfd1; --line-card:#e6e0d3; --line-faq:#dbd4c4; --line-strip:#d8cfbf; --line-sage:#b7b9a7;
  /* footer */
  --footer-copy:#dcebd8; --footer-link:#dce8da;
  /* spacing scale (4/8/12/16/24/32/40/64/96) + layout */
  --content:1200px; --pad:40px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{font-family:"Inter",system-ui,sans-serif;color:var(--ink);background:var(--parch);line-height:1.5;-webkit-font-smoothing:antialiased;}
.serif{font-family:"Libre Baskerville",Georgia,serif;}
.heb{font-family:"Frank Ruhl Libre","Libre Baskerville",serif;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
.inner{max-width:var(--content);margin:0 auto;padding:0 var(--pad);width:100%;}
:focus-visible{outline:2px solid var(--green-accent);outline-offset:2px;border-radius:3px;}

/* ---------- ANNOUNCEMENT ---------- */
.announce{background:var(--green-ink);color:var(--off);text-align:center;font-size:12.4px;font-weight:500;letter-spacing:.12px;padding:10px 16px;}
.announce a{color:var(--off);}

/* ---------- NAV ---------- */
.header{background:var(--header);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line-warm);}
.nav{max-width:var(--content);margin:0 auto;padding:14px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand{display:flex;flex-direction:column;line-height:1;}
.brand-name{font-family:"Libre Baskerville",Georgia,serif;font-size:22.9px;font-weight:700;color:var(--green-ink);line-height:1;}
.brand-heb{font-family:"Frank Ruhl Libre",serif;font-size:12px;color:var(--sage-sub);margin-top:3px;}
.nav-links{display:flex;align-items:center;gap:26.7px;}
.nav-links a{font-size:14.5px;font-weight:500;color:var(--sage-ink);transition:color .15s;}
.nav-links a:hover{color:var(--green-ink);}
.nav-links a.active{color:var(--green-ink);font-weight:600;}
.nav-cta{display:flex;align-items:center;gap:12px;}
.btn-phone{width:42.7px;height:45.7px;display:flex;align-items:center;justify-content:center;background:var(--cream-2);border:1px solid #b8d1b4;border-radius:5.7px;color:var(--green);transition:background .15s;}
.btn-phone:hover{background:#fff;}
.btn-apply{height:45.7px;display:flex;align-items:center;justify-content:center;padding:0 22.9px;background:var(--green);border:1px solid var(--green-mid);border-radius:5.7px;color:var(--cream-2);font-size:16px;font-weight:600;letter-spacing:.32px;white-space:nowrap;transition:background .15s;}
.btn-apply:hover{background:var(--green-accent);}
.hamburger{display:none;background:none;border:0;cursor:pointer;padding:8px;}
.hamburger span{display:block;width:24px;height:2px;background:var(--green-ink);margin:5px 0;border-radius:2px;}

/* ---------- FOOTER (canonical: Program / For Families / Organization) ---------- */
.footer{background:var(--green-mid);color:var(--footer-link);padding:56px 0 27px;}
.footer .finner{max-width:var(--content);margin:0 auto;padding:0 var(--pad);display:flex;gap:56px;flex-wrap:wrap;}
.footer .fbrand{flex:1.4;min-width:260px;}
.footer .fbrand .logo{display:flex;align-items:center;gap:10px;}
.footer .fbrand .mark{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--footer-copy);display:flex;align-items:center;justify-content:center;font-family:"Libre Baskerville",serif;font-size:13px;font-weight:700;color:var(--footer-copy);}
.footer .fbrand .name{font-family:"Libre Baskerville",serif;font-size:19px;font-weight:700;color:var(--off);}
.footer .fcopy{font-size:14px;color:var(--footer-copy);line-height:1.7;margin-top:16px;max-width:340px;}
.footer .fcol{flex:1;min-width:150px;}
.footer .fcol h4{font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--dk-body);margin-bottom:16px;}
.footer .fcol a{display:block;font-size:14.5px;color:var(--footer-link);margin-bottom:9px;transition:color .15s;}
.footer .fcol a:hover{color:var(--off);}
.footer .fcol .gate{color:var(--dk-body);font-style:italic;}
.footer .fbottom{max-width:var(--content);margin:34px auto 0;padding:22px var(--pad) 0;border-top:1px solid rgba(250,248,244,.18);display:flex;justify-content:space-between;gap:16px;font-size:13px;color:var(--footer-copy);flex-wrap:wrap;}

/* ---------- SHARED BUTTON PRIMITIVE ---------- */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;background:var(--green-btn);color:var(--off);border-radius:8px;padding:16px 32px;font-size:15px;font-weight:700;letter-spacing:1.8px;transition:transform .14s,background .15s;}
.btn-primary:hover{background:var(--green-accent);}
.btn-primary:active{transform:translateY(1px);}
.btn-ember{background:var(--ember);color:var(--green-ink);}
.btn-ember:hover{background:#b3673f;color:var(--off);}

/* ---------- RESPONSIVE CHROME ---------- */
@media (max-width:760px){
  :root{--pad:22px;}
  .nav-links{display:none;}
  .nav-cta .btn-apply{display:none;}
  .hamburger{display:block;}
  .nav.open .nav-links{display:flex;position:absolute;top:71.6px;left:0;right:0;flex-direction:column;align-items:stretch;gap:6px;background:var(--header);padding:14px 22px 20px;border-bottom:1px solid var(--line-warm);z-index:41;}
  .nav.open .nav-links a{padding:12px 0;width:100%;font-size:16px;}
  .footer .finner{flex-direction:column;gap:34px;}
  .footer .fcol a{padding:5px 0;margin-bottom:2px;}
  .footer .fbottom{flex-direction:column;gap:8px;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto;}}
