:root{
  --paper:#f8f8f3;--white:#fff;--ink:#18261d;--green:#2f5b39;--green2:#426d49;
  --sage:#e8ede5;--muted:#6b766d;--line:rgba(24,38,29,.13);--shadow:0 24px 80px rgba(17,35,23,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.skip-link{position:fixed;left:12px;top:12px;z-index:1000;background:#fff;color:var(--ink);padding:10px 14px;border-radius:8px;transform:translateY(-150%);transition:.2s}
.skip-link:focus{transform:none}
/* A felső kupon/hirdetési sáv mostantól rögzített (fixed) a lap tetején,
   görgetéskor is végig látszik — Sasinc kérésére, 2026-09-27. Emiatt a
   sáv magassága (44px, a korábbi ~38px helyett, a vastagabb kuponjelvény
   miatt) össze van hangolva a .site-header "top" értékével, illetve
   minden aloldal fejléc alatti térközével (.hero, .legal-header,
   .recipe-header, .blog-post, .termek-oldal — ha itt módosítasz valamit
   a magasságon, azokon is vezesd át). */
.announcement{min-height:44px;background:#f39d12;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 20px;font-size:11px;letter-spacing:.04em;text-align:center;position:fixed;top:0;left:0;right:0;z-index:61}
.announcement span{color:#5c3d06}.announcement a{text-decoration:underline;text-underline-offset:3px}
/* A ".announcement span" fenti szabálya a kuponjelvény belső feliratait
   (azok is span-ek) is elsötétítette volna — itt visszaadjuk nekik a
   jelvény fehér szövegszínét (Sasinc kérésére, 2026-09-27: a "Vágólapra
   másolva" visszajelzés betűi legyenek fehérek). */
.announcement .kupon-badge span{color:inherit}
.announcement-divider{width:1px;height:18px;background:rgba(24,38,29,.25)}
.kupon-badge{display:inline-flex;align-items:stretch;height:29px;border:1.5px solid rgba(255,255,255,.55);border-radius:999px;overflow:hidden;background:#f28832;color:#fff;cursor:pointer;font:inherit;padding:0;line-height:1;box-shadow:0 3px 10px rgba(24,38,29,.22);transition:transform .15s,box-shadow .15s,background .15s}
.kupon-badge:hover{transform:translateY(-1px);background:#e07a25;box-shadow:0 5px 16px rgba(24,38,29,.3)}
.kupon-badge:active{transform:translateY(0)}
.kupon-kod-blokk{display:flex;align-items:center;padding:0 15px;white-space:nowrap}
.kupon-kod{font-weight:800;letter-spacing:.04em;font-size:12px}
.kupon-kedvezmeny{font-weight:600;opacity:.85;margin-left:6px;font-size:11.5px}
.kupon-divider{width:1.5px;background:rgba(255,255,255,.28)}
.kupon-masol{display:flex;align-items:center;gap:6px;padding:0 14px;font-weight:600;font-size:11.5px;white-space:nowrap}
.kupon-badge.kupon-masolva{background:var(--ink)}
.site-header{height:88px;position:fixed;z-index:60;top:44px;left:0;right:0;background:rgba(248,248,243,.86);backdrop-filter:blur(22px);display:flex;align-items:center;padding:0 4.5vw;border-bottom:1px solid transparent;gap:30px;transition:.3s}
.site-header.scrolled{background:rgba(248,248,243,.97);border-color:var(--line);box-shadow:0 8px 35px rgba(0,0,0,.04)}
.brand{display:flex;align-items:center;min-width:240px}.brand-logo{display:block;width:190px;height:auto;max-height:62px;object-fit:contain;object-position:left center}.brand-mark{width:38px;height:38px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;font:italic 25px "Playfair Display",serif;color:var(--green)}
.brand-text{font:700 13px Manrope;line-height:1.05;letter-spacing:-.02em}.brand-text strong{display:block;font-weight:500}
.main-nav{display:flex;align-items:center;justify-content:center;gap:26px;font-size:13px;flex:1}.main-nav a{padding:14px 0;position:relative;white-space:nowrap}
.main-nav a.nav-highlight{font-weight:700}
.nav-search{display:flex;align-items:center;position:relative}
.nav-search input{width:170px;border:1px solid var(--line);background:#fff;border-radius:100px;padding:7px 14px;font:500 12px "DM Sans",sans-serif;color:var(--ink)}
.nav-search input::placeholder{color:var(--muted)}
.nav-search input:focus{outline:2px solid var(--green2);outline-offset:1px;width:210px}
.nav-search-results{position:absolute;top:calc(100% + 8px);left:0;width:320px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:6px;z-index:70;display:none}
.nav-search-results.is-open{display:block}
.nav-search-result{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;cursor:pointer;text-align:left}
.nav-search-result:hover,.nav-search-result:focus-visible{background:var(--sage)}
.nav-search-result img{width:38px;height:38px;border-radius:7px;object-fit:cover;flex:0 0 auto;background:var(--sage)}
.nav-search-result .logo-thumb{object-fit:contain;padding:6px}
.nav-search-result-info{flex:1;min-width:0}
.nav-search-result-info strong{display:block;font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-search-result-info span{font-size:11px;color:var(--muted)}
.nav-search-more{padding:8px 10px;font-size:11px;color:var(--muted);text-align:center}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:8px;height:1px;background:var(--green);transition:.25s}.main-nav a:hover:after,.main-nav a:focus-visible:after{right:0}
.cart-link{font-size:11px;font-weight:800;letter-spacing:.05em;white-space:nowrap;display:flex;align-items:center;gap:6px;cursor:pointer}.menu-toggle{display:none;border:0;background:none;padding:10px;cursor:pointer}
.menu-toggle span{display:block;width:23px;height:1px;background:var(--ink);margin:6px 0}
.hero{height:calc(100vh - 0px);min-height:700px;position:relative;overflow:hidden;color:#fff;padding:132px 5vw 45px;display:flex;align-items:flex-end}
.hero-bg{position:absolute;inset:0;background:url("assets/hero-farm.jpg") center 58%/cover no-repeat;transform:scale(1.025)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,12,.86),rgba(4,20,12,.23) 62%,rgba(4,20,12,.4)),linear-gradient(0deg,rgba(4,20,12,.75),transparent 60%)}
.hero-content{position:relative;z-index:2;max-width:820px;padding:0 0 7vh 1vw}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.24em;opacity:.72}
/* A hero feletti "RÁBCAKAPI BIOKERTÉSZET · 1994 ÓTA" felirat — Sasinc
   kérésére, 2026-09-27: a mostani duplájára nagyítva, és a cím fölötti
   üres hely megszüntetve (csak ezen az egy helyen, a sablon többi
   ".eyebrow" felirata — pl. "VÁLOGASS KÍNÁLATUNKBÓL" — változatlan). */
.hero-content .eyebrow{font-size:20px;margin:0}
#hero-title{margin-top:0}
.hero h1{font:700 clamp(48px,6vw,94px)/.95 "Playfair Display",serif;letter-spacing:-.06em;margin:21px 0}.hero h1 em{font-weight:500}
.hero-lead{font:500 21px/1.45 "Playfair Display",serif;max-width:610px}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:29px}
.button{display:inline-flex;align-items:center;gap:18px;padding:15px 21px;border-radius:100px;font-size:11px;font-weight:700;letter-spacing:.06em;transition:.25s;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.button-primary{background:#4d7a52;color:#fff}.button-primary:hover,.button-primary:focus-visible{transform:translateY(-2px);background:#5b855f}
.button-dark{background:var(--green);color:#fff}.button span{font-size:18px}
.text-link{font-size:10px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link.light{color:#fff}
/* A "text-link" osztály eredetileg <a>-khoz készült — ha <button>-re kerül
   (pl. "← Vissza a bejelentkezéshez"), a böngésző natív gomb-kerete/háttere
   rácsúszik az aláhúzásra, és egy csúnya, dobozos "gagyi" gombot ad. Itt
   nullázzuk a natív gomb-kinézetet, hogy <button>-en is sima szöveges
   linkként nézzen ki. */
button.text-link{appearance:none;-webkit-appearance:none;background:none;border:none;border-bottom:1px solid currentColor;border-radius:0;padding:0 0 7px;margin:0;cursor:pointer;color:inherit;text-align:left}
.proof-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:58px;font-size:9px;letter-spacing:.08em;opacity:.8}
/* Hero-szakaszon belül a gombok, a szöveges link és a pipás sor a többi helyhez
   képest túl aprók voltak — itt, csak a hero-ra korlátozva, megnöveljük őket. */
.hero-actions .button{font-size:15px;padding:18px 28px;gap:14px}
.hero-actions .button span{font-size:20px}
.hero-actions .text-link{font-size:14px;padding-bottom:8px}
.hero .proof-row{font-size:13px;gap:28px}
.hero-badge{position:absolute;z-index:2;right:5vw;bottom:78px;width:220px;height:220px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backdrop-filter:blur(8px)}
.hero-badge strong{font:700 64px/1 Manrope;margin-bottom:6px}.hero-badge span{font-size:24px;line-height:1.2;opacity:.75;max-width:80%}
.trust{display:grid;grid-template-columns:repeat(4,1fr);padding:0 5vw;background:#fff;border-bottom:1px solid var(--line)}
.trust>div{min-height:105px;display:grid;grid-template-columns:31px 1fr;column-gap:10px;align-content:center;border-right:1px solid var(--line);padding:10px 22px}.trust>div:last-child{border:0}
.trust b{grid-row:1/3;font-size:18px;color:var(--green)}.trust strong{font:700 11px Manrope;letter-spacing:.04em}.trust span{font-size:9px;color:var(--muted);margin-top:3px}
.section{padding:125px 7vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:52px}.section h2,.features h2,.story h2,.final-cta h2{font:700 clamp(58px,7vw,108px)/.86 "Playfair Display",serif;letter-spacing:-.055em;margin:25px 0}.section h2 em,.features h2 em,.story h2 em,.final-cta h2 em{font-weight:500}
#shop-title,#cta-title,#testimonials-title{font:700 34px/1.15 "Playfair Display",serif!important;letter-spacing:-.03em!important}
.section-head-sub{font-size:16px;color:var(--muted);max-width:46ch;margin:0}
.categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.category-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.25s}.category-card:hover,.category-card:focus-visible{transform:translateY(-5px);box-shadow:0 18px 35px rgba(19,37,27,.09)}
.category-card img{width:100%;height:185px;display:block;object-fit:cover}.category-card div{padding:17px}.category-card small{font-size:9px;opacity:.5}.category-card h3{font:700 18px Manrope;margin:9px 0 10px;letter-spacing:-.02em}.category-card span{font-size:10px}
.price-list{margin-top:70px;padding-top:60px;border-top:1px solid var(--line)}
.product-search-row{margin-bottom:22px}
.product-search-input{width:100%;max-width:420px;border:1px solid var(--line);background:#fff;border-radius:100px;padding:13px 20px;font:500 14px "DM Sans",sans-serif;color:var(--ink)}
.product-search-input::placeholder{color:var(--muted)}
.product-search-input:focus{outline:2px solid var(--green2);outline-offset:1px}
.price-list-head{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap;margin-bottom:34px}
.price-list-head h3{font:700 34px "Playfair Display",serif;letter-spacing:-.03em;margin:10px 0 0}
.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}
.filter-tab{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:100px;padding:9px 16px;font-size:11px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:.2s}
.filter-tab:hover{border-color:var(--green2);color:var(--ink)}
.filter-tab.is-active{background:var(--green);border-color:var(--green);color:#fff}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.product-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.product-card:hover{transform:translateY(-4px);border-color:var(--green2);box-shadow:0 0 0 1px var(--green2),0 0 18px rgba(66,109,73,.35),0 14px 30px rgba(17,35,23,.14)}
.product-card-img-wrap{position:relative;width:100%;aspect-ratio:4/3;border-radius:10px;margin:0 0 16px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px}
.product-card-img-wrap img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center}
.product-card-img-wrap.no-image{display:flex;align-items:center;justify-content:center}
.product-card-img-wrap.no-image img.product-card-logo-fallback{width:44%;height:44%;object-fit:contain;opacity:.82}
.product-card-desc{font-size:12px;color:var(--muted);line-height:1.5;margin:0 0 14px}
.product-card-tag{font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--green2);text-transform:uppercase}
.product-card h4{font:700 18px Manrope;letter-spacing:-.01em;margin:8px 0 14px;min-height:44px}
.product-card-variants{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.product-card-variants li{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding-top:8px;border-top:1px solid var(--line)}
.product-card-variants li:first-child{border-top:0;padding-top:0}
.product-card-variants li>span:first-child{color:var(--muted)}
.product-card-variants li>span:last-child{font-weight:700;color:var(--ink)}
.product-card-note{margin:12px 0 0;font-size:11px;color:var(--muted);font-style:italic}
.product-card-kiszereles{margin:6px 0 0;font-size:11px;color:var(--muted)}
.price-note{margin-top:26px;font-size:11px;color:var(--muted);max-width:760px}
@media (max-width:800px){.product-grid{grid-template-columns:repeat(2,1fr)}.price-list{margin-top:50px;padding-top:40px}}
@media (max-width:520px){.product-grid{grid-template-columns:1fr}.filter-tabs{gap:6px}.filter-tab{padding:8px 13px;font-size:10px}.product-search-input{max-width:none}}

.manifesto{background:#e3e9df;padding:90px 13vw;display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:30px}.manifesto-mark{font:italic 110px/1 "Playfair Display",serif;color:var(--green);opacity:.45}.manifesto p{font:500 clamp(25px,3vw,43px)/1.05 "Playfair Display",serif;margin:0}.manifesto p em{font-weight:500}.manifesto>span{font-size:18px;letter-spacing:.13em;color:var(--muted)}
.features{background:var(--green);color:#f3f7f1;padding:125px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.features-intro p:last-child{font:500 19px/1.5 "Playfair Display",serif;max-width:450px;color:#e2e9e1}.features h2{margin-bottom:24px}.feature-list{align-self:center}.feature-list article{display:grid;grid-template-columns:28px 1fr;gap:18px;border-bottom:1px solid rgba(255,255,255,.2);padding:22px 0}.feature-list article>span{font-size:9px;opacity:.5}.feature-list h3{font:600 21px Manrope;margin:0 0 7px}.feature-list p{font-size:13px;line-height:1.55;color:#e2e9e1;margin:0;max-width:520px}
.story{display:grid;grid-template-columns:1.1fr .9fr}.story-photo{min-height:650px;background:url("assets/hero-farm.jpg") center/cover no-repeat}.story-copy{padding:10vw 7vw}.story-copy>p:not(.eyebrow){font:500 19px/1.55 "Playfair Display",serif;max-width:500px}.stats{display:flex;gap:38px;margin-top:55px}.stats span{font-size:20px;color:var(--muted)}.stats strong{display:block;font:700 34px Manrope;color:var(--ink);margin-bottom:3px}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.gallery-grid .gallery-item{display:block;position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow);cursor:zoom-in;border:0;background:none;padding:0;width:100%;text-align:left;font:inherit}.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.gallery-grid .gallery-item:hover img{transform:scale(1.06)}.gallery-grid .gallery-cap{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;font-size:11px;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent)}

.gallery-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(15,15,15,.92);display:flex;align-items:center;justify-content:center;padding:40px 70px}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox-content{margin:0;max-width:min(92vw,1100px);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:10px}
.gallery-lightbox-content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.gallery-lightbox-content figcaption{color:#fff;font-size:13px;text-align:center;opacity:.85}
.gallery-share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:2px}
.gallery-lightbox-content .gallery-share-row{justify-content:center}
.gallery-share-btn{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border,#e5e5e5);border-radius:50%;width:40px;height:40px;padding:0;cursor:pointer;transition:transform .15s;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.gallery-lightbox-content .gallery-share-btn{box-shadow:0 2px 10px rgba(0,0,0,.35);border:0}
.gallery-share-btn:hover{transform:scale(1.08)}
.gallery-share-btn svg{flex:none}
.gallery-share-toast{position:fixed;z-index:2000;bottom:26px;left:50%;transform:translateX(-50%);background:#fff;color:#18261d;font-size:12px;font-weight:600;padding:8px 16px;border-radius:20px;box-shadow:0 4px 16px rgba(0,0,0,.35)}
.gallery-share-toast[hidden]{display:none}
@media (max-width:640px){.gallery-share-btn{width:36px;height:36px}.gallery-share-btn svg{width:26px;height:26px}}
.gallery-lightbox-close{position:absolute;top:18px;right:22px;background:none;border:0;color:#fff;font-size:34px;line-height:1;cursor:pointer;padding:6px 10px}
.gallery-lightbox-close:hover{opacity:.7}
.gallery-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:0;color:#fff;font-size:18px;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}
.gallery-lightbox-nav:hover{background:rgba(255,255,255,.24)}
.gallery-lightbox-prev{left:16px}
.gallery-lightbox-next{right:16px}
@media (max-width:640px){.gallery-lightbox{padding:70px 16px}.gallery-lightbox-nav{width:38px;height:38px;font-size:15px}.gallery-lightbox-prev{left:6px}.gallery-lightbox-next{right:6px}}
.testimonials{background:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.testimonial-grid article{border:1px solid var(--line);border-radius:18px;padding:30px;min-height:200px}.quote{font:italic 70px/1 "Playfair Display",serif;color:var(--green);opacity:.45}.testimonial-grid p{font:500 18px/1.45 "Playfair Display",serif}.testimonial-grid small{font-size:13px;font-weight:700;letter-spacing:.1em;color:var(--muted);display:inline-block;margin-top:8px}.testimonial-note{background:var(--sage)}.testimonial-note strong{font:700 19px Manrope}.testimonial-note p{font:400 13px/1.5 "DM Sans",sans-serif;color:var(--muted)}
.faq-list{max-width:900px;margin-left:auto}.faq-list details{border-top:1px solid var(--line);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:24px 4px;font:600 18px Manrope;display:flex;justify-content:space-between}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font-size:22px;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list p{max-width:720px;margin:0 0 25px;padding:0 4px;color:var(--muted);font-size:14px;line-height:1.65}
.final-cta{background:var(--ink);color:#fff;padding:105px 7vw;display:flex;justify-content:space-between;align-items:center;gap:50px}.final-cta h2{margin-bottom:20px}.final-cta .cta-lead{color:#dce5dc;font:500 18px/1.5 "Playfair Display",serif;max-width:520px}
/* A "Válassz közvetlenül..." szöveg mostantól kattintható, a webshop
   termékrácshoz (#shop) visz — Sasinc kérésére, 2026-09-27. */
.cta-lead-link{color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(220,229,220,.5);transition:.2s}
.cta-lead-link:hover{text-decoration-color:#dce5dc}
.cta-map{flex:0 0 auto;width:420px;max-width:40vw}.cta-map iframe{width:100%;height:260px;border:0;border-radius:18px;display:block}.cta-map-link{display:block;margin-top:12px;font-size:11px;text-align:center}
.footer-logo{display:block;width:210px;height:auto;max-height:72px;object-fit:contain;object-position:left center}.footer{background:#101912;color:#dfe7df;padding:65px 7vw 25px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:55px;border-bottom:1px solid rgba(255,255,255,.12)}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand .brand-mark{color:#b8caa8;border-color:#b8caa8}.footer-brand .brand-text{color:#fff}.footer-top p{font:500 17px/1.45 "Playfair Display",serif;color:#b9c4b9}.footer-contact{display:flex;flex-direction:column;gap:6px;text-align:left;font-size:12px;margin-top:12px}.footer-contact span{color:#91a092;margin-top:6px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;color:#879489;font-size:12px}
.footer-col h4{font:700 11px Manrope;letter-spacing:.08em;text-transform:uppercase;color:#7fae62;margin:0 0 18px}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.footer-col a{font-size:13px;color:#c7d2c5}
.footer-col a:hover,.footer-col a:focus-visible{color:#fff}
.footer-col-about h4{color:#fff;font-size:12px}
.footer-col-about p{font:600 16px/1.4 "Playfair Display",serif;color:#dfe7df;margin:0}
.footer-col-about .footer-col-desc{font:400 12px/1.65 "DM Sans",sans-serif;color:#879489;margin-top:10px}
.footer-bottom a{font-size:13px;font-weight:600;color:#dfe7df;text-decoration:underline;text-underline-offset:3px}
.footer-bottom a:hover,.footer-bottom a:focus-visible{color:#fff}
.footer-top p.footer-impresszum{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1);font:400 11px/1.6 "DM Sans",sans-serif;color:#879489}
:focus-visible{outline:2px solid #91b19a;outline-offset:4px}
@media (max-width:1100px){.main-nav{gap:16px}.brand{min-width:210px}}
@media (max-width:800px){
  .site-header{height:72px;top:44px;padding:0 5vw}.main-nav{position:fixed;inset:116px 0 0;background:var(--paper);display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:35px 7vw;gap:0;transform:translateX(100%);transition:.3s;overflow:auto}
  .main-nav.open{transform:none}.main-nav a{font:600 26px "Playfair Display",serif;padding:20px 0;border-bottom:1px solid var(--line)}.main-nav a:after{display:none}.cart-link{display:none}.menu-toggle{display:block;margin-left:auto}.nav-search{margin-bottom:10px}.nav-search input{width:100%;padding:12px 16px;font-size:15px}.nav-search input:focus{width:100%}.nav-search-results{width:100%;max-height:300px}
  .hero{min-height:760px;padding:110px 7vw 45px}.hero-content{padding-bottom:55px}.hero h1{font-size:clamp(38px,9vw,62px)}.hero-lead{font-size:18px}.proof-row{margin-top:38px}.hero-badge{width:170px;height:170px;right:7vw;bottom:34px}.hero-badge strong{font-size:48px}.hero-badge span{font-size:18px}
  .trust{grid-template-columns:repeat(2,1fr);padding:0}.trust>div{min-height:115px;padding:15px 6vw;border-bottom:1px solid var(--line)}.trust>div:nth-child(2){border-right:0}.trust>div:nth-child(3),.trust>div:nth-child(4){border-bottom:0}
  .section{padding:85px 7vw}.section-head{display:block;margin-bottom:36px}.section-head>.text-link{display:inline-block}.category-card img{height:145px}
  .manifesto{padding:70px 7vw;grid-template-columns:50px 1fr;gap:12px}.manifesto-mark{font-size:65px}.manifesto>span{grid-column:2}
  .features{padding:85px 7vw;grid-template-columns:1fr;gap:45px}.story{grid-template-columns:1fr}.story-photo{min-height:420px}.story-copy{padding:80px 7vw}.testimonial-grid{grid-template-columns:1fr}.final-cta{padding:80px 7vw;display:block}.cta-map{width:100%;max-width:100%;margin-top:32px}.footer-top{grid-template-columns:1fr;gap:36px}.footer-contact{text-align:left;margin-top:30px}.footer-bottom{display:block}.footer-bottom>*{display:block;margin-top:12px}
}
@media (max-width:520px){.brand{min-width:0}.brand-logo{width:145px;max-height:50px}.footer-logo{width:180px;max-height:62px}.announcement{font-size:9px;flex-wrap:wrap;row-gap:4px}.announcement a{display:none}.kupon-badge{height:20px}.kupon-kod-blokk,.kupon-masol{padding:0 8px}.kupon-kedvezmeny{display:none}.brand-text{font-size:11px}.brand-mark{width:32px;height:32px;font-size:21px}.hero{min-height:720px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.proof-row{flex-direction:column;gap:7px}.hero-badge{display:none}.trust{grid-template-columns:1fr}.trust>div,.trust>div:nth-child(n){border-right:0;border-bottom:1px solid var(--line);min-height:95px}.trust>div:last-child{border-bottom:0}.section h2,.features h2,.story h2,.final-cta h2{font-size:56px}.stats{gap:20px;flex-wrap:wrap}.stats strong{font-size:28px}.footer{padding-left:7vw;padding-right:7vw}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* ─── Kosár / Pénztár ───────────────────────────────────────────── */
.add-to-cart-btn{margin-top:14px;width:100%;padding:12px;border:1px solid #f39d12;background:#f39d12;color:#fff;border-radius:100px;font:700 13px "DM Sans",sans-serif;cursor:pointer;transition:.2s}
.add-to-cart-btn:hover{background:#d98c0c;border-color:#d98c0c}
/* Átmeneti készlethiány a fő termékrácson (Sasinc kérésére, 2026-09-27):
   a "Kosárba" gomb helyén ilyenkor egy link jelenik meg, ami a termék
   saját oldalára visz, ahol az "Értesíts, ha jön" feliratkozó űrlap él. */
.add-to-cart-btn-elfogyott{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;background:#fff;color:var(--muted,#6b7a70);border-color:var(--line,#dfe6e0)}
.add-to-cart-btn-elfogyott:hover{background:var(--sage,#eef3ec);border-color:var(--line,#dfe6e0);color:var(--ink,#112317)}
.cart-badge{display:none;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--green);color:#fff;font-size:10px;font-weight:800}
.cart-overlay{position:fixed;inset:0;background:rgba(17,35,23,.35);opacity:0;pointer-events:none;transition:.25s;z-index:90}
.cart-overlay.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--white);z-index:95;box-shadow:var(--shadow);transform:translateX(100%);transition:.3s;display:flex;flex-direction:column}
.cart-drawer.open{transform:translateX(0)}
.cart-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}
.cart-drawer-head h3{margin:0;font:700 18px Manrope}
.cart-drawer-head button{border:0;background:none;font-size:18px;cursor:pointer;color:var(--muted)}
.cart-drawer-body{padding:20px 22px;overflow-y:auto;flex:1}
.cart-empty{color:var(--muted);font-size:13px}
.cart-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.cart-item{border-bottom:1px solid var(--line);padding-bottom:14px}
.cart-item-name{font-weight:700;font-size:13px;margin-bottom:8px}
.cart-item-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cart-qty{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}
.cart-qty-btn{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:14px;line-height:1}
.cart-item-price{font-weight:700;font-size:13px}
.cart-remove-btn{margin-top:8px;border:0;background:none;color:var(--muted);font-size:11px;text-decoration:underline;cursor:pointer;padding:0}
.cart-total{display:flex;justify-content:space-between;align-items:center;padding:16px 0;margin-top:6px;border-top:1px solid var(--line);font-size:14px}
.cart-total-sor{padding:6px 0;margin-top:0;border-top:0;font-size:13px;color:var(--muted)}
.cart-total-sor+.cart-total-sor{padding-top:0}
.cart-shipping-note{font-size:12px;color:var(--muted);margin:10px 0 0}
/* Kuponkód beváltása a kosárban (Sasinc kérésére, 2026-09-27) */
.kosar-kupon-sor{display:flex;gap:8px;margin-top:14px}
.kosar-kupon-sor input{flex:1;min-width:0;border:1px solid var(--line);border-radius:100px;padding:9px 16px;font:500 13px "DM Sans",sans-serif;color:var(--ink);background:#fff}
.kosar-kupon-sor input:disabled{background:var(--sage);color:var(--muted)}
.kosar-kupon-sor .button{padding:9px 18px;font-size:12px;white-space:nowrap;box-shadow:none}
.kosar-kupon-uzenet{font-size:12px;margin:8px 0 0;min-height:1.4em}
.kosar-kupon-uzenet.kosar-kupon-siker{color:var(--green2)}
.kosar-kupon-uzenet.kosar-kupon-hiba{color:#c0392b}
.cart-checkout-btn{width:100%;margin-top:6px}
.checkout-form{display:flex;flex-direction:column;gap:12px}
.checkout-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}
.checkout-form input,.checkout-form textarea{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}
.checkout-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.checkout-fizetes{border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.checkout-fizetes legend{font-size:12px;color:var(--muted);padding:0 4px}
.checkout-fizetes label{flex-direction:row;align-items:center;gap:8px;font-size:12px;color:var(--ink)}
.szallitas-mod-label{flex-direction:column!important;align-items:flex-start!important;gap:2px!important;padding:6px 0;border-bottom:1px solid var(--line)}
.szallitas-mod-label:last-child{border-bottom:0}
.szallitas-mod-leiras{font-size:11px;color:var(--muted);line-height:1.5;margin-left:22px;white-space:pre-line}
.checkout-status{min-height:16px;font-size:12px;margin:0}
.checkout-form .button{width:100%}
.checkout-form #checkoutBackBtn{text-align:center;background:none;border:0;font-size:12px;padding:4px}
.cart-success{font-size:13px;line-height:1.6;color:var(--ink)}
.auth-tabs{display:flex;gap:6px;margin-bottom:14px}
.auth-tab{flex:1;padding:9px;border:1px solid var(--line);background:#fff;border-radius:8px;font:700 12px "DM Sans",sans-serif;cursor:pointer;color:var(--muted)}
.auth-tab.is-active{background:var(--green);border-color:var(--green);color:#fff}
.auth-note{font-size:11px;color:var(--muted);margin:0 0 14px}
.auth-form{display:flex;flex-direction:column;gap:12px}
.auth-account-box{background:var(--sage);border-radius:10px;padding:12px 14px;margin-bottom:16px;font-size:12px;line-height:1.6}
.auth-account-box strong{font-size:13px}
.auth-account-box .text-link{font-size:11px;margin-top:4px;display:inline-block}
.checkout-legal-check{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;cursor:pointer}
.checkout-legal-check input{margin-top:3px;flex:0 0 auto}
.checkout-legal-check .text-link{border-bottom:1px solid currentColor;padding-bottom:0}
.price-tag-nagyker{display:inline-block;background:var(--green);color:#fff;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:100px;vertical-align:middle}

/* ── Jogi oldalak (ÁSZF, Adatkezelési Tájékoztató) ────────────────────── */
.legal-header{padding:132px 6vw 30px;max-width:880px;margin:0 auto}
.legal-header .text-link{color:var(--green2)}
.legal-header h1{font:700 clamp(30px,5vw,44px)/1.12 "Playfair Display",serif;margin:20px 0 6px;letter-spacing:-.02em}
.legal-header .legal-effective{font-size:12px;color:var(--muted)}
.legal-body{max-width:880px;margin:0 auto;padding:0 6vw 100px;font-size:15px;line-height:1.7}
.legal-body h2{font:700 21px "Playfair Display",serif;margin:38px 0 12px;color:var(--green);border-top:1px solid var(--line);padding-top:28px}
.legal-body h2:first-of-type{border-top:0;padding-top:0;margin-top:8px}
.legal-body h3{font-size:14.5px;font-weight:700;margin:20px 0 6px}
.legal-body p{margin:0 0 12px}
.legal-body ul{margin:0 0 14px;padding-left:22px}
.legal-body li{margin-bottom:4px}
.legal-body table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px}
.legal-body table td,.legal-body table th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.legal-toc{background:var(--sage);border-radius:14px;padding:20px 24px;margin:24px 0 8px;font-size:13px;columns:2;column-gap:24px}
.legal-toc a{display:block;padding:3px 0;color:var(--green2);break-inside:avoid}
.legal-summary{background:var(--sage);border-radius:14px;padding:22px 24px;margin-top:36px;font-size:13.5px;line-height:1.7}
.legal-summary strong{display:block;margin-bottom:6px;font-size:14px}
.legal-blank{border-bottom:1px solid var(--line);display:inline-block;min-width:220px}
@media(max-width:640px){.legal-toc{columns:1}}

/* ── Receptek oldal ────────────────────────────────────────────────── */
.recipe-header{padding:132px 6vw 30px;max-width:880px;margin:0 auto}
.recipe-header .text-link{color:var(--green2)}
.recipe-header h1{font:700 clamp(30px,5vw,44px)/1.12 "Playfair Display",serif;margin:20px 0 6px;letter-spacing:-.02em}
.recipe-header p{font-size:14px;color:var(--muted);line-height:1.6;max-width:640px}
.recipe-list{max-width:880px;margin:0 auto;padding:0 6vw 100px;display:flex;flex-direction:column;gap:64px}
.recipe-card{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start;border-top:1px solid var(--line);padding-top:48px}
.recipe-card:first-child{border-top:0;padding-top:0}
.recipe-card img{width:100%;border-radius:14px;object-fit:cover;aspect-ratio:4/5;background:var(--sage)}
.recipe-card h2{font:700 27px "Playfair Display",serif;margin:0 0 14px;letter-spacing:-.02em}
.recipe-card h3{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--green);margin:20px 0 8px}
.recipe-card h3:first-of-type{margin-top:0}
.recipe-card ul{margin:0 0 8px;padding-left:20px;font-size:14px;line-height:1.75}
.recipe-card li{margin-bottom:2px}
.recipe-card p{font-size:14px;line-height:1.75;margin:0 0 10px;color:var(--ink)}
.recipe-card .recipe-source-note{font-size:12.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:12px;margin-top:14px}
@media(max-width:640px){.recipe-card{grid-template-columns:1fr}.recipe-card img{aspect-ratio:16/10}}
.blog-list{max-width:960px;margin:0 auto;padding:0 6vw 100px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px}
.blog-card{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:.2s;box-shadow:0 1px 0 var(--line)}
.blog-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.blog-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--sage)}
.blog-card-body{padding:18px 20px 22px}
.blog-card h2{font:700 19px "Playfair Display",serif;margin:0 0 8px;letter-spacing:-.01em}
.blog-card p{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 10px}
.blog-card .blog-card-more{font-size:12px;font-weight:700;color:var(--green)}
.blog-post{max-width:760px;margin:0 auto;padding:132px 6vw 100px}
.blog-post .text-link{color:var(--green2)}
.blog-post h1{font:700 clamp(28px,4.5vw,42px)/1.15 "Playfair Display",serif;margin:20px 0 10px;letter-spacing:-.02em}
.blog-post-meta{font-size:12px;color:var(--muted);margin-bottom:24px}
.blog-post-hero{width:100%;border-radius:16px;aspect-ratio:16/9;object-fit:cover;margin-bottom:30px;background:var(--sage)}
.blog-post h3{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--green);margin:28px 0 10px}
.blog-post h3:first-of-type{margin-top:0}
.blog-post ul{margin:0 0 10px;padding-left:20px;font-size:15px;line-height:1.8}
.blog-post li{margin-bottom:4px}
.blog-post p{font-size:15px;line-height:1.8;margin:0 0 14px;color:var(--ink)}
.blog-post .recipe-source-note{font-size:12.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:14px;margin-top:22px}
.blog-empty{max-width:640px;margin:0 auto;padding:0 6vw 100px;color:var(--muted);font-size:14px}
.product-card-link:hover{text-decoration:underline}
.termek-oldal{max-width:960px;margin:0 auto;padding:132px 6vw 100px}
.termek-oldal .text-link{color:var(--green2)}
.termek-elrendezes{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:26px;align-items:start}
.termek-fo-kep{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.termek-miniatur-sor{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.termek-miniatur-sor img{width:64px;height:64px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px;padding:4px}
.termek-cim-ar-sor{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;margin:10px 0 10px}
.termek-info h1{font:700 clamp(19px,2.4vw,24px)/1.25 "Playfair Display",serif;margin:0;letter-spacing:-.01em}
.termek-ar{font:800 19px Manrope;color:var(--ink);white-space:nowrap}
.termek-kiszereles{font-size:13px;font-weight:500;color:var(--muted)}
.termek-kiszereles-reszlet{font-size:12px;color:var(--muted);margin:2px 0 0}
.termek-keszlet{font-size:13px;color:var(--green2);font-weight:600;margin:6px 0 4px}
.termek-min{font-size:12px;color:var(--muted);margin:0 0 16px}
.termek-info .add-to-cart-btn{margin:14px 0 20px;max-width:280px}
.termek-megoszt-cimke{font-size:12px;font-weight:600;color:var(--muted);margin:0 0 8px}
.termek-info .gallery-share-row{margin:0 0 22px}
.termek-rovid-leiras{font-size:14px;line-height:1.7;color:var(--ink)}
.termek-hosszu-leiras{max-width:760px;margin:50px 0 0;padding-top:36px;border-top:1px solid var(--line)}
.termek-hosszu-leiras p{font-size:15px;line-height:1.8;margin:0 0 14px;color:var(--ink)}
.termek-hasonlo{max-width:2000px;margin:0 auto;padding:36px 6vw 100px;border-top:1px solid var(--line)}
.termek-hasonlo h2{font:700 24px "Playfair Display",serif;margin:36px 0 20px;letter-spacing:-.02em}
.termek-hasonlo .blog-list{padding:0;max-width:none}
.termek-hasonlo .blog-card img{object-fit:contain;background:#fff;padding:16px}
@media(max-width:760px){.termek-elrendezes{grid-template-columns:1fr}}

.termek-ertekelesek{max-width:760px;margin:50px 0 0;padding-top:36px;border-top:1px solid var(--line)}
.termek-ertekelesek h2{font:700 22px "Playfair Display",serif;margin:0 0 16px;letter-spacing:-.02em}
.ertekeles-osszegzes{font-size:14px;color:var(--ink);margin-bottom:20px}
.ertekeles-atlag-csillag{color:#e0a72a;letter-spacing:2px}
.ertekeles-tetel{border-top:1px solid var(--line);padding:16px 0}
.ertekeles-tetel:first-child{border-top:none;padding-top:0}
.ertekeles-tetel-fej{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}
.ertekeles-tetel-csillag{color:#e0a72a;letter-spacing:1px}
.ertekeles-tetel-datum{color:var(--muted);font-size:11px}
.ertekeles-tetel-szoveg{font-size:13.5px;line-height:1.6;color:var(--ink);margin:6px 0 0}
.ertekeles-form-wrap{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.ertekeles-form-wrap h3{font:700 16px "DM Sans",sans-serif;margin:0 0 12px}
.ertekeles-belepes-szukseges{font-size:13px;color:var(--muted);background:var(--sage);border-radius:10px;padding:10px 14px;margin:0 0 14px}
.ertekeles-belepes-szukseges a{color:var(--green);font-weight:700}
.ertekeles-csillag-valaszto{display:flex;gap:4px;margin-bottom:12px}
.ertekeles-csillag-gomb{background:none;border:none;font-size:28px;line-height:1;color:#c9cec6;cursor:pointer;padding:0;transition:.15s}
.ertekeles-csillag-gomb.is-active,.ertekeles-csillag-gomb:hover{color:#e0a72a}
#ertekelesSzovegMezo{width:100%;max-width:520px;min-height:90px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:400 13.5px "DM Sans",sans-serif;color:var(--ink);resize:vertical;display:block;margin-bottom:12px}
.ertekeles-form-status{font-size:12.5px;color:var(--muted);margin-top:10px}

.sajat-rendeles-kartya{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-bottom:14px}
.sajat-rendeles-fej{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.sajat-rendeles-datum{font-size:11px;color:var(--muted);margin-left:8px}
.sajat-rendeles-allapot{font-size:10px;font-weight:700;padding:3px 10px;border-radius:10px;color:#fff}
.sajat-rendeles-tetelek{font-size:12.5px;color:var(--ink);line-height:1.7;margin-bottom:10px}
.sajat-rendeles-sor{font-size:12px;color:var(--muted);margin-bottom:4px}

.ertesits-ha-jon{background:var(--sage);border-radius:14px;padding:16px 18px;margin-bottom:4px}
.ertesits-ha-jon label{display:block;font-size:13px;color:var(--ink);margin-bottom:10px}
.ertesits-ha-jon-sor{display:flex;gap:8px;flex-wrap:wrap}
.ertesits-ha-jon-sor input{flex:1;min-width:180px;border:1px solid var(--line);border-radius:100px;padding:9px 16px;font:500 13px "DM Sans",sans-serif;color:var(--ink);background:#fff}
.ertesits-ha-jon-status{font-size:12px;color:var(--muted);margin-top:8px}

/* ── AI chat box (Sasinc kérésére, 2026-09-26) ─────────────────────── */
.chat-fab{position:fixed;right:22px;bottom:22px;z-index:90;width:58px;height:58px;border-radius:50%;background:var(--green);color:#fff;border:none;display:grid;place-items:center;font-size:26px;cursor:pointer;box-shadow:0 10px 30px rgba(17,35,23,.28);transition:transform .15s}
.chat-fab:hover{transform:scale(1.06)}
.chat-fab-badge{position:absolute;top:-2px;right:-2px;width:14px;height:14px;border-radius:50%;background:#f39d12;border:2px solid var(--paper)}
.chat-panel{position:fixed;right:22px;bottom:92px;z-index:91;width:min(370px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 130px));background:#fff;border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line);display:none;flex-direction:column;overflow:hidden}
.chat-panel.open{display:flex}
.chat-panel-head{background:var(--green);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.chat-panel-head strong{font:700 14px Manrope;display:block}
.chat-panel-head span{font-size:11px;opacity:.85;display:block;margin-top:1px}
.chat-panel-head-btns{display:flex;gap:6px;align-items:center}
.chat-panel-head button{background:rgba(255,255,255,.15);border:none;color:#fff;width:26px;height:26px;border-radius:50%;cursor:pointer;font-size:13px;display:grid;place-items:center}
.chat-panel-head button:hover{background:rgba(255,255,255,.28)}
.chat-body{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:10px;background:var(--paper)}
.chat-msg{max-width:86%;padding:9px 12px;border-radius:14px;font-size:13.5px;line-height:1.55;white-space:pre-wrap}
.chat-msg.user{align-self:flex-end;background:var(--green);color:#fff;border-bottom-right-radius:4px}
.chat-msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.chat-msg.bot.typing{color:var(--muted);font-style:italic}
.chat-products{align-self:flex-start;max-width:92%;display:flex;flex-direction:column;gap:6px}
.chat-product-card{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 10px;text-decoration:none;color:inherit}
.chat-product-card:hover{border-color:var(--green2)}
.chat-product-card img{width:38px;height:38px;object-fit:contain;background:var(--sage);border-radius:8px;flex:0 0 auto}
.chat-product-card-body{min-width:0}
.chat-product-card-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-product-card-price{font-size:12px;color:var(--muted)}
.chat-contact-cta{align-self:flex-start;font-size:12px;background:var(--sage);border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.chat-contact-cta a{font-weight:700;color:var(--green)}
.chat-foot{border-top:1px solid var(--line);padding:10px;display:flex;gap:8px;background:#fff}
.chat-foot input{flex:1;border:1px solid var(--line);border-radius:100px;padding:9px 14px;font:500 13px "DM Sans",sans-serif;color:var(--ink)}
.chat-foot input:focus{outline:2px solid var(--green2);outline-offset:1px}
.chat-foot button{background:var(--green);color:#fff;border:none;width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:15px;display:grid;place-items:center;flex:0 0 auto}
.chat-foot button:disabled{opacity:.5;cursor:default}
.chat-disclaimer{font-size:10.5px;color:var(--muted);text-align:center;padding:6px 12px 10px;background:#fff}

.cookie-sav{position:fixed;left:0;right:0;bottom:0;z-index:900;background:var(--ink);color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:16px 5vw;box-shadow:0 -8px 30px rgba(0,0,0,.15)}
.cookie-sav-szoveg{margin:0;font-size:12.5px;line-height:1.55;color:#e7ebe4;max-width:820px;flex:1 1 320px}
.cookie-sav-szoveg a{color:#fff;text-decoration:underline}
.cookie-sav-gombok{display:flex;gap:10px;flex:0 0 auto;flex-wrap:wrap}
.cookie-sav-btn{border-radius:100px;padding:10px 18px;font:700 12px "DM Sans",sans-serif;cursor:pointer;white-space:nowrap;transition:.2s}
.cookie-sav-btn-szukseges{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
.cookie-sav-btn-szukseges:hover{border-color:#fff}
.cookie-sav-btn-elfogad{background:var(--green2);color:#fff;border:1px solid var(--green2)}
.cookie-sav-btn-elfogad:hover{background:var(--green)}
@media (max-width:640px){
  .cookie-sav{padding:14px 5vw;flex-direction:column;align-items:stretch;text-align:left}
  .cookie-sav-gombok{justify-content:stretch}
  .cookie-sav-btn{flex:1}
}
@media(max-width:480px){.chat-panel{right:12px;left:12px;width:auto;bottom:84px}.chat-fab{right:16px;bottom:16px}}
