/* Antenas Rapid: identidad propia de servicio técnico. Grafito, blanco y rojo. */
:root{--ink:#242529;--muted:#626367;--brand:#b62435;--deep:#222327;--soft:#f4f3f0;--line:#d9d8d4;--green:#166c42;--white:#fff;--radius:9px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 Arial,Helvetica,sans-serif}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input{font:inherit}a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--brand);outline-offset:4px}svg{display:block}img{max-width:100%}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:16px;top:-100px;z-index:500;background:#fff;padding:12px}.skip:focus{top:12px}.preview{background:#eeece7;text-align:center;font-size:11px;line-height:1.45;padding:6px 12px;color:#505155}.preview b{letter-spacing:.07em}

.eyebrow{display:block;color:var(--brand);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}h1{font-size:clamp(36px,4.1vw,59px);line-height:1.04;letter-spacing:-1.9px;margin:14px 0 18px;color:var(--ink);overflow-wrap:anywhere}.actions{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;min-height:48px;border-radius:var(--radius);font-weight:800;line-height:1.3;background:var(--deep);color:#fff;border:1px solid transparent;box-shadow:0 7px 16px rgba(0,0,0,.08);transition:transform .18s,box-shadow .18s}.btn:hover{text-decoration:none;filter:brightness(.94);transform:translateY(-1px)}.btn.call{background:var(--brand)}.btn.wa{background:var(--green)}.btn.light{background:#fff;color:var(--ink);border-color:var(--line)}
.icon{width:30px;height:30px;flex:none}
.strip{background:#fff;border-bottom:1px solid var(--line)}.strip .wrap{display:flex;justify-content:space-between;gap:12px 22px;padding-block:15px;font-size:12px;font-weight:700;flex-wrap:wrap}.strip span{border-left:3px solid var(--brand);padding-left:10px}.section{padding:48px 0}.section.soft{background:var(--soft)}.section h2{font-size:clamp(25px,2.8vw,35px);line-height:1.15;letter-spacing:-.8px;margin:8px 0 14px;color:var(--ink);overflow-wrap:anywhere}.section-lead{color:var(--muted);margin:0 0 26px;max-width:870px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.section-heading>div{max-width:810px}.text-call{font-size:24px;line-height:1.2;font-weight:900;flex:none;white-space:nowrap}.text-call span{display:block;font-size:11px;font-weight:400;line-height:1.5;color:var(--muted);margin-top:4px}.doorphones{border-bottom:1px solid var(--line)}.doorphone-work{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:var(--soft)}.doorphone-work article{padding:24px}.doorphone-work article+article{border-left:1px solid var(--line)}.work-number{display:block;font-size:13px;font-weight:900;color:var(--brand);letter-spacing:.08em}.doorphone-work h3{font-size:21px;line-height:1.2;margin:10px 0}.doorphone-work p{margin:0;color:var(--muted);font-size:14px}.doorphone-note{font-size:13px;margin:18px 0 0;color:var(--muted)}.doorphone-note strong{color:var(--ink)}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:0}.service-card{position:relative;min-width:0;padding:22px 22px 22px 62px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(29,31,35,.06);scroll-margin-top:115px;overflow-wrap:anywhere}.icon-box{position:absolute;top:24px;left:20px;color:var(--brand)}.service-card h3{margin:0 0 5px;font-size:21px;line-height:1.22}.service-card .short{font-weight:700;font-size:13px;color:var(--ink)}.service-card p{font-size:14px;margin:7px 0 0;color:var(--muted)}.service-card a{display:inline-block;margin-top:12px;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.province-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;border:0;background:transparent}.province-card{position:relative;padding:23px 18px;color:var(--ink);border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(29,31,35,.06)}.province-card:hover{background:#eae7e1;text-decoration:none}.province-card strong{font-size:20px;display:block}.province-card span{display:block;font-size:11px;line-height:1.45;margin-top:4px;color:var(--muted)}.province-card .arrow{font-size:24px;margin-top:12px;color:var(--brand)}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.help-box{align-self:start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand);padding:25px}.help-box h3{margin:0 0 10px;font-size:21px;line-height:1.3}.help-box p{margin:0;color:var(--muted);font-size:15px}.steps{padding:0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;display:flex;gap:15px;margin:19px 0;color:var(--muted);font-size:14px}.steps li:before{content:"0" counter(steps);flex:0 0 25px;color:var(--brand);font-weight:900}.steps strong{display:block;color:var(--ink)}.town-intro{margin:0;color:var(--muted)}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:19px 0;font-weight:700;cursor:pointer}.faq details p{padding:0 0 20px;margin:0;color:var(--muted);max-width:920px}.contact-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 32px;background:var(--deep);color:#fff;border-left:6px solid var(--brand)}.contact-panel h2{color:#fff;margin:0 0 8px;font-size:30px}.contact-panel p{margin:0;color:#dedcdf;font-size:14px}.contact-panel .actions{flex-shrink:0}.breadcrumb{font-size:12px;color:var(--muted);padding-block:13px;display:flex;gap:9px;flex-wrap:wrap}.search-label{display:block;font-size:14px;font-weight:700;margin-bottom:6px}.search-field{width:min(100%,580px);border:1px solid #79797d;border-radius:3px;background:#fff;min-height:48px;padding:10px 14px;font-size:16px}.search-status{font-size:12px;color:var(--muted);margin:10px 0 14px}.alphabet{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 28px}.alphabet a{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--line);font-weight:800;background:#fff;color:var(--ink);border-radius:3px}.alphabet a:hover{background:var(--brand);color:#fff;text-decoration:none}.letter-group{margin:25px 0;scroll-margin-top:120px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px}.letter-group h3{font-size:27px;margin:0;color:var(--brand);line-height:1.5}.town-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;margin:0;padding:0;list-style:none}.town-list li{border-bottom:1px solid var(--line);padding:11px 0;font-size:14px;overflow-wrap:anywhere}.town-list a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.notice{font-size:12px;padding:12px 15px;background:#eeece7;border-left:3px solid #79797d;margin:20px 0;color:#535357}.footer{background:var(--deep);color:#dddcdf;padding:32px 0 24px}.foot-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:30px}.footer strong{color:#fff}.footer p{font-size:13px;line-height:1.7}.footer a{color:#fff}.footer details{font-size:12px;border-top:1px solid #646368;margin-top:22px;padding-top:16px}.footer summary{cursor:pointer}.footer .fine{font-size:11px;color:#c2c1c5;margin-top:20px}.mobilebar{display:none}
@media(max-width:1100px){.province-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.province-card{border-bottom:1px solid var(--line)}.section-heading{display:block}.text-call{display:inline-block;font-size:21px;margin-bottom:15px}.two-col{gap:30px}.contact-panel{align-items:flex-start;flex-direction:column}.contact-panel .actions{width:100%}}
@media(max-width:760px){html{scroll-padding-top:148px}.wrap{width:calc(100% - 32px)}.section{padding-block:34px}.doorphone-work{grid-template-columns:1fr}.doorphone-work article{padding:19px 21px}.doorphone-work article+article{border-left:0;border-top:1px solid var(--line)}.doorphone-work h3{margin:6px 0 8px}.two-col{grid-template-columns:1fr;gap:22px}.service-grid{grid-template-columns:1fr}.service-card{padding-block:21px}.icon-box{top:22px}.province-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.province-card{padding:19px 16px}.town-list{grid-template-columns:repeat(2,minmax(0,1fr))}.letter-group{scroll-margin-top:155px}.service-card{scroll-margin-top:150px}.foot-grid{grid-template-columns:1fr;gap:12px}.strip .wrap{justify-content:flex-start;gap:9px 20px;font-size:11px}.section-heading .text-call{font-size:22px}.contact-panel{padding:24px}}
@media(max-width:640px){body{padding-bottom:calc(56px + env(safe-area-inset-bottom))}.mobilebar{display:grid;grid-template-columns:1fr 1fr;position:fixed;inset:auto 0 0;z-index:60;background:var(--deep);padding-bottom:env(safe-area-inset-bottom)}.mobilebar a{display:flex;align-items:center;justify-content:center;min-height:56px;color:#fff;font-size:15px;font-weight:800;background:var(--brand)}.mobilebar a:last-child{background:var(--green)}}
@media(max-width:480px){.actions .btn{flex:1 1 130px;padding:12px 10px;font-size:14px}.town-list{grid-template-columns:1fr}.letter-group{grid-template-columns:27px minmax(0,1fr);gap:10px}.strip .wrap{display:grid;grid-template-columns:1fr}.contact-panel h2{font-size:26px}}
@media(max-width:359px){.wrap{width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Cabecera compartida: una marca; teléfono a la derecha; menú debajo. */
header{position:sticky;top:0;z-index:40;background:var(--deep);color:#fff;border-bottom:3px solid var(--brand);box-shadow:0 6px 22px rgba(0,0,0,.12)}
.head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:24px;row-gap:8px;padding-block:10px 0}
.brand{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-self:start;min-width:0;width:min(300px,100%);color:#fff;text-decoration:none}
.brand:hover{text-decoration:none}
.brand-filter{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.rapid-brand-logo{display:block;width:100%;height:auto;aspect-ratio:3;object-fit:contain;filter:url(#rapid-logo-contrast)}
.brand-tagline{display:block;align-self:center;margin:-5px 0 8px;font-size:11px;line-height:1.3;color:#dedde0;white-space:nowrap}
.contact-top{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:flex-end;text-align:right;min-width:0;padding-left:24px;border-left:1px solid #5a5b60}
.contact-top a{display:block;color:#fff;font-size:29px;font-weight:900;line-height:1.4;white-space:nowrap;text-decoration:none}
.contact-top small{font-size:12px;color:#dddcdf}
.head nav{grid-column:1/-1;grid-row:2;display:flex;align-items:center;gap:28px;min-width:0;max-width:100%;margin:0;border-top:1px solid #48494e;overflow-x:auto;scrollbar-width:thin;font-size:13px;font-weight:700}
.head nav a{display:flex;align-items:center;justify-content:center;min-height:44px;color:#fff;white-space:nowrap;padding:0 2px}
.head nav a:hover{color:#ffa6b1;text-decoration:none}
/* Hero: texto local intacto, contraste alto y acceso directo a los servicios. */
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:radial-gradient(ellipse at 88% 12%,#572831 0%,transparent 50%),linear-gradient(125deg,#191b20 0%,#292c33 100%);border-bottom:4px solid var(--brand)}
.hero::before{content:"";position:absolute;z-index:-1;right:-100px;top:-160px;width:600px;height:600px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.025),0 0 0 130px rgba(255,255,255,.02);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:64px;align-items:center;padding-block:52px}
.hero-copy{min-width:0}
.hero .eyebrow{color:#ffadb7;font-size:11px;letter-spacing:.12em}
.hero h1{color:#fff;font-size:clamp(36px,4.4vw,62px);line-height:1.05;letter-spacing:-1.8px;margin:16px 0 22px}
.service-statement{color:#fff;font-size:21px;font-weight:700;line-height:1.45;margin:0 0 16px}
.lead{color:#dedde1;font-size:16px;line-height:1.7;max-width:650px;margin:0 0 26px}
.hero .actions{gap:12px}
.hero .btn{min-height:50px;padding:15px 22px}
.hero .btn.call{background:#c6273c}
.hero .btn.wa{background:#166c42;border-color:#448c66}
.micro{color:#c9c8ce;font-size:12px;line-height:1.5;margin:14px 0 0}
.hero .micro a{color:#fff;text-decoration:underline}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px;color:#efedf0;font-size:12px}
.hero-tags span::before{content:"✓";display:inline-block;margin-right:7px;color:#ffadb7;font-weight:900}
.service-desk{min-width:0;padding:26px;background:#fff;color:var(--ink);border:1px solid #e7dce0;border-top:4px solid var(--brand);border-radius:16px;box-shadow:0 24px 48px rgba(0,0,0,.2)}
.desk-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}
.desk-label{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 5px}
.desk-title{font-size:23px;font-weight:800;line-height:1.2;margin:0}
.desk-symbol{display:grid;place-items:center;width:54px;height:54px;flex:none;border-radius:14px;background:#f9e9ec;color:var(--brand)}
.desk-symbol .icon{width:35px;height:35px}
.desk-service{display:flex;align-items:center;gap:13px;padding:17px 0;border-top:1px solid var(--line);color:var(--ink)}
.desk-service:hover{color:var(--brand);text-decoration:none}
.desk-service strong{display:block;font-size:15px;line-height:1.3}
.desk-service small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.desk-service .icon{color:var(--brand);width:28px;height:28px}
.desk-arrow{margin-left:auto;color:var(--brand);font-size:22px;flex:none}
.desk-contact{margin:3px -8px -8px;padding:16px;background:#f5f3f4;border-radius:10px}
.desk-phone{display:block;font-size:34px;line-height:1.25;letter-spacing:-.6px;white-space:nowrap;font-weight:900;color:var(--brand)}
.desk-intro{font-size:12px;color:var(--muted);margin:5px 0 0}
.doorphone-work,.trust-points,.help-box,.contact-panel{border-radius:12px;overflow:hidden}
.brands-block .brand-pills span{border-radius:999px;padding-inline:14px}
@media(max-width:1100px){.hero-inner{gap:32px}.hero h1{font-size:45px}.service-desk{padding:22px}.desk-title{font-size:21px}}
@media(max-width:760px){
 header{position:relative}.head{column-gap:14px;row-gap:5px;padding-top:6px}.brand{width:min(230px,100%)}.brand-tagline{font-size:10px;margin-top:-4px;margin-bottom:6px}.contact-top{padding-left:14px}.contact-top a{font-size:23px}.contact-top small{font-size:10px}.head nav{gap:23px;font-size:12px}.head nav a{min-height:42px}
 .hero-inner{grid-template-columns:1fr;gap:26px;padding-block:30px}.hero h1{font-size:clamp(34px,7vw,46px);letter-spacing:-1px;margin:14px 0 18px}.service-statement{font-size:18px;line-height:1.45;margin-bottom:14px}.lead{font-size:15px;line-height:1.6;margin-bottom:22px}.hero-tags{margin-top:18px;font-size:11px;gap:8px 14px}.service-desk{padding:20px}.desk-title{font-size:22px}.desk-phone{font-size:30px}.desk-service{padding:14px 0}.hero .btn{padding:13px 12px}.breadcrumb{padding-block:11px}
}
@media(max-width:480px){
 .head{column-gap:10px}.brand{width:190px}.brand-tagline{font-size:8px}.contact-top{padding-left:10px}.contact-top a{font-size:19px}.contact-top small{font-size:9px}.head nav{gap:18px;font-size:11px}.hero .eyebrow{font-size:10px}.hero-tags{font-size:10px}.hero .actions .btn{flex:1 1 120px;font-size:14px}.hero::before{width:340px;height:340px;right:-210px;top:-140px}
}
@media(max-width:359px){.brand{width:150px}.brand-tagline{font-size:7px}.contact-top{padding-left:8px}.contact-top a{font-size:17px}.contact-top small{font-size:8px}.head nav{gap:16px}.hero h1{font-size:32px}.service-statement{font-size:17px}.hero-tags{font-size:10px;gap:8px}.desk-title{font-size:20px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}}

/* Calidad visual 2026: más jerarquía sin alterar contenido ni SEO. */
body{background:linear-gradient(#fff 0 72%,#fbfaf8 100%)}
.section{position:relative;padding:64px 0}
.section.soft{background:linear-gradient(180deg,#f6f4f1 0%,#f1efeb 100%)}
.section>.wrap,.section.wrap{position:relative}
.section h2{font-size:clamp(28px,3vw,40px);letter-spacing:-1.15px;margin-bottom:16px}
.section-lead{font-size:16px;line-height:1.72;max-width:900px}
.eyebrow{font-size:10px;letter-spacing:.17em}
.strip{box-shadow:0 10px 26px rgba(20,20,24,.04)}
.strip .wrap{justify-content:flex-start;gap:10px 12px;padding-block:18px}
.strip span{border:1px solid #e7e2df;border-left:3px solid var(--brand);border-radius:999px;background:#fff;padding:7px 12px;font-size:11px;box-shadow:0 3px 10px rgba(20,20,24,.035)}
.service-grid{gap:20px}
.service-card{padding:26px 26px 26px 72px;border-color:#e5e1de;border-radius:16px;box-shadow:0 12px 32px rgba(29,31,35,.07);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.service-card:hover{transform:translateY(-3px);border-color:#d9b7bd;box-shadow:0 20px 38px rgba(29,31,35,.11)}
.service-card .icon-box{top:28px;left:24px;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#faecef}
.service-card h3{font-size:22px;margin-bottom:7px}
.service-card p{font-size:14px;line-height:1.65}
.service-card a{text-decoration:none;border-bottom:1px solid rgba(182,36,53,.35);padding-bottom:2px}
.service-card a:hover{border-color:var(--brand)}
.doorphones{background:#fff}
.doorphone-work{gap:14px;border:0;background:transparent}
.doorphone-work article{border:1px solid #e5e1de!important;border-radius:15px;background:linear-gradient(180deg,#fff,#fbfaf9);box-shadow:0 10px 26px rgba(29,31,35,.055)}
.work-number{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:8px;background:#faecef}
.help-box{border:1px solid #e6dedb;border-left:5px solid var(--brand);border-radius:16px!important;box-shadow:0 14px 30px rgba(29,31,35,.07)}
.steps li{padding:14px 16px;margin:10px 0;border:1px solid #e5e1de;border-radius:12px;background:#fff}
.steps li:before{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;background:#faecef}
.province-grid{gap:16px}
.province-card{padding:26px 20px;border-color:#e4dfdc;border-radius:16px;box-shadow:0 12px 28px rgba(29,31,35,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.province-card:hover{background:#fff;transform:translateY(-3px);border-color:#d8b5bb;box-shadow:0 18px 36px rgba(29,31,35,.10)}
.province-card strong{font-size:21px}
.province-card .arrow{margin-top:18px}
.search-field{border-color:#cfc8c4;border-radius:12px;box-shadow:0 5px 16px rgba(29,31,35,.05);transition:border-color .18s,box-shadow .18s}
.search-field:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(182,36,53,.09)}
.alphabet{gap:8px}
.alphabet a{border-radius:10px;border-color:#ddd7d3;box-shadow:0 3px 9px rgba(29,31,35,.035)}
.letter-group{margin:34px 0}
.letter-group h3{font-size:30px;font-weight:900}
.town-list{gap:10px 16px}
.town-list li{border:1px solid #e5e0dc;border-radius:10px;padding:0;background:#fff;overflow:hidden}
.town-list a{display:block;padding:11px 13px;text-decoration:none;transition:background .16s,color .16s,transform .16s}
.town-list a:hover{background:#faecef;color:#8f1727;transform:translateX(2px)}
.faq details{margin:10px 0;border:1px solid #e4dfdc;border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(29,31,35,.04);overflow:hidden}
.faq summary{padding:18px 20px;list-style:none;position:relative;padding-right:50px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f6eeee;color:var(--brand);font-size:18px;font-weight:900}
.faq details[open] summary:after{content:"−"}
.faq details p{padding:0 20px 20px}
.contact-panel{position:relative;border:0;border-radius:18px!important;padding:36px 38px;background:radial-gradient(circle at 85% 10%,#56303a 0%,transparent 40%),linear-gradient(125deg,#1b1d22,#292c32);box-shadow:0 22px 46px rgba(23,24,28,.16)}
.contact-panel:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--brand);border-radius:18px 0 0 18px}
.contact-panel h2{font-size:clamp(28px,3vw,38px)}
.contact-panel .btn{box-shadow:0 8px 20px rgba(0,0,0,.18)}
.footer{border-top:4px solid var(--brand);background:linear-gradient(180deg,#202126,#18191d);padding-top:40px}
.related-towns{box-shadow:0 12px 30px rgba(29,31,35,.06)!important}
.related-town-links a{transition:background .16s,border-color .16s,transform .16s}
.related-town-links a:hover{transform:translateY(-1px);border-color:#d8b5bb}
@media(max-width:760px){
 .section{padding-block:44px}.section h2{font-size:clamp(27px,7vw,34px)}.section-lead{font-size:15px}.strip .wrap{gap:7px}.strip span{font-size:10px;padding:6px 10px}.service-card{padding:22px 18px 22px 64px;border-radius:14px}.service-card .icon-box{left:18px;top:23px}.province-grid{gap:10px}.province-card{border-radius:13px}.doorphone-work{gap:10px}.town-list{gap:8px}.letter-group{margin:26px 0}.faq details{margin:8px 0}.contact-panel{padding:28px 24px}.contact-panel .actions{width:100%}.contact-panel .btn{flex:1 1 140px}
}
@media(max-width:480px){
 .section{padding-block:38px}.strip .wrap{display:flex;overflow-x:auto;flex-wrap:nowrap;padding-bottom:14px}.strip span{white-space:nowrap;flex:0 0 auto}.province-grid{grid-template-columns:1fr 1fr}.province-card{padding:18px 14px}.province-card strong{font-size:18px}.province-card span{font-size:10px}.town-list{grid-template-columns:1fr}.faq summary{font-size:14px}.contact-panel{border-radius:14px!important}.mobilebar{box-shadow:0 -10px 28px rgba(24,25,29,.14)}
}
@media(prefers-reduced-motion:reduce){.service-card,.province-card,.town-list a,.related-town-links a{transition:none}.service-card:hover,.province-card:hover,.town-list a:hover,.related-town-links a:hover{transform:none}}

/* Corrección de altura del bloque de criterios de trabajo. */
.trust-grid{align-items:start!important}
.trust-grid>div,.trust-points{align-self:start!important}
.trust-points{align-items:start!important;align-content:start!important;height:auto!important;min-height:0!important}
.trust-points article{height:auto!important;min-height:0!important;align-self:start!important;padding:20px 20px!important}
.trust-points strong{line-height:1.3}
.trust-points p{line-height:1.55;margin-top:7px}
@media(max-width:760px){.trust-points article{padding:17px 18px!important}}


/* Cierre legal y privacidad */
.legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:4px 0 16px}
.legal-links a{display:inline-flex;align-items:center;min-height:32px}
.legal-sep{opacity:.45}
.cookie-notice[hidden]{display:none}
.cookie-notice{position:fixed;left:18px;right:18px;bottom:18px;z-index:90;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;width:min(940px,calc(100% - 36px));margin:0 auto;padding:18px 20px;background:#fff;border:1px solid #ddd7d3;border-left:5px solid var(--brand);border-radius:14px;box-shadow:0 22px 54px rgba(20,20,24,.24)}
.cookie-notice-copy strong{display:block;color:var(--ink);font-size:15px}
.cookie-notice-copy p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.cookie-notice-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}
.cookie-notice-actions a{color:var(--brand);font-size:12px;font-weight:850}
.cookie-notice-actions button{min-height:40px;padding:0 17px;border:0;border-radius:9px;background:var(--deep);color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.cookie-notice-actions button:hover{background:var(--brand)}
.legal-top{background:var(--deep);border-bottom:4px solid var(--brand)}
.legal-top-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.legal-home{display:flex;flex-direction:column;color:#fff;text-decoration:none}
.legal-home strong{font-size:24px;letter-spacing:.02em}
.legal-home span{font-size:11px;color:#cac9ce}
.legal-phone{display:flex;flex-direction:column;align-items:flex-end;color:#fff;text-decoration:none}
.legal-phone small{font-size:10px;color:#cac9ce;text-transform:uppercase;letter-spacing:.08em}
.legal-phone strong{font-size:24px}
.legal-page{background:#f6f4f1}
.legal-hero{padding:52px 0 42px;background:linear-gradient(125deg,#191b20,#292c33);color:#fff}
.legal-hero .eyebrow{color:#ffadb7}
.legal-hero h1{margin:8px 0 12px;color:#fff;font-size:clamp(38px,5vw,58px);line-height:1;letter-spacing:-1.6px}
.legal-hero p{max-width:760px;margin:0;color:#d8d7dc;font-size:16px;line-height:1.65}
.legal-content{padding:48px 0 72px}
.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:42px;align-items:start}
.legal-copy{padding:32px;background:#fff;border:1px solid #e2ddda;border-radius:16px;box-shadow:0 12px 30px rgba(29,31,35,.06)}
.legal-copy h2{margin:32px 0 10px;color:var(--ink);font-size:24px;line-height:1.2}
.legal-copy h2:first-child{margin-top:0}
.legal-copy p,.legal-copy li{color:#54545a;font-size:14px;line-height:1.75}
.legal-copy ul{padding-left:20px}
.legal-copy a{color:var(--brand);font-weight:750}
.legal-copy code{padding:2px 6px;border-radius:5px;background:#f2efed;color:#6f1724}
.legal-data{display:grid;margin:18px 0 4px;border-top:1px solid #e3dedb;border-left:1px solid #e3dedb}
.legal-data>div{display:grid;grid-template-columns:170px minmax(0,1fr);border-right:1px solid #e3dedb;border-bottom:1px solid #e3dedb}
.legal-data dt,.legal-data dd{margin:0;padding:12px 14px}
.legal-data dt{background:#f6f4f1;color:var(--ink);font-size:12px;font-weight:850}
.legal-data dd{color:#55545a;font-size:13px}
.legal-aside{position:sticky;top:24px;padding:22px;background:var(--deep);color:#fff;border-top:4px solid var(--brand);border-radius:12px}
.legal-aside strong{display:block;font-size:18px}
.legal-aside p{margin:7px 0 14px;color:#c9c8cd;font-size:12px;line-height:1.5}
.legal-aside a{display:block;padding:10px 0;border-top:1px solid rgba(255,255,255,.12);color:#fff;font-size:13px;font-weight:800}
.legal-aside a[aria-current="page"]{color:#ffadb7}
.legal-updated{margin-top:30px!important;padding-top:17px;border-top:1px solid #e5e0dc;color:#858187!important;font-size:11px!important}
.legal-footer .legal-links{margin-top:8px}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-aside{position:static}}
@media(max-width:640px){
  .cookie-notice{left:10px;right:10px;bottom:68px;width:calc(100% - 20px);grid-template-columns:1fr;gap:12px;padding:15px}
  .cookie-notice-actions{justify-content:space-between;white-space:normal}
  .legal-top-inner{min-height:74px}
  .legal-home strong{font-size:20px}.legal-phone strong{font-size:19px}
  .legal-hero{padding:40px 0 32px}.legal-hero h1{font-size:38px}
  .legal-content{padding:32px 0 100px}.legal-copy{padding:21px 18px;border-radius:13px}
  .legal-data>div{grid-template-columns:1fr}.legal-data dt{padding-bottom:5px}.legal-data dd{padding-top:5px}
  .legal-links{gap:6px 12px}.legal-sep{display:none}
}


/* Hero aprobado Antenas Rapid */
.home-clean-hero{position:relative;isolation:isolate;overflow:hidden;background:#07121d;border-bottom:4px solid var(--brand)}
.home-clean-hero::before{content:''!important;display:block!important;position:absolute!important;inset:0!important;z-index:-1!important;width:auto!important;height:auto!important;right:0!important;top:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:url('/assets/hero-antenasrapid-HQ.jpg') center center/cover no-repeat!important}
.home-clean-hero .hero-inner{display:block;min-height:clamp(500px,45vw,610px);padding-block:58px 52px}
.home-clean-hero .hero-copy{position:relative;z-index:2;width:min(700px,58%)}
.home-clean-hero .service-desk{display:none!important}
.home-clean-hero h1{font-size:clamp(44px,5vw,70px);max-width:690px;margin:15px 0 20px}
.home-clean-hero .service-statement{max-width:650px;font-size:21px}.home-clean-hero .lead{max-width:610px;color:#eef0f2}
.home-clean-hero .hero-tags{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.22);max-width:650px}
@media(max-width:900px){.home-clean-hero::before{background-position:62% 50%!important}.home-clean-hero .hero-copy{width:min(650px,70%)}}
@media(max-width:640px){.home-clean-hero::before{background-position:72% center!important}.home-clean-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,10,17,.38) 0%,rgba(3,10,17,.48) 58%,rgba(3,10,17,.62) 100%)}.home-clean-hero .hero-inner{min-height:0;padding-block:42px 36px}.home-clean-hero .hero-copy{width:100%;text-shadow:0 2px 9px rgba(0,0,0,.9)}.home-clean-hero h1{font-size:clamp(38px,11vw,52px);color:#fff}.home-clean-hero .service-statement{font-size:18px;color:#fff}.home-clean-hero .lead{font-size:15px;color:#fff}.home-clean-hero .micro{color:#f2f3f5}.home-clean-hero .hero-tags{padding:14px;background:rgba(3,10,17,.44);border:1px solid rgba(255,255,255,.14);border-radius:8px;color:#fff}}

/* Cierre móvil sin scroll lateral */
.featured-localities{padding:52px 0;background:#f5f6f7;border-top:1px solid #e2e3e5}.featured-localities h2{margin:7px 0 8px}.featured-lead{max-width:820px;margin:0 0 24px;color:#5d6066}.featured-province-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.featured-province{padding:20px;border:1px solid #dedfe2;background:#fff;border-radius:12px}.featured-province h3{margin:0 0 12px;font-size:20px}.featured-province h3 a{color:#202126}.featured-towns{display:flex;flex-wrap:wrap;gap:7px}.featured-towns a{padding:7px 9px;border:1px solid #e0e1e4;background:#f8f8f9;border-radius:7px;font-size:13px;font-weight:700}.featured-all{display:inline-block;margin-top:14px;color:#c91f25;font-size:13px;font-weight:900}.featured-more{margin-top:12px;border-top:1px solid #ececef;padding-top:10px}.featured-more summary{cursor:pointer;color:#4e5157;font-size:12px;font-weight:900}.featured-more-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.featured-more-links a{font-size:12px;color:#555a61;text-decoration:underline;text-underline-offset:2px}
.rapid-stats{padding:52px 0;background:#202126;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.rapid-stats-head{max-width:760px;margin-bottom:24px}.rapid-stats .eyebrow{color:#f04a4a}.rapid-stats h2{margin:7px 0 8px;color:#fff}.rapid-stats-head p{margin:0;color:#c9ccd2}
.rapid-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rapid-stats-grid article{padding:24px 22px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.045)}
.rapid-stats-grid strong{display:block;font-size:38px;line-height:1;font-weight:900;letter-spacing:-.03em;color:#fff}.rapid-stats-grid span{display:block;margin-top:8px;color:#d8dbe0;font-size:14px;font-weight:700}
@media(max-width:760px){
  .featured-localities{padding:38px 0}.featured-province-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rapid-stats{padding:38px 0}.rapid-stats-grid{grid-template-columns:1fr}.rapid-stats-grid article{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:17px 18px}.rapid-stats-grid strong{font-size:31px}.rapid-stats-grid span{margin-top:0;text-align:right}
  .head nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;overflow-x:visible;scrollbar-width:none}
  .head nav a{white-space:normal;text-align:center;line-height:1.25;padding:7px 4px;min-width:0}
}
@media(max-width:640px){
  .head{grid-template-columns:minmax(0,1fr) auto;column-gap:10px;padding-block:7px 0}
  .brand{width:min(205px,100%)}
  .brand-tagline{font-size:9px;margin:-2px 0 5px}
  .contact-top{padding-left:10px}
  .contact-top a{font-size:20px;line-height:1.15}
  .contact-top small{font-size:10px}
  .urgent-line{gap:3px!important;margin-top:3px!important}
  .urgent-24h{font-size:9px!important;padding:4px 7px!important}
  .head nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:0!important;border-top:1px solid #48494e}
  .head nav a{min-height:44px;padding:7px 2px!important;font-size:0!important;white-space:normal!important;line-height:1.1!important;border-left:1px solid rgba(255,255,255,.08)}
  .head nav a:first-child{border-left:0}
  .head nav a::after{font-size:10px;font-weight:800}
  .head nav a:nth-child(1)::after{content:'Antenas'}
  .head nav a:nth-child(2)::after{content:'Porteros'}
  .head nav a:nth-child(3)::after{content:'4G/5G'}
  .head nav a:nth-child(4)::after{content:'Pueblos'}
  .head nav a:nth-child(5)::after{content:'Contacto'}
  .hero .actions{display:none!important}
}
@media(max-width:480px){
  .featured-province-grid{grid-template-columns:1fr}.featured-province{padding:17px}.featured-localities{padding:32px 0}
  .strip .wrap{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;overflow-x:visible!important;flex-wrap:wrap!important;padding-bottom:14px!important}
  .strip span{white-space:normal!important;min-width:0!important;max-width:100%;display:flex;align-items:center}
  .strip span:last-child{grid-column:1/-1}
}
@media(max-width:380px){
  .brand{width:min(180px,100%)}
  .contact-top a{font-size:18px}
  .head nav a::after{font-size:9px}
}
@media(max-width:359px){
  .strip .wrap{grid-template-columns:1fr!important}
  .strip span:last-child{grid-column:auto}
}
