:root{--cream:#f7f2ed;--paper:#fffdfb;--ink:#24201e;--cocoa:#665248;--rose:#ad7d76;--rose2:#c59a8f;--white:#fff;--muted:#746a64;--border:rgba(34,32,30,.12);--shadow:0 24px 70px rgba(61,43,35,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 8% 0%,rgba(211,177,160,.20),transparent 28rem),var(--cream);color:var(--ink);font-family:Montserrat,Arial,sans-serif}.booking-header{max-width:1180px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand img{width:54px;height:54px;border-radius:50%;object-fit:cover;box-shadow:0 7px 20px rgba(65,43,35,.10)}.brand span{display:flex;flex-direction:column;line-height:1}.brand b{font:600 26px 'Cormorant Garamond',serif}.brand small{font-size:9px;letter-spacing:.3em;margin-top:5px}.back{color:var(--cocoa);font-size:12px;text-decoration:none}.booking-main{width:min(1120px,calc(100% - 34px));margin:28px auto 90px}.intro{text-align:center;max-width:760px;margin:0 auto 34px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--rose);font-size:10px;font-weight:600}.intro h1,.success h2{font:600 clamp(44px,7vw,72px)/.94 'Cormorant Garamond',serif;margin:12px 0 18px}.intro>p:not(.eyebrow){color:var(--muted);line-height:1.75;font-size:14px}.progress-pills{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:24px}.progress-pills span{padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.48);font-size:10px;color:var(--muted)}.progress-pills span.active{background:#2b2522;color:#fff;border-color:#2b2522}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.booking-card,.side-card{background:rgba(255,253,251,.94);border:1px solid rgba(255,255,255,.72);box-shadow:var(--shadow);border-radius:30px}.modern-booking{padding:0;overflow:hidden}.booking-step{padding:30px 34px;border-bottom:1px solid var(--border);display:grid;gap:18px}.step-heading{display:flex;gap:14px;align-items:center}.step-heading>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f0e5df;color:var(--cocoa);font:600 14px 'Cormorant Garamond',serif}.step-heading p{margin:0 0 4px}.step-heading h2{font:600 29px/1 'Cormorant Garamond',serif;margin:0}label,.time-label{display:grid;gap:8px;font-size:11px;font-weight:600;letter-spacing:.01em}label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:15px;padding:15px 16px;background:#fff;font:inherit;font-size:14px;color:var(--ink);min-height:50px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(173,125,118,.15);border-color:var(--rose)}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-info{padding:13px 15px;border-radius:14px;background:#f4ece6;color:var(--muted);font-size:12px;line-height:1.6;display:none}.service-info.show{display:block}.time-pills{display:grid;grid-template-columns:1fr 1fr;gap:12px}.time-pills button{border:1px solid var(--border);background:#fff;border-radius:16px;padding:16px;font:600 14px Montserrat;cursor:pointer;color:var(--ink);transition:.2s}.time-pills button:hover,.time-pills button.active{background:#2b2522;color:#fff;border-color:#2b2522;transform:translateY(-1px)}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.notice{font-size:12px;color:#8a3d35;min-height:16px;line-height:1.5}.submit,.success button{border:0;border-radius:999px;padding:17px 21px;background:#28221f;color:#fff;font-weight:600;cursor:pointer;transition:.2s}.submit:hover,.success button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(42,35,31,.18)}.sticky-submit{margin:24px 34px 8px;width:calc(100% - 68px);display:flex;align-items:center;justify-content:center;gap:12px}.sticky-submit span{font-size:18px}.fine{font-size:10px;color:var(--muted);text-align:center;line-height:1.6;margin:0 34px 28px}.booking-side{display:grid;gap:16px;position:sticky;top:18px}.side-card{padding:22px}.side-card .eyebrow{margin-top:0}.review-summary{font-size:12px;color:var(--muted);line-height:1.7}.review-summary strong{display:block;color:var(--ink);font:600 22px/1.15 'Cormorant Garamond',serif;margin-bottom:8px}.review-summary span{display:block;margin-top:5px}.install-card{display:flex;gap:12px;align-items:flex-start}.install-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}.phone-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f0e5df;color:var(--cocoa);flex:none}.contact-mini{display:grid;gap:10px;font-size:11px}.contact-mini a{color:var(--cocoa);overflow-wrap:anywhere}.success{text-align:center;padding:48px;max-width:760px;margin:0 auto}.check{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#efe4dd;margin:0 auto 20px;font-size:25px;color:var(--cocoa)}.success p:not(.eyebrow){color:var(--muted);line-height:1.7}.hours{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:28px;color:var(--muted);font-size:11px}.hours strong{color:var(--ink)}.booking-top-actions{display:flex;align-items:center;gap:12px}.booking-lang{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:36px;padding:0 10px;border:1px solid rgba(92,65,54,.22);border-radius:999px;font-weight:700;text-decoration:none;color:inherit}.mobile-review{display:none}
@media(max-width:860px){.booking-layout{grid-template-columns:1fr}.booking-side{display:none}.mobile-review{display:block;margin:24px 34px 0;padding:18px;border-radius:18px;background:#f7f1ed;border:1px solid var(--border)}}
@media(max-width:620px){.booking-header{padding:14px 16px}.brand img{width:44px;height:44px}.brand b{font-size:22px}.back{font-size:10px}.booking-top-actions{gap:7px}.booking-lang{min-width:36px;height:34px}.booking-main{width:min(100% - 20px,620px);margin-top:16px;margin-bottom:55px}.intro{margin-bottom:22px;padding:0 7px}.intro h1{font-size:47px}.intro>p:not(.eyebrow){font-size:12px}.progress-pills{gap:5px}.progress-pills span{font-size:9px;padding:7px 9px}.booking-card{border-radius:24px}.booking-step{padding:24px 18px}.step-heading h2{font-size:26px}.two{grid-template-columns:1fr}.time-pills button{padding:17px 8px}.mobile-review{margin:20px 18px 0}.sticky-submit{position:sticky;bottom:10px;z-index:5;margin:18px 18px 8px;width:calc(100% - 36px);box-shadow:0 14px 34px rgba(36,29,26,.22);padding-bottom:max(17px,env(safe-area-inset-bottom))}.fine{margin:0 18px 24px}.success{padding:34px 20px}.hours{padding:0 15px;text-align:center}}

.time-pills button:disabled{opacity:.42;cursor:not-allowed}.time-pills button.unavailable{text-decoration:line-through}.sticky-submit:disabled{opacity:.6;cursor:wait}
