:root{--dark-bg:#17121f;--card-bg:#21192b;--text-light:#f2f0ea;--text-primary:#f2f0ea;--text-secondary:#c7bbd2;--primary-color:#c29aff;--primary-gradient:linear-gradient(135deg,#c29aff,#ac7ae8);--violet:#c29aff}html{color-scheme:dark}body{background:#17121f!important;color:#f2f0ea;font-family:Arial,sans-serif}.navbar{background:#17121ff2!important;border-bottom:1px solid #44324e;backdrop-filter:blur(14px);padding:20px 0}.navbar-brand{font-family:Arial,sans-serif;font-weight:900!important;letter-spacing:-1px}.nav-link{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#d5c9e2!important}.nav-link:hover,.nav-link.active{color:var(--violet)!important}.booking-link{background:var(--violet);color:#17121f!important;border-radius:30px;padding:12px 20px!important}.availability-container{padding-top:130px;background:#17121f}.availability-container:before{background:radial-gradient(ellipse at 10% 15%,#a16be61a,transparent 50%)}.calendar-header{background:transparent;box-shadow:none;border:0;padding:40px 15px 35px;border-radius:0}.availability-eyebrow{font-size:10px;letter-spacing:2px;color:var(--violet)}.calendar-header h1{font:italic clamp(65px,7vw,100px)/.93 Impact,'Arial Narrow',sans-serif;font-weight:900;letter-spacing:-1px;background:none;-webkit-text-fill-color:initial;color:#f2f0ea;margin:25px 0}.calendar-header h1 em{font-style:inherit;color:var(--violet)}.calendar-header p{font-family:'Arial Narrow',Arial,sans-serif;font-weight:600;font-size:16px;color:#c7bbd2}.week-navigation,.calendar-wrapper,.legend,.service-area-card,.quick-book-card{background:#21192b!important;border:1px solid #49355a!important;box-shadow:0 15px 40px #0002!important;border-radius:10px}.week-navigation h3{font-family:Impact,'Arial Narrow',sans-serif;font-size:26px;font-style:italic;text-transform:uppercase;letter-spacing:.5px}.btn-week,.quick-book-card .btn-primary{background:#c29aff!important;color:#17121f!important;box-shadow:none!important;border:0;border-radius:30px;font-size:12px;letter-spacing:.6px;font-weight:800;transition:transform .2s,background .2s}.btn-week:hover,.quick-book-card .btn-primary:hover{background:#d3b6ff!important;transform:translateY(-2px)}.view-toggle{background:#21192b;border:1px solid #49355a}.view-toggle-btn{color:#d4c4e2}.view-toggle-btn.active{background:#c29aff;color:#17121f;box-shadow:none}.day-header,.time-header,.calendar-wrapper .time-header,.month-day-header{background:#2b2038!important;color:#e2d4ec;border-color:#49355a!important}.day-name{color:#cbb6dd!important}.today-header{background:#46305c!important}.today-header .day-number{color:#dcc1ff!important}.time-slot{background:#1c1625!important;color:#bba9ca!important;border-color:#3b2c47!important}.day-column,.hour-slot,.month-day{border-color:#3b2c47!important}.hour-slot:nth-child(2n){background:#ffffff02}.hour-slot:hover,.month-day:hover{background:#c29aff15!important}.month-day.today{background:#382647;border-color:#c29aff!important}.month-day.today .month-day-number{background:#c29aff;color:#17121f}.month-day-number{color:#f2f0ea}.month-day-free{color:#b6cdb9}.event-block{border-left:3px solid #e4cdff;border-radius:4px}.month-event-pill{background:#69478c;color:#fff}.legend-note,.text-muted{color:#c1b2cd!important}.legend-note i,.text-primary{color:#c29aff!important}.service-area-card h3,.quick-book-card h3{font-family:Impact,'Arial Narrow',sans-serif;font-style:italic;text-transform:uppercase;font-size:29px;color:#f2f0ea}.quick-book-card .form-control,.quick-book-card .form-select{background:#17121f;color:#f2f0ea;border-color:#584166;border-radius:4px}.quick-book-card .form-control:focus,.quick-book-card .form-select:focus{border-color:#c29aff;box-shadow:0 0 0 3px #c29aff25}.quick-book-card .form-label{color:#ddd0e8}.center-pin{background:#c29aff;color:#17121f;box-shadow:0 0 30px #c29aff30}.radius-ring{border-color:#c29aff60!important;background:#c29aff08!important}.radius-label{color:#d9c2eb!important}.calendar-header{animation:arrive .65s both}.view-toggle-wrapper{animation:arrive .7s .1s both}.calendar-wrapper{animation:arrive .8s .15s both}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(max-width:767px){.availability-container{padding-top:100px}.calendar-header{padding-top:20px}.calendar-header h1{font-size:66px}.week-navigation{padding:16px 12px;gap:12px}.week-navigation h3{font-size:21px}.btn-week{padding:9px 12px;font-size:10px}.day-btn{background:#21192b;border-color:#49355a;color:#d9c9e5}.day-btn.active{background:#c29aff!important;color:#17121f!important}.navbar-collapse{padding-top:15px}.nav-link{padding:12px!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Compact calendar-first layout; the calendar never scrolls vertically inside itself. */
.navbar{padding:10px 0}.navbar-brand img{height:35px!important}.availability-container{padding-top:85px}.calendar-header{padding:8px 0 12px;margin-bottom:4px}.availability-eyebrow{display:none}.calendar-header h1{font-size:clamp(32px,3.5vw,48px);margin:7px 0;line-height:1}.calendar-header p{font-size:13px;margin:0!important}.view-toggle-wrapper{margin:8px 0 12px}.view-toggle{padding:3px}.view-toggle-btn{padding:7px 19px;font-size:12px}.week-navigation{padding:10px 15px;margin-bottom:12px}.week-navigation h3{font-size:23px}.btn-week{padding:8px 15px}.calendar-wrapper{max-height:none!important;overflow-y:visible!important;overflow-x:clip!important;height:auto!important}.day-header{padding:8px 4px}.day-header .day-name{font-size:10px}.day-header .day-number{font-size:20px}.time-slot,.hour-slot{height:24px!important;min-height:24px!important}.time-slot{font-size:9px;padding:3px 8px}.legend{margin-top:12px;padding:12px 16px}.calendar-wrapper .time-header,.day-header{position:relative;top:auto}.month-day{min-height:90px}@media(max-width:767px){.availability-container{padding-top:76px}.calendar-header{padding:7px 0 9px}.calendar-header h1{font-size:34px}.week-navigation{padding:9px;gap:5px}.week-navigation h3{font-size:17px}.btn-week{font-size:9px;padding:7px 9px}.calendar-wrapper{max-height:none!important;overflow-y:visible!important;overflow-x:clip!important}.time-slot,.hour-slot{height:30px!important;min-height:30px!important}.day-header{padding:7px 2px}.calendar-header p{font-size:12px}.view-toggle-wrapper{margin-bottom:10px}}

/* Quiet lavender highlight for today, without the legacy red pulse. */
.today-header{background:#3b2b50!important;animation:none!important;box-shadow:inset 0 -2px 0 #b58be0!important}.today-header .day-number{color:#e3cfff!important}.month-day.today{box-shadow:inset 0 0 0 1px #a780cb!important;animation:none!important}
