/* Navelya — self-hosted fonts (Lora + Work Sans), latin + latin-ext for Slovak diacritics */
@font-face{font-family:'Lora';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/lora-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Lora';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/lora-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Lora';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/lora-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Lora';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/lora-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Lora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/lora-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Lora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/lora-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/worksans-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/worksans-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/worksans-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/worksans-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/worksans-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/worksans-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/worksans-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/worksans-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --bg:oklch(96% 0.014 80);
  --bg-alt:oklch(93% 0.022 74);
  --card:oklch(98% 0.01 80);
  --ink:oklch(24% 0.012 50);
  --ink-soft:oklch(40% 0.015 50);
  --ink-softer:oklch(30% 0.015 50);
  --border:oklch(85% 0.015 70);
  --border-soft:oklch(88% 0.015 70);
  --brand:oklch(46% 0.11 38);
  --brand-strong:oklch(56% 0.12 38);
  --footer-bg:oklch(22% 0.012 50);
  --footer-ink:oklch(88% 0.01 78);
  --footer-ink-soft:oklch(65% 0.01 78);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:'Work Sans',sans-serif;
  font-size:18px;
  line-height:1.6;
  min-height:100vh;
}
::selection{background:oklch(56% 0.12 38 / 0.25);}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;}
h1,h2,h3,h4{font-family:'Lora',serif;margin:0;}

.wrap{max-width:1280px;margin:0 auto;padding:0 24px;}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:40;background:oklch(96% 0.014 80 / 0.97);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);}
.site-header .wrap{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.logo{background:none;border:none;cursor:pointer;font-family:'Lora',serif;font-weight:700;font-size:28px;letter-spacing:0.5px;color:var(--ink);padding:4px 0;}
.main-nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.nav-link{background:none;border:none;cursor:pointer;font-size:17px;font-weight:600;color:var(--ink);padding:8px 2px;}
.nav-dropdown{position:relative;}
.nav-dropdown-panel{position:absolute;top:44px;left:0;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 30px oklch(24% 0.012 50 / 0.12);min-width:260px;padding:10px;display:none;flex-direction:column;z-index:50;}
.nav-dropdown.open .nav-dropdown-panel{display:flex;}
.nav-dropdown-panel a{text-align:left;background:none;border:none;cursor:pointer;padding:12px 14px;border-radius:10px;font-size:16px;color:var(--ink);display:block;}
.nav-dropdown-panel a.all{font-weight:600;color:var(--brand);}
.nav-dropdown-panel a:hover{background:var(--bg-alt);}
.header-actions{display:flex;align-items:center;gap:10px;}
.cart-btn{position:relative;background:var(--brand);color:oklch(98% 0.005 80);border:none;border-radius:999px;padding:12px 18px;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;}
.cart-badge{background:oklch(98% 0.005 80);color:var(--brand);border-radius:999px;min-width:24px;height:24px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;}
.hamburger{display:flex;background:none;border:1px solid var(--border);border-radius:12px;padding:12px 14px;cursor:pointer;font-size:20px;}

/* ---------- Mobile menu ---------- */
.mobile-menu{position:fixed;inset:0;background:var(--bg);z-index:60;overflow-y:auto;padding:20px;display:none;}
.mobile-menu.open{display:block;}
.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.mobile-menu-head .logo-text{font-family:'Lora',serif;font-weight:700;font-size:26px;}
.mobile-close{background:var(--bg-alt);border:none;border-radius:12px;padding:12px 16px;font-size:20px;cursor:pointer;}
.mobile-links{display:flex;flex-direction:column;gap:4px;}
.mobile-links a{text-align:left;background:none;border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;padding:18px 6px;font-size:19px;font-weight:600;color:var(--ink);display:block;}

/* ---------- Cart drawer ---------- */
.cart-overlay{position:fixed;inset:0;background:oklch(24% 0.012 50 / 0.45);z-index:70;display:none;}
.cart-overlay.open{display:block;}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:oklch(97% 0.012 78);z-index:71;box-shadow:-16px 0 40px oklch(24% 0.012 50 / 0.2);display:flex;flex-direction:column;padding:24px;overflow-y:auto;transform:translateX(100%);transition:transform .25s ease;}
.cart-drawer.open{transform:translateX(0);}
.cart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.cart-head h2{font-size:24px;}
.cart-close{background:var(--bg-alt);border:none;border-radius:10px;padding:10px 14px;font-size:18px;cursor:pointer;}
.cart-empty-msg{font-size:17px;color:var(--ink-soft);}
.cart-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--border-soft);}
.cart-item-thumb{width:72px;height:72px;flex:none;border-radius:12px;background:repeating-linear-gradient(45deg,oklch(89% 0.025 70),oklch(89% 0.025 70) 8px,oklch(93% 0.02 75) 8px,oklch(93% 0.02 75) 16px);object-fit:cover;}
.cart-item-info{flex:1;}
.cart-item-name{font-weight:700;font-size:16px;}
.cart-item-price{font-size:14px;color:var(--ink-soft);margin:2px 0 8px;}
.qty-row{display:flex;align-items:center;gap:10px;}
.qty-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--card);cursor:pointer;font-size:16px;}
.qty-val{font-weight:600;min-width:20px;text-align:center;}
.remove-btn{margin-left:auto;background:none;border:none;color:var(--brand);font-size:14px;cursor:pointer;text-decoration:underline;}
.cart-summary{margin-top:20px;padding-top:16px;}
.cart-total-row{display:flex;justify-content:space-between;font-size:18px;font-weight:700;margin-bottom:6px;}
.cart-shipping-msg{font-size:14px;color:var(--ink-soft);margin:0 0 16px;}
.checkout-btn{width:100%;background:var(--brand);color:oklch(98% 0.005 80);border:none;border-radius:12px;padding:16px;font-size:17px;font-weight:700;cursor:pointer;}
.checkout-done{background:oklch(92% 0.03 145);border-radius:12px;padding:16px;font-size:15px;font-weight:600;}

