:root{--teal:#2a9d8f;--teal-dark:#1f7a6e;--cherry:#e63946;--cream:#fff8e7;--choc:#4a2c1a;--pink:#ffd6da;--gold:#f4a261}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Quicksand',sans-serif;background:var(--cream);color:var(--choc);line-height:1.6;overflow-x:hidden}
.awning{height:44px;background:repeating-linear-gradient(90deg,var(--teal) 0 56px,#fff 56px 112px,var(--cherry) 112px 168px,#fff 168px 224px);border-bottom:6px solid var(--choc)}
.awning2{height:14px;background:radial-gradient(circle at 28px -4px,transparent 18px,var(--cream) 19px);background-size:56px 28px}
header{display:flex;justify-content:space-between;align-items:center;padding:20px 5vw;flex-wrap:wrap;gap:14px}
.logo{font-family:'Pacifico',cursive;font-size:2.2rem;color:var(--teal-dark);line-height:1}
.logo span{color:var(--cherry)}
.logo small{display:block;font-family:'Quicksand';font-weight:700;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--choc);margin-top:6px}
nav a{color:var(--choc);text-decoration:none;font-weight:700;margin-left:24px;font-size:.95rem}
nav a:hover{color:var(--cherry)}
.hero{text-align:center;padding:44px 5vw 56px;background:radial-gradient(circle at 15% 20%,#ffeef0 0,transparent 32%),radial-gradient(circle at 85% 10%,#d8f3ee 0,transparent 30%)}
.hero .script{font-family:'Pacifico';font-size:1.6rem;color:var(--cherry);transform:rotate(-2deg);display:inline-block}
.hero h1{font-weight:700;font-size:3.6rem;line-height:1.05;max-width:760px;margin:12px auto;color:var(--teal-dark)}
.hero h1 em{font-family:'Pacifico';font-style:normal;font-weight:400;color:var(--cherry);font-size:3.8rem}
.hero p{max-width:560px;margin:16px auto 0;font-size:1.12rem;font-weight:500}
.cta{margin-top:28px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.cta a{text-decoration:none;font-weight:700;padding:14px 28px;border-radius:99px}
.cta .a{background:var(--cherry);color:#fff;box-shadow:0 5px 0 #b91f2e}
.cta .b{background:#fff;color:var(--teal-dark);border:2px solid var(--teal)}
.ribbon{background:var(--cherry);color:#fff;text-align:center;padding:16px 5vw;font-weight:700;letter-spacing:.04em}
.ribbon strong{font-family:'Pacifico';font-weight:400;font-size:1.3rem;margin-right:8px}
.board{padding:64px 5vw}
.board h2,.menu h2,.story h2,.reviews h2{font-family:'Pacifico';font-weight:400;text-align:center}
.board h2{font-size:2.4rem;color:var(--teal-dark)}
.board .sub{text-align:center;font-weight:600;margin:6px 0 36px}
.flavors{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1050px;margin:0 auto}
.flavor{background:#fff;border:2px solid #f0e2c4;border-radius:18px;padding:22px 16px;text-align:center;box-shadow:0 6px 16px rgba(74,44,26,.07)}
.dot{width:54px;height:54px;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;margin:0 auto 12px;border:3px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.15)}
.d1{background:#fff3c4}.d2{background:#5c3317}.d3{background:#ffb3c1}.d4{background:#8ecae6}.d5{background:#90be6d}.d6{background:#f28482}.d7{background:#e9c46a}.d8{background:#6d597a}
.flavor h3{font-size:1.02rem}
.flavor p{font-size:.86rem;color:#7a5a44}
.menu{background:var(--teal);color:#fff;padding:64px 5vw}
.menu h2{font-size:2.4rem;color:#fff}
.menu .sub{text-align:center;margin:6px 0 36px;font-weight:600;color:#d0f0e8}
.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px 56px;max-width:900px;margin:0 auto}
.mi{display:flex;justify-content:space-between;gap:16px;border-bottom:2px dotted rgba(255,255,255,.45);padding:12px 0;align-items:baseline}
.mi b{font-size:1.08rem}
.mi small{display:block;font-weight:500;color:#d0f0e8}
.mi .pr{font-weight:700;font-size:1.15rem;white-space:nowrap;color:#ffe66d}
.story{padding:64px 5vw;max-width:780px;margin:0 auto;text-align:center}
.story h2{font-size:2.3rem;color:var(--cherry)}
.story p{margin-top:14px;font-size:1.07rem}
.reviews{padding:60px 5vw;background:#fff}
.reviews h2{font-size:2.3rem;color:var(--teal-dark)}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1050px;margin:32px auto 0}
.rev{background:var(--cream);border-radius:18px;padding:24px;border-top:6px solid var(--pink)}
.rev .stars{color:var(--gold);letter-spacing:.18em}
.rev p{margin:10px 0;font-weight:500}
.rev cite{font-style:normal;font-weight:700;font-size:.88rem}
.info{background:var(--choc);color:var(--cream);padding:60px 5vw}
.info .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1000px;margin:0 auto;text-align:center}
.info h4{font-family:'Pacifico';font-weight:400;font-size:1.25rem;color:#ffd6da;margin-bottom:8px}
.phone{font-size:1.35rem;font-weight:700}
footer{text-align:center;padding:22px;background:#3a2113;color:#c9a88a;font-size:.88rem;font-weight:600;letter-spacing:.06em}
@media(max-width:820px){.flavors{grid-template-columns:repeat(2,1fr)}.mgrid,.rgrid,.info .cols{grid-template-columns:1fr}.hero h1{font-size:2.4rem}.hero h1 em{font-size:2.5rem}nav{display:none}}
