
:root{
  --black:#0d0d0f;
  --black-soft:#151517;
  --white:#fff;
  --off:#f7f7f5;
  --ink:#151517;
  --muted:#68686d;
  --line:#e4e4e1;
  --red:#bc002d;
  --red-dark:#990024;
  --red-light:#ffe2e8;
  --max:980px;
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--off);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.site-header{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(15,15,17,.07);
  position:sticky;top:0;z-index:20;
  backdrop-filter:blur(16px);
}
.header-inner{
  min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px
}
.brand{display:inline-flex;align-items:center;gap:10px}
.brand img{width:38px;height:38px;border-radius:50%}
.brand-name{font-weight:700;letter-spacing:-.03em}
.brand-name span{color:var(--red)}
.back-link{font-size:.84rem;color:var(--muted);font-weight:700}
.back-link:hover{color:var(--ink)}
.hero{background:var(--black);color:#fff;padding:84px 0 72px}
.eyebrow{
  margin:0 0 16px;color:var(--red);font-size:.72rem;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase
}
.eyebrow-light{color:#ff3156}
.hero h1,.confirmation h1{
  margin:0;max-width:820px;font-size:clamp(2.6rem,7vw,5.1rem);
  line-height:1.02;letter-spacing:-.06em;font-weight:700
}
.hero p{
  max-width:720px;margin:28px 0 0;color:#bdbdc2;font-size:1.04rem
}
.page{padding:64px 0 90px}
.form-shell{
  display:grid;grid-template-columns:.72fr 1.28fr;gap:54px;align-items:start
}
.side-copy{position:sticky;top:110px}
.side-copy h2{margin:0;font-size:2rem;line-height:1.08;letter-spacing:-.045em}
.side-copy p{margin:20px 0 0;color:var(--muted)}
.side-list{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid var(--line)}
.side-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.form-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:34px;box-shadow:0 18px 48px rgba(0,0,0,.05)
}
.form-card h2{margin:0 0 6px;font-size:1.5rem;letter-spacing:-.035em}
.form-intro{margin:0 0 30px;color:var(--muted);font-size:.92rem}
.field{margin:0 0 24px}
.field label,.group-label{
  display:block;margin:0 0 8px;font-size:.86rem;font-weight:800;color:var(--ink)
}
.req{color:var(--red)}
.help{display:block;margin-top:7px;color:#76767b;font-size:.78rem}
input[type="text"],input[type="email"],input[type="url"],input[type="tel"],textarea,select{
  width:100%;border:1px solid #d8d8d5;border-radius:12px;background:#fff;
  padding:14px 15px;font:inherit;color:var(--ink);outline:none;transition:.2s
}
textarea{min-height:130px;resize:vertical}
input:focus,textarea:focus,select:focus{
  border-color:var(--red);box-shadow:0 0 0 4px rgba(188,0,45,.08)
}
.options{display:grid;gap:10px}
.field .option{
  display:flex;gap:11px;align-items:flex-start;padding:13px 14px;
  border:1px solid var(--line);border-radius:12px;background:#fff
}
.option input{margin-top:4px;accent-color:var(--red)}
.option span{font-size:.9rem}
.inline-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field .consent{
  display:flex;gap:11px;align-items:flex-start;padding:15px;border-radius:12px;background:var(--off)
}
.consent input{margin-top:4px;accent-color:var(--red)}
.consent span{font-size:.82rem;color:var(--muted)}
.btn{
  width:100%;min-height:56px;border:0;border-radius:999px;background:var(--red);
  color:#fff;font:inherit;font-size:.92rem;font-weight:800;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s
}
.btn:hover{background:var(--red-dark);transform:translateY(-1px)}
.privacy-note{margin:12px 0 0;text-align:center;color:#76767b;font-size:.76rem}
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.site-footer{background:var(--black);color:#fff;padding:38px 0}
.footer-inner{display:flex;justify-content:space-between;gap:28px;align-items:center}
.footer-inner p{margin:0;color:#8e8e94;font-size:.82rem}
.footer-person{font-size:.84rem;text-align:right}
.footer-person span{display:block;color:#8e8e94}
.confirmation{
  min-height:calc(100vh - 76px);background:var(--black);color:#fff;
  display:flex;align-items:center;padding:80px 0
}
.confirmation-box{max-width:820px}
.confirmation h1{font-size:clamp(2.8rem,8vw,5.6rem)}
.confirmation .lead{
  max-width:700px;margin:30px 0 0;color:#bebec3;font-size:1.05rem
}
.confirmation .next{
  margin-top:44px;padding-top:30px;border-top:1px solid rgba(255,255,255,.12)
}
.confirmation .next p{margin:0 0 16px;color:#a8a8ae}
.instagram-link{
  display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:800;
  border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:5px
}
.instagram-link:hover{color:#ffb4c3;border-color:#ffb4c3}
.signature{margin-top:58px}
.signature strong{display:block}
.signature span{color:#8f8f95;font-size:.86rem}
.notice{
  margin:18px 0 0;padding:13px 14px;border-radius:12px;background:#fff4f6;
  color:#7e0020;font-size:.84rem;border:1px solid #ffd5df
}
@media(max-width:800px){
  .form-shell{grid-template-columns:1fr}
  .side-copy{position:static}
  .inline-grid{grid-template-columns:1fr}
  .hero{padding:70px 0 58px}
  .page{padding-top:42px}
}
@media(max-width:520px){
  .container{width:min(calc(100% - 30px),var(--max))}
  .header-inner{min-height:68px}
  .brand-name{display:none}
  .form-card{padding:24px 18px;border-radius:18px}
  .hero h1,.confirmation h1{font-size:clamp(2.55rem,13vw,3.7rem)}
  .footer-inner{display:grid}
  .footer-person{text-align:left}
}

/* Mensagens de erro do formulário SMTP */
.form-card .notice{margin:0 0 26px}
