/* A compact visit page using the original Botanical Duo palette and Woodford. */
.vegan-page{--vegan-muted:#49614e;min-width:0;overflow-wrap:break-word}
.vegan-page .section-shell{max-width:1240px}
.vegan-page h1,.vegan-page h2,.vegan-page h3{text-wrap:balance}
.vegan-page p{text-wrap:pretty}
.vegan-page [id]{scroll-margin-top:28px}
.vegan-page a{touch-action:manipulation}
.vegan-page .vegan-text-link{display:inline-flex;align-items:center;gap:9px;max-width:100%;min-height:44px;padding-block:8px;font-size:15px;font-weight:700;line-height:1.5;text-underline-offset:5px}
.vegan-page .vegan-text-link>span{flex:0 0 auto}
.vegan-page .dark-button,.vegan-page .light-button{min-height:56px;max-width:100%;padding:16px 25px;font-size:16px;text-decoration:none}
.vegan-page .vegan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:24px}
.vegan-page .vegan-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vegan-page .vegan-small-note{color:var(--vegan-muted);font-size:14px;line-height:1.65}

.vegan-page .vegan-hero{padding:20px 0 58px;background:var(--paper) url('../images/botanical-duo-background-web-q85.webp') center 56%/cover no-repeat}
.vegan-page .vegan-hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:0 48px}
.vegan-page .vegan-intro{grid-column:1;grid-row:1;align-self:end;min-width:0}
.vegan-page .vegan-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:23px;color:var(--vegan-muted);font-size:12px;line-height:1.5}
.vegan-page .vegan-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.vegan-page .vegan-intro>.eyebrow{font-size:12px;letter-spacing:.06em}
.vegan-page .vegan-intro h1{margin-top:19px;font-size:clamp(43px,4.9vw,70px);line-height:1.045;letter-spacing:-.055em}
.vegan-page .vegan-hero-copy{grid-column:1;grid-row:2;align-self:start;min-width:0}
.vegan-page .vegan-lead{margin-top:24px;max-width:47ch;font-size:18px;line-height:1.65}
.vegan-page .vegan-hero-note{margin-top:15px;color:var(--vegan-muted);font-size:13px;line-height:1.6}
.vegan-page .vegan-hero-photos{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:18px;align-items:center;margin-top:40px}
.vegan-page .vegan-hero-photos figure{min-width:0}
.vegan-page .vegan-hero-photos figure+figure{padding-top:78px}
.vegan-page .vegan-hero-photos img{width:100%;height:auto;aspect-ratio:3/4.4;object-fit:cover;object-position:center 64%;border-radius:24px}
.vegan-page .vegan-hero-photos figcaption{margin-top:12px;color:var(--vegan-muted);font-size:13px;line-height:1.5;text-align:center}

.vegan-page .vegan-selection{padding-block:66px}
.vegan-page .vegan-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:28px 66px}
.vegan-page h2{margin-top:16px;font-size:clamp(36px,3.8vw,53px);line-height:1.1;letter-spacing:-.045em}
.vegan-page .vegan-section-heading>div>p:not(.eyebrow){max-width:50ch;font-size:17px;line-height:1.7}
.vegan-page .vegan-section-heading .vegan-small-note{margin-top:12px;font-size:13px}
.vegan-page .vegan-dishes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:32px}
.vegan-page .vegan-dish{min-width:0;padding:29px 28px;border:1px solid var(--line);border-radius:24px;background:var(--paper)}
.vegan-page .vegan-dish-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}
.vegan-page .vegan-dish h3{font-size:24px;line-height:1.23;letter-spacing:-.03em}
.vegan-page .vegan-price{font-size:21px;line-height:1.35;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.vegan-page .vegan-dish-subtitle{margin-top:9px;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.025em;color:var(--green)}
.vegan-page .vegan-description{margin-top:15px;font-size:16px;line-height:1.7;color:var(--vegan-muted);white-space:pre-line}
.vegan-page .vegan-labels{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px}
.vegan-page .vegan-ingredient{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:100%;font-size:13px;line-height:1.45;color:var(--vegan-muted);text-underline-offset:4px}
.vegan-page .vegan-ingredient img{flex:0 0 26px;width:26px;height:26px;object-fit:contain}
.vegan-page .vegan-diet{padding:6px 11px;border-radius:99px;background:var(--pistachio);font-size:12px;font-weight:700;line-height:1.5}
.vegan-page .vegan-option{margin-top:10px;font-size:15px;line-height:1.65}
.vegan-page .vegan-dish-note{margin-top:15px;padding-top:15px;border-top:1px solid var(--line);color:var(--vegan-muted);font-size:14px;line-height:1.65}
.vegan-page .vegan-menu-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px 35px;margin-top:23px;padding:23px 0 0}
.vegan-page .vegan-menu-note>p{max-width:64ch;color:var(--vegan-muted);font-size:14px;line-height:1.65}
.vegan-page .vegan-fallback{margin-top:26px}

