/* ============================================================
   Getdemo — Landing page
   Tipografia: Red Hat Display · Acento: #4B56D0
   ============================================================ */

@font-face{font-family:"Red Hat Display";font-weight:400;font-display:swap;
  src:url("https://39834446.fs1.hubspotusercontent-na1.net/hubfs/39834446/red-hat-display_5.2.8_latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Red Hat Display";font-weight:500;font-display:swap;
  src:url("https://39834446.fs1.hubspotusercontent-na1.net/hubfs/39834446/red-hat-display_5.2.8_latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Red Hat Display";font-weight:700;font-display:swap;
  src:url("https://39834446.fs1.hubspotusercontent-na1.net/hubfs/39834446/red-hat-display_5.2.8_latin-700-normal.woff2") format("woff2")}

:root{
  --brand:#4B56D0;
  --brand-dark:#3B46C0;
  --brand-link:#4956C7;
  --ink:#0D0D0D;
  --muted:#6B7280;
  --line:#E4E4E7;
  --surface:#FFFFFF;
  --surface-alt:#F3F4F8;
  --navy:#111A34;
  --radius:20px;
  --container:1140px;
  --pad:clamp(20px,5vw,40px);
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box;}
body{
  margin:0;
  background:var(--surface);
  color:var(--ink);
  font-family:"Red Hat Display",system-ui,sans-serif;
  font-size:16px;
  line-height:1.6;
  letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;}
a{color:var(--brand-link);text-decoration:none;}
a:hover{color:var(--brand-dark);text-decoration:underline;}

.container{max-width:var(--container);margin:0 auto;padding:0 var(--pad);}
.eyebrow{
  font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);margin:0 0 14px;
}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-size:16px;font-weight:500;border-radius:999px;padding:15px 30px;
  text-decoration:none;transition:background .18s;
}
.btn:hover{text-decoration:none;}
.btn-primary{background:var(--brand);color:#FFFFFF;}
.btn-primary:hover{background:var(--brand-dark);color:#FFFFFF;}
.btn-sm{font-size:14.5px;font-weight:600;padding:9px 18px;}
.actions-center{display:flex;justify-content:center;margin-top:36px;}

/* ---------- header ---------- */
.site-header{
  position:sticky;top:0;z-index:20;
  background:var(--surface);border-bottom:1px solid var(--line);
  backdrop-filter:saturate(140%) blur(6px);
}
.header-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.logo{display:inline-flex;align-items:center;}
.logo:hover{text-decoration:none;}
.logo img{height:28px;width:auto;display:block;}

/* ---------- hero ---------- */
.hero{padding:clamp(36px,6vw,76px) 0 clamp(48px,7vw,96px);}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,440px);
  grid-template-areas:"copy form" "extra form";
  column-gap:clamp(36px,5vw,72px);
  row-gap:18px;
  align-items:start;
}
.hero-copy{grid-area:copy;}
.hero-form{grid-area:form;}
.hero-extra{grid-area:extra;}

.hero-copy h1{
  font-weight:700;font-size:clamp(2.1rem,4.6vw,3.5rem);line-height:1.1;
  letter-spacing:-.03em;margin:0 0 18px;text-wrap:balance;
}
.hero-copy h1 em{font-style:normal;color:var(--brand-link);}
.lead{
  font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.55;
  color:var(--muted);max-width:46ch;margin:0;
}

.client-logos{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;}
.client-logos img{opacity:.62;filter:grayscale(1);width:auto;height:auto;max-height:44px;max-width:100%;object-fit:contain;flex:0 0 auto;}

/* ---------- form card ---------- */
.form-card{
  position:sticky;top:92px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:clamp(22px,3vw,32px);
  box-shadow:0 1px 2px rgba(13,13,13,.03),0 20px 44px -30px rgba(13,13,13,.35);
}
.form-card h2{font-weight:700;font-size:1.35rem;letter-spacing:-.025em;line-height:1.25;margin:0 0 6px;}
.form-sub{font-size:.95rem;color:var(--muted);margin:0 0 22px;}
.form-note{margin:16px 0 0;font-size:13px;color:var(--muted);text-align:center;}
#hs-form-getdemo{min-height:330px;}

