/* Evonnis — landing. Cores: CORES-DA-MARCA.md */

/* Fontes auto-hospedadas — sem chamada externa (LGPD + LCP). */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/Archivo-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo Narrow';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url('../fonts/ArchivoNarrow-500-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

* { box-sizing:border-box; }
    body { margin:0; font-family:'Archivo', system-ui, sans-serif; -webkit-font-smoothing:antialiased;
      background:#114A4E; color:#F1F3F2; text-wrap:pretty; }
    a { color:var(--acc); text-decoration:none; } a:hover { color:#E2703A; }
    .s-oil  { background:#114A4E; color:#F1F3F2; --muted:#A9C6C8; --line:#2C6367; --acc:#FDAE8D; --card:#0E4448; --card2:#0A3B3F; }
    .s-deep { background:#02363A; color:#F1F3F2; --muted:#A9C6C8; --line:#114A4E; --acc:#FDAE8D; --card:#0B3E42; --card2:#072F33; }
    .s-mist { background:#F1F3F2; color:#14201F; --muted:#485554; --line:#DEE4E3; --acc:#9A4B26; --card:#FFFFFF; --card2:#E7ECEC; }
    .wrap { max-width:1200px; margin:0 auto; padding:0 44px; }
    .tag { font-family:'Archivo Narrow',sans-serif; font-size:12px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
    .nar { font-family:'Archivo Narrow',sans-serif; }
    .h2 { font-size:50px; line-height:1; letter-spacing:-.035em; font-weight:800; text-transform:uppercase; margin:0; }
    /* Tipos fluidos: o inline dos títulos é o teto, o clamp evita estouro em
       qualquer largura entre o telefone e o desktop. */
    .h1 { font-size:clamp(36px, 7.6vw, 76px) !important; }
    .h2 { font-size:clamp(26px, 4.3vw, 50px) !important; }
    .kpi-num { white-space:nowrap; }
    @media (max-width: 900px) { .kpi-num { font-size:21px !important; } }
    .sec { padding:104px 0; }
    .btn { display:inline-flex; align-items:center; min-height:56px; padding:0 30px; background:#E2703A; color:#14201F;
      font-size:15px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; transition:background .2s, transform .2s; }
    .btn:hover { background:#F28E62; color:#14201F; transform:translateY(-2px); }
    .slab { background:var(--card); border:1px solid var(--line); }
    .lead { font-size:17px; line-height:1.7; color:var(--muted); margin:0; }
    .panel { background:var(--card); border:1px solid var(--line); }
    .panel-h { display:flex; align-items:center; justify-content:space-between; padding:14px 18px; border-bottom:1px solid var(--line); }
    .prow { display:grid; align-items:center; gap:14px; padding:13px 18px; border-bottom:1px solid var(--line); font-size:13px; }
    .pill { display:inline-flex; align-items:center; gap:6px; padding:4px 10px; font-size:11px; font-weight:600;
      font-family:'Archivo Narrow',sans-serif; letter-spacing:.08em; text-transform:uppercase; }
    .seat { width:18px; height:18px; border:1px solid var(--line); }

    /* motion */
    @keyframes rev { to { opacity:1; transform:none; } }
    @keyframes fadein { to { opacity:1; } }
    @keyframes grow { from { transform:scaleX(0); } to { transform:scaleX(1); } }
    @keyframes marq { from { transform:translateX(0); } to { transform:translateX(-50%); } }
    @keyframes pulse { 0%,100% { opacity:.35; } 50% { opacity:1; } }
    @keyframes intro { from { opacity:0; transform:translateX(-18px); } to { opacity:1; transform:none; } }
    .in { animation:intro .7s cubic-bezier(.2,.8,.2,1) both; }
    .d1{animation-delay:.09s;} .d2{animation-delay:.18s;} .d3{animation-delay:.27s;} .d4{animation-delay:.36s;} .d5{animation-delay:.45s;}
    .marq { display:flex; width:max-content; animation:marq 60s linear infinite; will-change:transform; }
    .marq:hover { animation-play-state:paused; }
    .marq-i { font-size:13px; letter-spacing:.06em; color:#A9C6C8; white-space:nowrap; }
    .dot { width:7px; height:7px; border-radius:50%; background:#E2703A; animation:pulse 2.4s ease-in-out infinite; }
    @supports (animation-timeline: view()) {
      .rev { opacity:0; transform:translateY(24px); animation:rev linear both;
             animation-timeline:view(); animation-range:entry 4% cover 26%; }
      .rev2 { opacity:0; transform:translateY(24px); animation:rev linear both;
             animation-timeline:view(); animation-range:entry 8% cover 32%; }
      .rev3 { opacity:0; transform:translateY(24px); animation:rev linear both;
             animation-timeline:view(); animation-range:entry 12% cover 38%; }
      .bar-grow { transform-origin:left; animation:grow linear both; animation-timeline:view(); animation-range:entry 10% cover 34%; }
    }
    @media (prefers-reduced-motion: reduce) {
      .rev,.rev2,.rev3,.in,.bar-grow { opacity:1 !important; transform:none !important; animation:none !important; }
      .marq { animation:none; } .dot { animation:none; opacity:1; }
    }
    @media (max-width: 768px) {
      .wrap { padding:0 20px; }
      .sec { padding:64px 0; }
      .off { margin-left:0 !important; }
      .g3,.g2,.bar,.story,.fitrow,.faq,.split,.tl { display:block !important; }
      .g3 > * , .g2 > * { margin-top:0 !important; }
      .g3 > * + *, .g2 > * + *, .story > * + *, .fitrow > * + *, .tl > * + * { margin-top:16px !important; }
      .bar > * + * { margin-top:22px; border-left:0 !important; padding-left:0 !important; border-top:2px solid var(--line); padding-top:22px; }
      .faq > * + * { margin-top:10px; }
      .kpi { font-size:34px !important; }
      .hide-m { display:none !important; }
      .prow { font-size:12px; padding:11px 14px; }
      .panel-h { padding:12px 14px; }
      .foot { display:block !important; }
      .foot > * + * { margin-top:28px; }
    }

    /* ---- site: acessibilidade e navegação ---- */
    .skip { position:absolute; left:-9999px; top:0; background:#E2703A; color:#14201F; padding:12px 18px;
      font-weight:600; z-index:99; }
    .skip:focus { left:12px; top:12px; }
    :focus-visible { outline:3px solid #E2703A; outline-offset:3px; }
    html { scroll-behavior:smooth; }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } }
    .nav { position:sticky; top:0; }
    /* fallback de reveal para navegadores sem scroll-timeline (ativado pelo JS) */
    .js-rev { opacity:0; transform:translateY(24px); transition:opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1); }
    .js-rev.is-in { opacity:1; transform:none; }
    @media (prefers-reduced-motion: reduce) { .js-rev { opacity:1 !important; transform:none !important; transition:none; } }

/* ---- páginas internas: formulário, agenda, texto legal ---- */
.pagina { max-width:1200px; margin:0 auto; padding:0 44px; }
.forma { display:flex; flex-direction:column; gap:22px; max-width:520px; }
.campo { display:flex; flex-direction:column; gap:8px; }
.campo > label { font-family:'Archivo Narrow',sans-serif; font-size:12px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:#A9C6C8; }
.campo input, .campo select {
  font-family:'Archivo', system-ui, sans-serif; font-size:16px; color:#F1F3F2;
  background:#0C3F43; border:1px solid #2C6367; padding:0 16px; min-height:52px; width:100%;
  border-radius:0; appearance:none; }
.campo input::placeholder { color:#5F959A; }
.campo input:focus, .campo select:focus { outline:3px solid #E2703A; outline-offset:1px; border-color:#E2703A; }
.campo select { background-image:linear-gradient(45deg,transparent 50%,#A9C6C8 50%),linear-gradient(135deg,#A9C6C8 50%,transparent 50%);
  background-position:calc(100% - 20px) 24px, calc(100% - 14px) 24px; background-size:6px 6px,6px 6px; background-repeat:no-repeat; }
.consent { display:flex; gap:12px; align-items:flex-start; }
.consent input { width:20px; height:20px; min-height:0; flex:none; margin-top:2px; accent-color:#E2703A; }
.consent label { font-family:'Archivo Narrow',sans-serif; font-size:13px; line-height:1.6; color:#A9C6C8; }
.btn-forma { border:0; cursor:pointer; font-family:'Archivo',sans-serif; }
.legal { max-width:74ch; }
.legal h2 { font-size:22px; font-weight:800; letter-spacing:-.02em; margin:44px 0 14px; }
.legal h2:first-of-type { margin-top:0; }
.legal p, .legal li { font-size:16px; line-height:1.75; color:var(--muted); }
.legal ul { padding-left:20px; }
.legal li { margin-bottom:8px; }
.legal a { color:#FDAE8D; text-decoration:underline; }
@media (max-width: 768px) { .pagina { padding:0 20px; } }

/* ---- WhatsApp e consentimento ---- */
.zap { position:fixed; right:22px; bottom:22px; z-index:60; width:56px; height:56px;
  display:flex; align-items:center; justify-content:center; background:#0C3F43; color:#F1F3F2;
  border:2px solid #2C6367; transition:background .2s, transform .2s, border-color .2s; }
.zap:hover { background:#E2703A; color:#14201F; border-color:#E2703A; transform:translateY(-2px); }
.cookies { position:fixed; left:22px; bottom:22px; z-index:60; max-width:440px;
  background:#02363A; border:1px solid #2C6367; padding:20px 22px;
  display:flex; flex-direction:column; gap:16px; }
.cookies[hidden] { display:none; }
.cookies-b { display:flex; gap:10px; flex-wrap:wrap; }
.btn-cookie { font-family:'Archivo Narrow',sans-serif; font-size:12px; font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; padding:12px 18px; min-height:44px; cursor:pointer;
  background:transparent; color:#A9C6C8; border:1px solid #2C6367; }
.btn-cookie:hover { border-color:#A9C6C8; color:#F1F3F2; }
.btn-cookie.is-sim { background:#E2703A; color:#14201F; border-color:#E2703A; }
.btn-cookie.is-sim:hover { background:#F28E62; color:#14201F; }
@media (max-width: 700px) {
  .cookies { left:12px; right:12px; bottom:88px; max-width:none; }
  .zap { right:14px; bottom:14px; }
}
