/* Copy e loja compartilham o alinhamento do header; o widget usa toda a coluna. */
section.hero { min-height:0; padding:0; }
section.hero .hero-grid {
  display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  min-height:0; align-items:center; gap:clamp(32px,4vw,64px);
  padding-block:32px;
}
section.hero .hero-copy {
  display:flex; flex-direction:column; width:100%; min-height:0; max-width:none; margin:0; padding:0;
  align-items:flex-start; justify-content:center; gap:24px; text-align:left;
}
section.hero .hero-copy__top,section.hero .hero-copy__bottom { display:flex; flex-direction:column; width:100%; align-items:flex-start; }
section.hero .hero-copy__top { gap:28px; }
section.hero .hero-copy__bottom { gap:0; }
section.hero .hero-copy h1 {
  width:100%; max-width:18ch; margin:0;
  font-size:clamp(40px,4vw,56px); line-height:1.12; letter-spacing:-.035em; text-wrap:balance;
}
section.hero .hero-lead { max-width:48ch; font-size:17px; line-height:1.75; }
section.hero .hero-cta {
  display:flex; flex-direction:row; flex-wrap:wrap; align-items:center;
  justify-content:flex-start; margin-top:24px; gap:12px;
}
section.hero .hero-product-stage {
  position:relative; z-index:3; isolation:isolate; display:block;
  width:100%; min-width:0; min-height:0; padding:0;
  inset:auto; transform:none; perspective:none;
}
section.hero .hero-product-stage .demo-column {
  position:relative; z-index:2; width:100%; max-width:none;
  padding:0; transform:none;
}
section.hero .demo-frame {
  width:100%; max-width:none; min-height:0; overflow:hidden; border-radius:16px;
  border:1px solid oklch(67% .055 156 / .65);
  background:oklch(19% .025 156); box-shadow:none;
}
section.hero .demo-bar { height:48px; min-height:48px; padding:0 16px; }
section.hero .demo-state,section.hero .demo-open { font-size:12px; }
section.hero .demo-frame iframe {
  display:block; width:100%; height:clamp(640px,calc(100svh - 180px),800px); min-height:0;
}
section.hero .demo-overlay,section.hero .demo-fallback { inset:48px 0 0; }

section.hero .hero-stage-footer { display:flex; flex-direction:column; gap:8px; padding:0 0 32px; text-align:center; }
section.hero .hero-stage-footer .hero-offer { margin:0; font-size:13px; }
section.hero .hero-stage-footer .hero-assurance { margin:0; max-width:none; font-size:12px; }
section.hero .hero-stage-footer .motion-toggle { margin-top:8px; font-size:12px; }

@media(max-width:1050px) {
  section.hero .hero-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
  section.hero .hero-copy { max-width:800px; margin-inline:auto; align-items:center; text-align:center; }
  section.hero .hero-copy__top,section.hero .hero-copy__bottom { align-items:center; }
  section.hero .hero-copy h1 { max-width:none; font-size:clamp(36px,5.5vw,60px); }
  section.hero .hero-cta { justify-content:center; }
  section.hero .demo-frame iframe { height:clamp(600px,80svh,800px); }
}
@media(max-width:720px) {
  .site-header .header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; }
  .site-header .brand { grid-column:1; margin-right:0; }
  .site-header .header-actions { grid-column:2; }
  .site-header .menu-toggle { grid-column:3; }
  .site-header .main-nav { grid-column:1 / -1; grid-row:2; }
  section.hero .hero-copy { gap:20px; }
  section.hero .hero-copy__top { gap:24px; }
  section.hero .hero-copy .eyebrow { font-size:10px; letter-spacing:.06em; }
  section.hero .hero-copy h1 { font-size:clamp(32px,8.6vw,44px); line-height:1.16; letter-spacing:-.03em; }
  section.hero .hero-lead { font-size:15px; max-width:42ch; }
  section.hero .hero-cta { gap:12px; margin-top:24px; }
  section.hero .hero-cta .button { justify-content:center; padding-inline:16px; font-size:13px; min-height:48px; }
  section.hero .demo-bar { gap:8px; padding-inline:12px; }
  section.hero .demo-state,section.hero .demo-open { font-size:11px; }
}
@media(max-width:520px) {
  .site-header .brand > span { display:none; }
}
