/* =========================================================
   Hero Alwayzz-spec adapted for Revel Ads
   Full animations: side curves, marquees, entrance, blur
   ========================================================= */

:root{
  --hero-bg:#ffffff;
  --hero-text:#0a0a0a;
  --hero-muted:#6b6b6b;
  --hero-accent:#ff6a00;
  --hero-ease:cubic-bezier(.22,1,.36,1);
}

body.has-hero-clean{
  font-family:"Inter","Public Sans",system-ui,sans-serif;
}
body.has-hero-clean .header:not(.scrolled){
  color:var(--hero-text);
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
body.has-hero-clean .header:not(.scrolled) .nav a{color:rgba(10,10,10,.58)}
body.has-hero-clean .header:not(.scrolled) .nav a:hover,
body.has-hero-clean .header:not(.scrolled) .nav a.active{color:var(--hero-text)}
body.has-hero-clean .header:not(.scrolled) .btn--header{
  color:#fff;background:#0a0a0a;
}
body.has-hero-clean .header:not(.scrolled) .icon-link{
  border-color:rgba(10,10,10,.12);color:var(--hero-text);
}
/* logo__dark = lettering branco (fundo escuro); logo__light = lettering preto (fundo claro) */
body.has-hero-clean .header:not(.scrolled) .logo__dark{opacity:0!important}
body.has-hero-clean .header:not(.scrolled) .logo__light{opacity:1!important}
body.has-hero-clean .header.scrolled .logo__dark{opacity:1!important}
body.has-hero-clean .header.scrolled .logo__light{opacity:0!important}
body.has-hero-clean .header:not(.scrolled) .menu-toggle{border-color:rgba(10,10,10,.18)}
body.has-hero-clean .hero-stage{display:none!important}

/* SEO descriptor (visible, brand-aligned) */
.hero-clean__seo-label{
  margin:0 0 .85rem;
  color:rgba(10,10,10,.58);
  font-size:clamp(.78rem,1.1vw,.88rem);
  font-weight:650;
  letter-spacing:.06em;
  text-transform:uppercase;
}

/* ---- HERO SHELL ---- */
.hero-clean{
  --header-h:72px;
  position:relative;
  min-height:850px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:160px 36px 48px;
  color:var(--hero-text);
  background:var(--hero-bg);
  overflow:hidden;
  text-align:center;
}

/* Soft ambient glow — Revel orange palette (replaces Alwayzz blue stock) */
.hero-clean__bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    /* side glows — peach / brand orange */
    radial-gradient(ellipse 42% 70% at 0% 42%,rgba(255,138,61,.42),transparent 70%),
    radial-gradient(ellipse 42% 70% at 100% 42%,rgba(255,106,0,.36),transparent 70%),
    /* soft upper corners */
    radial-gradient(ellipse 38% 36% at 8% 8%,rgba(255,176,112,.28),transparent 68%),
    radial-gradient(ellipse 38% 36% at 92% 8%,rgba(255,154,80,.26),transparent 68%),
    /* lower warm wash */
    radial-gradient(ellipse 55% 40% at 50% 100%,rgba(255,160,90,.14),transparent 65%),
    /* clean center for typography */
    radial-gradient(ellipse 72% 68% at 50% 46%,#fff 0%,#fff 38%,rgba(255,248,242,.96) 62%,transparent 78%),
    #fffaf6;
  pointer-events:none;
}
/* Subtle white veil + bottom fade into next section */
.hero-clean__bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 68% 52% at 50% 42%,rgba(255,255,255,.35),transparent 62%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.42) 62%,#fff 100%);
  pointer-events:none;
}

