/*
Theme Name: Transporte y Mudanzas
Description: Tema de captación de leads para transporte y mudanzas: formulario con mapa animado, calculadora de volumen y registro de solicitudes.
Version: 2.13.0
Author: transporteymudanzas.es
Text Domain: tym
Requires PHP: 7.4
*/
.sitehead{background:var(--card);border-bottom:1px solid var(--line)}
.sitehead .in{max-width:var(--w,1280px);margin:0 auto;padding:14px 18px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.logo{font-weight:800;font-size:20px;color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.logo i{background:var(--tape);color:#0F1F3D;font-style:normal;border-radius:6px;padding:0 7px;margin-right:6px}
.nav{margin-left:auto}.nav ul{display:flex;gap:18px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}.nav a:hover{color:var(--route)}
.tel{background:var(--ink);color:var(--bg);border-radius:10px;padding:8px 14px;font-weight:800;text-decoration:none}
.sec{max-width:var(--w,1280px);margin:0 auto;padding:44px 18px}
.sec h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.02em;margin:0 0 20px}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.box h3{margin:0 0 6px;font-size:18px}.box p{margin:0 0 8px;color:var(--mut);font-size:15px}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.steps li{counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.steps li:before{content:counter(s);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--tape);color:#0F1F3D;font-weight:800;margin-bottom:8px}
.steps h3{margin:0 0 4px}.steps p{margin:0;color:var(--mut)}
.cities{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.cities a{background:var(--soft);color:var(--ink);text-decoration:none;border-radius:999px;padding:7px 14px;font-weight:600;font-size:14px;display:inline-block}
.entry{max-width:760px;margin:0 auto;padding:36px 18px}.entry a{color:var(--route)}
.sitefoot{background:var(--ink);color:var(--bg);margin-top:30px}.sitefoot .in{max-width:var(--w,1280px);margin:0 auto;padding:26px 18px;display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;font-size:14px}
.sitefoot a{color:var(--bg)}
.svc{display:flex;gap:6px;margin-bottom:6px}.svc span{flex:1;text-align:center;border:1.5px solid var(--line);border-radius:999px;padding:5px;font-size:13px;font-weight:600;color:var(--mut);transition:all .3s}
.svc span.on{background:var(--route);border-color:var(--route);color:#fff}
.price{margin-top:6px;font-size:15px}.price b{font-size:26px;display:block;line-height:1.2}.price small{display:block;color:var(--mut);font-size:12.5px}
.btn{display:inline-block;background:var(--tape);color:#0F1F3D;font-weight:800;border-radius:12px;padding:12px 20px;text-decoration:none}

:root[data-theme="dark"]{--bg:#0A1428;--card:#12203D;--ink:#EAF0FB;--mut:#9FB0CC;--line:#243557;--tape:#FF8A1F;--route:#6AA2FF;--soft:#172A50;--green:#3DD598;--navy:#07142E;color-scheme:dark}
.sitehead{border-bottom:0;box-shadow:0 1px 0 var(--line)}
.tel{background:var(--tape);color:#0F1F3D}
.hero{background:var(--navy)}
.hero h1{color:var(--onnavy)}.hero .lead{color:var(--onnavy-mut)}.hero .legs{color:var(--onnavy-mut)}.hero .legs li{border-color:rgba(255,255,255,.2)}
.hero .wrap{padding-block:34px 44px}
.trust{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--onnavy);font-weight:600;font-size:15px}
.trust li:before{content:"\2713";color:var(--tape);font-weight:800;margin-right:6px}
.hero form{box-shadow:0 18px 50px rgba(0,0,0,.35);border-color:transparent}
.cta{background:var(--tape);color:#0F1F3D;font-size:18px;padding:16px;box-shadow:0 6px 0 rgba(0,0,0,.18);transition:transform .15s,box-shadow .15s}
.cta:hover{transform:translateY(2px);box-shadow:0 4px 0 rgba(0,0,0,.18)}
.link{color:var(--route)}
.price b{color:var(--green);font-size:30px}
.svc span.on{background:var(--route);border-color:var(--route);color:#fff}
.sec h2{color:var(--ink)}
.box{box-shadow:0 1px 2px rgba(15,31,61,.06)}
.sitefoot{background:var(--navy);color:#fff}.sitefoot a{color:#fff}

.tabs{flex-wrap:wrap}

.man{margin-top:12px;font-size:14px}.manrow{display:flex;gap:6px;align-items:center;margin-top:6px}
.manrow input{min-width:0;flex:1;width:100%;font:inherit;color:inherit;background:var(--bg);border:1.5px solid var(--line);border-radius:8px;padding:8px}
.manrow button{border:1.5px solid var(--route);background:none;color:var(--route);border-radius:8px;padding:8px 12px;font:inherit;font-weight:600;cursor:pointer}
#m_list{list-style:none;margin:6px 0 0;padding:0;color:var(--mut)}

:root{--err:#B3261E}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--err:#FF8A80}}
:root[data-theme="dark"]{--err:#FF8A80}
.sn{display:flex;gap:6px;list-style:none;margin:0 0 12px;padding:0}
.sn li{flex:1;text-align:center;border-bottom:3px solid var(--line);padding:6px 2px;font-size:13px;font-weight:600;color:var(--mut)}
.sn li.on{border-color:var(--tape);color:var(--ink)}.sn li.done{border-color:var(--route);color:var(--route)}
.st[hidden]{display:none}.st h3{margin:4px 0 0;font-size:17px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.row2>div{min-width:0}
.row2.cc{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.row2.cc .dd{width:max-content;min-width:100%;max-width:min(320px,calc(100vw - 64px))}.cph{font-size:12.5px;margin:6px 0 0}.chip.show{max-height:84px}/* Paso «Servicio»: botones con icono y «+» que despliega la explicación */
.svl{display:grid;gap:8px;margin-top:10px}
.sv{position:relative;border:1.5px solid var(--line);border-radius:12px;background:var(--card);transition:border-color .2s,background .2s}
.sv:has(input:checked){border-color:var(--route);background:var(--soft)}
.sv:has(input:focus-visible){outline:3px solid var(--route);outline-offset:1px}
.sv input{position:absolute;opacity:0;pointer-events:none}
.sv label{display:flex;align-items:center;gap:12px;margin:0;padding:9px 52px 9px 12px;cursor:pointer;font-weight:400;min-width:0}
.sv label>svg{width:26px;height:26px;flex:none;fill:none;stroke:var(--route);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sv label span{display:flex;flex-direction:column;min-width:0}.sv label b{font-size:15px;color:var(--ink);line-height:1.25}.sv label small{font-size:12.5px;color:var(--mut);line-height:1.3}
.sv .more{position:absolute;right:4px;top:5px;width:44px;height:44px;display:grid;place-items:center;border:0;background:none;border-radius:50%;color:var(--route);cursor:pointer;padding:0}
.sv .more svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;transition:transform .25s}
.sv .more[aria-expanded=true] svg{transform:rotate(45deg)}
.sv .det{margin:0;padding:0 48px 12px 50px;font-size:13.5px;line-height:1.45;color:var(--mut)}
.sv .det[hidden]{display:none}
.tot{flex-wrap:wrap;gap:4px 12px}
.sn li{font-size:12.5px;padding-left:0;padding-right:0}
.stop{margin-top:6px}.stop .rm{float:none;display:block;margin:4px 0 0 auto}
form select,input[type=email]{width:100%;font:inherit;color:inherit;background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:11px 12px}
form select:focus,input[type=email]:focus{outline:3px solid var(--route);outline-offset:1px}
.chk{display:flex;gap:8px;align-items:center;font-weight:400;margin:10px 0 0}.chk input{width:auto;flex:none}.chk a{color:var(--route)}
.maplink{display:inline-block;font-size:13px;color:var(--route);margin-top:4px}
.err{color:var(--err);font-weight:600;font-size:14px;margin:10px 0 0;min-height:0}
.wizbar{display:flex;gap:10px;margin-top:14px}.wizbar .cta{margin-top:0;flex:1}.wizbar [hidden]{display:none!important}
.wizbar .ghost{flex:0 0 auto;border:1.5px solid var(--line);background:none;color:var(--ink);border-radius:12px;padding:0 18px;font:inherit;font-weight:600;cursor:pointer}

.maplink[hidden]{display:none}

/* v1.8: barra superior, banner LED, flota, empresas, FAQ, pie */
.topbar{background:var(--navy);color:var(--onnavy)}
.topbar .in{max-width:var(--w,1280px);margin:0 auto;padding:7px 18px;display:flex;gap:14px;flex-wrap:wrap;justify-content:space-between;font-size:13.5px}
.topbar .tagline{font-weight:700}.topinfo{display:flex;gap:14px;color:var(--onnavy-mut)}.topinfo a{color:var(--tape);font-weight:700;text-decoration:none}
.led-wrap{padding:10px max(16px,env(safe-area-inset-left,0px)) 0;background:var(--bg)}
.led{margin:0 auto;height:var(--led-h,46px);border-radius:10px;background:var(--led-bg,#0A1428);color:var(--led-fg,#FFB020);overflow:hidden;position:relative;display:flex;align-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 18px color-mix(in srgb,var(--led-fg,#FFB020) 22%,transparent)}
.led:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background-image:radial-gradient(circle,rgba(0,0,0,.55) 1.1px,transparent 1.6px);background-size:4px 4px;opacity:.55}
.led:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,var(--led-bg,#0A1428),transparent 6%,transparent 94%,var(--led-bg,#0A1428))}
.led-track{display:flex;width:max-content;animation:ledrun var(--led-s,30s) linear infinite}
.led:hover .led-track{animation-play-state:paused}
.led-run{display:flex;align-items:center;gap:26px;padding-right:26px;white-space:nowrap}
.led-t{font-weight:800;font-size:calc(var(--led-h,46px)*.42);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 6px var(--led-fg,#FFB020),0 0 14px color-mix(in srgb,var(--led-fg,#FFB020) 55%,transparent);animation:ledglow 3.2s ease-in-out infinite}
.led-i{height:calc(var(--led-h,46px) - 14px);width:auto;border-radius:6px;filter:saturate(1.1)}
.led-d{width:8px;height:8px;border-radius:50%;background:var(--led-fg,#FFB020);box-shadow:0 0 8px var(--led-fg,#FFB020);flex:none}
@keyframes ledrun{to{transform:translateX(-50%)}}
@keyframes ledglow{50%{opacity:.82}}
@media (prefers-reduced-motion:reduce){.led-track{animation:none;flex-wrap:wrap;width:auto;padding:6px 14px}.led-run:last-child{display:none}.led-run{white-space:normal;flex-wrap:wrap}.led-t{animation:none}}
.band{background:var(--soft);max-width:none;border-radius:0}
.lead.sm{font-size:16px}
.fleet{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.fl{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.fl h3{margin:4px 0 0;font-size:19px}.fl p{margin:0;color:var(--mut);font-size:14.5px}
.fl .btn{align-self:flex-start;margin-top:auto;padding:10px 16px}
.fl-s{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.fl-s li{background:var(--soft);border-radius:999px;padding:4px 10px;font-size:13px;color:var(--ink)}
.truck{width:100%;height:auto;max-height:230px;display:block}
.tk-g{stroke:var(--line);stroke-width:2}.tk-box{fill:var(--soft);stroke:var(--route);stroke-width:2.5}.tk-rib{stroke:var(--route);stroke-width:1;opacity:.3}
.tk-cab{fill:var(--route);stroke:var(--navy);stroke-width:1.5}.tk-win{fill:var(--bg);opacity:.85}
.tk-wh{fill:var(--ink)}.tk-hub{fill:var(--bg)}
.tk-dim line{stroke:var(--tape);stroke-width:2}.tk-lbl{fill:var(--ink);font:700 12.5px system-ui,sans-serif}.tk-in{fill:var(--route);font:700 12.5px system-ui,sans-serif}
.note{color:var(--mut);font-size:14px;margin-top:14px}
.tw{overflow-x:auto}.rt{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rt th,.rt td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line);font-size:15px}.rt th{background:var(--soft);font-size:13px;text-transform:uppercase;letter-spacing:.05em}
.box a{color:var(--route);font-weight:700;text-decoration:none}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 16px;margin-bottom:8px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";float:right;color:var(--tape);font-size:22px;line-height:1}.faq details[open] summary:after{content:"\2212"}
.faq p{margin:0 0 14px;color:var(--mut)}
.sitefoot .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px;justify-content:initial}
.sitefoot h4{margin:0 0 10px;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--tape)}
.sitefoot ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.sitefoot p{margin:0 0 6px}.sitefoot .dim{opacity:.7}
.sitefoot .flist{display:grid;gap:7px;list-style:none;margin:0;padding:0}
.sitefoot a{text-decoration:none}.sitefoot a:hover{text-decoration:underline}
.pay{display:flex;flex-wrap:wrap;gap:6px}.pay span{border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:2px 8px;font-size:12.5px}
.legalbar{border-top:1px solid rgba(255,255,255,.15)}.legalbar .in{max-width:var(--w,1280px);margin:0 auto;padding:14px 18px;font-size:13px;opacity:.85}
.sitefoot .logo{color:#fff}
.sitefoot h4+p.pay,.sitefoot ul+h4{margin-top:18px}
.tk-lbl,.tk-in{font-size:17px!important}
.band{padding-inline:max(18px,calc((100% - 1084px)/2))}.band>*{max-width:none;margin-left:0;margin-right:0}

.logo{display:inline-flex;align-items:center;gap:10px}
.logo-van{display:inline-block;width:88px;flex:none;line-height:0}
.logo-van svg{width:100%;height:auto;display:block}
.logo-van .lv-i{fill:var(--ink)}.logo-van .lv-a{fill:var(--tape)}
.sitefoot .logo-van .lv-i{fill:#fff}

/* v2.0 */
:root{--w:1280px;--navy2:#061839}
:root[data-theme="dark"]{--navy2:#030C20}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--navy2:#030C20}}
.hero,.sitefoot{background:repeating-linear-gradient(90deg,var(--navy) 0 150px,var(--navy2) 150px 300px)}
.topbar{background:var(--navy2)}
.topbar .in{align-items:center;padding-block:9px}
.tb-l{display:grid;gap:2px}.tb-l .tagline{font-size:15px}.tb-l .hours{color:var(--onnavy-mut);font-size:13px}
.tb-r{display:grid;gap:1px;justify-items:end;text-align:right}
.tb-r .wa{color:var(--onnavy);font-weight:700;font-size:14px;text-decoration:none}
.tb-r .wa:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#3DD598;margin-right:6px}
.tb-r .ph{color:#FFD23F;font-weight:800;font-size:22px;letter-spacing:.01em;text-decoration:none;line-height:1.1}
.hcta{background:var(--tape);color:#0F1F3D;border-radius:10px;padding:10px 18px;font-weight:800;text-decoration:none}
.hcta-tel{display:inline-flex;align-items:center;gap:8px;font-size:18px;letter-spacing:.01em;white-space:nowrap}.hcta-tel svg{flex:none}
.sitehead .in{padding-block:12px}
.band{padding-inline:max(18px,calc((100% - var(--w))/2 + 18px))}
.fleet-h{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.car-nav{display:flex;gap:8px}
.car-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font-size:20px;cursor:pointer}
.car-nav button:hover{border-color:var(--tape);color:var(--tape)}
.fleet{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 14px;scrollbar-width:thin}
.fleet .fl{flex:0 0 min(340px,86%);scroll-snap-align:start}
.fl-img{aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:var(--soft);display:grid;place-items:center}
.fl-img img{width:100%;height:100%;object-fit:cover;display:block}
.box3d{width:100%;height:auto;display:block}
.b-f{fill:var(--soft);stroke:var(--route);stroke-width:2}.b-t{fill:var(--card);stroke:var(--route);stroke-width:2}.b-s{fill:var(--line);stroke:var(--route);stroke-width:2}
.b-d line,.b-d path{stroke:var(--tape);stroke-width:2;fill:none}.b-l{fill:var(--ink);font:800 15px system-ui,sans-serif}
.car-dots{display:flex;gap:6px;justify-content:center;margin-top:6px}.car-dots i{width:8px;height:8px;border-radius:50%;background:var(--line);display:block}.car-dots i.on{background:var(--tape)}
@media (max-width:700px){.tb-r{justify-items:start;text-align:left}.hcta{display:none}}
.fl .dm{font-size:13.5px}.fl .dm b{color:var(--ink)}

.fl-img{aspect-ratio:16/10;padding:10px}.fl-img img{border-radius:8px}
.vehicle{width:100%;height:auto;display:block}.vanart{width:88%;display:block}.vanart svg{width:100%;height:auto;display:block}
.vanart .lv-i{fill:var(--ink)}.vanart .lv-a{fill:var(--tape)}
.v-g{stroke:var(--line);stroke-width:3}.v-box{fill:var(--card);stroke:var(--ink);stroke-width:3.5}.v-st{fill:var(--tape)}.v-rib{stroke:var(--ink);stroke-width:1.5;opacity:.18}
.v-ch{fill:var(--ink)}.v-lt{fill:var(--tape)}.v-cab{fill:var(--card);stroke:var(--ink);stroke-width:3.5;stroke-linejoin:round}
.v-win{fill:var(--ink)}.v-shine{fill:#fff;opacity:.22}.v-door{stroke:var(--ink);stroke-width:2.5}
.v-arch{fill:var(--bg);stroke:var(--ink);stroke-width:3}.v-tire{fill:var(--ink)}.v-rim{fill:var(--card);stroke:var(--ink);stroke-width:3}
.fl-d{list-style:none;margin:2px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.fl-d li{background:var(--ink);color:var(--bg);border-radius:8px;padding:6px 8px;text-align:center;display:grid;gap:1px}
.fl-d span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.75}.fl-d b{font-size:15px}

/* cuentas, directorio y páginas SEO */
.accbox{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px}.accbox.wide{max-width:820px}
.acc2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-bottom:12px}
.accbox h2{margin:0 0 8px;font-size:22px}.mut{color:var(--mut)}
.af{background:none;border:0;padding:0;position:static;margin-top:8px}
.af label,.accbox form label,#loginform label{display:block;font-weight:600;font-size:14px;margin:12px 0 4px}
.af input[type=text],.af input[type=email],.af input[type=tel],.af input[type=password],.af input[type=file],.af textarea,#loginform input[type=text],#loginform input[type=password]{width:100%;font:inherit;color:inherit;background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:11px 12px}
#loginform .login-submit input{background:var(--tape);color:#0F1F3D;border:0;border-radius:12px;padding:13px 22px;font-weight:800;cursor:pointer;margin-top:10px}
#loginform p{margin:0}#loginform .login-remember label{font-weight:400}
.hp{position:absolute;left:-9999px}
.svcs{border:1.5px solid var(--line);border-radius:10px;margin:14px 0 0;padding:6px 12px 10px;display:flex;flex-wrap:wrap;gap:4px 16px}.svcs legend{font-weight:600;font-size:14px;padding:0 6px}
.svcs .chk{margin:6px 0 0}
.msg{min-height:20px;margin:10px 0 0;font-weight:600;font-size:14px}.msg.ok{color:var(--green)}.msg.bad{color:var(--err)}
.acchead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.acchead h2{margin:0}
.ghostbtn{display:inline-block;border:1.5px solid var(--line);background:none;color:var(--ink);border-radius:12px;padding:10px 16px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.leads{display:grid;gap:12px}.lead-c{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}
.lc-h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}.lead-c p{margin:6px 0 0}
.pill{background:var(--soft);color:var(--ink);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:700}
.st-presupuestado{background:var(--tape);color:#0F1F3D}.st-aceptado,.st-completado{background:var(--green);color:#fff}.st-rechazado{background:var(--line);color:var(--mut)}
.quote{margin-top:10px;background:var(--soft);border-radius:12px;padding:12px 16px}.quote span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);display:block}.quote b{font-size:30px;color:var(--green)}
.qa{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.notice{border-radius:12px;padding:12px 16px;margin:14px 0}.notice.ok{background:var(--soft)}.notice.wait{background:#FFF3D6;color:#5B4100}
.carriers{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:14px}
.cr{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:14px;align-items:center}.cr h3{margin:0 0 2px;font-size:18px}.cr p{margin:2px 0 0;font-size:14px}.cr a{color:var(--ink)}
.cr-l{width:64px;height:64px;flex:none;border-radius:12px;background:var(--soft);display:grid;place-items:center;overflow:hidden;font-weight:800;font-size:26px;color:var(--route)}.cr-l img{width:100%;height:100%;object-fit:cover}
.cprof{max-width:820px}.cprof .logo-big{width:96px;height:96px;border-radius:16px;object-fit:cover;background:var(--soft)}
.sec h3{margin:22px 0 10px}
#loginform{background:none;border:0;padding:0;position:static}
.accbox a,.note a{color:var(--route)}.accbox .btn,.accbox .cta{color:#0F1F3D}

/* v2.1: azul con franjas horizontales en toda la web */
body{background:repeating-linear-gradient(180deg,var(--navy) 0 200px,var(--navy2) 200px 400px);color:var(--onnavy)}
.hero,.sitefoot,.band,.led-wrap{background:none}
.sitehead{background:var(--navy);box-shadow:0 1px 0 rgba(255,255,255,.12)}
.sitehead .logo,.sitehead .nav a{color:#fff}.sitehead .nav a:hover{color:var(--tape)}
.sitehead .logo-van .lv-i{fill:#fff}
.sec h2,.sec>h3,.entry,.entry h1,.entry h2{color:#fff}
.sec .lead,.sec .note,.sec>p,.sec .mut,.acchead .mut{color:var(--onnavy-mut)}
.sec .lead{max-width:70ch}
.box,.fl,.cr,.steps li,.faq details,.accbox,.lead-c,.rt,.notice{color:var(--ink)}
:is(.box,.fl,.cr,.steps li,.accbox,.lead-c) :is(h2,h3){color:var(--ink)}
:is(.box,.fl,.cr,.steps li,.accbox,.lead-c,.faq details) .mut,:is(.box,.fl,.cr,.steps li,.accbox,.lead-c) p{color:var(--mut)}
.acchead .ghostbtn{color:#fff;border-color:rgba(255,255,255,.4)}
.entry a{color:var(--tape)}
.sitefoot{border-top:1px solid rgba(255,255,255,.15);margin-top:30px}
.lead-c .contact,.accbox .mut{color:var(--ink)}
form,.map{color:var(--ink)}form h2,form h3,.hero form .sub{color:var(--ink)}form .sub,form .mut{color:var(--mut)}
.hero .legs{color:var(--onnavy-mut)}

.qpage .step{margin-top:18px;border-top:1px solid var(--line);padding-top:6px}.qpage h3{color:var(--ink)}
.padwrap{border:2px dashed var(--route);border-radius:12px;background:#fff;margin-top:10px;touch-action:none}.padwrap canvas{width:100%;height:auto;display:block;cursor:crosshair;touch-action:none}
.ghostbtn.dk{color:var(--ink);border-color:var(--line)}.sec .accbox .ghostbtn{color:var(--ink)}
.notes{margin-top:16px;border-top:1px solid var(--line);padding-top:6px}.notes h4{margin:10px 0 4px}.note-i{margin:6px 0;padding:8px 12px;background:var(--soft);border-radius:10px}

/* carpetas y corresponsales */
.folders{display:grid;gap:10px}
.folder{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.folder summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:14px 18px;list-style:none;font-weight:800;font-size:18px}
.folder summary::-webkit-details-marker{display:none}
.folder summary svg{width:26px;height:26px;fill:var(--tape);flex:none}.folder[open] summary svg{fill:var(--route)}
.folder summary em{margin-left:auto;font-style:normal;font-weight:600;font-size:13px;color:var(--mut)}
.folder summary:after{content:"+";font-size:22px;color:var(--tape);margin-left:10px}.folder[open] summary:after{content:"\2212"}
.folder .cities{padding:4px 18px 18px}
.cities a.has:after{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-left:8px;vertical-align:middle}
.corr{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.co{position:relative;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:2px;cursor:default;outline-offset:2px}
.co b{font-size:17px}.co small{color:var(--mut);font-size:13px}
.co-pin{width:26px;height:26px;fill:var(--tape);display:block;margin-bottom:4px}.co-pin svg{width:100%;height:100%;fill:inherit}
.co:hover,.co:focus{border-color:var(--tape);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.pop{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(6px);width:min(280px,80vw);background:#fff;color:var(--ink);border-radius:14px;padding:12px;display:flex;gap:12px;align-items:center;box-shadow:0 14px 40px rgba(0,0,0,.4);opacity:0;visibility:hidden;transition:.18s;z-index:20;text-align:left}
.pop:after{content:"";position:absolute;left:50%;top:100%;margin-left:-7px;border:7px solid transparent;border-top-color:#fff}
.co:hover .pop,.co:focus .pop,.co:focus-within .pop{opacity:1;visibility:visible;transform:translateX(-50%)}
.pop-i{width:64px;height:64px;flex:none;border-radius:12px;background:var(--soft);display:grid;place-items:center;overflow:hidden}.pop-i img{width:100%;height:100%;object-fit:cover}
.pop-pin svg{width:34px;height:34px;fill:var(--tape)}.pop b{font-size:14px;display:block;line-height:1.25}.pop span{display:block;font-size:12.5px;color:var(--mut)}.pop a{font-size:13px;font-weight:700;color:var(--route);text-decoration:none}
.corr-cta{margin-top:18px;color:var(--onnavy)}.corr-cta .btn{margin-left:8px}

.folder{overflow:visible}.folder .fbody{padding:0 18px 14px;display:grid;gap:8px}.folder .fbody .cities{padding:0}
.cities li{position:relative}.cities .has-c .pop{bottom:calc(100% + 10px)}
.cities li.has-c:hover .pop,.cities li.has-c:focus-within .pop{opacity:1;visibility:visible;transform:translateX(-50%)}
.cities-c a.has{background:#E3F6EC;color:#0b5c3b}.dotg{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);vertical-align:middle}
.cities a.has:after{background:var(--green)}
.cities .has-c .pop{left:0;transform:translateY(6px)}.cities .has-c .pop:after{left:26px}
.cities li.has-c:hover .pop,.cities li.has-c:focus-within .pop{transform:none}

.folders{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start}
.allc{margin:26px 0 12px}.sec .allc{color:#fff}

.svcfolders{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.fbtn{display:flex;align-items:center;gap:10px;background:var(--card);color:var(--ink);border:2px solid var(--line);border-radius:14px;padding:12px 14px;font:800 15px inherit;font-family:inherit;cursor:pointer;text-align:left}
.fbtn svg{width:26px;height:26px;fill:var(--tape);flex:none}.fbtn:hover{border-color:var(--tape)}
.fbtn.on{border-color:var(--tape);background:var(--soft);box-shadow:0 0 0 3px rgba(255,122,0,.25)}.fbtn.on svg{fill:var(--route)}
.cityhint{color:var(--onnavy-mut);margin:14px 0 10px}
.cityblock{margin-bottom:6px}
/* v2.4.1 carpetas y ciudades pegadas: pestañas unidas al bloque, la abierta con el texto subrayado */
.svcfolders{gap:0;margin-top:14px}
.fbtn{border:2px solid var(--line);border-bottom:0;border-radius:0;margin-left:-2px;background:var(--card);box-shadow:none;justify-content:center;padding:13px 10px;font-size:15px}
.fbtn:first-child{margin-left:0;border-top-left-radius:14px}.fbtn:last-child{border-top-right-radius:14px}
.fbtn:hover{border-color:var(--line);background:var(--soft)}
.fbtn.on{background:var(--soft);box-shadow:none;border-color:var(--line);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px;text-decoration-color:var(--tape)}
.fbtn.on svg{fill:var(--tape)}
.cityhint{display:none}
.cityblock{margin:0;background:var(--soft);border:2px solid var(--line);border-radius:0 0 14px 14px;padding:16px}
.cityblock li a{box-shadow:0 0 0 1px var(--line)}
/* v2.4.2 otros países dentro del mismo bloque */
.cityblock .ctry{flex-basis:100%;width:100%;margin-top:8px;padding-top:10px;border-top:1px dashed var(--line);font:800 12px inherit;font-family:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--route);list-style:none}
.cityblock .ctry{flex-basis:auto;width:auto;margin:0 0 0 6px;padding:7px 2px 7px 0;border:0;display:inline-flex;align-items:center}
.cityblock .ctry:before{content:"";width:3px;height:16px;background:var(--tape);margin-right:8px;border-radius:2px}
/* v2.5 enlaces dentro de secciones legibles sobre fondo azul */
.sec p a:not(.btn):not(.cta){color:#FFB020;text-decoration:underline;text-underline-offset:3px}
.sec .box p a:not(.btn){color:var(--route)}
/* v2.6 blog */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:18px 0}
.pc{background:var(--card);color:var(--ink);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.pc-i{display:block;aspect-ratio:16/10;background:var(--soft);overflow:hidden}.pc-i img{width:100%;height:100%;object-fit:cover;display:block}
.pc-ph{display:grid;place-items:center;height:100%;font:800 48px inherit;color:var(--route)}
.pc-b{padding:16px 18px 20px}.pc-b h3{margin:6px 0 8px;font-size:19px}.pc-b h3 a{color:var(--ink);text-decoration:none}.pc-b p{margin:0;color:var(--mut)}
.pc-c{font:800 12px inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--route)}.entry .pc-c a{color:var(--tape);text-decoration:none}
.blogchips{margin:16px 0}.blogchips .fbtn{border:2px solid var(--line);border-radius:12px;text-decoration:none;margin:0 8px 8px 0;display:inline-flex}.blogchips .fbtn.on{text-decoration:underline;text-decoration-color:var(--tape);text-decoration-thickness:3px;text-underline-offset:6px}
.post{max-width:760px}.post-img{width:100%;height:auto;border-radius:16px;margin:12px 0}
.post-body{font-size:18px;line-height:1.7}.post-body img{max-width:100%;height:auto;border-radius:12px}
.expbox{background:var(--card);color:var(--ink);border-left:6px solid var(--tape);border-radius:12px;padding:14px 18px;margin:16px 0}.expbox blockquote{margin:0 0 6px;font:700 20px inherit}.expbox p{margin:0;color:var(--mut)}
.postcta{background:var(--card);color:var(--ink);border-radius:18px;padding:20px 24px;margin:32px 0}.postcta h2{color:var(--ink)!important;margin-top:0}
.pager{margin:16px 0}.pager .page-numbers{display:inline-block;padding:8px 14px;border-radius:10px;background:var(--card);color:var(--ink);text-decoration:none;margin-right:6px}.pager .current{background:var(--tape)}
.pc-i{text-decoration:none}

/* v2.7.0: perfil ampliado del transportista, insignia y documentos */
.vbadge{display:inline-block;background:#e3f6ec;color:#0e7a4f;border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700;vertical-align:middle;letter-spacing:0}
.vehs .vrow{display:grid;grid-template-columns:2fr 1.2fr .8fr .9fr 1.3fr;gap:8px;margin:6px 0;align-items:end}
.vehs .vrow input,.vehs .vrow select{min-width:0;width:100%}
.itv{display:flex;flex-direction:column;font-size:.8rem;gap:2px}
.docs{display:grid;gap:12px;margin-bottom:12px}
.drow{display:grid;grid-template-columns:1.6fr auto 1.6fr auto;gap:10px;align-items:center;border:1px solid var(--line,#d9e0ee);border-radius:10px;padding:10px}
.drow small{grid-column:1/-1;color:#b3261e}
@media(max-width:700px){.vehs .vrow{grid-template-columns:1fr 1fr}.drow{grid-template-columns:1fr}}

/* v2.8.0: subasta */
.aucbox{margin-top:22px;background:var(--soft,#eef3ff);border-radius:14px;padding:14px 16px}
.aucbox h3{margin:0 0 2px;font-size:1.05rem}.aucbox p{margin:4px 0}
.auc{list-style:none;margin:10px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.auc li{display:flex;gap:10px;align-items:center;background:#fff;border-radius:10px;padding:8px 10px;color:#0F1F3D}
.auc li div{min-width:0}.auc small{display:block;color:#55627a;font-size:.8rem;overflow-wrap:anywhere}
.auc img,.auc .aic{width:64px;height:64px;border-radius:8px;object-fit:cover;flex:none;display:grid;place-items:center;background:#e3e9f7;font-size:28px}

/* v2.9.0: selector de idioma */
.langw{position:relative;display:inline-block;margin-right:10px}
.langbtn{background:transparent;border:1px solid rgba(255,255,255,.35);color:inherit;border-radius:999px;padding:2px 9px;font:inherit;font-size:.78rem;cursor:pointer;line-height:1.5}
.langlist{position:absolute;right:0;top:calc(100% + 6px);z-index:60;list-style:none;margin:0;padding:6px;background:#fff;color:#0F1F3D;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.25);display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:2px;max-height:70vh;overflow:auto}
.langlist[hidden]{display:none}
.langlist button{width:100%;text-align:left;background:none;border:0;padding:6px 8px;border-radius:6px;font:inherit;font-size:.85rem;color:inherit;cursor:pointer}
.langlist button:hover,.langlist button:focus{background:#eef3ff}
.langbar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:#0F1F3D;color:#fff;padding:10px 16px;text-align:center}
.langbar[hidden]{display:none}.langbar .btn,.langbar .ghostbtn{padding:6px 14px;margin-left:6px}
.goog-te-banner-frame,.skiptranslate>iframe{display:none!important}body{top:0!important}

/* Redes sociales */
ul.soc{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
ul.soc a{display:inline-block;border:1px solid currentColor;border-radius:999px;padding:5px 13px;font-size:.85rem;font-weight:600;text-decoration:none;opacity:.9}
ul.soc a:hover,ul.soc a:focus-visible{opacity:1;background:rgba(255,255,255,.12);outline:2px solid currentColor;outline-offset:2px}

/* Accesibilidad: enlace para saltar al contenido */
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:#FF7A00;color:#0F1F3D;font-weight:800;padding:10px 16px;border-radius:0 0 10px 0;text-decoration:none}
.skip:focus{left:0}

/* Móvil: nada puede ensanchar la página (los globos de las ciudades ocultos ocupaban sitio fuera de pantalla) */
html,body{overflow-x:clip}
.cities .has-c .pop{max-width:calc(100vw - 36px)}
@media(max-width:560px){.tb-r{justify-items:start;text-align:left}.topbar .in{gap:8px}}

/* v2.9.2 (auditoría): encabezado compacto en móvil y tableta, foco visible, objetivos táctiles */
:focus-visible{outline:3px solid var(--tape,#FF7A00);outline-offset:2px}
.sitehead :focus-visible,.topbar :focus-visible,.sitefoot :focus-visible{outline-color:#FFD23F}
@media(max-width:1000px){
  .sitehead .in{padding:10px 16px;gap:8px 12px}
  .hcta{margin-left:auto;padding:9px 14px;font-size:14px;display:inline-block}
  .nav{order:3;width:100%;margin-left:0}
  .nav ul{flex-wrap:nowrap;overflow-x:auto;gap:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .nav ul::-webkit-scrollbar{display:none}
  .nav li{flex:none}
  .nav a{display:inline-block;padding:10px 10px;white-space:nowrap}
}
@media(max-width:700px){
  .topbar .in{padding:6px 14px;gap:6px 12px;align-items:center}
  .tb-l .hours{display:none}
  .tb-l .tagline{font-size:13px;line-height:1.25}
  .tb-r{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;justify-items:unset}
  .tb-r .ph{font-size:18px}
  .logo{font-size:14px;min-width:0;gap:7px}
  .logo-van{width:50px}
  .hcta{padding:8px 10px;font-size:13px;white-space:nowrap}
}
/* Mapa vacío: indica qué hacer en vez de enseñar solo una cuadrícula */
.map:has(#kmb[hidden])::after{content:"Elige recogida y entrega y aquí verás tu ruta y los km.";position:absolute;left:12px;right:12px;bottom:12px;text-align:center;padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--card) 94%,transparent);border:1px solid var(--line);font-weight:700;font-size:clamp(11.5px,3.3vw,13px);line-height:1.35;text-wrap:balance;color:var(--mut);pointer-events:none}

/* Accesibilidad (contraste de los bordes de los campos, mínimo 3:1 respecto al fondo) */
:root{--field:#7B8AA6}
:root[data-theme="dark"]{--field:#6F84AB}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--field:#6F84AB}}
input[type=text],input[type=tel],input[type=date],input[type=email],input[type=password],input[type=number],textarea,form select,.af input,.af textarea,.af select,#loginform input[type=text],#loginform input[type=password],.manrow input{border-color:var(--field)}

/* App instalable */
.linkbtn{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.tym-install[hidden],.tym-install-help[hidden]{display:none}
.tym-install-help{display:block;margin-top:4px;opacity:.85}
.wa-line{margin:8px 0}

/* Hilo de mensajes y borrado de cuenta */
.thread .tb{margin:8px 0;padding:8px 12px;border-radius:10px;background:var(--soft);max-width:92%}
.thread .tb p{margin:2px 0 0}.thread .tb small{color:var(--mut);display:block}
.thread .tb-s{border-left:4px solid var(--tape);margin-right:auto}
.thread .tb-c{border-right:4px solid var(--route);margin-left:auto;text-align:left}
.delbox{margin-top:28px}.erase-list{margin:6px 0 14px;padding-left:20px}
.delpage h3{margin:18px 0 6px}

/* Aviso de cookies (solo si hay Analytics, Tag Manager o Ads) */
.cookiebar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;background:var(--card);color:var(--ink);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(0,0,0,.18);padding:14px max(16px,env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.cookiebar p{margin:0;flex:1 1 320px;font-size:14px;line-height:1.45}.cookiebar a{color:inherit;text-decoration:underline}
.cookiebar div{display:flex;gap:8px;flex-wrap:wrap}.cookiebar button{min-width:112px}
.gbp a{text-decoration:underline}

/* v2.13.0: teléfono en el botón naranja de la cabecera */
.hcta.hcta-tel{display:inline-flex;align-items:center;gap:7px}
@media(max-width:700px){.hcta.hcta-tel{font-size:15px;padding:8px 11px}.hcta.hcta-tel svg{width:16px;height:16px}}

/* v2.13.0: página del transportista (solicitud sin datos de contacto) */
.dtab{width:100%;border-collapse:collapse;margin:0 0 10px}
.dtab th,.dtab td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:15px}
.dtab th{width:34%;color:var(--mut);font-weight:700}
.qpage .photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:6px 0 12px}
.qpage .photos img{width:100%;height:110px;object-fit:cover;border-radius:10px}
/* v2.13.0: enlaces dentro de las fichas (accbox) de las páginas: azul legible, no el naranja de .entry a */
.entry .accbox a:not(.btn):not(.cta):not(.ghostbtn),.entry .accbox .note a{color:var(--route)}
