/* v1.0.25 customer correction. Preserve prior colors, display hierarchy and theme assets. */
.hs16-plan-crown.hs24-home-pro,
.hs24-badge-pro,
.hsb-plan-wrap .hs24-pro-flag{
 width:62px!important;min-width:0!important;max-width:62px!important;
 height:49px!important;min-height:0!important;border:0!important;
 background:transparent!important;box-shadow:none!important;
 padding:0!important;overflow:visible!important;
 display:inline-flex!important;justify-content:center!important;align-items:center!important;
 animation:none!important;pointer-events:none
}
.hs16-plan-crown.hs24-home-pro svg,
.hs24-badge-pro svg,
.hsb-plan-wrap .hs24-pro-flag svg{width:57px!important;height:50px!important;overflow:visible!important}
.hs16-plan-crown.hs24-home-pro .hsb-crown-fire,
.hs24-badge-pro .hsb-crown-fire,
.hsb-plan-wrap .hs24-pro-flag .hsb-crown-fire{animation:hs24-flame-dance .85s ease-in-out infinite alternate!important}
.hs16-plan-crown.hs24-home-pro,.hs24-badge-pro,.hsb-plan-wrap .hs24-pro-flag{filter:drop-shadow(0 0 5px #ffc84d7a)!important}
.hs16-plan-crown.hs24-home-pro{margin-left:auto;align-self:center;flex:none}
.hs24-package-top{flex-wrap:nowrap!important;align-items:flex-start!important}
.hs24-package-badge.hs24-badge-pro{flex:0 0 62px!important}
/* Use a uniform card grid on phone and desktop; each row has a consistent baseline. */
body.hs-booking-page .hsb-plan-rail{
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:10px!important;overflow:visible!important;scroll-snap-type:none!important;
 padding:7px 0!important;align-items:stretch!important
}
body.hs-booking-page .hsb-plan-wrap{min-width:0!important;max-width:none!important;width:auto!important;flex:none!important;padding-top:0!important;display:flex!important}
body.hs-booking-page .hsb-plan-wrap .hsb-plan{
 display:grid!important;grid-template-columns:minmax(0,1fr) 17px!important;
 grid-template-rows:minmax(36px,auto) 32px 28px minmax(32px,auto) 17px!important;
 row-gap:7px!important;column-gap:3px!important;align-content:stretch!important;
 height:100%!important;width:100%!important;min-height:211px!important;
 padding:53px 12px 12px!important;box-sizing:border-box!important;overflow:hidden!important
}
body.hs-booking-page .hsb-plan-name{grid-column:1 / -1;grid-row:1!important;font-size:clamp(12px,1.3vw,17px)!important;line-height:1.24!important;letter-spacing:-.025em!important;align-self:start!important;text-transform:none!important;margin:0!important;min-height:0!important;overflow-wrap:normal!important;word-break:normal!important}
body.hs-booking-page .hsb-plan-price-row{grid-column:1 / -1;grid-row:2!important;align-self:center!important;justify-self:start!important;min-height:0!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;align-items:baseline!important;gap:6px!important}
body.hs-booking-page .hsb-plan-price-row strong{font-size:clamp(20px,2vw,28px)!important;line-height:1!important}
body.hs-booking-page .hsb-plan-price-row del{font-size:11px!important;font-weight:600!important;white-space:nowrap!important}
body.hs-booking-page .hsb-shots{grid-column:1 / -1;grid-row:3!important;align-self:start!important;margin:0!important;padding:5px 7px!important;font-size:10px!important;line-height:1.1!important}
body.hs-booking-page .hsb-plan-copy{grid-column:1 / -1;grid-row:4!important;margin:0!important;align-self:start!important;overflow:hidden!important}
body.hs-booking-page .hsb-plan-copy b{font-size:11px!important;line-height:1.35!important;font-weight:700!important}
body.hs-booking-page .hsb-plan-copy small{display:none!important}
body.hs-booking-page .hsb-check{grid-column:2;grid-row:5;position:static!important;align-self:end!important;justify-self:end!important;margin:0!important;width:17px!important;height:17px!important}
body.hs-booking-page .hsb-plan-wrap .hsb-popular{position:absolute!important;z-index:5!important;top:7px!important;left:auto!important;right:7px!important;transform:none!important;max-width:calc(100% - 10px)!important;line-height:1.1!important}
body.hs-booking-page .hsb-plan-wrap .hs24-pro-flag{top:0!important;right:3px!important;width:51px!important;height:47px!important;min-height:0!important;max-width:51px!important}
body.hs-booking-page .hsb-plan-wrap .hs24-pro-flag .hs24-fire-mark{width:49px!important;height:47px!important}
body.hs-booking-page .hsb-plan-wrap .hs24-pro-flag svg{width:49px!important;height:47px!important}
body.hs-booking-page .hsb-plan-mobile-cue{display:none!important}
/* First-screen plan, calendar and slots grouped together. No reserved blank carousel canvas. */
body.hs-booking-page .hs25-schedule-stage{display:grid;gap:12px;align-content:start;min-width:0}
body.hs-booking-page .hs25-details-stage{display:grid;gap:12px;min-width:0}
body.hs-booking-page [hidden]{display:none!important}
body.hs-booking-page .hsb-duo:has(.hs24-date-section){grid-template-columns:1fr!important;gap:12px!important}
body.hs-booking-page .hs24-date-section{padding:14px!important}
body.hs-booking-page .hs24-calendar{margin:7px auto!important;max-width:520px!important}
body.hs-booking-page .hsb-section:has(> #hs-slots){background:linear-gradient(120deg,#27252d,#201e26)!important;border-color:#514953!important}
.hs25-timezone{font-size:11px!important;color:#c9c7d1!important;line-height:1.5;margin:6px 0 0}
.hs25-next-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #714457;border-radius:13px;background:linear-gradient(110deg,#38252f,#25252e);padding:14px 18px}
.hs25-next-row>div{display:grid;gap:4px}.hs25-next-row strong{font-size:15px;color:#fff}.hs25-next-row small{font-size:12px;color:#bfbac6;line-height:1.45}
.hs25-next{display:inline-flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;min-height:48px;padding:0 19px;color:#fff;background:#d42b4d;border:1px solid #fa7b97;border-radius:10px;font-size:13px;font-weight:900;cursor:pointer}
.hs25-step-message:empty{display:none!important}.hs25-step-message{padding:12px;border-radius:9px;background:#4a1d30;color:#ffe4e8;font-size:13px}
.hs25-details-title{padding:20px 20px 16px;border:1px solid #645766;border-radius:14px;background:linear-gradient(110deg,#2f2937,#211e27)}
.hs25-details-title h2{margin:8px 0 8px!important;font-size:22px!important}.hs25-details-title>p:last-child{font-size:13px;color:#cdc8d0;line-height:1.5}
.hs25-back{border:0;background:transparent;color:#ffacbb;text-decoration:underline;text-underline-offset:3px;font-size:13px;min-height:36px;cursor:pointer;padding:0;font-weight:750}
.hs25-guest-note{padding:16px;border:1px solid #7c5e6b;border-radius:12px;background:#332830}.hs25-guest-note strong{color:#fff;font-size:16px}.hs25-guest-note p{margin:7px 0 0;font-size:12px;line-height:1.6;color:#ded6dc}
.hsb-progress [aria-current="step"]{color:#fff;font-weight:900}
@media(max-width:1100px){
 body.hs-booking-page .hsb-plan-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 body.hs-booking-page .hsb-plan-wrap .hsb-plan{min-height:175px!important;padding:37px 9px 9px!important;grid-template-rows:28px 29px 25px 28px 17px!important;row-gap:4px!important}
 body.hs-booking-page .hsb-plan-name{font-size:13px!important}
 body.hs-booking-page .hsb-plan-price-row strong{font-size:21px!important}
 body.hs-booking-page .hsb-plan-copy b{font-size:10px!important}
 body.hs-booking-page .hsb-plan-wrap .hs24-pro-flag{top:-4px!important}
 body.hs-booking-page .hsb-plan-wrap .hsb-popular:not(.hs24-pro-flag){font-size:8px!important;top:6px!important;padding:4px 5px!important}
 .hs25-next-row{display:none}
}
@media(max-width:365px){
 body.hs-booking-page .hsb-plan-wrap .hsb-plan{padding:35px 7px 8px!important;min-height:171px!important}
 body.hs-booking-page .hsb-plan-name{font-size:12px!important}
 body.hs-booking-page .hsb-plan-price-row strong{font-size:19px!important}
 body.hs-booking-page .hsb-plan-price-row del{font-size:9px!important}
}
@media(prefers-reduced-motion:reduce){
 .hs16-plan-crown.hs24-home-pro .hsb-crown-fire,.hs24-badge-pro .hsb-crown-fire,.hsb-plan-wrap .hs24-pro-flag .hsb-crown-fire{animation:none!important}
}

/* The flame should visibly pulse on the icon, not on a duplicate plan-name banner. */
@keyframes hs25-crown-flicker{0%,7%,11%,51%,54%,100%{filter:drop-shadow(0 0 5px #e98a16);opacity:1}9%,52%{filter:drop-shadow(0 0 11px #ffd066);opacity:.9}38%{filter:drop-shadow(0 0 14px #ff9820);opacity:1}}
.hs16-plan-crown.hs24-home-pro svg,.hs24-badge-pro svg,.hsb-plan-wrap .hs24-pro-flag svg{animation:hs25-crown-flicker 2.8s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.hs16-plan-crown.hs24-home-pro svg,.hs24-badge-pro svg,.hsb-plan-wrap .hs24-pro-flag svg{animation:none!important}}
