/* FastPass — estilos globais. Cores da marca: vermelho #8C0F14, vermelho logo #EC1B24, grafite #1B2831 */
body{margin:0;background:#FFFFFF}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
.fp{font-family:'Roboto',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:400;color:#3A3B3D;-webkit-font-smoothing:antialiased;line-height:1.6}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding-left:32px;padding-right:32px}
.cab{font-family:'Cabin','Roboto',system-ui,sans-serif;letter-spacing:-0.01em;line-height:1.12}
a{color:#3A3B3D;text-decoration:none}
a:hover{color:#8C0F14}
.dark a{color:#FFFFFF}
.dark a:hover{color:#F3B5B7}
a:focus-visible,button:focus-visible{outline:2px solid #EC1B24;outline-offset:3px;border-radius:4px}
.navl{display:flex}
.desk{display:flex}
.menu-btn{display:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,0.85fr);gap:64px;align-items:center}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.contact-grid{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:56px}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stats>div{border-left:1px solid rgba(255,255,255,0.22)}
.stats>div:first-child{border-left:0}
.partner{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:48px;align-items:start}
.fld{width:100%;min-height:48px;padding:12px 14px;border-radius:4px;border:1px solid #CFCFCF;background:#FFFFFF;color:#1F2023;font:inherit;font-size:15px}
.fld:focus{outline:2px solid #8C0F14;outline-offset:0;border-color:transparent}
.fld::placeholder{color:#7A7B7D}
.ferr{display:none;margin-top:6px;font-size:13px;color:#B3261E}
.fsum{display:none;align-items:center;gap:10px;padding:12px 14px;border-radius:4px;background:#FDECEC;color:#8E1B14;font-size:14px;font-weight:500}
.tried .fld:invalid{border-color:#D32F2F;box-shadow:0 0 0 3px rgba(211,47,47,0.14);background:#FFF8F8}
.tried .fld:invalid ~ .ferr{display:block}
.tried:invalid .fsum{display:flex}
.tried .consent:has(input:invalid){color:#B3261E}
.tried .consent input:invalid{outline:2px solid #D32F2F;outline-offset:2px}
.tried .consent:has(input:invalid) ~ .ferr{display:block}
.marq{display:flex;width:max-content;animation:marq 110s linear infinite}
.marq.rev{animation-direction:reverse;animation-duration:120s}
.marq img{height:56px;width:auto;display:block;flex:none}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.zoom img{transition:transform .6s ease}
.zoom:hover img{transform:scale(1.04)}
@media (max-width:1080px){.navl{display:none}.desk{display:none}.menu-btn{display:inline-flex}}
@media (max-width:960px){.hero-grid,.two,.contact-grid{grid-template-columns:minmax(0,1fr);gap:44px}.partner{grid-template-columns:minmax(0,1fr);gap:28px}}
@media (max-width:760px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}.stats>div:nth-child(3){border-left:0}}
@media (max-width:640px){.wrap{padding-left:20px;padding-right:20px}.sec{padding-top:80px!important;padding-bottom:80px!important}.marq img{height:42px}}
@media (max-width:560px){.form-row{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.marq{animation:none}html{scroll-behavior:auto}.zoom img{transition:none}}
[hidden]{display:none!important}