/* ---- CURVED LINE ANIMATIONS (20 left + 20 right) ---- */
.hero-lines{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.hero-lines__side{
  position:absolute;
  top:6%;
  bottom:16%;
  width:min(46vw,520px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hero-lines__side--left{left:0;align-items:flex-start;padding-left:0}
.hero-lines__side--right{right:0;align-items:flex-end;padding-right:0}

.hero-line{
  display:block;
  height:clamp(22px,3.6vh,40px);
  border:2.5px solid #FCFAF8;
  box-shadow:0 0 0 1px rgba(255,180,120,.12);
  opacity:0;
  will-change:opacity,transform;
  animation:line-pulse 5s ease-in-out infinite;
  background:linear-gradient(90deg,rgba(255,160,90,.12),transparent 70%);
}
.hero-lines__side--left .hero-line{
  border-left:0;
  border-radius:0 80% 80% 0;
}
.hero-lines__side--right .hero-line{
  border-right:0;
  border-radius:80% 0 0 80%;
  background:linear-gradient(270deg,rgba(255,160,90,.12),transparent 70%);
}

/* Mobile: horizontal top lines */
.hero-lines__top{
  display:none;
  position:absolute;
  left:6%;
  right:6%;
  top:12%;
  height:26%;
  flex-direction:column;
  justify-content:space-between;
}
.hero-lines__top .hero-line{
  width:100%!important;
  height:12px;
  border:2px solid #FCFAF8;
  border-top:0;
  border-radius:0 0 80% 80%;
  background:linear-gradient(180deg,transparent,rgba(255,160,90,.1));
}

/* ---- CONTENT ---- */
.hero-clean__inner{
  position:relative;
  z-index:3;
  width:min(100%,720px);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
}

/* Chip ticker — 4 groups for seamless loop */
.hero-chip-marquee{
  width:min(100%,500px);
  height:36px;
  margin-bottom:28px;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 88%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 12%,#000 88%,transparent 100%);
  opacity:0;
  transform:translateY(18px);
  animation:hero-rise .9s var(--hero-ease) .05s forwards;
}
.hero-chip-marquee__track{
  display:flex;
  width:max-content;
  gap:0;
  animation:none; /* loop infinito via animations.js */
}
.hero-chip-marquee__group{
  display:flex;
  gap:10px;
  flex:0 0 auto;
  flex-shrink:0;
  padding-right:10px;
}
.hero-chip-marquee,
.hero-chip-marquee *{
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  cursor:default!important;
}
.hero-chip{
  flex:0 0 auto;
  padding:6px 14px;
  border-radius:999px;
  background:rgb(251,251,251);
  border:1px solid rgba(0,0,0,.04);
  color:var(--hero-muted);
  font-size:13px;
  font-weight:500;
  white-space:nowrap;
  letter-spacing:-.01em;
  transition:none!important;
  transform:none!important;
  box-shadow:none!important;
}
.hero-chip:hover,
.hero-chip:active,
.hero-chip:focus{
  transform:none!important;
  box-shadow:none!important;
  filter:none!important;
  background:rgb(251,251,251);
}
.hero-chip--brand{
  color:#fff;
  background:var(--hero-accent);
  border-color:var(--hero-accent);
  font-weight:600;
}
.hero-chip--brand:hover,
.hero-chip--brand:active{
  background:var(--hero-accent)!important;
  color:#fff!important;
}

.hero-clean__title{
  /* um pouco mais largo que antes: “Marketing feito para” precisa caber numa linha */
  max-width:min(100%,720px);
  margin:0;
  font-size:clamp(2.6rem,6.4vw,5.125rem);
  font-weight:600;
  line-height:1.02;
  letter-spacing:-.07em;
  color:var(--hero-text);
  opacity:0;
  transform:translateY(28px);
  animation:hero-rise 1s var(--hero-ease) .15s forwards;
}
.hero-clean__title .hero-clean__line{
  display:block;
}
/* Desktop/tablet: 3 linhas fixas, sem quebra no meio da frase */
@media (min-width:640px){
  .hero-clean__title .hero-clean__line{
    white-space:nowrap;
  }
}
/* Mesma tipografia laranja de antes (Libre Bodoni itálico) */
.hero-clean__title .serif{
  font-family:"Libre Bodoni",Georgia,"Times New Roman",serif;
  font-style:italic;
  font-weight:500;
  letter-spacing:-.05em;
  color:var(--hero-accent);
  text-transform:none;
}

.hero-clean__sub{
  max-width:476px;
  margin:22px 0 0;
  font-size:17px;
  line-height:1.45;
  font-weight:400;
  color:var(--hero-muted);
  letter-spacing:-.01em;
  opacity:0;
  transform:translateY(22px);
  animation:hero-rise .95s var(--hero-ease) .28s forwards;
}

.hero-clean__cta-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-top:28px;
  opacity:0;
  transform:translateY(20px);
  animation:hero-rise .95s var(--hero-ease) .4s forwards;
}
.hero-clean__ctas{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:12px;
}
/* Shared CTA shell — same height, radius, weight */
.hero-clean__btn{
  --btn-lift:0px;
  --btn-scale:1;
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  min-height:52px;
  height:52px;
  padding:0 28px;
  border-radius:999px;
  border:1.5px solid #0a0a0a;
  background:#0a0a0a;
  color:#fff;
  font-size:15px;
  font-weight:600;
  letter-spacing:-.02em;
  line-height:1;
  white-space:nowrap;
  text-decoration:none;
  box-sizing:border-box;
  overflow:hidden;
  isolation:isolate;
  transform:translate3d(0,var(--btn-lift),0) scale(var(--btn-scale));
  transition:
    transform .38s cubic-bezier(.22,1,.36,1),
    box-shadow .38s cubic-bezier(.22,1,.36,1),
    background .28s ease,
    border-color .28s ease,
    color .28s ease;
}
.hero-clean__btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.14) 50%,transparent 80%);
  transform:translateX(-120%);
  transition:transform .55s cubic-bezier(.22,1,.36,1);
  pointer-events:none;
}
.hero-clean__btn:hover{
  --btn-lift:-3px;
  --btn-scale:1.02;
  box-shadow:
    0 8px 22px rgba(0,0,0,.16),
    0 0 0 1px rgba(255,106,0,.18);
  background:#141414;
  border-color:#141414;
}
.hero-clean__btn:hover::before{transform:translateX(120%)}
.hero-clean__btn:active{
  --btn-lift:0px;
  --btn-scale:.985;
  transition-duration:.12s;
}
/* Secondary: solid presence, no glass / disabled look */
.hero-clean__btn--secondary{
  background:#fff;
  color:#0a0a0a;
  border:1.5px solid #c8c4bc;
  box-shadow:0 1px 2px rgba(17,17,17,.06),0 4px 12px rgba(17,17,17,.05);
}
.hero-clean__btn--secondary:hover{
  background:#fff;
  border-color:#ff6a00;
  color:#0a0a0a;
  box-shadow:
    0 8px 22px rgba(255,106,0,.16),
    0 0 0 1px rgba(255,106,0,.28);
}
.hero-clean__btn--secondary::before{
  background:linear-gradient(120deg,transparent 20%,rgba(255,106,0,.12) 50%,transparent 80%);
}
/* Microcopy under CTAs — estilo base (animação no hero-anim-final.css) */
.hero-clean__cta-note{
  position:relative;
  width:max-content;
  max-width:min(100%,640px);
  margin:22px auto 0;
  padding:10px 20px;
  text-align:center;
  color:#6f6b63;
  font-size:13px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:-.01em;
  white-space:nowrap;
  background:#fffefb;
  border:1px solid rgba(255,106,0,.18);
  border-radius:999px;
  overflow:visible;
}
/* Pergunta em laranja — sem text-shadow (clean) */
.hero-clean__cta-note strong{
  color:var(--hero-accent,#ff6a00);
  font-weight:600;
  text-shadow:none;
}
/* Resposta/CTA legível */
.hero-clean__cta-note-rest{
  color:#3a3630;
  font-weight:450;
  text-shadow:none;
}
@media (max-width:640px){
  .hero-clean__cta-note{
    white-space:normal;
    width:100%;
    max-width:340px;
    padding:10px 16px;
  }
}

/* Progressive blur bottom */
.hero-clean__fade{
  position:absolute;
  left:0;right:0;bottom:0;
  z-index:2;
  height:178px;
  background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.4) 40%,#fff 100%);
  pointer-events:none;
}

