/* Mobile composition: clear hierarchy, comfortable text and touch targets. */
@media(max-width:700px){
 body{font-size:22px;line-height:1.35}
 header{padding:22px 20px 14px;display:block}
 header .brand{display:block;text-align:center;font-size:26px}
 header .brand span{margin-top:5px;font-size:19px}
 nav{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:20px;font-size:11px;line-height:1.5}
 nav a{padding:9px 0}.contact-top{display:none}
 .hero{display:flex;flex-direction:column;min-height:0;padding-bottom:26px}
 .hero-copy{padding:30px 22px 15px;text-align:center}
 .hero-copy>.eyebrow{font-size:32px;line-height:1.3;margin-bottom:24px}
 .hero h1{font-size:clamp(32px,9vw,51px);line-height:1.13;letter-spacing:-.025em;margin:0 auto 23px;max-width:460px}
 .hero h1 em{font-size:1.12em;line-height:1.2;margin-top:12px}
 .hero p.intro{max-width:330px;margin:0 auto 24px;font-size:23px;line-height:1.35}
 .hero-copy .button,.button{max-width:100%;min-height:52px;justify-content:center;font-size:12px;line-height:1.5;padding:17px 22px;gap:15px}
 .small-note{font-size:18px;line-height:1.35;margin-top:15px}
 .hero-photo{width:auto;min-height:0;height:330px;margin:22px 27px 6px;border-radius:100px 100px 20px 20px;transform:rotate(1deg)}
 .hero-photo img{object-position:50% 72%}.seal{width:86px;height:86px;font-size:23px;top:22px;right:12px}.photo-caption{left:15px;right:15px;bottom:18px;font-size:10px;line-height:1.5;text-align:center}
 .ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:13px 10px;padding:20px;font-size:12px;line-height:1.4}.ribbon i{display:none}
 .section{padding:48px 22px}.section-head{display:block;margin-bottom:27px}.section-head .eyebrow{font-size:12px;margin-bottom:20px;padding:0}
 h2,.reception .section-head h2,.menu-heading h2{font-size:clamp(29px,8.3vw,40px);line-height:1.14;letter-spacing:-.02em}
 h2 em{line-height:1.2}.section-head>p:last-child{font-size:23px;line-height:1.35;margin:18px 0 0;padding:0;max-width:none}
 .formula-grid{display:block}.featured{padding:26px;border-radius:22px;margin-bottom:20px}.featured .eyebrow{font-size:12px}.featured h3{font-size:clamp(27px,7.6vw,38px);line-height:1.13;margin:20px 0}.featured p{font-size:23px;line-height:1.35}.featured .price{font-size:36px}.featured .price span{font-size:20px}.featured a{font-size:13px;line-height:1.5;margin-top:22px}
 .formula-list article{display:grid;grid-template-columns:1fr;gap:11px;padding:23px 0}.formula-list h3{font-size:22px;line-height:1.25;margin:0 0 10px}.formula-list p{font-size:22px;line-height:1.35;max-width:none}.formula-list .price{font-size:24px;display:flex;align-items:baseline;gap:9px}.formula-list .price span{display:inline;font-size:18px;text-align:left}.tariff-note{font-size:18px;line-height:1.35;margin-top:22px}
 .menu-heading{margin-bottom:30px}.menu-heading .eyebrow{font-size:34px;line-height:1.3;margin-bottom:20px}.menu-heading>p:last-child{font-size:23px;line-height:1.3;margin-top:18px}
 summary{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px;padding:22px 30px 22px 0}summary>span:first-child{font-size:21px;line-height:1.2;grid-column:1}.summary-note{grid-column:1;margin:0;font-size:19px;line-height:1.3}summary::after{position:absolute;right:0;top:24px;font:26px Arial,sans-serif;margin:0}
 .menu-note{font-size:22px;line-height:1.35;margin-bottom:15px}.recipes{grid-template-columns:1fr;gap:0;padding-bottom:25px}.recipe{padding:19px 0}.recipe h3{font-size:21px;line-height:1.25;gap:8px;margin-bottom:10px}.recipe p{font-size:22px;line-height:1.35}.premium{font-size:10px;line-height:1.4}.drinks{grid-template-columns:1fr}.drinks p{font-size:23px;line-height:1.3}
 .reception{display:block}.steps{margin-top:32px}.steps article{gap:17px;padding-bottom:23px;margin-bottom:24px}.steps article>span{font-size:20px;flex-shrink:0;padding-top:2px}.steps h3{font-size:22px;line-height:1.2}.steps p{font-size:22px;line-height:1.35}.practical>div{display:block}.practical article+article{margin-top:30px}.practical h3{font-size:22px;line-height:1.3;margin-bottom:14px}.practical p:not(.eyebrow){font-size:22px;line-height:1.35}
 .contact .eyebrow{font-size:28px;line-height:1.3;margin-bottom:27px}.contact h2{font-size:clamp(27px,7.6vw,36px);line-height:1.17;margin-bottom:24px}.contact h2 em{display:block;margin-top:10px}.contact>p:not(.eyebrow){font-size:23px;line-height:1.35}.contact .button{font-size:11px;padding:18px;gap:8px}.contact-links{display:flex;flex-direction:column;align-items:center;gap:12px;font-size:23px}.contact-links a{padding:8px 0}
 footer{padding:32px 22px;display:flex;flex-direction:column;gap:23px}footer .brand{font-size:26px}footer p{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.hero-photo,.hero-copy>.eyebrow{transform:none}}
/* Continuous, seamless specialty ribbon. */
.ribbon{display:block;position:relative;overflow:hidden;padding:22px 0;background:var(--orange);text-align:left}
.ribbon-track{display:flex;width:max-content;animation:ribbon-scroll 35s linear infinite;will-change:transform}
.ribbon-group{display:flex;align-items:center;flex-shrink:0;gap:36px;padding-right:36px;white-space:nowrap;font:18px Magnum,Arial,sans-serif;line-height:1.4}
.ribbon .ribbon-group i{display:block;font:23px Arial,sans-serif;color:var(--yellow);font-style:normal}
.ribbon-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid #ffffff55;border-radius:50%;background:#c7361b;color:var(--cream);font:18px Arial,sans-serif;cursor:pointer;display:grid;place-items:center}
.ribbon.paused .ribbon-track{animation-play-state:paused}
.ribbon-toggle:focus-visible{outline:3px solid var(--cream);outline-offset:2px}
@keyframes ribbon-scroll{from{transform:translateX(0)}to{transform:translateX(-25%)}}
@media(max-width:700px){.ribbon{padding:19px 0}.ribbon-group{font-size:14px;gap:24px;padding-right:24px}.ribbon .ribbon-group i{font-size:20px}.ribbon-toggle{width:34px;height:34px;font-size:15px}.ribbon-track{animation-duration:30s}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none}.ribbon-toggle{display:none}.ribbon{overflow-x:auto}.ribbon-group[aria-hidden=true]{display:none}}
