:root{
  --green:#073f25;
  --green-2:#0f5b35;
  --sage:#edf7ee;
  --cream:#fff8ec;
  --orange:#e66f10;
  --gold:#f2c56b;
  --ink:#172119;
  --muted:#5b665d;
  --white:#ffffff;
  --shadow:0 24px 70px rgba(7,63,37,.18);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fffaf1 0%,#fff 45%,#edf7ee 100%);overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,248,236,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,63,37,.08);display:flex;align-items:center;justify-content:space-between;padding:10px clamp(16px,4vw,54px)}
.brand img{width:118px;height:auto;border-radius:14px}.nav{display:flex;gap:8px;align-items:center}.nav a{padding:10px 14px;border-radius:999px;font-weight:800;font-size:14px;color:var(--green)}.nav a:hover{background:#e9f3e7}
.hero{min-height:calc(100svh - 86px);display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(28px,5vw,76px);align-items:center;padding:clamp(38px,6vw,82px) clamp(18px,5vw,72px);background:radial-gradient(circle at 10% 15%,rgba(242,197,107,.35),transparent 32%),linear-gradient(135deg,#fffaf1 0%,#edf7ee 100%)}
.eyebrow{margin:0 0 12px;font-size:13px;letter-spacing:.17em;text-transform:uppercase;font-weight:900;color:var(--orange)}h1,h2,h3,p{margin-top:0}h1{font-family:'Playfair Display',serif;font-size:clamp(54px,9vw,124px);line-height:.88;letter-spacing:-.065em;color:var(--green);margin-bottom:24px}h2{font-family:'Playfair Display',serif;font-size:clamp(32px,5vw,58px);line-height:1.02;letter-spacing:-.035em;color:var(--green);margin-bottom:16px}h3{font-size:22px;line-height:1.08;color:var(--green);margin-bottom:8px}.lead{font-size:clamp(18px,2vw,25px);line-height:1.55;max-width:710px;color:#2f3d32;margin-bottom:26px}blockquote{border-left:6px solid var(--orange);background:rgba(255,255,255,.72);padding:18px 22px;border-radius:18px;font-size:clamp(20px,2.7vw,32px);font-weight:900;color:var(--green);box-shadow:0 12px 35px rgba(7,63,37,.08);margin:0 0 26px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:16px 26px;border-radius:999px;font-weight:900;border:0;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--orange),#f39322);color:white;box-shadow:0 14px 28px rgba(230,111,16,.27)}.btn-secondary{background:white;color:var(--green);border:1px solid rgba(7,63,37,.12)}.quick-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:800px}.quick-facts div{background:white;border:1px solid rgba(7,63,37,.08);border-radius:20px;padding:16px;box-shadow:0 12px 30px rgba(7,63,37,.07)}.quick-facts strong{display:block;color:var(--green);font-size:16px}.quick-facts span{font-size:13px;color:var(--muted);font-weight:700}.hero-media{position:relative}.hero-media img{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}.floating-card{position:absolute;left:22px;right:22px;bottom:22px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-radius:22px;padding:18px;border:1px solid rgba(255,255,255,.65);box-shadow:0 18px 35px rgba(0,0,0,.14)}.floating-card span{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--orange);font-weight:900;font-size:12px}.floating-card strong{display:block;color:var(--green);font-size:21px;margin-top:5px}.register-section,.menu-section,.flyer-section,.details-section,.experience-section,.final-cta{padding:clamp(58px,8vw,110px) clamp(18px,5vw,72px)}.section-heading{max-width:860px;margin-bottom:34px}.section-heading.center{text-align:center;margin-left:auto;margin-right:auto}.section-heading p{font-size:18px;line-height:1.6;color:var(--muted)}.registration-card{max-width:980px;margin:0 auto;background:white;border-radius:var(--radius);padding:clamp(20px,4vw,42px);box-shadow:var(--shadow);border:1px solid rgba(7,63,37,.08)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}label{display:block;font-weight:900;color:var(--green);font-size:14px}input,textarea{width:100%;margin-top:8px;border:1px solid rgba(7,63,37,.16);border-radius:16px;padding:16px;font:inherit;font-size:16px;background:#fbfff9;outline:none}textarea{resize:vertical}.registration-card>label{margin-top:16px}.form-button{width:100%;margin-top:18px}.form-message{text-align:center;font-weight:800;margin:14px 0 0;color:var(--green)}.menu-section{background:white}.dish-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.dish-card{background:#fff;border:1px solid rgba(7,63,37,.08);border-radius:24px;overflow:hidden;box-shadow:0 18px 42px rgba(7,63,37,.09)}.dish-card img{width:100%;aspect-ratio:1.1/1;object-fit:cover}.dish-card div{padding:20px}.dish-card p{color:var(--muted);line-height:1.55;margin:0}.experience-section{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;background:linear-gradient(135deg,var(--green),#0d2f20);color:white}.experience-section h2,.experience-section h3{color:white}.experience-card,.instructors-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:clamp(24px,4vw,46px);box-shadow:0 24px 70px rgba(0,0,0,.18)}.experience-card ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:14px}.experience-card li{font-size:18px;line-height:1.45}.experience-card li::before{content:'✓';display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--gold);color:var(--green);font-weight:900;margin-right:10px}.instructors-card p{line-height:1.7;color:#e2f2e8}.flyer-section{background:var(--cream)}.flyer-frame{max-width:560px;margin:0 auto;background:white;border-radius:28px;padding:12px;box-shadow:var(--shadow);border:1px solid rgba(7,63,37,.08)}.flyer-frame img{border-radius:20px;width:100%;height:auto}.details-section{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;background:white}.detail-card{border-radius:24px;border:1px solid rgba(7,63,37,.08);background:#fff;padding:28px;box-shadow:0 16px 40px rgba(7,63,37,.08)}.detail-card.highlight{background:linear-gradient(135deg,var(--sage),#fffaf1)}.icon{font-size:34px;display:block;margin-bottom:14px}.detail-card p{line-height:1.55;color:var(--muted);font-weight:600}.final-cta{text-align:center;background:radial-gradient(circle at center,rgba(242,197,107,.25),transparent 45%),linear-gradient(135deg,#0b3f26,#062a1a);color:white}.final-cta h2{color:white;max-width:900px;margin:0 auto 16px}.final-cta p{font-size:18px;line-height:1.6;max-width:720px;margin:0 auto 26px;color:#e8f5eb}.footer{padding:28px 18px;text-align:center;background:#041d13;color:#d9eadb;font-weight:700}
@media (max-width: 980px){.hero,.experience-section{grid-template-columns:1fr}.hero{min-height:auto}.hero-copy{order:1}.hero-media{order:0}.dish-grid{grid-template-columns:repeat(2,1fr)}.details-section{grid-template-columns:1fr}.quick-facts{grid-template-columns:1fr 1fr 1fr}.nav{display:none}}
@media (max-width: 640px){.site-header{justify-content:center}.brand img{width:104px}.hero{padding:22px 16px 46px;gap:22px}.hero-media img{border-radius:22px;aspect-ratio:1/1}.floating-card{position:static;margin-top:-34px;margin-left:14px;margin-right:14px}.eyebrow{text-align:left;font-size:11px;letter-spacing:.13em}h1{font-size:58px;line-height:.88;margin-bottom:18px}.lead{font-size:17px;margin-bottom:18px}blockquote{font-size:20px;padding:16px;margin-bottom:20px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.btn{width:100%;min-height:54px}.quick-facts{grid-template-columns:1fr;gap:10px}.register-section,.menu-section,.flyer-section,.details-section,.experience-section,.final-cta{padding:48px 16px}.form-grid,.dish-grid{grid-template-columns:1fr}.registration-card{border-radius:22px;padding:18px}.dish-card{border-radius:22px}.dish-card img{aspect-ratio:1.25/1}.experience-card,.instructors-card{border-radius:22px;padding:22px}.experience-card li{font-size:16px}.flyer-frame{border-radius:22px;padding:8px}.flyer-frame img{border-radius:16px}.detail-card{padding:22px;border-radius:22px}.footer{font-size:13px;line-height:1.5}}
@media (max-width: 380px){h1{font-size:50px}h2{font-size:30px}.lead{font-size:16px}.brand img{width:96px}}
