:root{--font-heading:'Barlow Condensed',system-ui,sans-serif;--font-body:'Barlow',system-ui,sans-serif;--acento:#EC4899}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#0a0a0c;color:#f4f4f5;font-family:var(--font-body);font-size:16px;line-height:1.5;text-wrap:pretty;-webkit-font-smoothing:antialiased}
a{color:var(--acento);text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--acento);outline-offset:2px}
img,svg{max-width:100%}
::selection{background:rgba(236,72,153,.3)}
@keyframes relo-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes relo-pulse{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes relo-dash{to{stroke-dashoffset:-24}}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.16,.84,.28,1),transform .8s cubic-bezier(.16,.84,.28,1)}
.reveal.on{opacity:1;transform:none}

/* ── tablet ── */
@media (max-width:1100px){
 main h1{font-size:clamp(44px,8.4vw,96px) !important;max-width:none !important}
 main h2{font-size:clamp(30px,5vw,58px) !important;max-width:none !important}
 main p,main li{max-width:none !important}
 main [style*="repeat(6,1fr)"]{grid-template-columns:repeat(3,1fr) !important}
 main [style*="repeat(5,1fr)"]{grid-template-columns:repeat(2,1fr) !important}
 main [style*="repeat(4,1fr)"]{grid-template-columns:repeat(2,1fr) !important}
 main [style*="repeat(3,1fr)"]{grid-template-columns:repeat(2,1fr) !important}
 main [style*="minmax(0,1fr) 396px"],main [style*="minmax(0,1fr) 420px"],main [style*="minmax(0,1fr) 460px"],main [style*="minmax(0,1fr) 320px"],main [style*="minmax(0,1fr) 340px"],main [style*="minmax(0,1fr) 380px"],main [style*="minmax(0,1fr) 300px"]{grid-template-columns:minmax(0,1fr) !important}
 main [style*="position:sticky"]{position:static !important}
 main header,main footer,main>div>div>div{padding-left:28px !important;padding-right:28px !important}
 main [style*="padding:40px 56px"],main [style*="padding:36px 56px"],main [style*="padding:40px 48px"],main [style*="padding:36px 48px"]{padding:28px !important}
}
/* ── móvil ── */
@media (max-width:760px){
 body{font-size:15px}
 main h1{font-size:clamp(38px,10vw,56px) !important;line-height:.94 !important;letter-spacing:-.02em !important}
 main h2{font-size:clamp(27px,7.4vw,38px) !important;line-height:1.02 !important}
 main h3{font-size:21px !important;line-height:1.1 !important}
 main header,main footer,main>div>div>div{padding-left:20px !important;padding-right:20px !important}
 main>div>div>div{padding-top:48px !important}
 main [style*="grid-template-columns"]{grid-template-columns:1fr !important}
 main [style*="display:grid"][style*="54px"],main [style*="display:grid"][style*="70px"],main [style*="display:grid"][style*="130px"],main [style*="display:grid"][style*="150px"],main [style*="display:grid"][style*="120px"]{grid-template-columns:1fr !important;gap:6px !important}
 main [style*="font-size:112px"],main [style*="font-size: 112px"]{font-size:56px !important}
 main [style*="font-size:82px"],main [style*="font-size: 82px"],main [style*="font-size:74px"],main [style*="font-size: 74px"]{font-size:48px !important}
 main [style*="font-size:62px"],main [style*="font-size: 62px"],main [style*="font-size:58px"],main [style*="font-size:64px"],main [style*="font-size:78px"]{font-size:40px !important}
 main [style*="font-size:40px"],main [style*="font-size:38px"],main [style*="font-size:34px"]{font-size:28px !important}
 main [style*="min-height:430px"]{min-height:0 !important}
 main nav{display:flex !important;gap:16px !important;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:12px !important;padding-bottom:2px}
 main nav::-webkit-scrollbar{display:none}
 main header{flex-wrap:wrap !important;gap:14px !important;padding-top:16px !important;padding-bottom:16px !important}
 main header>a:last-child,main header>div:last-child{margin-left:auto}
 main a[style*="padding:17px 30px"],main a[style*="padding:19px 40px"],main button{width:100%;text-align:center;justify-content:center;min-height:52px}
 main [style*="display:flex"][style*="gap:14px"][style*="margin-top:34px"],main [style*="display:flex"][style*="gap:14px"][style*="margin-top:36px"]{flex-direction:column !important}
 main svg[viewBox="0 0 1130 366"]{min-width:680px}
 main svg[viewBox="0 0 1130 366"]{display:block}
 main div:has(>svg[viewBox="0 0 1130 366"]){overflow-x:auto}
 main [style*="width:max-content"]{animation-duration:34s !important}
}
@media (max-width:420px){
 main h1{font-size:34px !important}
 main header,main footer,main>div>div>div{padding-left:16px !important;padding-right:16px !important}
}

.xnav:hover{color:#f4f4f5 !important}
.xcta:hover{background:#f472b6 !important}
.xghost:hover{border-color:#f4f4f5 !important}
.lang{display:flex;border:1px solid #3a3a42;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em}
.lang a{padding:5px 9px;color:#8b8b93}
.lang a.on{background:#f4f4f5;color:#0a0a0c}