.vegan-page .vegan-possible{background:var(--pistachio);padding-block:58px}
.vegan-page .vegan-possible-layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:22px 65px;max-width:1080px}
.vegan-page .vegan-possible-heading{grid-column:2;grid-row:1;align-self:end}
.vegan-page .vegan-possible-heading>p:not(.eyebrow){margin-top:19px;max-width:49ch;font-size:17px;line-height:1.7}
.vegan-page .vegan-waffle-photo{grid-column:1;grid-row:1/3;width:100%;max-width:335px;justify-self:center}
.vegan-page .vegan-waffle-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 65%;border-radius:24px}
.vegan-page .vegan-waffle-photo figcaption{margin-top:12px;font-size:12px;color:var(--vegan-muted);line-height:1.5;text-align:center}
.vegan-page .vegan-possible-dishes{grid-column:2;grid-row:2;align-self:start;min-width:0}
.vegan-page .vegan-possible-dishes .vegan-dish{padding:23px 0 0;border:0;border-top:1px solid #bccba5;border-radius:0;background:transparent}
.vegan-page .vegan-possible-dishes .vegan-diet{background:var(--paper)}
.vegan-page .vegan-drinks{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 66px;padding-block:66px;border-bottom:1px solid var(--line)}
.vegan-page .vegan-drinks-copy>p:first-child{font-size:17px;line-height:1.7}
.vegan-page .vegan-milk-list{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 0;padding:0;list-style:none}
.vegan-page .vegan-milk-list li{padding:10px 15px;border-radius:99px;background:var(--pistachio);font-size:15px;font-weight:700;line-height:1.4}
.vegan-page .vegan-milk-price{margin-top:12px;font-size:15px;font-weight:700;line-height:1.6}
.vegan-page .vegan-drinks-copy .vegan-small-note{margin-top:20px}
.vegan-page .vegan-drinks-copy .vegan-text-link{margin-top:12px}

.vegan-page .vegan-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;padding-block:64px}
.vegan-page .vegan-faq>div:first-child>p:not(.eyebrow){margin-top:21px;font-size:16px;line-height:1.65}
.vegan-page .vegan-faq>div:first-child>.vegan-text-link{margin-top:10px}
.vegan-page .faq-list p{font-size:16px;line-height:1.7}
.vegan-page .faq-list .vegan-text-link{margin-top:10px}
.vegan-page .vegan-finish{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:64px;padding-bottom:35px}
.vegan-page .vegan-reserve{padding:36px;border-radius:25px;background:var(--ink);color:var(--paper)}
.vegan-page .vegan-reserve>.eyebrow{color:var(--pistachio)}
.vegan-page .vegan-reserve h2{font-size:clamp(35px,3.6vw,49px)}
.vegan-page .vegan-reserve>p:not(.eyebrow){margin-top:23px;max-width:45ch;font-size:17px;line-height:1.7}
.vegan-page .vegan-reserve a:focus-visible{outline-color:var(--yellow)}
.vegan-page .vegan-visit{min-width:0}
.vegan-page .vegan-visit address{margin-top:19px;font-style:normal;font-size:17px;line-height:1.7}
.vegan-page .vegan-visit address strong{font-size:26px;line-height:1.3}
.vegan-page .vegan-hours{max-width:340px;margin:23px 0 18px;padding-top:17px;border-top:1px solid var(--line);font-size:16px;line-height:1.6}
.vegan-page .vegan-hours>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 18px;padding-block:4px}
.vegan-page .vegan-hours dd{margin:0;white-space:nowrap}
.vegan-page .vegan-return{padding-bottom:35px}

