@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#24221d;--muted:#716e66;--cream:#f7f1e5;--warm:#e9b65a;--tomato:#b64a32;--green:#36483d;--line:#ded8cc;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fcfbf8;color:var(--ink);font:15px/1.7 'DM Sans',sans-serif}img{display:block;width:100%;object-fit:cover}a{text-decoration:none;color:inherit}.announcement{background:var(--tomato);color:#fff;text-align:center;font-size:10px;font-weight:700;letter-spacing:2px;padding:9px}.announcement span{opacity:.6;margin:0 9px}header{height:82px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:#fcfbf8;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.logo{font:600 26px 'Playfair Display',serif}.logo i{font-size:17px}.logo span{color:var(--tomato)}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav a:hover{opacity:.65}.navbtn{background:var(--ink);color:#fff;padding:12px 18px;border-radius:3px}.menu{display:none;border:0;background:none;font-size:24px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:var(--cream)}.hero-copy{padding:95px 10% 80px 13%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;color:var(--tomato);margin-bottom:17px}.hero h1{font:500 clamp(50px,6vw,82px)/1.01 'Playfair Display';letter-spacing:-2px;margin:0 0 25px}.hero h1 em{font-style:italic;color:var(--tomato)}.hero-copy>p{font-size:18px;color:var(--muted);max-width:590px}.actions{display:flex;align-items:center;gap:25px;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border:0;border-radius:3px;font-size:13px;font-weight:700;cursor:pointer}.btn b{margin-left:20px}.dark{background:var(--ink);color:#fff}.light{background:#fff;color:var(--green)}.cream{background:var(--cream);color:var(--ink)}.under{font-size:12px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:3px}.proof{display:flex;align-items:center;gap:12px;margin-top:24px}.proof>span{font-size:27px}.proof strong,.proof small{display:block}.proof strong{font-size:12px}.proof small{font-size:10px;color:var(--muted)}.hero-visual{position:relative}.hero-visual img{height:100%;min-height:620px}.recipe-badge{position:absolute;right:35px;bottom:38px;background:#fff;padding:18px 22px;display:flex;align-items:center;gap:12px;box-shadow:0 15px 40px #0002}.recipe-badge b{font:600 45px 'Playfair Display';color:var(--tomato)}.recipe-badge span{font-size:10px;line-height:1.3;text-transform:uppercase;letter-spacing:1px}.marquee{display:flex;justify-content:center;gap:25px;background:var(--green);color:#fff;padding:15px;font-size:9px;letter-spacing:2px}.marquee span:nth-child(2n){opacity:.35}.section{padding:105px 8%}.heading{display:grid;grid-template-columns:1fr .65fr;gap:8%;align-items:end;margin-bottom:50px}.heading h2,.recipe-copy h2,.private h2,.about h2,.faq-section h2,.contact h2{font:500 clamp(38px,4.5vw,60px)/1.08 'Playfair Display';margin:0;letter-spacing:-1px}.heading>p{color:var(--muted);margin:0}.class-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.class-grid article{background:#fff;border:1px solid var(--line)}.class-grid img{height:245px}.class-grid article>div{padding:22px}.class-grid small{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--tomato)}.class-grid h3{font:500 27px 'Playfair Display';margin:10px 0}.class-grid p{font-size:12px;color:var(--muted)}.class-grid a{font-size:11px;font-weight:700}.recipe-showcase{display:grid;grid-template-columns:1fr 1fr;background:#efe6d5}.recipe-photo img{height:100%;min-height:650px}.recipe-copy{padding:100px 12%}.recipe-copy p{color:var(--muted);max-width:550px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0}.chips span{padding:8px 12px;border:1px solid #cfc5b3;border-radius:20px;font-size:10px}.guide{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--tomato);color:#fff}.guide-image img{height:100%;min-height:620px}.guide-copy{padding:85px 12%}.guide-copy .eyebrow{color:#f5d6a5}.number{font:600 85px/.8 'Playfair Display';margin:10px 0;color:#f5d6a5}.guide-copy h2{font:500 55px/1 'Playfair Display';margin:0 0 12px}.guide-copy p{opacity:.85;max-width:560px}.guide-copy .big{font:500 20px 'Playfair Display';opacity:1}.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:28px 0 32px;font-size:12px}.guide-copy small{display:block;margin-top:10px;font-size:9px;opacity:.7}.private{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#fff}.private>div{padding:95px 12%}.private .eyebrow{color:#e6b45c}.private p{opacity:.72;max-width:560px}.private ul{padding:0;list-style:none;margin:30px 0}.private li{font-size:12px;padding:7px 0}.private li:before{content:'✓';margin-right:12px;color:#e9b65a}.private img{height:100%;min-height:600px}.gallery{padding:105px 8%;text-align:center}.gallery h2{font:500 50px 'Playfair Display';margin:0 0 45px}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:12px}.gallery-grid img{height:330px}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}.about-copy{padding:100px 12%}.about-copy p{color:var(--muted);max-width:560px}.about>img{height:100%;min-height:580px}.faq-section{padding:100px 16%;background:#f3eee4}.faq{max-width:850px;margin-top:45px}.faq details{border-top:1px solid #d2cabb;padding:20px 0}.faq summary{cursor:pointer;font:500 19px 'Playfair Display';list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';float:right;font-family:'DM Sans'}.faq details[open] summary:after{content:'−'}.faq p{color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:105px 10%;background:#fff}.contact>div>p{color:var(--muted)}.call{font:600 22px 'Playfair Display';display:block;margin:28px 0}.contact-meta{font-size:12px;line-height:1.9}.contact form{background:var(--cream);padding:34px;display:flex;flex-direction:column;gap:13px}.contact label{font-size:10px;font-weight:700}.contact input,.contact select,.contact textarea{display:block;width:100%;margin-top:5px;padding:13px;border:1px solid var(--line);background:#fff;font:13px 'DM Sans';border-radius:2px}.contact textarea{min-height:100px}.note{font-size:9px!important;margin:0!important}.foot-contact span{display:block;font-size:11px;opacity:.55;line-height:1.6;margin-top:9px}footer{padding:60px 8%;background:#1f2924;color:#fff;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}footer .logo{display:block;margin-bottom:12px}footer p{font-size:11px;opacity:.55}footer b{font-size:9px;letter-spacing:2px;text-transform:uppercase}footer div:not(:first-child) a{display:block;font-size:11px;opacity:.62;margin:8px 0}.copyright{grid-column:1/-1;border-top:1px solid #ffffff1c;padding-top:18px;font-size:9px;opacity:.45}.mobilebar{display:none}
@media(max-width:900px){header{height:70px;padding:0 5%}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fcfbf8;padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7%}.hero-visual img{height:500px;min-height:0}.class-grid{grid-template-columns:1fr 1fr}.heading,.recipe-showcase,.guide,.private,.about,.contact{grid-template-columns:1fr}.recipe-photo img,.guide-image img,.private img,.about>img{min-height:0;height:430px}.recipe-copy,.guide-copy,.private>div,.about-copy{padding:70px 7%}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:250px}.faq-section{padding:75px 7%}footer{grid-template-columns:1fr 1fr;padding:50px 7%}.copyright{grid-column:1/-1}.mobilebar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;z-index:50;box-shadow:0 -4px 20px #0002}.mobilebar a{background:var(--ink);color:#fff;text-align:center;padding:13px 4px;font-size:10px;font-weight:700}.mobilebar a:nth-child(2){background:var(--tomato)}body{padding-bottom:46px}}
@media(max-width:520px){.class-grid{grid-template-columns:1fr}.actions{flex-direction:column;align-items:flex-start}.stats{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:280px}.guide-copy h2{font-size:45px}.number{font-size:70px}}
