:root{--maroon:#7b1738;--maroon-dark:#5b0f29;--deep:#30101c;--ink:#21181b;--muted:#6f6367;--rose:#f5e7ec;--rose-2:#fff7f9;--line:#eadde2;--green:#24725a;--white:#fff;--shadow:0 18px 55px rgba(61,19,34,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;padding-bottom:190px}
button,input,select{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d99aaf;outline-offset:3px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3,strong,.top-brand{font-family:Manrope,Arial,sans-serif}
.site-header{height:68px;padding:0 max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(16px);position:sticky;top:0;z-index:900}
.top-brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--deep)}
.top-brand>span{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--maroon);color:white;font-size:12px;font-weight:800}
.top-brand b{display:flex;align-items:baseline;letter-spacing:-.04em}
.top-brand b:before{content:'Tap';font:800 24px Manrope}
.top-brand b:after{content:'Doha';font:800 18px Manrope;color:var(--maroon);margin-inline-start:2px}
.header-actions{display:flex;gap:8px}.header-actions button{border:1px solid var(--line);background:white;color:var(--deep);border-radius:11px;padding:9px 13px;font-weight:700}.header-actions #lang{background:var(--rose-2)}.header-actions span{font-size:10px;color:var(--muted);margin-inline-start:4px}
main{overflow:hidden}
.hero{max-width:1180px;margin:auto;padding:54px 20px 30px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center;min-height:370px}
.eyebrow,.monthly>span,.how>span,.result-head span,.modal-kicker{display:block;color:var(--maroon);font-size:12px;font-weight:800;letter-spacing:.12em}
.hero h1{font-size:clamp(42px,5.2vw,68px);line-height:1.02;letter-spacing:-.055em;max-width:720px;margin:14px 0 18px;color:var(--deep)}
.hero-sub{font-size:18px;line-height:1.55;color:var(--muted);max-width:650px;margin-bottom:24px}
.hero-trust{display:flex;gap:10px;flex-wrap:wrap}.hero-trust span{background:var(--rose-2);border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--deep);font-size:13px;font-weight:700}
.promise{min-height:340px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px}
.promise img{width:min(100%,310px);height:220px;object-fit:contain;filter:hue-rotate(285deg) saturate(.72);animation:promiseIn .55s ease both}
.promise>div:not(.promise-dots){animation:promiseIn .55s .08s ease both}.promise strong{display:block;color:var(--deep);font-size:32px;letter-spacing:-.035em}.promise span{display:block;color:var(--muted);margin-top:4px}
.promise-dots{display:flex;gap:7px;margin-top:16px}.promise-dots i{width:7px;height:7px;border-radius:99px;background:#dac2cb;transition:.25s}.promise-dots i.active{width:24px;background:var(--maroon)}
@keyframes promiseIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.search{display:grid;grid-template-columns:1.12fr 1.4fr .8fr .9fr;gap:10px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:12px;position:relative;z-index:3}
fieldset{border:0;padding:0;margin:0;min-width:0}.search legend,.search label>span,.monthly legend,.monthly label>span{display:block;margin:0 0 7px 4px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.segmented{display:flex;background:var(--rose-2);padding:4px;border-radius:11px;height:48px}.segmented button{flex:1;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:700;white-space:nowrap}.segmented button.active{background:white;color:var(--maroon);box-shadow:0 2px 8px rgba(61,19,34,.08)}
.location-btn{height:72px;border:1px solid var(--line);background:white;border-radius:12px;padding:10px 13px;display:flex;gap:10px;align-items:center;text-align:start;color:var(--maroon)}.location-btn>span:first-child{font-size:24px}.location-btn small,.location-btn b{display:block}.location-btn small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.location-btn b{font-size:13px;color:var(--deep);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.date-field{min-width:0}.date-field input{width:100%;height:48px;border:1px solid var(--line);border-radius:11px;padding:0 10px;background:white;color:var(--deep);font-weight:700}
.search-btn,.summary-book,.monthly-submit,dialog form>button{border:0;border-radius:12px;background:var(--maroon);color:white;font-weight:800;min-height:48px;padding:0 18px;align-self:end}.search-btn:hover,.summary-book:hover,.monthly-submit:hover{background:var(--maroon-dark)}
.market{max-width:1180px;margin:50px auto 0;padding:0 20px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.category-nav{display:flex;gap:8px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.category-nav b{margin-inline-end:auto}.category-nav button{border:1px solid var(--line);background:white;border-radius:999px;padding:8px 13px;color:var(--muted);font-weight:700}.category-nav button.active{background:var(--deep);color:white;border-color:var(--deep)}
.result-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:28px 0 8px}.result-head h2{font-size:clamp(27px,3vw,40px);letter-spacing:-.04em;margin:5px 0 0;color:var(--deep)}.result-head p{margin:0;color:var(--muted)}
.compare-help{color:var(--muted);font-size:14px;margin:0 0 18px}
.provider{border:1px solid var(--line);border-radius:17px;background:white;margin-bottom:12px;overflow:hidden;transition:border .2s,box-shadow .2s}.provider.active{border-color:#c98ba1;box-shadow:0 12px 35px rgba(61,19,34,.09)}
.provider-select{width:100%;border:0;background:white;padding:17px;display:grid;grid-template-columns:minmax(190px,1.45fr) repeat(4,minmax(82px,.65fr)) auto;gap:14px;align-items:center;text-align:start;color:var(--ink)}
.provider-select:hover{background:var(--rose-2)}.provider.active .provider-select{background:#fffafb}
.provider-name{display:flex;gap:12px;align-items:center;min-width:0}.provider-logo{width:43px;height:43px;border-radius:13px;background:var(--rose);color:var(--maroon);display:grid;place-items:center;font:800 13px Manrope;flex:0 0 auto}.provider-name h3{font-size:16px;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-name span{font-size:11px;color:var(--green);font-weight:800}.metric small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.metric b{display:block;margin-top:4px;color:var(--deep);font-size:14px}.provider-chevron{color:var(--maroon);font-size:20px;transition:.2s}.provider.active .provider-chevron{transform:rotate(180deg)}
.booking-panel{display:none;border-top:1px solid var(--line);padding:18px;background:#fffafb}.provider.active .booking-panel{display:block}.review-line{display:flex;justify-content:space-between;gap:16px;margin-bottom:17px;color:var(--muted);font-size:13px}.review-line q{font-style:italic}.review-line span{white-space:nowrap;color:var(--green);font-weight:700}
.booking-panel fieldset+fieldset{margin-top:15px}.booking-panel legend{font-size:12px;font-weight:800;color:var(--deep);margin-bottom:8px}.option-rail{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin;scroll-snap-type:x proximity}.option-rail button{border:1px solid var(--line);background:white;border-radius:11px;padding:9px 13px;min-width:max-content;color:var(--deep);scroll-snap-align:start}.option-rail button b,.option-rail button small{display:block}.option-rail button small{color:var(--muted);margin-top:2px}.option-rail button.active{background:var(--maroon);color:white;border-color:var(--maroon)}.option-rail button.active small{color:#f7dce5}
.booking-assurance{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:12px;margin-top:10px}.booking-assurance b{color:var(--green)}
.monthly{position:sticky;top:86px;background:var(--deep);color:white;border-radius:20px;padding:24px;box-shadow:var(--shadow)}.monthly h2{font-size:30px;letter-spacing:-.04em;margin:7px 0}.monthly>p{color:#d8c7ce;line-height:1.45}.monthly>span{color:#f3b9cd}.monthly fieldset,.monthly label{display:block;margin-top:17px}.monthly legend,.monthly label>span{color:#d8c7ce}.plans{display:grid;gap:7px}.plans button{border:1px solid #624253;background:#3b1b27;color:white;border-radius:11px;padding:10px 12px;text-align:start}.plans button b,.plans button small{display:block}.plans button small{color:#d8c7ce;margin-top:3px}.plans button.active{border-color:#ffbed4;background:#65162f}.monthly-note{display:flex;gap:10px;margin-top:13px;background:#3b1b27;padding:11px;border-radius:11px}.monthly-note>span{color:#8ee0c1}.monthly-note p,.monthly-note b,.monthly-note small{display:block;margin:0}.monthly-note small{color:#d8c7ce;margin-top:3px;line-height:1.35}.monthly select,.phone{width:100%;height:45px;border-radius:10px;border:1px solid #735364;background:white;color:var(--deep)}.monthly select{padding:0 10px}.timings{display:flex;gap:6px;overflow:auto}.timings button{flex:1;border:1px solid #735364;background:#3b1b27;color:white;border-radius:9px;padding:9px;min-width:max-content}.timings button.active{background:white;color:var(--maroon)}
.phone,.modal-phone{display:flex;align-items:center;overflow:hidden;background:white}.phone b,.modal-phone b{padding:0 10px;border-inline-end:1px solid var(--line);color:var(--deep)}.phone input,.modal-phone input{min-width:0;flex:1;height:100%;border:0;padding:0 10px;outline:0}.monthly-submit{width:100%;margin-top:17px;background:#b8325d}.monthly form>small{display:block;text-align:center;color:#d8c7ce;margin-top:8px;line-height:1.35}
.how{max-width:1180px;margin:85px auto 0;padding:55px 20px}.how h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;max-width:670px;margin:8px 0 30px;color:var(--deep)}.how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.how article{background:var(--rose-2);border:1px solid var(--line);border-radius:16px;padding:22px}.how article>b{color:var(--maroon)}.how h3{margin:28px 0 8px}.how p{color:var(--muted);line-height:1.55;margin:0}
.booking-summary{position:fixed;z-index:850;left:50%;bottom:82px;transform:translateX(-50%) translateY(135%);width:min(calc(100% - 32px),1120px);background:white;border:1px solid var(--line);border-radius:17px;box-shadow:0 18px 55px rgba(43,12,23,.2);padding:11px 12px 11px 16px;display:grid;grid-template-columns:1.7fr .85fr .6fr auto;gap:16px;align-items:center;transition:transform .28s ease}.booking-summary.visible{transform:translateX(-50%) translateY(0)}.booking-summary small,.booking-summary span{display:block;color:var(--muted);font-size:10px}.summary-copy strong{display:block;color:var(--deep);font-size:14px}.summary-copy span{margin-top:3px}.summary-phone button{border:0;background:transparent;color:var(--maroon);font-weight:800;padding:3px 0}.summary-price strong{font-size:16px;color:var(--deep)}.summary-book{min-height:44px}.summary-book:disabled{background:#c9bdc1;cursor:not-allowed}
.bottom-nav{position:fixed;z-index:860;left:50%;bottom:14px;transform:translateX(-50%);display:flex;background:var(--deep);border-radius:16px;padding:5px;box-shadow:0 10px 35px rgba(31,8,17,.22)}.bottom-nav a{display:flex;align-items:center;gap:6px;text-decoration:none;color:#d8c7ce;padding:9px 15px;border-radius:11px;font-size:12px;font-weight:700}.bottom-nav a.active{background:white;color:var(--maroon)}.bottom-nav i{font-style:normal}
dialog{border:0;border-radius:20px;padding:26px;width:min(92vw,430px);box-shadow:0 24px 80px rgba(35,8,18,.3);color:var(--ink)}dialog::backdrop{background:rgba(30,9,17,.55);backdrop-filter:blur(3px)}.modal-close{position:absolute;top:12px;right:13px;border:0;background:var(--rose);width:32px;height:32px;border-radius:99px;color:var(--deep);font-size:20px}.map-modal{width:min(92vw,720px)}dialog h2{font-size:27px;margin:7px 0}dialog p{color:var(--muted);line-height:1.45}dialog form label{display:block;font-weight:700;margin-top:15px}dialog form label>span:first-child{display:block;font-size:12px;margin-bottom:6px}.modal-phone{height:48px;border:1px solid var(--line);border-radius:10px}dialog form>label>input{width:100%;height:48px;border:1px solid var(--line);border-radius:10px;padding:0 12px;margin-top:6px}dialog form>button{width:100%;margin-top:18px}dialog form>small{display:block;color:var(--muted);text-align:center;margin-top:9px}.map-modal #map{height:390px;border-radius:14px;overflow:hidden}.map-actions{display:flex;gap:8px;margin-top:12px}.map-actions button{flex:1;border:1px solid var(--line);background:white;border-radius:10px;padding:11px;color:var(--maroon);font-weight:800}.map-actions button:last-child{background:var(--maroon);color:white;border-color:var(--maroon)}#mapCoords{display:block;color:var(--muted);margin-top:9px}
.toast{position:fixed;z-index:1200;top:82px;left:50%;transform:translate(-50%,-20px);background:var(--deep);color:white;border-radius:12px;padding:11px 16px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.map-attribution{display:block;margin-top:5px;color:var(--muted)}.map-attribution a{color:var(--maroon)}.map-actions button:disabled{opacity:.65;cursor:wait}
.monthly-options{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin}.monthly-options button{flex:1 1 0;min-width:max-content;border:1px solid #735364;background:#3b1b27;color:white;border-radius:9px;padding:10px 9px;font-weight:700}.monthly-options button.active{background:white;color:var(--maroon);border-color:white}
.help-card-btn{margin-top:18px;border:0;background:var(--maroon);color:white;border-radius:10px;padding:10px 12px;font-weight:800}.customer-care{margin-top:16px;background:var(--deep);color:white;border-radius:18px;padding:23px;display:flex;justify-content:space-between;gap:24px;align-items:center}.customer-care h3{font-size:23px;margin:5px 0}.customer-care p{margin:0;color:#d8c7ce}.customer-care>div>span{color:#f3b9cd;font-size:11px;font-weight:800;letter-spacing:.1em}.care-links{display:flex;gap:8px;flex-wrap:wrap}.care-links a{min-width:210px;text-decoration:none;color:var(--deep);background:white;border-radius:12px;padding:11px 13px}.care-links small,.care-links b{display:block}.care-links small{color:var(--muted);font-size:9px;letter-spacing:.08em}.care-links b{font-size:13px;margin-top:3px}.bottom-nav button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#d8c7ce;padding:9px 15px;border-radius:11px;font-size:12px;font-weight:700}.bottom-nav button.active{background:white;color:var(--maroon)}.bottom-nav button i{font-style:normal}.wide-modal{width:min(94vw,760px);max-height:86vh;overflow:auto}.provider-review-list{display:grid;gap:10px;margin-top:18px}.review-provider{border:1px solid var(--line);border-radius:14px;padding:14px}.review-provider-head{display:flex;justify-content:space-between;gap:12px}.review-provider-head h3{margin:0}.review-provider-head span{color:var(--green);font-weight:800}.review-provider>p{margin:10px 0;color:var(--muted);font-style:italic}.review-staff{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}.review-staff span{min-width:max-content;background:var(--rose-2);border:1px solid var(--line);border-radius:9px;padding:7px 9px;font-weight:700}.account-profile{display:flex;align-items:center;gap:12px;background:var(--rose-2);padding:13px;border-radius:13px;margin:14px 0}.account-avatar{width:42px;height:42px;border-radius:99px;background:var(--maroon);color:white;display:grid;place-items:center;font-weight:800}.account-sections{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-panel{border:1px solid var(--line);border-radius:14px;padding:14px;min-height:150px}.account-panel h3{margin:0 0 12px}.empty-state{color:var(--muted);line-height:1.5}.account-cta{border:0;border-radius:11px;background:var(--maroon);color:white;padding:11px 14px;font-weight:800}.activity-item{border-top:1px solid var(--line);padding:10px 0}.activity-item:first-of-type{border-top:0}.activity-item b,.activity-item small{display:block}.activity-item small{color:var(--muted);margin-top:3px}.activity-status{color:var(--green);font-size:10px;font-weight:800}
@media(max-width:680px){.customer-care{display:block}.care-links{margin-top:15px}.care-links a{min-width:0;width:100%}.bottom-nav button{flex:1;justify-content:center;flex-direction:column;gap:1px;padding:5px 4px}.account-sections{grid-template-columns:1fr}}
[dir=rtl] .provider-select,[dir=rtl] .location-btn,[dir=rtl] .plans button{text-align:right}[dir=rtl] .modal-close{right:auto;left:13px}
@media(max-width:980px){body{padding-bottom:205px}.hero-grid{grid-template-columns:1fr .8fr;gap:20px}.hero h1{font-size:48px}.search{grid-template-columns:1fr 1fr}.market{grid-template-columns:1fr}.monthly{position:relative;top:auto}.provider-select{grid-template-columns:minmax(190px,1.4fr) repeat(2,minmax(80px,.6fr)) auto}.provider-select .metric:nth-of-type(3),.provider-select .metric:nth-of-type(4){display:none}.how{margin-top:45px}}
@media(max-width:680px){body{padding-bottom:160px}.site-header{height:62px;padding:0 14px}.top-brand b:before{font-size:21px}.top-brand b:after{font-size:12px}.header-actions button{padding:8px 10px;font-size:12px}.hero{padding:30px 15px 20px}.hero-grid{grid-template-columns:1fr;min-height:0}.hero h1{font-size:clamp(38px,12vw,54px)}.hero-sub{font-size:16px}.promise{min-height:290px}.promise img{height:190px}.promise strong{font-size:28px}.search{grid-template-columns:1fr;padding:10px}.location-btn{height:60px}.service-choice,.date-field{min-width:0}.market{margin-top:28px;padding:0 14px}.category-nav b{display:none}.category-nav button{flex:1}.result-head{align-items:start}.result-head p{font-size:12px}.provider-select{grid-template-columns:minmax(0,1.5fr) .75fr .75fr auto;padding:14px;gap:8px}.provider-select .metric:nth-of-type(3),.provider-select .metric:nth-of-type(4){display:none}.provider-logo{width:38px;height:38px}.provider-name{gap:8px}.provider-name h3{font-size:14px}.metric b{font-size:12px}.review-line{display:block}.review-line span{display:block;margin-top:6px}.booking-panel{padding:15px}.how{padding:45px 14px}.how>div{grid-template-columns:1fr}.booking-summary{bottom:68px;width:calc(100% - 16px);grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:8px 9px}.summary-copy{min-width:0}.summary-copy strong,.summary-copy span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-phone{display:none}.summary-price{text-align:end}.summary-book{grid-column:auto;min-height:44px;padding:0 12px}.bottom-nav{left:0;right:0;bottom:0;transform:none;border-radius:16px 16px 0 0;justify-content:space-around;padding:5px}.bottom-nav a{flex:1;justify-content:center;flex-direction:column;gap:1px;padding:5px 4px}.map-modal #map{height:320px}.map-actions{flex-direction:column}}
@media(max-width:420px){.provider-select{grid-template-columns:minmax(0,1fr) .7fr auto}.provider-select .metric:nth-of-type(2){display:none}.hero-trust{gap:6px}.hero-trust span{font-size:11px;padding:7px 9px}.promise{min-height:255px}.promise img{height:165px}.monthly{padding:20px}.map-modal{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.promise img,.promise>div{animation:none}.booking-summary,.provider-chevron{transition:none}}

/* Provider metric visibility and semantic name refinements. */
.provider-name strong{display:block;font-size:16px;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:980px){.provider-select .metric-staff,.provider-select .metric-next{display:none}.provider-select .metric.metric-rating,.provider-select .metric.metric-price{display:block}}
@media(max-width:680px){.provider-name strong{font-size:14px}.provider-select .metric.metric-rating,.provider-select .metric.metric-price{display:block}}
@media(max-width:420px){.provider-select .metric.metric-rating{display:none}.provider-select .metric.metric-price{display:block}}

/* Keep the provider directory within narrow mobile viewports. */
.market-main,#providerGroups,.group,.provider{min-width:0}
@media(max-width:420px){
  .market-main,#providerGroups,.group,.provider{width:100%;max-width:100%}
  .category-nav{min-width:0}.category-nav button{min-width:0;flex:1 1 0;padding-inline:8px}
  .result-head{display:block}.result-head p{margin-top:8px}
  .provider-select{grid-template-columns:minmax(0,1fr) max-content auto;width:100%}
  .provider-select .metric.metric-price{min-width:0;white-space:nowrap}
}

/* Customer care callback and completed-service review workflow. */
.customer-care{flex-wrap:wrap;gap:18px}.customer-care .care-copy>span{color:#f3b9cd;font-size:11px;font-weight:800;letter-spacing:.1em}.care-links a{min-width:190px}.callback-form{width:100%;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;align-items:end;background:#3b1b27;padding:13px;border-radius:13px}.callback-form label>span:first-child{display:block;color:#d8c7ce;font-size:11px;font-weight:800;margin-bottom:6px}.callback-form .phone{height:44px}.callback-form>button{height:44px;border:0;border-radius:10px;background:#b8325d;color:white;padding:0 16px;font-weight:800}.callback-form>small{grid-column:1/-1;color:#d8c7ce}.admin-queue-link{color:#d8c7ce;font-size:11px;margin-inline-start:auto}.review-order-btn{border:0;border-radius:9px;background:var(--maroon);color:white;padding:8px 11px;font-weight:800;margin-top:8px}.rating-buttons{display:flex;gap:6px;margin:7px 0 16px}.rating-buttons button{flex:1;border:1px solid var(--line);background:white;border-radius:9px;padding:9px 4px;color:var(--deep)}.rating-buttons button.active{background:var(--maroon);color:white;border-color:var(--maroon)}#reviewForm textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:10px;padding:11px;resize:vertical}
@media(max-width:680px){.callback-form{grid-template-columns:1fr;margin-top:12px}.callback-form>small{grid-column:1}.admin-queue-link{display:inline-block;margin-top:12px}}

/* Local operations dashboard. Production must add authenticated server storage. */
.activity-status.is-complete{color:#18754c}.admin-body{background:#f8f4f5;color:var(--deep);min-height:100vh}.admin-shell{width:min(960px,calc(100% - 28px));margin:0 auto;padding:28px 0 70px}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.admin-header p{margin:3px 0 0;color:var(--muted)}.admin-brand{font-size:31px;font-weight:900;color:var(--maroon);text-decoration:none}.admin-brand small{font-size:.55em}.admin-back{color:var(--maroon);font-weight:800;text-decoration:none}.admin-warning{display:flex;gap:12px;background:#fff3cd;border:1px solid #f0d98a;border-radius:13px;padding:13px 15px;margin-bottom:24px}.admin-warning span{color:#6b5918}.admin-section{background:white;border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:15px}.admin-section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:13px}.admin-section-head span{font-size:10px;color:var(--maroon);font-weight:900;letter-spacing:.11em}.admin-section-head h1,.admin-section-head h2{margin:3px 0 0;font-size:25px}.admin-section-head>b{background:var(--rose-2);color:var(--maroon);border-radius:99px;padding:7px 10px;font-size:12px}.admin-list{display:grid;gap:9px}.admin-row{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);padding:14px 0}.admin-row:first-child{border-top:0}.admin-row h3{margin:4px 0;font-size:16px}.admin-row p,.admin-row small{margin:0;color:var(--muted)}.admin-status{font-size:9px;letter-spacing:.1em;font-weight:900;color:#b06c00}.admin-status.done,.admin-done{color:#18754c}.admin-row button{border:0;border-radius:10px;background:var(--maroon);color:white;padding:10px 13px;font-weight:800;white-space:nowrap}.admin-empty{color:var(--muted)}
@media(max-width:620px){.admin-header,.admin-warning,.admin-row{align-items:flex-start;flex-direction:column}.admin-row button{width:100%}.admin-section{padding:16px}}

/* UX refinement: visible progress, clearer support hierarchy and accessible actions. */
.booking-journey{list-style:none;margin:15px 0;padding:0;display:flex;gap:0;overflow-x:auto;scrollbar-width:none}.booking-journey::-webkit-scrollbar{display:none}.booking-journey li{position:relative;display:flex;align-items:center;gap:7px;min-width:max-content;padding-inline-end:30px;color:var(--muted);font-size:11px;font-weight:800}.booking-journey li:not(:last-child):after{content:"";position:absolute;inset-inline-end:8px;width:14px;height:1px;background:var(--line)}.booking-journey b{width:25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:white}.booking-journey .done b{background:#e5f6ef;border-color:#aedecb;color:#18754c}.booking-journey .current{color:var(--maroon)}.booking-journey .current b{background:var(--maroon);border-color:var(--maroon);color:white}.monthly-estimate{margin-top:13px;padding:13px;border:1px solid #735364;border-radius:11px;background:#2f1420}.monthly-estimate small,.monthly-estimate strong,.monthly-estimate span{display:block}.monthly-estimate small{font-size:9px;letter-spacing:.09em;color:#d8c7ce}.monthly-estimate strong{font-size:22px;margin:3px 0;color:white}.monthly-estimate span{font-size:11px;color:#d8c7ce}.care-links .support-primary{background:#dff8ef}.care-links .support-primary small,.care-links .support-primary b{color:#116746}.success-modal{text-align:center}.success-check{margin:0 auto 10px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e5f6ef;color:#18754c;font-size:27px;font-weight:900}.success-reference{background:var(--rose-2);border-radius:11px;padding:11px;margin-top:16px}.success-reference small,.success-reference strong{display:block}.success-reference small{color:var(--muted);font-size:9px;letter-spacing:.1em}.success-reference strong{margin-top:3px;color:var(--maroon);font-size:18px}.success-modal>button:not(.modal-close){width:100%;margin-top:15px}.order-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:10px}.order-flow span{position:relative;padding-top:9px!important;font-size:8px!important;text-align:center;color:var(--muted)!important}.order-flow span:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;border-radius:99px;background:var(--line)}.order-flow span:first-child:before,.order-flow.complete span:before{background:#23825c}.order-flow.complete span{color:#18754c!important}.how,.market,.hero{scroll-margin-top:74px}button,a,input,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #e08aa6}.option-rail button,.monthly-options button,.timings button,.category-nav button,.care-links a{min-height:44px}
[dir=rtl] .option-rail,[dir=rtl] .monthly-options,[dir=rtl] .timings,[dir=rtl] .booking-journey{direction:rtl}[dir=rtl] .booking-summary{text-align:right}[dir=rtl] .summary-price{text-align:left}
[dir=rtl] .top-brand{direction:ltr}
@media(max-width:680px){.booking-journey{margin:12px -2px}.booking-journey li{padding-inline-end:24px}.monthly-estimate strong{font-size:20px}.success-modal{padding:23px}.customer-care .care-links{display:grid;grid-template-columns:1fr 1fr}.customer-care .care-links a:first-child{grid-column:1/-1}.callback-form>button{min-height:44px}.order-flow{overflow-x:auto}.order-flow span{min-width:62px}}
@media(max-width:380px){.customer-care .care-links{grid-template-columns:1fr}.customer-care .care-links a:first-child{grid-column:auto}.booking-summary{grid-template-columns:minmax(0,1fr) auto}.summary-price{display:none}}
@media(min-width:981px){.provider-select{grid-template-columns:minmax(190px,1.45fr) repeat(3,minmax(82px,.65fr)) auto}}

/* Persistent booking confirmation and duplicate-request protection. */
.summary-status{color:#18754c!important;font-weight:900;font-size:10px!important;margin-top:5px!important}.summary-status:empty{display:none}.booking-summary.confirmed{border-color:#8ed1b7;box-shadow:0 18px 55px rgba(24,117,76,.18)}.summary-book.confirmed{background:#18754c}.summary-book.confirmed:hover{background:#105f3d}
@media(max-width:680px){.booking-summary.confirmed{padding-block:9px}.summary-status{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* Customer session control. */
.account-profile-copy{min-width:0;flex:1}.account-profile-copy b,.account-profile-copy small{display:block}.account-profile-copy small{margin-top:2px;color:var(--muted)}.logout-btn{min-height:40px;border:1px solid #d9a8b9;border-radius:10px;background:white;color:var(--maroon);padding:8px 13px;font-weight:900}.logout-btn:hover{background:#fff5f8}
@media(max-width:420px){.account-profile{align-items:flex-start;flex-wrap:wrap}.account-profile-copy{min-width:calc(100% - 58px)}.logout-btn{width:100%}}

/* Customer review samples. */
.customer-reviews{max-width:1180px;margin:74px auto 0;padding:0 20px;scroll-margin-top:74px}.reviews-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px}.reviews-heading>div:first-child{max-width:680px}.reviews-heading>div:first-child>span{color:var(--maroon);font-size:11px;font-weight:900;letter-spacing:.11em}.reviews-heading h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.045em;margin:7px 0 8px}.reviews-heading p{color:var(--muted);line-height:1.5;margin:0}.reviews-score{text-align:end;min-width:150px}.reviews-score strong,.reviews-score span,.reviews-score small{display:block}.reviews-score strong{font-size:34px;line-height:1}.reviews-score span{color:#c08718;letter-spacing:2px;margin:4px 0}.reviews-score small{color:var(--muted)}.customer-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-review-card{background:white;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 8px 24px rgba(55,20,33,.05)}.customer-review-top{display:flex;align-items:center;gap:10px}.review-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--rose);color:var(--maroon);font-weight:900;flex:0 0 auto}.customer-review-top>div{min-width:0;flex:1}.customer-review-top b,.customer-review-top small{display:block}.customer-review-top small{color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-review-top>strong{color:#a8730c;white-space:nowrap}.customer-review-card blockquote{margin:16px 0;color:var(--deep);line-height:1.55}.verified-review{color:#18754c;font-size:10px;font-weight:900;letter-spacing:.06em}.sample-disclaimer{display:block;color:var(--muted);margin-top:12px;text-align:center}
@media(max-width:680px){.customer-reviews{margin-top:48px;padding:0 14px}.reviews-heading{align-items:flex-start;flex-direction:column;gap:12px}.reviews-score{text-align:start}.customer-review-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.customer-review-card{min-width:min(84vw,340px);scroll-snap-align:start}}
[dir=rtl] .reviews-score{text-align:start}[dir=rtl] .customer-review-grid{direction:rtl}
