
/* ================= TOKENS ================= */
:root{
  --black:#09090b;
  --ink:#0e0e11;
  --card:#15161a;
  --card2:#1c1d22;
  --line:rgba(255,255,255,.09);
  --line2:rgba(255,255,255,.16);
  --text:#f6f5f2;
  --dim:#b9b8b4;
  --mute:#85847f;
  --red:#e8241a;
  --red-hi:#ff3b30;
  --red-lo:#b81c14;
  --wa:#25d366;
  --f-head:'Oswald','Arial Narrow',Impact,sans-serif;
  --f-body:'Sora',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --bar:60px;
  --pad:20px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:68px;background:var(--black);}
html.nm-open,html.nm-open body{overflow:hidden;}
body{
  margin:0;background:var(--black);color:var(--text);
  font-family:var(--f-body);font-size:15px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  padding-bottom:env(safe-area-inset-bottom,0px);
}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;}
button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent;}
h1,h2,h3,h4,p,ul{margin:0;}
ul{padding:0;list-style:none;}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding-inline:var(--pad);}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
:focus-visible{outline:2px solid var(--red-hi);outline-offset:3px;border-radius:6px;}

/* ================= REVEAL ================= */
html.js .rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--d,0) * 90ms);}
html.js .rv.rv-in{opacity:1;transform:none;}

/* ================= TOP BAR ================= */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:900;
  padding-top:env(safe-area-inset-top,0px);
  transition:background-color .5s ease,backdrop-filter .5s ease,-webkit-backdrop-filter .5s ease,box-shadow .5s ease;
}
.topbar::before{
  content:"";position:absolute;inset:0 0 -24px 0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(9,9,11,.62) 0%,rgba(9,9,11,.22) 60%,rgba(9,9,11,0) 100%);
  transition:opacity .5s ease;
}
.topbar.is-scrolled{
  background:rgba(9,9,11,.72);
  -webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);
  box-shadow:0 1px 0 rgba(255,255,255,.06);
}
.topbar.is-open{
  background:rgba(9,9,11,.96);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  box-shadow:0 1px 0 rgba(255,255,255,.08);
}
.topbar.is-scrolled::before,.topbar.is-open::before{opacity:0;}
.tb-row{position:relative;max-width:1160px;margin:0 auto;height:var(--bar);padding:0 14px 0 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.tb-logo{display:flex;align-items:center;gap:9px;height:100%;flex:none;min-width:0;}
.tb-logo img{height:38px;width:38px;object-fit:contain;transition:transform .5s var(--ease);}
.topbar.is-scrolled .tb-logo img{transform:scale(.92);}
.tb-name{display:flex;flex-direction:column;line-height:1;min-width:0;}
.tb-name b{font-family:var(--f-head);font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;}
.tb-name b i{font-style:normal;color:var(--red-hi);}
.tb-name small{font-family:var(--f-mono);font-size:8.5px;letter-spacing:.14em;color:var(--mute);margin-top:4px;text-transform:uppercase;white-space:nowrap;}
.tb-right{display:flex;align-items:center;gap:8px;flex:none;}
.tb-wa,.tb-burger{
  width:40px;height:40px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;padding:0;
  border:1px solid var(--line2);background:rgba(255,255,255,.06);color:var(--text);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  transition:transform .25s ease,border-color .25s ease,background-color .25s ease;
}
.tb-wa{background:var(--red);border-color:transparent;color:#fff;}
.tb-wa svg{width:19px;height:19px;}
.tb-wa:active,.tb-burger:active{transform:scale(.92);}
.tb-burger span{position:absolute;left:50%;top:50%;width:18px;height:1.8px;margin:-.9px 0 0 -9px;border-radius:2px;background:currentColor;transition:transform .5s cubic-bezier(.65,0,.25,1),opacity .25s ease,width .4s ease;}
.tb-burger span:nth-child(1){transform:translateY(-5.5px);}
.tb-burger span:nth-child(3){transform:translateY(5.5px);width:11px;}
.tb-burger[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg);}
.tb-burger[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.2);}
.tb-burger[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg);width:18px;}
.tb-progress{position:absolute;left:0;right:0;bottom:0;height:2px;overflow:hidden;opacity:0;transition:opacity .4s ease;pointer-events:none;}
.topbar.is-scrolled .tb-progress,.topbar.is-open .tb-progress{opacity:1;}
.tb-progress i{display:block;height:100%;width:100%;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,var(--red-lo),var(--red-hi));box-shadow:0 0 10px rgba(255,59,48,.6);will-change:transform;}

