/* CarWash Tomelloso — capa visual premium V3.
   La lógica de reservas, los enlaces y assets/site.js no se modifican. */
:root{--bg:#07111b;--surface:#101e2b;--surface2:#142535;--line:#2a4051;--text:#f5f9fc;--muted:#b1c2d0;--blue:#35c6ff;--blue2:#9cecff;--radius:22px;--wrap:1240px}
html{scroll-padding-top:100px}
body.premium-v3{background:#07111b;color:#f5f9fc;line-height:1.65;-webkit-font-smoothing:antialiased}
body.premium-v3::selection{background:#35c6ff;color:#07111b}
body.premium-v3 h1,body.premium-v3 h2,body.premium-v3 h3{letter-spacing:-.053em}
body.premium-v3 p{color:#b0c2d2}
.wrap{width:min(var(--wrap),calc(100% - 96px))}
.kicker{font-size:11px;letter-spacing:.21em;color:#6bd9ff;display:inline-block;font-weight:850}
.muted-title{color:#8aa5b9}
.gradient-text{background:linear-gradient(120deg,#fff 0%,#b0f0ff 30%,#43c6ff 72%,#168dd9 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.topbar{background:#07101a;border-bottom:1px solid #ffffff12}
.topbar-inner{height:38px;font-size:11px;letter-spacing:.055em;color:#abc0d2}
.site-header{background:#091521f2;border-bottom:1px solid #34506866;box-shadow:0 14px 40px #0209102f}
.navbar{min-height:86px}
.brand-icon{width:49px;height:49px;border-radius:11px;background:linear-gradient(135deg,#205878,#091b29 75%);border-color:#3ba8d9;box-shadow:inset 0 1px 0 #99dfff55,0 9px 28px #009dff18}
.brand-copy strong{font-size:22px;letter-spacing:-.063em}
.brand-copy small{color:#c0d4e2;letter-spacing:.39em}
.main-nav{gap:32px;font-size:13px}
.main-nav>a:not(.nav-cta){transition:color .2s}
.main-nav>a:not(.nav-cta):hover{color:#73deff}
.button,.nav-cta{border-radius:11px;font-weight:850;letter-spacing:-.005em;box-shadow:none;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}
.button{min-height:56px;padding:14px 24px}
.button-primary,.nav-cta{background:#37c4f7;color:#041522;border-color:#37c4f7}
.button-primary:hover,.nav-cta:hover{background:#8fe5ff;box-shadow:0 12px 30px #1bb8ff30;transform:translateY(-2px)}
.button-outline{background:#ffffff06;border:1px solid #6d8da0;color:#f0f9ff}
.button-outline:hover{background:#ffffff10;border-color:#a1e7ff}
.text-link{color:#79dfff}
.section{padding:116px 0}
.section-heading{margin-bottom:45px;gap:65px}
.section-heading h2{font-size:clamp(42px,4.25vw,68px);margin-top:16px}
.section-heading p{font-size:16px;line-height:1.8;color:#a5bccd;max-width:375px}
/* PORTADA: composición editorial y viñeta de automóvil */
.hero{background:radial-gradient(ellipse at 72% 52%,#194763 0%,transparent 47%),radial-gradient(ellipse at 18% 8%,#122b3c 0%,transparent 40%),#091421;isolation:isolate}
.hero::before{opacity:.32;background-size:70px 70px}
.hero::after{content:"";position:absolute;width:38vw;height:38vw;right:1%;top:5%;background:radial-gradient(circle,#178dcb29,transparent 68%);filter:blur(38px);pointer-events:none}
.hero-layout{min-height:685px;grid-template-columns:1.01fr .99fr;gap:20px}
.hero-copy{padding:86px 0 86px;z-index:3}
.hero h1{font-size:clamp(56px,6.6vw,100px);font-weight:880;letter-spacing:-.075em;line-height:.99;margin:27px 0 29px;text-wrap:balance}
.hero-lead{font-size:17px;max-width:505px;line-height:1.9;color:#b3c9d9}
.mini-tag{font-size:10px;background:#0c283a;border-color:#3c718a;padding:10px 16px;color:#b7e8f8}
.hero-actions{margin:38px 0 30px;gap:14px}
.hero-points{gap:22px;font-size:12px;color:#bdd2df}
.hero-points>span{display:inline-flex;align-items:center;gap:5px}
.hero-visual{height:600px;margin-right:-69px;isolation:isolate}
.hero-visual::before{left:2%;top:17%;bottom:12%;background:radial-gradient(ellipse,#009dff62,transparent 69%);filter:blur(44px)}
.hero-visual-grid{opacity:.21}
.hero-rings{position:absolute;inset:8% 0 8% 1%;border:1px solid #6ed7ff24;border-radius:50%;transform:rotate(-15deg) scale(1,.8);z-index:-1}
.hero-rings::after{content:"";position:absolute;inset:15%;border:1px solid #70cfff17;border-radius:50%}
.hero-visual img{min-width:590px;width:110%;filter:drop-shadow(0 38px 36px #000b);transform:translate(-5px,10px)}
.visual-note{left:15%;bottom:91px;padding:16px 19px;border-radius:11px;background:#071521eb;box-shadow:0 13px 44px #0005;border-color:#457c96;font-size:10px}
.visual-index{top:75px;right:15%;color:#8cc9e7}
.service-editorial{text-align:center;padding:14px;background:#07111b;border-top:1px solid #325a7033;color:#658ea8;letter-spacing:.32em;font-weight:850;font-size:9px}
.strip{border-color:#28536b;background:#0e202e}
.strip-inner{min-height:70px;color:#96b6cb}
/* SERVICIOS: imágenes vectoriales editoriales independientes */
.services-section{background:#08131e}
.services-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:19px}
.service-card,.service-card:nth-child(n+4){min-height:386px;padding:0;position:relative;border:1px solid #315368;border-radius:19px;background:linear-gradient(180deg,#122838,#0b1b29);box-shadow:0 12px 38px #00000020;overflow:hidden;display:flex;flex-direction:column;isolation:isolate}
.service-card:nth-child(n+4){min-height:373px}
.service-card::after{content:"";position:absolute;top:185px;right:-48px;width:150px;height:150px;background:#2fbaff16;border-radius:50%;filter:blur(25px);pointer-events:none;z-index:-1}
.service-card:hover{border-color:#58d0fb;transform:translateY(-7px);box-shadow:0 24px 50px #020a14aa}
.service-scene{height:190px;display:block;flex-shrink:0;overflow:hidden;position:relative;background:#102536;border-bottom:1px solid #42677a66}
.service-scene::after{content:"";inset:0;position:absolute;background:linear-gradient(180deg,transparent 55%,#0d1c2a 100%);pointer-events:none}
.service-scene img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .65s cubic-bezier(.17,.67,.34,1)}
.service-card:hover .service-scene img{transform:scale(1.07)}
.service-top{order:-1;position:absolute;top:15px;left:18px;right:18px;z-index:2;align-items:center}
.service-icon{width:44px;height:44px;background:#071a2bb8;border:1px solid #77cdfc77;backdrop-filter:blur(8px);color:#adf1ff;border-radius:12px}
.service-no{color:#c1d9e9;background:#071a2bb9;border:1px solid #467b9966;border-radius:30px;padding:8px 10px;letter-spacing:.09em}
.service-card-title{font-size:clamp(22px,2.1vw,31px);margin:24px 24px 6px;line-height:1.12;letter-spacing:-.045em;position:relative;z-index:1}
.service-short{font-size:13px;margin:0 24px;color:#a3bacb;position:relative;z-index:1}
.service-bottom{font-size:12px;margin:0 24px 22px;padding-top:16px;color:#8de3ff;border-top:1px solid #668aa433;position:relative;z-index:1}
.services-grid .service-card:nth-child(n+4) .service-scene{height:185px}
/* DIFERENCIACIÓN DEL BLOQUE MANIFIESTO */
.feature-section{background:linear-gradient(130deg,#0f1e2b,#0b1925);border-top:1px solid #37526654}
.feature-layout{gap:88px}
.feature-visual{min-height:570px;border-radius:25px;border-color:#3d657a;background:#0b2433;box-shadow:0 25px 70px #0004}
.feature-visual::after{opacity:.25}
.feature-illustration{position:absolute!important;width:100%;height:100%;object-fit:cover;inset:0;opacity:.45;filter:saturate(.8)}
.feature-watermark{z-index:1;top:-88px;left:-45px;font-size:490px;color:#ecfaff0a}
.feature-frame{min-height:360px;width:78%;padding:56px 40px;background:#071622b3;border-color:#acecff6e;box-shadow:0 24px 80px #0006;backdrop-filter:blur(9px)}
.feature-frame p{color:#d0e8f7}
.feature-copy h2{font-size:clamp(40px,4.3vw,67px);line-height:1.03}
.feature-list>div{padding-top:21px}
.feature-list h3{font-size:17px}
.feature-list p{line-height:1.7}
.how-section{background:#08131c}
.steps-grid{gap:18px}
.steps-grid>div{padding:37px 35px;min-height:250px;background:linear-gradient(155deg,#122638,#0c1a27);border:1px solid #34546a;border-radius:17px;position:relative;overflow:hidden}
.steps-grid>div::after{content:"";position:absolute;right:-75px;top:-72px;width:180px;height:180px;border:1px solid #62b5de33;border-radius:50%}
.step-num{color:#5dccf8;font-size:14px}
.steps-grid h3{font-size:25px}
.steps-grid p{font-size:14px;line-height:1.7}
.visit-section{background:radial-gradient(ellipse at 15% 75%,#16415b55,transparent 55%),#102536}
.visit-layout{gap:80px}
.visit-layout h2{font-size:clamp(45px,5.2vw,72px)}
.hours-panel{padding:35px 38px;border-radius:19px;background:#071724;border:1px solid #416479;box-shadow:0 23px 54px #0003}
.panel-head{color:#d6efff}
.schedule>div{border-color:#34536a}
.hours-address{color:#95b3c9}
.bottom-promo{border-color:#325773;background:radial-gradient(ellipse at 70% 0%,#164c6b 0%,transparent 55%),#091723;padding:85px 0}
.bottom-promo-inner{gap:55px}
.bottom-promo h2{font-size:clamp(43px,4vw,64px)}
.site-footer{background:#060f18;border-color:#34495a44}
.footer-grid{gap:60px}
.footer-grid p{line-height:1.8}
.footer-bottom{border-color:#3552686b}
/* PÁGINAS DE SERVICIO: gráficas específicas + composición simétrica */
.inner-hero{padding:67px 0 82px;background:radial-gradient(ellipse at 78% 40%,#16445b77,transparent 48%),linear-gradient(140deg,#081421,#0e2434);border-bottom:1px solid #375b6d}
.inner-hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.95fr);gap:68px}
.breadcrumbs{margin-bottom:51px;color:#a5bbca}
.inner-hero h1{font-size:clamp(49px,5.3vw,76px);line-height:1.055;letter-spacing:-.065em;max-width:740px}
.inner-lead{font-size:18px;line-height:1.75;max-width:610px;color:#bed0dd}
.inner-hero .button{margin-top:20px}
.inner-hero-art{height:380px;min-height:380px;overflow:hidden;border-radius:22px;border:1px solid #59879c;background:#0b2332;box-shadow:0 25px 75px #0005;isolation:isolate}
.inner-hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#05111cdc,transparent 45%);pointer-events:none}
.inner-hero-art>img{height:100%;width:100%;object-fit:cover;object-position:center;display:block}
.inner-hero-art>span{z-index:1;bottom:24px;left:25px;letter-spacing:.17em;font-size:10px;color:#b2e3f3}
.inner-hero-art>span.visual-caption{left:auto;right:22px;bottom:24px;max-width:40%;text-align:right;color:#86cee8;font-size:9px}
.inner-content{background:#08131d}
.details-layout{gap:100px;align-items:start}
.details-layout h2,.related-section h2{font-size:clamp(39px,4vw,61px)}
.body-large{font-size:17px;line-height:1.9;color:#b8cad7}
.detail-step{padding:24px 0;border-color:#35546a}
.detail-step>span{font-size:13px}
.detail-step h3{font-size:19px}
.detail-step p{font-size:14px;line-height:1.75}
.service-showcase{background:#0e1f2c;border-top:1px solid #28485e;border-bottom:1px solid #28485e;padding:79px 0}
.showcase-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:85px;align-items:center}
.showcase-picture{position:relative;border:1px solid #3b6178;border-radius:21px;overflow:hidden;box-shadow:0 24px 75px #0005}
.showcase-picture img{display:block;width:100%;height:auto;aspect-ratio:900/540;object-fit:cover}
.showcase-picture::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#061521c9,transparent 28%);pointer-events:none}
.illustrative-note{position:absolute;bottom:17px;left:23px;font-size:10px;letter-spacing:.17em;font-weight:700;color:#e4f4fc;z-index:2}
.showcase-copy h2{font-size:clamp(38px,4.2vw,60px);line-height:1.06;margin:20px 0 25px;text-wrap:balance}
.showcase-copy p{font-size:17px;line-height:1.85;max-width:495px}
.showcase-line{display:block;color:#8acbe8;border-top:1px solid #3b5870;border-bottom:1px solid #3b5870;margin:34px 0;padding:16px 0;font-size:11px;font-weight:850;letter-spacing:.15em}
.related-section{background:#08131f}
.related-grid{gap:20px}
.related-grid .service-card{min-height:361px}
.related-grid .service-card .service-scene{height:172px}
/* RESERVAS: modifica solo su presentación, no inputs, IDs, funciones ni validación */
.short-hero{padding:54px 0 66px}
.short-hero h1{font-size:clamp(52px,5.5vw,81px);max-width:850px}
.short-hero .breadcrumbs{margin-bottom:38px}
.booking-section{background:radial-gradient(ellipse at 100% 10%,#123c5040,transparent 56%),#081522}
.booking-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.82fr);gap:32px}
.booking{padding:44px;border-radius:22px;border:1px solid #42657a;background:linear-gradient(140deg,#132638,#0c1c2a 75%);gap:25px;box-shadow:0 25px 60px #0004}
.form-section-head{gap:20px}
.form-section-head>span{border-radius:12px;background:#174766;border:1px solid #3986a9;color:#acfdff;min-width:46px;height:46px;display:grid;place-items:center;font-weight:900}
.form-section-head h2{font-size:29px;margin:0 0 7px}
.form-section-head p{font-size:13px;line-height:1.7}
.booking-fields{gap:20px}
.booking label{font-size:13px;gap:10px;color:#e0eff8}
.booking input:not([type=checkbox]),.booking select,.booking textarea{min-height:55px;padding:14px 15px;border-radius:10px;border-color:#567386;background:#071723;color:#f4faff;transition:border-color .2s,box-shadow .2s}
.booking input:not([type=checkbox]):focus,.booking select:focus,.booking textarea:focus{box-shadow:0 0 0 3px #25bdff33;border-color:#58d5ff}
.booking .check{font-size:13px;line-height:1.55;gap:13px}
.booking .check input{accent-color:#37c4f7;width:18px;height:18px;margin-top:3px;flex-shrink:0}
.booking .button-full{min-height:61px;font-size:15px}
.booking-status{border-radius:11px;color:#c4e8fa}
.sidebar-card{border-radius:22px;background:#0d1f2e;border-color:#406077;padding:0 31px 34px;overflow:hidden;box-shadow:0 25px 55px #0003}
.booking-aside-visual{height:162px;margin:0 -31px 28px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#1b709b55,transparent 75%),#081724;border-bottom:1px solid #35586e}
.booking-aside-visual img{width:100%;height:100%;object-fit:contain;transform:scale(1.3) translateY(10px);filter:drop-shadow(0 16px 16px #0007)}
.sidebar-card h2{font-size:39px}
.sidebar-rule{border-color:#375368}
/* CONTACTO: tarjetas editoriales y mapa esquemático (sin engañosos datos de geolocalización) */
.page-contacto main>.section{background:#081521}
.contact-layout{grid-template-columns:1.02fr .98fr;gap:28px}
.contact-cards{gap:17px}
.contact-card{padding:34px 36px;background:linear-gradient(145deg,#13293a,#0e1e2d);border-color:#3b5d71;border-radius:19px;box-shadow:0 12px 40px #0002}
.contact-card:hover{transform:translateY(-4px);border-color:#5ec9fc;box-shadow:0 18px 40px #0004}
.contact-card h2{font-size:clamp(23px,3vw,39px);margin:15px 0 9px}
.contact-card-label,.sidebar-small-title{font-size:11px;color:#86defc}
.contact-card p{font-size:14px}
.hours-panel-contact{padding:34px}
.location-illustration{height:205px;display:flex;flex-direction:column;justify-content:end;margin-top:33px;border:1px solid #52778b;border-radius:15px;overflow:hidden;position:relative;background:radial-gradient(circle at 66% 35%,#1e6b91aa,transparent 34%),#0b2a3b}
.location-illustration::before{content:"";position:absolute;inset:0;background-image:linear-gradient(28deg,transparent 40%,#9cd8ef18 41%,#9cd8ef18 45%,transparent 46%),linear-gradient(114deg,transparent 33%,#a6d6ec12 34%,#a6d6ec12 37%,transparent 38%);opacity:.85}
.map-grid{position:absolute;inset:0;background-image:linear-gradient(#90b4cb18 1px,transparent 1px),linear-gradient(90deg,#90b4cb18 1px,transparent 1px);background-size:35px 35px;transform:rotate(-12deg) scale(1.3)}
.map-path{position:absolute;left:15%;top:8%;width:75%;height:65%;border-left:7px solid #4ccfff66;border-bottom:7px solid #4ccfff66;transform:skew(-27deg) rotate(-9deg);border-radius:60px}
.map-pin{position:absolute;top:22%;left:54%;display:grid;place-items:center;color:#061624;background:#59d8ff;width:40px;height:40px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);font-size:20px;box-shadow:0 0 0 12px #29adf422,0 8px 24px #0006}
.map-pin::first-letter{transform:rotate(45deg)}
.location-caption{position:relative;z-index:2;display:grid;gap:3px;background:#071722d9;padding:15px 19px;border-top:1px solid #4383a3}
.location-caption strong{font-size:16px;color:#effaff}
.location-caption small{font-size:12px;color:#aed4e8}
/* ANIMACIONES discretas y accesibilidad */
a.service-card:focus-visible,.contact-card:focus-visible,.location-illustration:focus-visible{outline:3px solid #9bebff;outline-offset:3px}
@media (max-width:1100px){.wrap{width:calc(100% - 62px)}.hero-layout{grid-template-columns:1fr .9fr}.hero-visual{margin-right:-65px}.hero h1{font-size:clamp(57px,6.7vw,80px)}.feature-layout{gap:45px}.inner-hero-grid{gap:30px}.showcase-grid{gap:45px}.booking-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr)}}
@media (max-width:820px){.wrap{width:calc(100% - 42px)}.navbar{min-height:73px}.main-nav{gap:0;background:#0a1a27}.hero-layout{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:68px 0 5px}.hero h1{font-size:clamp(63px,9.6vw,87px);max-width:730px}.hero-visual{height:390px;margin:0 -8px}.hero-visual img{width:100%;min-width:0;transform:translateY(-9px)}.visual-note{bottom:45px}.section{padding:80px 0}.section-heading{gap:18px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.service-card:nth-child(n+4),.service-card:last-child{grid-column:auto;min-height:385px}.services-grid .service-card:last-child{grid-column:1/-1}.feature-layout,.visit-layout,.details-layout,.inner-hero-grid,.contact-layout,.booking-layout,.showcase-grid{grid-template-columns:1fr;gap:40px}.feature-copy{order:1}.feature-visual{order:2;min-height:390px}.inner-hero{padding:50px 0 65px}.inner-hero-art{min-height:320px;height:320px}.breadcrumbs{margin-bottom:29px}.showcase-grid{gap:30px}.service-showcase{padding:65px 0}.booking-sidebar,.hours-panel-contact{position:static}.steps-grid{grid-template-columns:repeat(2,1fr)}.steps-grid>div:last-child{grid-column:1/-1}.feature-frame{min-height:265px}.service-scene{height:180px}.related-grid .service-card{min-height:345px}.sidebar-card{padding:0 29px 31px}}
@media (max-width:560px){.wrap{width:calc(100% - 36px)}.brand-icon{width:41px;height:41px}.brand-copy strong{font-size:19px}.brand-copy small{font-size:8px}.navbar{min-height:69px}.topbar-inner{height:30px}.topbar-inner span{max-width:220px}.hero-copy{padding:49px 0 3px}.hero h1{font-size:clamp(51px,12vw,68px);line-height:1.01;margin:22px 0 20px}.hero-lead{font-size:15px;line-height:1.8}.mini-tag{font-size:9px;letter-spacing:.11em;padding:8px 12px}.hero-actions{display:grid;grid-template-columns:1fr;gap:11px;margin:26px 0 20px}.hero-actions .button{width:100%;min-height:53px}.hero-points{gap:10px 16px;font-size:11px}.hero-visual{height:255px;margin:5px -20px 0}.hero-visual img{width:112%;max-width:none;transform:translate(-5%, -8%)}.visual-note{bottom:13px;left:9%;padding:8px 11px;font-size:8px}.service-editorial{font-size:8px;letter-spacing:.18em;padding:11px 8px}.strip-inner{min-height:56px}.strip-inner span:nth-child(n+4){display:none}.section{padding:67px 0}.section-heading{margin-bottom:28px}.section-heading h2,.feature-copy h2{font-size:clamp(39px,9.4vw,49px)}.section-heading p{font-size:14px}.services-grid,.steps-grid,.related-grid{grid-template-columns:1fr;gap:17px}.service-card,.service-card:nth-child(n+4),.service-card:last-child{grid-column:auto!important;min-height:367px}.services-grid .service-card:nth-child(n+4) .service-scene,.service-scene{height:178px}.service-card-title{font-size:26px;margin:22px 22px 7px}.service-short{margin:0 22px}.service-bottom{margin:0 22px 19px}.feature-visual{min-height:360px}.feature-frame{width:83%;min-height:265px;padding:31px}.feature-frame p{font-size:30px}.feature-watermark{font-size:420px}.feature-illustration{opacity:.5}.steps-grid>div,.steps-grid>div:last-child{grid-column:auto;min-height:180px;padding:29px}.step-num{margin-bottom:19px}.steps-grid h3{font-size:23px}.visit-layout{gap:34px}.visit-layout h2{font-size:52px}.hours-panel{padding:24px;border-radius:16px}.bottom-promo{padding:67px 0}.bottom-promo h2{font-size:41px}.bottom-promo .button{width:100%;justify-content:space-between}.footer-grid{gap:34px}.footer-bottom{gap:12px}.mobile-cta{padding:10px 17px calc(10px + env(safe-area-inset-bottom));background:#071320f0;border-color:#385b70}.mobile-cta a{border-radius:10px;min-height:49px;padding:12px 17px}.inner-hero{padding:37px 0 52px}.inner-hero h1{font-size:clamp(42px,10.6vw,58px);margin:18px 0}.inner-lead{font-size:15px;line-height:1.78}.inner-hero .button{width:100%;justify-content:space-between}.inner-hero-art{height:230px;min-height:230px;border-radius:17px}.inner-hero-art>span{bottom:15px;left:16px}.inner-hero-art>span.visual-caption{right:14px;bottom:15px;font-size:8px}.breadcrumbs{margin-bottom:27px}.details-layout h2,.related-section h2{font-size:41px}.body-large{font-size:15px}.detail-step h3{font-size:18px}.service-showcase{padding:52px 0}.showcase-copy h2{font-size:41px}.showcase-copy p{font-size:15px}.showcase-line{line-height:1.8}.related-grid .service-card{min-height:350px}.short-hero h1{font-size:clamp(43px,10.8vw,57px)}.short-hero .breadcrumbs{margin-bottom:29px}.booking{padding:25px 19px;border-radius:17px;gap:19px}.booking-fields-three,.booking-fields-two{grid-template-columns:1fr;gap:17px}.form-section-head>span{min-width:42px;height:42px}.form-section-head h2{font-size:25px}.booking input:not([type=checkbox]),.booking select,.booking textarea{min-height:53px}.booking .button-full{min-height:57px}.sidebar-card{padding:0 23px 27px}.booking-aside-visual{margin:0 -23px 25px}.sidebar-card h2{font-size:34px}.contact-card{padding:27px 25px}.contact-card h2{font-size:26px}.hours-panel-contact{padding:25px}.location-illustration{height:180px}.page-reservar-cita .mobile-cta{display:none}.page-reservar-cita{padding-bottom:0}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-scene img{transition:none!important}.service-card,.contact-card{transition:none!important}}
/* Ajuste final: topbar de una línea en pantallas compactas */
@media (max-width:560px){
  .topbar-inner{gap:8px}
  .topbar-inner>span{min-width:0;max-width:none;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}
  .topbar-inner>a{flex-shrink:0;font-size:10px;white-space:nowrap}
}


/* === PREMIUM VISUAL V4 === */
.page-home .hero{background:radial-gradient(ellipse at 85% 18%,#1b4770 0%,transparent 42%),radial-gradient(ellipse at 18% 82%,#0e2740 0%,transparent 38%),linear-gradient(135deg,#050b13 0%,#091523 50%,#0d2235 100%)}
.page-home .hero-visual{margin-right:-20px;height:610px}
.page-home .hero-visual img{width:100%;min-width:0;height:100%;object-fit:cover;object-position:center right;border-radius:24px;border:1px solid #33546a;box-shadow:0 28px 80px #0008;filter:none;transform:none}
.page-home .hero-visual::after{content:"";position:absolute;inset:0;border-radius:24px;background:linear-gradient(90deg,#07111fcc 0%,transparent 34%,transparent 100%);pointer-events:none}
.page-home .visual-note{left:18px;bottom:18px}
.page-home .services-section{background:linear-gradient(180deg,#08111b 0%,#0a1520 100%)}
.page-home .service-card{padding:0;background:linear-gradient(180deg,#102131 0%,#0b1722 100%);border-color:#2e4b60}
.page-home .service-top,.page-home .service-card-title,.page-home .service-short,.page-home .service-bottom{margin-left:22px;margin-right:22px}
.page-home .service-top{margin-top:22px}
.page-home .service-short{display:block;min-height:42px;line-height:1.55}
.page-home .service-bottom{padding-top:20px;padding-bottom:20px}
.page-home .feature-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,11,18,.08) 0%,rgba(4,14,24,.62) 100%);z-index:0}
.page-home .feature-frame{background:linear-gradient(180deg,rgba(7,17,27,.68),rgba(7,17,27,.86));border-color:#86d8ff59;box-shadow:0 20px 60px #0006}
.page-home .hours-panel{position:relative;overflow:hidden}
.page-home .hours-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(6,15,24,.22) 100%);pointer-events:none}
.inner-hero-art,.showcase-picture,.contact-photo,.booking-aside-visual{background:#08131d}
.inner-hero-art img,.showcase-picture img,.contact-photo img,.booking-aside-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.booking-aside-visual{height:220px;margin:0 -31px 28px}
.booking-aside-visual img{transform:none;filter:none}
.showcase-picture img{aspect-ratio:16/9}
.illustrative-note{background:#07121ddf;border:1px solid #4b7690;color:#d6f2ff;padding:8px 10px;border-radius:999px;letter-spacing:.16em;font-size:10px}
.showcase-copy p,.body-large,.detail-step p,.feature-list p,.contact-card p{color:#b9cad8}
.contact-photo{height:220px;border-radius:18px;overflow:hidden;border:1px solid #45677c;margin-bottom:26px;box-shadow:0 18px 50px #0004}
.contact-photo img{display:block}
.hours-panel-contact{overflow:hidden}
.page-contacto .location-illustration{margin-top:24px}
.page-home .service-editorial{background:linear-gradient(90deg,#091420,#0c1824,#091420);color:#85b8cf}
@media (max-width:820px){
  .page-home .hero-visual{height:360px;margin-right:0}
  .page-home .hero-visual img{border-radius:18px}
  .booking-aside-visual{height:190px}
  .contact-photo{height:190px}
}
@media (max-width:560px){
  .page-home .hero-visual{height:280px;margin:10px 0 0}
  .page-home .hero-visual::after{border-radius:18px}
  .page-home .hero-visual img{border-radius:18px}
  .page-home .service-card{min-height:390px}
  .booking-aside-visual{height:165px}
  .contact-photo{height:165px;margin-bottom:20px}
}

/* Premium V5 — tarifas, galería y opiniones verificables */
.v5-pricing-section{background:#07131f}.v5-tariff-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.v5-tariff-card{display:flex;flex-direction:column;overflow:hidden;background:#102438;border:1px solid #315369;border-radius:17px;transition:transform .2s,border-color .2s}.v5-tariff-card:hover{transform:translateY(-4px);border-color:#46c6ff}.v5-tariff-card img{width:100%;height:140px;object-fit:cover}.v5-tariff-copy{padding:17px;display:flex;flex-direction:column;flex:1}.v5-tariff-copy small{font-size:9px;letter-spacing:.15em;color:#73caef}.v5-tariff-copy h3{font-size:20px;letter-spacing:-.03em;margin:10px 0 7px}.v5-tariff-copy p{font-size:12px;line-height:1.6;margin-bottom:14px}.v5-money{display:block;font-weight:900;color:#fff;font-size:25px;margin-top:auto}.v5-mini-cta{font-size:12px;font-weight:800;color:#77d7ff;margin-top:12px}.v5-pricing-foot{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:26px}.v5-pricing-foot p{max-width:760px;font-size:13px}.v5-pricing-foot strong{color:#fff}
.v5-gallery-section{background:#0b1b29}.v5-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:225px;gap:14px}.v5-gallery-grid figure{position:relative;margin:0;overflow:hidden;border-radius:16px;border:1px solid #31566b;background:#0e2030}.v5-gallery-grid .large{grid-column:span 2;grid-row:span 2}.v5-gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.v5-gallery-grid figure:hover img{transform:scale(1.05)}.v5-gallery-grid figcaption{position:absolute;inset:auto 0 0;padding:35px 18px 17px;background:linear-gradient(transparent,#06111de8);font-weight:800;font-size:14px}.v5-visual-disclosure{font-size:12px;margin:18px 0 0}
.v5-reviews{background:#091521}.v5-reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.v5-reviews h2{font-size:clamp(40px,5vw,66px);margin:17px 0}.v5-reviews p{max-width:530px;font-size:16px;line-height:1.8}.v5-reviews-placeholder{padding:54px 40px;border-radius:23px;background:linear-gradient(145deg,#142d40,#0d1e2c);border:1px solid #426b83;box-shadow:0 25px 75px #0005}.v5-g{display:grid;place-items:center;font-weight:900;font-size:36px;color:#71d9ff;border:1px solid #38617b;border-radius:14px;width:62px;height:62px;margin-bottom:23px}.v5-reviews-placeholder strong{display:block;font-size:26px;line-height:1.2}.v5-reviews-placeholder p{font-size:14px;margin:17px 0}.v5-verification{font-size:11px;color:#80c8e3;letter-spacing:.04em}
.v5-detail-pricing{background:linear-gradient(120deg,#0c2536,#07141f)}.v5-price-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.v5-price-layout h2{font-size:clamp(36px,4vw,59px);margin:19px 0}.v5-price-layout p{font-size:16px;line-height:1.9}.v5-price-focus{border:1px solid #4c8aad;border-radius:23px;background:linear-gradient(145deg,#183448,#0a1d2b);padding:40px;display:grid;gap:16px;box-shadow:0 23px 60px #0005}.v5-price-focus small{color:#a5dcef;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.v5-price-focus strong{font-size:clamp(38px,4vw,64px);letter-spacing:-.07em;color:white;line-height:1.1}.v5-price-focus span{font-size:13px;color:#b2cadd}
.page-tarifas .v5-tariff-list{background:#091622}.page-tarifas .v5-tariff-list h2{font-size:clamp(30px,4vw,50px);margin:18px 0 32px}.v5-tariff-table{border:1px solid #355a70;border-radius:19px;overflow:hidden;margin-bottom:22px}.v5-table-row{display:grid;grid-template-columns:1fr auto auto;gap:32px;align-items:center;padding:25px 30px;border-bottom:1px solid #2c5065;background:#102437}.v5-table-row:nth-child(even){background:#0d1e2d}.v5-table-row:last-child{border-bottom:0}.v5-table-row h2{font-size:21px!important;margin:0 0 8px!important}.v5-table-row p{margin:0;font-size:13px;line-height:1.6}.v5-table-row strong{font-size:23px;white-space:nowrap}.v5-table-row a{color:#78d7ff;font-size:13px;font-weight:800;white-space:nowrap}.v5-disclaimer{font-size:13px;margin:24px 0 30px}
.service-price{display:block;margin:13px 22px 0;color:#bce9fa;font-weight:900;font-size:16px}.service-card .service-card-title{margin-top:8px}
@media(max-width:1100px){.v5-tariff-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.v5-tariff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-reviews-layout,.v5-price-layout{grid-template-columns:1fr;gap:26px}.v5-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px}.v5-gallery-grid .large{grid-column:span 2;grid-row:span 2}.v5-pricing-foot{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.v5-tariff-grid{grid-template-columns:1fr}.v5-tariff-card img{height:210px}.v5-gallery-grid{grid-auto-rows:145px;gap:9px}.v5-gallery-grid figcaption{padding:25px 10px 12px;font-size:11px}.v5-reviews-placeholder,.v5-price-focus{padding:27px}.v5-table-row{grid-template-columns:1fr auto;gap:12px;padding:20px}.v5-table-row a{grid-column:1/-1}.v5-table-row strong{font-size:18px}.v5-tariff-copy h3{font-size:23px}}

/* LIMPIEZA INTEGRAL · V5.1 */
.integral-breakdown{background:linear-gradient(180deg,#0a1723,#101f2d);border-block:1px solid #284b60}
.integral-breakdown h2{max-width:840px;font-size:clamp(34px,4vw,56px);margin:16px 0 18px}
.integral-intro{max-width:790px;font-size:16px;line-height:1.8}
.integral-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.integral-panel{border:1px solid #365d72;border-radius:18px;padding:27px;background:linear-gradient(150deg,#132a3b,#0b1927);box-shadow:0 16px 40px #0002}
.integral-panel h3{font-size:24px;letter-spacing:-.035em;margin:13px 0 18px}
.integral-panel ul{margin:0;padding-left:18px;color:#bcd0db;font-size:14px;line-height:1.8}
.integral-panel li{padding:4px 0}
.integral-note{font-size:13px;color:#a8c0d0;margin:24px 0 0;line-height:1.7}
@media(max-width:850px){.integral-grid{grid-template-columns:1fr}.integral-panel{padding:25px}}
