/* KALMENO — css/style.css */
:root{--bg-primary:#FAF8F4;--bg-secondary:#F0ECE6;--ink-primary:#1C1A18;--ink-muted:#7A6A3A;--accent:#9B7E4A;--white:#fff;--line:rgba(28,26,24,.12);--display:'Playfair Display',serif;--body:'Source Sans 3',sans-serif}*{box-sizing:border-box}html{background:var(--bg-primary);scroll-behavior:smooth}body{margin:0;background:var(--bg-primary);color:var(--ink-primary);font:16px/1.65 var(--body)}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer}.wrap{width:min(1240px,calc(100% - 48px));margin:0 auto}.site-header{background:var(--bg-primary);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav-wrap{min-height:82px;display:flex;align-items:center;gap:32px}.wordmark,.footer-brand{font:700 30px/1 var(--display);letter-spacing:-.03em}.desktop-nav{display:flex;gap:28px;margin-left:auto}.phone-link{color:var(--ink-muted);font-weight:600}.menu-button,.mobile-menu{display:none}.hero{min-height:640px;background:#332d23 url('../images/hero_homepage_01.webp') center/cover;display:flex;align-items:end;color:#fff}.hero-inner{padding:96px 0 84px;max-width:800px}.eyebrow,.kicker{font:600 12px/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.hero .eyebrow{color:#f0d6a0}.hero h1{font:700 clamp(48px,8vw,96px)/1.02 var(--display);margin:18px 0;color:#fff}.hero p{font-size:20px;color:#fff;max-width:660px}.section{padding:92px 0}.section h2,.split h2,.dark-section h2{font:700 clamp(34px,5vw,58px)/1.1 var(--display);margin:12px 0 24px}.section p,.split p,.dark-section p{color:var(--ink-primary)}.section-heading{max-width:700px;margin-bottom:42px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);padding:28px;box-shadow:0 12px 35px rgba(80,62,35,.08)}.card h3{font:700 27px/1.2 var(--display);color:var(--ink-primary);margin:16px 0 10px}.card p{color:var(--ink-primary)}.card img,.article img{width:100%;height:220px;object-fit:cover}.stats{background:#5e4c32;color:#fff}.stats .grid-4{padding:20px 0}.stat strong{display:block;font:700 52px var(--display);color:#fff}.stat span{color:#fff}.split{background:var(--bg-secondary);padding:92px 0}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split img{width:100%;height:420px;object-fit:cover}.table-wrap{overflow:auto}.comparison{border-collapse:collapse;width:100%;background:#fff}.comparison th,.comparison td{border:1px solid var(--line);padding:18px;text-align:left;color:var(--ink-primary)}.comparison th{background:#e2d8c7}.steps{counter-reset:step}.step{border-top:1px solid var(--line);padding:24px 0 24px 64px;position:relative}.step:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:23px;color:var(--accent);font:700 34px var(--display)}.quote{background:#e7ddcc;padding:64px 10%;text-align:center}.quote blockquote{font:700 34px/1.25 var(--display);margin:0;color:var(--ink-primary)}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{font-weight:600;color:var(--ink-primary);cursor:pointer}.cta{background:#8b6d3e;color:#fff;text-align:center;padding:76px 0}.cta h2,.cta p{color:#fff}.button{display:inline-block;background:#fff;color:var(--ink-primary);padding:14px 24px;border-radius:999px;font-weight:600}.dark-section{background:#332d23;color:#fff;padding:92px 0}.dark-section h2,.dark-section p,.dark-section h1{color:#fff}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.article{border-top:3px solid var(--accent);padding-top:18px}.article h3{font:700 25px var(--display);color:var(--ink-primary)}.product-hero{padding:80px 0;background:var(--bg-secondary)}.product-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.product-hero img{width:100%;height:500px;object-fit:cover}.product-hero h1,.page-title h1{font:700 clamp(46px,7vw,82px)/1.05 var(--display);color:var(--ink-primary);margin:14px 0}.meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--ink-muted);font-size:14px}.reading{max-width:860px}.reading h2{margin-top:56px}.ingredient-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ingredient{padding:26px;background:#fff;border:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.contact-form{display:grid;gap:16px}.contact-form label{font-weight:600}.contact-form input,.contact-form textarea{width:100%;padding:14px;border:1px solid var(--line);background:#fff}.map{min-height:430px}.site-footer{background:#302a22;color:#fff;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:36px}.site-footer h2,.site-footer p,.site-footer address,.site-footer a{color:#fff}.site-footer h2{font:700 22px var(--display)}.site-footer a{display:block;margin:5px 0}.legal-strip{border-top:1px solid rgba(255,255,255,.2);margin-top:46px;padding-top:22px;display:flex;gap:12px;flex-wrap:wrap;color:#fff;font-size:14px}.legal-strip button{background:none;border:0;color:#fff}.cookie-banner{display:none;position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));padding:18px 22px;background:#fff;color:var(--ink-primary);border:1px solid var(--line);box-shadow:0 15px 45px rgba(0,0,0,.2);z-index:20;border-radius:18px}.cookie-banner>div{display:flex;gap:10px;flex-wrap:wrap}.cookie-banner button{border:1px solid var(--line);padding:9px 14px;border-radius:999px;background:var(--bg-secondary);color:var(--ink-primary)}.cookie-banner button:first-child{background:var(--accent);color:#fff}.page-title{padding:90px 0 55px;background:var(--bg-secondary)}.legal .reading p{margin-bottom:22px}.notice{padding:22px;background:#eee4d5;border-left:4px solid var(--accent)}
@media(max-width:1023px){.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.article-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.wrap{width:min(100% - 32px,1240px)}.desktop-nav,.phone-link{display:none}.menu-button{display:block;margin-left:auto;background:none;border:1px solid var(--line);padding:8px 12px}.mobile-menu{display:none;position:absolute;left:16px;right:16px;top:74px;background:#fff;border:1px solid var(--line);padding:18px}.mobile-menu.is-open{display:grid;gap:14px}.hero{min-height:560px}.hero-inner{padding:70px 0}.grid-3,.grid-4,.split-grid,.product-hero-grid,.contact-grid,.ingredient-grid,.article-list,.footer-grid{grid-template-columns:1fr}.section,.split,.dark-section{padding:60px 0}.split img,.product-hero img{height:320px}.footer-grid{gap:26px}}