/* ================= MENU ================= */
.nm-backdrop{position:fixed;inset:0;z-index:880;background:rgba(4,4,5,.66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s;}
.nm-backdrop.is-open{opacity:1;visibility:visible;transition:opacity .5s ease;}
.navmenu{
  position:fixed;top:0;left:0;right:0;z-index:890;
  padding:calc(var(--bar) + env(safe-area-inset-top,0px)) 0 0;
  background:linear-gradient(180deg,#0a0a0c 0%,#131317 100%);
  border-bottom:1px solid var(--line2);border-radius:0 0 24px 24px;
  box-shadow:0 30px 60px rgba(0,0,0,.6);
  max-height:100vh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;
  transform:translateY(-102%);visibility:hidden;
  transition:transform .65s cubic-bezier(.77,0,.18,1),visibility 0s linear .65s;
}
.navmenu.is-open{transform:translateY(0);visibility:visible;transition:transform .65s cubic-bezier(.77,0,.18,1);}
.navmenu::before{content:"";position:absolute;left:0;right:0;top:0;height:260px;pointer-events:none;background:radial-gradient(70% 100% at 90% 0%,rgba(232,36,26,.16),transparent 70%);}
.nm-inner{position:relative;max-width:640px;margin:0 auto;padding:8px 20px 24px;}
.nm-kicker{font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;color:var(--mute);display:flex;align-items:center;gap:10px;padding:6px 0 2px;text-transform:uppercase;}
.nm-kicker::after{content:"";flex:1;height:1px;background:var(--line);}
.nm-list li{border-bottom:1px solid rgba(255,255,255,.07);}
.nm-link{position:relative;display:flex;align-items:center;gap:16px;padding:11px 2px;color:var(--dim);transition:color .3s ease,padding-left .45s var(--ease);}
.nm-num{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;color:var(--mute);width:22px;flex:none;transition:color .3s ease;}
.nm-txt{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:clamp(1.12rem,5.2vw,1.38rem);letter-spacing:.03em;line-height:1.1;}
.nm-arrow{margin-left:auto;width:16px;height:16px;opacity:0;transform:translateX(-8px);transition:opacity .3s ease,transform .4s var(--ease);color:var(--red-hi);}
.nm-link:active{color:var(--text);padding-left:8px;}
.nm-link:active .nm-arrow{opacity:1;transform:none;}
@media (hover:hover){.nm-link:hover{color:var(--text);padding-left:8px;}.nm-link:hover .nm-arrow{opacity:1;transform:none;}}
.nm-link.is-active{color:var(--text);}
.nm-link.is-active .nm-num{color:var(--red-hi);}
.nm-link.is-active::before{content:"";position:absolute;left:-20px;top:50%;width:3px;height:22px;margin-top:-11px;border-radius:0 3px 3px 0;background:var(--red-hi);box-shadow:0 0 12px rgba(255,59,48,.6);}
.nm-list li,.nm-foot,.nm-kicker{opacity:0;transform:translateY(14px);}
.navmenu.is-open .nm-list li,.navmenu.is-open .nm-foot,.navmenu.is-open .nm-kicker{opacity:1;transform:none;transition:opacity .6s ease,transform .75s var(--ease);transition-delay:calc(var(--i,0) * 45ms + 220ms);}
.navmenu:not(.is-open) .nm-list li,.navmenu:not(.is-open) .nm-foot,.navmenu:not(.is-open) .nm-kicker{transition:opacity .2s ease;}
.nm-foot{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.nm-tag{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.14em;color:var(--mute);text-transform:uppercase;}

/* ================= BUTTONS ================= */
.btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:50px;padding:6px 6px 6px 20px;border-radius:999px;border:1px solid transparent;cursor:pointer;
  font-family:var(--f-body);font-weight:600;font-size:13.5px;line-height:1.2;text-align:center;
  transition:transform .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .3s ease;
}
.btn:active{transform:scale(.97);}
.btn-red{background:var(--red);color:#fff;box-shadow:0 10px 26px -10px rgba(232,36,26,.7);}
.btn-red i{width:38px;height:38px;border-radius:50%;background:#fff;color:var(--red);display:flex;align-items:center;justify-content:center;flex:none;transition:transform .35s var(--ease);}
.btn-red i svg{width:15px;height:15px;}
.btn-ghost{background:rgba(255,255,255,.04);border-color:var(--line2);color:var(--text);padding:6px 20px;}
.btn-sm{min-height:42px;font-size:12.5px;padding:4px 4px 4px 14px;gap:8px;}
.btn-sm i{width:32px;height:32px;}
.btn-sm i svg{width:13px;height:13px;}
.btn-block{display:flex;width:100%;}
.btn-wa{background:var(--wa);color:#04210f;box-shadow:0 10px 26px -12px rgba(37,211,102,.7);}
.btn-wa i{background:#04210f;color:var(--wa);}
@media (hover:hover){.btn-red:hover{background:var(--red-hi);}.btn-red:hover i{transform:translateX(3px);}.btn-ghost:hover{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.08);}}

/* ================= HERO ================= */
.hero{position:relative;}
.hero-media{position:relative;height:clamp(270px,min(92vw,48svh),470px);overflow:hidden;background:#050506;}
.hero-media img,.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:88% 50%;}
.hero-media::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(9,9,11,.5) 0%,rgba(9,9,11,0) 26%);}
.hero-media::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:62%;z-index:1;background:linear-gradient(180deg,rgba(9,9,11,0) 0%,rgba(9,9,11,.6) 45%,rgba(9,9,11,.94) 82%,var(--black) 100%);}
.hero-live{position:absolute;z-index:2;left:var(--pad);bottom:58px;display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:999px;background:rgba(9,9,11,.62);border:1px solid var(--line2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text);}
.hero-live .dot{width:7px;height:7px;border-radius:50%;background:var(--wa);box-shadow:0 0 0 0 rgba(37,211,102,.7);animation:livePulse 2s infinite;}
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55);}70%{box-shadow:0 0 0 8px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}
.hero-copy{position:relative;z-index:2;margin-top:-26px;padding-bottom:30px;}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-weight:500;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--red-hi);}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--red);border-radius:2px;}
.hero h1{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:clamp(34px,10.4vw,52px);line-height:1.02;letter-spacing:.005em;margin-top:12px;}
.hero h1 em{font-style:normal;color:var(--red-hi);}
.hero h1 .eyebrow{display:flex;text-wrap:balance;line-height:1.5;margin-bottom:12px;font-size:10px;letter-spacing:.13em;}
.hero h1 .h1m{display:block;}
.hero .lead{margin-top:14px;color:var(--dim);font-size:14.5px;line-height:1.65;max-width:520px;}
.hero-ctas{display:flex;gap:8px;margin-top:22px;}
.hero-ctas .btn{flex:1 1 0;min-width:0;}
.hero-ctas .btn-red{flex:1.18 1 0;padding-left:14px;font-size:12.5px;gap:8px;}
.hero-ctas .btn-red i{width:34px;height:34px;}
.hero-ctas .btn-ghost{font-size:12.5px;padding:6px 10px;}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));overflow:hidden;}
.hs{padding:14px 8px 13px;text-align:center;position:relative;}
.hs+.hs::before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:1px;background:var(--line);}
.hs b{display:block;font-family:var(--f-head);font-weight:600;font-size:28px;line-height:1;color:var(--text);letter-spacing:.01em;}
.hs b sup{font-size:.55em;color:var(--red-hi);vertical-align:.55em;margin-left:1px;}
.hs span{display:block;margin-top:7px;font-size:10.5px;line-height:1.35;color:var(--mute);}

