/* Larger, readable website text. Voucher artwork keeps its approved proportions. */
body{font-size:18px}
body main :is(p,li,summary,td,th){font-size:18px!important;line-height:1.75}
body :is(.section-intro,.about-copy p,.about-full p,.story-copy,.recipe-section p,.recipe-section li){font-size:18px!important}
body :is(.button,.navcta,.links a,.recipe-back,.recipe-category-nav a,.text-link,.pathway-action,.compact-shortcut){font-size:16px!important;line-height:1.5;white-space:normal}
body :is(.kicker,.eyebrow,.hero-note,.offer-foot,.loyalty-note,figcaption,.recipe-meta,.offer-tag,.pill){font-size:15px!important}
body :is(.price-row,.reward-row,.event-day strong,.event-day span){font-size:18px!important}
body .brand-tagline{font-size:16px!important;white-space:normal;line-height:1.5}
body .lang{font-size:16px!important;min-height:44px}
body :is(.footer,.footer-identity span,.footer-navigation .text-link,.footer-social .text-link,.hero-caption small){font-size:15px!important}
body .footer-identity strong{font-size:20px}
body .voucher-order .vo-grid label{font-size:17px;line-height:1.5;min-width:0}
body .voucher-order :is(input,select,textarea){font-size:17px;line-height:1.5;min-width:0}
body .voucher-order .vo-note{font-size:16px!important}
body .voucher-order .vo-total{font-size:18px!important}
body main h1{font-size:clamp(38px,5.4vw,80px)!important}
body main h2{font-size:clamp(34px,4vw,54px)!important}
body main h3{font-size:clamp(28px,3vw,38px)!important}
body main h4{font-size:26px}
/* The preview is a scale representation of the printable PDF. */
body .vo-digital-preview h4{font-size:4.2cqw!important}
@media(min-width:961px){
 body.site-multipage .navinner{grid-template-columns:minmax(0,1fr) auto}
 body.site-multipage .brand{grid-column:1;grid-row:1}
 body.site-multipage .navright{grid-column:2;grid-row:1}
 body.site-multipage .links{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
}
@media(max-width:600px){
 body .brand-tagline{font-size:14px!important;max-width:100%;overflow-wrap:normal}
 body .voucher-order{padding:20px 16px}
 body .voucher-order .vo-grid{grid-template-columns:minmax(0,1fr)}
 body .footer-navigation{flex-wrap:wrap}
}

/* Silent monochrome treatment footage, confined to the header. */
html body header.nav.has-massage-video{isolation:isolate;background:#fff!important}
.nav-video-background{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.nav-video-background video{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:grayscale(1)}
.nav-video-background:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(255,255,255,.84),rgba(255,255,255,.65),rgba(255,255,255,.8))}
header.has-massage-video .navinner{position:relative}
@media(max-width:600px){.nav-video-background video{object-position:center 40%}.nav-video-background:after{background:rgba(255,255,255,.75)}}

body main small{font-size:15px!important;line-height:1.6}

/* The same native form and focus colours on every device. */
:root{accent-color:#385B4F;color-scheme:only light}
body :is(input,select,textarea,button){accent-color:#385B4F;caret-color:#203721}
body :is(input,select,textarea,button,a):focus-visible{outline:3px solid #385B4F;outline-offset:3px}
body input:-webkit-autofill,body textarea:-webkit-autofill{-webkit-text-fill-color:#203721;box-shadow:0 0 0 1000px #FFFFFF inset}
body a{color:inherit}