/* ---------- Cookie banner ---------- */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:80;background:var(--footer-bg);color:oklch(96% 0.01 78);padding:18px 24px;display:none;gap:16px;align-items:center;flex-wrap:wrap;justify-content:center;}
.cookie-banner.show{display:flex;}
.cookie-banner p{margin:0;font-size:15px;max-width:640px;}
.cookie-banner a{color:oklch(80% 0.05 40);text-decoration:underline;}
.cookie-accept{background:var(--brand-strong);color:oklch(98% 0.005 80);border:none;border-radius:10px;padding:12px 20px;font-size:15px;font-weight:700;cursor:pointer;}

/* ---------- Hero ---------- */
.hero{padding:48px 24px 0;}
.hero-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:32px;align-items:center;background:var(--bg-alt);border-radius:28px;overflow:hidden;}
.hero-text{padding:48px 40px;}
.eyebrow{display:inline-block;background:oklch(58% 0.12 38 / 0.14);color:var(--brand);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;padding:8px 14px;border-radius:999px;margin-bottom:20px;}
.hero-text h1{font-size:52px;line-height:1.12;margin:0 0 20px;color:oklch(22% 0.012 50);}
.hero-text p{font-size:19px;color:var(--ink-soft);max-width:480px;margin:0 0 32px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
.btn-primary{background:var(--brand);color:oklch(98% 0.005 80);border:none;border-radius:14px;padding:18px 28px;font-size:17px;font-weight:700;cursor:pointer;display:inline-block;}
.btn-secondary{background:var(--card);color:var(--ink);border:2px solid var(--border);border-radius:14px;padding:16px 26px;font-size:17px;font-weight:700;cursor:pointer;display:inline-block;}
.hero-media{min-height:340px;position:relative;}
.hero-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}

/* ---------- Generic sections ---------- */
section.page-section{max-width:1280px;margin:0 auto;padding:80px 24px 20px;}
.section-title{font-size:36px;text-align:center;margin:0 0 12px;}
.section-sub{text-align:center;font-size:18px;color:var(--ink-soft);max-width:600px;margin:0 auto 40px;}
.band{background:var(--bg-alt);padding:70px 24px;}
.band .wrap{padding:0 24px;}