/* ================= TRUST MARQUEE ================= */
.trust{border-block:1px solid var(--line);background:var(--ink);overflow:hidden;}
.trust-track{display:flex;width:max-content;animation:trust 34s linear infinite;}
.trust-set{display:flex;align-items:center;flex:none;}
.trust-item{display:flex;align-items:center;gap:10px;padding:13px 22px;white-space:nowrap;}
.trust-item svg{width:18px;height:18px;color:var(--red-hi);flex:none;}
.trust-item b{font-family:var(--f-mono);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text);}
.trust-sep{width:4px;height:4px;border-radius:50%;background:var(--red);flex:none;}
@keyframes trust{to{transform:translateX(-50%);}}

/* ================= SECTIONS ================= */
section{position:relative;padding-block:64px;}
section.hero{padding-block:0;}
.alt{background:var(--ink);border-block:1px solid var(--line);}
.sec-eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--f-mono);font-weight:500;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);}
.sec-eyebrow .num{color:var(--red-hi);}
.sec-eyebrow .rule{flex:1;height:1px;background:var(--line2);transform-origin:left center;max-width:120px;}
.sec-head h2{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:clamp(28px,8.4vw,42px);line-height:1.06;letter-spacing:.005em;margin-top:14px;}
.sec-head h2 em{font-style:normal;color:var(--red-hi);}
.sec-head p{margin-top:12px;color:var(--dim);font-size:14.5px;max-width:560px;}
.sec-head{margin-bottom:26px;}
@keyframes nxRule{0%{transform:scaleX(0);background:var(--red-hi);}100%{transform:scaleX(1);background:var(--line2);}}
@keyframes nxRise{0%{opacity:.3;transform:translateY(12px);}100%{opacity:1;transform:none;}}
.sec-eyebrow.nx-arrive .rule{animation:nxRule 1.1s var(--ease) both;}
.nx-arrive-head{animation:nxRise .9s var(--ease) both;}