/* ---------- HubSpot form skin ---------- */
.hs-form,.hs-form *,.hs-input,.hs-button{font-family:"Red Hat Display",system-ui,sans-serif !important;}
.hs-form-field{margin-bottom:14px;}
.hs-form-field > label{display:block;font-size:.86rem;font-weight:500;color:var(--ink);margin-bottom:6px;}
.hs-form-required{color:var(--muted);margin-left:2px;}
.hs-field-desc{font-size:.8rem;color:var(--muted);margin-bottom:6px;}
.hs-input{
  width:100%;font-size:.96rem;color:var(--ink);background:#FAFAFA;
  border:1px solid var(--line);border-radius:10px;padding:12px 14px;
  transition:border-color .15s,background .15s,box-shadow .15s;
}
.hs-input::placeholder{color:#9CA3AF;}
.hs-input:hover{border-color:#D4D4D8;}
.hs-input:focus{outline:none;background:var(--surface);border-color:var(--brand);box-shadow:0 0 0 3px rgba(75,86,208,.16);}
select.hs-input{
  appearance:none;padding-right:38px;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 19px) 52%,calc(100% - 14px) 52%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;
}
.hs-input[type=checkbox],.hs-input[type=radio]{width:auto;margin-right:8px;}
.inputs-list{list-style:none;margin:0;padding:0;}
.hs-error-msgs{list-style:none;margin:6px 0 0;padding:0;}
.hs-error-msg{color:#D0342C;font-size:.82rem;}
.hs-form .hs-button,.hs-button.primary{
  display:block;width:100%;font-size:16px;font-weight:600;color:#fff;
  background:var(--brand);border:0;border-radius:10px;padding:14px 24px;
  margin-top:8px;cursor:pointer;transition:background .18s;
}
.hs-form .hs-button:hover{background:var(--brand-dark);}
.legal-consent-container{font-size:.8rem;color:var(--muted);}
.submitted-message{font-size:1rem;color:var(--ink);}

/* ---------- sections ---------- */
.section{padding:clamp(48px,7vw,88px) 0;}
.section-alt{background:var(--surface-alt);border-top:1px solid var(--line);}
.section-title{
  font-weight:700;font-size:clamp(1.9rem,3.4vw,2.75rem);line-height:1.15;
  letter-spacing:-.03em;margin:0 0 clamp(34px,4vw,52px);
}
.section-title.narrow{font-size:clamp(1.8rem,3.2vw,2.6rem);max-width:20ch;margin-bottom:18px;text-wrap:balance;}
.section-title.centered{text-align:center;}
.section-title.tight{margin-bottom:12px;}
.section-intro{font-size:1.08rem;color:var(--muted);max-width:64ch;margin:0 0 40px;text-wrap:pretty;}
.section-intro.centered{text-align:center;max-width:56ch;margin:0 auto clamp(28px,3.5vw,42px);}

/* ---------- benefit cards ---------- */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;}
.card h3{font-weight:700;font-size:1.22rem;letter-spacing:-.025em;line-height:1.25;margin:0 0 10px;}
.card p{margin:0;color:var(--muted);font-size:.98rem;}

/* ---------- demo embed ---------- */
.demo-shell{
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#0F162F;
  box-shadow:0 1px 2px rgba(13,13,13,.03),0 30px 60px -40px rgba(15,22,47,.5);
}
.demo-frame{position:relative;width:100%;aspect-ratio:16/10;}
.demo-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}