.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
.cat-card{text-align:left;background:var(--card);border:1px solid var(--border-soft);border-radius:20px;overflow:hidden;cursor:pointer;padding:0;display:block;}
.cat-card-media{height:170px;overflow:hidden;position:relative;}
.cat-card-media img{width:100%;height:100%;object-fit:cover;}
.cat-card-body{padding:22px 22px 26px;}
.cat-card-body h3{font-size:22px;margin:0 0 8px;}
.cat-card-body p{font-size:16px;color:var(--ink-soft);margin:0;}

.moments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;}
.moment-card{background:var(--card);border-radius:18px;overflow:hidden;}
.moment-media{height:130px;overflow:hidden;}
.moment-media img{width:100%;height:100%;object-fit:cover;}
.moment-body{padding:20px;}
.moment-body h3{font-size:19px;margin:0 0 6px;}
.moment-body p{font-size:15px;color:var(--ink-soft);margin:0;}

.pantry-section{max-width:1280px;margin:0 auto;padding:80px 24px;}
.pantry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:32px;align-items:center;}
.pantry-media{min-height:360px;border-radius:24px;overflow:hidden;position:relative;}
.pantry-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.pantry-text h2{font-size:34px;margin:0 0 14px;}
.pantry-text p{font-size:18px;color:var(--ink-soft);margin:0 0 24px;}
.pantry-chips{display:flex;flex-wrap:wrap;gap:10px;}
.chip{background:var(--bg-alt);padding:10px 16px;border-radius:999px;font-size:15px;font-weight:600;}

.herbs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.herb-card{background:var(--card);border-radius:16px;overflow:hidden;}
.herb-media{height:100px;overflow:hidden;}
.herb-media img{width:100%;height:100%;object-fit:cover;}
.herb-body{padding:16px;}
.herb-body h3{font-size:17px;margin:0 0 4px;}
.herb-body p{font-size:13.5px;color:var(--ink-soft);margin:0;}

.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;}
.step-card{background:var(--bg-alt);border-radius:18px;padding:26px;}
.step-num{width:46px;height:46px;border-radius:12px;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Lora',serif;font-weight:700;font-size:20px;margin-bottom:16px;}
.step-card h3{font-size:19px;margin:0 0 8px;}
.step-card p{font-size:15px;color:var(--ink-soft);margin:0;}

.tip-band{background:oklch(46% 0.06 60);color:oklch(97% 0.008 78);padding:60px 24px;}
.tip-band .wrap{max-width:840px;text-align:center;padding:0 24px;}
.tip-band h2{font-size:30px;margin:0 0 20px;}
.tip-band p{font-size:20px;margin:0;}

.teaser-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px;flex-wrap:wrap;gap:12px;}
.teaser-head h2{font-size:32px;}
.teaser-link{background:none;border:none;color:var(--brand);font-size:16px;font-weight:700;cursor:pointer;text-decoration:underline;}
.teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;}
.teaser-card{text-align:left;background:var(--bg-alt);border:none;border-radius:16px;padding:22px;cursor:pointer;display:block;}
.teaser-card h3{font-size:18px;margin:0 0 8px;}
.teaser-card p{font-size:14.5px;color:var(--ink-soft);margin:0;}

