:root{
      --yellow:#F2C500;
      --blue:#0B3D7A;
      --blue2:#0A2F5F;
      --muted:#5b6472;
      --card:#ffffff;
      --shadow: 0 12px 30px rgba(0,0,0,.18);
      --radius:18px;
      --max:1100px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, Helvetica, sans-serif;
      color:#111827;
      background:#ffffff;
    }
    a{color:inherit; text-decoration:none}
    .wrap{max-width:var(--max); margin:0 auto; padding:0 18px}
    .hero{
      position:relative;
      min-height: 82vh;
      display:flex;
      align-items:center;
      overflow:hidden;
      background:#0b1320;
    }
    .hero::before{
      content:"";
      position:absolute; inset:0;
      background:
        linear-gradient(90deg, rgba(11,19,32,.95) 0%, rgba(11,19,32,.75) 38%, rgba(11,19,32,.25) 70%, rgba(11,19,32,.10) 100%),
        linear-gradient(135deg, rgba(11,19,32,.15), rgba(11,19,32,.85));
      transform: scale(1.32);
    }
    .hero::after{
      content:"";
      position:absolute; inset:0;
      background: radial-gradient(1200px 600px at 20% 30%, rgba(242,197,0,.20), transparent 60%);
      pointer-events:none;
    }
    .heroContent{
      position:relative;
      width:100%;
      padding: 42px 0 28px;
    }
    .topbar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding: 14px 0 10px;
    }
    .brand{
      display:flex; align-items:center; gap:12px;
      background: rgba(242,197,0,.98);
      border-radius: 14px;
      padding: 10px 12px;
      box-shadow: 0 10px 24px rgba(0,0,0,.18);
    }
    .brand img{height:42px; width:auto; display:block}
    .nav{
      display:flex; gap:14px; align-items:center;
      color:#e5e7eb;
      font-weight:600;
      font-size:14px;
    }
    .nav a{opacity:.92}
    .nav a:hover{opacity:1}
    .heroGrid{
      display:grid;
      grid-template-columns: 1.08fr .92fr;
      gap: 22px;
      align-items:center;
      padding: 24px 0 30px;
    }
    h1{
      margin:0 0 10px;
      color:#fff;
      font-size: clamp(34px, 4.2vw, 56px);
      line-height:1.05;
      letter-spacing:-.02em;
    }
    .sub{
      color:#e5e7eb;
      font-size: clamp(16px, 1.35vw, 18px);
      line-height:1.55;
      max-width: 52ch;
      margin: 0 0 16px;
      font-weight:600;
    }
    .bullets{
      display:grid;
      grid-template-columns: 1fr;
      gap:10px;
      margin-top:12px;
      color:#f3f4f6;
      font-weight:600;
      font-size:14px;
    }
    .bullet{
      display:flex; gap:10px; align-items:flex-start;
      padding: 10px 12px;
      border-radius: 14px;
      background: rgba(17,24,39,.55);
      border: 1px solid rgba(255,255,255,.10);
      backdrop-filter: blur(6px);
    }
    .dot{
      width:10px; height:10px; border-radius:50%;
      background: var(--yellow);
      margin-top:4px;
      box-shadow: 0 0 0 4px rgba(242,197,0,.16);
      flex:0 0 auto;
    }
    .ctaBox{
      margin-top: 14px;
      background: rgba(255,255,255,.92);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 18px;
    }
    .ctaBox .title{
      font-weight:900;
      color: var(--blue2);
      font-size: 18px;
      margin: 0 0 10px;
      letter-spacing:-.01em;
    }
    .ctaBox .info{
      color:#111827;
      font-weight:800;
      line-height:1.35;
      margin:0 0 12px;
    }
    .ctaRow{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
      align-items:center;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      padding: 12px 14px;
      border-radius: 14px;
      font-weight:900;
      border:0;
      cursor:pointer;
      text-decoration:none;
      white-space:nowrap;
    }
    .btnPrimary{
      background: #16a34a;
      color:#fff;
      box-shadow: 0 14px 26px rgba(22,163,74,.25);
    }
    .btnGhost{
      background: #111827;
      color:#fff;
    }
    .mini{
      display:flex; align-items:center; gap:10px;
      margin-top: 14px;
      padding-top: 12px;
      border-top: 1px solid rgba(17,24,39,.10);
    }
    .mini img{height:34px; width:auto; display:block}
    .mini small{display:block; color:#374151; font-weight:900}
    .arrow{
      position:absolute;
      right: clamp(16px, 4vw, 70px);
      bottom: 26px;
      width: 86px;
      opacity:.95;
      filter: drop-shadow(0 14px 18px rgba(0,0,0,.28));
    }
    section{padding: 48px 0}
    .secTitle{
      margin:0 0 10px;
      font-size: clamp(26px, 3vw, 36px);
      letter-spacing:-.02em;
      color:#111827;
      text-align:center;
      font-weight:900;
    }
    .secSub{
      margin:0 auto 26px;
      max-width: 72ch;
      color: var(--muted);
      text-align:center;
      line-height:1.65;
      font-weight:600;
    }
    .cards{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:16px;
      align-items:stretch;
    }
    
    .cards.fuels{
      grid-template-columns: repeat(4, minmax(0, 1fr));
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
.card{
      background: var(--card);
      border-radius: var(--radius);
      box-shadow: 0 14px 30px rgba(0,0,0,.08);
      overflow:hidden;
      border: 1px solid rgba(17,24,39,.08);
    }
    .cardTop{
      padding:16px 16px 12px;
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      background: linear-gradient(90deg, rgba(242,197,0,.92), rgba(242,197,0,.76));
    }
    .cardTop h3{
      margin:0;
      font-size: 18px;
      font-weight: 900;
      color: var(--blue2);
      letter-spacing:-.01em;
    }
    .cardTop img{height:32px; width:auto}
    .otherTop img{height:44px; width:120px; object-fit:contain}
    .otherTop h3{font-size:16px}
    .cardBody{padding:14px 16px 18px}
    .cardBody p{margin:0 0 12px; color:#374151; font-weight:700; line-height:1.55}
    .cardBody ul{margin:0; padding-left: 18px; color:#111827; font-weight:800}
    .cardBody li{margin:7px 0}
    .featureRow{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
      align-items:center;
    }
    .imgCard{
      border-radius: var(--radius);
      overflow:hidden;
      box-shadow: 0 18px 34px rgba(0,0,0,.10);
      border: 1px solid rgba(17,24,39,.10);
      background:#fff;
    }
    .imgCard img{width:100%; height:auto; display:block}
    .pills{
      display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top: 10px;
    }
    .pill{
      display:flex; align-items:center; gap:10px;
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(17,24,39,.10);
      background:#fff;
      box-shadow: 0 10px 22px rgba(0,0,0,.06);
      font-weight:900;
      color:#111827;
    }
    .pill img{height:26px; width:auto}
    .contact{
      background: linear-gradient(180deg, #ffffff, #f7fafc);
      padding-bottom: 56px;
    }
    .contactBox{
      max-width: 860px;
      margin: 0 auto;
      background: #0b1320;
      border-radius: 22px;
      padding: 22px;
      box-shadow: 0 18px 40px rgba(0,0,0,.18);
      color:#fff;
      border: 1px solid rgba(255,255,255,.10);
    }
    .contactGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items:center;
    }
    .contactBox h3{margin:0 0 8px; font-size: 22px; letter-spacing:-.01em}
    .contactBox p{margin:0; color:#e5e7eb; font-weight:600; line-height:1.5}
    .contactMeta{
      display:grid; gap:8px;
      font-weight:800;
      color:#f9fafb;
    }
    .footer{
      padding: 16px 0 26px;
      text-align:center;
      color:#6b7280;
      font-weight:700;
      font-size:13px;
    }
    @media (max-width: 920px){
      .heroGrid{grid-template-columns: 1fr; padding: 16px 0 26px}
      .nav{display:none}
      .arrow{display:none}
      .cards{grid-template-columns: 1fr}
      .featureRow{grid-template-columns: 1fr}
      .contactGrid{grid-template-columns: 1fr}
      .brand img{height:38px}
    }
  
    .heroPhoto{
      border-radius: var(--radius);
      overflow:hidden;
      box-shadow: 0 18px 34px rgba(0,0,0,.22);
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(17,24,39,.35);
    }
    .heroPhoto img{
      width:100%;
      height: 420px;
      object-fit: cover;
      object-position: center 65%;
            transform: scale(1.22);
      transform-origin: 50% 70%;
      display:block;
    }
    /* Deixa o box do WhatsApp dentro do conteúdo, sem cobrir a foto */
    .ctaBox{ max-width: 520px; }
    @media (max-width: 980px){
      .heroPhoto img{ height: 320px; object-position: center 60%; }
    }
    /* PMQ mais compacto */
    #pmq{ padding: 28px 0 !important; }
    #pmq .featureRow{ grid-template-columns: auto 1fr; align-items: start; }
    #pmq .imgCard{ max-width: 220px; }

  
/* Depoimentos */
    .testimonials .cards{ grid-template-columns: repeat(3, 1fr); }
    .testimonial{
      padding:18px;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .tQuote{
      margin:0;
      color:#111827;
      line-height:1.65;
      font-weight:600;
    }
    .tMeta{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      color:var(--muted);
      font-size:14px;
      margin-top:auto;
    }
    .tName{ font-weight:900; color:#0b1220; }
    .tTag{
      font-weight:800;
      font-size:12px;
      padding:6px 10px;
      border-radius:999px;
      background: rgba(11,61,122,.10);
      color: var(--blue);
    }
    @media (max-width: 920px){
      .testimonials .cards{ grid-template-columns: 1fr; }
    }
    /* Mapa */
    .mapBox{
      margin-top:16px;
      border-radius: var(--radius);
      overflow:hidden;
      border:1px solid rgba(255,255,255,.14);
      box-shadow: 0 14px 32px rgba(0,0,0,.16);
      background: rgba(17,24,39,.30);
    }
    .mapBox iframe{ width:100%; height:360px; border:0; display:block; }
    .mapActions{ margin-top:10px; display:flex; gap:10px; flex-wrap:wrap; }

/* Logo wrap color match */
.brandLogoWrap{
  background: var(--ip-yellow);
  border: 0;
  padding: 6px 10px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
}
.brandLogoWrap img{ display:block; height:44px; width:auto; }


/* ===== Premium refinement (V7) ===== */
:root{
  --surface:#ffffff;
  --surface-2:#f7f8fb;
  --ink-2: rgba(0,0,0,.72);
  --ink-3: rgba(0,0,0,.56);
  --ring: rgba(13,78,166,.20);
  --shadow-soft: 0 12px 28px rgba(16,24,40,.10);
  --shadow-card: 0 16px 44px rgba(16,24,40,.14);
  --radius-lg: 22px;
  --radius-xl: 28px;
  --section-pad: 56px;
}
html{ scroll-behavior:smooth; }
body{
  background: radial-gradient(1200px 500px at 20% -10%, rgba(244,209,26,.18), transparent 55%),
              radial-gradient(1200px 500px at 85% 0%, rgba(13,78,166,.12), transparent 55%),
              #ffffff;
}
.wrap{ width:min(var(--max), 92vw); }

/* Header refinement */
header{ box-shadow: 0 10px 30px rgba(0,0,0,.08); }
.nav a{ font-weight:900; }
.btn{ box-shadow: 0 10px 20px rgba(0,0,0,.06); }
.btn.primary{ box-shadow: 0 14px 34px rgba(13,78,166,.22); }

/* Section spacing */
section{ padding: var(--section-pad) 0; }
.panel{ background: linear-gradient(180deg, rgba(247,248,251,1), rgba(255,255,255,1)); }
.title{
  font-size: clamp(22px, 2.2vw, 30px);
  letter-spacing:-.2px;
}
.secHead{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:900;
  font-size:12px;
  letter-spacing:.8px;
  text-transform: uppercase;
  color: rgba(13,78,166,.92);
}
.eyebrowDot{
  width:8px; height:8px; border-radius:999px;
  background: var(--ip-blue);
  box-shadow: 0 0 0 6px rgba(13,78,166,.12);
}

/* Hero refinement */
.hero-grid{ padding: 40px 0 14px; }
.hero-media{
  border-radius: var(--radius-xl);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: var(--shadow-card);
}
.hero-media img{
  transform: scale(1.14);
  transform-origin: center;
}
.heroBullets{
  margin: 14px 0 0;
  padding: 0;
  list-style:none;
  display:grid;
  gap:8px;
}
.heroBullets li{
  display:flex; gap:10px; align-items:flex-start;
  color: rgba(0,0,0,.78);
  font-size: 14px;
  line-height:1.55;
}
.heroBullets li::before{
  content:"";
  width:10px; height:10px;
  border-radius:999px;
  margin-top:5px;
  background: rgba(13,78,166,.92);
  box-shadow: 0 0 0 6px rgba(13,78,166,.10);
  flex: 0 0 auto;
}
.heroWhats{
  margin-top: 14px;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.85);
  box-shadow: var(--shadow-soft);
  padding: 14px;
}

/* Cards refinement */
.card, .quote, .box, .other, .feat-card{
  border-radius: var(--radius-lg) !important;
  border: 1px solid rgba(16,24,40,.10) !important;
  box-shadow: var(--shadow-soft) !important;
}
.card:hover, .other:hover, .feat-card:hover{
  transform: translateY(-2px);
  box-shadow: var(--shadow-card) !important;
  transition: .18s ease;
}
.cardTop{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(16,24,40,.08);
}
.cardTop img{ height: 38px; width:auto; }
.cardTop h3{ margin:0; font-size:14px; font-weight:900; }
.cardBody p{ margin: 10px 0 10px; color: var(--ink-2); font-size:13px; line-height:1.6; }
.cardBody ul{ margin:0; padding-left: 16px; color: var(--ink-2); font-size:13px; line-height:1.6; }
.grid4{ gap:16px; }

/* Fuels hierarchy: emphasize section title + subtle background */
#combustiveis{
  position:relative;
}
#combustiveis::before{
  content:"";
  position:absolute;
  inset: 18px 0 auto 0;
  height: 180px;
  background: radial-gradient(900px 220px at 25% 20%, rgba(244,209,26,.22), transparent 60%),
              radial-gradient(900px 220px at 75% 10%, rgba(13,78,166,.14), transparent 60%);
  pointer-events:none;
}
#combustiveis .wrap{ position:relative; }

/* Other products logos sizing */
.otherLogo{
  height: 64px !important;
  width:auto !important;
  object-fit: contain;
}

/* Map embed */
.mapFrame{
  width:100%;
  height: 340px;
  border:0;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
}

/* Reduce WhatsApp widget footprint on desktop */
.wa{ width: 300px; }
@media (max-width: 980px){
  :root{ --section-pad: 46px; }
  .hero-media img{ transform: scale(1.10); }
  .wa{ width: 290px; }
}


/* ===== Font stack + fallbacks (V8) ===== */
:root{
  --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
}
body{ font-family: var(--font-sans); }
h1,h2,h3,h4,strong,.btn,.nav a{ font-family: var(--font-sans); }




/* ===== Responsive fix: Combustíveis (mobile) ===== */
#combustiveis .grid4{
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 980px){
  /* 2x2 grid on phones/tablets for clarity */
  #combustiveis .grid4{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  #combustiveis .card{
    padding: 14px;
  }
  #combustiveis .cardTop{
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  #combustiveis .cardTop img{
    height: 34px;
  }
}
@media (max-width: 520px){
  /* single column on very small screens */
  #combustiveis .grid4{
    grid-template-columns: 1fr;
  }
}



/* ===== Definitive responsive fix: Combustíveis (cards.fuels) ===== */
.cards.fuels{ grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
@media (max-width: 920px){
  .cards.fuels{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 520px){
  .cards.fuels{ grid-template-columns: 1fr !important; }
  .cards.fuels .cardTop{ flex-direction: column; align-items: flex-start; }
}



/* ===== V12: Fuel title bars to blue (definitive) ===== */
.cards.fuels .cardTop{
  background: linear-gradient(90deg, var(--blue), var(--blue2)) !important;
  border-bottom: 0 !important;
}
.cards.fuels .cardTop h3{
  color: #ffffff !important;
}
.cards.fuels .cardTop img{
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.28));
}



/* ===== V12: Logo wrap yellow uniform ===== */
.brandLogoWrap{
  background: var(--yellow) !important;
  border: 0 !important;
}
