/* ============================================================
   Gabriel Lima — LP
   Layout 1:1 com o Figma "Lima - LP"; tipografia e medidas em
   px reais (nada escala com a viewport).
   Container de conteudo: 1286px (mesma largura util do Figma).
   ============================================================ */

/* ------------------------------------------------------------
   Geist (variable 300-700), hospedada no proprio Pages
   ------------------------------------------------------------ */
@font-face{
  font-family:"Geist";
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
  src:url("/assets/fonts/geist-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:"Geist";
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
  src:url("/assets/fonts/geist-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;
}

:root{
  --preto:#000;
  --branco:#fff;
  --cinza:#606368;
  --cinza-claro:#dadada;
  --cinza-card:#e3e3e3;
  --cinza-input:#f5f5f5;
  --cinza-placeholder:#838383;
  --cinza-borda:#d1d1da;
  --off-white:#fcfbfc;
  --lima:#d9ff00;
  --tinta:#0f000b;
  --dot:#bababa;

  --container:1286px;
  --gutter:32px;

  --font:"Geist","Helvetica Neue",Helvetica,Arial,sans-serif;

  --sombra-card:0 36px 79px rgba(171,171,171,.2), 0 144px 144px rgba(171,171,171,.17),
                0 325px 195px rgba(171,171,171,.1);
  --sombra-btn:0 9px 20px rgba(77,77,77,.45), 0 36px 36px rgba(77,77,77,.28);
  --sombra-form:8px 8px 24px rgba(41,41,41,.15), 30px 32px 44px rgba(41,41,41,.13),
                68px 73px 60px rgba(41,41,41,.08);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  background:var(--preto);
  color:var(--branco);
  font-family:var(--font);
  font-weight:500;
  overflow-x:hidden;
}

img,svg{display:block;max-width:100%}
button{font:inherit;border:0;cursor:pointer}
input,textarea{font:inherit}

.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}

/* grid de pontos — reproduz a textura do Figma sem os SVGs de 1MB */
.dots{
  position:absolute;left:0;right:0;height:420px;pointer-events:none;opacity:.3;
  background-image:radial-gradient(circle at center, var(--dot) 2.34px, transparent 2.4px);
  background-size:29.6px 29.5px;
}
.dots--top{top:0;-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent)}
.dots--bottom{bottom:0;-webkit-mask-image:linear-gradient(to top,#000,transparent);mask-image:linear-gradient(to top,#000,transparent)}

/* ------------------------------------------------------------
   BOTAO
   ------------------------------------------------------------ */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:4px 4px 4px 16px;border-radius:40px;overflow:hidden;
  text-decoration:none;white-space:nowrap;
  transition:transform .2s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn__label{font-size:16px;line-height:24px;font-weight:500;text-align:center}
.btn__icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;flex:none}
.btn__icon span{position:relative;display:block;width:14px;height:14px;overflow:hidden;transition:transform .35s cubic-bezier(.4,0,.2,1)}
.btn__icon img{position:absolute;inset:0;width:14px;height:14px}
.btn__icon img+img{left:21.74px}
.btn:hover .btn__icon span{transform:translateX(-21.74px)}

.btn--lima{background:var(--lima)}
.btn--lima .btn__label{color:var(--preto)}
.btn--lima .btn__icon{background:var(--preto)}

.btn--preto{background:var(--preto);box-shadow:var(--sombra-btn)}
.btn--preto .btn__label{color:var(--branco)}
.btn--preto .btn__icon{background:var(--branco)}

/* ------------------------------------------------------------
   S1 — HERO
   ------------------------------------------------------------ */
.hero{position:relative;min-height:760px;background:var(--preto);overflow:hidden;display:flex;align-items:center}
.hero__bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;
  pointer-events:none;
}
.hero__glow-1{position:absolute;left:-780px;top:-820px;width:1450px;height:1450px;opacity:.9}
.hero__glow-2{position:absolute;left:-240px;bottom:-720px;width:1130px;height:940px;opacity:.9}
.hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#000 8%,rgba(0,0,0,.72) 38%,rgba(0,0,0,.15) 62%,transparent 78%);
}

