:root{
  --cream:#FFF8EE; --sunset:#F97316; --ember:#C2410C; --honey:#FBBF24;
  --moss:#15803D; --stone-900:#1C1917; --stone-700:#44403C; --stone-600:#57534E; --stone-500:#78716C; --stone-200:#E7E5E4;
  --orange-50:#FFF7ED; --orange-100:#FFEDD5; --orange-200:#FED7AA;
  --amber-50:#FFFBEB; --amber-100:#FEF3C7; --amber-200:#FDE68A;
  --lime-50:#F7FEE7; --lime-200:#D9F99D;
  --emerald-100:#D1FAE5;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:'Nunito',system-ui,sans-serif;color:var(--stone-900);background:var(--cream);line-height:1.55;overflow-x:hidden}
h1,h2,h3,.font-display{font-family:'Fraunces',Georgia,serif;font-weight:900;letter-spacing:-.01em}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.accent{color:var(--sunset);font-style:italic}
.paw-bg{
  background-image:
    radial-gradient(circle at 10% 15%, rgba(249,115,22,.06) 0 8px, transparent 9px),
    radial-gradient(circle at 80% 30%, rgba(251,191,36,.07) 0 10px, transparent 11px),
    radial-gradient(circle at 30% 70%, rgba(249,115,22,.05) 0 7px, transparent 8px),
    radial-gradient(circle at 65% 90%, rgba(251,191,36,.06) 0 9px, transparent 10px);
  background-size: 600px 600px;
}

/* HERO */
.hero{position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,237,213,.7),rgba(255,251,235,.4),var(--cream));pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr;gap:40px;align-items:center;padding:56px 20px 40px}
@media(min-width:768px){.hero-grid{grid-template-columns:1fr 1fr;gap:56px;padding:80px 32px 56px}}
.hero-text h1{font-size:clamp(44px,7vw,76px);line-height:.95;margin:18px 0 0}
.lede{font-size:18px;color:var(--stone-700);max-width:480px;margin:18px 0 0}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.18em}
.badge-light{background:rgba(255,255,255,.85);border:1px solid var(--orange-200);color:var(--ember)}
.cta-row{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}

