/* Desktop booking shares the homepage shell. Mobile keeps its own booking UI. */
@media(min-width:1024px){
 .desktop-booking{--yellow:#ad8953;--muted:#69707a;--line:#dedbd5;background:var(--d-cream);color:var(--d-ink)}
 .desktop-booking-masthead{background:var(--d-navy);color:white}
 .desktop-booking-intro{width:min(88%,1280px);margin:auto;padding:44px 0 48px;font-size:12px;color:#c4c8ce}
 .desktop-booking-intro>span{margin-left:10px}
 .desktop-booking-intro h1{font-size:clamp(42px,4.1vw,64px);margin:17px 0 15px}
 .desktop-booking-intro p{font-size:15px;margin:0;max-width:680px}
 .desktop-booking-layout{width:min(88%,1280px);margin:auto;padding:48px 0 76px;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:36px;align-items:start}
 .desktop-booking-main{min-width:0}
 .desktop-booking .booking-progress{max-width:none;margin:0 0 30px}
 .desktop-booking .booking-step{color:#73777e;gap:8px}
 .desktop-booking .booking-step>span{width:36px;height:36px;font-size:13px;background:var(--d-cream);border-color:#c9c5be}
 .desktop-booking .booking-step small{font-size:12px}
 .desktop-booking .booking-step.current{color:var(--d-ink);font-weight:700}
 .desktop-booking .booking-step.current>span,.desktop-booking .booking-step.done>span{background:var(--d-gold);border-color:var(--d-gold);color:white}
 .desktop-booking .booking-step:after{top:18px;left:calc(50% + 27px);width:calc(100% - 54px);background:#d5d0c8}
 .desktop-booking .booking-step.done:after{background:var(--d-gold)}
 .desktop-booking .booking-panel{max-width:none;padding:28px;border:1px solid #e5dfd5;border-radius:0;background:white;box-shadow:0 8px 32px #08121f06}
 .desktop-booking .booking-copy{padding:0 0 24px}
 .desktop-booking .booking-copy h2{font-family:SpaceRighteous,Arial,sans-serif;font-size:30px;margin:7px 0 10px}
 .desktop-booking .booking-copy p{font-size:14px;color:#69707a;margin:0}
 .desktop-booking .eyebrow{font-size:10px;letter-spacing:2px;color:#856334}
 .desktop-booking .booking-style-deck,.desktop-booking .booking-barber-deck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;overflow:visible;scroll-snap-type:none}
 .desktop-booking .booking-style-deck:before,.desktop-booking .booking-style-deck:after,.desktop-booking .booking-barber-deck:before,.desktop-booking .booking-barber-deck:after{display:none}
 .desktop-booking .booking-style-card{width:100%;height:230px;min-width:0;border-radius:0;border:2px solid transparent;transform:none;opacity:1;box-shadow:none;color:white}
 .desktop-booking .booking-style-card:hover{border-color:var(--d-gold)}
 .desktop-booking .booking-style-card.selected{border-color:var(--d-gold);box-shadow:0 0 0 2px var(--d-gold)}
 .desktop-booking .booking-style-info{left:12px;right:12px;bottom:14px;align-items:start;flex-direction:column;gap:5px}
 .desktop-booking .booking-style-info b{font-size:14px;line-height:1.4}
 .desktop-booking .booking-style-info small{font-size:13px;color:#e8c48d}
 .desktop-booking .style-check{background:var(--d-gold);color:white}
 .desktop-booking .booking-actions{margin-top:26px;padding-top:23px;border-top:1px solid #e5dfd5}
 .desktop-booking .button{border-radius:0;padding:15px 24px;min-height:48px;font-size:12px;font-family:SpaceRoboto,Arial,sans-serif;letter-spacing:.3px}
 .desktop-booking .button-yellow{background:var(--d-gold);color:white;border:1px solid var(--d-gold);box-shadow:none}
 .desktop-booking .button-ghost{color:var(--d-ink);background:transparent;border:1px solid #c9c5be}
 .desktop-booking .step-hint,.desktop-booking .local-data-note,.desktop-booking .booking-disclaimer{color:#626b76;font-size:12px}
 .desktop-booking .local-data-note{margin:18px 0 0}
 .desktop-booking-aside{padding:30px;background:var(--d-navy);color:#c4c8ce}
 .desktop-booking-aside .desktop-eyebrow{display:block;color:#d7b078;font-size:9px;letter-spacing:1.5px}
 .desktop-booking-aside h2{font-size:30px;color:white;margin:16px 0}
 .desktop-booking-aside h3{font-size:18px;color:white;margin-bottom:16px}
 .desktop-booking-aside p{font-size:13px;line-height:1.8;margin-bottom:0}
 .desktop-booking-aside-rule{height:1px;background:#ffffff20;margin:25px 0}
 .desktop-booking-aside>a{display:block;margin:0 0 16px;font-size:12px}
 .desktop-booking-aside>a b{display:block;color:#d7b078;font-weight:500;font-size:14px}
 .desktop-booking-aside>a span{display:block;margin-top:4px}
 .desktop-booking-aside .desktop-hours{font-size:11px;gap:12px;margin:0}
 .desktop-booking-aside .desktop-booking-help{border-top:1px solid #ffffff20;margin-top:25px;padding-top:22px}
 .desktop-booking-help a{color:#d7b078;font-size:18px;display:inline-block;margin-top:5px}
 .desktop-booking .bt-entry{border-radius:0;background:white;color:var(--d-ink);border:1px solid #e5dfd5;margin:0 0 25px;padding:16px}
 .desktop-booking .bt-entry>i{background:var(--d-cream);color:#856334}
 .desktop-booking .bt-entry small{color:#69707a}
 .desktop-booking .booking-barber-deck{grid-template-columns:repeat(2,minmax(0,1fr))}
 .desktop-booking .booking-barber-option{min-width:0}
 .desktop-booking .empty-state{padding:48px 24px;background:var(--d-cream);border-radius:0;color:var(--d-ink)}
 .desktop-booking .empty-state h3{font-size:24px}
 .desktop-booking .empty-state p{font-size:14px;color:#69707a;margin:12px 0 24px}
 .desktop-booking .location-segment{border-radius:0;background:var(--d-cream);padding:12px}
 .desktop-booking .booking-location{color:var(--d-ink);font-size:14px}
 .desktop-booking .date-strip{gap:8px;flex-wrap:wrap;overflow:visible}
 .desktop-booking .date-option{border-radius:0;background:#faf8f4;flex:1 0 55px;min-height:84px;color:var(--d-ink)}
 .desktop-booking .date-option small{font-size:11px;color:#626b76}
 .desktop-booking .date-option.selected{border-color:var(--d-gold);background:var(--d-cream)}
 .desktop-booking .date-option.selected b,.desktop-booking .date-option.selected small{color:#856334}
 .desktop-booking .field>span,.desktop-booking .booking-form .field span{color:#626b76;font-size:13px}
 .desktop-booking .field input{background:white;border:1px solid #c9c5be;border-radius:0;color:var(--d-ink);font:14px SpaceRoboto,Arial,sans-serif;min-height:48px;color-scheme:light}
 .desktop-booking .field input::placeholder{color:#777}
 .desktop-booking .slot-title{font-size:20px;margin:25px 0 15px}
 .desktop-booking .time-grid{gap:12px}
 .desktop-booking .time-option{min-height:46px;border-radius:0;background:#faf8f4;color:var(--d-ink);font-size:13px}
 .desktop-booking .time-option.selected{background:var(--d-gold);color:white}
 .desktop-booking .booking-summary{border-radius:0;background:var(--d-cream);padding:15px;margin-bottom:25px}
 .desktop-booking .booking-summary b{font-size:14px}.desktop-booking .booking-summary small{font-size:12px;color:#626b76}
 .desktop-booking .booking-summary>button{color:var(--d-ink)}
 .desktop-booking .booking-form .field{margin-bottom:20px}
 .desktop-booking .desktop-footer{margin-top:0}
}
@media(min-width:1024px) and (max-width:1199px){
 .desktop-booking-layout{width:92%;grid-template-columns:minmax(0,1fr) 250px;gap:24px}
 .desktop-booking .booking-panel{padding:22px}
 .desktop-booking .booking-style-deck{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .desktop-booking-aside{padding:24px}
}
@media(min-width:1024px){
 .desktop-booking .bt-entry span{color:#626b76}
 .desktop-booking .bt-entry strong{color:var(--d-ink)}
 .desktop-booking .bt-entry b{color:#856334}
 .desktop-booking .bt-entry>svg{stroke:#856334}
 body:has(.desktop-booking) .bt-dialog{background:#08121f;border-color:#ad895355;border-radius:0;width:520px;padding:38px;font-family:SpaceRoboto,Arial,sans-serif}
 body:has(.desktop-booking) .bt-dialog h2{font-family:SpaceRighteous,Arial,sans-serif}
 body:has(.desktop-booking) .bt-primary{background:#ad8953;color:white;border-radius:0}
 body:has(.desktop-booking) .bt-symbol{background:#ad89531a;color:#d7b078;border-color:#ad895355;border-radius:0}
 body:has(.desktop-booking) .bt-dialog input{background:#14202e;border-radius:0;border-color:#ffffff30;font-family:inherit}
 body:has(.desktop-booking) .bt-dialog input:focus{border-color:#ad8953;box-shadow:0 0 0 3px #ad895320}
}
