/* =========================================================
   PP NEUE MACHINA — FONTES LOCAIS
   ========================================================= */

@font-face{
  font-family:"PP Neue Machina";
  src:url("../fonts/PPNeueMachina-Light.otf") format("opentype");
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"PP Neue Machina";
  src:url("../fonts/PPNeueMachina-Regular.otf") format("opentype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:"PP Neue Machina";
  src:url("../fonts/PPNeueMachina-Ultrabold.otf") format("opentype");
  font-weight:800 900;
  font-style:normal;
  font-display:swap;
}

/* TIPOGRAFIA GLOBAL — NEUE MACHINA */
html,
body,
body *,
button,
input,
select,
textarea,
a,
p,
span,
strong,
small,
div,
section,
article,
aside,
nav,
header,
footer,
h1,
h2,
h3,
h4,
h5,
h6,
label {
  font-family:"PP Neue Machina", Arial, sans-serif !important;
}

:root{
  --bg:#111315;
  --bg2:#171918;
  --graphite:#373736;
  --paper:#F6F6F2;
  --muted:#A5A6A2;
  --orange:#E74F10;
  --orange2:#F06A32;
  --orangeDark:#C9410C;
  --line:rgba(246,246,242,.12);
  --max:1100px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  overflow-x:hidden;
  background:var(--bg);
  color:var(--paper);
  font-family:"PP Neue Machina",Arial,sans-serif;
  -webkit-font-smoothing:antialiased
}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
img{display:block;width:100%;height:auto}
.container{width:min(calc(100% - 28px),var(--max));margin:auto}
.section{position:relative;padding:56px 0;overflow:hidden}
h1{
  font-size:clamp(2.35rem,10vw,3.25rem);
  line-height:.92;
  letter-spacing:-.055em;
  font-weight:800;
  text-wrap:balance
}
h2{
  font-size:clamp(2rem,8.6vw,2.75rem);
  line-height:.96;
  letter-spacing:-.048em;
  font-weight:800;
  text-wrap:balance
}
h3{font-size:1.14rem;line-height:1.08;letter-spacing:-.03em}
p{font-size:.94rem;line-height:1.52;color:var(--muted)}
.accent{color:var(--orange)}


/* TÍTULOS COM FADE IN */
.title-fade{
  opacity:0;
  transform:translateY(22px);
  filter:blur(6px);
  transition:
    opacity .82s ease,
    transform .82s cubic-bezier(.22,1,.36,1),
    filter .82s ease;
  will-change:opacity,transform,filter;
}
.title-fade.visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}

/* LUZES PULSANTES GLOBAIS — SUTIS */
body{
  position:relative;
  isolation:isolate;
}
body > *{
  position:relative;
  z-index:1;
}
body::before,
body::after{
  content:"";
  position:fixed;
  z-index:0;
  pointer-events:none;
  border-radius:999px;
  mix-blend-mode:screen;
  filter:blur(110px);
  opacity:.16;
  animation:edgePulse 7.5s ease-in-out infinite;
}
body::before{
  top:14%;
  left:-180px;
  width:380px;
  height:380px;
  background:radial-gradient(circle, rgba(231,79,16,.45) 0%, rgba(240,106,50,.20) 42%, rgba(231,79,16,0) 74%);
}
body::after{
  right:-220px;
  bottom:10%;
  width:460px;
  height:320px;
  background:radial-gradient(circle, rgba(240,106,50,.42) 0%, rgba(231,79,16,.18) 38%, rgba(231,79,16,0) 74%);
  animation-delay:1.8s;
}
@keyframes edgePulse{
  0%,100%{opacity:.08;transform:scale(.96)}
  50%{opacity:.22;transform:scale(1.03)}
}
@media (max-width:759px){
  body::before{
    left:-210px;
    top:18%;
    width:300px;
    height:300px;
    filter:blur(90px);
    opacity:.12;
  }
  body::after{
    right:-190px;
    bottom:8%;
    width:320px;
    height:260px;
    filter:blur(95px);
    opacity:.12;
  }
}