.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:10px;font-weight:800;text-decoration:none;transition:transform .15s, box-shadow .15s, background .15s;border:none;cursor:pointer;font-size:15px}
.btn-sm{padding:9px 16px;font-size:13px}
.btn:hover{transform:translateY(-1px)}
.btn-ig{color:#fff;background:linear-gradient(135deg,#F97316,#DB2777,#7C3AED);box-shadow:0 10px 24px -8px rgba(219,39,119,.45)}
.btn-light{background:#fff;border:1px solid var(--stone-200);color:var(--stone-900);box-shadow:0 6px 18px -8px rgba(0,0,0,.12)}
.btn-dark{background:var(--stone-900);color:#fff;box-shadow:0 10px 24px -8px rgba(0,0,0,.4)}
.btn-outline-dark{background:#fff;color:var(--stone-900);border:2px solid var(--stone-900);box-shadow:0 6px 18px -8px rgba(0,0,0,.12)}
.btn-outline-dark:hover{background:#F5F5F4}
.trivia-btns{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px}
.btn-orange{background:var(--sunset);color:#fff;box-shadow:0 10px 24px -8px rgba(249,115,22,.5)}
.btn-orange:hover{background:var(--ember)}
.btn-green{background:var(--moss);color:#fff;box-shadow:0 10px 24px -8px rgba(21,128,61,.45)}
.btn-green:hover{background:#065F46}

.hero-photo{position:relative}
.photo-shadow{position:absolute;inset:-16px;background:rgba(251,191,36,.3);border-radius:32px;transform:rotate(-6deg)}
.hero-photo img{position:relative;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:32px;box-shadow:0 24px 60px -16px rgba(0,0,0,.25);outline:8px solid #fff;transform:rotate(2deg)}
.photo-tag{position:absolute;bottom:-18px;left:-18px;background:#fff;padding:10px 16px;border-radius:14px;border:1px solid var(--orange-100);box-shadow:0 12px 24px -10px rgba(0,0,0,.18);font-family:'Fraunces',serif;font-weight:800}

/* SECTIONS */
.section{padding:24px 20px 0}
.card{position:relative;background:#fff;border:1px solid var(--orange-100);border-radius:20px;padding:32px;box-shadow:0 12px 30px -16px rgba(0,0,0,.12);margin-bottom:32px}
.note-card .note{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(20px,2.6vw,28px);line-height:1.45;color:var(--stone-900);margin:0}
.note .sig{font-style:normal;font-weight:900;color:var(--sunset)}
.trivia-card{background:linear-gradient(135deg,var(--amber-50),var(--orange-50));border-color:var(--amber-200)}
.ribbon{position:absolute;top:-14px;left:28px;padding:6px 14px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;display:inline-flex;align-items:center;gap:6px}
.ribbon-orange{background:var(--sunset);color:#fff}
.ribbon-honey{background:var(--honey);color:var(--stone-900)}

.section-head{text-align:center;margin:8px 0 24px}
.section-head h2{font-size:clamp(32px,5vw,48px);margin:10px 0 8px}
.section-head p{color:var(--stone-600);max-width:560px;margin:0 auto}
.eyebrow{color:var(--ember);font-weight:800;text-transform:uppercase;letter-spacing:.18em;font-size:12px}

/* PRODUCT */
.product{display:grid;grid-template-columns:1fr;background:#fff;border:1px solid var(--orange-100);border-radius:20px;overflow:hidden;box-shadow:0 12px 30px -16px rgba(0,0,0,.1);margin-bottom:36px;transition:box-shadow .2s}
.product:hover{box-shadow:0 20px 50px -20px rgba(0,0,0,.18)}
@media(min-width:880px){.product{grid-template-columns:2fr 3fr}}
.product-img{padding:32px;display:flex;align-items:center;justify-content:center;min-height:280px}
.product-img img{max-width:100%;max-height:380px;object-fit:contain}
.product-img-orange{background:linear-gradient(135deg,var(--orange-50),var(--amber-100))}
.product-img-green{background:linear-gradient(135deg,#F0F9FF,#DBEAFE)}
.product-img-green img{padding:0;border-radius:14px;box-shadow:0 8px 24px -10px rgba(0,0,0,.18);max-width:min(380px,100%);width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.product-body{padding:20px}
@media(min-width:600px){.product-body{padding:32px}}
.product-body h3{font-size:clamp(28px,3.5vw,38px);margin:10px 0 4px}
.title-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:10px}
.sub{font-weight:800;margin:2px 0 0}
.sub.orange{color:var(--ember)}
.sub.green{color:var(--moss)}
.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}
.chip-orange{background:rgba(249,115,22,.1);color:var(--ember)}
.chip-green{background:rgba(21,128,61,.1);color:var(--moss)}
.ig-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:800;text-decoration:none;transition:color .15s}
.ig-orange{color:var(--ember)}.ig-orange:hover{color:var(--sunset)}
.ig-green{color:var(--moss)}.ig-green:hover{color:#065F46}
.feat{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-size:14px;color:var(--stone-700)}
@media(min-width:600px){.feat{grid-template-columns:1fr 1fr;column-gap:24px}}
.feat li{padding-left:18px;position:relative}
.feat li::before{content:"\2022";position:absolute;left:4px;color:var(--sunset);font-weight:900}

.deal{margin-top:22px;padding:20px;border-radius:14px}
.deal p{margin:6px 0 12px;font-size:14px;color:var(--stone-600)}
.deal-title{font-weight:800;color:var(--ember);display:flex;align-items:center;gap:8px}
.deal-title.green{color:var(--moss)}
.deal-title-sm{font-weight:800;color:var(--stone-900);display:flex;align-items:center;gap:8px}
.deal-primary{background:linear-gradient(135deg,var(--orange-50),var(--amber-50));border:2px solid rgba(249,115,22,.3)}
.deal-plain{background:#fff;border:1px solid var(--stone-200)}
.deal-green{background:rgba(247,254,231,.7);border:1px solid var(--lime-200)}
.divider{height:1px;background:var(--orange-200);margin:16px 0 12px}
.hint{font-size:12px;color:var(--stone-600);margin-bottom:8px}
.fine{font-size:12px;color:var(--stone-600);margin-top:14px;line-height:1.5}

.code-pill{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;background:var(--orange-50);border:2px dashed var(--sunset);border-radius:10px;padding:8px 12px}
@media(min-width:600px){.code-pill{gap:12px;padding:8px 14px}}
.deal-green .code-pill{background:#fff;border-color:var(--moss)}
.code{font-family:'Fraunces',serif;font-weight:900;letter-spacing:.08em;color:var(--ember);font-size:16px;word-break:break-all}
@media(min-width:600px){.code{font-size:18px;letter-spacing:.1em}}
.deal-green .code{color:var(--moss)}
.copy-btn{padding:6px 12px;border-radius:8px;background:#fff;border:1px solid var(--stone-200);font-weight:800;font-size:13px;color:var(--ember);cursor:pointer;transition:background .15s}
.copy-btn:hover{background:var(--orange-50)}
.copy-btn.copied{color:var(--moss)}

footer{margin-top:32px;border-top:1px solid var(--orange-100);background:linear-gradient(to bottom,var(--cream),var(--orange-50))}
.footer-inner{padding:32px 20px;text-align:center}
.copyright{margin-top:20px;color:var(--stone-500);font-size:13px}