/* ================================================================
   HOUSEWIVES RELAXATION — Digital Menu Stylesheet
   Light default · Dark toggle · Blue accents · Green leafy border
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,400&family=Nunito:wght@300;400;600;700;800&family=Pacifico&display=swap');

:root {
  --bg:          #fafaf8;
  --bg2:         #f3f0ea;
  --bg3:         #ede9e0;
  --surface:     #ffffff;
  --border:      rgba(0,0,0,0.08);
  --border2:     rgba(0,0,0,0.05);
  --txt:         #1a1a1a;
  --txt2:        #444;
  --txt3:        #888;
  --gold:        #C47A0A;
  --gold2:       #E8A020;
  --gold-bg:     rgba(196,122,10,0.08);
  --gold-border: rgba(196,122,10,0.25);
  --blue:        #3B82C4;
  --blue2:       #5B9FD8;
  --blue-bg:     rgba(59,130,196,0.08);
  --blue-border: rgba(59,130,196,0.22);
  --red:         #c0392b;
  --green:       #2e7d52;
  --leaf-green:  #3a8a28;
  --pink:        #C8356E;
  --teal:        #1A9E8A;
  --purple:      #7B4FB5;
  --nav-bg:      rgba(250,250,248,0.97);
  --shadow:      0 2px 20px rgba(0,0,0,0.07);
  --shadow-lg:   0 8px 40px rgba(0,0,0,0.1);
  --kid-accent:  #e67e22;
  --kid-bg:      rgba(230,126,34,0.07);
}

[data-theme="dark"] {
  --bg:          #111111;
  --bg2:         #1a1a1a;
  --bg3:         #222222;
  --surface:     #1e1e1e;
  --border:      rgba(255,255,255,0.08);
  --border2:     rgba(255,255,255,0.05);
  --txt:         #f5f0e8;
  --txt2:        #c8bfb0;
  --txt3:        #777;
  --gold:        #F5A623;
  --gold2:       #FFCC44;
  --gold-bg:     rgba(245,166,35,0.1);
  --gold-border: rgba(245,166,35,0.3);
  --blue:        #5B9FD8;
  --blue2:       #7DBCE8;
  --blue-bg:     rgba(91,159,216,0.1);
  --blue-border: rgba(91,159,216,0.28);
  --red:         #FF6B6B;
  --green:       #56CF8A;
  --leaf-green:  #5ec94a;
  --pink:        #FF7EB3;
  --teal:        #4DD9C0;
  --purple:      #B57BFF;
  --nav-bg:      rgba(15,15,15,0.97);
  --shadow:      0 2px 20px rgba(0,0,0,0.4);
  --shadow-lg:   0 8px 40px rgba(0,0,0,0.6);
  --kid-accent:  #FF9F43;
  --kid-bg:      rgba(255,159,67,0.08);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background: var(--bg); color: var(--txt);
  font-family: 'Nunito', sans-serif;
  overflow-x: hidden; transition: background 0.4s, color 0.4s;
  -webkit-font-smoothing: antialiased;
}
img { display:block; max-width:100%; }



/* ═══════════════════════════════════════
   HERO TITLE — bushy green leaf frame
   ═══════════════════════════════════════ */
.hero-title-frame {
  position: relative;
  display: inline-block;
  padding: 18px 32px;
  margin-bottom: 10px;
}