.hero__container{position:relative;z-index:2;width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.hero__content{max-width:640px;display:flex;flex-direction:column;align-items:flex-start;gap:30px}
.hero__title{font-size:48px;line-height:54px;font-weight:500;letter-spacing:-.01em;color:var(--branco)}
.hero__sub{font-size:20px;line-height:26px;font-weight:300;color:var(--branco)}
.hero__sub b{font-weight:700}

.hero__pills{position:absolute;inset:0;z-index:2;pointer-events:none}
.pill{
  position:absolute;display:inline-flex;align-items:center;justify-content:center;
  padding:10px 15px;border-radius:100px;
  background:rgba(13,13,13,.35);border:1px solid rgba(158,158,158,.18);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  font-size:13px;line-height:17px;font-weight:500;white-space:nowrap;
}
.pill--1{left:53%;top:44%;color:var(--branco)}
.pill--2{left:75%;top:41%;color:var(--cinza-claro)}
.pill--3{left:70%;top:62%;color:var(--cinza-claro)}

/* ------------------------------------------------------------
   S2 — PROVA SOCIAL
   ------------------------------------------------------------ */
.prova{position:relative;background:var(--branco);padding:120px 0 100px;overflow:hidden}
.prova__inner{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;position:relative;z-index:1}
.prova__kicker{font-size:32px;line-height:44px;font-weight:300;color:var(--cinza)}
.prova__title{font-size:48px;line-height:60px;font-weight:500;color:var(--cinza)}
.prova__title b{color:var(--preto);font-weight:500}

.carrossel{
  position:relative;z-index:1;margin-top:70px;height:582px;overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);
}
.carrossel__track{display:flex;align-items:center;gap:50px;width:max-content;animation:desliza 60s linear infinite;animation-delay:-17s}
.carrossel:hover .carrossel__track{animation-play-state:paused}
@keyframes desliza{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 25px))}}
@media (prefers-reduced-motion:reduce){.carrossel__track{animation:none}}

