/* ===================================================================
   Egg to Apples — base.css
   Theme-owned shared chrome: root vars, reset, nav, mobile menu, footer.
   Extracted verbatim from the client HTML. Page-specific CSS lives in
   assets/css/pages/{slug}.css.
   =================================================================== */

:root {
  --teal:#46a1b7; --dark-teal:#00373b; --red:#bf3027; --gray:#58595b;
  --cream:#f2ece0; --bone:#ebe5d6; --white:#ffffff; --ink:#0a0a0a;
  --f-r:'Raleway',sans-serif; --f-m:'Courier New',monospace;
}
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; -webkit-tap-highlight-color:transparent; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body { font-family:var(--f-r); background:var(--cream); color:var(--ink); overflow-x:hidden; line-height:1.5; }
img { max-width:100%; height:auto; display:block; }
a { color:inherit; }
button { font:inherit; border:none; background:none; cursor:pointer; color:inherit; }

/* --- Nav --- (scoped to body > nav so WP-injected <nav> elements — e.g.
   the_posts_pagination() — don't inherit the fixed site-nav styling) */
body > nav { position:fixed; top:0; left:0; right:0; z-index:500; display:flex; align-items:center; justify-content:space-between; padding:1.25rem 2.5rem; background:rgba(242,236,224,.92); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border-bottom:1px solid rgba(0,0,0,.06); }
.nav-logo { display:flex; align-items:center; gap:.65rem; text-decoration:none; }
.nav-logo img { width:32px; height:auto; }
.nav-logo-text { font-family:var(--f-r); font-weight:800; font-size:.9rem; color:var(--ink); letter-spacing:-.01em; line-height:1; }
.nav-logo-text .dot { color:var(--red); }
.nav-right { display:flex; align-items:center; gap:2rem; }
.nav-link { font-family:var(--f-r); font-weight:600; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink); text-decoration:none; opacity:.55; transition:opacity .2s; }
.nav-link:hover { opacity:1; }
.nav-link.active { opacity:1; }
.nav-link.cta { opacity:1; color:var(--red); }
.hamburger { display:none; width:28px; height:18px; position:relative; z-index:502; }
.hamburger span { position:absolute; left:0; right:0; height:2px; background:var(--ink); transition:transform .3s,opacity .2s,top .3s,background .3s; }
.hamburger span:nth-child(1){top:0;} .hamburger span:nth-child(2){top:8px;} .hamburger span:nth-child(3){top:16px;}
.hamburger.open span { background:var(--cream); }
.hamburger.open span:nth-child(1){top:8px;transform:rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){top:8px;transform:rotate(-45deg);}

/* --- Mobile menu --- */
.mobile-menu { position:fixed; inset:0; z-index:501; background:var(--ink); color:var(--cream); padding:6rem 2rem 3rem; display:flex; flex-direction:column; transform:translateX(100%); transition:transform .4s cubic-bezier(.16,1,.3,1); overflow-y:auto; }
.mobile-menu.open { transform:translateX(0); }
.mobile-menu-link { font-family:var(--f-r); font-weight:800; font-size:2.25rem; letter-spacing:-.02em; color:var(--cream); text-decoration:none; padding:1rem 0; border-bottom:1px solid rgba(242,236,224,.15); display:flex; justify-content:space-between; align-items:center; }
.mobile-menu-link::after { content:'\2192'; opacity:.4; font-weight:500; }
.mobile-menu-link.cta { color:var(--red); }
.mobile-menu-footer { margin-top:auto; padding-top:2.5rem; font-family:var(--f-m); font-size:.65rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(242,236,224,.35); display:flex; flex-direction:column; gap:.35rem; }
body.menu-open { overflow:hidden; }

/* --- Footer --- */
footer { background:var(--ink); color:var(--cream); padding:2rem 2.5rem; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.footer-logo { display:flex; align-items:center; gap:.55rem; text-decoration:none; }
.footer-logo img { width:22px; opacity:.55; }
.footer-logo-text { font-family:var(--f-r); font-weight:700; font-size:.8rem; color:rgba(242,236,224,.45); }
.footer-links { display:flex; gap:1.5rem; flex-wrap:wrap; }
.footer-link { font-family:var(--f-r); font-weight:500; font-size:.6rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(242,236,224,.4); text-decoration:none; }
.footer-link:hover { color:var(--cream); }
.footer-copy { font-family:var(--f-m); font-size:.58rem; letter-spacing:.1em; color:rgba(242,236,224,.3); }

/* --- Chrome responsive --- */
@media (max-width:768px) {
  body > nav { padding:1rem 1.5rem; }
  .nav-right { display:none; }
  .hamburger { display:block; }
  footer { padding:1.5rem; flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