/* Top and bottom leaf strips */
.hero-title-frame::before,
.hero-title-frame::after {
  content: '';
  position: absolute;
  left: 0; right: 0;
  height: 22px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='22'%3E%3Cpath d='M6 20 Q3 12 6 4 Q9 12 6 20Z' fill='%232d6e20' opacity='0.9'/%3E%3Cpath d='M6 20 Q3 12 6 4 Q9 12 6 20Z' fill='%233a8a28' opacity='0.7' transform='rotate(18 6 12)'/%3E%3Cpath d='M18 21 Q14 13 18 3 Q22 13 18 21Z' fill='%234a9e35' opacity='0.85'/%3E%3Cpath d='M18 21 Q14 13 18 3 Q22 13 18 21Z' fill='%232d6e20' opacity='0.6' transform='rotate(-15 18 12)'/%3E%3Cpath d='M30 20 Q27 11 30 3 Q33 11 30 20Z' fill='%233a8a28' opacity='0.9'/%3E%3Cpath d='M30 20 Q27 11 30 3 Q33 11 30 20Z' fill='%235ab040' opacity='0.5' transform='rotate(22 30 11)'/%3E%3Cpath d='M42 21 Q38 12 42 3 Q46 12 42 21Z' fill='%234a9e35' opacity='0.8'/%3E%3Cpath d='M42 21 Q38 12 42 3 Q46 12 42 21Z' fill='%232d6e20' opacity='0.55' transform='rotate(-20 42 12)'/%3E%3Cpath d='M54 20 Q51 11 54 3 Q57 11 54 20Z' fill='%233a8a28' opacity='0.9'/%3E%3Cpath d='M54 20 Q51 11 54 3 Q57 11 54 20Z' fill='%235ab040' opacity='0.5' transform='rotate(16 54 11)'/%3E%3Cpath d='M66 21 Q62 13 66 4 Q70 13 66 21Z' fill='%234a9e35' opacity='0.85'/%3E%3Cpath d='M66 21 Q62 13 66 4 Q70 13 66 21Z' fill='%232d6e20' opacity='0.6' transform='rotate(-12 66 12)'/%3E%3Cpath d='M77 20 Q74 12 77 4 Q80 12 77 20Z' fill='%233a8a28' opacity='0.8'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-size: 80px 22px;
}
.hero-title-frame::before { top: 0; }
.hero-title-frame::after  { bottom: 0; transform: scaleY(-1); }

/* Left and right leaf strips */
.hero-title-frame .leaf-left,
.hero-title-frame .leaf-right {
  position: absolute;
  top: 0; bottom: 0;
  width: 22px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='80'%3E%3Cpath d='M20 6 Q12 3 4 6 Q12 9 20 6Z' fill='%232d6e20' opacity='0.9'/%3E%3Cpath d='M20 6 Q12 3 4 6 Q12 9 20 6Z' fill='%233a8a28' opacity='0.65' transform='rotate(18 12 6)'/%3E%3Cpath d='M21 18 Q13 14 3 18 Q13 22 21 18Z' fill='%234a9e35' opacity='0.85'/%3E%3Cpath d='M21 18 Q13 14 3 18 Q13 22 21 18Z' fill='%232d6e20' opacity='0.55' transform='rotate(-15 12 18)'/%3E%3Cpath d='M20 30 Q11 27 3 30 Q11 33 20 30Z' fill='%233a8a28' opacity='0.9'/%3E%3Cpath d='M20 30 Q11 27 3 30 Q11 33 20 30Z' fill='%235ab040' opacity='0.5' transform='rotate(20 11 30)'/%3E%3Cpath d='M21 42 Q12 38 3 42 Q12 46 21 42Z' fill='%234a9e35' opacity='0.8'/%3E%3Cpath d='M21 42 Q12 38 3 42 Q12 46 21 42Z' fill='%232d6e20' opacity='0.55' transform='rotate(-18 12 42)'/%3E%3Cpath d='M20 54 Q11 51 3 54 Q11 57 20 54Z' fill='%233a8a28' opacity='0.9'/%3E%3Cpath d='M20 54 Q11 51 3 54 Q11 57 20 54Z' fill='%235ab040' opacity='0.45' transform='rotate(16 11 54)'/%3E%3Cpath d='M21 66 Q13 62 4 66 Q13 70 21 66Z' fill='%234a9e35' opacity='0.85'/%3E%3Cpath d='M21 66 Q13 62 4 66 Q13 70 21 66Z' fill='%232d6e20' opacity='0.6' transform='rotate(-12 12 66)'/%3E%3Cpath d='M20 77 Q12 74 4 77 Q12 80 20 77Z' fill='%233a8a28' opacity='0.8'/%3E%3C/svg%3E");
  background-repeat: repeat-y;
  background-size: 22px 80px;
  pointer-events: none;
  z-index: 1;
}
.hero-title-frame .leaf-left  { left: 0; }
.hero-title-frame .leaf-right { right: 0; transform: scaleX(-1); }

