/* ===== RESET & BASE ===== */
:root{
  --primary:#0057D9;
  --primary-dark:#003B99;
  --primary-glow:rgba(0,87,217,.35);
  --accent:#FF7A00;
  --accent-glow:rgba(255,122,0,.35);
  --cyan:#00E5FF;
  --dark:#0A0F1F;
  --gray:#667085;
  --gray-light:#98A2B3;
  --bg-light:#F5F8FF;
  --white:#FFFFFF;
  --success:#12B76A;
  --radius:16px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter','Segoe UI',Arial,sans-serif;color:var(--dark);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Space Grotesk','Inter',sans-serif;letter-spacing:-.02em;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.container{max-width:1200px;margin:0 auto;padding:0 24px;}

/* ===== BOTÕES ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:999px;font-weight:700;font-size:15px;text-align:center;transition:all .25s ease;cursor:pointer;border:none;}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--white);box-shadow:0 8px 24px var(--primary-glow);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 32px var(--primary-glow);}
.btn-accent{background:linear-gradient(135deg,var(--accent),#FF5500);color:#fff;box-shadow:0 8px 24px var(--accent-glow);}
.btn-accent:hover{transform:translateY(-2px);box-shadow:0 14px 32px var(--accent-glow);}
.btn-outline{border:1.5px solid var(--primary);color:var(--primary);background:rgba(0,87,217,.04);}
.btn-outline:hover{background:var(--primary);color:var(--white);}
.btn-ghost{border:1.5px solid rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(8px);}
.btn-ghost:hover{background:rgba(255,255,255,.18);border-color:#fff;}
.btn-block{width:100%;}

/* ===== HEADER ===== */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid rgba(0,0,0,.06);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0;}
.logo{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:800;color:var(--primary-dark);display:flex;align-items:center;gap:10px;}
.logo-mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--cyan));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:14px;box-shadow:0 6px 16px var(--primary-glow);}
.logo span{color:var(--accent);}
.nav-links{display:flex;gap:30px;font-weight:600;color:var(--dark);font-size:14.5px;}
.nav-links a{position:relative;transition:color .2s;}
.nav-links a:hover, .nav-links a.active{color:var(--primary);}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--primary);transition:width .25s;}
.nav-links a:hover::after, .nav-links a.active::after{width:100%;}
.nav-cta{display:flex;gap:12px;align-items:center;}
.mobile-toggle{display:none;font-size:24px;background:none;border:none;cursor:pointer;color:var(--dark);}

/* ===== PAGE HERO (páginas internas) ===== */
.page-hero{position:relative;background:radial-gradient(1200px 600px at 80% -10%,rgba(0,229,255,.18),transparent 60%),radial-gradient(900px 500px at 10% 30%,rgba(255,122,0,.15),transparent 60%),linear-gradient(135deg,#0A0F1F 0%,#0F1B3D 50%,#003B99 100%);color:#fff;padding:70px 0;overflow:hidden;text-align:center;}
.page-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);pointer-events:none;}
.page-hero .container{position:relative;}
.page-hero h1{font-size:38px;font-weight:800;margin-bottom:12px;background:linear-gradient(180deg,#fff 0%,#B8C7E0 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.page-hero p{opacity:.88;max-width:620px;margin:0 auto;color:#D6E1F2;font-size:16px;}
.breadcrumb{font-size:13px;color:#7FF5FF;margin-bottom:16px;font-weight:600;}
.breadcrumb a{text-decoration:underline;opacity:.9;}

/* ===== SECTIONS ===== */
section{padding:96px 0;}
.section-title{text-align:center;margin-bottom:60px;}
.section-title .tag{display:inline-block;background:rgba(0,87,217,.08);color:var(--primary);font-weight:700;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:6px 16px;border-radius:999px;margin-bottom:14px;}
.section-title h2{font-size:38px;font-weight:800;color:var(--dark);line-height:1.15;}
.section-title p{color:var(--gray);max-width:640px;margin:16px auto 0;font-size:16.5px;}

/* ===== CARDS GENÉRICOS ===== */
.info-card{background:#fff;border:1px solid #E4E7EC;border-radius:18px;padding:30px;transition:all .25s;}
.info-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,87,217,.12);border-color:var(--primary);}
.info-card .num{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--accent),#FF5500);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 8px 20px var(--accent-glow);font-size:18px;}
.info-card h4{margin-bottom:10px;font-size:18px;color:var(--dark);}
.info-card p{color:var(--gray);font-size:14.5px;}

.card{background:var(--bg-light);border-radius:var(--radius);padding:30px;}
.card-white{background:var(--white);border:1px solid #E4E7EC;border-radius:var(--radius);padding:30px;transition:all .25s;}
.card-white:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,87,217,.10);}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}

