:root{
  --gold:#F2B233;
  --red:#D64545;
  --cream:#FFF3E0;
  --black:#1A1A1A;
  --white:#FFFFFF;
  --soft:#fffaf0;
  --shadow:0 18px 45px rgba(26,26,26,.16);
  --radius:26px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--black);background:var(--white);line-height:1.55}img{max-width:100%;display:block}a{color:inherit}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px clamp(18px,4vw,60px);background:rgba(255,243,224,.95);backdrop-filter:blur(12px);border-bottom:3px solid rgba(242,178,51,.4)}.logo img{height:88px;width:auto}.nav{display:flex;align-items:center;gap:8px;font-weight:800}.nav a{text-decoration:none;padding:9px 13px;border-radius:999px}.nav a:hover{background:#fff}.nav-cta{background:var(--red)!important;color:#fff;box-shadow:0 8px 18px rgba(214,69,69,.28)}.menu-toggle{display:none;border:0;background:var(--red);color:#fff;font-size:24px;border-radius:12px;padding:8px 12px}.section-pad{padding:clamp(54px,7vw,96px) clamp(18px,5vw,72px)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,70px);align-items:center;background:radial-gradient(circle at top left,#fff 0,#fff7e8 35%,#fff 75%);overflow:hidden}.hero-image-card{position:relative;padding:12px;background:#fff;border:4px solid var(--gold);border-radius:var(--radius);box-shadow:var(--shadow);transform:rotate(-1.4deg)}.hero-image-card img{border-radius:18px;aspect-ratio:4/5;object-fit:cover;object-position:center}.badge-servings{position:absolute;right:-18px;bottom:26px;background:var(--cream);border:6px solid var(--gold);outline:3px solid var(--red);border-radius:50%;width:154px;height:154px;display:grid;place-items:center;text-align:center;box-shadow:var(--shadow);text-transform:uppercase}.badge strong{font-size:42px;color:#aa1717;line-height:1}.badge span{font-size:13px;font-weight:900}.eyebrow{font-weight:900;color:var(--red);text-transform:uppercase;letter-spacing:.12em;margin:0 0 12px}.hero h1,.section-heading h2,.story-copy h2,.sundae-copy h2,.quote-card h2{font-size:clamp(38px,7vw,78px);line-height:.98;margin:0 0 20px;font-weight:900;letter-spacing:-.05em}.hero h1 span{display:block;font-family:Pacifico,cursive;color:var(--gold);text-shadow:3px 3px 0 #fff,5px 5px 0 rgba(26,26,26,.18);letter-spacing:0}.lead{font-size:clamp(18px,2vw,23px);font-weight:600;max-width:740px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:15px 24px;font-weight:900;text-decoration:none;box-shadow:0 10px 22px rgba(26,26,26,.15);cursor:pointer}.btn.primary{background:var(--red);color:#fff}.btn.secondary{background:var(--gold);color:var(--black)}.quick-prices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.quick-prices div{background:#fff;border:2px solid rgba(242,178,51,.6);border-radius:18px;padding:18px;text-align:center;box-shadow:0 10px 24px rgba(26,26,26,.08)}.quick-prices small{display:block;text-transform:uppercase;font-weight:900;font-size:11px;color:#555}.quick-prices strong{display:block;color:#b41414;font-size:34px;line-height:1}.party-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--black);color:#fff;text-align:center;font-weight:900;text-transform:uppercase}.party-strip div{padding:18px 10px;background:linear-gradient(135deg,var(--black),#34221a)}.story-section,.sundae-section,.quote-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(26px,5vw,62px);align-items:center}.story-copy h2,.sundae-copy h2,.quote-card h2{font-size:clamp(34px,5vw,58px)}.rounded-img,.wide-img,.sundae-photo img{border-radius:var(--radius);box-shadow:var(--shadow);border:5px solid #fff}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.mini-stats div{background:var(--cream);border-radius:18px;padding:16px;text-align:center}.mini-stats strong{display:block;font-size:34px;color:var(--red)}.mini-stats span{font-size:12px;font-weight:900;text-transform:uppercase}.cream-bg{background:var(--cream)}.section-heading{text-align:center;max-width:850px;margin:0 auto 38px}.section-heading h2{font-size:clamp(34px,5vw,58px)}.section-heading p:last-child{font-size:18px;font-weight:600}.package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1100px;margin:0 auto}.package-card{background:#fff;border:3px solid rgba(242,178,51,.65);border-radius:var(--radius);padding:0 28px 28px;box-shadow:var(--shadow);overflow:hidden}.package-card.featured{border-color:var(--red)}.package-top{margin:0 -28px 24px;padding:14px;text-align:center;color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.red-top{background:var(--red)}.gold-top{background:var(--gold);color:var(--black)}.package-card h3{font-size:34px;margin:0;color:#183568}.price{font-size:64px;font-weight:900;color:#b41414;line-height:1;margin:10px 0 18px}.package-card ul,.check-list{padding:0;margin:0;list-style:none}.package-card li,.check-list li{padding:9px 0 9px 34px;position:relative;font-weight:700}.package-card li:before,.check-list li:before{content:'✓';position:absolute;left:0;color:var(--gold);font-weight:900}.sundae-section{grid-template-columns:1fr .86fr}.sundae-copy h2 span{color:var(--red)}.addon-box{margin-top:24px;background:var(--cream);border-left:8px solid var(--red);padding:18px;border-radius:16px;font-weight:700}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto 34px}.steps div{background:#fff;border:2px solid var(--gold);border-radius:var(--radius);padding:28px;text-align:center;box-shadow:0 12px 28px rgba(26,26,26,.09)}.steps span{display:inline-grid;place-items:center;width:54px;height:54px;background:var(--red);color:#fff;border-radius:50%;font-size:28px;font-weight:900}.steps h3{font-size:24px}.wide-img{width:min(980px,100%);margin:0 auto;aspect-ratio:16/8;object-fit:cover}.gallery-grid{columns:3 260px;column-gap:18px;max-width:1180px;margin:0 auto}.gallery-grid img{width:100%;margin:0 0 18px;border-radius:20px;box-shadow:0 12px 30px rgba(26,26,26,.12);break-inside:avoid;border:4px solid #fff}.menu-images{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;max-width:1100px;margin:0 auto}.menu-images img{border-radius:20px;box-shadow:var(--shadow);border:4px solid var(--gold)}.faq-grid{max-width:950px;margin:0 auto;display:grid;gap:14px}details{background:#fff;border-radius:18px;padding:18px 22px;border:2px solid rgba(242,178,51,.45);box-shadow:0 8px 18px rgba(26,26,26,.06)}summary{font-weight:900;cursor:pointer}details p{margin-bottom:0}.quote-section{background:linear-gradient(135deg,var(--red),#8d1111);color:#fff;grid-template-columns:.85fr 1fr}.quote-card{padding:30px}.quote-card .eyebrow{color:var(--gold)}.contact-stack{display:grid;gap:8px;font-weight:800}.contact-stack a{color:#fff}.phone{font-size:clamp(34px,5vw,62px);font-weight:900;text-decoration:none}.quote-form{background:#fff;color:var(--black);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.quote-form label{display:grid;gap:6px;font-weight:900}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:2px solid #ead5ac;border-radius:12px;padding:13px;font:inherit}.quote-form label:has(textarea),.quote-form button{grid-column:1/-1}footer{text-align:center;background:var(--black);color:#fff;padding:34px 18px 74px}footer img{height:120px;margin:0 auto 16px}footer a{color:#fff}.mobile-call{position:fixed;left:12px;right:12px;bottom:12px;z-index:30;background:var(--red);color:#fff;text-align:center;text-decoration:none;font-weight:900;padding:14px;border-radius:999px;box-shadow:var(--shadow);display:none}
@media(max-width:900px){.menu-toggle{display:block}.nav{position:absolute;top:88px;left:14px;right:14px;background:#fff;display:none;flex-direction:column;border-radius:20px;padding:16px;box-shadow:var(--shadow)}.nav.open{display:flex}.nav a{width:100%;text-align:center}.hero,.story-section,.sundae-section,.quote-section{grid-template-columns:1fr}.hero-copy{order:-1}.quick-prices,.party-strip,.mini-stats,.steps,.package-grid,.menu-images,.quote-form{grid-template-columns:1fr}.party-strip{font-size:14px}.package-card.featured{transform:none}.badge-servings{width:122px;height:122px;right:8px;bottom:8px}.badge strong{font-size:32px}.quote-form label:has(textarea),.quote-form button{grid-column:auto}.mobile-call{display:block}.site-header{padding:6px 16px}.logo img{height:68px}.hero-image-card{transform:none}.wide-img{aspect-ratio:4/3}}

.hidden { display: none !important; }