/* Dark mode — brighter green */
[data-theme="dark"] .hero-title-frame::before,
[data-theme="dark"] .hero-title-frame::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='22'%3E%3Cpath d='M6 20 Q3 12 6 4 Q9 12 6 20Z' fill='%2345b032' opacity='0.9'/%3E%3Cpath d='M6 20 Q3 12 6 4 Q9 12 6 20Z' fill='%235ec94a' opacity='0.65' transform='rotate(18 6 12)'/%3E%3Cpath d='M18 21 Q14 13 18 3 Q22 13 18 21Z' fill='%2372d855' opacity='0.85'/%3E%3Cpath d='M18 21 Q14 13 18 3 Q22 13 18 21Z' fill='%2345b032' opacity='0.55' transform='rotate(-15 18 12)'/%3E%3Cpath d='M30 20 Q27 11 30 3 Q33 11 30 20Z' fill='%235ec94a' opacity='0.9'/%3E%3Cpath d='M30 20 Q27 11 30 3 Q33 11 30 20Z' fill='%2390e870' opacity='0.45' transform='rotate(22 30 11)'/%3E%3Cpath d='M42 21 Q38 12 42 3 Q46 12 42 21Z' fill='%2372d855' opacity='0.8'/%3E%3Cpath d='M42 21 Q38 12 42 3 Q46 12 42 21Z' fill='%2345b032' opacity='0.5' transform='rotate(-20 42 12)'/%3E%3Cpath d='M54 20 Q51 11 54 3 Q57 11 54 20Z' fill='%235ec94a' opacity='0.9'/%3E%3Cpath d='M54 20 Q51 11 54 3 Q57 11 54 20Z' fill='%2390e870' opacity='0.45' transform='rotate(16 54 11)'/%3E%3Cpath d='M66 21 Q62 13 66 4 Q70 13 66 21Z' fill='%2372d855' opacity='0.85'/%3E%3Cpath d='M66 21 Q62 13 66 4 Q70 13 66 21Z' fill='%2345b032' opacity='0.55' transform='rotate(-12 66 12)'/%3E%3Cpath d='M77 20 Q74 12 77 4 Q80 12 77 20Z' fill='%235ec94a' opacity='0.8'/%3E%3C/svg%3E");
}
[data-theme="dark"] .hero-title-frame .leaf-left,
[data-theme="dark"] .hero-title-frame .leaf-right {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='80'%3E%3Cpath d='M20 6 Q12 3 4 6 Q12 9 20 6Z' fill='%2345b032' opacity='0.9'/%3E%3Cpath d='M20 6 Q12 3 4 6 Q12 9 20 6Z' fill='%235ec94a' opacity='0.6' transform='rotate(18 12 6)'/%3E%3Cpath d='M21 18 Q13 14 3 18 Q13 22 21 18Z' fill='%2372d855' opacity='0.85'/%3E%3Cpath d='M21 18 Q13 14 3 18 Q13 22 21 18Z' fill='%2345b032' opacity='0.5' transform='rotate(-15 12 18)'/%3E%3Cpath d='M20 30 Q11 27 3 30 Q11 33 20 30Z' fill='%235ec94a' opacity='0.9'/%3E%3Cpath d='M20 30 Q11 27 3 30 Q11 33 20 30Z' fill='%2390e870' opacity='0.45' transform='rotate(20 11 30)'/%3E%3Cpath d='M21 42 Q12 38 3 42 Q12 46 21 42Z' fill='%2372d855' opacity='0.8'/%3E%3Cpath d='M21 42 Q12 38 3 42 Q12 46 21 42Z' fill='%2345b032' opacity='0.5' transform='rotate(-18 12 42)'/%3E%3Cpath d='M20 54 Q11 51 3 54 Q11 57 20 54Z' fill='%235ec94a' opacity='0.9'/%3E%3Cpath d='M20 54 Q11 51 3 54 Q11 57 20 54Z' fill='%2390e870' opacity='0.4' transform='rotate(16 11 54)'/%3E%3Cpath d='M21 66 Q13 62 4 66 Q13 70 21 66Z' fill='%2372d855' opacity='0.85'/%3E%3Cpath d='M21 66 Q13 62 4 66 Q13 70 21 66Z' fill='%2345b032' opacity='0.55' transform='rotate(-12 12 66)'/%3E%3Cpath d='M20 77 Q12 74 4 77 Q12 80 20 77Z' fill='%235ec94a' opacity='0.8'/%3E%3C/svg%3E");
}

