/* Public heading scale: larger titles, unchanged alignment and body copy. */
html[lang] body.homePage .hero h1{font-size:clamp(52px,5.5vw,78px);line-height:1.04}
html[lang="fr"] body.homePage .hero h1{font-size:clamp(52px,5.5vw,78px)}
html[lang="en"] body.homePage .hero h1{font-size:clamp(46px,4.7vw,68px)}
.homePage .section h2,.homePage .events h2,.homePage .reviews h2,.homePage .storyCopy h2{font-size:clamp(38px,4vw,52px);line-height:1.12}
.homePage .promotions .sectionHeading h2{font-size:clamp(38px,4vw,52px)}
.homePage .card h3,.menuPage .item h3,.menuPage .recommendCard h3{font-size:32px;line-height:1.15}
.homePage .combos .combo h3,.menuPage .comboCard h3{font-size:36px;line-height:1.1}
.homePage .promoIntro h3{font-size:24px;line-height:1.2}
.homePage .drink h3{font-size:29px;line-height:1.15}
.homePage .footerGrid h3,.menuPage .menuFooterGrid h3{font-size:18px;line-height:1.3}
.menuPage .menuMain>h1{font-size:clamp(58px,7vw,88px);line-height:1.08}
.menuPage .category h2{font-size:42px;line-height:1.15}
.menuPage .sheet h2{font-size:35px;line-height:1.15}
.menuPage .cartRecommendations h3,.menuPage .recentRecommendations h3,.menuPage .checkoutSheet h3{font-size:24px;line-height:1.2}
.challengePage h1{font-size:clamp(48px,6vw,76px);line-height:1.1}
.challengePage .challengeDetail h2{font-size:clamp(32px,3.8vw,46px);line-height:1.12}
body>.wrap h1{font-size:clamp(42px,7vw,68px);line-height:1.12}
body>.wrap h2{font-size:26px;line-height:1.2}
body>main#card h1{font-size:clamp(40px,7.5vw,64px);line-height:1.1}
body>main.box h1{font-size:clamp(48px,9vw,96px);line-height:1.08}
@media(max-width:800px){
 html[lang] body.homePage .hero h1,html[lang="fr"] body.homePage .hero h1{font-size:clamp(38px,10.8vw,60px)}
 html[lang="en"] body.homePage .hero h1{font-size:clamp(34px,8.7vw,50px)}
 .homePage .section h2,.homePage .events h2,.homePage .reviews h2,.homePage .storyCopy h2,.homePage .promotions .sectionHeading h2{font-size:36px;line-height:1.14}
 .homePage .card h3,.menuPage .item h3,.menuPage .recommendCard h3{font-size:clamp(25px,6.3vw,30px);line-height:1.15}
 .homePage .cardbody{padding-inline:10px}.homePage .card h3{letter-spacing:-.035em}
 .homePage .combos .combo h3,.menuPage .comboCard h3{font-size:clamp(23px,6.5vw,30px);letter-spacing:-.04em}
 .homePage .promoIntro h3{font-size:20px}.homePage .promoIntro{min-height:102px}
 .homePage .drink h3{font-size:25px}
 .menuPage .menuMain>h1{font-size:58px}.menuPage .category h2{font-size:35px}.menuPage .sheet h2{font-size:32px}
 .challengePage h1{font-size:44px}.challengePage .challengeDetail h2{font-size:34px}
 body>.wrap h1{font-size:42px}body>.wrap h2{font-size:25px}
}
@media(min-width:801px) and (max-height:650px){
 html[lang] body.homePage .hero h1,html[lang="fr"] body.homePage .hero h1{font-size:56px}
 html[lang="en"] body.homePage .hero h1{font-size:50px}
 .homePage .events h2,.homePage .promotions .sectionHeading h2{font-size:40px}
 .homePage .promoIntro{min-height:86px}
}

.homePage .box h3{font-size:32px;line-height:1.15}
.homePage .kicker,.homePage .eyebrow,.challengePage .kicker{font-size:14px}
.menuPage .item h3{letter-spacing:-.035em}
body:not(.homePage):not(.menuPage):not(.challengePage)>main h3{font-size:26px}
@media(max-width:800px){.homePage .box h3{font-size:29px}.homePage .kicker,.homePage .eyebrow,.challengePage .kicker{font-size:12px}}
.homePage .reviews h2{font-size:60px}
.menuPage .comboCard h3{font-size:48px}
.menuPage #desserts .item h3{font-size:72px}
@media(max-width:800px){.homePage .reviews h2{font-size:40px}.menuPage .comboCard h3{font-size:clamp(23px,6.5vw,30px)}.menuPage #desserts .item h3{font-size:48px}}
@media(max-width:360px){.menuPage .dishGrid{grid-template-columns:minmax(0,1fr)}.menuPage .item h3{font-size:30px}}
@media(max-width:540px){
 .homePage .combos .combo{padding-inline:8px;min-width:0;grid-template-columns:minmax(0,1fr) auto}
 .homePage .combos .combo h3{white-space:normal}
 .homePage .combos .comboOrder{min-width:0;padding-inline:4px}
}

.secretPage h1{font-size:clamp(50px,10vw,86px)}

@media(max-width:540px){.menuPage .comboTitle{display:block;white-space:normal}.menuPage .comboTitle h3{white-space:normal}.menuPage .comboCard{min-width:0}.menuPage .comboCard h3{font-size:clamp(23px,6.5vw,30px)}}
@media(max-width:400px){.menuPage .recommendGrid{grid-template-columns:minmax(0,1fr)}}

/* Combo cards share one title line and a bottom-aligned price/action stack. */
.homePage .combos .combo{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0}
.homePage .combos .combo h3{font-size:clamp(24px,3vw,36px);white-space:nowrap;letter-spacing:-.04em;line-height:1.1;margin:0 0 14px}
.homePage .combos .combo .comboChoiceHome{margin:0 0 8px}
.homePage .combos .combo p{margin:0 0 20px}
.homePage .combos .combo .price{margin:auto 0 14px;white-space:nowrap}
.homePage .combos .combo .comboOrder{width:100%;min-width:0;margin:0;align-self:stretch}
.menuPage .comboCards .comboCard{min-width:0}
.menuPage .comboCards .comboCard .comboTitle{font-size:clamp(24px,3vw,42px);white-space:nowrap;letter-spacing:-.04em;line-height:1.1}
.menuPage .comboCards .comboBottom{margin-top:auto;align-items:stretch}
.menuPage .comboCards .comboBottom .price{white-space:nowrap}
@media(max-width:540px){
 .homePage .combos .combo h3,.menuPage .comboCards .comboCard .comboTitle{font-size:clamp(15px,4.7vw,25px)}
 .homePage .combos .combo .comboOrder{font-size:10px;padding-inline:3px}
 .menuPage .comboCards .comboBottom{flex-direction:column}
 .menuPage .comboCards .comboBottom .addBtn{width:100%;min-width:0}
}