/* Trusted strip — layout/anim em hero-anim-final.css + hero-trusted-cycle.js
   NÃO definir padding/altura/bg aqui (causava gap branco e matava o ciclo). */
.hero-trusted{
  position:relative;
  z-index:4;
  width:100%;
  margin:0;
  padding:0;
  background:#111;
}

@keyframes marquee-left{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@keyframes line-pulse{
  0%{opacity:0;transform:scale(1)}
  15%{opacity:.9}
  70%{opacity:.4}
  100%{opacity:0;transform:scale(.85)}
}
@keyframes hero-rise{
  to{opacity:1;transform:none}
}

/* ---- CLARITY: reference Control orb + cards ---- */
.clarity{
  background:#fff!important;
  padding:clamp(48px,6vw,80px) clamp(16px,3vw,40px)!important;
}
.clarity__badge{
  background:rgb(249,249,249)!important;
  color:rgb(26,11,84)!important;
  color:#1a120c!important;
}
/* Accent: resto em sans da headline; só CLAREZA em Bodoni */
.clarity__head h2 .grad,
.clarity__head h2 .clarity__title-accent{
  background-image:none!important;
  background:none!important;
  -webkit-background-clip:unset!important;
  background-clip:unset!important;
  -webkit-text-fill-color:#111111!important;
  color:#111111!important;
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:700!important;
  letter-spacing:-.045em!important;
  text-transform:none!important;
}
.clarity__head h2 .clarity__title-lead{
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:700!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}
.clarity__head h2 .clarity__title-clarity{
  color:#1a9a4a!important;
  -webkit-text-fill-color:#1a9a4a!important;
  font-family:"Libre Bodoni",Georgia,serif!important;
  font-style:normal!important;
  font-weight:600!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  font-size:1.02em!important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.35),
    0 2px 4px rgba(0,0,0,.28),
    0 0 12px rgba(0,0,0,.12)!important;
}
.clarity__head h2 .clarity__title-wrong{
  color:#d41919!important;
  font-family:"Libre Bodoni",Georgia,serif!important;
  font-style:italic!important;
  font-weight:500!important;
  -webkit-text-fill-color:#d41919!important;
}
.clarity__center{
  align-self:center;
  position:relative;
  width:clamp(200px,22vw,320px);
  height:clamp(200px,22vw,320px);
  flex-shrink:0;
  border-radius:50%;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,#fff 0%,rgba(255,240,228,.9) 28%,rgba(255,180,120,.2) 55%,rgba(255,106,0,.08) 75%,transparent 80%);
  box-shadow:
    0 0 0 1px rgba(255,106,0,.08),
    0 24px 60px rgba(255,106,0,.12);
}
.clarity__center-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,106,0,.18);
  left:50%;top:50%;
  transform:translate(-50%,-50%);
}
.clarity__center-ring--1{width:42%;height:42%;animation:orbSpin 14s linear infinite}
.clarity__center-ring--2{width:62%;height:62%;border-style:dashed;animation:orbSpin 22s linear infinite reverse}
.clarity__center-ring--3{width:82%;height:82%;opacity:.55;animation:orbSpin 30s linear infinite}
.clarity__center-core{
  position:absolute;left:50%;top:50%;
  width:28%;height:28%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle at 40% 35%,#ffb070,#ff6a00);
  box-shadow:0 0 28px rgba(255,106,0,.45);
  animation:corePulse 3.2s ease-in-out infinite;
}
.clarity__center-dot{
  position:absolute;width:7px;height:7px;border-radius:50%;
  background:#ff6a00;box-shadow:0 0 10px rgba(255,106,0,.5);
}
.clarity__center-dot--a{left:22%;top:38%;animation:dotFloat 4s ease-in-out infinite}
.clarity__center-dot--b{right:20%;top:30%;animation:dotFloat 4.6s ease-in-out infinite .4s}
.clarity__center-dot--c{left:30%;bottom:22%;animation:dotFloat 5s ease-in-out infinite .8s}
.clarity__center-dot--d{right:28%;bottom:28%;animation:dotFloat 4.2s ease-in-out infinite .2s}
.clarity__vs{display:none!important}