/* TIMER */
.scarcity{
  position:fixed;
  z-index:100;
  inset:0 0 auto 0;
  height:58px;
  padding-top:env(safe-area-inset-top);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:rgba(9,10,10,.97);
  border-bottom:1px solid rgba(231,79,16,.76);
  box-shadow:0 7px 24px rgba(0,0,0,.32),0 0 18px rgba(231,79,16,.12);
  backdrop-filter:blur(12px);
  font-weight:800;
  letter-spacing:.07em
}
.scarcity-label{font-size:.57rem;white-space:nowrap}
.timer{
  display:flex;
  align-items:center;
  gap:2px;
  color:var(--orange2);
  font-size:.9rem;
  font-variant-numeric:tabular-nums;
  text-shadow:0 0 6px rgba(240,106,50,.85),0 0 13px rgba(231,79,16,.45)
}
.timer .sep{color:rgba(246,246,242,.45)}

/* CTA */
.cta{
  width:min(100%,310px);
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 17px;
  border:1px solid var(--orange2);
  border-radius:5px;
  background:var(--orange);
  color:#fff;
  box-shadow:0 0 4px rgba(240,106,50,.85),0 0 13px rgba(240,106,50,.44),0 0 26px rgba(231,79,16,.2);
  font-size:.67rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
  text-align:center;
  transition:.25s ease
}
.cta:hover,.cta:focus-visible{
  transform:translateY(-2px);
  background:var(--orangeDark);
  box-shadow:0 0 7px rgba(240,106,50,.95),0 0 18px rgba(240,106,50,.56),0 0 34px rgba(231,79,16,.26);
  outline:none
}

/* LUZES */
.dark-lights{position:relative;isolation:isolate;overflow:hidden}
.dark-lights::before,.dark-lights::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  border-radius:100%;
  mix-blend-mode:screen;
  animation:luz 5s infinite
}
.dark-lights::before{
  top:12%;right:-145px;width:300px;height:390px;
  background:var(--orange2);filter:blur(110px);opacity:.18
}
.dark-lights::after{
  top:62%;right:-220px;width:620px;height:220px;
  background:var(--orange);filter:blur(115px);opacity:.14;
  animation-delay:2s
}
@keyframes luz{0%,100%{opacity:0;transform:scale(.95)}50%{opacity:.38;transform:scale(1)}}

