/*
Theme Name: Aqua Drive Car Wash
Theme URI: https://example.com/
Author: Aqua Drive
Description: Premium animated car wash website with integrated booking management.
Version: 1.2.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: aqua-drive
*/
:root{--bg:#03111d;--panel:#081d2b;--panel2:#0b2738;--cyan:#13c8ff;--lime:#b8ff4f;--text:#f6fcff;--muted:#9ab2c1;--line:rgba(90,211,255,.25)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;background-image:radial-gradient(circle at 50% 0,rgba(35,167,211,.08),transparent 45%)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}.wrap{width:min(1280px,calc(100% - 48px));margin:auto}.site-header{position:absolute;top:0;left:0;right:0;z-index:10}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:10px;line-height:1}.brand-mark{width:46px;height:35px;position:relative;border-top:3px solid var(--cyan);border-radius:60% 70% 0 0;transform:skewX(-15deg)}.brand-mark:after{content:"";position:absolute;left:4px;right:0;top:11px;border-top:2px solid var(--cyan);border-radius:50%;transform:rotate(-7deg)}.brand strong{display:block;font-size:19px;letter-spacing:.11em;color:#47d9fa}.brand small{font-size:7px;letter-spacing:.14em;color:#badde7}.menu{display:flex;align-items:center;gap:33px;font-size:13px;font-weight:650}.menu a{transition:color .2s}.menu a:hover{color:var(--cyan)}.outline-btn,.ghost-btn{border:1px solid var(--cyan);border-radius:100px;padding:13px 24px;background:rgba(1,19,31,.55);font-size:13px;font-weight:800;box-shadow:inset 0 0 20px rgba(0,186,255,.09);transition:transform .2s,background .2s}.outline-btn:hover,.ghost-btn:hover{transform:translateY(-3px);background:#07334a}.menu-toggle{display:none;background:none;border:0;color:white;font-size:28px}.hero{position:relative;min-height:695px;overflow:hidden;display:flex;align-items:center;background:#041321}.hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,#03111e 0%,rgba(3,17,30,.96) 14%,rgba(3,17,30,.62) 43%,rgba(3,17,30,.05) 73%),linear-gradient(0deg,#03111d 0%,transparent 28%),url('assets/hero-car.webp');background-size:cover;background-position:center;animation:hero-reveal 1.5s both}.hero:after{content:"";position:absolute;right:4%;top:12%;width:38vw;height:38vw;max-width:570px;max-height:570px;border:1px solid rgba(30,193,255,.12);border-radius:50%;box-shadow:0 0 0 55px rgba(26,149,215,.025),0 0 90px rgba(0,197,255,.1);pointer-events:none;animation:float 8s ease-in-out infinite}.hero-inner{position:relative;z-index:1;padding-top:95px}.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(20,209,255,.45);color:#80e8ff;border-radius:100px;padding:7px 12px;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;background:rgba(3,30,46,.45)}h1,h2,h3,p{margin-top:0}h1{max-width:640px;margin:22px 0;font-size:clamp(46px,5.3vw,83px);line-height:.99;letter-spacing:-.052em;font-weight:900;text-transform:uppercase;text-shadow:0 4px 30px #03111d}h1 em,h2 em{font-style:normal;color:var(--cyan)}.hero-copy{max-width:420px;color:#c1d3de;font-size:17px;line-height:1.65}.primary-btn{display:inline-flex;justify-content:center;align-items:center;gap:26px;border:0;background:var(--lime);color:#071419;border-radius:100px;padding:17px 27px;font-weight:900;font-size:13px;text-transform:uppercase;box-shadow:0 9px 30px rgba(167,255,57,.27);transition:transform .22s,box-shadow .22s}.primary-btn:hover{transform:translateY(-4px);box-shadow:0 15px 38px rgba(167,255,57,.4)}.hero-points{display:flex;gap:25px;margin-top:40px;color:#d4e9f1;font-size:12px}.hero-points span{display:flex;align-items:center;gap:8px}.hero-points b{font-size:21px;color:var(--cyan)}.floating-pill{position:absolute;z-index:2;right:15%;top:17%;padding:16px 23px;background:rgba(10,41,58,.65);border:1px solid rgba(113,226,255,.35);backdrop-filter:blur(14px);border-radius:17px;transform:rotate(-7deg);box-shadow:0 25px 60px #0006;animation:float 6s ease-in-out infinite}.floating-pill b{color:var(--lime);font-size:28px;float:left;margin-right:13px}.floating-pill small{display:block;color:#c7e3ed}.floating-pill strong{font-size:18px}.stats{position:relative;z-index:2;margin-top:-25px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:15px;background:linear-gradient(120deg,rgba(8,36,53,.94),rgba(3,23,35,.97));backdrop-filter:blur(18px);box-shadow:0 16px 55px #0008;overflow:hidden}.stat{padding:25px 28px;display:flex;gap:17px;align-items:center;position:relative}.stat:not(:last-child):after{content:"";position:absolute;right:0;height:44px;border-right:1px solid #305164}.stat-icon{font-size:29px;color:var(--cyan)}.stat:nth-child(even) .stat-icon{color:var(--lime)}.stat strong{display:block;font-size:25px}.stat small{color:var(--muted);font-size:11px}.section{padding:100px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}.section-head h2,.booking h2,.difference h2{font-size:clamp(31px,3.3vw,49px);letter-spacing:-.045em;line-height:1.05;margin:15px 0 0;text-transform:uppercase}.section-head p{color:var(--muted);max-width:380px;line-height:1.6;margin:0}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{overflow:hidden;border:1px solid #196182;border-radius:17px;background:linear-gradient(160deg,#0c2d42,#051b2a);box-shadow:0 25px 45px #0005;transition:transform .35s,border-color .35s,box-shadow .35s;transform-style:preserve-3d}.service-card:hover{transform:translateY(-10px) rotateX(2deg);border-color:var(--cyan);box-shadow:0 35px 65px #0008,0 0 25px #14b8ee22}.service-visual{height:205px;background:radial-gradient(circle at 60% 70%,#1883b766,transparent 42%),linear-gradient(145deg,#102e44,#061522);display:grid;place-items:center;position:relative;overflow:hidden}.service-visual:before{content:"";position:absolute;inset:20px;border:1px solid #59dbff29;border-radius:50%;transform:rotateX(65deg);box-shadow:0 0 60px #21bafe44}.service-visual span{font-size:110px;line-height:1;filter:drop-shadow(0 20px 20px #0009);transform:rotate(-10deg);transition:transform .35s}.service-card:hover .service-visual span{transform:rotate(-5deg) scale(1.09)}.service-body{padding:22px}.service-icon{display:inline-grid;place-items:center;width:42px;height:42px;color:var(--cyan);border:1px solid var(--cyan);border-radius:50%;font-size:22px}.service-body h3{display:inline;margin-left:10px;font-size:20px}.service-body p{color:var(--muted);font-size:13px;line-height:1.55;margin:15px 0 20px;min-height:40px}.price-line{display:flex;align-items:end;justify-content:space-between}.price-line small{display:block;color:var(--muted);font-size:11px}.price-line strong{color:var(--cyan);font-size:24px}.round-arrow{display:grid;place-items:center;width:43px;height:43px;border:1px solid #167db0;border-radius:50%;color:var(--cyan);font-size:22px;transition:background .2s,color .2s}.round-arrow:hover{background:var(--cyan);color:#00111e}.booking{border:1px solid #2483a8;border-radius:18px;padding:37px;background:radial-gradient(circle at 72% 2%,#155b8060,transparent 42%),linear-gradient(145deg,#09273b,#041523);box-shadow:0 20px 70px #0008}.booking-top{display:flex;justify-content:space-between;align-items:center;gap:25px}.booking-top p{color:var(--muted);margin:10px 0 25px}.booking-trust{display:flex;gap:22px;font-size:12px;color:#d6f1f8}.booking-trust span{display:flex;gap:7px;align-items:center}.booking-trust b{font-size:21px;color:var(--cyan)}.booking-form{display:grid;grid-template-columns:1fr 1.25fr 1.25fr auto;gap:0;border:1px solid #3385a6;border-radius:15px;background:linear-gradient(120deg,#0b3045,#071f2f);box-shadow:inset 0 0 36px #3fd5ff15;overflow:hidden;padding:22px 12px}.form-step{padding:6px 15px;border-right:1px solid #305165;min-width:0}.form-step h3{font-size:13px;margin:0 0 16px;white-space:nowrap}.form-step h3 b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#002131;background:var(--cyan);margin-right:7px}.booking input,.booking select{width:100%;height:42px;border:1px solid #315267;border-radius:8px;background:#061b29;color:#e6f6fc;padding:0 12px;outline:none;color-scheme:dark}.booking input:focus,.booking select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #13c8ff20}.booking input::placeholder{color:#8ba8ba}.form-row{display:flex;gap:7px}.form-row>*{min-width:0}.form-step input+input{margin-top:7px}.form-submit{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:10px 12px}.form-submit .primary-btn{white-space:nowrap}.form-submit small{font-size:10px;color:var(--muted);text-align:center}.form-message{margin:15px 0 0;padding:12px 15px;border-radius:8px;background:#143d38;color:#c6ffe5}.form-message.error{background:#452126;color:#ffd9db}.form-honeypot{position:absolute!important;left:-9999px!important}.difference{padding:110px 0;background:radial-gradient(circle at 60% 30%,#11466955,transparent 42%)}.difference-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;align-items:center}.difference p{color:var(--muted);line-height:1.7}.difference-photo{height:330px;border-radius:18px;border:1px solid #286986;overflow:hidden;background-image:linear-gradient(90deg,#382c2180 0 49.8%,transparent 50%),url('assets/hero-car.webp');background-size:cover;background-position:center;position:relative;box-shadow:0 25px 70px #0009}.difference-photo:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px solid white}.difference-photo:after{content:"↔";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:white;color:#0a2534;width:42px;height:42px;display:grid;place-items:center;font-size:24px}.difference-photo span{position:absolute;top:20px;border:1px solid #ffffff8a;background:#031521bb;border-radius:30px;padding:6px 13px;font-size:11px;font-weight:800}.difference-photo span:first-child{left:20px}.difference-photo span:nth-child(2){right:20px;color:var(--lime)}.feature-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.feature-chips span{border:1px solid #24526a;border-radius:8px;padding:10px;color:#c3e5f1;font-size:11px}.reviews{padding:40px 0 95px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{padding:25px;border:1px solid #225670;border-radius:14px;background:linear-gradient(145deg,#0a2a3d,#071d2b)}.review p{min-height:75px;line-height:1.55;font-size:14px}.review .stars{color:#ffc437;letter-spacing:3px}.review strong{display:block;margin-top:14px;font-size:13px}.review small{color:var(--muted)}.footer{border-top:1px solid #25495c;padding:45px 0 20px;background:#02101a}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:50px}.footer h3{font-size:14px;margin:0 0 15px}.footer p,.footer a,.footer small{display:block;color:#a6becc;font-size:13px;line-height:1.9}.footer a:hover{color:var(--cyan)}.footer-bottom{border-top:1px solid #29485a;margin-top:32px;padding-top:16px;color:#7698aa;font-size:11px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes hero-reveal{from{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes float{50%{transform:translateY(-13px) rotate(-7deg)}}@media(max-width:1000px){.menu{gap:15px}.booking-form{grid-template-columns:1fr 1fr}.form-step:nth-child(2){border-right:0}.form-submit{align-items:stretch}.form-submit .primary-btn{width:100%}.hero{min-height:640px}.hero-bg{background-position:60% center}.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2):after{display:none}}@media(max-width:700px){.wrap{width:min(100% - 32px,540px)}.nav{height:70px}.menu-toggle{display:block}.menu{position:absolute;left:16px;right:16px;top:68px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#092433;border:1px solid #267193;border-radius:14px;padding:10px 20px;box-shadow:0 25px 50px #000a}.menu.open{display:flex}.menu a{padding:12px}.nav>.outline-btn{display:none}.hero{min-height:750px;align-items:flex-start}.hero-bg{background-image:linear-gradient(0deg,#03111d 0%,rgba(3,17,29,.1) 53%,#03111dc9 100%),linear-gradient(90deg,#03111dbb,transparent 65%),url('assets/hero-car.webp');background-size:auto 57%;background-position:58% bottom;background-repeat:no-repeat}.hero-inner{padding-top:112px}h1{font-size:clamp(42px,11vw,67px);max-width:540px}.hero-copy{font-size:14px;max-width:300px}.hero-points{margin-top:23px;gap:13px;font-size:10px;flex-wrap:wrap}.floating-pill{top:auto;bottom:70px;right:6%;padding:10px 14px}.floating-pill strong{font-size:14px}.floating-pill b{font-size:23px}.stats{margin-top:-25px}.stat{padding:17px 14px;gap:8px}.stat strong{font-size:18px}.stat small{font-size:9px}.stat-icon{font-size:22px}.section{padding:70px 0}.section-head{align-items:start;flex-direction:column}.services-grid,.reviews-grid,.difference-grid{grid-template-columns:1fr}.service-visual{height:170px}.service-body p{min-height:0}.booking{padding:25px 16px}.booking-top{display:block}.booking-trust{flex-wrap:wrap;margin-bottom:20px;gap:10px}.booking-form{display:block;padding:10px 15px}.form-step{border-right:0;border-bottom:1px solid #305165;padding:17px 0}.form-submit{padding:20px 0 10px}.difference{padding:65px 0}.difference-grid{gap:30px}.difference-photo{height:230px}.reviews{padding:30px 0 70px}.review p{min-height:0}.footer-grid{grid-template-columns:1fr 1fr;gap:26px}.footer-grid>div:first-child{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

.service-visual{background-size:cover;background-position:center}.service-visual:before{display:none}.service-visual-exterior{background-image:url('assets/exterior.webp')}.service-visual-interior{background-image:url('assets/interior.webp')}.service-visual-full{background-image:url('assets/full.webp')}

.difference-photo{background-image:url('assets/before-after.webp');background-position:center;background-size:cover}

/* Moving spray stays over the car while the headline remains clear. */
.wash-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;mask-image:linear-gradient(90deg,transparent 28%,#000 53%,#000 100%)}
.wash-sheen{position:absolute;z-index:1;pointer-events:none;inset:8% 0 4% 43%;background:linear-gradient(110deg,transparent 0%,rgba(199,245,255,.025) 43%,rgba(223,251,255,.12) 50%,rgba(199,245,255,.025) 57%,transparent 100%);background-size:220% 100%;mix-blend-mode:screen;animation:wash-sweep 5.5s ease-in-out infinite;mask-image:linear-gradient(0deg,transparent 4%,#000 30%,#000 86%,transparent 100%)}
@keyframes wash-sweep{0%,14%{background-position:110% 0}70%,100%{background-position:-110% 0}}
.hero-inner{z-index:2}.floating-pill{z-index:3}
@media(max-width:700px){.wash-canvas{mask-image:linear-gradient(0deg,#000 0%,#000 57%,transparent 83%)}.wash-sheen{inset:43% 0 0 5%}}
@media(prefers-reduced-motion:reduce){.wash-canvas,.wash-sheen{display:none}}

.wash-canvas{mask-image:none}.wash-sheen{opacity:.36}
@media(max-width:700px){.hero-bg{background-size:cover,cover,auto 57%;background-position:center,center,58% bottom;background-repeat:no-repeat}.wash-canvas{mask-image:none}}

/* Booking fields and custom popovers */
.booking-form{overflow:visible}.form-step{display:flex;flex-direction:column;gap:8px}.form-step h3{margin-bottom:10px}.form-row{display:flex;flex-direction:column;gap:8px}.form-step input+input{margin-top:0}.booking-picker{position:relative;width:100%;min-width:0}.booking-picker>.picker-trigger{display:none}.booking-picker.enhanced>select,.booking-picker.enhanced>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;left:12px;top:20px}.booking-picker.enhanced>.picker-trigger{display:flex;width:100%;height:43px;padding:0 12px;align-items:center;gap:10px;border:1px solid #315267;border-radius:8px;background:#061b29;color:#d9edf5;text-align:left;transition:border-color .2s,box-shadow .2s}.booking-picker.enhanced>.picker-trigger:hover,.booking-picker.enhanced>.picker-trigger[aria-expanded=true]{border-color:var(--cyan);box-shadow:0 0 0 3px #13c8ff1c}.picker-symbol{color:var(--cyan);font-size:19px;line-height:1}.picker-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.picker-chevron{color:#8ab8c9;font-size:20px;transition:transform .2s}.picker-trigger[aria-expanded=true] .picker-chevron{transform:rotate(180deg)}.picker-panel{position:absolute;z-index:30;left:0;top:calc(100% + 8px);width:max(100%,290px);max-width:min(340px,calc(100vw - 54px));padding:10px;border:1px solid #307da0;border-radius:14px;background:linear-gradient(145deg,#102f42,#071c2b);box-shadow:0 22px 55px #000b,0 0 25px #11b8f025;backdrop-filter:blur(16px)}.picker-panel[hidden]{display:none}.service-option{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:transparent;color:#eaf8fc;border:1px solid transparent;border-radius:10px;padding:11px;transition:background .2s,border-color .2s}.service-option:hover,.service-option:focus-visible,.service-option.selected{background:#174259;border-color:#258ab4}.service-option .option-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#073951;color:#53d8ff;font-size:21px;flex:none}.service-option .option-text{flex:1;min-width:0}.service-option strong,.service-option small{display:block}.service-option strong{font-size:13px}.service-option small{color:#9dbccc;font-size:10px;line-height:1.4;margin-top:3px}.service-option .option-price{font-size:12px;color:var(--lime);white-space:nowrap;font-weight:800}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin:2px 4px 12px}.calendar-head strong{font-size:14px}.calendar-nav{border:1px solid #34647b;color:#b9e7f5;background:#0a2637;width:30px;height:30px;border-radius:8px}.calendar-nav:hover{border-color:var(--cyan);color:white}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-weekday{font-size:10px;color:#83a7b7;text-align:center;padding:8px 0}.calendar-day{height:34px;border:1px solid transparent;border-radius:8px;color:#d9f1f8;background:transparent;font-size:12px}.calendar-day:hover:not(:disabled),.calendar-day.selected{background:#155071;border-color:var(--cyan);color:white}.calendar-day.today{color:var(--lime);font-weight:800}.calendar-day:disabled{opacity:.3;cursor:not-allowed}.calendar-note,.time-note{color:#8fb5c5;font-size:10px;padding:10px 5px 3px}.time-panel{width:max(100%,310px)}.time-head{font-size:13px;font-weight:800;padding:5px 4px 12px}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-height:220px;overflow-y:auto}.time-slot{border:1px solid #2d5f77;border-radius:8px;padding:9px 4px;background:#0b2a3c;color:#d9f2f9;font-size:12px}.time-slot:hover:not(:disabled),.time-slot.selected{border-color:var(--cyan);background:#155173;color:white}.time-slot:disabled{opacity:.3;cursor:not-allowed}.booking-picker:focus-within .picker-trigger{border-color:var(--cyan)}@media(max-width:700px){.picker-panel{width:100%;max-width:none}.booking-form{overflow:visible}}

/* Service, date and time share a single vertical column. */
.booking-form{grid-template-columns:minmax(0,1.45fr) minmax(0,1.1fr) auto;align-items:stretch}.booking-options{min-width:0;display:flex;flex-direction:column;gap:17px;padding:6px 18px;border-right:1px solid #305165}.booking-options .form-step{min-width:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}.booking-options .form-step:first-child{padding-bottom:17px;border-bottom:1px solid #284b5f}.booking-options .form-step h3{margin:0 0 5px}.booking-options .form-row{width:100%;display:flex;flex-direction:column;gap:8px}.booking-form>.form-step{padding:6px 18px}.booking-form>.form-submit{min-width:210px}@media(max-width:1000px){.booking-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.booking-options{border-right:1px solid #305165}.booking-form>.form-step{border-right:0}.booking-form>.form-submit{grid-column:1/-1;border-top:1px solid #305165;min-width:0}}@media(max-width:700px){.booking-form{display:block}.booking-options{padding:10px 0 18px;border-right:0;border-bottom:1px solid #305165}.booking-form>.form-step{padding:18px 0;border-bottom:1px solid #305165}.booking-form>.form-submit{border-top:0}}
/* Dropdowns float over the form without changing its height. */
.booking{position:relative;z-index:5}.booking-options .picker-panel{position:absolute;top:calc(100% + 8px);bottom:auto;left:0;width:100%;max-width:none;margin-top:0;z-index:50;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3b829e #092534}.booking-options .picker-panel.is-above{top:auto;bottom:calc(100% + 8px)}.booking-options .time-grid{max-height:var(--slot-height,190px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3b829e #092534}.booking-options .time-grid::-webkit-scrollbar,.booking-options .picker-panel::-webkit-scrollbar{width:7px}.booking-options .time-grid::-webkit-scrollbar-thumb,.booking-options .picker-panel::-webkit-scrollbar-thumb{background:#3b829e;border-radius:8px}

.booking-options .picker-panel,.booking-options .picker-panel.is-above{top:calc(100% + 8px);bottom:auto}

.service-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.service-card:hover .service-visual img{transform:scale(1.06)}