/* services */
.svc-grid{display:grid;gap:14px;}
.svc{position:relative;padding:22px 20px 20px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,var(--card2),var(--card));overflow:hidden;}
.svc::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(232,36,26,.22),transparent 70%);pointer-events:none;}
.svc-ico{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(232,36,26,.12);color:var(--red-hi);border:1px solid rgba(232,36,26,.3);}
.svc-ico svg{width:24px;height:24px;}
.svc h3{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:24px;letter-spacing:.03em;margin-top:16px;line-height:1.1;}
.svc .desc{margin-top:8px;color:var(--dim);font-size:14px;}
.svc ul{margin:16px 0 20px;display:grid;gap:9px;}
.svc li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--text);line-height:1.45;}
.svc li svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--red-hi);}

/* carousel generic */
.car{position:relative;}
.car-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-inline:var(--pad);scroll-padding-inline:var(--pad);overscroll-behavior-x:contain;}
.car-track::-webkit-scrollbar{display:none;}
.car-item{flex:none;scroll-snap-align:start;}
.dots{display:flex;justify-content:center;gap:7px;margin-top:18px;}
.dot-b{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.2);cursor:pointer;transition:width .4s var(--ease),background-color .3s ease;}
.dot-b.on{width:24px;background:var(--red-hi);}
.dot-b{position:relative;}
.dot-b::after{content:"";position:absolute;inset:-9px -4px;}

/* tipos */
.tipos .car-item{width:min(78vw,300px);}
.tipo{height:100%;padding:20px 18px 18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,var(--card2),var(--card));display:flex;flex-direction:column;}
.tipo-top{display:flex;align-items:center;justify-content:space-between;}
.tipo-ico{width:62px;height:62px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(232,36,26,.12);border:1px solid rgba(232,36,26,.3);color:var(--red-hi);}
.tipo-ico svg{width:38px;height:38px;}
.tipo-n{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--mute);}
.tipo h3{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:22px;letter-spacing:.03em;margin-top:18px;line-height:1.1;}
.tipo p{margin-top:8px;color:var(--dim);font-size:13.5px;flex:1;}
.tipo a{margin-top:16px;display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-hi);}
.tipo a svg{width:14px;height:14px;transition:transform .3s var(--ease);}
.tipo a:active svg{transform:translateX(4px);}