.clarity__grid{
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:24px 28px!important;
}
.clarity-card{
  transition:transform .35s var(--hero-ease),box-shadow .35s var(--hero-ease);
}
.js .clarity.reveal .clarity-card{
  opacity:0;transform:translateY(16px);
  transition:opacity .55s var(--hero-ease),transform .55s var(--hero-ease);
}
.js .clarity.reveal.is-visible .clarity-card{
  opacity:1;transform:none;
}
.js .clarity.reveal.is-visible .clarity__col:first-child .clarity-card:nth-child(2){transition-delay:40ms}
.js .clarity.reveal.is-visible .clarity__col:first-child .clarity-card:nth-child(3){transition-delay:90ms}
.js .clarity.reveal.is-visible .clarity__col:first-child .clarity-card:nth-child(4){transition-delay:140ms}
.js .clarity.reveal.is-visible .clarity__col:first-child .clarity-card:nth-child(5){transition-delay:190ms}
.js .clarity.reveal.is-visible .clarity__col:first-child .clarity-card:nth-child(6){transition-delay:240ms}
.js .clarity.reveal.is-visible .clarity__col:last-child .clarity-card:nth-child(2){transition-delay:80ms}
.js .clarity.reveal.is-visible .clarity__col:last-child .clarity-card:nth-child(3){transition-delay:130ms}
.js .clarity.reveal.is-visible .clarity__col:last-child .clarity-card:nth-child(4){transition-delay:180ms}
.js .clarity.reveal.is-visible .clarity__col:last-child .clarity-card:nth-child(5){transition-delay:230ms}
.js .clarity.reveal.is-visible .clarity__col:last-child .clarity-card:nth-child(6){transition-delay:280ms}
.js .clarity.reveal.is-visible .clarity__center{
  animation:centerIn .8s var(--hero-ease) .1s both;
}

