
:root{--red:#dc2229;--black:#0b0b0c;--ink:#161617;--white:#fff;--grey:#f3f3f4;--mute:#8d8d92;--g:clamp(18px,3.4vw,52px);--F:'Archivo',system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{font:400 18px/1.6 var(--F);background:var(--black);color:var(--white);overflow-x:hidden}
a{color:inherit}img{display:block;max-width:100%}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
body>header{position:fixed;inset:0 0 auto 0;z-index:40;display:flex;justify-content:space-between;align-items:center;padding:16px var(--g);background:linear-gradient(#0b0b0cdd,#0b0b0c00)}
body>header>a{margin-right:clamp(16px,2.4vw,44px)}body>header>a img{height:70px;width:auto}.hr2{margin-left:auto}
body>header.sc{background:#0b0b0cf0;backdrop-filter:blur(10px);padding-top:10px;padding-bottom:10px}body>header{transition:padding .3s,background .3s}
.hr2{display:flex;gap:12px;align-items:center}
.cta{background:var(--red);padding:12px 22px;border-radius:2px;font-weight:700;font-size:15px;text-decoration:none;transition:background .2s,color .2s}
.cta:hover{background:#fff;color:var(--red)}
.loc{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-weight:900;font-size:15px;color:#fff;background:var(--red);padding:12px 20px;border-radius:2px;text-decoration:none;box-shadow:0 0 0 0 #dc222966;animation:lp 2.8s infinite}.loc:hover{background:#fff;color:var(--red)}body>header.sc .loc{top:50%}@keyframes lp{0%{box-shadow:0 0 0 0 #dc222988}70%,100%{box-shadow:0 0 0 14px #dc222900}}
.lang{font-weight:700;font-size:14px;text-decoration:none;padding:8px 6px;color:#cfcfd3}.lang:hover{color:#fff}
.mb{display:flex;align-items:center;gap:12px;background:#ffffff14;color:#fff;border:0;border-radius:2px;padding:0 18px 0 14px;height:44px;font:700 15px var(--F);cursor:pointer;backdrop-filter:blur(6px)}
.mb:hover{background:#ffffff26}
.mb i{position:relative;width:22px;height:22px;display:block}
.mb i:before,.mb i:after{content:"";position:absolute;left:1px;right:1px;top:50%;height:3px;background:var(--red);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.mb i:before{transform:translateY(-5px)}.mb i:after{transform:translateY(5px)}
.menu-open .mb i:before{transform:rotate(45deg)}.menu-open .mb i:after{transform:rotate(-45deg)}
@media(max-width:1000px){.cta{display:none}}@media(max-width:700px){.lang{display:none}.loc{position:static;transform:none;margin-left:auto;margin-right:10px;padding:12px 14px}.hr2{margin-left:0}body>header>a img{height:52px}}
/* dropdown menu */
.dd{position:absolute;right:var(--g);top:70px;width:min(460px,calc(100vw - 2*var(--g)));background:#161617f2;backdrop-filter:blur(14px);border:1px solid #ffffff1f;border-radius:14px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:2px;opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top right;pointer-events:none;transition:opacity .22s,transform .22s;box-shadow:0 24px 70px #000a}
.dd{transform-origin:top left}.menu-open .dd{opacity:1;transform:none;pointer-events:auto}
.dd a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:8px;font:500 13px/1.2 "Unbounded",var(--F);text-decoration:none;color:#fff;transition:background .2s}
.dd a:before{content:"";width:7px;height:7px;border-radius:50%;background:#ffffff33;transition:background .2s,transform .2s;flex:none}
.dd a:hover,.dd a:focus-visible{background:#ffffff14}
.dd a:hover:before,.dd a:focus-visible:before{background:var(--red);transform:scale(1.5)}
.dd .wide{grid-column:1/-1;background:var(--red);justify-content:center;margin-top:8px;font-family:var(--F);font-weight:700;font-size:15px}
.dd .wide:before{display:none}.dd .wide:hover{background:#fff;color:var(--red)}
@media(max-width:520px){.dd{grid-template-columns:1fr}}
.btn{display:inline-block;font-weight:700;padding:15px 28px;border-radius:2px;text-decoration:none;background:var(--red);color:#fff;transition:transform .25s,background .2s}
.btn:hover{transform:translateY(-3px)}
.btn.ghost{background:none;box-shadow:inset 0 0 0 2px #ffffff55}
.btn.ghost:hover{box-shadow:inset 0 0 0 2px #fff}
.xlogo{display:block;overflow:visible;width:100%;height:auto}.xlogo path{transform-box:fill-box;transform-origin:center}
.xlogo .xl{fill:var(--red);transform:translateX(calc(var(--o,0) * -1%))}.xlogo .xr{fill:var(--red);transform:translateX(calc(var(--o,0) * 1%))}.xlogo .xc{fill:#98989a;transform:rotate(calc(var(--rot,0) * 1deg))}
.hero{overflow:hidden}.hero>.xlogo.wm{position:absolute;left:8%;top:4%;width:68%;z-index:2;opacity:.55;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,#000 0,#000 46%,rgba(0,0,0,.28) 52%,rgba(0,0,0,.28) 100%);mask-image:linear-gradient(90deg,#000 0,#000 46%,rgba(0,0,0,.28) 52%,rgba(0,0,0,.28) 100%)}.hl{z-index:3}@media(max-width:900px){.hero>.xlogo.wm{left:-10%;top:0;width:90%;opacity:.4}}
.end .xlogo.we{position:absolute;right:-4%;top:-26%;width:46%;pointer-events:none;opacity:.9}
.vc .xlogo.bx .xl,.vc .xlogo.bx .xr{fill:#fff}.vc .xlogo.bx .xc{fill:#ffffff88}
.end .xlogo.we .xl,.end .xlogo.we .xr{fill:#fff}.end .xlogo.we .xc{fill:#ffffff88}
.end .btn.mlx{position:relative;isolation:isolate;font-size:clamp(18px,2vw,26px);padding:22px 38px;border-radius:999px;color:var(--red);background:linear-gradient(105deg,#fff 0%,#fff 35%,#ffd0d2 48%,#fff 61%,#fff 100%);background-size:260% 100%;animation:shim 3.2s linear infinite,bob 4s ease-in-out infinite;transition:color .3s,box-shadow .3s,background-color .3s;box-shadow:0 10px 30px #0004;will-change:transform}
.end .btn.mlx:before{content:"";position:absolute;inset:-6px;border-radius:inherit;border:2px solid #fff;opacity:0;z-index:-1;animation:ring 2.4s ease-out infinite}
.end .btn.mlx:hover{animation-play-state:paused;background:var(--black);color:#fff;box-shadow:0 14px 44px #000a}
.end .btn.mlx span{display:inline-block;transition:transform .3s}
.end .btn.mlx:hover span{transform:scale(1.06)}
@keyframes shim{from{background-position:130% 0}to{background-position:-130% 0}}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes ring{0%{transform:scale(.96);opacity:.7}100%{transform:scale(1.18,1.5);opacity:0}}
/* title wipe */
h2.rv>span{display:inline-block;color:transparent;background:linear-gradient(90deg,#fff 0,#fff 41%,#dc2229 50%,#ffffff1f 59%,#ffffff1f 100%) 100% 0/250% 100%;-webkit-background-clip:text;background-clip:text;padding-bottom:.08em}
h2.rv.go>span{animation:wsw 1.5s cubic-bezier(.65,0,.25,1) forwards}
@keyframes wsw{to{background-position:0 0}}
.acc h2.rv{padding:0;margin-left:var(--g)}
@media(prefers-reduced-motion:reduce){h2.rv>span{color:#fff;background:none}}
/* cta */
.end{background:var(--red);padding:clamp(70px,9vw,140px) var(--g);display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;position:relative;overflow:hidden}
.end h2{font-weight:900;font-size:clamp(40px,7vw,120px);line-height:.92;letter-spacing:-.03em;position:relative}
.end .btn{background:#fff;color:var(--red);font-size:19px;position:relative}
.end img{position:absolute;right:-6%;top:-30%;width:42%;filter:brightness(0) invert(1);opacity:.35;pointer-events:none}
body>footer{background:#101011;padding:clamp(54px,7vw,100px) var(--g) 30px;color:#c4c4c9;font-size:16px}
.fg{display:grid;grid-template-columns:1.3fr 1.2fr 1fr 1fr;gap:clamp(28px,4vw,64px)}
body>footer h4{font:500 12.5px/1 "Unbounded",var(--F);color:#fff;margin-bottom:18px}
body>footer a{text-decoration:none;color:inherit}body>footer a:hover{color:#fff}
body>footer ul{list-style:none;display:grid;gap:9px}
.ft{margin-top:16px;max-width:26ch;color:#a8a8ad}
body>footer .tel{display:block;white-space:nowrap;font-weight:900;font-size:clamp(30px,3.2vw,52px);line-height:1;letter-spacing:-.02em;color:#fff;margin:16px 0 12px;transition:color .25s}
body>footer .tel:hover{color:var(--red)}
body>footer .mail{color:#fff;font-weight:700;border-bottom:2px solid var(--red);padding-bottom:2px}
body>footer address{font-style:normal;line-height:1.55;margin-bottom:12px}
body>footer .fmap{display:inline-block;margin-top:2px;color:#fff;font-weight:700}body>footer .fmap:hover{color:var(--red)}
.soc{display:flex;gap:10px;flex-wrap:wrap}
.soc a{display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff33;border-radius:50%;transition:background .2s,border-color .2s}
.soc a:hover{background:var(--red);border-color:var(--red);color:#fff}
.fb{margin-top:clamp(36px,5vw,70px);padding-top:22px;border-top:1px solid #ffffff1f;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:14px;color:#8d8d92}
.fb img{height:38px}
@media(max-width:900px){.fg{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fg{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:10px 16px;z-index:999}.skip:focus{left:10px;top:10px}