/* 1 HERO */
.hero{
  position:relative;
  min-height:680px;
  height:88svh;
  max-height:860px;
  isolation:isolate;
  overflow:hidden;
  background:var(--bg);
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      180deg,
      rgba(17,19,21,.03) 0%,
      rgba(17,19,21,.08) 34%,
      rgba(17,19,21,.22) 56%,
      rgba(17,19,21,.72) 76%,
      rgba(17,19,21,.96) 100%
    );
  z-index:1;
  pointer-events:none;
}
.hero-content{
  position:absolute;
  left:0;
  right:0;
  bottom:26px;
  z-index:3;
  width:100%;
  text-align:center;
}
.hero-copy-wrap{
  width:min(calc(100% - 28px), 760px);
  margin-inline:auto;
}
.hero h1{
  max-width:860px;
  margin:0 auto;
  font-size:clamp(2.6rem, 7.5vw, 6rem);
  line-height:.93;
  letter-spacing:-.06em;
  text-shadow:0 4px 20px rgba(0,0,0,.42);
}
.hero h1 span.line{display:inline}
.hero p{
  width:min(100%, 620px);
  margin:14px auto 0;
  color:rgba(246,246,242,.86);
  text-shadow:0 2px 12px rgba(0,0,0,.42);
}
.hero .cta{display:none}
.hero-proof{
  width:min(100%,340px);
  margin:18px auto 0;
  padding-top:11px;
  display:flex;
  justify-content:center;
  gap:12px;
  border-top:1px solid rgba(246,246,242,.20);
  color:rgba(246,246,242,.54);
  font-size:.58rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.hero-proof span+span::before{content:"•";margin-right:12px;color:var(--orange)}

@media (max-width:759px){
  .hero{
    min-height:610px;
    height:78svh;
    max-height:720px;
    background:var(--bg);
  }
  .hero-content{bottom:18px}
  .hero-copy-wrap{width:min(calc(100% - 24px), 420px)}
  .hero h1{
    max-width:390px;
    font-size:clamp(2.4rem, 8.7vw, 3.65rem);
    line-height:.95;
  }
  .hero h1 span.line{display:block}
  .hero p{
    width:min(100%, 360px);
    font-size:.92rem;
    line-height:1.45;
  }
}

@media (min-width:760px){
  .hero{
    min-height:700px;
    height:82svh;
    max-height:840px;
    background:var(--bg);
  }
  .hero-content{bottom:30px}
  .hero-copy-wrap{width:min(calc(100% - 64px), 980px)}
  .hero h1{max-width:900px}
  .hero p{max-width:620px}
}

/* FLASHES SUTIS NA FOTO DA HERO */
.hero-photo{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url("../images/hero-mobile.webp");
  background-size:cover;
  background-position:center 8%;
  animation:flashAleatorio 8s infinite ease-in-out;
  will-change:filter;
}

@keyframes flashAleatorio {
  0%, 10%   { filter: brightness(1); }
  12%       { filter: brightness(2.2); }
  14%       { filter: brightness(1); }
  25%, 40%  { filter: brightness(1); }
  42%       { filter: brightness(1.6); }
  44%       { filter: brightness(1); }
  60%, 70%  { filter: brightness(1); }
  72%       { filter: brightness(2); }
  74%       { filter: brightness(1); }
  90%, 100% { filter: brightness(1); }
}

@media (max-width:759px){
  .hero-photo{
    background-image:url("../images/hero-mobile.webp");
    background-position:center 38%;
  }
}

@media (min-width:760px){
  .hero-photo{
    background-image:url("../images/hero-desktop.webp");
    background-position:center 42%;
  }
}

/* 2 APRESENTAÇÃO */
.presentation{background:var(--paper);color:var(--bg)}
.presentation p{color:rgba(17,19,21,.66)}
.presentation-copy{display:grid;gap:16px}
.presentation-points{
  margin-top:26px;
  display:grid;
  gap:0;
  border-block:1px solid rgba(17,19,21,.12)
}
.point{
  padding:17px 0;
  display:grid;
  grid-template-columns:28px 1fr;
  gap:12px;
  border-bottom:1px solid rgba(17,19,21,.1)
}
.point:last-child{border-bottom:0}
.point-num{
  width:27px;height:27px;display:grid;place-items:center;
  border:1px solid rgba(231,79,16,.5);
  border-radius:50%;color:var(--orange);font-size:.65rem;font-weight:800
}
.point p{margin-top:5px;font-size:.86rem}

/* 3 PRODUTO + BÔNUS */
.offer{
  position:relative;
  background:
    radial-gradient(circle at 82% 16%, rgba(231,79,16,.10), transparent 28%),
    var(--bg2);
  padding:58px 0;
}
.offer > .container{
  width:min(calc(100% - 28px), 1360px);
}
.offer-shell{
  width:100%;
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  padding:18px;
  border:1px solid rgba(240,106,50,.18);
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.022), rgba(255,255,255,.012)),
    rgba(255,255,255,.018);
  box-shadow:
    inset 0 0 0 1px rgba(240,106,50,.05),
    0 18px 48px rgba(0,0,0,.24);
}
.offer-content{
  order:2;
  display:grid;
  gap:14px;
  align-content:start;
}
.offer-visual{
  order:1;
}
.offer-kicker{
  color:var(--orange2);
  font-size:.62rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.offer-title{
  max-width:520px;
  font-size:clamp(2rem, 8vw, 3rem);
  line-height:.94;
  letter-spacing:-.055em;
  font-weight:800;
}
.offer-description{
  max-width:560px;
  color:rgba(246,246,242,.76);
  line-height:1.48;
}
.offer-price-box{
  max-width:560px;
  padding:18px 16px 16px;
  border:1px solid rgba(240,106,50,.26);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(231,79,16,.13), rgba(231,79,16,.045));
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    0 0 20px rgba(231,79,16,.08);
}
.offer-price-label{
  color:rgba(246,246,242,.54);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.offer-price-row{
  margin-top:8px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  gap:6px;
  flex-wrap:wrap;
}
.offer-price{
  color:#fff;
  font-size:clamp(4rem, 16vw, 5.8rem);
  line-height:.78;
  letter-spacing:-.085em;
  font-weight:800;
  text-shadow:
    0 0 12px rgba(240,106,50,.28),
    0 0 26px rgba(231,79,16,.16);
}
.offer-price small{
  font-size:.22em;
  letter-spacing:0;
  color:rgba(246,246,242,.66);
  vertical-align:.34em;
  margin-right:4px;
}
.price-cents{
  font-size:.42em;
  letter-spacing:-.03em;
  vertical-align:.22em;
  margin-left:2px;
}
.offer-main-cta-wrap{
  max-width:560px;
  display:grid;
  gap:7px;
}
.cta-product{
  width:100%;
  max-width:none;
  min-height:58px;
  border-color:#FF7A3D;
  background:linear-gradient(180deg, #FF7A3D 0%, #E74F10 100%);
  box-shadow:
    0 0 8px rgba(240,106,50,.98),
    0 0 22px rgba(240,106,50,.76),
    0 0 50px rgba(231,79,16,.42),
    inset 0 0 0 1px rgba(255,255,255,.10);
  font-size:.74rem;
  letter-spacing:.055em;
}
.cta-product:hover,
.cta-product:focus-visible{
  background:linear-gradient(180deg, #FF8A52 0%, #D94909 100%);
  box-shadow:
    0 0 10px rgba(240,106,50,1),
    0 0 28px rgba(240,106,50,.88),
    0 0 58px rgba(231,79,16,.52),
    inset 0 0 0 1px rgba(255,255,255,.12);
}
.offer-cta-note{
  color:rgba(246,246,242,.40);
  font-size:.62rem;
  line-height:1.4;
}
.offer-bonus{
  position:relative;
  overflow:hidden;
  max-width:560px;
  padding:16px 15px;
  border-radius:12px;
  background:var(--paper);
  color:var(--bg);
}
.offer-bonus::after{
  content:"+1000";
  position:absolute;
  right:-10px;
  bottom:-14px;
  color:rgba(231,79,16,.08);
  font-size:4.6rem;
  line-height:.8;
  letter-spacing:-.08em;
  font-weight:800;
  pointer-events:none;
}
.offer-bonus-kicker{
  position:relative;
  z-index:1;
  color:var(--orange);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.offer-bonus h3{
  position:relative;
  z-index:1;
  margin-top:8px;
  font-size:1.14rem;
  line-height:1.04;
  letter-spacing:-.035em;
}
.offer-bonus p{
  position:relative;
  z-index:1;
  margin-top:9px;
  color:rgba(17,19,21,.64);
  font-size:.84rem;
  line-height:1.48;
}
.product-visual-card{
  width:100%;
  max-width:600px;
  overflow:hidden;
  border:1px solid rgba(240,106,50,.24);
  border-radius:14px;
  background:
    radial-gradient(circle at 82% 14%, rgba(231,79,16,.12), transparent 30%),
    #120d0b;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.03),
    0 0 28px rgba(231,79,16,.10);
}
.product-image-box{
  width:100%;
  aspect-ratio:4 / 5;
  display:flex;
  align-items:center;
  justify-content:center;
}
.product-image-box img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
}

@media (max-width:759px){
  .offer{
    padding:42px 0;
  }
  .offer-shell{
    gap:18px;
    padding:14px;
  }
  .offer-content,
  .offer-visual{
    width:100%;
    max-width:560px;
    margin-inline:auto;
  }
}

@media (min-width:760px){
  .offer{
    min-height:100svh;
    display:flex;
    align-items:center;
    padding:42px 0;
  }
  .offer > .container{
    width:min(calc(100% - 48px), 1440px);
  }
  .offer-shell{
    min-height:min(86svh, 860px);
    grid-template-columns:minmax(0, .94fr) minmax(460px, .82fr);
    align-items:center;
    gap:40px;
    padding:30px;
  }
  .offer-content{
    order:1;
    gap:12px;
    justify-self:start;
    width:100%;
    max-width:580px;
  }
  .offer-visual{
    order:2;
    justify-self:end;
    width:100%;
    display:flex;
    justify-content:flex-end;
  }
  .offer-title{
    font-size:clamp(2.9rem, 4.6vw, 4.8rem);
    max-width:500px;
  }
  .offer-description{
    max-width:540px;
    font-size:1rem;
  }
  .offer-price-box,
  .offer-main-cta-wrap,
  .offer-bonus{
    max-width:540px;
  }
  .offer-price{
    font-size:clamp(4.6rem, 6vw, 6.4rem);
  }
  .offer-bonus h3{
    font-size:1.26rem;
  }
  .product-visual-card{
    max-width:560px;
  }
}


/* CSS SOLICITADO PARA O CARROSSEL DE FEEDBACKS */
.testimonials .elementor-image-carousel-wrapper,
.testimonials .swiper-container,
.testimonials .swiper-container-initialized,
.testimonials .swiper-container-horizontal{
    overflow: visible !important;
    -webkit-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
}

/* mantém o carrossel contínuo e evita scroll horizontal da página */
.testimonials-marquee{
    overflow: hidden !important;
}

.testimonials-track{
    -webkit-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
    animation: testimonialsLoop 26s linear infinite !important;
    will-change: transform;
    transform: translate3d(0,0,0);
}

/* 4 DEPOIMENTOS */
.testimonials{
  background:linear-gradient(180deg, #121413, #0f1110);
  padding:46px 0 54px
}
.testimonials-head{
  text-align:center;
  margin-bottom:22px
}
.testimonials-head h2{
  width:min(100%, 780px);
  margin-inline:auto
}
.testimonials-head p{
  width:min(100%, 640px);
  margin:12px auto 0;
  color:rgba(246,246,242,.56)
}
.testimonials-marquee{
  position:relative;
  overflow:hidden;
  width:100%;
  mask-image:linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
  -webkit-mask-image:linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
}
.testimonials-track{
  display:flex;
  -webkit-transition-timing-function:linear !important;
  transition-timing-function:linear !important;
  align-items:stretch;
  gap:14px;
  width:max-content;
  will-change:transform;
  transform:translate3d(0,0,0);
  animation:testimonialsLoop 24s linear infinite;
}
.testimonial-card{
  flex:0 0 auto;
  width:min(68vw, 280px);
  padding:8px;
  border:1px solid rgba(240,106,50,.18);
  border-radius:14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.012)),
    rgba(255,255,255,.015);
  box-shadow:
    inset 0 0 0 1px rgba(240,106,50,.04),
    0 10px 24px rgba(0,0,0,.18)
}
.testimonial-card img{
  width:100%;
  height:auto;
  display:block;
  border-radius:10px
}
@keyframes testimonialsLoop{
  from{ transform:translate3d(0,0,0) }
  to{ transform:translate3d(calc(-50% - 7px),0,0) }
}
@media (hover:hover){
  .testimonials-track:hover{
    animation-play-state:paused
  }
}
@media (min-width:760px){
  .testimonials{
    padding:76px 0 88px
  }
  .testimonials-head{
    margin-bottom:28px
  }
  .testimonial-card{
    width:min(24vw, 320px);
    padding:10px
  }
  .testimonials-track{
    gap:18px;
    animation-duration:28s
  }
}


/* 5 CTA FINAL */
.final{
  text-align:center;
  background:
    radial-gradient(circle at 88% 28%, rgba(231,79,16,.08), transparent 22%),
    linear-gradient(180deg, #121413, #0f1110);
  padding:64px 0 72px;
}
.final > .container{
  width:min(calc(100% - 28px), 920px);
}
.final-inner{
  width:100%;
  max-width:760px;
  margin-inline:auto;
  display:grid;
  justify-items:center;
  align-content:center;
  gap:14px;
}
.final h2{
  max-width:760px;
  margin:0 auto;
  font-size:clamp(2rem, 5vw, 4rem);
  line-height:.95;
  letter-spacing:-.055em;
  text-align:center;
  text-wrap:balance;
}
.final p{
  max-width:660px;
  margin:0 auto;
  color:rgba(246,246,242,.72);
  font-size:1rem;
  line-height:1.55;
  text-align:center;
  text-wrap:balance;
}
.final .cta{
  margin-top:4px;
  width:min(100%, 360px);
}
@media (max-width:759px){
  .final{
    padding:52px 0 60px;
  }
  .final > .container{
    width:min(calc(100% - 24px), 560px);
  }
  .final-inner{
    gap:12px;
  }
  .final h2{
    max-width:390px;
    font-size:clamp(2rem, 9vw, 3rem);
  }
  .final p{
    max-width:360px;
    font-size:.94rem;
    line-height:1.5;
  }
  .final .cta{
    width:min(100%, 320px);
  }
}
@media (min-width:760px){
  .final{
    padding:72px 0 82px;
  }
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal,.title-fade{opacity:1!important;transform:none!important;filter:none!important}
  .testimonials-track{animation:none!important}
  .hero-photo{animation:none!important;filter:brightness(1)!important}
}

/* =========================================================
   V21 — OTIMIZAÇÕES DE CONVERSÃO
   ========================================================= */

@font-face {
  font-family: "Degular";
  src: url("https://tassiorenam.com.br/wp-content/uploads/2025/02/Degular-Semibold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

:root {
  --shiny-cta-bg: #E74F10 !important;
  --shiny-cta-bg-subtle: #C9410C !important;
  --shiny-cta-fg: #F6F6F2 !important;
  --shiny-cta-highlight: #F06A32 !important;
  --shiny-cta-highlight-subtle: #F6F6F2 !important;
}

@property --gradient-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --gradient-angle-offset {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@property --gradient-percent {
  syntax: "<percentage>";
  initial-value: 5%;
  inherits: false;
}
@property --gradient-shine {
  syntax: "<color>";
  initial-value: #F6F6F2;
  inherits: false;
}

.elementor-button{
  --animation: gradient-angle linear infinite !important;
  --duration: 3s !important;
  --shadow-size: 2px !important;
  isolation: isolate !important;
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer !important;
  outline-offset: 4px !important;
  min-height: 56px !important;
  padding: 1.05rem 1.75rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: "Degular", "PP Neue Machina", sans-serif !important;
  font-size: 1.18rem !important;
  line-height: 1.05 !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  border: 1px solid transparent !important;
  border-radius: 360px !important;
  color: var(--shiny-cta-fg) !important;
  background:
    linear-gradient(var(--shiny-cta-bg), var(--shiny-cta-bg)) padding-box,
    conic-gradient(
      from calc(var(--gradient-angle) - var(--gradient-angle-offset)),
      transparent,
      var(--shiny-cta-highlight) var(--gradient-percent),
      var(--gradient-shine) calc(var(--gradient-percent) * 2),
      var(--shiny-cta-highlight) calc(var(--gradient-percent) * 3),
      transparent calc(var(--gradient-percent) * 4)
    ) border-box !important;
  box-shadow:
    inset 0 0 0 1px var(--shiny-cta-bg-subtle),
    0 0 18px rgba(231,79,16,.20) !important;
  transition: 800ms cubic-bezier(0.25, 1, 0.5, 1) !important;
  transition-property: --gradient-angle-offset, --gradient-percent, --gradient-shine, transform, box-shadow !important;
  width: auto;
}
.elementor-button::before,
.elementor-button::after,
.elementor-button span::before {
  content: "" !important;
  pointer-events: none !important;
  position: absolute !important;
  inset-inline-start: 50% !important;
  inset-block-start: 50% !important;
  translate: -50% -50% !important;
  z-index: -1 !important;
}
.elementor-button::before {
  --size: calc(100% - var(--shadow-size) * 3) !important;
  --position: 2px !important;
  --space: calc(var(--position) * 2) !important;
  width: var(--size) !important;
  height: var(--size) !important;
  background: radial-gradient(
      circle at var(--position) var(--position),
      #F6F6F2 calc(var(--position) / 4),
      transparent 0
    ) padding-box !important;
  background-size: var(--space) var(--space) !important;
  background-repeat: space !important;
  mask-image: conic-gradient(
    from calc(var(--gradient-angle) + 45deg),
    black,
    transparent 10% 90%,
    black
  ) !important;
  border-radius: inherit !important;
  opacity: .28 !important;
}
.elementor-button::after {
  --animation: shimmer linear infinite !important;
  width: 100% !important;
  aspect-ratio: 1 !important;
  background: linear-gradient(
    -50deg,
    transparent,
    var(--shiny-cta-highlight-subtle),
    transparent
  ) !important;
  mask-image: radial-gradient(circle at bottom, transparent 40%, black) !important;
  opacity: .32 !important;
}
.elementor-button span {
  z-index: 1 !important;
  position: relative !important;
}
.elementor-button span::before {
  width: 370px !important;
  height: 90px !important;
  box-shadow: inset 0 -1ex 2rem 4px rgba(246,246,242,.22) !important;
  opacity: 0 !important;
  transition: opacity 1500ms cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.elementor-button:hover,
.elementor-button:focus-visible {
  --gradient-percent: 20% !important;
  --gradient-angle-offset: 95deg !important;
  --gradient-shine: var(--shiny-cta-highlight-subtle) !important;
  transform: translateY(-2px) !important;
  box-shadow:
    inset 0 0 0 1px var(--shiny-cta-bg-subtle),
    0 0 10px rgba(240,106,50,.55),
    0 0 28px rgba(231,79,16,.32) !important;
}
.elementor-button:hover span::before { opacity: 1 !important; }

@keyframes gradient-angle { to { --gradient-angle: 360deg; } }
@keyframes shimmer { to { transform: rotate(360deg) !important; } }
@keyframes breathe { 50% { transform: scale(1.2) !important; } }

.elementor-button,
.elementor-button::before,
.elementor-button::after {
  animation: var(--animation) var(--duration),
    var(--animation) calc(var(--duration) / 0.4) reverse paused !important;
  animation-composition: add !important;
}
.elementor-button:hover,
.elementor-button:hover::before,
.elementor-button:hover::after {
  animation-play-state: running !important;
}

@media only screen and (max-width:600px) {
  .elementor-button {
    padding: 1rem 1.25rem !important;
    font-size: 1.05rem !important;
  }
  .elementor-button,
  .elementor-button::before,
  .elementor-button::after {
    animation-play-state: running !important;
  }
}
@media only screen and (min-width:600px) {
  .elementor-button { padding: 1.1rem 2rem !important; }
}

.offer-bar {
  height: 58px;
  padding-inline: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(90deg, #E74F10 0%, #F06A32 50%, #E74F10 100%);
  border-bottom: 1px solid rgba(246,246,242,.16);
  box-shadow: 0 8px 24px rgba(231,79,16,.28);
}
.offer-bar-highlight {
  color: #111315;
  font-size: .9rem;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-align: center;
}

.hero-eyebrow {
  margin:0 auto 12px;
  color:var(--orange2);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hero-lead { max-width:680px !important; }


@keyframes flashAleatorio {
  0%, 10%   { filter: brightness(1); }
  12%       { filter: brightness(1.22); }
  14%       { filter: brightness(1); }
  25%, 40%  { filter: brightness(1); }
  42%       { filter: brightness(1.14); }
  44%       { filter: brightness(1); }
  60%, 70%  { filter: brightness(1); }
  72%       { filter: brightness(1.28); }
  74%       { filter: brightness(1); }
  90%, 100% { filter: brightness(1); }
}

.section-kicker {
  color:var(--orange);
  font-size:.66rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.presentation-copy { max-width:900px; }
.presentation-punch {
  margin-top:26px;
  padding:18px 0 0;
  border-top:1px solid rgba(17,19,21,.12);
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  align-items:baseline;
  font-size:clamp(1.35rem,4vw,2.2rem);
  line-height:1;
  letter-spacing:-.04em;
}
.presentation-punch strong { color:var(--bg); }
.presentation-punch span { color:var(--orange); }

.deliverables {
  max-width:560px;
  display:grid;
  gap:8px;
}
.deliverable {
  display:grid;
  grid-template-columns:32px 1fr;
  gap:10px;
  align-items:start;
  padding:10px 0;
  border-bottom:1px solid rgba(246,246,242,.09);
}
.deliverable:last-child { border-bottom:0; }
.deliverable span {
  color:var(--orange2);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.06em;
}
.deliverable p {
  color:rgba(246,246,242,.78);
  font-size:.87rem;
  line-height:1.42;
}
.offer-value-note {
  margin-top:10px;
  color:rgba(246,246,242,.48);
  font-size:.7rem;
}
.offer-main-cta-wrap .elementor-button { width:100% !important; }

.testimonials { padding-top:58px !important; }
.testimonials-head h2 { max-width:850px; }

.trust-strip {
  position:relative;
  background:var(--paper);
  color:var(--bg);
  padding:26px 0;
}
.trust-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border-block:1px solid rgba(17,19,21,.12);
}
.trust-item {
  padding:15px 0;
  display:grid;
  gap:4px;
  border-bottom:1px solid rgba(17,19,21,.09);
}
.trust-item:last-child { border-bottom:0; }
.trust-item strong {
  font-size:.88rem;
  letter-spacing:-.02em;
}
.trust-item span {
  color:rgba(17,19,21,.62);
  font-size:.78rem;
  line-height:1.4;
}
@media (min-width:760px) {
  .trust-grid {
    grid-template-columns:repeat(4,1fr);
    border:1px solid rgba(17,19,21,.12);
  }
  .trust-item {
    padding:18px 20px;
    border-bottom:0;
    border-right:1px solid rgba(17,19,21,.09);
  }
  .trust-item:last-child { border-right:0; }
}

.final-price {
  color:rgba(246,246,242,.78);
  font-size:.9rem;
}
.final-price strong {
  color:#fff;
  font-size:1.2em;
}
.final-note {
  color:rgba(246,246,242,.42);
  font-size:.68rem;
}
.final .elementor-button { width:min(100%, 390px) !important; }

.mobile-sticky-cta { display:none; }
@media (max-width:759px) {
  body { padding-bottom:76px; }
  .mobile-sticky-cta {
    position:fixed;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:120;
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 8px 8px 14px;
    border:1px solid rgba(240,106,50,.22);
    border-radius:18px;
    background:rgba(12,13,13,.92);
    backdrop-filter:blur(16px);
    box-shadow:0 14px 40px rgba(0,0,0,.38), 0 0 24px rgba(231,79,16,.10);
    transform:translateY(120%);
    opacity:0;
    transition:transform .35s ease, opacity .35s ease;
  }
  .mobile-sticky-cta.visible {
    transform:translateY(0);
    opacity:1;
  }
  .mobile-sticky-copy {
    min-width:88px;
    display:grid;
    gap:1px;
  }
  .mobile-sticky-copy small {
    color:rgba(246,246,242,.48);
    font-size:.55rem;
    text-transform:uppercase;
    letter-spacing:.07em;
  }
  .mobile-sticky-copy strong {
    color:#fff;
    font-size:1.05rem;
  }
  .mobile-sticky-button {
    flex:1;
    min-height:48px !important;
    padding:.85rem 1rem !important;
    font-size:.98rem !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  .elementor-button,
  .elementor-button::before,
  .elementor-button::after {
    animation:none !important;
  }
}


.offer-title{
  max-width: 15ch;
}
@media (max-width: 759px){
  .offer-title{
    max-width: none !important;
    font-size: clamp(1.95rem, 8.2vw, 2.9rem) !important;
    line-height: .95 !important;
  }
}
@media (min-width: 760px){
  .offer-title{
    max-width: 12ch !important;
    font-size: clamp(2.3rem, 3.8vw, 4rem) !important;
    line-height: .92 !important;
  }
}
.product-image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
