:root {
  --green: #214b36;
  --green-dark: #153425;
  --green-soft: #a6c79a;
  --red: #e6392f;
  --red-dark: #bd2e27;
  --gold: #f4c542;
  --cream: #fff5e2;
  --cream-2: #fffaf0;
  --brown: #6b461e;
  --purple: #6c4e7a;
  --ink: #183126;
  --muted: #6e716d;
  --line: rgba(33, 75, 54, .16);
  --shadow: 0 20px 55px rgba(60, 39, 13, .12);
  --radius: 24px;
  --radius-sm: 16px;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; font-family: "Trebuchet MS", "Arial Rounded MT Bold", Arial, sans-serif; color: var(--ink); background: var(--cream-2); line-height: 1.5; overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.container { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }
.section-pad { padding: 88px 0; }
.section-pad-sm { padding: 62px 0; }
.skip-link { position: fixed; left: 12px; top: -60px; z-index: 9999; background: white; padding: 12px 18px; border-radius: 8px; }
.skip-link:focus { top: 12px; }

.site-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,250,240,.95); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(33,75,54,.08); }
.nav-wrap { min-height: 78px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 22px; }
.brand img { width: 178px; }
.primary-nav { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.8vw, 28px); font-size: 14px; font-weight: 700; }
.primary-nav a { text-decoration: none; position: relative; padding: 26px 0; }
.primary-nav a::after { content: ""; position: absolute; left: 50%; bottom: 17px; width: 0; height: 3px; border-radius: 99px; background: var(--green); transform: translateX(-50%); transition: width .2s ease; }
.primary-nav a:hover::after { width: 100%; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.cart-button { min-height: 46px; border: 1px solid var(--line); background: white; color: var(--green); border-radius: 14px; padding: 0 12px; display: inline-flex; align-items: center; gap: 7px; font-weight: 800; }
.cart-button strong { display: grid; place-items: center; min-width: 23px; height: 23px; padding: 0 5px; border-radius: 999px; color: white; background: var(--red); font-size: 12px; }
.nav-toggle { display: none; width: 46px; height: 46px; border: 0; border-radius: 14px; background: white; box-shadow: 0 6px 20px rgba(0,0,0,.06); }
.nav-toggle span { display: block; width: 22px; height: 2px; margin: 5px auto; border-radius: 8px; background: var(--green); }

.btn { min-height: 48px; border: 0; border-radius: 14px; padding: 13px 22px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; text-decoration: none; font-weight: 900; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-red { background: var(--red); color: white; box-shadow: 0 12px 26px rgba(230,57,47,.23); }
.btn-red:hover { background: var(--red-dark); }
.btn-dark { background: var(--green); color: white; }
.btn-outline { color: var(--green); background: transparent; border: 2px solid var(--green); }
.btn-block { width: 100%; }
.text-button { border: 0; background: transparent; text-decoration: underline; color: var(--muted); padding: 10px; }
.icon-button { border: 0; width: 44px; height: 44px; border-radius: 50%; background: #f7ead5; font-size: 30px; line-height: 1; }

.hero { position: relative; padding-top: 72px; background: radial-gradient(circle at 50% 30%, #fff 0 18%, transparent 45%), linear-gradient(180deg, #fff9ec, #fff2d8); border-bottom: 1px solid rgba(33,75,54,.08); overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; opacity: .26; pointer-events: none; background-image: radial-gradient(circle at 25px 25px, rgba(244,197,66,.28) 0 2px, transparent 3px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, #000, transparent 70%); }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.05fr 1fr .55fr; gap: 18px; align-items: center; }
.eyebrow, .kicker { display: inline-flex; font-size: 12px; letter-spacing: .13em; text-transform: uppercase; color: var(--red); font-weight: 900; }
.kicker.light { color: #ffe696; }
.hero h1 { margin: 10px 0 18px; font-size: clamp(48px, 6.3vw, 86px); line-height: .91; letter-spacing: -.045em; color: var(--green); }
.hero h1 span { color: var(--red); }
.hero-lead { max-width: 570px; font-size: clamp(17px, 1.5vw, 21px); color: #405147; }
.hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.hero-proof { display: flex; gap: 26px; margin-top: 32px; padding-top: 22px; border-top: 1px solid rgba(33,75,54,.14); }
.hero-proof div { display: grid; gap: 1px; }
.hero-proof strong { font-size: 20px; color: var(--green); }
.hero-proof span { max-width: 145px; font-size: 11px; color: var(--muted); }
.hero-product { position: relative; min-height: 410px; display: grid; place-items: center; }
.hero-pizza { width: min(100%, 600px); position: relative; z-index: 2; border-radius: 35px; filter: drop-shadow(0 25px 30px rgba(71,45,13,.16)); }
.product-glow { position: absolute; width: 78%; aspect-ratio: 1; border-radius: 50%; background: rgba(244,197,66,.22); filter: blur(30px); }
.ingredient-tag { position: absolute; z-index: 3; background: white; border: 1px solid rgba(33,75,54,.12); padding: 8px 12px; border-radius: 999px; font-size: 11px; font-weight: 900; box-shadow: 0 10px 25px rgba(46,34,15,.10); }
.tag-one { left: 2%; top: 22%; }.tag-two { right: 1%; top: 33%; }.tag-three { left: 5%; bottom: 16%; color: var(--red); }
.hero-mascot { align-self: end; display: grid; justify-items: center; gap: 10px; }
.hero-mascot img { width: 210px; }
.speech { position: relative; margin-bottom: 24px; background: white; border: 3px solid var(--green); border-radius: 50%; padding: 15px 24px; display: grid; text-align: center; transform: rotate(-3deg); }
.speech::before { content: ""; position: absolute; left: 5px; bottom: -14px; width: 18px; height: 18px; background: white; border-left: 3px solid var(--green); border-bottom: 3px solid var(--green); transform: rotate(-20deg); }
.speech strong { color: var(--red); font-size: 22px; }.speech span { color: var(--green); font-weight: 900; }
.hero-doodle { position: absolute; font-size: 74px; opacity: .05; filter: grayscale(1); }.hero-doodle-1 { left: 3%; top: 18%; transform: rotate(-18deg); }.hero-doodle-2 { right: 33%; bottom: 5%; transform: rotate(14deg); }

.section-heading { display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 38px; }
.section-heading.compact { margin-bottom: 28px; }
.section-heading h2 { font-size: clamp(32px, 4vw, 54px); margin: 8px 0 7px; color: var(--green); letter-spacing: -.03em; }
.section-heading p { margin: 0; color: var(--muted); }
.value-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.value-card { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 25px; box-shadow: 0 10px 30px rgba(33,75,54,.05); }
.value-card h3 { margin: 15px 0 6px; font-size: 18px; text-transform: uppercase; }.value-card p { margin: 0; color: var(--muted); font-size: 14px; }
.icon-bubble { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; color: white; font-size: 23px; }.icon-bubble.red{background:var(--red)}.icon-bubble.gold{background:#e8a827}.icon-bubble.green{background:var(--green)}.icon-bubble.purple{background:var(--purple)}
.uvp-card { margin-top: 22px; padding: 24px 30px; background: #fff3c7; border: 1px solid #f0c45c; border-radius: 20px; text-align: center; }
.uvp-label { color: var(--red); font-weight: 900; letter-spacing: .1em; font-size: 12px; margin: 0 0 6px; }.uvp-card p:last-child { margin: 0; font-size: clamp(17px,2vw,23px); font-weight: 900; }

.how { background: white; }
.steps-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(5,1fr); gap: 14px; }
.step-card { min-height: 210px; background: var(--cream-2); border: 1px solid var(--line); border-radius: 22px; padding: 22px 18px; text-align: center; position: relative; }
.step-number { position: absolute; left: 14px; top: 14px; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; color: white; background: var(--green); font-weight: 900; }.step-icon{font-size:42px}.step-card h3{margin:12px 0 6px}.step-card p{margin:0;color:var(--muted);font-size:13px}

.preorder { background: linear-gradient(135deg, var(--green-dark), var(--green)); color: white; }
.split-panel { display: grid; grid-template-columns: .9fr 1.15fr; gap: 28px; align-items: stretch; }
.preorder-info { position: relative; padding: 30px; min-height: 470px; overflow: hidden; }
.preorder-info h2 { font-size: clamp(38px,4vw,60px); line-height: 1; margin: 12px 0 18px; }.preorder-info p{color:#d7eadc;max-width:560px}.mini-benefits{display:grid;gap:8px;margin-top:28px;font-weight:800}.calendar-art{position:absolute;right:25px;bottom:10px;width:170px;height:170px;border-radius:24px;background:#fff4df;color:var(--red);display:grid;place-items:center;font-size:86px;font-weight:900;transform:rotate(6deg);box-shadow:var(--shadow)}
.form-card { background: white; color: var(--ink); border-radius: var(--radius); padding: 28px; box-shadow: var(--shadow); border: 1px solid rgba(33,75,54,.08); }
.form-card h3 { margin: 0 0 18px; font-size: 24px; color: var(--green); }
.form-grid { display: grid; gap: 15px; }.form-grid.two { grid-template-columns: repeat(2,1fr); }.form-grid .full { grid-column: 1/-1; }
label { display: grid; gap: 7px; font-weight: 800; font-size: 13px; color: #3f5147; }
input, select, textarea { width: 100%; border: 1px solid #dcd8cd; border-radius: 12px; padding: 12px 13px; color: var(--ink); background: #fffcf6; transition: border-color .2s, box-shadow .2s; }
input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(33,75,54,.08);outline:0} textarea{resize:vertical}.form-total{margin:16px 0;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:12px;background:#f5eee1}.form-total strong{color:var(--red);font-size:22px}.form-note{margin:10px 0 0;color:var(--muted);font-size:12px;text-align:center}.field-error{border-color:#c61f1f!important;box-shadow:0 0 0 3px rgba(198,31,31,.08)!important}

.custom { background: #fff7e9; }
.custom-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 22px; align-items: start; }
.occasion-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.occasion-card { border: 1px solid var(--line); border-radius: 20px; min-height: 160px; background: white; padding: 18px; color: var(--green); display: grid; place-items: center; align-content: center; gap: 7px; text-align: center; transition: transform .2s, border-color .2s, background .2s; }.occasion-card span{font-size:43px}.occasion-card:hover,.occasion-card.active{transform:translateY(-3px);border-color:var(--gold);background:#fff3c7}.custom-form{display:grid;gap:13px}

.menu-section { background: white; }
.menu-heading { flex-direction: row; align-items: end; justify-content: space-between; text-align: left; gap: 20px; }.menu-heading .kicker{align-self:flex-start}.menu-heading h2{margin-bottom:3px}.menu-heading p{max-width:620px}.menu-showcase{display:grid;grid-template-columns:1.15fr 1.85fr;gap:20px}.winner-card{border-radius:28px;background:linear-gradient(145deg,#fff3d9,#f7e6c2);border:1px solid rgba(107,70,30,.16);padding:22px;position:relative;overflow:hidden}.winner-badge{display:inline-flex;background:var(--gold);color:var(--green-dark);font-weight:900;font-size:11px;padding:7px 10px;border-radius:999px}.winner-content{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:10px}.winner-content h3{font-size:37px;margin:10px 0 6px;color:var(--green)}.winner-content p{font-size:14px;color:#5d5f5b}.price-line{display:flex;align-items:baseline;gap:8px}.price-line strong{font-size:36px;color:var(--red)}.price-line span{font-size:12px;color:var(--muted)}.winner-content img{width:100%;filter:drop-shadow(0 15px 20px rgba(82,50,14,.16))}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.product-card{border:1px solid var(--line);border-radius:22px;padding:16px;background:#fffdf8;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.product-card>img{height:135px;object-fit:contain}.pack-tag{align-self:flex-start;background:var(--green);color:white;padding:6px 9px;border-radius:8px;font-size:11px;font-weight:900}.product-card h3{margin:8px 0 0}.product-price{font-size:30px;color:var(--red);font-weight:900;margin:5px 0}.product-card small{color:var(--green);font-weight:900;margin-bottom:8px}.product-card .btn{margin-top:auto;width:100%}.pack-visual{height:135px;display:grid;align-content:center;justify-content:center;grid-template-columns:repeat(2,70px)}.pack-visual.six{grid-template-columns:repeat(3,55px)}.pack-visual img{width:78px;margin:-12px;filter:drop-shadow(0 5px 7px rgba(0,0,0,.08))}.pack-visual.six img{width:62px}

.feedback { background: #fff6e5; }.feedback-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feedback-card{background:white;border:1px solid var(--line);padding:22px;border-radius:20px}.score{font-size:38px;font-weight:900;color:var(--red)}.feedback-card h3{margin:2px 0 7px}.feedback-card p{margin:0;color:var(--muted);font-size:13px}
.impact{background:linear-gradient(135deg,#143625,#245a3d);color:white}.impact-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px}.impact-copy h2{font-size:clamp(42px,5vw,70px);line-height:1;margin:12px 0 18px}.impact-copy>p{color:#d7eadc;max-width:700px;font-size:18px}.impact-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.impact-stats div{padding:18px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.impact-stats strong{display:block;color:#ffe38a;font-size:30px}.impact-stats span{font-size:12px;color:#e2eee6}.impact-art{display:grid;justify-items:center}.impact-art img{width:250px;filter:drop-shadow(0 20px 20px rgba(0,0,0,.18))}.impact-quote{background:#fff3c7;color:var(--green);font-size:18px;font-weight:900;padding:16px 22px;border-radius:20px;text-align:center;transform:rotate(-2deg)}

.contact{background:#fffaf0}.contact-grid{display:grid;grid-template-columns:1.1fr .8fr .6fr;gap:20px;align-items:stretch}.contact-cta{background:var(--green);color:white;border-radius:28px;padding:30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-cta h2{font-size:clamp(35px,4vw,54px);line-height:1;margin:10px 0 12px}.contact-cta p{color:#dce9e0}.contact-form{display:grid;gap:14px}.contact-meta{border:1px solid var(--line);border-radius:28px;padding:26px;background:white;display:flex;flex-direction:column;align-items:flex-start}.contact-meta img{width:70px}.contact-meta h3{font-size:27px;margin:10px 0 4px}.contact-meta p{color:var(--muted);font-size:13px}.social-placeholder{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.social-placeholder span{background:#f5ead7;border-radius:999px;padding:7px 9px;font-size:11px}.contact-meta small{color:var(--muted)}
.site-footer{background:var(--green-dark);color:#e4eee7;padding:23px 0}.footer-grid{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.footer-grid img{width:150px;filter:brightness(0) invert(1)}.footer-grid p{text-align:center;font-size:12px}.footer-grid a{font-size:12px}

.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:950;width:58px;height:58px;border:0;border-radius:50%;background:#20b358;color:white;font-size:26px;box-shadow:0 15px 35px rgba(16,129,64,.3)}
.drawer-overlay{position:fixed;inset:0;background:rgba(15,30,21,.46);z-index:1090;backdrop-filter:blur(3px)}
.cart-drawer{position:fixed;right:0;top:0;z-index:1100;height:100dvh;width:min(450px,100%);background:#fffaf0;box-shadow:-25px 0 70px rgba(0,0,0,.18);padding:24px;transform:translateX(105%);transition:transform .28s ease;overflow:auto}.cart-drawer.open{transform:translateX(0)}.cart-header{display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.cart-header h2{margin:3px 0 0}.cart-items{display:grid;gap:10px;margin:18px 0}.cart-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:13px;border:1px solid var(--line);background:white;border-radius:16px}.cart-item h3{font-size:14px;margin:0 0 3px}.cart-item p{margin:0;color:var(--red);font-weight:900}.qty-controls{display:flex;align-items:center;gap:6px}.qty-controls button{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff6e8}.qty-controls strong{min-width:20px;text-align:center}.remove-cart{grid-column:1/-1;border:0;background:transparent;text-align:left;color:#9c3731;font-size:12px;padding:0}.cart-empty{text-align:center;padding:38px 10px;color:var(--muted)}.cart-empty span{font-size:50px}.cart-empty a{color:var(--green);font-weight:900}.cart-summary{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cart-summary strong{font-size:28px;color:var(--red)}.checkout-form{display:grid;gap:13px;padding-top:16px}.toast{position:fixed;left:50%;bottom:26px;z-index:1300;transform:translate(-50%,120px);opacity:0;background:var(--green-dark);color:white;padding:12px 17px;border-radius:12px;box-shadow:var(--shadow);transition:.25s}.toast.show{transform:translate(-50%,0);opacity:1}

.reveal { opacity: 0; transform: translateY(15px); transition: opacity .5s ease, transform .5s ease; }.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition:none!important}}