/* ===== TABELA ESTILO DARK (comissões etc.) ===== */
.dark-wrap{background:linear-gradient(160deg,#0A0F1F,#0F1B3D);border-radius:24px;padding:48px;color:#fff;margin-top:20px;position:relative;overflow:hidden;}
.dark-wrap::before{content:"";position:absolute;top:-150px;right:-100px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(0,229,255,.18),transparent 70%);}
.dark-wrap h3{font-size:24px;position:relative;}
table.commission{width:100%;border-collapse:collapse;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.04);backdrop-filter:blur(8px);position:relative;}
table.commission th,table.commission td{padding:14px 18px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08);font-size:14.5px;}
table.commission th{background:rgba(0,229,255,.10);color:#7FF5FF;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;}
table.commission tr:last-child td{border-bottom:none;}
table.commission td b{color:#FFD580;}
.level-cell{display:flex;align-items:center;gap:10px;}
.level-cell .lvl{width:28px;height:28px;border-radius:8px;background:rgba(0,229,255,.12);color:#7FF5FF;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;}

table.styled{width:100%;border-collapse:collapse;margin-top:20px;}
table.styled th, table.styled td{padding:14px 18px;text-align:left;border-bottom:1px solid #EAECF0;}
table.styled th{background:var(--primary);color:#fff;font-size:14px;}
table.styled tr:nth-child(even){background:var(--bg-light);}

/* ===== NOTAS / ALERTAS ===== */
.note-box{background:#FFF7E6;border-left:4px solid var(--accent);padding:16px 22px;border-radius:12px;font-size:14.5px;color:#7A4E00;margin-top:20px;display:flex;gap:14px;align-items:flex-start;}
.note-box.success{background:#EAF7EF;border-left-color:var(--success);color:#0B5D34;}
.note-box b{display:block;margin-bottom:4px;}
.alert{padding:14px 18px;border-radius:10px;font-size:14px;margin-bottom:20px;}
.alert-info{background:#EAF2FF;color:var(--primary-dark);border-left:4px solid var(--primary);}
.alert-success{background:#EAF7EF;color:#0B5D34;border-left:4px solid var(--success);}
.alert-warning{background:#FFF7E6;color:#7A4E00;border-left:4px solid var(--accent);}

/* ===== FORMULÁRIOS ===== */
.form-box{background:var(--white);border:1px solid #E4E7EC;border-radius:24px;padding:44px;max-width:640px;margin:0 auto;box-shadow:0 20px 60px rgba(0,87,217,.08);}
.form-box.wide{max-width:920px;}
.form-group{margin-bottom:18px;}
.form-group label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--dark);}
.form-group .hint{font-size:12px;color:var(--gray);margin-top:4px;}
.form-group input, .form-group select, .form-group textarea{width:100%;padding:13px 16px;border:1.5px solid #D0D5DD;border-radius:12px;font-size:15px;font-family:inherit;transition:border-color .2s;}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus{outline:none;border-color:var(--primary);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-row.cols-3{grid-template-columns:1fr 1fr 1fr;}
.form-row.cols-4{grid-template-columns:2fr 1fr 1fr 1fr;}
.form-section-title{font-size:16px;font-weight:700;color:var(--primary-dark);margin:28px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--bg-light);}
.form-section-title:first-child{margin-top:0;}
.checkbox-line{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--gray);margin-bottom:14px;}
.checkbox-line input{width:auto;margin-top:3px;}
.form-footer-link{text-align:center;margin-top:20px;font-size:14px;color:var(--gray);}
.form-footer-link a{color:var(--primary);font-weight:600;}

/* ===== STEPS ===== */
.steps-section{background:#F5F8FF;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px;}
.step{text-align:center;position:relative;padding:28px 18px;background:#fff;border-radius:18px;border:1px solid #E4E7EC;transition:all .25s;}
.step:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,87,217,.12);}
.step .circle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-size:22px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 10px 24px var(--primary-glow);position:relative;}
.step .circle::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px dashed rgba(0,87,217,.3);}
.step h4{font-size:16px;margin-bottom:8px;color:var(--dark);}
.step p{font-size:13.5px;color:var(--gray);}

/* ===== PARTNERS ===== */
.partners-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:40px auto 0;max-width:820px;}
.partner-card{background:#fff;border:1px solid #E4E7EC;border-radius:18px;padding:32px;text-align:center;font-weight:700;color:var(--primary-dark);transition:all .25s;}
.partner-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,87,217,.12);}
.partner-card .ico{width:60px;height:60px;border-radius:16px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:26px;}
.partner-card.combustivel .ico{background:linear-gradient(135deg,#FF7A00,#FF5500);box-shadow:0 10px 24px var(--accent-glow);}
.partner-card.lojas .ico{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 10px 24px var(--primary-glow);}
.partner-card .name{font-size:18px;display:block;margin-bottom:6px;}
.partner-card .desc{font-size:13.5px;color:var(--gray);font-weight:500;}

/* ===== FAQ ===== */
.faq-section{background:linear-gradient(180deg,#F5F8FF 0%,#FFFFFF 100%);}
.faq-list{max-width:820px;margin:0 auto;}
.faq-item{background:#fff;border:1px solid #E4E7EC;border-radius:14px;padding:20px 24px;margin-bottom:14px;transition:all .25s;}
.faq-item:hover{border-color:var(--primary);}
.faq-item summary{cursor:pointer;font-weight:700;font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--dark);}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:22px;color:var(--primary);font-weight:800;width:30px;height:30px;border-radius:50%;background:rgba(0,87,217,.08);display:flex;align-items:center;justify-content:center;transition:transform .25s;flex-shrink:0;}
.faq-item[open] summary::after{content:"–";transform:rotate(180deg);}
.faq-item[open]{border-color:var(--primary);box-shadow:0 8px 24px rgba(0,87,217,.08);}
.faq-item p{color:var(--gray);margin-top:14px;font-size:14.5px;}

/* ===== CTA FINAL ===== */
.cta-final{background:linear-gradient(135deg,#0A0F1F 0%,#0F1B3D 50%,#003B99 100%);color:#fff;text-align:center;border-radius:24px;padding:72px 40px;position:relative;overflow:hidden;}
.cta-final::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);}
.cta-final h2{font-size:38px;margin-bottom:14px;position:relative;}
.cta-final p{opacity:.85;margin-bottom:30px;font-size:17px;position:relative;}
.cta-final .btn{position:relative;}

.btn-login{
    width:100%;
    height:56px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    border:none;
    border-radius:16px;

    cursor:pointer;

    font-size:17px;
    font-weight:700;
    letter-spacing:.5px;

    color:#fff;

    background:linear-gradient(135deg,#1484f0 0%,#15c98b 100%);

    box-shadow:
        0 10px 30px rgba(20,132,240,.35);

    transition:all .35s ease;
}

.btn-login:hover{

    transform:translateY(-3px);

    box-shadow:
        0 18px 40px rgba(20,132,240,.45);

    background:linear-gradient(135deg,#0f74d9 0%,#11b77d 100%);
}

.btn-login:active{
    transform:scale(.98);
}

.btn-login i{
    font-size:20px;
}

.btn-login:disabled{
    opacity:.6;
    cursor:not-allowed;
}

/* ===== FOOTER ===== */
footer{background:var(--dark);color:#D0D5DD;padding:64px 0 28px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;}
footer h4{color:#fff;margin-bottom:18px;font-size:14px;letter-spacing:1.2px;text-transform:u