/* ---------- Category landing pages ---------- */
.cat-hero{max-width:1280px;margin:0 auto;padding:48px 24px 0;}
.cat-hero-inner{background:var(--bg-alt);border-radius:24px;padding:56px 40px;}
.cat-hero-inner h1{font-size:40px;margin:0 0 14px;}
.cat-hero-inner p{font-size:19px;color:var(--ink-soft);max-width:640px;margin:0 0 26px;}
.subcats-section{max-width:1280px;margin:0 auto;padding:56px 24px;}
.subcats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.subcat-item{background:var(--card);border:1px solid var(--border-soft);border-radius:14px;padding:20px;text-align:center;font-weight:700;font-size:16px;}
.articles-band{background:var(--bg-alt);padding:56px 24px;}
.articles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;}
.article-link{text-align:left;background:var(--card);border:none;border-radius:14px;padding:18px 20px;font-size:16px;font-weight:600;cursor:pointer;display:block;}
.sections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;}
.section-chip{background:var(--bg-alt);border-radius:16px;padding:24px;}
.section-chip h3{font-size:19px;margin:0;}
.cat-photo{max-width:1280px;margin:0 auto;padding:0 24px 70px;}
.cat-photo-media{height:280px;border-radius:20px;overflow:hidden;position:relative;}
.cat-photo-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}

