/* vet.empreenda por Nesgme Chaar — Aula */
:root{
  --wine:#7A0A18;
  --wine-dark:#5E0712;
  --rose:#F0D9DB;
  --cream:#F7F2EF;
  --ink:#2B1D1F;
  --muted:#6B5B5D;
  --line:#EADFDA;
  --white:#FFFFFF;
  --sans:'Sora', Arial, sans-serif;
  --serif:'Cormorant Garamond', Georgia, serif;
  --radius:20px;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,p{margin:0}
em{font-family:var(--serif);font-style:italic;font-weight:500;letter-spacing:0}
button{font:inherit}

/* ---------- marca ---------- */
.brand{display:flex;flex-direction:column;line-height:1}
.brand__name{font-weight:800;font-size:22px;letter-spacing:-1px;color:var(--wine)}
.brand__by{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--muted);margin-top:4px}
.brand--light .brand__name{color:var(--white)}
.brand--light .brand__by{color:var(--rose)}

.pill{display:flex;width:fit-content;padding:4px 16px;border-radius:40px;font-size:13px;font-weight:700;letter-spacing:-.2px;text-transform:uppercase;background:var(--white);color:var(--wine)}
.pill--wine{background:var(--wine);color:var(--white)}

/* ---------- TELA 1: cadastro ---------- */
.gate{min-height:100vh;min-height:100dvh;background:var(--wine);color:var(--white);display:flex;flex-direction:column;justify-content:space-between;padding:28px 20px 20px;position:relative;overflow:hidden}
.gate::before{content:"";position:absolute;width:520px;height:520px;right:-220px;top:-200px;border:2px solid rgba(240,217,219,.25);border-radius:50%;pointer-events:none}
.gate::after{content:"";position:absolute;width:340px;height:340px;left:-180px;bottom:-120px;border:2px solid rgba(240,217,219,.18);border-radius:50%;pointer-events:none}
.gate__inner{position:relative;z-index:1;width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:32px}
.gate__card{display:flex;flex-direction:column;gap:14px}
.gate__title{font-size:34px;font-weight:700;line-height:1.02;letter-spacing:-1.6px}
.gate__title em{font-size:1.12em;color:var(--rose)}
.gate__sub{color:var(--rose);font-size:15px}

.form{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.field{display:flex;flex-direction:column;gap:6px}
.field span{font-size:13px;font-weight:600;color:var(--rose);letter-spacing:-.1px}
.field input{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--white);border:2px solid transparent;border-radius:14px;padding:14px 16px;outline:none;transition:border-color .2s, box-shadow .2s}
.field input::placeholder{color:#A8968F}
.field input:focus{border-color:var(--rose);box-shadow:0 0 0 4px rgba(240,217,219,.25)}
.field input.is-invalid{border-color:#FFB4B4;box-shadow:0 0 0 4px rgba(255,180,180,.25)}
.form__error{font-size:14px;color:var(--white);background:rgba(0,0,0,.18);border-radius:12px;padding:10px 14px}

.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;padding:14px 24px;border:0;border-radius:999px;font-weight:700;font-size:17px;letter-spacing:-.4px;cursor:pointer;transition:transform .15s, background .2s, opacity .2s;text-decoration:none}
.btn--light{background:var(--white);color:var(--wine);margin-top:6px}
.btn--light:hover{background:var(--rose)}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.7;cursor:wait}

.foot{text-align:center;font-size:13px;letter-spacing:-.3px;color:var(--muted);padding:28px 20px 24px}
.foot--light{color:var(--rose);position:relative;z-index:1;padding-bottom:4px}

/* ---------- TELA 2: aula ---------- */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1120px;margin:0 auto;padding:22px 20px}
.link-out{background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 0}
.link-out:hover{color:var(--wine)}

.aula__hero{max-width:1120px;margin:0 auto;padding:8px 20px 0;display:flex;flex-direction:column;gap:16px}
.aula__title{font-size:30px;font-weight:700;line-height:1.05;letter-spacing:-1.4px;color:var(--wine)}
.aula__title em{font-size:1.12em}

/* player horizontal 16:9 */
.player{width:100%;margin-top:8px;border-radius:var(--radius);overflow:hidden;background:var(--ink);box-shadow:0 18px 50px -20px rgba(122,10,24,.45)}
.player__placeholder{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--rose);background:linear-gradient(135deg,var(--wine) 0%,var(--wine-dark) 100%);font-weight:600;font-size:15px}
.player__play{width:64px;height:64px;border-radius:50%;background:var(--white);position:relative}
.player__play::after{content:"";position:absolute;left:26px;top:20px;border-left:18px solid var(--wine);border-top:12px solid transparent;border-bottom:12px solid transparent}
.player vturb-smartplayer,.player iframe{display:block;width:100%}

/* produtos */
.produtos{max-width:1120px;margin:0 auto;padding:56px 20px 8px;display:flex;flex-direction:column;gap:14px}
.produtos__title{font-size:28px;font-weight:700;line-height:1.05;letter-spacing:-1.3px;color:var(--wine);margin-bottom:10px}
.produtos__title em{font-size:1.12em}

.grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.card{--gap:12px;width:calc((100% - var(--gap)) / 2);aspect-ratio:1/1;display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius);background:var(--white);color:var(--ink);text-decoration:none;border:1px solid var(--line);box-shadow:0 8px 24px -16px rgba(43,29,31,.35);transition:transform .2s, box-shadow .2s;overflow:hidden}
.card:hover{transform:translateY(-3px);box-shadow:0 16px 34px -18px rgba(122,10,24,.5)}
.card__tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:-.1px;color:var(--muted)}
.card__name{font-size:17px;font-weight:700;line-height:1.08;letter-spacing:-.7px;color:var(--wine)}
.card__desc{display:none;font-size:14px;line-height:1.4;color:var(--muted)}
.card__cta{margin-top:auto;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--wine)}
.card__cta i{font-style:normal;transition:transform .2s}
.card:hover .card__cta i{transform:translateX(4px)}

.card--wine{background:var(--wine);border-color:var(--wine)}
.card--wine .card__tag{color:var(--rose)}
.card--wine .card__name,.card--wine .card__cta{color:var(--white)}
.card--wine .card__desc{color:var(--rose)}
.card--rose{background:var(--rose);border-color:var(--rose)}
.card--rose .card__tag{color:var(--wine)}

@media (min-width:560px){
  .card__desc{display:block}
  .card{padding:20px}
  .card__name{font-size:19px}
}
@media (min-width:768px){
  .gate{padding:40px 32px 24px}
  .gate__title{font-size:44px;letter-spacing:-2.2px}
  .aula__title{font-size:44px;letter-spacing:-2.2px}
  .produtos__title{font-size:40px;letter-spacing:-2px}
  .grid{gap:18px}
  .card{--gap:36px;width:calc((100% - var(--gap)) / 3);padding:26px}
  .card__name{font-size:24px;letter-spacing:-1px}
  .card__desc{font-size:15px}
  .card__cta{font-size:15px}
}
@media (min-width:1000px){
  .grid{flex-wrap:nowrap;gap:16px}
  .card{width:auto;flex:1 1 0;min-width:0;padding:18px;gap:6px}
  .card__tag{font-size:10.5px}
  .card__name{font-size:17px;letter-spacing:-.6px}
  .card__desc{font-size:12.5px;line-height:1.35}
  .card__cta{font-size:13px}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