/* como funciona */
.how-list{position:relative;margin-top:6px;padding-left:0;}
.how-line{position:absolute;left:23px;top:24px;bottom:24px;width:2px;background:var(--line);border-radius:2px;}
.how-line i{display:block;width:100%;height:100%;transform-origin:top center;transform:scaleY(0);background:linear-gradient(180deg,var(--red-hi),var(--red-lo));box-shadow:0 0 12px rgba(255,59,48,.5);will-change:transform;}
.how-step{position:relative;display:flex;gap:18px;padding-bottom:26px;}
.how-step:last-child{padding-bottom:0;}
.how-n{position:relative;z-index:1;flex:none;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ink);border:2px solid var(--line2);font-family:var(--f-head);font-weight:600;font-size:20px;color:var(--mute);transition:border-color .5s ease,color .5s ease,background-color .5s ease,box-shadow .5s ease;}
.how-step.lit .how-n{border-color:var(--red-hi);color:#fff;background:var(--red);box-shadow:0 0 0 6px rgba(232,36,26,.14);}
.how-body{padding-top:4px;min-width:0;}
.how-body h3{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:21px;letter-spacing:.03em;line-height:1.15;}
.how-body p{margin-top:6px;color:var(--dim);font-size:14px;}
.how-cta{margin-top:26px;}

/* galeria */
.gal .car-item{width:min(86vw,440px);}
.shot{position:relative;aspect-ratio:4/3.1;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#050506;}
.shot img{width:100%;height:100%;object-fit:cover;}
.shot.contain img{object-fit:contain;}
.shot::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(180deg,transparent,rgba(9,9,11,.88));pointer-events:none;}
.shot figcaption{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;line-height:1.3;}
.shot figcaption::before{content:"";width:18px;height:2px;background:var(--red);flex:none;border-radius:2px;}
.shot-count{position:absolute;top:12px;right:12px;z-index:1;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;padding:5px 9px;border-radius:99px;background:rgba(9,9,11,.62);border:1px solid var(--line2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
.shot{margin:0;}
.gal-badges{display:grid;gap:10px;margin-top:22px;}
.badge{display:flex;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:var(--card);}
.badge svg{width:20px;height:20px;color:var(--red-hi);flex:none;}
.badge b{display:block;font-size:13px;line-height:1.3;}
.badge span{display:block;color:var(--mute);font-size:12px;line-height:1.4;margin-top:1px;}

/* frota */
.fleet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.car-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,var(--card2),var(--card));overflow:hidden;}
.car-card .ph{position:relative;aspect-ratio:4/3;background:#0a0a0c;overflow:hidden;}
.car-card .ph img{width:100%;height:100%;object-fit:cover;}
.car-card .ph::after{content:"";position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(180deg,transparent,rgba(21,22,26,.9));}
.car-card .bd{padding:12px 12px 12px;display:flex;flex-direction:column;gap:3px;flex:1;}
.car-card .mk{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);}
.car-card h3{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:17px;letter-spacing:.03em;line-height:1.15;}
.car-card .pr{font-size:11.5px;color:var(--dim);margin-bottom:10px;}
.car-card .btn{margin-top:auto;width:100%;justify-content:space-between;}
.car-card.wide{grid-column:1/-1;}
.car-card.wide .ph{aspect-ratio:16/9;}
.fleet-note{margin-top:20px;display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px dashed var(--line2);border-radius:16px;color:var(--dim);font-size:13px;}
.fleet-note svg{width:20px;height:20px;color:var(--red-hi);flex:none;margin-top:1px;}

/* faq */
.faq{display:grid;gap:10px;}
.faq-item{border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden;transition:border-color .3s ease,background-color .3s ease;}
.faq-item.open{border-color:rgba(232,36,26,.4);background:linear-gradient(180deg,var(--card2),var(--card));}
.faq-q{width:100%;display:flex;align-items:center;gap:14px;padding:16px 16px;background:none;border:0;text-align:left;cursor:pointer;font-weight:600;font-size:14px;line-height:1.4;}
.faq-q span{flex:1;}
.faq-ic{width:30px;height:30px;border-radius:50%;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;flex:none;position:relative;transition:background-color .3s ease,border-color .3s ease,transform .4s var(--ease);}
.faq-ic::before,.faq-ic::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.8px;margin:-.9px 0 0 -5.5px;background:currentColor;border-radius:2px;transition:transform .4s var(--ease);}
.faq-ic::after{transform:rotate(90deg);}
.faq-item.open .faq-ic{background:var(--red);border-color:var(--red);transform:rotate(180deg);}
.faq-item.open .faq-ic::after{transform:rotate(0);}
.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease);}
.faq-item.open .faq-a{grid-template-rows:1fr;}
.faq-a>div{overflow:hidden;}
.faq-a p{padding:0 16px 18px;color:var(--dim);font-size:13.5px;line-height:1.7;}
.faq-more{margin-top:22px;text-align:center;color:var(--dim);font-size:13.5px;}
.faq-more .btn{margin-top:14px;}