@keyframes orbSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes corePulse{50%{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 0 40px rgba(255,106,0,.55)}}
@keyframes dotFloat{50%{transform:translateY(-6px);opacity:.55}}
@keyframes centerIn{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}

/* ---- PRECISION: staircase + wave ---- */
.precision{
  position:relative;
  overflow:hidden;
  background:#fafafa!important;
  padding:clamp(48px,8vw,100px) clamp(16px,4vw,48px) clamp(48px,6vw,80px)!important;
}
.precision__wave{
  position:absolute;
  left:0;right:0;bottom:0;
  height:min(28vw,220px);
  pointer-events:none;
  opacity:.85;
}
.precision__wave svg{width:100%;height:100%;display:block}
.precision__board{
  position:relative!important;
  z-index:2;
  width:min(100%,82.292vw)!important;
  max-width:1100px;
  height:clamp(260px,32vw,380px)!important;
  margin:2rem auto 0!important;
  display:block!important;
}
.precision-pillar{
  position:absolute!important;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  left:var(--l);
  bottom:var(--b);
}
.precision-chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 18px;border-radius:20px;
  background:linear-gradient(135deg,#fff,rgba(255,255,255,.65));
  box-shadow:0 10px 28px rgba(40,28,18,.08);
  border:1px solid rgba(0,0,0,.04);
  font-size:clamp(.9rem,1.1vw,1.05rem);font-weight:600;white-space:nowrap;
}
.precision-chip i{
  width:8px;height:8px;border-radius:50%;background:#ff6a00;
  box-shadow:0 0 0 4px rgba(255,106,0,.12);
}
.precision-pillar__body{
  position:relative;display:flex;flex-direction:column;align-items:center;
  margin-top:4px;
}
.precision-pillar__items{
  position:absolute!important;
  top:8px;left:18px;
  display:flex;flex-direction:column;gap:2px;
  text-align:left;font-size:clamp(.78rem,.95vw,.95rem);color:#5c544c;
}
.precision-pillar__items span{padding:6px 8px}
.precision-line{
  display:block!important;
  width:1.5px;
  height:clamp(90px,14vw,150px);
  background:linear-gradient(180deg,#ff6a00,rgba(255,140,60,.15),transparent);
}
.precision__mobile{display:none}

/* Difference fill — owned by difference-console.css (scaleY + bar).
   Do NOT run legacy diffFill here: it fought scaleY and caused enter teleport. */
.difference-tab__fill{
  background:#151310!important;
  animation:none!important;
}
.difference-tab.is-active .difference-tab__fill,
.difference-tab.is-leaving .difference-tab__fill{
  animation:none!important;
}
/* progress bar is .difference-tab__bar — kill legacy ::after fill */
.difference-tab.is-active::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}