/* ---------- Products catalog ---------- */
.products-main{max-width:1280px;margin:0 auto;padding:48px 24px 80px;}
.products-main h1{font-size:38px;margin:0 0 10px;}
.products-main > p{font-size:18px;color:var(--ink-soft);margin:0 0 30px;}
.filters-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px;}
.filter-btn{border-radius:999px;padding:12px 20px;font-size:15px;font-weight:700;cursor:pointer;border:2px solid var(--border);background:var(--card);color:var(--ink);}
.filter-btn.active{background:var(--brand);color:#fff;border-color:var(--brand);}
.product-card{background:var(--card);border:1px solid var(--border-soft);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;}
.product-media{height:170px;overflow:hidden;}
.product-media img{width:100%;height:100%;object-fit:cover;}
.product-body{padding:20px;display:flex;flex-direction:column;flex:1;}
.product-cat{font-size:12.5px;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;color:var(--brand);margin-bottom:6px;}
.product-body h3{font-size:20px;margin:0 0 8px;}
.product-body p{font-size:15px;color:var(--ink-soft);margin:0 0 16px;flex:1;}
.product-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.product-price{font-weight:700;font-size:18px;}
.add-cart-btn{background:var(--brand);color:#fff;border:none;border-radius:10px;padding:12px 18px;font-size:15px;font-weight:700;cursor:pointer;}

/* ---------- Simple text pages ---------- */
.page-narrow{max-width:900px;margin:0 auto;padding:48px 24px 80px;}
.page-narrow h1{font-size:38px;margin:0 0 10px;}
.page-narrow > p.lead{font-size:18px;color:var(--ink-soft);margin:0 0 32px;}

.accordion-list{display:flex;flex-direction:column;gap:14px;}
.accordion-item{background:var(--bg-alt);border-radius:16px;overflow:hidden;}
.accordion-item.plain{background:var(--card);border:1px solid var(--border-soft);border-radius:18px;}
.accordion-toggle{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:19px;font-family:'Lora',serif;}
.accordion-toggle .icon{font-size:20px;font-family:'Work Sans',sans-serif;}
.accordion-panel{margin:0;padding:0 24px 24px;font-size:16px;color:var(--ink-softer);display:none;}
.accordion-item.open .accordion-panel{display:block;}

.recipe-item{background:var(--card);border:1px solid var(--border-soft);border-radius:18px;overflow:hidden;}
.recipe-toggle{width:100%;text-align:left;background:none;border:none;cursor:pointer;display:flex;gap:18px;align-items:center;padding:0;}
.recipe-media{width:120px;height:100px;flex:none;overflow:hidden;}
.recipe-media img{width:100%;height:100%;object-fit:cover;}
.recipe-head{flex:1;padding:16px 20px 16px 0;}
.recipe-head h3{font-size:20px;margin:0 0 6px;font-family:'Lora',serif;}
.recipe-head span{font-size:14px;color:var(--ink-soft);}
.recipe-icon{font-size:20px;padding-right:20px;}
.recipe-panel{padding:0 20px 24px;display:none;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;}
.recipe-item.open .recipe-panel{display:grid;}
.recipe-panel h4{font-size:15px;text-transform:uppercase;letter-spacing:0.5px;color:var(--brand);margin:0 0 10px;}
.recipe-panel ul,.recipe-panel ol{margin:0;padding-left:20px;font-size:15px;color:var(--ink-softer);}
.recipe-panel li{margin-bottom:6px;}

.faq-item{background:var(--bg-alt);border-radius:14px;overflow:hidden;}
.faq-toggle{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:20px 22px;display:flex;justify-content:space-between;align-items:center;font-size:17px;font-weight:700;font-family:'Work Sans',sans-serif;}
.faq-panel{margin:0;padding:0 22px 20px;font-size:16px;color:var(--ink-softer);display:none;}
.faq-item.open .faq-panel{display:block;}

/* ---------- About ---------- */
.about-box{background:var(--bg-alt);border-radius:20px;padding:36px;}
.about-box p{font-size:18px;margin:0 0 18px;}
.about-box p:last-child{margin:0;}
.about-media{height:260px;border-radius:20px;margin-top:24px;overflow:hidden;position:relative;}
.about-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;}
.contact-card{background:var(--bg-alt);border-radius:18px;padding:28px;font-size:17px;}
.contact-card h3{font-size:21px;margin:0 0 14px;}
.contact-card p{margin:0 0 6px;}
.contact-card p.ico{margin:0;font-weight:600;}
.contact-form{display:flex;flex-direction:column;gap:14px;}
.contact-form input,.contact-form textarea{padding:16px;border-radius:12px;border:1px solid var(--border);font-size:16px;font-family:inherit;}
.contact-form textarea{resize:vertical;}
.contact-form button{background:var(--brand);color:#fff;border:none;border-radius:12px;padding:16px;font-size:17px;font-weight:700;cursor:pointer;}
.contact-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-success{background:oklch(92% 0.03 145);border-radius:16px;padding:26px;font-size:17px;font-weight:600;}
.form-error{background:oklch(92% 0.05 25);border-radius:16px;padding:16px 20px;font-size:15px;font-weight:600;margin-bottom:14px;}
.contact-media{height:220px;border-radius:16px;overflow:hidden;margin-top:24px;}
.contact-media img{width:100%;height:100%;object-fit:cover;}

/* ---------- Legal ---------- */
.legal-page{max-width:760px;margin:0 auto;padding:48px 24px 80px;}
.legal-page h1{font-size:34px;margin:0 0 24px;}
.legal-paras{display:flex;flex-direction:column;gap:16px;font-size:16px;color:var(--ink-softer);}
.legal-paras p{margin:0;}

/* ---------- Footer ---------- */
.site-footer{background:var(--footer-bg);color:var(--footer-ink);margin-top:40px;padding:60px 24px 30px;}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px;margin-bottom:40px;}
.footer-brand{font-family:'Lora',serif;font-weight:700;font-size:26px;color:#fff;margin-bottom:10px;}
.footer-tagline{font-size:16px;color:oklch(75% 0.01 78);margin:0;}
.footer-col h4{font-size:14px;text-transform:uppercase;letter-spacing:1px;color:var(--footer-ink-soft);margin:0 0 14px;font-family:'Work Sans',sans-serif;}
.footer-links{display:flex;flex-direction:column;gap:10px;}
.footer-links a{text-align:left;background:none;border:none;color:var(--footer-ink);font-size:15px;cursor:pointer;padding:0;display:block;}
.footer-bottom{border-top:1px solid oklch(35% 0.012 50);padding-top:24px;font-size:14px;color:oklch(60% 0.01 78);}
.footer-bottom p{margin:0 0 6px;}
.footer-bottom p:last-child{margin:0;}

/* ---------- 404 ---------- */
.notfound{max-width:640px;margin:0 auto;padding:100px 24px;text-align:center;}
.notfound h1{font-size:64px;margin:0 0 16px;}
.notfound p{font-size:18px;color:var(--ink-soft);margin:0 0 28px;}

@media (max-width:900px){
  .main-nav{display:none;}
  .hero-text h1{font-size:38px;}
  .herbs-grid{grid-template-columns:1fr;}
  .subcats-grid{grid-template-columns:1fr;}
}