@media(max-width:1050px){
 .vegan-page .vegan-hero-layout{gap:0 28px}
 .vegan-page .vegan-intro h1{font-size:clamp(40px,5.1vw,59px)}
 .vegan-page .vegan-lead{font-size:17px}
 .vegan-page .vegan-section-heading,.vegan-page .vegan-drinks,.vegan-page .vegan-possible-layout,.vegan-page .vegan-faq,.vegan-page .vegan-finish{column-gap:36px}
 .vegan-page .vegan-dish{padding:25px 22px}
 .vegan-page .vegan-dish h3{font-size:22px}
 .vegan-page .vegan-reserve{padding:30px}
}
@media(max-width:760px){
 .vegan-page .vegan-hero{padding:4px 0 39px;background-position:center 35%}
 .vegan-page .vegan-hero-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:0;text-align:center}
 .vegan-page .vegan-intro{grid-column:1;grid-row:1}
 .vegan-page .vegan-breadcrumb{justify-content:center;gap:9px;margin-bottom:13px;font-size:11px}
 .vegan-page .vegan-intro>.eyebrow{font-size:11px;letter-spacing:.04em}
 .vegan-page .vegan-intro h1{font-size:clamp(37px,8.9vw,61px);margin-top:14px}
 .vegan-page .vegan-hero-photos{grid-column:1;grid-row:2;width:min(100%,460px);justify-self:center;gap:14px;margin-top:25px}
 .vegan-page .vegan-hero-photos figure+figure{padding-top:34px}
 .vegan-page .vegan-hero-photos img{aspect-ratio:3/3.7;border-radius:20px}
 .vegan-page .vegan-hero-photos figcaption{margin-top:9px;font-size:12px}
 .vegan-page .vegan-hero-copy{grid-column:1;grid-row:3}
 .vegan-page .vegan-lead{margin:24px auto 0;font-size:16px;line-height:1.65}
 .vegan-page .vegan-actions{justify-content:center;margin-top:20px}
 
 .vegan-page .vegan-hero-note{font-size:12px;margin-top:13px}
 .vegan-page .vegan-selection{padding-block:48px}
 .vegan-page .vegan-section-heading,.vegan-page .vegan-drinks,.vegan-page .vegan-faq,.vegan-page .vegan-finish{grid-template-columns:minmax(0,1fr);gap:24px}
 .vegan-page h2{font-size:clamp(34px,7.5vw,45px);margin-top:13px}
 .vegan-page .vegan-section-heading>div>p:not(.eyebrow){font-size:16px}
 .vegan-page .vegan-dishes{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:25px}
 .vegan-page .vegan-dish{padding:24px 22px;border-radius:20px}
 .vegan-page .vegan-menu-note{margin-top:14px;padding-top:16px;gap:10px}
 .vegan-page .vegan-possible{padding-block:45px}
 .vegan-page .vegan-possible-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:25px}
 .vegan-page .vegan-possible-heading{grid-column:1;grid-row:1}
 .vegan-page .vegan-possible-heading>p:not(.eyebrow){font-size:16px;margin-top:17px}
 .vegan-page .vegan-waffle-photo{grid-column:1;grid-row:2;max-width:350px}
 .vegan-page .vegan-waffle-photo img{aspect-ratio:4/3;object-position:center 67%;border-radius:20px}
 .vegan-page .vegan-possible-dishes{grid-column:1;grid-row:3}
 .vegan-page .vegan-possible-dishes .vegan-dish{padding-top:22px}
 .vegan-page .vegan-drinks{padding-block:48px}
 .vegan-page .vegan-drinks-copy>p:first-child{font-size:16px}
 .vegan-page .vegan-faq{padding-block:48px;gap:24px}
 .vegan-page .faq-list p{font-size:15px}
 .vegan-page .faq-list summary{font-size:16px}
 .vegan-page .vegan-finish{gap:33px;padding-bottom:27px}
 .vegan-page .vegan-reserve{padding:28px;border-radius:22px}
 .vegan-page .vegan-reserve h2{font-size:36px}
 .vegan-page .vegan-reserve>p:not(.eyebrow){font-size:16px;margin-top:19px}
 .vegan-page .vegan-visit{padding-inline:6px}
 .vegan-page .vegan-return{padding-bottom:27px}
}
@media(max-width:380px){
 .vegan-page .vegan-intro h1{font-size:34px}
 .vegan-page .vegan-hero-photos{gap:11px}
 .vegan-page .vegan-hero-photos figcaption{font-size:11px}
 .vegan-page .dark-button,.vegan-page .light-button{font-size:15px;padding-inline:20px}
 
 .vegan-page .vegan-dish{padding:22px 18px}
 .vegan-page .vegan-dish h3{font-size:21px}
 .vegan-page .vegan-price{font-size:19px}
 .vegan-page .vegan-description{font-size:15px}
 .vegan-page .vegan-labels{gap:8px 12px}
 .vegan-page .vegan-reserve{padding:25px 23px}
 .vegan-page .vegan-reserve h2{font-size:33px}
}

/* The existing homepage slide remains usable by tap, keyboard and without JS. */
.vegan-page .vegan-actions{flex-direction:column;align-items:flex-start;gap:4px}
.vegan-page .swipe-booking{width:344px;max-width:100%;margin:0;text-align:center}
.vegan-page .swipe-track{touch-action:pan-y}
.vegan-page .swipe-hint{margin-top:9px;font-size:12px;line-height:1.5}
.vegan-page .swipe-alternative{min-height:44px;line-height:1.5}
.vegan-page .vegan-reserve .swipe-booking{margin-top:25px}
.vegan-page .vegan-reserve .swipe-track{background:var(--pistachio);color:var(--ink)}
.vegan-page .vegan-reserve .swipe-handle{background:var(--paper)}
.vegan-page .vegan-reserve .swipe-alternative{color:var(--paper)}
@media(max-width:760px){
 .vegan-page .vegan-actions{align-items:center}
 .vegan-page .swipe-booking{width:310px}
 .vegan-page .swipe-hint{font-size:11px;margin-top:7px}
}
