/* ============ MIDAS CREATIVE · IDENTIDADE VISUAL ============ */
:root{
  --black:#1A1A1A;
  --black-soft:#242424;
  --black-field:#201F1D;
  --gold:#BF931A;
  --gold-light:#D9AC33;
  --white:#FFFFFF;
  --text-dim:rgba(255,255,255,.68);
  --text-faint:rgba(255,255,255,.45);
  --border:rgba(191,147,26,.28);
  --border-soft:rgba(255,255,255,.12);
  --error:#E0573E;
  --font-sans:'Manrope',system-ui,-apple-system,sans-serif;
  --font-serif:'Libre Baskerville',Georgia,serif;
  --radius:10px;
}

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

html{-webkit-text-size-adjust:100%}

body{
  background:var(--black);
  color:var(--white);
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.55;
  min-height:100vh;
}

img{max-width:100%;display:block}

a{color:var(--gold-light)}

.container{
  width:100%;
  max-width:1080px;
  margin:0 auto;
  padding:0 20px;
}

/* ---------- Header ---------- */
.site-header{
  padding:22px 0;
  border-bottom:1px solid var(--border-soft);
}

.logo{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-serif);
  font-size:22px;
  letter-spacing:2px;
  color:var(--white);
  text-decoration:none;
}

.logo span{color:var(--gold)}

.logo-mark{
  height:26px;
  width:auto;
}

/* ---------- Hero / Cadastro ---------- */
.hero{
  padding:40px 0 56px;
}

.hero-grid{
  display:flex;
  flex-direction:column;
  gap:36px;
}

.eyebrow{
  display:inline-block;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--gold-light);
  margin-bottom:16px;
}

h1{
  font-family:var(--font-serif);
  font-size:clamp(28px,6vw,42px);
  line-height:1.25;
  font-weight:400;
  color:var(--white);
}

h1 em{
  font-style:normal;
  color:var(--gold-light);
}

.subheadline{
  margin-top:18px;
  font-size:17px;
  color:var(--text-dim);
  max-width:46ch;
}

.bullets{
  list-style:none;
  margin-top:26px;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.bullets li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  font-size:15px;
  color:var(--text-dim);
}

.bullets li::before{
  content:'';
  flex:0 0 auto;
  width:7px;
  height:7px;
  margin-top:8px;
  background:var(--gold);
  border-radius:50%;
}

/* ---------- Formulário ---------- */
.form-card{
  background:var(--black-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:26px 22px;
}

.form-card h2{
  font-family:var(--font-serif);
  font-size:20px;
  font-weight:400;
  margin-bottom:20px;
  color:var(--white);
}

.field{
  margin-bottom:16px;
}

.field label{
  display:block;
  font-size:13px;
  font-weight:600;
  color:var(--text-dim);
  margin-bottom:6px;
}

.field input,
.field select{
  width:100%;
  background:var(--black-field);
  border:1px solid var(--border-soft);
  border-radius:8px;
  padding:13px 14px;
  font-family:var(--font-sans);
  font-size:15px;
  color:var(--white);
  appearance:none;
  -webkit-appearance:none;
}

.field select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23BF931A' stroke-width='1.6' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  padding-right:36px;
}

.field input::placeholder{color:var(--text-faint)}

.field input:focus,
.field select:focus{
  outline:none;
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(191,147,26,.18);
}

.field-error{
  display:none;
  margin-top:6px;
  font-size:12.5px;
  color:var(--error);
}

.field.has-error input,
.field.has-error select{
  border-color:var(--error);
}

.field.has-error .field-error{
  display:block;
}

.form-note{
  font-size:12.5px;
  color:var(--text-faint);
  line-height:1.5;
  margin:16px 0 22px;
}

.form-note a{
  color:var(--gold-light);
  text-decoration:underline;
}