/* ── SEARCH ── */
.search-wrapper { position:fixed; top:16px; left:16px; z-index:9999; display:flex; align-items:center; }
.search-toggle {
  width:44px; height:44px; border-radius:50%;
  border:1.5px solid var(--blue-border); background:var(--surface);
  box-shadow:var(--shadow); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  font-size:1rem; transition:all 0.25s; color:var(--blue); flex-shrink:0;
}
.search-toggle:hover { transform:scale(1.08); }
.search-box { width:0; overflow:hidden; transition:width 0.35s cubic-bezier(0.4,0,0.2,1),opacity 0.3s; opacity:0; }
.search-box.open { width:230px; opacity:1; margin-left:8px; }
.search-box input {
  width:100%; height:44px; border:1.5px solid var(--blue-border); border-radius:22px;
  background:var(--surface); color:var(--txt); padding:0 18px;
  font-family:'Nunito',sans-serif; font-size:0.85rem; outline:none;
  box-shadow:var(--shadow); transition:border-color 0.2s;
}
.search-box input:focus { border-color:var(--blue); }
.search-box input::placeholder { color:var(--txt3); }
.search-results {
  position:absolute; top:54px; left:0; width:320px; max-height:380px;
  overflow-y:auto; background:var(--surface); border:1px solid var(--border);
  border-radius:12px; box-shadow:var(--shadow-lg); display:none; z-index:9998;
}
.search-results.show { display:block; }
.search-result-item { padding:12px 16px; cursor:pointer; border-bottom:1px solid var(--border2); transition:background 0.15s; }
.search-result-item:last-child { border-bottom:none; }
.search-result-item:hover { background:var(--blue-bg); }
.sr-cat { font-size:0.58rem; letter-spacing:2px; text-transform:uppercase; color:var(--blue); font-weight:700; margin-bottom:2px; }
.sr-name { font-size:0.88rem; font-weight:700; color:var(--txt); }
.sr-price { font-size:0.82rem; color:var(--gold); font-weight:700; float:right; margin-top:-20px; }
.search-no-results { padding:20px 16px; text-align:center; color:var(--txt3); font-size:0.85rem; }

/* ── THEME TOGGLE ── */
.theme-toggle {
  position:fixed; top:16px; right:16px; z-index:9999;
  width:44px; height:44px; border-radius:50%;
  border:1.5px solid var(--gold-border); background:var(--surface);
  box-shadow:var(--shadow); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; transition:all 0.25s; color:var(--gold);
}
.theme-toggle:hover { transform:scale(1.08); }
.icon-sun  { display:none; }
.icon-moon { display:block; }
[data-theme="dark"] .icon-sun  { display:block; }
[data-theme="dark"] .icon-moon { display:none; }

/* ── HERO ── */
.hero {
  min-height:100vh; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center;
  padding:60px 24px 100px; position:relative; overflow:hidden; background:var(--bg);
}
.hero-pattern {
  position:absolute; inset:0; pointer-events:none;
  background-image:
    radial-gradient(circle at 15% 25%, var(--gold-bg) 0%, transparent 45%),
    radial-gradient(circle at 85% 70%, var(--blue-bg) 0%, transparent 45%),
    radial-gradient(circle at 50% 50%, rgba(58,138,40,0.04) 0%, transparent 60%);
}

/* ── CUSTOM SVG LOGO (no image) ── */
.i-price {
  font-size: 18px; /* adjust if needed */
  display: flex;
  align-items: center;
}

.i-icons {
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
}

.protein-icon {
  height: 1em;       /* matches text height */
  width: auto;
  object-fit: contain;
}
.logo-svg-wrap {
  margin-bottom:32px; animation:fadeUp 0.8s ease both;
  filter: drop-shadow(0 0 18px rgba(196,122,10,0.3));
}
.logo-svg-wrap svg { display:block; margin:0 auto; }

.hero-eyebrow {
  font-size:0.62rem; letter-spacing:5px; text-transform:uppercase;
  color:var(--blue); font-weight:700; margin-bottom:10px;
  animation:fadeUp 0.8s 0.1s ease both;
}
.hero-title {
  font-family:'Playfair Display',serif;
  font-size:clamp(2.8rem,8vw,5.5rem); font-weight:900; line-height:1;
  color:var(--txt); margin-bottom:6px; animation:fadeUp 0.8s 0.2s ease both;
}
.hero-title span { color:var(--gold); }
.hero-script {
  font-family:'Pacifico',cursive; font-size:clamp(1rem,2.5vw,1.4rem);
  color:var(--blue); margin-bottom:24px; animation:fadeUp 0.8s 0.3s ease both;
}
.hero-rule {
  display:flex; align-items:center; gap:12px; justify-content:center;
  margin-bottom:24px; animation:fadeUp 0.8s 0.35s ease both;
}
.hero-rule .hl { width:55px; height:1px; background:var(--gold-border); }
.hero-rule .hd { width:5px; height:5px; background:var(--gold); transform:rotate(45deg); }