/* sobre */
.about{display:grid;gap:30px;}
.about p{margin-top:14px;color:var(--dim);font-size:14.5px;}
.about-art{position:relative;display:flex;align-items:center;justify-content:center;padding:26px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(70% 70% at 50% 40%,rgba(232,36,26,.16),transparent 70%),linear-gradient(180deg,var(--card2),var(--card));}
.about-art{isolation:isolate;padding:14px;}
.logo-anim{display:block;width:min(100%,400px);height:auto;aspect-ratio:4/3;mix-blend-mode:screen;background:transparent;pointer-events:none;}
.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;}
.stat{padding:16px 14px;border:1px solid var(--line);border-radius:18px;background:var(--card);}
.stat b{display:block;font-family:var(--f-head);font-weight:600;font-size:34px;line-height:1;color:var(--text);}
.stat b i{font-style:normal;color:var(--red-hi);}
.stat span{display:block;margin-top:8px;font-size:12px;color:var(--mute);line-height:1.4;}
.cover{display:flex;gap:12px;align-items:flex-start;margin-top:12px;padding:15px 14px;border:1px solid var(--line);border-radius:18px;background:var(--card);}
.cover svg{width:22px;height:22px;color:var(--red-hi);flex:none;margin-top:2px;}
.cover b{display:block;font-size:13.5px;}
.cover span{display:block;margin-top:3px;font-size:12.5px;color:var(--dim);line-height:1.55;}

/* cta */
.cta{padding-block:56px;background:radial-gradient(90% 80% at 80% 0%,rgba(232,36,26,.28),transparent 65%),linear-gradient(180deg,#121014,var(--black));border-top:1px solid var(--line);}
.cta h2{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:clamp(30px,9vw,46px);line-height:1.04;margin-top:14px;}
.cta h2 em{font-style:normal;color:var(--red-hi);}
.cta p{margin-top:12px;color:var(--dim);font-size:14.5px;max-width:520px;}
.cta .btn{margin-top:24px;}
.contacts{margin-top:26px;display:grid;gap:10px;}
.ct{display:flex;align-items:center;gap:14px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.03);min-width:0;}
.ct svg{width:20px;height:20px;color:var(--red-hi);flex:none;}
.ct small{display:block;font-family:var(--f-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);}
.ct b{display:block;font-size:13.5px;font-weight:600;word-break:break-word;}
.ct div{min-width:0;}

/* áreas atendidas */
.areas{display:grid;gap:14px;grid-template-columns:1fr;}
.area-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--card2),var(--card));padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;}
.area-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(232,36,26,.12);border:1px solid rgba(232,36,26,.35);color:var(--red-hi);}
.area-ico svg{width:22px;height:22px;}
.area-card h3{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:24px;line-height:1.1;margin-top:16px;}
.area-card p{margin-top:10px;color:var(--dim);font-size:14.5px;line-height:1.65;}
.area-card .btn{margin-top:20px;}
.areas-note{margin-top:18px;color:var(--mute);font-size:13.5px;}
@media(min-width:760px){.areas{grid-template-columns:1fr 1fr;gap:18px;}}
/* footer */
footer{padding:40px 0 96px;border-top:1px solid var(--line);background:var(--black);}
.ft-brand img{width:150px;}
.ft-brand p{margin-top:14px;color:var(--mute);font-size:13px;max-width:360px;}
.ft-social{display:flex;gap:10px;margin-top:16px;}
.ft-social a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;color:var(--dim);}
.ft-social a svg{width:18px;height:18px;}
.ft-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;}
.ft-col h5{margin:0 0 12px;font-family:var(--f-mono);font-weight:500;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--red-hi);}
.ft-col a,.ft-col span{display:block;padding:5px 0;color:var(--dim);font-size:13px;line-height:1.4;word-break:break-word;}
.ft-bottom{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;color:var(--mute);font-size:11.5px;}
.dev{display:inline-flex;align-items:center;gap:9px;color:var(--mute);}
.dev img{height:20px;width:auto;opacity:.92;}
.ft-top{margin-top:18px;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--line2);border-radius:99px;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);cursor:pointer;background:none;}
.ft-top svg{width:14px;height:14px;}