@media (max-width:1200px){
  .hero-clean{padding:140px 32px 40px}
  .hero-clean__title{font-size:clamp(2.5rem,6.5vw,4.5rem)}
}
@media (max-width:1024px){
  .clarity__grid{grid-template-columns:1fr!important;max-width:520px;margin:0 auto}
  .clarity__center{order:-1;justify-self:center;width:min(72vw,280px);height:min(72vw,280px)}
  .precision__board{display:none!important}
  .precision__mobile{display:flex;flex-direction:column;gap:1.25rem;width:100%;max-width:520px;margin:1.5rem auto 0;position:relative;z-index:2}
  .precision-m-pillar{display:flex;flex-direction:column;gap:.4rem}
  .precision-m-pillar.is-right{align-items:flex-end}
  .precision-m-row{display:flex;width:100%}
  .precision-m-pillar.is-right .precision-m-row{flex-direction:row-reverse}
  .precision-m-line{width:1.5px;min-height:110px;flex-shrink:0;margin-inline:1rem;background:linear-gradient(#ff6a00,transparent)}
  .precision-m-items{display:flex;flex-direction:column;gap:2px;padding:.35rem 0;font-size:.9rem;color:#5c544c}
  .precision-m-pillar.is-right .precision-m-items{align-items:flex-end;text-align:right}
}
@media (max-width:810px){
  .hero-clean{min-height:760px;padding:120px 24px 96px}
  .hero-lines__side{display:none}
  .hero-lines__top{display:flex}
  .hero-clean__bg{transform:rotate(0deg) scale(1.15)}
  .hero-clean__title{font-size:clamp(2.4rem,12vw,3.25rem)}
  .hero-clean__cta-block{width:100%;max-width:360px}
  .hero-clean__ctas{flex-direction:column;width:100%}
  .hero-clean__btn{width:100%;justify-content:center}
  .hero-trusted{flex-direction:column;align-items:flex-start;padding:12px 24px 36px;gap:14px}
  .hero-trusted__label{max-width:none}
}
@media (max-width:480px){
  .hero-clean__title{font-size:clamp(2.15rem,12vw,2.75rem)}
}

@media (prefers-reduced-motion:reduce){
  .hero-line,
  .clarity__center-ring,.clarity__center-core,.clarity__center-dot{animation:none!important}
  .hero-line{opacity:.28}
  .hero-chip-marquee,.hero-clean__title,.hero-clean__sub,.hero-clean__cta-block,.hero-trusted{
    opacity:1!important
  }
  /* tracks: NÃO zerar transform — animações JS usam transform */
}

/* Force staircase over older marketeam precision grid */
body.has-hero-clean .precision__board{
  position:relative !important;
  display:block !important;
  width:min(100%,82.292vw) !important;
  max-width:1100px !important;
  height:clamp(260px,32vw,380px) !important;
  margin:2rem auto 0 !important;
  grid-template-columns:unset !important;
}
body.has-hero-clean .precision-pillar{
  position:absolute !important;
  left:var(--l) !important;
  bottom:var(--b) !important;
}
body.has-hero-clean .precision-line{display:block !important}
body.has-hero-clean .precision__mobile{display:none}
@media (max-width:1024px){
  body.has-hero-clean .precision__board{display:none !important}
  body.has-hero-clean .precision__mobile{display:flex !important;flex-direction:column;gap:1.25rem;width:100%;max-width:520px;margin:1.5rem auto 0}
}