.card{position:relative;width:334px;height:582px;flex:none}
.card__tab{
  position:absolute;left:11px;top:0;width:311px;height:268px;
  border-radius:12px;padding:15px;background:var(--cinza-card);
  box-shadow:0 4px 2px rgba(44,44,57,.06), 0 20px 10px rgba(44,44,57,.06);
}
.card--branco .card__tab{background:var(--branco)}
.card__tab-row{display:flex;align-items:center;justify-content:space-between;width:279px}
.card__nome{font-size:20px;line-height:27px;font-weight:500;color:#212123;letter-spacing:-.2px;white-space:nowrap}
.card__dots{width:24px;height:6px}
.card__media{position:absolute;left:0;top:41px;width:334px;height:540px;border-radius:16px;overflow:hidden}
.card__media img{width:100%;height:100%;object-fit:cover}
.card__media--nomos{background:#0b0b0b;display:flex;align-items:center;justify-content:center}
.card__media--nomos .card__nomos-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.card__media--nomos .card__nomos-logo{position:relative;width:200px;height:42px;object-fit:contain}

/* ------------------------------------------------------------
   TICKER
   ------------------------------------------------------------ */
.ticker{background:#efefef;padding:24px 0;overflow:hidden}
.ticker__mask{
  width:100%;height:26px;overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);
}
.ticker__track{display:flex;align-items:center;gap:22px;width:max-content;animation:desliza 40s linear infinite}
.ticker__item{font-size:18px;line-height:23px;font-weight:500;color:var(--cinza);white-space:nowrap}
.ticker__sep{width:1px;height:12px;background:#c4c4c4;flex:none}
@media (prefers-reduced-motion:reduce){.ticker__track{animation:none}}

/* ------------------------------------------------------------
   S3 — BENEFICIOS
   ------------------------------------------------------------ */
.benef{position:relative;background:var(--cinza-claro);padding:120px 0;overflow:hidden}
.benef__inner{display:flex;flex-direction:column;align-items:center;gap:50px;position:relative;z-index:1}
.benef__head{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;color:var(--cinza)}
.benef__title-1{font-size:36px;line-height:44px;font-weight:500}
.benef__title-2{font-size:56px;line-height:60px;font-weight:500}
.benef__sub{font-size:20px;line-height:26px;font-weight:300}

.benef__grid{display:flex;flex-direction:column;gap:26px;width:100%}
.benef__row{display:grid;gap:26px}
.benef__row:nth-child(1){grid-template-columns:302fr 630fr 302fr}
.benef__row:nth-child(2){grid-template-columns:630fr 302fr 302fr}
.bcard{
  position:relative;min-height:237px;background:var(--branco);
  border-radius:24px;box-shadow:var(--sombra-card);overflow:hidden;
  display:flex;align-items:center;
}
.bcard__inner{display:flex;flex-direction:column;gap:16px;padding:34px 42px;width:100%}
.bcard__mark{width:22px;height:22px;background:var(--cinza-claro);border-radius:2px;flex:none}
.bcard__title{font-size:20px;line-height:23px;font-weight:500;color:var(--cinza)}
.bcard__line{width:181px;height:1px;background:#c9c9c9}
.bcard__text{font-size:15px;line-height:19px;font-weight:300;color:var(--cinza)}

/* ------------------------------------------------------------
   S4 — AUTORIDADE
   ------------------------------------------------------------ */
.autoridade{position:relative;min-height:720px;background:var(--preto);overflow:hidden;display:flex;align-items:center}
.autoridade__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center}
.autoridade__glow,.autoridade__vector,.autoridade__overlay,.autoridade__shade{display:none}
.autoridade::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#000 12%,rgba(0,0,0,.82) 38%,rgba(0,0,0,.25) 62%,transparent 80%);
}
.autoridade__container{position:relative;z-index:1;width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.autoridade__inner{display:flex;flex-direction:column;gap:28px;max-width:560px}
.autoridade__title{font-size:32px;line-height:38px;font-weight:500;color:var(--cinza-claro)}
.autoridade__text{font-size:19px;line-height:26px;font-weight:300;color:var(--cinza)}
.autoridade__text b{color:var(--branco);font-weight:500}

/* ------------------------------------------------------------
   S5 — QUALIFICACAO
   ------------------------------------------------------------ */
.qualif{position:relative;background:var(--cinza-claro);padding:110px 0;overflow:hidden}
.qualif__inner{display:flex;flex-direction:column;gap:30px;position:relative;z-index:1}
.qualif__row{display:grid;grid-template-columns:607fr 658fr;gap:30px}
.qcard{
  position:relative;min-height:115px;background:var(--branco);
  border:4px solid rgba(219,219,219,.1);border-radius:24px;
  box-shadow:var(--sombra-card);overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.qcard__inner{display:flex;align-items:center;gap:17px;padding:20px 28px}
.qcard__text{font-size:20px;line-height:24px;font-weight:500;color:var(--cinza);text-align:center}
.qcard__icon{width:34px;height:34px;flex:none;transform:rotate(90deg)}

/* ------------------------------------------------------------
   S6 — FORM
   ------------------------------------------------------------ */
.form-sec{position:relative;background:var(--branco);padding:120px 0;overflow:hidden}
.form-sec .dots{height:100%;top:0;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent)}
.form-sec__inner{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:center;gap:80px}
.form-sec__copy{display:flex;flex-direction:column;gap:24px;max-width:400px;padding-top:8px}
.form-sec__title{font-size:38px;line-height:42px;font-weight:500;color:var(--preto)}
.form-sec__text{font-size:18px;line-height:25px;font-weight:400;color:var(--tinta)}
.form-sec__text p+p{margin-top:20px}

.form{
  width:440px;flex:none;background:var(--off-white);
  border:1px solid var(--cinza-borda);border-radius:14px;
  padding:24px;display:flex;flex-direction:column;gap:14px;
  box-shadow:var(--sombra-form);
}
.form__head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.form__head-label{font-size:14px;line-height:20px;font-weight:500;color:var(--cinza)}
.form__shield{display:flex;align-items:center;justify-content:center;padding:6px;background:var(--cinza-borda);border-radius:6px}
.form__shield img{width:14px;height:14px}

.campo{display:flex;align-items:center;width:100%;background:var(--cinza-input);border-radius:8px;padding:13px 18px;transition:box-shadow .15s ease}
.campo:focus-within{box-shadow:0 0 0 2px rgba(96,99,104,.25)}
.campo input{width:100%;background:none;border:0;outline:none;font-size:14px;line-height:20px;font-weight:500;color:#333}
.campo input::placeholder{color:var(--cinza-placeholder);font-weight:500}

.campo--bloco{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 18px}
.campo--textarea{height:96px;flex-direction:column;align-items:flex-start;padding:13px 18px}
.campo--textarea textarea{width:100%;height:100%;background:none;border:0;outline:none;resize:none;font-size:14px;line-height:20px;font-weight:500;color:#333}
.campo--textarea textarea::placeholder{color:var(--cinza-placeholder);font-weight:500}
.campo__label{font-size:14px;line-height:20px;font-weight:500;color:var(--cinza-placeholder)}

.opcoes{display:flex;flex-direction:column;gap:9px}
.opcao{display:flex;align-items:center;gap:9px;cursor:pointer}
.opcao input{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:none;
  border:1px solid var(--cinza-placeholder);border-radius:3px;background:none;cursor:pointer;transition:background .15s ease}
.opcao input:checked{background:var(--cinza);border-color:var(--cinza)}
.opcao span{font-size:14px;line-height:20px;font-weight:500;color:var(--cinza-placeholder);white-space:nowrap}

.form__submit{
  display:flex;align-items:center;justify-content:space-between;width:100%;
  background:var(--cinza);border-radius:8px;padding:13px 13px 13px 18px;
  transition:background .2s ease;margin-top:4px;
}
.form__submit:hover{background:#4c4f53}
.form__submit span{font-size:14px;line-height:20px;font-weight:500;color:var(--branco);text-transform:uppercase;letter-spacing:.02em}
.form__submit img{width:24px;height:24px}

/* ------------------------------------------------------------
   RODAPE
   ------------------------------------------------------------ */
.rodape{background:var(--branco);padding:44px 0}
.rodape__inner{display:flex;flex-direction:column;align-items:center;gap:26px}
.rodape__linha{width:100%;height:1px;background:#e2e2e2}
.rodape__row{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:15px;color:var(--cinza)}
.rodape__row a{color:inherit;text-decoration:none}
.rodape__row a:hover{text-decoration:underline}
.rodape__copy{font-weight:500}
.rodape__links{font-weight:300}

/* ============================================================
   RESPONSIVO
   ============================================================ */
@media (max-width:1100px){
  :root{--gutter:24px}
  .hero__content{max-width:60%}
  .hero__title{font-size:40px;line-height:46px}
  .prova__title{font-size:38px;line-height:48px}
  .prova__kicker{font-size:26px;line-height:34px}
  .benef__title-2{font-size:44px;line-height:50px}
  .benef__row:nth-child(1),.benef__row:nth-child(2){grid-template-columns:1fr 1fr}
  .qualif__row{grid-template-columns:1fr 1fr}
  .form-sec__inner{gap:48px}
  .form{width:400px}
}

@media (max-width:860px){
  :root{--gutter:20px}

  .hero{min-height:0;padding:88px 0 44px;display:block}
  .hero__bg{object-position:70% center;opacity:.55}
  .hero::after{background:linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,.9))}
  .hero__glow-1,.hero__glow-2{display:none}
  .hero__content{max-width:none}
  .hero__title{font-size:34px;line-height:39px}
  .hero__title br{display:none}
  .hero__sub{font-size:16px;line-height:23px}
  .hero__pills{position:relative;inset:auto;display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;
    width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
  .pill{position:relative;left:auto;top:auto;font-size:12px;padding:8px 13px}

  .prova{padding:64px 0}
  .prova__kicker{font-size:18px;line-height:25px}
  .prova__title{font-size:28px;line-height:35px}
  .carrossel{margin-top:36px;height:340px}
  .card{width:196px;height:340px}
  .card__tab{left:7px;width:182px;height:156px;padding:10px;border-radius:8px}
  .card__tab-row{width:162px}
  .card__nome{font-size:13px;line-height:17px}
  .card__dots{width:15px;height:4px}
  .card__media{top:24px;width:196px;height:316px;border-radius:11px}
  .card__media--nomos .card__nomos-logo{width:112px;height:24px}
  .carrossel__track{gap:20px}

  .ticker{padding:16px 0}
  .ticker__item{font-size:14px}

  .benef{padding:64px 0}
  .benef__inner{gap:36px}
  .benef__title-1{font-size:24px;line-height:30px}
  .benef__title-2{font-size:34px;line-height:40px}
  .benef__sub{font-size:16px;line-height:22px}
  .benef__sub br{display:none}
  .benef__grid{gap:16px}
  .benef__row:nth-child(1),.benef__row:nth-child(2){grid-template-columns:1fr;gap:16px}
  .bcard{min-height:0;border-radius:16px}
  .bcard__inner{padding:24px;gap:12px}
  .bcard__title{font-size:18px;line-height:22px}
  .bcard__title br{display:none}
  .bcard__text{font-size:14px;line-height:20px}
  .bcard__text br{display:none}
  .bcard__line{width:120px}

  .autoridade{min-height:0;padding:64px 0}
  .autoridade::after{background:linear-gradient(90deg,#000 22%,rgba(0,0,0,.7) 70%,rgba(0,0,0,.4))}
  .autoridade__inner{max-width:none;gap:20px}
  .autoridade__title{font-size:22px;line-height:28px}
  .autoridade__title br{display:none}
  .autoridade__text{font-size:15px;line-height:21px}
  .autoridade__text br{display:none}

  .qualif{padding:56px 0}
  .qualif__inner{gap:16px}
  .qualif__row{grid-template-columns:1fr;gap:16px}
  .qcard{min-height:0;border-radius:16px;border-width:2px;justify-content:flex-start}
  .qcard__inner{padding:20px 22px;justify-content:space-between;width:100%}
  .qcard__text{font-size:15px;line-height:21px;text-align:left}
  .qcard__icon{width:26px;height:26px}

  .form-sec{padding:56px 0}
  .form-sec__inner{flex-direction:column;gap:32px}
  .form-sec__copy{max-width:none;padding-top:0}
  .form-sec__title{font-size:26px;line-height:31px}
  .form-sec__title br{display:none}
  .form-sec__text{font-size:15px;line-height:21px}
  .form{width:100%}

  .rodape{padding:32px 0}
  .rodape__row{flex-direction:column;gap:12px;font-size:13px;text-align:center}
}
