.booking-section{padding:96px 0 118px;background:linear-gradient(180deg,#ffffff 0%,#f7fbfe 45%,#f2f7fb 100%)}.picker-shell{max-width:940px;margin:auto;background:#fff;border:1px solid #dbe6ee;border-radius:32px;padding:54px 58px 48px;box-shadow:0 24px 60px rgba(13,47,99,.08)}.picker-intro{text-align:center;max-width:650px;margin:0 auto 44px}.picker-intro .eyebrow{margin-bottom:10px}.picker-intro h2{font-size:clamp(2.35rem,4vw,3.8rem);letter-spacing:-.03em;margin-bottom:12px;color:#0b2f63}.picker-intro p{color:#66798d;font-size:1rem;line-height:1.7;margin:0}.booking-step{position:relative;padding:34px 0 34px 68px;border-top:1px solid #e3ebf1}.booking-step:first-of-type{border-top:0}.booking-step:not(:last-of-type):before{content:"";position:absolute;left:20px;top:76px;bottom:-18px;width:1px;background:#d8e4ec}.step-heading{display:flex;align-items:center;gap:16px;margin:0 0 22px -68px}.step-heading>span{width:42px;height:42px;border-radius:50%;background:#0b2f63;color:#fff;display:grid;place-items:center;font-size:.9rem;font-weight:800;flex:0 0 42px;box-shadow:0 6px 16px rgba(11,47,99,.14)}.step-heading small{display:block;color:#2d73b9;font-size:.64rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800;margin-bottom:3px}.step-heading h3{margin:0;color:#17324d;font-size:1.28rem;letter-spacing:-.015em}.choice-buttons{display:flex;flex-wrap:wrap;gap:12px}.choice-button{appearance:none;border:1px solid #d4e0e9;background:#fff;color:#17324d;border-radius:14px;padding:14px 20px;font:inherit;font-size:.95rem;font-weight:700;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.choice-button:hover{border-color:#9abbd3;background:#f9fcff;transform:translateY(-1px)}.choice-button:focus-visible{outline:3px solid rgba(45,115,185,.18);outline-offset:2px}.choice-button.is-selected{background:#0b2f63;border-color:#0b2f63;color:#fff;box-shadow:0 8px 20px rgba(11,47,99,.16)}#pet-choices .choice-button{min-width:132px}.service-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-choices .choice-button{width:100%;min-height:54px;text-align:left}.wheel-wrap{max-width:520px;position:relative}.wheel-wrap:after{content:"";position:absolute;z-index:0;left:10px;right:10px;top:50%;height:62px;transform:translateY(-50%);border-top:1px solid #9fc0db;border-bottom:1px solid #9fc0db;background:#eef6fc;pointer-events:none}.wheel{position:relative;height:214px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;border:1px solid #d9e5ed;border-radius:18px;background:linear-gradient(to bottom,#f6f9fc 0%,#ffffff 38%,#ffffff 62%,#f6f9fc 100%);padding:76px 0;box-shadow:inset 0 1px 2px rgba(13,47,99,.03)}.wheel::-webkit-scrollbar{display:none}.wheel-option{position:relative;z-index:1;height:62px;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 18px;scroll-snap-align:center;color:#8797a6;font-size:.94rem;font-weight:650;cursor:pointer;transition:color .18s ease,font-size .18s ease,font-weight .18s ease}.wheel-option.is-selected{color:#0b2f63;font-size:1.08rem;font-weight:800}.addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.addon-card{display:flex;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid #dbe6ee;border-radius:14px;background:#fbfdff;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.addon-card:hover{border-color:#9abbd3;background:#f7fbff;transform:translateY(-1px)}.addon-card:focus-visible{outline:3px solid rgba(45,115,185,.18);outline-offset:2px}.addon-card.is-selected{background:#eef6fc;border-color:#2d73b9;box-shadow:0 8px 20px rgba(45,115,185,.1)}.addon-card.is-selected:after{content:"✓";display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#0b2f63;color:#fff;font-size:.78rem;font-weight:900;align-self:center}.addon-card strong,.addon-card small,.addon-card b{display:block}.addon-card strong{color:#17324d;font-size:.95rem;margin-bottom:4px}.addon-card small{color:#6c7d8d;line-height:1.45}.addon-card b{color:#0b2f63;white-space:nowrap;font-size:.9rem}.addon-note{margin:14px 0 0;padding:12px 14px;border-left:3px solid #2d73b9;background:#f5f9fc;color:#5f7283;font-size:.88rem;line-height:1.55}.selection-summary{margin-top:34px;padding:24px 26px;border:1px solid #d6e5f0;border-radius:20px;background:#f5f9fc;display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.selection-copy{flex:1;min-width:0}.selection-summary span,.selection-summary strong,.selection-summary small{display:block}.selection-summary span{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#2d73b9}.selection-summary strong{font-size:1.05rem;color:#0b2f63;margin:5px 0 3px}.selection-summary small{color:#6c7d8d;font-size:.9rem}.included-block{margin-top:14px;padding-top:14px;border-top:1px solid #d9e5ed}.included-block b{display:block;color:#17324d;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}.included-block p{margin:0;color:#5f7283;font-size:.9rem;line-height:1.55}.selected-addons-summary{margin-top:10px!important;padding-top:10px;border-top:1px dashed #c7d8e5;color:#17324d!important;font-weight:700}.selection-summary .btn{min-width:170px;box-shadow:0 8px 20px rgba(11,47,99,.13)}.picker-hint{text-align:center;margin:24px 0 0;color:#6c7d8d;font-size:.88rem}.picker-hint a{color:#0b2f63;font-weight:800}.booking-stage{margin:58px auto 0;max-width:940px;background:#fff;border:1px solid #dbe6ee;border-radius:26px;padding:30px;box-shadow:0 18px 44px rgba(13,47,99,.07);scroll-margin-top:120px}.booking-stage-title{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px;border-bottom:1px solid #e4ebf1;margin-bottom:22px;flex-wrap:wrap}.booking-stage-title h3{margin:0;color:#0b2f63}.booking-stage-title button{border:0;background:none;color:#2d73b9;font-weight:800;cursor:pointer}.booking-stage-addons{margin:0;color:#5f7283;font-size:.9rem;line-height:1.45;flex-basis:100%}.booking-stage-widget{min-height:300px;max-height:720px;overflow:auto;border:1px solid #e2eaf0;border-radius:18px;background:#fbfdff;box-shadow:inset 0 1px 0 rgba(255,255,255,.85);overscroll-behavior:contain}.booking-stage-widget:before{content:"Available times";position:sticky;top:0;z-index:2;display:block;padding:12px 16px;background:rgba(251,253,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid #e2eaf0;color:#0b2f63;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.booking-stage-widget iframe{display:block;width:100%!important;max-width:100%!important;border:0!important}.booking-note{max-width:820px;margin:38px auto 0;text-align:center;color:#718090;font-size:.87rem;line-height:1.65}.is-hidden{display:none!important}@media(max-width:800px){.booking-section{padding:58px 0 92px}.picker-shell{padding:30px 20px 26px;border-radius:24px}.picker-intro{margin-bottom:30px}.booking-step{padding:28px 0;border-top:1px solid #e3ebf1}.booking-step:not(:last-of-type):before{display:none}.step-heading{margin:0 0 18px;gap:13px}.step-heading>span{width:38px;height:38px;flex-basis:38px}.choice-buttons{gap:10px}#pet-choices{display:grid;grid-template-columns:1fr 1fr}#pet-choices .choice-button{min-width:0}.service-choices{grid-template-columns:1fr}.service-choices .choice-button{text-align:center}.wheel-wrap{max-width:none}.wheel{height:190px;padding:64px 0}.wheel-option{height:62px;font-size:.9rem}.addon-grid{grid-template-columns:1fr}.addon-card{align-items:flex-start;flex-direction:column;gap:8px}.addon-card.is-selected:after{align-self:flex-start}.selection-summary{align-items:stretch;flex-direction:column;padding:20px}.selection-summary .btn{width:100%;min-width:0}.booking-stage{padding:18px 12px;border-radius:20px}.booking-stage-title{align-items:flex-start;flex-direction:column}.booking-stage-widget{max-height:560px;border-radius:14px}.booking-stage-widget:before{padding:10px 12px;font-size:.7rem}}