.hero-intro { max-width:540px; margin:0 auto 28px; animation:fadeUp 0.8s 0.4s ease both; padding:0 8px; }
.hero-intro .tagline {
  font-family:'Playfair Display',serif; font-size:clamp(1.1rem,3vw,1.5rem); font-weight:700;
  color:var(--txt); margin-bottom:12px; line-height:1.4;
}
.hero-intro .tagline span { color:var(--blue); }
.hero-intro p { font-size:clamp(0.88rem,2.2vw,1rem); color:var(--txt2); line-height:1.85; font-weight:400; }

.hero-badge {
  display:inline-block; background:var(--gold-bg); border:1.5px solid var(--gold-border);
  color:var(--gold); padding:10px 24px; font-size:0.68rem; letter-spacing:2.5px;
  text-transform:uppercase; font-weight:700; border-radius:3px; margin-bottom:16px;
  animation:fadeUp 0.8s 0.5s ease both;
}
.hero-accents { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; animation:fadeUp 0.8s 0.6s ease both; }
.hero-accent-pill { padding:5px 14px; border-radius:20px; font-size:0.68rem; font-weight:700; letter-spacing:1px; text-transform:uppercase; }
.pill-blue  { background:var(--blue-bg);  color:var(--blue);  border:1px solid var(--blue-border); }
.pill-gold  { background:var(--gold-bg);  color:var(--gold);  border:1px solid var(--gold-border); }
.pill-green { background:rgba(46,125,82,0.08); color:var(--green); border:1px solid rgba(46,125,82,0.25); }

.scroll-hint {
  position:absolute; bottom:28px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:6px;
  color:var(--txt3); font-size:0.58rem; letter-spacing:3px; text-transform:uppercase;
}
.scroll-arrow {
  width:16px; height:16px;
  border-right:2px solid var(--blue); border-bottom:2px solid var(--blue);
  transform:rotate(45deg); animation:bob 1.8s infinite;
}
@keyframes bob { 0%,100%{transform:rotate(45deg) translateY(0)} 50%{transform:rotate(45deg) translateY(6px)} }
@keyframes fadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

/* ── STICKY NAV ── */
.snav {
  position:sticky; top:0; z-index:998;
  background:var(--nav-bg); border-bottom:1px solid var(--border);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  scrollbar-width:none; box-shadow:var(--shadow);
}
.snav::-webkit-scrollbar { display:none; }
.snav-inner { display:flex; width:max-content; min-width:100%; padding:0 10px; justify-content:center; }
.snav-inner a {
  color:var(--txt3); text-decoration:none; font-size:0.62rem; letter-spacing:2px;
  text-transform:uppercase; font-weight:700; padding:16px 14px; white-space:nowrap;
  border-bottom:2.5px solid transparent; transition:color 0.2s,border-color 0.2s;
  font-family:'Nunito',sans-serif;
}
.snav-inner a:hover, .snav-inner a.act { color:var(--blue); border-bottom-color:var(--blue); }

/* ── SECTION WRAPPER ── */
.msec { padding:80px 0 0; }
.msec:first-of-type { padding-top:60px; }

/* ── SECTION HEADER ── */
.sec-hdr { text-align:center; padding:0 24px; margin-bottom:32px; }
.sec-eyebrow { display:block; font-size:0.6rem; letter-spacing:5px; text-transform:uppercase; color:var(--blue); font-weight:700; margin-bottom:8px; }
.sec-title { font-family:'Playfair Display',serif; font-size:clamp(2rem,6vw,3rem); font-weight:900; color:var(--txt); line-height:1; margin-bottom:12px; }
.sec-title em { font-family:'Pacifico',cursive; color:var(--gold); display:block; font-size:0.5em; font-style:normal; margin-bottom:4px; font-weight:400; }
.sec-rule { display:flex; align-items:center; gap:10px; justify-content:center; }
.sec-rule .rl { flex:0 0 45px; height:1px; }
.sec-rule .ll { background:linear-gradient(90deg,transparent,var(--blue-border)); }
.sec-rule .rr { background:linear-gradient(90deg,var(--blue-border),transparent); }
.sec-rule .rd { width:5px; height:5px; background:var(--blue); transform:rotate(45deg); }