.btn-primary{
  width:100%;
  background:var(--gold);
  color:var(--black);
  border:none;
  border-radius:8px;
  padding:16px 20px;
  font-family:var(--font-sans);
  font-size:15.5px;
  font-weight:700;
  cursor:pointer;
  transition:background .15s ease, opacity .15s ease, transform .1s ease;
}

.btn-primary:hover:not(:disabled){
  background:var(--gold-light);
}

.btn-primary:active:not(:disabled){
  transform:translateY(1px);
}

.btn-primary:disabled{
  opacity:.6;
  cursor:not-allowed;
}

.form-feedback{
  display:none;
  margin-top:14px;
  padding:12px 14px;
  border-radius:8px;
  font-size:13.5px;
}

.form-feedback.show{display:block}

.form-feedback.error{
  background:rgba(224,87,62,.12);
  border:1px solid rgba(224,87,62,.4);
  color:#F0A292;
}

/* ---------- Autoridade ---------- */
.authority{
  padding:36px 0;
  border-top:1px solid var(--border-soft);
}

.authority p{
  font-size:14.5px;
  color:var(--text-dim);
  max-width:60ch;
}

/* ---------- Footer ---------- */
.site-footer{
  padding:24px 0 40px;
  border-top:1px solid var(--border-soft);
}

.site-footer p{
  font-size:12.5px;
  color:var(--text-faint);
}

.site-footer a{
  color:var(--text-faint);
  text-decoration:underline;
}

/* ---------- Página de Obrigado ---------- */
.thanks-main{
  min-height:calc(100vh - 90px);
  display:flex;
  align-items:center;
}

.thanks-content{
  padding:48px 0 60px;
  text-align:center;
  max-width:560px;
  margin:0 auto;
}

.thanks-content h1{
  font-size:clamp(26px,6.5vw,38px);
}

.thanks-content .subheadline{
  margin:16px auto 0;
}

.cta-block{
  margin-top:36px;
}

.btn-cta{
  display:inline-block;
  background:var(--gold);
  color:var(--black);
  font-weight:700;
  font-size:17px;
  text-decoration:none;
  padding:18px 32px;
  border-radius:9px;
  width:100%;
}

.cta-caption{
  margin-top:14px;
  font-size:13.5px;
  color:var(--text-faint);
}

.qualified-block{
  margin-top:44px;
  padding:26px 22px;
  background:var(--black-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
}

.qualified-block h2{
  font-family:var(--font-serif);
  font-weight:400;
  font-size:19px;
  margin-bottom:10px;
}

.qualified-block p{
  font-size:14px;
  color:var(--text-dim);
  margin-bottom:18px;
}

.btn-secondary{
  display:inline-block;
  background:transparent;
  color:var(--gold-light);
  border:1px solid var(--gold);
  font-weight:700;
  font-size:14.5px;
  text-decoration:none;
  padding:13px 22px;
  border-radius:8px;
  width:100%;
  text-align:center;
}

/* ---------- Política de Privacidade ---------- */
.policy-main{
  padding:40px 0 60px;
}

.policy-main h1{
  font-size:clamp(24px,5vw,32px);
  margin-bottom:24px;
}

.policy-main h2{
  font-family:var(--font-serif);
  font-weight:400;
  font-size:19px;
  margin:28px 0 10px;
  color:var(--gold-light);
}

.policy-main p,
.policy-main li{
  font-size:14.5px;
  color:var(--text-dim);
  margin-bottom:10px;
}

.policy-main ul{
  padding-left:20px;
}

.back-link{
  display:inline-block;
  margin-top:30px;
  font-size:13.5px;
}

/* ---------- Breakpoints ---------- */
@media (min-width:900px){
  .hero-grid{
    flex-direction:row;
    align-items:flex-start;
    gap:60px;
  }

  .hero-text{flex:1 1 50%}
  .form-wrap{flex:1 1 42%}

  .form-card{padding:32px 28px}

  .btn-cta{width:auto}
  .btn-secondary{width:auto}
}