/* floating whatsapp */
.wa-float{
  position:fixed;z-index:700;right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));
  display:flex;align-items:center;height:54px;padding:0 0 0 0;border-radius:99px;background:var(--wa);color:#04210f;
  box-shadow:0 12px 30px -8px rgba(37,211,102,.55),0 0 0 1px rgba(255,255,255,.1) inset;
  opacity:0;visibility:hidden;transform:translateY(16px);pointer-events:none;
  transition:transform .45s var(--ease),opacity .35s ease,visibility 0s linear .35s;
}
.wa-float.show{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:transform .45s var(--ease),opacity .35s ease;}
.wa-float .ico{width:54px;height:54px;display:flex;align-items:center;justify-content:center;flex:none;}
.wa-float .ico svg{width:28px;height:28px;}
.wa-float .lb{max-width:0;overflow:hidden;white-space:nowrap;font-weight:700;font-size:13px;transition:max-width .5s var(--ease),padding .5s var(--ease);padding-right:0;}
.wa-float.expand .lb{max-width:140px;padding-right:20px;}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid var(--wa);opacity:0;animation:waPulse 2.8s ease-out infinite;pointer-events:none;}
@keyframes waPulse{0%{transform:scale(1);opacity:.55;}80%,100%{transform:scale(1.35);opacity:0;}}
.wa-float.show:active{transform:scale(.95);}
html.nm-open .wa-float{opacity:0;visibility:hidden;pointer-events:none;}

