/* One uninterrupted canvas: flowing copy, floating drink, and a quiet booking landing. */
.seamless-main{background:radial-gradient(ellipse at 76% 12%,#3d102322,transparent 35%),radial-gradient(ellipse at 15% 88%,#4b102021,transparent 29%),var(--ink)}
.flow-story{display:block;gap:0;isolation:isolate;overflow:clip}
.pour-column{position:absolute;inset:0;z-index:2;width:100%;padding:0;border:0;pointer-events:none;background:none}
.pour-sticky{width:46%;margin-left:52%;overflow:visible;background:none}
.pour-sticky .stage-controls{pointer-events:auto}
.pour-art{width:min(100%,52svh,490px)}
.pour-art .cup-stack{transform:scale(1.4);transform-origin:center}
.pour-art .halo{inset:-3% -17% -2%;border:0;background:radial-gradient(ellipse,#8c17482b,transparent 65%)}
.pour-art .halo:after{border:0;background:none}
.pour-kicker{font-size:10px;letter-spacing:.25em;color:#d691ad}
.pour-caption{margin-top:-4px}.pour-caption strong{font-size:clamp(23px,2vw,31px)}
.flow-chapters{width:100%;position:relative;z-index:1}
.flow-chapter{position:relative;min-height:88svh;border:0;padding:90px 0}
.flow-chapter>div{position:relative;z-index:3;width:51%;max-width:640px}
.chapter-echo{position:absolute;z-index:0;left:26%;top:24%;font:clamp(135px,22vw,355px)/.8 var(--display);letter-spacing:-.04em;color:var(--paper);opacity:.035;pointer-events:none;user-select:none;white-space:nowrap}
.flow-chapter:nth-child(even) .chapter-echo{top:32%;left:20%;color:var(--pink);opacity:.085}
.flow-chapter:nth-child(3)>div{padding-left:4%}.flow-chapter:nth-child(4)>div{padding-left:7%}.flow-chapter:nth-child(5)>div{padding-left:2%}
.intro-chapter{min-height:calc(100svh - 88px);padding:45px 0 65px}
.intro-chapter .chapter-echo{left:19%;top:31%;font-size:clamp(160px,27vw,420px);opacity:.038}
.flow-chapter h1{font-size:clamp(75px,7.1vw,126px)}
.flow-chapter h2{font-size:clamp(60px,5.4vw,93px)}
.chapter-copy{max-width:440px}.secondary-copy{max-width:420px}
.flow-chapter .occasion{border:0;padding:13px 0}.flow-chapter .occasion:first-of-type{margin-top:26px}
.chapter-tags span{border:0;background:none;padding:0}.chapter-tags{gap:21px}
.flow-chapter .package-list a{border-color:#63304445}
.final-chapter{min-height:76svh;padding-bottom:60px}.final-chapter .chapter-echo{top:35%;left:15%}
.booking{position:relative;z-index:3;background:none;border:0;padding-top:70px;gap:8%;grid-template-columns:1fr 1.06fr}
.booking-intro{position:relative;top:auto;align-self:start}
.booking-intro h2{font-size:clamp(65px,5.2vw,86px)}
.booking-intro .eyebrow{font-size:10px;letter-spacing:.14em}
.booking-intro>p:not(.eyebrow){font-size:16px;max-width:370px;margin-top:23px}
.booking-expectation{margin-top:25px;gap:12px 15px}
.booking-card{background:#121013b3;backdrop-filter:blur(12px);border-color:#63304460;border-top:2px solid var(--pink);align-self:start}
.booking-drink{position:relative;width:min(100%,42svh,380px);aspect-ratio:1;margin:16px auto -20px;pointer-events:none}
.booking-drink .cup-frame{opacity:0;transform:scale(1.2)!important;transform-origin:center;background-image:url('assets/soda-draining-stages.png');mask-image:linear-gradient(#000 0%,#000 92%,transparent 97%);will-change:opacity}
.booking-drink .cup-frame:first-child{opacity:1}
.drain-frame-0{background-position:0 0}.drain-frame-1{background-position:48% 0}.drain-frame-2{background-position:100% 0}
.drain-frame-3{background-position:0 95.3125%}.drain-frame-4{background-position:48% 95.3125%}.drain-frame-5{background-position:100% 95.3125%}
.booking-drink .drain-frame-5{background-image:url('assets/soda-last-sip-cherry-bottom.png')}
.booking.arrived .booking-intro{animation:none}.booking.arrived .booking-drink{animation:drink-settle .8s ease-out both}
@keyframes drink-settle{from{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.pour-sticky{width:43%;margin-left:53%}.pour-art{width:min(100%,53svh,540px)}}
@media(max-width:1050px){.flow-story{padding:0 5%}.pour-column{padding:0}.flow-chapter>div{width:52%}.pour-sticky{width:46%;margin-left:52%}.flow-chapter h1{font-size:82px}.flow-chapter h2{font-size:63px}.pour-art{width:min(100%,48svh,430px)}.flow-chapter:nth-child(n)>div{padding-left:0}.chapter-copy{font-size:16px;max-width:380px}.booking{gap:6%}.booking-intro h2{font-size:68px}}
@media(max-height:700px) and (min-width:761px){.pour-art{width:min(100%,46svh,430px)}.pour-caption{min-height:66px}.intro-chapter h1{font-size:75px}}
@media(max-width:760px){
 .flow-story{display:flex;padding:0;isolation:auto;overflow:clip}
 .pour-column{position:sticky;inset:auto;top:73px;z-index:10;border:0;width:100%;background:linear-gradient(180deg,#0a0a0a 0%,#0a0a0afa 83%,#0a0a0a00 100%);padding-bottom:14px;margin-bottom:-14px}
 .pour-sticky{width:100%;margin:0;height:32svh;max-height:290px;min-height:190px;padding:8px 6% 20px;overflow:hidden}
 .pour-art{width:min(30svh,100%)}.pour-art .halo{inset:0 -10%}
 .pour-caption{margin:0;max-width:100%}.pour-caption strong{font-size:26px}.pour-kicker{display:none}
 .flow-chapters{padding:0 6%;z-index:1}.flow-chapter{min-height:70svh;padding:50px 0}.flow-chapter>div{width:100%;max-width:none}
 .intro-chapter{min-height:calc(68svh - 100px);padding:30px 0 50px}.flow-chapter h1{font-size:clamp(65px,13.8vw,91px)}.flow-chapter h2{font-size:clamp(51px,11.5vw,75px)}
 .chapter-echo,.flow-chapter:nth-child(even) .chapter-echo{left:6%;top:32%;font-size:40vw;opacity:.035}.intro-chapter .chapter-echo{font-size:54vw;left:0;top:39%}
 .flow-chapter:nth-child(n)>div{padding-left:0}.chapter-copy{max-width:460px}.final-chapter{min-height:64svh}
 .booking{grid-template-columns:1fr;gap:24px;padding-top:40px}.booking-intro h2{font-size:65px}.booking-drink{width:min(47vw,240px);margin:10px 0 -12px auto}.booking-card{backdrop-filter:none;background:#121013b3}.booking-intro>p:not(.eyebrow){font-size:16px}
}
@media(max-width:380px){.pour-caption strong{font-size:23px}.booking-intro h2{font-size:60px}}
@media(prefers-reduced-motion:reduce){.booking.arrived .booking-drink{animation:none}}
/* Match Option 1's desktop cup dimensions directly, independent of viewport height. */
@media(min-width:761px){
 .pour-art{width:min(48.862745vw,670px)}
 .pour-art .cup-stack{transform:translateY(45px)}
}
@media(min-width:1600px){.pour-art{width:min(46.117647vw,670px)}}
@media(min-width:761px) and (max-width:1100px){.pour-art{width:min(55.147059vw,670px)}}
@media(min-width:761px) and (max-height:720px){.pour-art{width:min(43.627451vw,670px)}}
@media(min-width:761px) and (max-width:1100px) and (max-height:720px){.pour-art{width:min(44.117647vw,670px)}}
@media(min-width:1600px) and (max-height:720px){.pour-art{width:min(41.176471vw,670px)}}

/* Signature menu shares the continuous page canvas with the floating cup. */
.signature-chapter .chapter-copy{font-size:16px;margin-top:23px}
.signature-chapter h2{font-size:clamp(48px,4.5vw,78px)}
.favorites-key{font-size:14px;color:var(--muted);margin:25px 0 5px}.favorites-key span{color:var(--pink);margin-right:6px}
.signature-menu,.menu-extras{list-style:none;padding:0;margin:0;display:grid;gap:0 26px}
.signature-drink{padding:19px 0;border-bottom:1px solid #63304445;min-width:0}
.drink-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.drink-heading h3{font:19px/1.45 var(--marker);color:var(--pink)}.favorite-star{font:16px var(--body);vertical-align:middle}
.drink-price{font:800 17px var(--body);white-space:nowrap;color:var(--paper)}
.signature-drink p,.lemonade-menu>p:not(.eyebrow),.menu-extras p{font-size:16px;line-height:1.65;color:var(--muted);margin-top:8px}
.lemonade-menu{margin-top:34px}.lemonade-menu .eyebrow{margin-bottom:10px;font-size:14px;letter-spacing:.12em}.lemonade-menu h3{font:30px var(--display)}
.menu-extras{margin-top:20px}.menu-extras li{padding:14px 0}.menu-extras li>div{display:flex;gap:12px;align-items:baseline}.menu-extras h3{font:25px var(--display)}.menu-extras li>div>span{font-size:16px;font-weight:800;color:var(--pink)}.menu-extras p{margin-top:3px}
.menu-footnote{font-size:14px;line-height:1.7;color:var(--muted);margin-top:22px;max-width:460px}
@media(min-width:1200px){.signature-menu{grid-template-columns:1fr 1fr}.signature-drink:last-child{grid-column:1/-1;max-width:440px}}
@media(max-width:760px){.signature-chapter h2{font-size:clamp(45px,10.5vw,72px)}.signature-chapter .chapter-copy{max-width:460px}.signature-drink{padding:18px 0}.drink-heading h3{font-size:20px}}

/* Package details stay on the continuous canvas beside the drink. */
.event-packages{display:grid;gap:30px 26px;margin-top:34px}
.event-package{min-width:0;border-top:1px solid #63304480;padding-top:21px;display:flex;flex-direction:column;align-items:flex-start}
.event-package h3,.package-addons h3{font:23px/1.4 var(--marker);color:var(--pink)}
.event-package>p:not(.package-badge),.package-addons>p{font-size:16px;line-height:1.65;color:var(--muted);margin-top:10px}
.event-package ul{padding-left:19px;margin:17px 0 22px;font-size:16px;line-height:1.6;color:var(--paper)}
.event-package li{padding:4px 0}.event-package li::marker{color:var(--pink)}
.package-badge{font-size:14px;line-height:1.4;font-weight:800;color:var(--pink);margin-bottom:12px}
.popular-package{border-top:2px solid var(--pink)}
.package-quote{font-size:16px;font-weight:800;display:inline-flex;align-items:center;gap:20px;min-height:44px;margin-top:auto;text-decoration:underline;text-underline-offset:5px}
.package-quote:hover{color:var(--pink)}.package-quote:focus-visible{outline:2px solid var(--pink);outline-offset:5px}
.package-addons{margin-top:40px;border-top:1px solid #63304480;padding-top:25px}
.package-addons ul{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;font-size:16px;line-height:1.5}
.package-addons li{border-left:2px solid var(--pink);padding-left:12px}
.package-terms{font-size:14px;color:var(--muted);line-height:1.7;margin-top:26px}
@media(min-width:1200px){.event-packages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.package-addons ul{grid-template-columns:1fr}}

/* A companion cup stays beside the form while visitors share their details. */
.booking{grid-template-areas:"intro form" "cup form";grid-template-rows:auto 1fr;row-gap:0}
.booking-intro{grid-area:intro}.booking-card{grid-area:form}
.booking-cup{grid-area:cup;position:sticky;top:115px;align-self:start;padding-bottom:16px}
.booking-sip-note{font-size:14px;line-height:1.5;text-align:center;color:var(--muted);position:relative;margin-top:14px}
@media(max-width:760px){
 .booking{display:block}.booking-intro{margin-bottom:24px}.booking-card{margin-top:24px}
 .booking-cup{top:73px;z-index:12;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 12px;background:linear-gradient(#0a0a0afa 86%,#0a0a0a00);margin:0 -12px}
 .booking-cup .booking-drink{width:100px;flex:0 0 100px;margin:0}
 .booking-sip-note{text-align:left;margin:0;max-width:180px;font-size:14px}
 .booking-card input,.booking-card select,.booking-card textarea{scroll-margin-top:210px}
}