/* ---------- testimonials (legendas alinhadas via subgrid) ---------- */
.testimonials{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  grid-template-rows:auto auto 1fr auto;gap:24px;max-width:920px;margin:0 auto;
}
.testimonial{
  margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:clamp(26px,3vw,36px);display:grid;grid-row:span 4;grid-template-rows:subgrid;gap:20px;
}
.testimonial-body{display:grid;grid-row:span 3;grid-template-rows:subgrid;gap:12px;}
.avatar{width:132px;height:132px;border-radius:50%;object-fit:cover;display:block;}
.testimonial-company{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.025em;color:var(--ink);}
.testimonial blockquote{
  margin:0;font-style:italic;font-size:1.02rem;line-height:1.6;
  letter-spacing:-.01em;text-wrap:pretty;
}
.testimonial figcaption{margin-top:auto;font-size:.95rem;color:var(--muted);}
.testimonial figcaption span{color:var(--ink);font-weight:600;}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;}
.stat-value{margin:0;font-size:clamp(2.4rem,4vw,3.2rem);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--brand);}
.stat-label{margin:10px 0 0;font-size:.95rem;color:var(--muted);}

/* ---------- closing CTA ---------- */
.section-dark{background:var(--navy);padding:clamp(56px,8vw,104px) 0;}
.section-dark h2{
  color:#FFFFFF;font-weight:700;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.15;
  letter-spacing:-.03em;margin:0 0 18px;max-width:26ch;text-wrap:balance;
}
.section-dark p{color:rgba(255,255,255,.72);font-size:1.08rem;margin:0 0 32px;max-width:56ch;}
.section-dark .btn{font-weight:600;}

/* ---------- footer ---------- */
.site-footer{border-top:1px solid var(--line);padding:26px 0;background:var(--surface);}
.footer-inner{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  font-size:14px;color:var(--muted);
}
.footer-inner a{color:var(--muted);}

/* ============================================================
   Responsivo
   ============================================================ */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;grid-template-areas:"copy" "form" "extra";}
  .form-card{position:static;}
}
@media (max-width:760px){
  body{overflow-x:hidden;}
  .hero{padding:26px 0 36px;}
  .section{padding:40px 0;}
  .section-dark{padding:48px 0;}
  .section-title,.section-dark h2{font-size:1.65rem;max-width:none;}
  .hero-copy h1{font-size:2.1rem;}
  .form-card{padding:22px;border-radius:16px;}
  .card,.testimonial{border-radius:16px;}
  .testimonials{grid-template-rows:none;}
  .testimonial{grid-row:auto;grid-template-rows:auto auto 1fr auto;}
  .testimonial blockquote{font-size:1rem;}
  .client-logos{flex-wrap:wrap;gap:16px 22px;}
  .client-logos img{width:auto;max-height:34px;max-width:44%;}
  .logo img{height:24px;}
  .demo-frame{min-height:280px;}
}
@media (max-width:520px){
  .card-grid,.stats{grid-template-columns:1fr;}
  .section-title,.section-dark h2{font-size:1.5rem;}
  .hero-copy h1{font-size:1.9rem;}
  .lead{font-size:1.02rem;}
  .client-logos img{max-width:40%;max-height:28px;}
  .avatar{width:104px;height:104px;}
  .section .btn,.section-dark .btn{width:100%;}
}

/* --- ajustes mobile adicionais --- */
@media (max-width:760px){
  :root{--pad:20px;}
  .header-inner{min-height:60px;}
  .btn-sm{padding:9px 15px;font-size:14px;}
  .hero-grid{row-gap:26px;}
  .lead{max-width:none;}
  .section-intro{margin-bottom:26px;}
  .card{padding:22px;}
  .testimonial{padding:22px;}
  .demo-frame{aspect-ratio:4/3;}
  .stats{gap:20px;}
  .section-dark p{margin-bottom:26px;}
  .footer-inner{justify-content:center;text-align:center;}
}
@media (max-width:400px){
  .hero-copy h1{font-size:1.72rem;}
  .section-title,.section-dark h2{font-size:1.38rem;}
  .stat-value{font-size:2.1rem;}
  .client-logos{gap:14px 18px;}
}