/* ── BANNER IMAGE ── */
.sec-banner { width:100%; display:block; margin:28px 0 0; height:340px; object-fit:cover; object-position:center center; }
@media(max-width:600px){ .sec-banner{height:210px;} }
@media(min-width:601px) and (max-width:900px){ .sec-banner{height:270px;} }

/* ── NOTICE BAR ── */
.notice {
  background:var(--blue-bg); border-top:1px solid var(--blue-border); border-bottom:1px solid var(--blue-border);
  padding:13px 20px; text-align:center; font-size:0.7rem; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--blue); font-weight:700;
}

.i-desc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.i-icons {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}

.i-icons img {
  width: 35px;
  height: 35px;
  object-fit: contain;
 /* makes icons solid black */
  opacity: 0.8;
}

/* ── ITEMS LIST ── */
.items { max-width:860px; margin:0 auto; padding:0 20px; }
.item {
  display:grid; grid-template-columns:1fr auto; gap:20px; align-items:start;
  padding:24px 0; border-bottom:1px solid var(--border2); position:relative;
}
.item::before { content:''; position:absolute; left:-20px; top:0; bottom:0; width:3px; background:transparent; transition:background 0.25s; }
.item:hover::before { background:var(--blue); }
.i-name { font-family:'Nunito',sans-serif; font-size:0.92rem; font-weight:800; letter-spacing:0.3px; text-transform:uppercase; color:var(--txt); margin-bottom:5px; line-height:1.3; }
.i-desc { font-size:0.82rem; color:var(--txt2); line-height:1.75; font-weight:400; }
.i-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.i-tag { font-size:0.55rem; letter-spacing:1.5px; text-transform:uppercase; padding:2px 7px; border:1px solid var(--blue-border); color:var(--blue); border-radius:3px; }
.i-tag.new  { border-color:rgba(46,125,82,0.35); color:var(--green); }
.i-tag.veg  { border-color:rgba(46,125,82,0.35); color:var(--green); }
.i-tag.nuts { border-color:rgba(192,57,43,0.35); color:var(--red); }
.i-price { font-family:'Playfair Display',serif; font-size:1.5rem; font-weight:700; color:var(--gold); white-space:nowrap; line-height:1; padding-top:2px; }
.i-price sup { font-size:0.5em; font-family:'Nunito',sans-serif; font-weight:400; vertical-align:super; }
.i-price-multi { display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.i-price-row { display:flex; align-items:baseline; gap:6px; }
.i-price-lbl { font-size:0.58rem; color:var(--txt3); letter-spacing:1.5px; text-transform:uppercase; }

/* ── SUBSECTION HEADER ── */
.subsec { max-width:860px; margin:40px auto 0; padding:14px 20px; border-left:4px solid var(--blue); background:var(--blue-bg); border-radius:0 6px 6px 0; }
.subsec h3 { font-family:'Playfair Display',serif; font-size:1.2rem; color:var(--blue); font-weight:700; letter-spacing:2px; text-transform:uppercase; }
.subsec p { font-size:0.68rem; color:var(--txt3); margin-top:2px; letter-spacing:1px; font-style:italic; }

/* ── INLINE IMAGE ── */
.inline-img { max-width:860px; margin:32px auto 0; padding:0 20px; }
.inline-img img { width:100%; height:260px; object-fit:cover; display:block; border-radius:4px; }

/* ── SECTION COLOR OVERRIDES ── */
#steak .sec-eyebrow,#burgers .sec-eyebrow,#seafood .sec-eyebrow{color:var(--gold);}
#steak .sec-rule .rd,#burgers .sec-rule .rd,#seafood .sec-rule .rd{background:var(--gold);}
#steak .sec-rule .ll,#burgers .sec-rule .ll,#seafood .sec-rule .ll{background:linear-gradient(90deg,transparent,var(--gold-border));}
#steak .sec-rule .rr,#burgers .sec-rule .rr,#seafood .sec-rule .rr{background:linear-gradient(90deg,var(--gold-border),transparent);}
#steak .i-price,#burgers .i-price,#seafood .i-price{color:var(--gold);}
#steak .item::before,#burgers .item::before,#seafood .item::before{background:var(--gold)!important;}
#steak .notice,#burgers .notice,#seafood .notice{background:var(--gold-bg);border-top-color:var(--gold-border);border-bottom-color:var(--gold-border);color:var(--gold);}

#kiddies .sec-title{color:var(--kid-accent);}
#kiddies .sec-eyebrow{color:var(--kid-accent);}
#kiddies .sec-rule .rd{background:var(--kid-accent);}
#kiddies .sec-rule .ll{background:linear-gradient(90deg,transparent,rgba(230,126,34,0.3));}
#kiddies .sec-rule .rr{background:linear-gradient(90deg,rgba(230,126,34,0.3),transparent);}
#kiddies .i-price{color:var(--kid-accent);}
#kiddies .item::before{background:var(--kid-accent)!important;}
#kiddies .i-name{color:var(--kid-accent);}
#kiddies .notice{background:var(--kid-bg);border-color:rgba(230,126,34,0.25);color:var(--kid-accent);}

#dessert .sec-title{color:var(--pink);}
#dessert .sec-eyebrow{color:var(--pink);}
#dessert .sec-rule .rd{background:var(--pink);}
#dessert .sec-rule .ll{background:linear-gradient(90deg,transparent,rgba(200,53,110,0.25));}
#dessert .sec-rule .rr{background:linear-gradient(90deg,rgba(200,53,110,0.25),transparent);}
#dessert .i-price{color:var(--pink);}
#dessert .item::before{background:var(--pink)!important;}
#dessert .subsec{border-left-color:var(--pink);background:rgba(200,53,110,0.06);}
#dessert .subsec h3{color:var(--pink);}

#drinks .sec-title{color:var(--teal);}
#drinks .sec-eyebrow{color:var(--teal);}
#drinks .sec-rule .rd{background:var(--teal);}
#drinks .sec-rule .ll{background:linear-gradient(90deg,transparent,rgba(26,158,138,0.3));}
#drinks .sec-rule .rr{background:linear-gradient(90deg,rgba(26,158,138,0.3),transparent);}
#drinks .subsec{border-left-color:var(--teal);background:rgba(26,158,138,0.07);}
#drinks .subsec h3{color:var(--teal);}

#vegetarian .sec-title{color:var(--green);}
#vegetarian .sec-eyebrow{color:var(--green);}
#vegetarian .sec-rule .rd{background:var(--green);}
#vegetarian .i-price{color:var(--green);}
#vegetarian .item::before{background:var(--green)!important;}

#pasta .sec-title{color:var(--white);}
#pasta .sec-eyebrow{color:var(--purple);}
#pasta .sec-rule .rd{background:var(--purple);}
#pasta .i-price{color:var(--gold);}
#pasta .item::before{background:var(--purple)!important;}

/* ══ DRINKS VISUAL CARDS ══ */
.drink-cat-header {
  position:relative; width:100%; margin:36px 0 0; overflow:hidden; height:190px;
  display:flex; align-items:flex-end;
}
.drink-cat-header img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:brightness(0.5); }
.drink-cat-label { position:relative; z-index:1; padding:16px 24px 14px; width:100%; }
.drink-cat-label h3 { font-family:'Playfair Display',serif; font-size:1.6rem; font-weight:900; color:#fff; text-shadow:0 2px 10px rgba(0,0,0,0.5); margin-bottom:4px; }
.drink-cat-label p  { font-size:0.68rem; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,0.8); font-weight:600; }
.drink-price-badge { display:inline-block; padding:3px 12px; border-radius:20px; font-size:0.75rem; font-weight:800; margin-top:6px; letter-spacing:1px; background:var(--teal); color:#fff; }

/* Drinks chips — spaced out nicely */
.drinks-grid {
  max-width:860px; margin:0 auto; padding:20px 20px 12px;
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap:10px;
}
.drink-chip {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:11px 18px; border:1.5px solid var(--border);
  border-radius:30px; background:var(--surface); transition:all 0.2s;
}
.drink-chip:hover { border-color:var(--teal); background:rgba(26,158,138,0.07); }
.drink-chip-name  { font-size:0.84rem; font-weight:700; color:var(--txt); }
.drink-chip-price { font-size:0.8rem; font-weight:800; color:var(--teal); white-space:nowrap; }

.drinks-grid.soda .drink-chip:hover  { border-color:var(--blue); background:var(--blue-bg); }
.drinks-grid.soda .drink-chip-price  { color:var(--blue); }
.drinks-grid.coffee .drink-chip:hover{ border-color:var(--gold); background:var(--gold-bg); }
.drinks-grid.coffee .drink-chip-price{ color:var(--gold); }
.drinks-grid.freak .drink-chip:hover { border-color:var(--pink); background:rgba(200,53,110,0.07); }
.drinks-grid.freak .drink-chip-price { color:var(--pink); }
.drinks-grid.gourmet .drink-chip:hover{ border-color:var(--purple); background:rgba(123,79,181,0.07); }
.drinks-grid.gourmet .drink-chip-price{ color:var(--purple); }

/* ── FOOTER ── */
footer {
  margin-top:80px; background:var(--bg2); border-top:1px solid var(--border);
  padding:64px 24px 44px; text-align:center;
}
.ft-logo-svg { margin:0 auto 20px; filter:drop-shadow(0 0 12px rgba(196,122,10,0.2)); }
.ft-name { font-family:'Playfair Display',serif; font-size:1.8rem; font-weight:900; color:var(--txt); margin-bottom:4px; }
.ft-sub  { font-family:'Pacifico',cursive; font-size:1rem; color:var(--blue); margin-bottom:28px; }
.ft-rule { display:flex; align-items:center; gap:10px; justify-content:center; margin-bottom:28px; }
.ft-rule .fl { flex:0 0 50px; height:1px; }
.ft-rule .ll { background:linear-gradient(90deg,transparent,var(--gold-border)); }
.ft-rule .rr { background:linear-gradient(90deg,var(--gold-border),transparent); }
.ft-rule .fd { width:5px; height:5px; background:var(--gold); transform:rotate(45deg); }
.ft-social { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-bottom:28px; }
.ft-btn {
  display:inline-flex; align-items:center; gap:7px;
  border:1.5px solid var(--blue-border); color:var(--blue);
  padding:11px 20px; font-size:0.65rem; letter-spacing:2px; text-transform:uppercase;
  font-weight:700; text-decoration:none; transition:all 0.2s; background:transparent;
  font-family:'Nunito',sans-serif; border-radius:3px;
}
.ft-btn:hover { background:var(--blue-bg); border-color:var(--blue); }
.ft-message { font-family:'Playfair Display',serif; font-style:italic; font-size:1.15rem; color:var(--txt2); margin-bottom:16px; }
.ft-legal { font-size:0.6rem; color:var(--txt3); letter-spacing:2px; text-transform:uppercase; }

/* ── RESPONSIVE ── */
@media(max-width:600px){
  .snav-inner { justify-content:flex-start; }
  .snav-inner a { padding:14px 11px; font-size:0.57rem; letter-spacing:1.5px; }
  .hero-title { font-size:2.4rem; }
  .item { padding:18px 0; gap:14px; }
  .i-name { font-size:0.85rem; }
  .i-desc { font-size:0.78rem; }
  .i-price { font-size:1.3rem; }
  .items { padding:0 16px; }
  .subsec { margin:28px 16px 0; }
  .theme-toggle { top:12px; right:12px; width:40px; height:40px; }
  .search-wrapper { top:12px; left:12px; }
  .search-toggle { width:40px; height:40px; }
  .search-box.open { width:180px; }
  .drinks-grid { grid-template-columns:1fr 1fr; gap:8px; padding:14px 16px 8px; }
  .drink-chip { padding:9px 12px; }
  .drink-chip-name { font-size:0.78rem; }
  .drink-cat-header { height:140px; }
  .drink-cat-label h3 { font-size:1.3rem; }
}
@media(min-width:601px) and (max-width:900px){
  .snav-inner { justify-content:flex-start; }
  .drinks-grid { grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); }
}

.search-highlight { animation:searchPulse 2s ease; }
@keyframes searchPulse {
  0%  { background:var(--blue-bg); }
  50% { background:rgba(59,130,196,0.14); }
  100%{ background:transparent; }
}
