:root{--navy:#0754b8;--navy-deep:#082f63;--red:#ed2635;--red-dark:#c91f2d;--cream:#f4f7fb;--ink:#172231;--muted:#5d6b7c;--line:#dbe4ee;--surface:#fff;--shadow-soft:0 12px 36px rgba(10,42,82,.1);--shadow-strong:0 24px 64px rgba(3,31,70,.22)}
body{background:#fff;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-rendering:optimizeLegibility}
.topbar,.utility-bar{background:#082f63;padding:.55rem 1rem;font-size:.82rem;font-weight:800;letter-spacing:.02em;box-shadow:none}
header,.site-header{background:rgba(237,38,53,.97);backdrop-filter:blur(14px);box-shadow:0 8px 24px rgba(22,34,49,.14)}
.header-inner{max-width:1180px;padding:.72rem 1.25rem}
.brand img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.12))}
.header-book,.header-phone,.btn,.primary,.secondary,.submit-btn{border-radius:12px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.header-book:hover,.header-phone:hover,.btn:hover,.primary:hover,.secondary:hover,.submit-btn:hover{transform:translateY(-1px)}
.hero{position:relative;isolation:isolate;overflow:hidden;padding:4.25rem 1.25rem;background:radial-gradient(circle at 78% 12%,rgba(71,154,255,.32),transparent 34%),linear-gradient(135deg,#082f63 0%,#0754b8 58%,#0b67ca 100%)}
.hero:after{content:"";position:absolute;z-index:-1;inset:auto -8% -52% 38%;height:520px;border-radius:50%;background:rgba(255,255,255,.055);transform:rotate(-12deg)}
.hero-inner{max-width:1180px;gap:3rem}
.badge{padding:.38rem .82rem;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);font-size:.76rem;letter-spacing:.025em}
h1{max-width:760px;font-size:clamp(2.35rem,5vw,4.15rem);line-height:1.02;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 3px 18px rgba(0,0,0,.14)}
.sub,.subhead{max-width:680px;color:#e5eef9;font-size:1.08rem;line-height:1.65}
.btn,.primary,.submit-btn{box-shadow:0 10px 24px rgba(3,31,70,.18)}
.intent-panel{border-radius:16px;padding:1.1rem;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);backdrop-filter:blur(10px)}
.intent-grid span{border-radius:10px;padding:.62rem}
.hero-media{border:1px solid rgba(255,255,255,.22);border-radius:20px;box-shadow:var(--shadow-strong);transform:translateZ(0)}
.hero-media img{height:370px}
.form-section{padding:4rem 1.25rem;background:linear-gradient(180deg,#f8fafc,#eef3f8)}
.sched-head{margin-bottom:1.8rem}.sched-head h2,.section-head h2{font-size:clamp(1.8rem,3vw,2.35rem);letter-spacing:-.025em}
.sched-grid{max-width:1060px;gap:1.5rem}
.form-wrap,.call-card,.hero-card,.slot-panel,.done-panel{border:1px solid rgba(215,226,238,.9);border-radius:20px;box-shadow:var(--shadow-soft)}
.form-wrap{padding:2rem}.call-card{padding:2rem;background:linear-gradient(145deg,#0754b8,#083d83)}
input,select,textarea{border-radius:11px!important;border-color:#cfdbe8!important;background:#fbfdff!important;min-height:48px;transition:border-color .2s ease,box-shadow .2s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:#2679d8!important;box-shadow:0 0 0 4px rgba(38,121,216,.12)!important}
.services,.reviews,.terms{padding-top:4rem;padding-bottom:4rem}
.svc-card,.review-card,.service-card,.service-strip figure{overflow:hidden;border:1px solid #e0e7ef;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(16,49,87,.08);transition:transform .2s ease,box-shadow .2s ease}
.svc-card:hover,.review-card:hover,.service-card:hover,.service-strip figure:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(16,49,87,.13)}
.stars{color:#efb316;letter-spacing:.12em}.mobile-call{box-shadow:0 -8px 28px rgba(13,38,70,.18)}
html,body{max-width:100%;overflow-x:hidden}.hero-inner,.hero-inner>*,.sched-grid,.sched-grid>*,.intent-panel,.form-wrap{min-width:0;max-width:100%}@media(max-width:760px){.topbar,.utility-bar{font-size:.76rem;white-space:normal;overflow:hidden}.header-inner{padding:.62rem 1rem}.hero{padding:2.7rem 1rem 3.2rem}.hero-inner,.sched-grid,.intent-grid{grid-template-columns:minmax(0,1fr);gap:1.7rem}h1{font-size:clamp(2.25rem,11vw,3.2rem)}.sub,.subhead{font-size:1rem}.hero-media img{height:290px}.form-section{padding:3rem 1rem}.form-wrap,.call-card,.hero-card{border-radius:16px;padding:1.35rem}.cta-row,.hero-actions{gap:.65rem}.btn,.primary,.secondary,.submit-btn{min-height:50px}}
