/* v2 targeted changes on top of the live site's style.css */
.brand_mark{height:2.5rem}
/* Header: Request a Quote always visible on phone */
.header__cta{display:inline-flex}
@media (max-width:61.99rem){.header__cta{min-height:2.5rem;padding:.5rem 1rem;font-size:.875rem}.header__inner{gap:var(--space-3)}}
@media (max-width:22rem){.brand_mark{height:2.1rem}.header__cta{padding:.5rem .8rem}}
.hero__sub{margin-top:var(--space-4);font-size:var(--text-base);font-weight:500;color:var(--color-text);max-width:40ch}
.hero__lede{margin-top:var(--space-4)}
/* What we do: compact grid, no carousel */
.events--compact{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}
.events--compact .event-card{padding:var(--space-4);gap:var(--space-2);box-shadow:none}
.events--compact .event-card h3{font-size:1.0625rem}
.events--compact .event-card p{font-size:.875rem;line-height:1.45}
@media (min-width:62rem){.events--compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.events--compact .event-card{padding:var(--space-5) var(--space-6)}.events--compact .event-card h3{font-size:var(--text-lg)}}
.events--compact > li{display:flex;min-width:0}
.events--compact .event-card{flex:1;width:100%}
.events--compact .event-card--link{color:inherit;text-decoration:none;transition:border-color 200ms var(--ease-out),background-color 200ms var(--ease-out)}
.events--compact .event-card h3{text-decoration:none}
.events--compact .event-card__more{margin-top:auto;color:var(--color-primary);font-size:.8125rem;font-weight:500;letter-spacing:.01em;line-height:1.3}
.events--compact .event-card__more span{display:inline-block;transition:transform 200ms var(--ease-out)}
.events--compact .event-card--link:hover,.events--compact .event-card--link:focus-visible{border-color:var(--color-primary);background:var(--color-surface-2)}
.events--compact .event-card--link:hover .event-card__more span,.events--compact .event-card--link:focus-visible .event-card__more span{transform:translateX(3px)}
@media (prefers-reduced-motion:reduce){
  .events--compact .event-card--link,
  .events--compact .event-card__more span{transition:none}
  .events--compact .event-card--link:hover .event-card__more span,
  .events--compact .event-card--link:focus-visible .event-card__more span{transform:none}
}
/* Why book us: image beside a 2x2 list on desktop */
.exp--v2 .section__head{margin-bottom:var(--space-8)}
@media (min-width:62rem){
  .exp--v2{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:center}
  .exp--v2 .exp__figure{position:static}
  .exp--v2 .exp__figure img{aspect-ratio:4/5}
  .exp--v2 .exp__list{grid-template-columns:1fr 1fr;gap:var(--space-8) var(--space-10)}
  .exp--v2 .exp__list li,.exp--v2 .exp__list li:last-child{padding:var(--space-5) 0 0;border-bottom:0;border-top:1px solid var(--color-espresso-border)}
}
@media (max-width:61.99rem){
  .exp--v2{gap:var(--space-6)}
  .exp--v2 .exp__figure img{aspect-ratio:16/10}
  .exp--v2 .exp__list{gap:var(--space-5)}
  .exp--v2 .exp__list li{padding-bottom:var(--space-5);gap:var(--space-2)}
  .exp--v2 .exp__list h3{font-size:1.125rem}
}
/* Packages: starting price; stack compact on phone instead of carousel */
.pkg-from{margin-top:var(--space-4);font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-text)}
@media (max-width:55.99rem){
  .packages{grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;padding-inline:0;scroll-snap-type:none}
  .pkg__facts li{grid-template-columns:6rem minmax(0,1fr);gap:var(--space-2)}
  .pkg__facts .k{padding-top:.15rem}
}
@media (min-width:62rem){.pkg{padding:var(--space-6)}.pkg__facts{margin:var(--space-5) 0;padding-top:var(--space-5)}}
/* Quote iframe */
.quote__frame{display:block;width:100%;height:760px;border:0;background:transparent}
/* Service area at the end */
.area{border-top:1px solid var(--color-divider)}
.area__head{margin-bottom:0;align-items:center}
.towns{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}
.towns li{padding:.35rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);font-size:var(--text-sm);max-width:none}
.area__fee{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}
.header__cta{white-space:nowrap}
/* One quote button in the mobile header. The hero button returns on desktop. */
@media (max-width:61.99rem){.hero__actions .btn--primary{display:none}}
/* ---- Menu page ---- */
/* Base drinks lineup blends into the page: no frame, card bg or shadow */
.menu-section--base{background:var(--color-surface-offset)}
.menu-hero-image{margin:0 auto var(--space-10);border:0;background:none;box-shadow:none;padding:0}
.menu-hero-image img{width:100%;height:auto;border:0;border-radius:0;box-shadow:none;background:none}
.menu-section--base .menu-item{background:var(--color-surface)}
/* Specialty grid: balanced columns from item count (JS sets --cols); phone 2 columns */
.spec-grid{display:grid!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;overflow:visible!important;padding:0!important;scroll-snap-type:none!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
@media (min-width:62rem){.spec-grid{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:var(--space-5)}}
.spec-grid[data-count="6"]{max-width:60rem;margin-inline:auto}
@media (max-width:61.99rem){.spec-grid .menu-card__body{padding:var(--space-3);gap:var(--space-2)}.spec-grid .menu-item__name{font-size:1.0625rem}.spec-grid .menu-item__desc{font-size:.8125rem;line-height:1.45}.spec-grid .menu-item__tag{font-size:.6875rem;padding:.15rem .45rem}}
.menu-two{display:grid;gap:var(--space-10)}
@media (min-width:62rem){.menu-two{grid-template-columns:1fr 1fr;gap:var(--space-16)}.menu-two .menu-options div{grid-template-columns:1fr;gap:var(--space-1)}}
.menu-two .menu-note{margin-top:var(--space-6)}
.menu-cta{text-align:center}.menu-cta .section-title{margin-inline:auto}.menu-cta p{margin-inline:auto;color:var(--color-text-muted)}
/* ---- Desktop-only tightening (phone untouched) ---- */
@media (min-width:62rem){
  .hero{padding-block:var(--space-12) 0}
  .hero__figure img{aspect-ratio:5/4}
  .trust{margin-top:var(--space-10)}
  .trust__inner{padding-block:var(--space-4)}
  .section{padding-block:var(--space-16)}
  .section--tight{padding-block:var(--space-12)}
  .section__head{margin-bottom:var(--space-8)}
  #how .rule{display:none}
  .steps{gap:var(--space-8)}
  .gallery{columns:6;column-gap:var(--space-3)}
  .gallery figure{margin-bottom:0}
  .faq-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr);gap:var(--space-16);align-items:start}
  #faq .shell--narrow{max-width:var(--content-wide)}
  #faq .faq{grid-template-columns:1fr 1fr;column-gap:var(--space-8);border-top:0}
  #faq .faq details{border-top:1px solid var(--color-divider);border-bottom:0}
  #faq .faq summary{padding-block:var(--space-4);font-size:var(--text-sm)}
  .quote__frame{height:640px}
  .area{padding-block:var(--space-10)}
}
@media (min-width:72rem){.steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:62rem) and (max-width:71.99rem){.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-6)}}
/* ---- Nav + footer feel (inspired by drinkkilo.com; Slowleaf styling) ---- */
html{scroll-behavior:smooth}
.header{transition:background 300ms var(--ease-out),border-color 300ms var(--ease-out),box-shadow 300ms var(--ease-out),margin 300ms var(--ease-out),border-radius 300ms var(--ease-out),top 300ms var(--ease-out)}
.header:not(.is-floating){background:transparent;backdrop-filter:none;border-bottom-color:transparent}
.header.is-floating{top:.75rem;margin-inline:clamp(.5rem,2vw,1.25rem);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:color-mix(in oklab,var(--color-surface-2) 78%,transparent);backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);box-shadow:var(--shadow-md)}
.header.is-floating .header__inner{min-height:3.5rem}
.header.is-floating .brand_mark{height:2.1rem}
.header .mobile-menu{border-radius:0 0 var(--radius-xl) var(--radius-xl)}
.nav a{position:relative}
.nav a::after{content:'';position:absolute;left:0;bottom:.3rem;width:0;height:1px;background:currentColor;transition:width 300ms var(--ease-out)}
.nav a:hover::after,.nav a:focus-visible::after{width:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.header,.nav a::after{transition:none}}
/* Footer: centered, stacked like Kilo, richer content */
.footer--v2{text-align:center;padding-block:var(--space-12) var(--space-8)}
.footer__logo{display:inline-block;border:0!important}
.footer__logo img{height:2.75rem;width:auto;margin-inline:auto;filter:brightness(0) invert(.93);opacity:.9}
.footer__tag{margin:var(--space-3) auto 0;font-family:var(--font-display);font-size:var(--text-base)!important;color:var(--color-espresso-text)!important;max-width:none}
.footer__rule{max-width:40rem;margin:var(--space-6) auto;border:0;border-top:1px solid var(--color-espresso-border)}
.footer__links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3) var(--space-8)}
.footer__links a{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--color-espresso-muted)!important;padding-block:var(--space-2)}
.footer__links a:hover{color:var(--color-espresso-text)!important}
.footer__contact{margin:var(--space-5) auto 0;display:flex;justify-content:center;gap:var(--space-3);max-width:none}
.footer__contact a{color:var(--color-espresso-text)}
.footer__area{margin:var(--space-3) auto 0;max-width:none!important}
.footer--v2 .footer__base{justify-content:center;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-8)}
@media (max-width:47.99rem){.footer__links{gap:var(--space-1) var(--space-5)}.footer__area{font-size:var(--text-xs)!important}}
/* ---- Menu drink cards (photo, name, one line, expandable Details) ---- */
.dgrid{display:grid;gap:var(--space-4);grid-template-columns:1fr;list-style:none;margin:0 auto}
@media (min-width:40rem) and (max-width:61.99rem){.dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:62rem){.dgrid{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:var(--space-5)}.dgrid[data-count="6"],.dgrid[data-count="9"]{max-width:64rem}}
.dcard{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);max-width:none}
.dcard__media{aspect-ratio:4/3;overflow:hidden;background:var(--color-surface-offset)}
.dcard__media img{width:100%;height:100%;object-fit:cover}
.dcard__media--ph{display:grid;place-content:center;justify-items:center;gap:var(--space-2);background:var(--color-surface-offset);color:var(--color-text-faint)}
.dcard__media--ph svg{width:2.75rem;height:2.75rem;opacity:.7}
.dcard__media--ph span{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase}
.dcard__body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5) var(--space-5) var(--space-3);flex:1}
.dcard__line{font-size:var(--text-sm);color:var(--color-text-muted)}
.dcard__details{margin-top:auto;border-top:1px solid var(--color-divider)}
.dcard__details summary{display:flex;justify-content:space-between;align-items:center;min-height:2.75rem;cursor:pointer;list-style:none;font-size:var(--text-xs);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}
.dcard__details summary::-webkit-details-marker{display:none}
.dcard__details summary:hover{color:var(--color-text)}
.dcard__details .plus{position:relative;width:.75rem;height:.75rem}
.dcard__details .plus::before,.dcard__details .plus::after{content:'';position:absolute;background:currentColor;inset:50% 0 auto 0;height:1px}
.dcard__details .plus::after{inset:0 auto 0 50%;width:1px;height:100%;transition:transform 240ms var(--ease-out)}
.dcard__details[open] .plus::after{transform:scaleY(0)}
.dcard__more{display:grid;gap:var(--space-2);padding-bottom:var(--space-3)}
.dcard__k{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-faint)}
.dcard__ing{display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:var(--text-sm)}
.dcard__ing li{max-width:none}
.dcard__ing li+li::before{content:'·';margin-right:.9rem;margin-left:-.25rem;color:var(--color-text-faint)}
.dcard .menu-item__tags{justify-content:flex-start;margin-top:0}
.menu-section--base .menu-hero-image{max-width:60rem}
.dcard--text .dcard__body{padding-top:var(--space-5)}
.dgrid{align-items:start}
.dcard__ing{display:block}.dcard__ing li{display:inline}
.dcard__ing li+li::before{content:', ';margin:0;color:inherit}
