/* EvoCourt · landing page
   Cores e fonte do manual da marca (evocourt-marca/manual-da-marca.html) */

@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/outfit-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/outfit-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/outfit-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/outfit-latin-700-normal.woff2) format('woff2')}

:root{
  --noite:#0A2540; --noite-2:#10325A; --noite-3:#183F6E;
  --bola:#D4F04A; --bola-2:#C4E236;
  --quadra:#7FB2E5; --nevoa:#F6F8FB; --cinza:#5B6B80; --linha:#E3E8EF; --borda:#7A8AA0;
  --claro:#C9D6E5; --claro-2:#9FB3C8;
  --ok:#17703A; --ok-bg:#E3F4E9; --aviso:#8A5A00; --aviso-bg:#FDF1D8; --atraso:#B42318; --atraso-bg:#FDE7E5;
  --raio:18px; --sombra:0 24px 60px -24px rgba(10,37,64,.45);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:'Outfit',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--noite);background:#fff;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--quadra);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}
.wrap--estreito{max-width:820px}
[hidden]{display:none!important}

.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--bola);color:var(--noite);padding:10px 16px;border-radius:10px;font-weight:600;text-decoration:none}
.skip:focus{left:12px}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font:inherit;font-weight:600;font-size:17px;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,transform .15s,border-color .15s}
.btn:active{transform:translateY(1px)}
.btn--lima{background:var(--bola);color:var(--noite)}
.btn--lima:hover{background:var(--bola-2)}
.btn--linha{border-color:rgba(255,255,255,.35);color:#fff}
.btn--linha:hover{border-color:#fff}
.btn--peq{min-height:42px;padding:0 18px;font-size:15px}
.btn--cheio{width:100%}
.btn[disabled]{opacity:.7;cursor:progress}
.ic{width:24px;height:24px;flex:none}
.ic--seta{width:20px;height:20px}

/* ---------- aviso de idioma ---------- */
.lang-hint{background:#EAF2FB;color:var(--noite);font-size:15px}
.lang-hint__in{display:flex;align-items:center;justify-content:center;gap:16px;min-height:44px}
.lang-hint__link{font-weight:600}
.lang-hint__close{background:none;border:0;font-size:22px;line-height:1;color:var(--cinza);cursor:pointer;padding:4px 8px}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:50;background:rgba(10,37,64,.94);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid rgba(127,178,229,.14)}
.topo__in{display:flex;align-items:center;gap:28px;min-height:72px}
.marca{display:inline-flex;text-decoration:none}
.marca svg{height:34px;width:auto}
.menu{display:flex;gap:26px;margin-left:12px}
.menu a{color:var(--claro);text-decoration:none;font-weight:500;font-size:16px}
.menu a:hover{color:#fff}
.topo__acoes{display:flex;align-items:center;gap:18px;margin-left:auto}
.idiomas{display:flex;gap:4px}
.idiomas a{color:var(--claro-2);text-decoration:none;font-size:14px;font-weight:600;padding:6px 8px;border-radius:8px;letter-spacing:.03em}
.idiomas a:hover{color:#fff}
.idiomas a[aria-current]{color:#fff;background:rgba(127,178,229,.16)}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--noite);color:#fff;padding:72px 0 104px}
.hero__quadra{position:absolute;right:-120px;top:-40px;width:760px;height:760px;pointer-events:none}
.hero__in{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.eyebrow{color:var(--quadra);font-weight:600;font-size:14px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:18px}
.hero h1{font-size:clamp(44px,6.4vw,80px);line-height:1.02;letter-spacing:-.03em;font-weight:700}
.hero h1 span{color:var(--bola)}
.hero__sub{color:var(--claro);font-size:clamp(18px,1.6vw,21px);margin-top:24px;max-width:560px}
.hero__ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero__nota{color:var(--claro-2);font-size:15px;margin-top:16px}

/* maquete do app */
.mock{background:#fff;color:var(--noite);border-radius:22px;padding:18px;box-shadow:0 40px 90px -30px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06);max-width:470px;width:100%;justify-self:end;display:grid;gap:14px}
.mock__barra{display:flex;justify-content:space-between;align-items:center;padding:2px 4px}
.mock__dia{font-weight:600;font-size:15px}
.mock__selo{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--cinza);background:var(--nevoa);border:1px solid var(--linha);border-radius:99px;padding:3px 9px}
.mock__bloco{background:var(--nevoa);border-radius:14px;padding:12px;display:grid;gap:8px}
.mock__titulo{font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--cinza);padding:0 2px 2px}
.slot{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:10px;background:#fff;border-radius:10px;padding:10px 12px;border-left:4px solid var(--quadra)}
.slot--cheia{border-left-color:var(--bola-2)}
.slot__hora{font-weight:700;font-variant-numeric:tabular-nums;font-size:15px}
.slot__info{display:flex;flex-direction:column;line-height:1.25}
.slot__info b{font-weight:600;font-size:15px}
.slot__info small{color:var(--cinza);font-size:13px}
.slot__cap{font-weight:700;font-variant-numeric:tabular-nums;font-size:14px;display:flex;align-items:center;gap:8px}
.slot__cap em{font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:var(--noite);color:var(--bola);border-radius:99px;padding:3px 8px}
.mock__kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kpi{background:var(--nevoa);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.kpi small{font-size:12px;color:var(--cinza);line-height:1.25}
.kpi b{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.kpi--clube{background:var(--noite);color:#fff}
.kpi--clube small{color:var(--claro-2)}
.kpi--clube b{color:var(--bola)}
.pag{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;background:#fff;border-radius:10px;padding:8px 10px}
.pag__av{width:32px;height:32px;border-radius:50%;background:var(--noite);color:#fff;font-size:12px;font-weight:600;display:grid;place-items:center}
.pag__nome{font-weight:500;font-size:15px}
.tag{font-size:12px;font-weight:600;border-radius:99px;padding:4px 10px;white-space:nowrap}
.tag--ok{background:var(--ok-bg);color:var(--ok)}
.tag--warn{background:var(--aviso-bg);color:var(--aviso)}
.tag--late{background:var(--atraso-bg);color:var(--atraso)}

/* ---------- seções ---------- */
.secao{padding:96px 0}
.secao--nevoa{background:var(--nevoa)}
.secao--noite{background:var(--noite);color:#fff}
.titulo-secao{font-size:clamp(30px,3.6vw,44px);line-height:1.1;letter-spacing:-.02em;font-weight:700;max-width:780px}
.lead{color:var(--cinza);font-size:clamp(17px,1.4vw,19px);max-width:680px;margin-top:14px}
.lead--claro{color:var(--claro)}
.grade{display:grid;gap:20px;margin-top:44px}
.grade--3{grid-template-columns:repeat(3,1fr)}
.cartao{background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:28px}
.dor__q{font-size:21px;font-weight:600;line-height:1.3;letter-spacing:-.01em}
.dor__a{color:var(--cinza);margin-top:12px}
.recurso__ic{width:48px;height:48px;border-radius:14px;background:var(--noite);color:var(--bola);display:grid;place-items:center;margin-bottom:18px}
.recurso h3{font-size:20px;font-weight:600;letter-spacing:-.01em}
.recurso p{color:var(--cinza);margin-top:8px}

.passos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;counter-reset:p}
.passo{position:relative;background:#fff;border:1px solid var(--linha);border-radius:var(--raio);padding:28px}
.passo__n{width:44px;height:44px;border-radius:50%;background:var(--bola);color:var(--noite);font-weight:700;font-size:20px;display:grid;place-items:center;margin-bottom:18px}
.passo h3{font-size:20px;font-weight:600}
.passo p{color:var(--cinza);margin-top:8px}

.esportes{list-style:none;display:flex;flex-wrap:wrap;gap:14px;margin-top:40px}
.esporte{display:flex;align-items:center;gap:12px;background:var(--noite-2);border:1px solid rgba(127,178,229,.22);border-radius:999px;padding:14px 24px 14px 16px;font-size:18px;font-weight:600}
.esporte__ic{width:40px;height:40px;border-radius:50%;background:var(--noite-3);color:var(--bola);display:grid;place-items:center}
.esportes__mais{color:var(--claro-2);margin-top:24px}

/* ---------- lista de espera ---------- */
.lista{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.vantagens{list-style:none;display:grid;gap:14px;margin-top:30px}
.vantagens li{display:flex;align-items:center;gap:12px;font-weight:500;font-size:18px}
.vantagens .ic{width:28px;height:28px;padding:4px;border-radius:50%;background:var(--noite);color:var(--bola);stroke-width:2.4}
.lista__form{background:#fff;border:1px solid var(--linha);border-radius:22px;padding:32px;box-shadow:var(--sombra)}
.form{display:grid;gap:18px}
.campo{display:grid;gap:7px}
.campo label{font-weight:600;font-size:15px}
.campo input,.campo select{width:100%;height:52px;border:1.5px solid var(--borda);border-radius:12px;padding:0 14px;font:inherit;font-size:17px;color:var(--noite);background:#fff;transition:border-color .15s,box-shadow .15s}
.campo select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A2540' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:20px;padding-right:44px}
.campo input::placeholder{color:#8A97A8}
.campo input:focus,.campo select:focus{outline:none;border-color:var(--noite);box-shadow:0 0 0 4px rgba(127,178,229,.45)}
.campo--erro input,.campo--erro select{border-color:var(--atraso)}
.campo__erro{color:var(--atraso);font-size:14px;font-weight:500;min-height:0}
.campo__erro:empty{display:none}
.campo-duplo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__consent{font-size:14px;color:var(--cinza);text-align:center}
.form__erro{background:var(--atraso-bg);color:var(--atraso);border-radius:12px;padding:12px 14px;font-weight:500;font-size:15px}
.form-ok{text-align:center;padding:24px 8px}
.form-ok:focus{outline:none}
.form-ok__ic{width:64px;height:64px;border-radius:50%;background:var(--bola);color:var(--noite);display:grid;place-items:center;margin:0 auto 18px}
.form-ok__ic .ic{width:32px;height:32px;stroke-width:2.4}
.form-ok h3{font-size:26px;font-weight:700;letter-spacing:-.01em}
.form-ok p{color:var(--cinza);margin-top:8px}

/* ---------- perguntas ---------- */
.faq{margin-top:36px;border-top:1px solid #D5DCE5;max-width:860px}
.faq__item{border-bottom:1px solid #D5DCE5}
.faq__item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:19px;font-weight:600}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:'';width:28px;height:28px;flex:none;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A2540' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;border:1px solid var(--linha);transition:transform .2s}
.faq__item[open] summary::after{transform:rotate(45deg)}
.faq__item p{color:var(--cinza);padding:0 48px 24px 0;max-width:720px}

/* ---------- rodapé ---------- */
.rodape{background:var(--noite);color:#fff;padding:56px 0 28px}
.rodape__in{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:flex-start}
.rodape__frase{font-size:22px;font-weight:600;margin-top:18px}
.rodape__made{color:var(--claro-2);margin-top:4px}
.idiomas--rodape a{font-size:15px;font-weight:500;letter-spacing:0}
.rodape__direitos{color:var(--claro-2);font-size:14px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(127,178,229,.16)}

/* ---------- telas menores ---------- */
@media (max-width:1020px){
  .menu{display:none}
  .hero__in{grid-template-columns:1fr;gap:48px}
  .mock{justify-self:start}
  .grade--3,.passos{grid-template-columns:1fr 1fr}
  .lista{grid-template-columns:1fr;gap:40px}
}
@media (max-width:680px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .topo__in{gap:12px;min-height:64px}
  .marca svg{height:28px}
  .topo .btn--peq{display:none}
  .hero{padding:48px 0 72px}
  .hero__quadra{width:520px;height:520px;right:-230px;top:-80px;opacity:.55}
  .hero__ctas .btn{width:100%}
  .secao{padding:72px 0}
  .grade--3,.passos{grid-template-columns:1fr}
  .campo-duplo{grid-template-columns:1fr}
  .lista__form{padding:24px 20px}
  .mock{padding:14px}
  .kpi b{font-size:16px}
  .faq__item p{padding-right:0}
}