/* ================= LARGER SCREENS ================= */
@media (min-width:560px){
  :root{--pad:28px;}
  .hs b{font-size:34px;}
  .hero-ctas .btn-red,.hero-ctas .btn-ghost{font-size:13.5px;}
  .fleet{grid-template-columns:repeat(3,minmax(0,1fr));}
  .car-card.wide{grid-column:auto;}
  .car-card.wide .ph{aspect-ratio:4/3;}
  .contacts{grid-template-columns:1fr 1fr;}
}
@media (min-width:860px){
  :root{--pad:36px;}
  section{padding-block:92px;}
  section.hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:100svh;max-width:1160px;margin:0 auto;padding:calc(var(--bar) + 30px) var(--pad) 40px;gap:40px;}
  .hero-copy.wrap{padding-inline:0;}
  .hero-media{order:2;height:min(560px,70svh);border-radius:28px;border:1px solid var(--line);}
  .hero-media::after{height:30%;}
  .hero-copy{order:1;margin-top:0;padding-bottom:0;}
  .hero-live{bottom:20px;}
  .hero .lead{font-size:16px;}
  .hero-ctas{max-width:520px;}
  .svc-grid{grid-template-columns:1fr 1fr;gap:20px;}
  .svc{padding:30px 28px 28px;}
  .tipos .car-track{padding-inline:max(var(--pad),calc((100vw - 1160px)/2 + var(--pad)));}
  .tipos .car-item{width:300px;}
  .how-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .how-line{display:none;}
  .how-step{flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--card);}
  .gal .car-track{padding-inline:max(var(--pad),calc((100vw - 1160px)/2 + var(--pad)));}
  .gal .car-item{width:480px;}
  .gal-badges{grid-template-columns:repeat(3,1fr);}
  .fleet{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
  .about{grid-template-columns:1.1fr .9fr;align-items:center;gap:56px;}
  .faq{max-width:760px;}
  .ft-cols{grid-template-columns:1.2fr 1fr 1fr;}
  .ft-wrap{display:grid;grid-template-columns:1fr 2fr;gap:50px;}
  .ft-cols{margin-top:0;}
  .ft-bottom{flex-direction:row;justify-content:space-between;}
}
@media (max-width:359px){
  :root{--pad:16px;}
  .tb-name small{display:none;}
  .hero-ctas .btn-red{padding-left:12px;font-size:11.5px;gap:6px;}
  .hero-ctas .btn-red i{width:30px;height:30px;}
  .hero-ctas .btn-ghost{font-size:11.5px;padding:6px 8px;}
  .fleet{gap:10px;}
  .car-card h3{font-size:15.5px;}
}
@media (max-height:620px) and (max-width:859px){
  .hero-media{height:clamp(230px,44svh,300px);}
  .hero-live{bottom:50px;}
  .hero h1{font-size:clamp(30px,9vw,40px);margin-top:8px;}
  .hero .lead{margin-top:10px;font-size:13.5px;}
  .hero-ctas{margin-top:16px;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01s !important;animation-iteration-count:1 !important;transition-duration:.01s !important;transition-delay:0s !important;scroll-behavior:auto !important;}
  html.js .rv{opacity:1;transform:none;}
  .trust-track{animation:none;}
}
/* ================= SUBPÁGINAS E LINKS INTERNOS ================= */
.hero.sub .hero-media{height:clamp(220px,58vw,340px);}
.hero.sub .hero-copy{margin-top:-24px;}
.hero.sub h1{margin-top:0;}
.hero.sub h1 .h1m{font-size:clamp(30px,9vw,46px);line-height:1.04;}
.hero.sub .hero-live{bottom:50px;}
.crumbs{margin-bottom:14px;}
.crumbs ol{display:flex;flex-wrap:wrap;gap:4px 8px;padding:0;margin:0;list-style:none;font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);}
.crumbs li+li::before{content:"/";margin-right:8px;color:var(--line2);}
.crumbs a{color:var(--dim);}
.crumbs [aria-current]{color:var(--text);}
.prose p{margin-top:14px;color:var(--dim);font-size:15px;line-height:1.75;max-width:680px;}
.prose p:first-child{margin-top:0;}
.prose a,.faq-a a,.areas-note a{color:var(--text);border-bottom:1px solid var(--red);}
.prose .after{margin-top:18px;}
.checks{display:grid;gap:10px;margin-top:18px;max-width:680px;}
.checks li{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--text);font-size:14px;line-height:1.5;}
.checks li svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--red-hi);}
.alt .checks li{background:var(--card2);}
.checks-t{margin-top:20px;font-weight:600;font-size:14px;color:var(--text);}
.msg{margin-top:18px;max-width:680px;padding:16px 16px;border:1px dashed var(--line2);border-left:3px solid var(--red);border-radius:14px;background:var(--card);font-size:14px;line-height:1.65;color:var(--text);}
.sub-cta{margin-top:24px;}
.rel-grid{display:grid;gap:12px;grid-template-columns:1fr;}
.rel-card{display:flex;flex-direction:column;gap:6px;padding:16px 16px 14px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--card2),var(--card));transition:border-color .3s ease;}
.rel-card b{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:18px;letter-spacing:.03em;line-height:1.15;}
.rel-card span{color:var(--dim);font-size:13px;line-height:1.5;flex:1;}
.rel-card em{font-style:normal;margin-top:6px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-hi);}
@media (hover:hover){.rel-card:hover{border-color:rgba(232,36,26,.5);}}
.rel-home{margin-top:34px;}
.rel-home h3{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:22px;line-height:1.1;margin-bottom:16px;}
.area-more{margin-top:14px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-hi);}
.faq-a a{color:var(--text);}
@media (min-width:560px){.rel-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:860px){
  section.hero.sub{min-height:0;padding:calc(var(--bar) + 40px) var(--pad) 56px;}
  .hero.sub .hero-media{height:420px;}
  .hero.sub .hero-copy{margin-top:0;}
  .hero.sub h1 .h1m{font-size:clamp(40px,4.4vw,56px);}
  .rel-grid{grid-template-columns:repeat(3,1fr);}
  .ft-wrap{grid-template-columns:1fr 2.6fr;}
  .ft-cols{grid-template-columns:repeat(4,1fr);gap:22px;}
}
@media (min-width:560px) and (max-width:859px){.ft-cols{grid-template-columns:repeat(2,1fr);}}

