:root{--ink:#1d1d1f;--grey:#6e6e73;--light:#f5f5f7;--blue:#0071e3;--blue-d:#0062c4;--r:24px;
font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-size:17px;line-height:1.47;letter-spacing:-.01em}
a{color:#0066cc}h1,h2,h3{margin:0;letter-spacing:-.02em}
.wrap{max-width:1040px;margin:0 auto;padding:0 22px}.center{text-align:center}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.nav-bar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;height:48px}
.brand{display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600}
nav{display:flex;gap:26px;align-items:center}nav a{color:var(--ink);opacity:.85;text-decoration:none;font-size:13px}nav a:hover{opacity:1}
.lang{display:flex;gap:4px}.lang a{font-size:12px;padding:1px 6px;border-radius:6px}.lang [aria-current]{background:var(--ink);color:#fff;opacity:1}.lang .soon{opacity:.4}
.menu-btn{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-btn span{display:block;width:18px;height:1.5px;background:var(--ink);margin:5px 0}
.pill{display:inline-block;background:var(--blue);color:#fff!important;opacity:1!important;text-decoration:none;font-size:17px;padding:11px 22px;border-radius:980px;transition:background .2s}
.pill:hover{background:var(--blue-d)}.pill-sm{font-size:12px;padding:4px 12px}.pill-lg{font-size:19px;padding:14px 30px}
.link{color:#0066cc;text-decoration:none;font-size:17px}.link:hover{text-decoration:underline}
.ctas{display:flex;gap:24px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:22px}.ctas.left{justify-content:flex-start}
.hero{padding:80px 0 0;background:#fff;overflow:hidden}
.kicker{color:#bf4800;font-weight:600;font-size:17px;margin:0 0 8px}
h1{font-size:clamp(44px,8vw,80px);line-height:1.05;font-weight:700}
.tag{font-size:clamp(19px,2.4vw,24px);color:var(--grey);max-width:640px;margin:14px auto 0;line-height:1.3}
.note{color:var(--grey);font-size:14px;margin-top:14px}
.hero-visual{display:block;width:100%;max-width:760px;margin:48px auto 0}
.band{padding:100px 0}.light{background:var(--light)}
h2{font-size:clamp(34px,5.5vw,56px);line-height:1.08;font-weight:700;margin-bottom:56px}.grey{color:var(--grey)}
.band .tag{margin-top:-36px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border-radius:var(--r);padding:30px 26px;box-shadow:0 4px 24px rgba(0,0,0,.05);transition:transform .3s,box-shadow .3s}
.card:hover{transform:scale(1.015)}
.card h3{font-size:19px;line-height:1.25;margin:14px 0 8px}.card p{color:var(--grey);margin:0;font-size:15px}
.ico{width:34px;height:34px;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tile{background:#fff;box-shadow:0 4px 24px rgba(0,0,0,.06);border-radius:28px;padding:44px 24px 0;display:flex;flex-direction:column;text-align:center;overflow:hidden}
.tile h3{font-size:clamp(26px,3vw,34px);line-height:1.15}.tile svg{display:block;width:90%;margin:auto auto 0;padding-top:32px}.tile h3{font-size:clamp(24px,2.4vw,28px)}.tile .ctas{gap:16px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
.stats div{background:#fff;border-radius:var(--r);padding:32px 20px;display:flex;flex-direction:column}
.stats strong{font-size:44px;line-height:1.1;letter-spacing:-.03em}.stats span{color:var(--grey)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
.steps span{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--light);color:var(--blue);font-weight:700;font-size:20px;margin-bottom:14px}
.steps h3{font-size:21px;margin-bottom:6px}.steps p{color:var(--grey);margin:0}
.visit{display:grid;grid-template-columns:1fr 1.3fr;gap:20px}.big{padding:40px}
address{font-style:normal;font-size:21px;line-height:1.35;margin-bottom:28px}
.hours{border-collapse:collapse;width:100%}.hours caption{text-align:left;font-weight:600;font-size:19px;padding-bottom:8px}
.hours th,.hours td{text-align:left;vertical-align:top;padding:12px 0;border-top:1px solid #d2d2d7;font-weight:400}.hours td{text-align:right}
.map{border-radius:var(--r);overflow:hidden;background:#e8e8ed;min-height:380px}.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
.footer{background:var(--light);color:var(--grey);font-size:12px;padding:32px 0}.footer a{color:var(--ink)}
.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot p{margin:0;line-height:1.7}.footer hr{border:0;border-top:1px solid #d2d2d7;margin:16px 0}.legal{margin:0}
.ph{display:block;font-size:12px;color:#86868b;font-style:italic;margin-top:10px}.footer .ph,.legal .ph{display:inline;margin:0}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
@media (max-width:900px){.grid4{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.visit,.tiles{grid-template-columns:1fr}}
@media (max-width:640px){.menu-btn{display:block}nav{display:none;position:absolute;top:48px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:18px;padding:24px 22px;background:rgba(255,255,255,.97);border-bottom:1px solid #d2d2d7}nav.open{display:flex}nav a{font-size:17px}
.grid4,.steps,.stats{grid-template-columns:1fr}.band{padding:72px 0}.hero{padding-top:56px}h2{margin-bottom:40px}.band .tag{margin-top:-24px}.big{padding:28px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}.reveal{opacity:1;transform:none}}
.tile-video{display:block;width:calc(100% + 48px);margin:auto -24px 0;padding-top:24px;aspect-ratio:4/3;object-fit:contain;background:transparent;border-radius:0 0 28px 28px}
.tile-dark{background:#000;color:#f5f5f7}.tile-dark .kicker{color:#a78bfa}.tile-dark .pill{background:#fff;color:#1d1d1f!important}.tile-dark .pill:hover{background:#e8e8ed}.tile-dark .link{color:#2997ff}

.tile{transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;will-change:transform}

/* hover grow (Apple-like) */
.tile.reveal,.card.reveal{transition:opacity .8s ease,transform .7s cubic-bezier(.25,.1,.25,1)!important}
.tile.reveal.in:hover,.tile:hover{transform:scale(1.02)!important;z-index:2;position:relative}
.card.reveal.in:hover,.card:hover{transform:scale(1.015)!important}

/* ===== Hero slideshow (colour header) ===== */
.hero-slider{position:relative;padding:0;margin:12px auto 0;max-width:1400px;width:calc(100% - 24px);height:clamp(420px,42vw,600px);border-radius:28px;overflow:hidden;background:#0b0b1a;color:#fff;touch-action:pan-y}
.hs-track,.hs-slide{position:absolute;inset:0}
.hs-slide{opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s linear 1s!important}
.hs-slide.is-active{opacity:1;visibility:visible;transition:opacity 1s ease,visibility 0s!important;z-index:1}
.hs-slide picture,.hs-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center}
.hs-slide img{transform:scale(1);transition:transform 7s ease-out!important}
.hs-slide.is-active img{transform:scale(1.07)}
.hs-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.15) 45%,transparent 65%);pointer-events:none}
.hs-copy{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:1240px;padding:0 56px}
.hs-title{font-size:clamp(38px,5.4vw,72px);line-height:1.04;font-weight:800;letter-spacing:-.03em;max-width:9.5em;margin:0;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.hs-sub{font-size:clamp(17px,1.6vw,21px);line-height:1.35;max-width:26em;margin:16px 0 28px;opacity:.92}
.hs-btn{display:inline-block;background:#fff;color:#1d1d1f;text-decoration:none;font-weight:600;font-size:16px;padding:12px 26px;border-radius:980px;transition:transform .2s,background .2s}
.hs-btn:hover{background:#f0f0f3;transform:translateY(-1px)}.hs-btn:focus-visible,.hs-dot:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hs-dots{position:absolute;z-index:3;left:0;right:0;bottom:28px;max-width:1240px;padding:0 56px;display:flex;gap:8px}
.hs-dot{background:none;border:0;padding:10px 0;cursor:pointer}.hs-dot span{display:block;width:28px;height:3px;border-radius:2px;background:rgba(255,255,255,.4);transition:width .3s,background .3s!important}
.hs-dot.is-active span{width:48px;background:#fff}
@media (max-width:640px){
 .hero-slider{width:calc(100% - 16px);margin-top:8px;height:min(560px,135vw);border-radius:22px}
 .hs-slide img{object-position:72% center}
 .hs-slide::after{background:linear-gradient(0deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.5) 42%,rgba(0,0,0,0) 70%)}
 .hs-copy{justify-content:flex-end;padding:0 22px 64px}
 .hs-sub{margin:10px 0 20px}.hs-dots{padding:0 22px;bottom:18px}
}
/* Reduced motion: keep rotation + fade, drop zoom */
@media (prefers-reduced-motion:reduce){.hs-slide img,.hs-slide.is-active img{transform:none!important;transition:none!important}
 .hs-slide{transition:opacity .6s ease,visibility 0s linear .6s!important}.hs-slide.is-active{transition:opacity .6s ease,visibility 0s!important}}
/* Apple-style: black + white slides */
.hero-slider{background:#000}
.hs-slide::after{background:none}
.hs-title{text-shadow:none}
.hs-light{background:#fff}
.hs-light .hs-title,.hs-light .hs-sub{color:#1d1d1f}
.hs-light .hs-btn{background:#1d1d1f;color:#fff}.hs-light .hs-btn:hover{background:#000}
.hs-dots{mix-blend-mode:difference}
@media (max-width:640px){.hs-slide::after{background:linear-gradient(0deg,rgba(0,0,0,.8),rgba(0,0,0,0) 60%)}.hs-light::after{background:linear-gradient(0deg,rgba(255,255,255,.92),rgba(255,255,255,0) 60%)!important}}
/* Full-bleed header */
.hero-slider{max-width:none!important;width:100%!important;margin:0!important;border-radius:0!important;height:clamp(460px,46vw,720px)}
@media (max-width:640px){.hero-slider{height:min(600px,140vw)}}
/* Lighter hero type */
.hs-title{font-weight:600!important;letter-spacing:-.02em}
.hs-sub{font-weight:400}
.hs-btn{font-weight:500}
/* Second row of tiles (still images) */
.tiles-2{margin-top:20px}
.tile-img{display:block;margin:auto -24px 0;padding-top:24px}
.tile-img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0 0 28px 28px}
/* Apple-style info cards */
.acards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:900px;margin:0 auto}
.acard{position:relative;background:#fff;border-radius:28px;padding:36px 32px 0;display:flex;flex-direction:column;overflow:hidden;min-height:540px;text-align:left}
.akicker{font-size:15px;font-weight:600;color:#1d1d1f;margin:0 0 8px}
.acard h3{font-size:clamp(24px,2.4vw,30px);line-height:1.15;font-weight:600;letter-spacing:-.02em;margin:0 0 12px}
.asub{font-size:16px;line-height:1.4;color:#424245;margin:0}
.aimg{display:block;margin:auto -32px 0;padding-top:20px}
.aimg img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.aimg-person img{object-position:center 30%}
.aplus{position:absolute;right:20px;bottom:20px;width:36px;height:36px;border-radius:50%;background:rgba(232,232,237,.92);color:#1d1d1f;display:flex;align-items:center;justify-content:center;font-size:24px;text-decoration:none;line-height:1}
.aplus:hover{background:#d2d2d7}
.acard{transition:transform .7s cubic-bezier(.25,.1,.25,1)!important}.acard:hover{transform:scale(1.02)!important}
@media (max-width:760px){.acards{grid-template-columns:1fr}.acard{min-height:480px}}
/* Horizontal tile scroller */
.tiles-scroller{margin:0 calc(50% - 50vw);overflow:hidden}
.tiles.tiles-row{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:16px max(24px,calc(50vw - 600px)) 24px;scrollbar-width:none;margin:0}
.tiles.tiles-row::-webkit-scrollbar{display:none}
.tiles-row .tile{flex:0 0 min(380px,82vw);scroll-snap-align:start;scroll-margin-left:max(24px,calc(50vw - 600px))}
.tiles-nav{display:flex;justify-content:flex-end;gap:12px;max-width:1200px;margin:8px auto 0}
.tnav{width:44px;height:44px;border-radius:50%;border:0;background:#e8e8ed;color:#1d1d1f;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding-bottom:3px;transition:background .2s,opacity .2s}
.tnav:hover{background:#d2d2d7}.tnav:disabled{opacity:.35;cursor:default}
@media (max-width:900px){.tiles.tiles-row{display:flex}}
/* Hover grow only after 1s (JS adds .is-hover) */
.tile.reveal.in:hover,.tile:hover{transform:none!important}
.tile.is-hover,.tile.reveal.in.is-hover{transform:scale(1.02)!important;z-index:2;position:relative}
.tiles.tiles-row{scroll-snap-type:x proximity}
/* Grow immediately on hover (video still waits 1s) */
.tile.reveal.in:hover,.tile:hover{transform:scale(1.02)!important;z-index:2;position:relative}
/* ===== Legal pages (aviso legal, privacidad, cookies) ===== */
.doc{padding:72px 0 100px}
.doc-wrap{max-width:760px;margin:0 auto;padding:0 22px}
.doc h1{font-size:clamp(36px,5vw,48px);line-height:1.08;font-weight:700;letter-spacing:-.02em}
.doc-updated{color:var(--grey);font-size:14px;margin:12px 0 0}
.doc-lead{font-size:21px;line-height:1.4;color:var(--grey);margin:24px 0 8px}
.doc h2{font-size:24px;line-height:1.2;font-weight:600;margin:48px 0 12px}
.doc p,.doc li{font-size:17px;line-height:1.6}.doc p{margin:0 0 14px}
.doc ul{margin:0 0 14px;padding-left:22px}.doc li{margin-bottom:6px}
.doc code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:var(--light);padding:1px 5px;border-radius:5px;word-break:break-word}
.doc-data{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;margin:16px 0 14px;padding:24px 28px;background:var(--light);border-radius:18px}
.doc-data dt{font-weight:600}.doc-data dd{margin:0}
.doc-table{overflow-x:auto;margin:16px 0 18px}
.doc-table table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.45}
.doc-table th,.doc-table td{text-align:left;vertical-align:top;padding:12px 14px 12px 0;border-top:1px solid #d2d2d7}
.doc-table thead th{border-top:0;font-weight:600;font-size:14px;color:var(--grey)}
@media (max-width:640px){.doc{padding:48px 0 72px}.doc-data{grid-template-columns:1fr;gap:2px;padding:20px}.doc-data dd{margin-bottom:10px}.doc-table table{min-width:560px}}
.footer .legal a[aria-current]{font-weight:600}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--ink);text-decoration:underline;cursor:pointer}
.doc .linkbtn{color:#0066cc}
/* ===== Map consent placeholder + cookie banner ===== */
.map{position:relative}.map iframe[hidden]{display:none}
.map-consent{min-height:380px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;gap:6px}
.map-consent[hidden]{display:none}.map-consent p{margin:0 0 12px;max-width:26em;color:var(--ink)}.map-consent .note{margin:14px 0 0;font-size:13px}
button.pill{border:0;cursor:pointer;font:inherit;font-size:17px}
.cookie-banner{position:fixed;z-index:100;left:16px;right:16px;bottom:16px;max-width:560px;margin:0 auto;background:rgba(255,255,255,.96);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border:1px solid rgba(0,0,0,.08);border-radius:20px;box-shadow:0 10px 40px rgba(0,0,0,.15);padding:22px 24px;font-size:14px;line-height:1.5}
.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0 0 14px}.cookie-banner strong{font-size:15px}
.cookie-banner .cb-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-banner .pill{font-size:15px;padding:9px 20px;flex:1 1 120px}
/* Tall image cards (Apple "Descubre el Mac" style) */
.vband{padding-top:24px}
.vtitle{text-align:left;margin:0 0 28px;font-size:clamp(28px,3.4vw,44px)}
.vrow{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x proximity;scroll-behavior:smooth;padding:16px max(24px,calc(50vw - 600px)) 24px;scrollbar-width:none}
.vrow::-webkit-scrollbar{display:none}
.vcard{position:relative;flex:0 0 min(300px,72vw);aspect-ratio:3/5;border-radius:28px;overflow:hidden;scroll-snap-align:start;scroll-margin-left:max(24px,calc(50vw - 600px));background:#ddd;transition:transform .6s cubic-bezier(.25,.1,.25,1)!important}
.vcard picture,.vcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vcard img{transform:scale(1.001);transition:transform 1.2s cubic-bezier(.25,.1,.25,1)!important}
.vcard:hover{transform:scale(1.02)!important;z-index:2}
.vcard:hover img{transform:scale(1.08)}
.vcard::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.75) 0%,rgba(255,255,255,0) 38%);pointer-events:none}
.vdark::before{background:linear-gradient(180deg,rgba(0,0,0,.65) 0%,rgba(0,0,0,0) 40%)}
.vtext{position:relative;z-index:2;padding:28px 26px}
.vk{font-size:13px;font-weight:600;margin:0 0 6px;color:#1d1d1f}
.vtext h3{font-size:clamp(22px,2vw,26px);line-height:1.15;font-weight:600;letter-spacing:-.02em;margin:0;color:#1d1d1f}
.vdark .vk,.vdark h3{color:#fff}
.vplus{position:absolute;z-index:2;right:18px;bottom:18px;width:36px;height:36px;border-radius:50%;background:rgba(51,51,54,.6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;text-decoration:none;backdrop-filter:blur(8px)}
.vcard:not(.vdark) .vplus{background:rgba(232,232,237,.85);color:#1d1d1f}
/* Hero: text at the top, centred (like the cards) */
.hs-copy{justify-content:flex-start!important;align-items:center!important;text-align:center;margin:0 auto;padding:44px 24px 0!important}
.hs-copy .hs-sub{max-width:620px}
.hs-slide img{object-position:center 70%!important}
.hs-slide::after{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 40%)!important}
.hs-light::after{background:linear-gradient(180deg,rgba(255,255,255,.8) 0%,rgba(255,255,255,0) 40%)!important}
@media (max-width:640px){.hs-copy{padding:32px 18px 0!important}}
/* Hero text aligned left under the logo */
.hs-copy{max-width:1040px!important;align-items:flex-start!important;text-align:left!important;padding:44px 22px 0!important}
@media (max-width:640px){.hs-copy{padding:32px 22px 0!important}}
/* Row titles aligned with the first tall card, lighter and smaller */
.vband>.wrap:first-child{max-width:none;padding:0 max(24px,calc(50vw - 600px))}
.vtitle{font-weight:500!important;font-size:clamp(24px,2.6vw,34px)!important;letter-spacing:-.02em;margin-bottom:12px!important}
/* Reparación cards: 40% shorter */
#reparacion .vcard{aspect-ratio:1/1}
/* Reparación card text smaller */
#reparacion .vtext{padding:22px 22px}
#reparacion .vk{font-size:12px}
#reparacion .vtext h3{font-size:clamp(17px,1.5vw,20px)}
/* Experience section: same type as row titles, grey second line */
.exp h2{font-weight:500!important;font-size:clamp(24px,2.6vw,34px)!important;letter-spacing:-.02em;margin-bottom:6px}
.exp .tag{color:#86868b!important;font-weight:500;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;line-height:1.15;max-width:820px;margin:0 auto 32px}
.exp .tag{font-size:clamp(17px,1.6vw,21px)!important;line-height:1.35;max-width:640px}
.exp .tag{font-size:clamp(20px,2vw,26px)!important;line-height:1.25;max-width:720px}
/* Reparación title: grey line same size as experience tagline */
#reparacion .vtitle .grey{display:inline-block;margin-top:6px;font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:500;color:#86868b}
/* Equipos title: same as Reparación, aligned with first card */
.eq-head{text-align:left;margin-left:calc(max(24px,50vw - 600px) - max(22px,50vw - 498px))}
.eq-head .grey{display:inline-block;margin-top:6px;font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:500;color:#86868b}
/* Menu right after the logo */
@media (min-width:641px){.nav{justify-content:flex-start;gap:40px}#menu{flex:1}#menu .lang{margin-left:auto}}
@media (max-width:640px){.menu-btn{margin-left:auto}}
/* La diferencia MIC: Apple "Te ayudamos" style cards */
.dhead{padding:0 max(24px,calc(50vw - 600px))}
.dhead .grey{display:inline-block;margin-top:6px;font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:500;color:#86868b}
.dcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:16px max(24px,calc(50vw - 600px)) 8px}
.dcard{position:relative;aspect-ratio:1/1.05;border-radius:24px;overflow:hidden;background:#f5f5f7;box-shadow:0 4px 18px rgba(0,0,0,.06);transition:transform .6s cubic-bezier(.25,.1,.25,1)!important}
.dcard:hover{transform:scale(1.02)}
.dwhite{background:#fff}
.dimg,.dimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dimg img{transition:transform 1.2s cubic-bezier(.25,.1,.25,1)!important}
.dcard:hover .dimg img{transform:scale(1.06)}
.dperson{top:auto;height:68%;inset:auto 0 0 0}.dperson img{object-fit:contain;object-position:center bottom}
.dcard:not(.dwhite)::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.6) 28%,rgba(255,255,255,0) 50%);pointer-events:none}
.dtext{position:relative;z-index:2;padding:26px 26px 0}
.dk{font-size:12px;font-weight:600;margin:0 0 6px;color:#1d1d1f;text-transform:none}
.dtext h3{font-size:clamp(20px,1.9vw,26px);line-height:1.15;font-weight:600;letter-spacing:-.02em;margin:0;color:#1d1d1f}
.dsub{font-size:14px;margin:8px 0 0;color:#1d1d1f}
@media (max-width:900px){.dcards{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.dcard{flex:0 0 min(340px,82vw);scroll-snap-align:start}}
/* Diferencia: 4 cards in a scrolling row */
.dcards.vrow{display:flex;grid-template-columns:none}
.dcards .dcard{flex:0 0 min(380px,82vw);scroll-snap-align:start;scroll-margin-left:max(24px,calc(50vw - 600px))}
.ddark::before{background:linear-gradient(180deg,rgba(40,20,60,.55) 0%,rgba(40,20,60,.2) 30%,rgba(0,0,0,0) 50%)!important}
.ddark .dk,.ddark h3,.ddark .dsub{color:#fff}
/* Atención personalizada card: warm top band + photo below */
.dtech{background:linear-gradient(180deg,#3b2a20,#5a4030)}
.dtech::before{display:none}
.dtech .dimg{top:auto;height:66%;inset:auto 0 0 0}
.dtech .dimg img{object-position:62% 20%}
.dtech .dimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#4a3528 0%,rgba(74,53,40,0) 22%)}
.dtech .dk,.dtech h3,.dtech .dsub{color:#fff}
/* dtech fondo blanco + tamaño tipo Reparación (prueba) */
.dtech{background:#fff}
.dtech .dimg{inset:0;height:100%;top:0}
.dtech .dimg::after{display:none}
.dtech::before{display:block!important}
.dtech .dk,.dtech h3,.dtech .dsub{color:#1d1d1f}
.dcards .dcard{flex:0 0 min(300px,72vw);aspect-ratio:1/1}
#porque .dtext{padding:22px 22px 0}
#porque .dk{font-size:12px}
#porque .dtext h3{font-size:clamp(17px,1.5vw,20px)}
#porque .dsub{font-size:13px}
.dcards .dcard{aspect-ratio:4/5}
.dtech .dimg{inset:auto 0 0 0;top:auto;height:70%}
.dtech .dimg::after{display:block;content:"";position:absolute;inset:0;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 25%)}
.dtech::before{display:none!important}
#porque,#porque.dband{background:#fff!important}
.dtech .dimg img{object-position:60% 30%}
.dtech{background:#ece4da}
.dtech .dimg::after{background:linear-gradient(180deg,#ece4da 0%,rgba(236,228,218,.85) 12%,rgba(236,228,218,0) 45%)}
.dtech{background:#f4efe9}
.dtech .dimg::after{background:linear-gradient(180deg,#f4efe9 0%,rgba(244,239,233,.85) 12%,rgba(244,239,233,0) 45%)}
.brandw{font-weight:700}
#equipos .tile{padding-top:30px}
#equipos .tile-img{padding-top:14px}
#equipos .tile-img img,#equipos .tile-video{aspect-ratio:12/5}
#equipos .tile svg{max-height:150px;padding-top:14px}
.dtech{background:#faf8f5}
.dtech .dimg::after{background:linear-gradient(180deg,#faf8f5 0%,rgba(250,248,245,.9) 14%,rgba(250,248,245,0) 50%)}
#equipos .tile-video,#equipos .tile-img img{aspect-ratio:16/10;object-fit:cover}
#equipos .tile-video{transform:scale(1.25);transform-origin:center 60%}
#equipos .tile{overflow:hidden}
#equipos .tile-img{margin:auto -24px 0;padding-top:10px;overflow:hidden;border-radius:0 0 28px 28px}
#equipos .tile-img img{aspect-ratio:4/3;border-radius:0;transform:scale(1.12)}
#equipos .tile-video{aspect-ratio:4/3}
.dcards .dcard{aspect-ratio:2/3}
.dtech{background:#e5c5a9}
.dtech .dimg{inset:0;top:0;height:100%}
.dtech .dimg::after{display:none}
.dtech .dimg img{object-position:53% 100%!important}
.dtech{background:#2a2a2c}
.dtech .dimg img{object-position:57% 50%!important}
.dtech .dimg::after{display:block;content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,20,22,.55) 0%,rgba(20,20,22,0) 35%)}
.dtech .dk,.dtech h3,.dtech .dsub{color:#fff}
.dtech .vplus,.dtech a{color:inherit}
.dcards .dcard{aspect-ratio:4/5}
.tnav{width:34px;height:34px;font-size:22px;padding-bottom:2px}
.tiles-nav{gap:10px}
#porque,#porque.dband{background:#f5f5f7!important}
@media (min-width:641px){#menu > a:not(.pill){position:relative;top:4px}#menu .lang{position:relative;top:3px}}
.nav-bar{background:rgba(245,245,247,.85)}
/* Hero con animación del portátil (una sola vez) */
.hero-anim{background:#f5f5f7;padding:36px 0 0;text-align:left;overflow:hidden}
.ha-copy{padding-left:max(24px,calc(50vw - 600px))!important;margin:0}
.ha-title{font-size:clamp(32px,4.4vw,56px);font-weight:600;letter-spacing:-.02em;line-height:1.08;margin:0;color:#1d1d1f}
.ha-sub{font-size:clamp(17px,1.6vw,21px);color:#6e6e73;margin:10px 0 0}
.ha-video{display:block;width:min(900px,100%);margin:0 auto;aspect-ratio:4/3;object-fit:contain;mix-blend-mode:multiply}
@media (max-width:640px){.hero-anim{padding-top:24px}.ha-video{width:115%;margin-left:-7.5%}}
.promo-strip{background:#fff;text-align:center;padding:16px 24px}
.promo-strip p{margin:0;font-size:14px;line-height:1.45;color:#1d1d1f}
.promo-strip a{color:#0066cc;text-decoration:none;white-space:nowrap}
.promo-strip a:hover{text-decoration:underline}
.hero-anim{text-align:center;padding-top:44px}
.ha-copy{padding-left:24px!important;padding-right:24px;margin:0 auto;text-align:center}
.ha-btns{display:flex;justify-content:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.ha-b{display:inline-block;padding:11px 22px;border-radius:980px;font-size:17px;text-decoration:none;line-height:1.2;transition:background .2s,color .2s}
.ha-primary{background:#0071e3;color:#fff;border:1px solid #0071e3}
.ha-primary:hover{background:#0077ed}
.ha-secondary{background:transparent;color:#0066cc;border:1px solid #0066cc}
.ha-secondary:hover{background:#0066cc;color:#fff}
.ha-video{width:min(620px,88%);margin:18px auto 0}
@media (max-width:640px){.ha-video{width:100%;margin-left:0}}
.ha-video{margin-top:-40px}.hero-anim{padding-top:36px}
.ha-copy{position:relative;z-index:2}.ha-video{position:relative;z-index:1;pointer-events:none}
.ha-b{padding:8px 16px;font-size:15px}
.ha-btns{gap:10px;flex-wrap:nowrap}
@media (max-width:640px){.ha-b{padding:7px 14px;font-size:14px;white-space:nowrap}}
.ha-video{margin-top:-15px}
.ha-title{font-size:clamp(28px,3.2vw,40px)}.ha-sub{font-size:clamp(16px,1.4vw,19px)}
/* Formulario de cita */
.cita-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;max-width:760px;margin:24px 0 0 calc(max(24px,50vw - 600px) - max(22px,50vw - 498px));background:#fff;border-radius:24px;padding:28px;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.cita-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#1d1d1f}
.cita-form .full{grid-column:1/-1}
.cita-form input,.cita-form select,.cita-form textarea{font:inherit;font-size:16px;font-weight:400;padding:11px 14px;border:1px solid #d2d2d7;border-radius:12px;background:#fff;color:#1d1d1f;width:100%;box-sizing:border-box}
.cita-form input:focus,.cita-form select:focus,.cita-form textarea:focus{outline:none;border-color:#0071e3;box-shadow:0 0 0 3px rgba(0,113,227,.15)}
.cita-err{margin:0;color:#d70015;font-size:14px;min-height:0}
.cita-err:empty{display:none}
.cita-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cita-actions button{cursor:pointer;font:inherit;font-size:15px}
.cita-note{font-size:13px;color:#6e6e73;flex:1;min-width:200px}
@media (max-width:640px){.cita-form{grid-template-columns:1fr;margin-left:0;padding:22px}}
.dcita{cursor:pointer}
.dcard h3.h2l{white-space:nowrap;font-size:min(1em,5.6vw)}
.dtienda{background:#ded7d6}.dtienda .dimg{top:9%;inset:9% 0 auto 0;height:100%}
#descubre .vtitle .grey{display:inline-block;margin-top:6px;font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:500;color:#86868b}
#descubre .vcard .vtext{transition:transform .9s cubic-bezier(.22,.8,.3,1),opacity .8s ease!important}
#descubre .vcard.out-r .vtext{transform:translateX(60px);opacity:0;transition:none!important}
#descubre .vcard.out-l .vtext{transform:translateX(-60px);opacity:0;transition:none!important}
#descubre .vk{font-size:12px}#descubre .vtext{padding:22px 22px}#descubre .vtext h3{font-size:clamp(17px,1.5vw,20px)}
#descubre .vcard.minact .vtext{opacity:0;transform:none;transition:opacity .25s ease!important}
#reparacion .vcard.reveal{transition:opacity .8s ease,transform .7s cubic-bezier(.25,.1,.25,1)!important}
#descubre .vcard.reveal{transition:opacity .8s ease,transform .7s cubic-bezier(.25,.1,.25,1)!important}
#descubre .vcard{flex:0 0 min(360px,72vw);aspect-ratio:2/3}
#descubre .dctl{display:flex;justify-content:center;align-items:center;gap:14px;margin:26px auto 0}
#descubre .dplay{width:56px;height:56px;border-radius:50%;border:0;background:rgba(232,232,237,.9);cursor:pointer;position:relative;transition:background .2s}
#descubre .dplay:hover{background:#dcdce1}
#descubre .dplay::before{content:"";position:absolute;left:23px;top:20px;border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent #1d1d1f}
#descubre .dctl.playing .dplay::before{left:21px;top:20px;width:4px;height:16px;border:0;background:#1d1d1f;box-shadow:9px 0 0 #1d1d1f}
#descubre .ddots{display:flex;align-items:center;gap:10px;height:56px;padding:0 24px;border-radius:28px;background:rgba(232,232,237,.9)}
#descubre .ddot{width:8px;height:8px;border-radius:4px;border:0;padding:0;background:#86868b;cursor:pointer;position:relative;overflow:hidden;transition:width .4s ease,background .3s}
#descubre .ddot.on{width:48px;background:#b0b0b5}
#descubre .dctl:not(.playing) .ddot.on{background:#1d1d1f}
#descubre .ddot i{position:absolute;left:0;top:0;bottom:0;width:0;background:#1d1d1f;border-radius:4px}
section[id]{scroll-margin-top:64px}
#descubre .tiles-nav{display:none}
#descubre .dctl{gap:10px;margin-top:20px}
#descubre .dplay{width:40px;height:40px}
#descubre .dplay::before{left:16px;top:14px;border-width:6px 0 6px 10px}
#descubre .dctl.playing .dplay::before{left:15px;top:14px;width:3px;height:12px;box-shadow:7px 0 0 #1d1d1f}
#descubre .ddots{height:40px;padding:0 16px;gap:8px;border-radius:20px}
#descubre .ddot{width:6px;height:6px;border-radius:3px}
#descubre .ddot.on{width:34px}
#descubre .ddot i{border-radius:3px}
#gaming{background:#000;color:#f5f5f7}
#gaming .vtitle{color:#f5f5f7}
#gaming .vtitle .grey{color:#86868b}
#gaming .tnav{background:#1d1d1f;color:#f5f5f7}
#gaming .vtitle .grey{display:inline-block;margin-top:6px;font-size:clamp(20px,2vw,26px);line-height:1.25;font-weight:500;color:#86868b}
#gaming .vtitle .grey{color:#a78bfa}
.vtitle .grey{font-size:clamp(17px,1.6vw,21px)!important}
#gaming .vcard{background:#000;isolation:isolate;-webkit-mask-image:-webkit-radial-gradient(white,black);backface-visibility:hidden}
#gaming .vcard img{backface-visibility:hidden}
#descubre .d-btns{justify-content:flex-start;margin-top:20px}#descubre{padding-top:56px}
#descubre .vtitle{text-align:center!important;font-size:clamp(32px,4vw,52px)!important}#descubre .vtitle .grey{font-size:clamp(17px,1.6vw,21px)!important}#descubre .d-btns{justify-content:center!important;margin-bottom:28px}
.qband{padding:40px 0!important;background:#f5f5f7}
.qtitle{margin:0 0 16px!important;text-align:left}
.qlinks{display:flex;flex-wrap:wrap;gap:8px}
.qlinks a{display:inline-block;padding:6px 14px;border:1px solid #1d1d1f;border-radius:980px;color:#1d1d1f;text-decoration:none;font-size:13px;line-height:1.2;background:transparent;transition:background .2s,color .2s}
.qlinks a:hover{background:#1d1d1f;color:#fff}
@media (max-width:640px){.qlinks{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px}.qlinks::-webkit-scrollbar{display:none}.qlinks a{white-space:nowrap}}
#rapidos>.wrap{max-width:none;padding:0 max(24px,calc(50vw - 600px))}
#reparacion .vcard .vtext,#gaming .vcard .vtext{transition:transform .9s cubic-bezier(.22,.8,.3,1),opacity .8s ease!important}
#reparacion .vcard.out-r .vtext,#gaming .vcard.out-r .vtext{transform:translateX(60px);opacity:0;transition:none!important}
#reparacion .vcard.out-l .vtext,#gaming .vcard.out-l .vtext{transform:translateX(-60px);opacity:0;transition:none!important}
#reparacion .vcard.minact .vtext,#gaming .vcard.minact .vtext{opacity:0;transform:none;transition:opacity .25s ease!important}
.vcard .vvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;backface-visibility:hidden}
.qlinks a.ha-b{padding:8px 16px;font-size:15px;border:1px solid #0066cc;color:#0066cc;background:transparent}.qlinks a.ha-b:hover{background:#0066cc;color:#fff}.qlinks{gap:10px}@media (max-width:640px){.qlinks a.ha-b{padding:7px 14px;font-size:14px}}
#tienda h2{font-size:clamp(24px,2.6vw,34px)!important;font-weight:500;letter-spacing:-.02em}#tienda address,#tienda .hours{font-size:15px}#tienda .hours caption{font-size:15px}
#porque .vtitle{text-align:center!important;font-size:clamp(32px,4vw,52px)!important}#porque .vtitle .grey{display:inline-block;margin-top:6px;font-size:clamp(17px,1.6vw,21px)!important;line-height:1.25;font-weight:500;color:#86868b}#porque .dhead{text-align:center}#porque .d-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center!important;margin:20px auto 28px}
#porque .d-btns{flex-wrap:nowrap!important;gap:8px!important}#porque .d-btns .ha-b{white-space:nowrap;font-size:clamp(13px,3.4vw,17px);padding-left:clamp(12px,3.5vw,22px);padding-right:clamp(12px,3.5vw,22px);margin:0!important}
#rapidos,#rapidos.band,#rapidos.light{background:#fff!important}
#gaming .vtitle{text-align:center!important;font-size:clamp(32px,4vw,52px)!important}#gaming .vtitle .grey{display:inline-block;margin-top:6px;font-size:clamp(17px,1.6vw,21px)!important;line-height:1.25;font-weight:500}
#porque{padding-bottom:24px!important}#porque .tiles-nav{margin-bottom:0!important}#tienda{padding-top:32px!important}
