/* Motion Fit — polimento final de UI/UX
   Paleta oficial: #98c01f, #ffffff, #131312
   Este arquivo deve ser carregado por último. */
:root{
  --mf-green:#98c01f;
  --mf-white:#ffffff;
  --mf-black:#131312;
  --mf-ink:#293132;
  --mf-muted:rgba(19,19,18,.66);
  --mf-line:rgba(19,19,18,.12);
  --mf-soft:rgba(152,192,31,.10);
  --mf-soft-strong:rgba(152,192,31,.18);
  --mf-shadow-sm:0 10px 30px rgba(19,19,18,.08);
  --mf-shadow-md:0 18px 52px rgba(19,19,18,.13);
  --mf-shadow-green:0 18px 42px rgba(152,192,31,.24);
}

html{scroll-padding-top:88px;}
body{background:#fff;color:var(--mf-black);-webkit-font-smoothing:antialiased;}
img{max-width:100%;}

/* Header premium */
.site-header{
  background:rgba(255,255,255,.92)!important;
  border-bottom:1px solid rgba(19,19,18,.10)!important;
  backdrop-filter:blur(18px) saturate(1.18)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.18)!important;
  box-shadow:0 8px 32px rgba(19,19,18,.06)!important;
}
.header-inner{min-height:72px!important;}
.brand-logo{width:clamp(180px,18vw,250px)!important;height:54px!important;}
.brand-logo img{object-fit:contain!important;object-position:left center!important;}
.main-nav{justify-content:center!important;}
.nav-link,.account-link,.region{
  font-weight:900!important;
  letter-spacing:-.01em;
}
.nav-link:hover,.nav-link[aria-expanded="true"],.nav-link.ui-active,.account-link:hover{
  background:var(--mf-soft-strong)!important;
  color:var(--mf-black)!important;
}
.region{
  box-shadow:0 6px 18px rgba(19,19,18,.04);
}
.flag-slot{background:var(--mf-green)!important;color:var(--mf-black)!important;}
.language-menu,.dropdown,.mobile-menu{
  border:1px solid rgba(19,19,18,.10)!important;
  box-shadow:var(--mf-shadow-md)!important;
}
.language-option:hover,.language-option[aria-current=true],.dropdown a:hover,.mobile-menu a:hover,.mobile-sub a:hover{
  background:var(--mf-soft-strong)!important;
  color:var(--mf-black)!important;
}

/* Botões com hierarquia clara */
.btn{min-height:42px!important;padding-inline:18px!important;font-weight:950!important;letter-spacing:-.01em;}
.btn-dark,.join-desktop,a.btn-dark,button.btn-dark{
  background:var(--mf-green)!important;
  color:var(--mf-black)!important;
  border:1px solid var(--mf-green)!important;
  box-shadow:var(--mf-shadow-green)!important;
}
.btn-dark:hover,.join-desktop:hover,a.btn-dark:hover,button.btn-dark:hover{
  background:var(--mf-black)!important;
  color:var(--mf-white)!important;
  border-color:var(--mf-black)!important;
  box-shadow:var(--mf-shadow-md)!important;
}
.btn-light,.btn-gray,a.btn-light,a.btn-gray,button.btn-light,button.btn-gray{
  background:#fff!important;
  color:var(--mf-black)!important;
  border:1px solid rgba(19,19,18,.14)!important;
  box-shadow:0 8px 20px rgba(19,19,18,.05)!important;
}
.btn-light:hover,.btn-gray:hover,a.btn-light:hover,a.btn-gray:hover{
  border-color:var(--mf-green)!important;
  box-shadow:0 0 0 5px rgba(152,192,31,.14)!important;
}
.btn-outline,a.btn-outline,button.btn-outline{
  border:2px solid var(--mf-black)!important;
  color:var(--mf-black)!important;
}

/* Hero e placeholders: remove cara de wireframe */
.hero{
  background:
    radial-gradient(circle at 14% 8%, rgba(152,192,31,.22), transparent 28%),
    linear-gradient(180deg,#ffffff 0%, #f9fbf3 72%, #ffffff 100%)!important;
  border-bottom:1px solid rgba(19,19,18,.08)!important;
}
.hero-wrap{gap:clamp(22px,4vw,48px)!important;}
.hero-card{
  border:1px solid rgba(19,19,18,.10)!important;
  box-shadow:var(--mf-shadow-md)!important;
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(14px);
}
.hero h1,.hero-card h1,.section-title,.membership-head h2,.find-bar h2,.split-copy h2,.app-copy h2{
  color:var(--mf-black)!important;
  letter-spacing:-.06em!important;
}
.hero p,.hero-card p,.section-text,.club-card p,.plan-card p,.split-copy p,.app-copy p{
  color:var(--mf-muted)!important;
}
.placeholder,.hero-media,.hero-image,.split-image,.site-carousel-image,.site-perk-image,.phone-placeholder,.unit-img{
  background:
    radial-gradient(circle at 78% 18%, rgba(152,192,31,.42), transparent 24%),
    linear-gradient(135deg,#131312 0%, #242a2a 54%, #98c01f 150%)!important;
  border:1px solid rgba(152,192,31,.38)!important;
  box-shadow:var(--mf-shadow-md)!important;
}
.placeholder-label{display:none!important;}
.hero-image.placeholder::before,.hero-media.placeholder::before,.split-image.placeholder::before,.site-carousel-image.placeholder::before{
  content:"";
  position:absolute;
  inset:clamp(34px,7vw,82px);
  background:url('../img/logo-motionfit-icon.svg') center/contain no-repeat;
  opacity:.34;
  filter:drop-shadow(0 16px 26px rgba(0,0,0,.28));
  z-index:1;
}
.placeholder::after{
  opacity:.12!important;
  background:
    linear-gradient(135deg, transparent 0 47%, rgba(255,255,255,.22) 48% 50%, transparent 51%),
    radial-gradient(circle at 20% 80%, rgba(152,192,31,.28), transparent 28%)!important;
}

/* Cards mais consistentes */
.club-card,.plan-card,.benefit-card,.quick-card,.unit-card,.site-perk-slide,.dynamic-panel,.map-panel,.list-panel{
  border:1px solid rgba(19,19,18,.10)!important;
  border-radius:26px!important;
  box-shadow:var(--mf-shadow-sm)!important;
  overflow:hidden;
}
.club-card:hover,.plan-card:hover,.benefit-card:hover,.quick-card:hover,.unit-card:hover,.site-perk-slide:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(152,192,31,.44)!important;
  box-shadow:var(--mf-shadow-md)!important;
}
.eyebrow,.plan-label,.pill,.dynamic-kicker{
  background:rgba(152,192,31,.16)!important;
  border:1px solid rgba(152,192,31,.34)!important;
  color:var(--mf-black)!important;
  font-weight:950!important;
}
.pill.success{background:var(--mf-green)!important;border-color:var(--mf-green)!important;}
.price strong,.price-block strong{color:var(--mf-black)!important;}
.plan-card.primary{
  background:
    radial-gradient(circle at 100% 0%, rgba(152,192,31,.22), transparent 30%),
    #131312!important;
  color:#fff!important;
  border-color:#131312!important;
}
.plan-card.primary h3,.plan-card.primary .price strong,.plan-card.primary .price-block strong{color:#fff!important;}
.plan-card.primary p,.plan-card.primary li,.plan-card.primary .price span,.plan-card.primary .price small,.plan-card.primary .price-block span,.plan-card.primary .price-block small{color:rgba(255,255,255,.76)!important;}
.feature-list{padding-left:0!important;list-style:none!important;}
.feature-list li{display:flex;gap:8px;align-items:flex-start;}

/* Home blocks */
.find-club,.membership,.welcome-benefits,.section,.quick-strip{background:#fff!important;}
.find-club,.membership,.split-section,.welcome-benefits,.app-section,.site-style-carousel,.site-perks-carousel,.get-started{padding-block:clamp(42px,7vw,82px)!important;}
.center-action{margin-top:24px!important;}

/* Footer */
.footer{
  background:
    radial-gradient(circle at 8% 0%, rgba(152,192,31,.20), transparent 28%),
    #131312!important;
  color:#fff!important;
}
.footer-top{border-bottom:1px solid rgba(255,255,255,.14)!important;}
.footer p,.footer a,.footer-bottom{color:rgba(255,255,255,.72)!important;}
.footer h4,.footer-bottom span{color:#fff!important;}
.footer a:hover{color:var(--mf-green)!important;}
.footer-brand-logo{width:clamp(170px,18vw,220px)!important;height:82px!important;}

/* Estados, acessibilidade e mobile */
.empty-state.show{display:block!important;}
:focus-visible{outline:3px solid var(--mf-green)!important;outline-offset:3px!important;}
@media(max-width:1060px){
  .header-inner{min-height:66px!important;grid-template-columns:auto auto!important;justify-content:space-between!important;}
  .brand-logo{width:190px!important;height:48px!important;}
}
@media(max-width:720px){
  .container{width:min(var(--max),calc(100% - 22px))!important;}
  .brand-logo{width:164px!important;height:42px!important;}
  .region span:not(.flag-slot){display:none!important;}
  .language-menu{right:-54px!important;min-width:220px!important;}
  .hero-card{padding:20px!important;border-radius:24px!important;}
  .hero-card h1,.hero h1{font-size:clamp(31px,10vw,44px)!important;}
  .hero-image,.hero-media,.split-image,.site-carousel-image{min-height:260px!important;}
  .club-buttons,.plan-actions,.hero-actions,.get-started-actions{display:grid!important;grid-template-columns:1fr!important;}
  .btn{width:100%!important;}
  .footer-brand-logo{width:180px!important;height:72px!important;}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;}
}

/* Correção: cards pretos sempre com texto claro */
.plan-card.primary,
.plan-card.primary h1,
.plan-card.primary h2,
.plan-card.primary h3,
.plan-card.primary h4,
.plan-card.primary h5,
.plan-card.primary h6,
.plan-card.primary p,
.plan-card.primary li,
.plan-card.primary small,
.plan-card.primary span:not(.eyebrow):not(.plan-label):not(.pill),
.plan-card.primary strong,
.plan-card.primary .price strong,
.plan-card.primary .price-block strong,
.plan-card.primary .feature-list li,
.plan-card.primary .price small,
.plan-card.primary .price span,
.plan-card.primary .price-block small,
.plan-card.primary .price-block span{
  color:#ffffff!important;
}
.plan-card.primary p,
.plan-card.primary li,
.plan-card.primary .price small,
.plan-card.primary .price span,
.plan-card.primary .price-block small,
.plan-card.primary .price-block span{
  color:rgba(255,255,255,.82)!important;
}
.plan-card.primary .eyebrow,
.plan-card.primary .plan-label,
.plan-card.primary .pill{
  background:#98c01f!important;
  border-color:#98c01f!important;
  color:#131312!important;
}
.plan-card.primary .btn,
.plan-card.primary a.btn{
  color:#131312!important;
}
.plan-card.primary .btn:hover,
.plan-card.primary a.btn:hover{
  color:#ffffff!important;
  background:#131312!important;
  border-color:#ffffff!important;
}

/* Cobertura extra para qualquer card escuro futuro */
.card-dark,
.dark-card,
.is-dark-card,
.black-card,
[class*="card"].primary{
  color:#ffffff!important;
}
.card-dark h1,.card-dark h2,.card-dark h3,.card-dark h4,.card-dark p,.card-dark li,.card-dark span,.card-dark strong,.card-dark small,
.dark-card h1,.dark-card h2,.dark-card h3,.dark-card h4,.dark-card p,.dark-card li,.dark-card span,.dark-card strong,.dark-card small,
.is-dark-card h1,.is-dark-card h2,.is-dark-card h3,.is-dark-card h4,.is-dark-card p,.is-dark-card li,.is-dark-card span,.is-dark-card strong,.is-dark-card small,
.black-card h1,.black-card h2,.black-card h3,.black-card h4,.black-card p,.black-card li,.black-card span,.black-card strong,.black-card small,
[class*="card"].primary h1,[class*="card"].primary h2,[class*="card"].primary h3,[class*="card"].primary h4,[class*="card"].primary p,[class*="card"].primary li,[class*="card"].primary strong,[class*="card"].primary small{
  color:#ffffff!important;
}

/* Correção específica: título da seção benefícios sobre fundo escuro */
[data-i18n="benefits.title"],
.welcome-benefits [data-i18n="benefits.title"],
.welcome-benefits .welcome-title h2,
.welcome-benefits h2{
  color:#ffffff!important;
}
.welcome-benefits [data-i18n="benefits.text"],
.welcome-benefits .welcome-title p,
.welcome-benefits p{
  color:rgba(255,255,255,.82)!important;
}

/* Imagens reais das unidades */
.club-card{padding:0!important;align-content:stretch!important;}
.club-image{
  display:block;
  width:100%;
  height:clamp(150px, 16vw, 210px);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  position:relative;
  overflow:hidden;
}
.club-image::after,
.unit-img-real::after,
.unit-hero-real::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(19,19,18,0) 35%, rgba(19,19,18,.22) 100%)!important;
  pointer-events:none;
}
.club-card .club-top,
.club-card .club-buttons{
  margin:16px;
}
.club-card .club-buttons{margin-top:0;}
.unit-img,
.unit-img-real{
  min-height:150px!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.hero-media.unit-hero-real{
  min-height:clamp(320px, 34vw, 520px)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.unit-card:hover .unit-img-real,
.club-card:hover .club-image{
  filter:saturate(1.08) contrast(1.03);
}
@media(max-width:720px){
  .club-image{height:210px;}
  .unit-img,.unit-img-real{min-height:185px!important;}
  .hero-media.unit-hero-real{min-height:280px!important;}
}

/* Correção explícita para fotos em unidades.php e unidade.php */
.unit-img-real,
.hero-media.unit-hero-real{
  padding:0!important;
  overflow:hidden!important;
  position:relative!important;
  background:#131312!important;
}
.unit-img-real img,
.hero-media.unit-hero-real img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:inherit!important;
  object-fit:cover!important;
  object-position:center!important;
}
.unit-img-real{height:170px!important;min-height:170px!important;margin:0!important;}
.hero-media.unit-hero-real{min-height:clamp(320px,34vw,520px)!important;margin:0!important;}
.unit-img-empty{
  min-height:170px!important;
  background:
    radial-gradient(circle at 78% 18%, rgba(152,192,31,.42), transparent 24%),
    linear-gradient(135deg,#131312 0%, #242a2a 54%, #98c01f 150%)!important;
}
@media(max-width:720px){
  .unit-img-real{height:205px!important;min-height:205px!important;}
  .hero-media.unit-hero-real{min-height:280px!important;}
}

/* Planos separados por Fitness e Acqua */
.plan-category-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 22px;
}
.plan-category-tabs a{
  min-height:36px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  text-decoration:none;
}
.plan-group{
  padding:clamp(18px,3vw,28px);
  border:1px solid rgba(19,19,18,.10);
  border-radius:28px;
  background:#fff;
  box-shadow:0 12px 34px rgba(19,19,18,.06);
}
.plan-group + .plan-group{margin-top:28px;}
.plan-group-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(19,19,18,.10);
}
.plan-group-header h3{
  margin:8px 0 8px;
  font-size:clamp(28px,4vw,44px);
  line-height:.98;
  letter-spacing:-.055em;
  color:#131312;
}
.plan-group-header p{
  margin:0;
  max-width:720px;
  color:rgba(19,19,18,.66);
  font-weight:700;
  line-height:1.45;
}
.plan-group-header > strong{
  flex:0 0 auto;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(152,192,31,.16);
  color:#131312;
  font-size:12px;
  font-weight:950;
}
.plan-group-acqua{
  background:
    radial-gradient(circle at 100% 0%, rgba(152,192,31,.16), transparent 30%),
    linear-gradient(180deg,#ffffff,#f8fbef);
}
@media(max-width:720px){
  .plan-group{padding:16px;border-radius:22px;}
  .plan-group-header{display:block;}
  .plan-group-header > strong{margin-top:12px;}
}

/* Páginas legais: privacidade, termos e acessibilidade */
.legal-hero .hero-media{
  min-height:clamp(240px,28vw,420px)!important;
}
.legal-page{
  background:#fff!important;
}
.legal-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:clamp(22px,4vw,48px);
  align-items:start;
}
.legal-summary{
  position:sticky;
  top:96px;
  padding:18px;
  border:1px solid rgba(19,19,18,.10);
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 12px 34px rgba(19,19,18,.06);
  display:grid;
  gap:8px;
}
.legal-summary strong{
  margin-bottom:6px;
  color:#131312;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.legal-summary a{
  min-height:38px;
  padding:0 12px;
  border-radius:14px;
  display:flex;
  align-items:center;
  color:rgba(19,19,18,.72);
  font-size:14px;
  font-weight:850;
}
.legal-summary a:hover{
  background:rgba(152,192,31,.14);
  color:#131312;
}
.legal-content{
  padding:clamp(20px,3vw,34px);
  border:1px solid rgba(19,19,18,.10);
  border-radius:28px;
  background:#fff;
  box-shadow:0 12px 34px rgba(19,19,18,.06);
}
.legal-updated{
  margin:0 0 20px!important;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(152,192,31,.12);
  color:#131312!important;
  font-weight:900!important;
}
.legal-content section + section{
  margin-top:28px;
  padding-top:26px;
  border-top:1px solid rgba(19,19,18,.10);
}
.legal-content h2{
  margin:0 0 10px;
  color:#131312;
  font-size:clamp(22px,3vw,30px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.legal-content p,
.legal-content li{
  color:rgba(19,19,18,.72);
  font-size:16px;
  line-height:1.7;
  font-weight:650;
}
.legal-content ul{
  margin:12px 0 0;
  padding-left:20px;
}
@media(max-width:900px){
  .legal-layout{grid-template-columns:1fr;}
  .legal-summary{position:static;}
}

/* Calculadora de CEP */
.cep-result{
  margin-top:10px;
  min-height:20px;
  font-size:13px;
  line-height:1.45;
  font-weight:850;
  color:rgba(19,19,18,.72);
}
.cep-result.is-success{color:#3f5708;}
.cep-result.is-error{color:#8a1f11;}
.cep-result.is-loading{color:var(--mf-black);}
.search-box.is-loading{opacity:.76;}
.search-box.is-loading .btn{cursor:wait;}
.club-distance,
.unit-distance{
  margin-top:8px!important;
  color:#3f5708!important;
  font-weight:950!important;
}
.club-card.is-nearest,
.unit-card.is-nearest{
  border-color:rgba(152,192,31,.95)!important;
  box-shadow:0 22px 60px rgba(152,192,31,.28)!important;
}
.club-card.is-nearest::after,
.unit-card.is-nearest::after{
  content:'Mais próxima';
  position:absolute;
  top:14px;
  right:14px;
  z-index:3;
  padding:7px 10px;
  border-radius:999px;
  background:#98c01f;
  color:#131312;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.club-card,
.unit-card{position:relative;}

/* Navbar alinhado ao menu oficial Motion Fit */
.motionfit-official-nav{gap:6px!important;}
.official-dropdown{min-width:292px!important;padding:10px!important;}
.plans-dropdown{min-width:320px!important;}
.work-dropdown{min-width:276px!important;}
.official-dropdown .dropdown-card,
.official-dropdown .dropdown-footer-link{
  min-height:auto!important;
  padding:12px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  border-radius:14px!important;
}
.official-dropdown .dropdown-card span:last-child{display:grid;gap:3px;min-width:0;}
.official-dropdown .dropdown-card strong{font-size:13px;font-weight:950;color:var(--mf-black);line-height:1.1;}
.official-dropdown .dropdown-card small{display:block;color:rgba(19,19,18,.58);font-size:11px;font-weight:800;line-height:1.25;}
.official-dropdown .dropdown-card em{
  margin-left:auto;
  font-style:normal;
  white-space:nowrap;
  color:var(--mf-green-strong);
  font-size:12px;
  font-weight:950;
}
.dropdown-icon{
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:var(--mf-green);
  color:var(--mf-black);
  font-size:11px;
  font-weight:950;
  letter-spacing:-.04em;
}
.official-dropdown .dropdown-footer-link{
  margin-top:6px;
  border-top:1px solid rgba(19,19,18,.08)!important;
  color:var(--mf-green-strong)!important;
  font-weight:950!important;
  justify-content:space-between!important;
}
.nav-search-link{font-weight:950!important;}
.join-desktop{text-transform:uppercase;letter-spacing:.04em;}
.mobile-menu .js-mobile-sub{
  width:100%;
  min-height:42px;
  padding:0 10px;
  border:0;
  border-radius:14px;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:14px;
  font-weight:950;
  color:var(--mf-black);
  text-align:left;
}
.mobile-menu .js-mobile-sub:hover{background:rgba(152,192,31,.12);}
.mobile-sub{display:none;padding:4px 0 8px 12px;}
.mobile-sub.open{display:grid;gap:4px;}
.mobile-sub a{min-height:36px!important;font-size:13px!important;color:rgba(19,19,18,.78)!important;}
.mobile-sub small{display:block;margin-left:8px;color:rgba(19,19,18,.55);font-size:11px;font-weight:800;}
@media (max-width:1180px){
  .motionfit-official-nav .nav-link{padding-inline:8px;font-size:12px;}
  .language-selector .region span:not(.flag-slot){display:none;}
}

/* Correção estrutural do navbar/dropdowns nas páginas PHP */
.site-header{overflow:visible!important;}
.header-inner{position:relative;}
.nav-item{position:relative!important;display:inline-flex;align-items:center;}
button.nav-link{
  border:0!important;
  background:transparent!important;
  color:inherit;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}
button.nav-link:hover,
button.nav-link[aria-expanded="true"]{
  background:var(--mf-soft-strong)!important;
  color:var(--mf-black)!important;
}
.chevron{
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  margin-top:-4px;
  flex:0 0 auto;
}
.dropdown{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  left:0!important;
  min-width:260px;
  padding:10px!important;
  border:1px solid rgba(19,19,18,.10)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 22px 60px rgba(19,19,18,.14)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px)!important;
  pointer-events:none!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
  z-index:999!important;
}
.nav-item:last-child .dropdown,
.work-dropdown{left:auto!important;right:0!important;}
.dropdown.open{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
.dropdown a,
.dropdown .dropdown-card,
.dropdown .dropdown-footer-link{
  width:100%!important;
  display:flex!important;
  text-decoration:none!important;
  color:var(--mf-black)!important;
}
@media (max-width:1180px){
  .main-nav{display:none!important;}
  .account-link,.join-desktop{display:none!important;}
  .hamburger{display:block!important;}
  .header-inner{grid-template-columns:auto auto!important;justify-content:space-between!important;}
}

/* Correção: remove faixa/espaço branco abaixo do footer da home */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:clip!important;
}
@supports not (overflow-x: clip){
  html,
  body{overflow-x:hidden!important;}
}
body[data-home-restaurada="true"]{
  min-height:100vh!important;
  display:flex!important;
  flex-direction:column!important;
  background:#131312!important;
}
body[data-home-restaurada="true"] main{
  flex:1 0 auto!important;
  background:#fff!important;
}
body[data-home-restaurada="true"] .footer{
  flex-shrink:0!important;
  margin:0!important;
  padding-bottom:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
body[data-home-restaurada="true"] .footer .container{
  padding-bottom:20px!important;
}
body[data-home-restaurada="true"] > script{
  display:none!important;
}

/* Busca real no navbar: abre campo sem levar para a seção de unidades */
.header-actions{position:relative!important;}
button.account-link{
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
button.account-link:hover,
button.account-link[aria-expanded="true"]{
  background:var(--mf-soft-strong)!important;
  color:var(--mf-black)!important;
}
.navbar-search-panel{
  position:absolute!important;
  top:calc(100% + 12px)!important;
  right:0!important;
  width:min(440px, calc(100vw - 28px));
  padding:14px!important;
  border:1px solid rgba(19,19,18,.10)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(19,19,18,.18)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px)!important;
  pointer-events:none!important;
  z-index:1200!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
}
.navbar-search-panel.open{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
.navbar-search-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:center;
}
.navbar-search-form input{
  width:100%;
  min-height:44px;
  padding:0 14px;
  border:1px solid rgba(19,19,18,.14);
  border-radius:999px;
  background:#f7f8f3;
  color:var(--mf-black);
  font-size:14px;
  font-weight:850;
  outline:none;
}
.navbar-search-form input:focus{
  border-color:var(--mf-green);
  box-shadow:0 0 0 4px rgba(152,192,31,.18);
  background:#fff;
}
.navbar-search-suggestions{
  margin-top:10px;
  display:grid;
  gap:6px;
  max-height:min(360px, calc(100vh - 170px));
  overflow:auto;
  padding-right:2px;
}
.navbar-search-suggestions a{
  display:grid!important;
  gap:3px!important;
  padding:11px 12px!important;
  border-radius:16px!important;
  color:var(--mf-black)!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:950!important;
  line-height:1.15!important;
}
.navbar-search-suggestions a:hover,
.navbar-search-suggestions a:focus-visible{
  background:rgba(152,192,31,.14)!important;
  color:var(--mf-black)!important;
}
.navbar-search-suggestions small{
  display:block;
  color:rgba(19,19,18,.58)!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.navbar-search-empty{
  margin:10px 2px 0;
  color:rgba(19,19,18,.66);
  font-size:12px;
  font-weight:850;
  line-height:1.4;
}
.mobile-menu .js-mobile-search-toggle{
  width:100%;
  min-height:42px;
  padding:0 10px;
  border:0;
  border-radius:14px;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:14px;
  font-weight:950;
  color:var(--mf-black);
  text-align:left;
}
.mobile-menu .js-mobile-search-toggle:hover{background:rgba(152,192,31,.12);}
@media(max-width:720px){
  .navbar-search-panel{
    position:fixed!important;
    top:78px!important;
    left:14px!important;
    right:14px!important;
    width:auto!important;
  }
  .navbar-search-form{grid-template-columns:1fr;}
  .navbar-search-form .btn{width:100%;}
}

/* Refinamento visual: remove faixas/destaques verdes da seção "Uma home com movimento" */
.dynamic-scroll-lab::before{
  display:none!important;
}
.dynamic-scroll-lab .dynamic-kicker{
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
}
.dynamic-scroll-lab .dynamic-stat{
  background:rgba(255,255,255,.065)!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}
.dynamic-scroll-lab .dynamic-stat small{
  color:rgba(255,255,255,.58)!important;
}
.dynamic-scroll-lab .dynamic-stat strong{
  color:#fff!important;
}

/* Refinamento: seção "Explore por blocos" sem card PHP e com Mapa legível */
.horizontal-experience .dynamic-panel,
.horizontal-experience .dynamic-panel:nth-child(even){
  background:#fff!important;
  color:#131312!important;
  border-color:rgba(19,19,18,.10)!important;
}
.horizontal-experience .dynamic-panel small,
.horizontal-experience .dynamic-panel:nth-child(even) small{
  color:rgba(19,19,18,.58)!important;
}
.horizontal-experience .dynamic-panel p,
.horizontal-experience .dynamic-panel:nth-child(even) p{
  color:rgba(19,19,18,.68)!important;
}
.horizontal-experience .dynamic-panel h3,
.horizontal-experience .dynamic-panel:nth-child(even) h3{
  color:#131312!important;
}
.horizontal-experience .dynamic-panel .btn-light{
  background:#131312!important;
  color:#fff!important;
  border-color:#131312!important;
}

/* Correção definitiva: remove qualquer faixa verde da seção "Uma home com movimento" */
.dynamic-scroll-lab .dynamic-stat strong,
.dynamic-scroll-lab .dynamic-stat strong[style]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  padding:0!important;
  border-radius:0!important;
}
.dynamic-scroll-lab .dynamic-kicker,
.dynamic-scroll-lab .dynamic-stat,
.dynamic-scroll-lab .dynamic-stat small,
.dynamic-scroll-lab .dynamic-stat p{
  box-shadow:none!important;
}
.dynamic-scroll-lab [style*="#98c01f"],
.dynamic-scroll-lab [style*="152,192,31"],
.dynamic-scroll-lab [style*="var(--brand)"]{
  background:transparent!important;
  border-color:rgba(255,255,255,.16)!important;
}

/* Carrossel da seção "Encontre a Unidade Mais Próxima" */
.club-carousel{
  position:relative;
  margin-top:22px;
}
.club-carousel-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.club-carousel-toolbar p{
  margin:0;
  color:rgba(19,19,18,.64);
  font-size:13px;
  line-height:1.35;
  font-weight:850;
}
.club-carousel-controls{
  display:flex;
  gap:8px;
  flex:0 0 auto;
}
.find-club .club-list{
  display:flex!important;
  grid-template-columns:none!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:2px;
  padding:2px 2px 18px!important;
  margin-bottom:0!important;
  scrollbar-width:none;
}
.find-club .club-list::-webkit-scrollbar{display:none;}
.find-club .club-card{
  flex:0 0 clamp(286px, 31vw, 374px)!important;
  min-height:100%!important;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.find-club .club-card[hidden],
.find-club .club-card[style*="display: none"]{
  display:none!important;
}
.club-carousel .circle-btn{
  width:44px!important;
  height:44px!important;
  border-radius:50%!important;
  border:1px solid rgba(19,19,18,.12)!important;
  background:#131312!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:22px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:none!important;
}
.club-carousel .circle-btn:hover:not(:disabled){
  transform:translateY(-1px);
  background:#98c01f!important;
  color:#131312!important;
}
.club-carousel .circle-btn:disabled{
  opacity:.35;
  cursor:not-allowed;
}
@media(max-width:720px){
  .club-carousel-toolbar{align-items:flex-start;}
  .club-carousel-toolbar p{max-width:210px;font-size:12px;}
  .find-club .club-card{flex-basis:calc(100vw - 44px)!important;}
}

/* Ícone de lupa ao lado do Buscar no navbar */
.nav-search-link{
  gap:8px!important;
}
.nav-search-icon{
  width:17px;
  height:17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:currentColor;
}
.nav-search-icon svg{
  width:17px;
  height:17px;
  display:block;
}
.nav-search-icon circle,
.nav-search-icon path{
  fill:none;
  stroke:currentColor;
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mobile-search-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.mobile-menu .js-mobile-search-toggle .nav-search-icon{
  width:16px;
  height:16px;
}
.mobile-menu .js-mobile-search-toggle .nav-search-icon svg{
  width:16px;
  height:16px;
}

/* Imagem real na seção Wellhub e Totalpass */
.partner-banner{
  margin:0!important;
  padding:0!important;
  min-height:clamp(250px, 33vw, 430px)!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:#131312!important;
  border:1px solid rgba(19,19,18,.10)!important;
  box-shadow:0 24px 70px rgba(19,19,18,.18)!important;
  position:relative!important;
}
.partner-banner::before,
.partner-banner::after{
  display:none!important;
  content:none!important;
}
.partner-banner img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:inherit!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media(max-width:720px){
  .partner-banner{min-height:230px!important;}
  .partner-banner img{object-position:center top!important;}
}

/* =========================================================
   REFINO FINAL GLOBAL — Motion Fit
   Ajustes visuais, responsividade e consistência de UI.
========================================================= */
:root{
  --mf-ease:cubic-bezier(.2,.8,.2,1);
}
body{
  letter-spacing:-.005em;
}
.site-header{
  box-shadow:0 10px 30px rgba(19,19,18,.055)!important;
}
.brand-logo img,
.footer-brand-logo img{
  image-rendering:auto;
}
.hero{
  background:linear-gradient(180deg,#ffffff 0%,#f9fbf4 100%)!important;
}
.hero-card{
  border:1px solid rgba(19,19,18,.08)!important;
  box-shadow:0 30px 90px rgba(19,19,18,.14)!important;
}
.hero-actions,
.plan-actions,
.club-buttons,
.get-started-actions{
  flex-wrap:wrap;
}
.btn{
  text-decoration:none!important;
  transition:transform .18s var(--mf-ease), box-shadow .18s var(--mf-ease), background .18s var(--mf-ease), color .18s var(--mf-ease)!important;
}
.btn:hover{
  box-shadow:0 12px 30px rgba(19,19,18,.13)!important;
}
.btn-outline:hover{
  background:#131312!important;
  color:#fff!important;
  border-color:#131312!important;
}
.find-bar,
.membership-head,
.welcome-title,
.infinite-units-head,
.horizontal-head{
  position:relative;
}
.find-bar h2,
.membership-head h2,
.welcome-title h2,
.horizontal-head h2,
.infinite-units-head h2{
  max-width:860px;
}
.search-box{
  box-shadow:0 14px 42px rgba(19,19,18,.08)!important;
}
.search-input{
  background:#fff!important;
}
.club-carousel{
  isolation:isolate;
}
.club-carousel::before,
.club-carousel::after{
  content:"";
  position:absolute;
  top:58px;
  bottom:18px;
  width:54px;
  z-index:2;
  pointer-events:none;
}
.club-carousel::before{
  left:-2px;
  background:linear-gradient(90deg,#fff,rgba(255,255,255,0));
}
.club-carousel::after{
  right:-2px;
  background:linear-gradient(270deg,#fff,rgba(255,255,255,0));
}
.club-card,
.plan-card,
.unit-card,
.dynamic-panel{
  transition:transform .22s var(--mf-ease), box-shadow .22s var(--mf-ease), border-color .22s var(--mf-ease), filter .22s var(--mf-ease)!important;
}
.club-card h3,
.plan-card h3,
.unit-card h3{
  letter-spacing:-.045em!important;
}
.club-card .btn,
.plan-card .btn{
  min-width:max-content;
}
.plan-card.primary{
  transform:none!important;
}
.plan-card.primary:hover{
  transform:translateY(-5px)!important;
}
.feature-stack .split-section{
  overflow:hidden;
}
.feature-stack .split-section:nth-child(even){
  background:#f8faf2!important;
}
.split-grid{
  min-height:clamp(390px, 42vw, 560px);
}
.partner-banner{
  display:grid!important;
  place-items:center!important;
  min-height:clamp(260px, 28vw, 390px)!important;
}
.partner-banner img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#131312!important;
}
.split-copy{
  max-width:620px;
}
.split-copy .eyebrow,
.membership-head .eyebrow,
.find-bar .eyebrow{
  width:max-content;
}
.dynamic-scroll-lab{
  background:linear-gradient(180deg,#131312 0%,#1b1f1d 100%)!important;
}
.dynamic-scroll-lab .dynamic-stat{
  backdrop-filter:none!important;
}
.horizontal-experience{
  background:linear-gradient(180deg,#f8faf2 0%,#ffffff 100%)!important;
}
.horizontal-track{
  padding-bottom:56px!important;
}
.dynamic-panel{
  min-height:330px!important;
}
.infinite-units{
  background:linear-gradient(180deg,#131312 0%,#0d0e0d 100%)!important;
}
.footer{
  background:radial-gradient(circle at 10% 0%,rgba(152,192,31,.12),transparent 30%),#131312!important;
}
.footer-top{
  gap:clamp(18px,3vw,34px)!important;
}
.navbar-search-panel{
  backdrop-filter:blur(16px);
}
.navbar-search-suggestions a{
  transition:background .16s var(--mf-ease), transform .16s var(--mf-ease)!important;
}
.navbar-search-suggestions a:hover{
  transform:translateX(2px);
}
@media(max-width:1060px){
  .split-grid,
  .split-grid.reverse,
  .site-carousel-layout,
  .app-grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
  }
  .split-grid.reverse .split-image,
  .split-grid.reverse .partner-banner{order:0!important;}
  .partner-banner{min-height:280px!important;}
}
@media(max-width:720px){
  .club-carousel::before,
  .club-carousel::after{display:none!important;}
  .find-bar{gap:16px!important;}
  .search-box{padding:6px!important;border-radius:22px!important;}
  .hero-card{padding:22px!important;}
  .dynamic-grid{grid-template-columns:1fr!important;}
  .footer-top{grid-template-columns:1fr!important;}
}

/* Correção/refino do carrossel "Encontre a Unidade Mais Próxima" */
.club-carousel::before,
.club-carousel::after{
  display:none!important;
  content:none!important;
}
.club-carousel{
  margin-top:20px!important;
}
.club-carousel-toolbar{
  padding:0 2px;
  margin-bottom:12px!important;
}
.club-carousel-toolbar p{
  color:rgba(19,19,18,.58)!important;
}
.find-club .club-list{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:clamp(292px, 31vw, 370px)!important;
  grid-template-columns:none!important;
  align-items:stretch!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scroll-padding-left:2px;
  padding:4px 2px 18px!important;
  cursor:grab;
  user-select:none;
  -webkit-overflow-scrolling:touch;
}
.find-club .club-list.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none;
}
.find-club .club-card{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  flex:unset!important;
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:430px!important;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.find-club .club-image{
  flex:0 0 auto!important;
  height:190px!important;
}
.find-club .club-top{
  flex:1 1 auto!important;
}
.find-club .club-buttons{
  margin-top:auto!important;
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.find-club .club-buttons .btn{
  flex:1 1 130px!important;
}
.club-carousel .circle-btn{
  z-index:3;
}
.club-carousel .circle-btn:disabled{
  opacity:.28!important;
}
@media(max-width:900px){
  .find-club .club-list{grid-auto-columns:min(86vw, 360px)!important;}
}
@media(max-width:720px){
  .club-carousel-toolbar{
    align-items:center!important;
  }
  .club-carousel-toolbar p{
    max-width:190px!important;
  }
  .find-club .club-list{grid-auto-columns:calc(100vw - 44px)!important;}
  .find-club .club-card{min-height:420px!important;}
}

/* Wellhub/Totalpass no formato do site oficial: imagem fora do card e texto abaixo */
.partner-section{
  background:#fff!important;
  border-bottom:1px solid rgba(19,19,18,.08)!important;
}
.partner-stack{
  display:grid!important;
  gap:clamp(22px,3vw,34px)!important;
  align-items:center!important;
  padding-block:clamp(42px,7vw,84px)!important;
}
.partner-banner-wide{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:#131312!important;
  box-shadow:0 24px 70px rgba(19,19,18,.18)!important;
  border:1px solid rgba(19,19,18,.10)!important;
}
.partner-banner-wide img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1216 / 508;
  object-fit:cover!important;
  object-position:center!important;
}
.partner-copy{
  max-width:860px!important;
  margin-inline:auto!important;
  text-align:center!important;
  display:grid!important;
  justify-items:center!important;
  gap:12px!important;
}
.partner-copy .eyebrow{
  background:rgba(152,192,31,.14)!important;
  border-color:rgba(152,192,31,.28)!important;
  color:#131312!important;
}
.partner-copy h2{
  margin:0!important;
  max-width:820px!important;
  color:#131312!important;
  font-size:clamp(32px,5vw,64px)!important;
  line-height:.95!important;
  letter-spacing:-.07em!important;
}
.partner-copy p{
  margin:0!important;
  max-width:760px!important;
  color:rgba(19,19,18,.68)!important;
  font-size:clamp(15px,1.6vw,18px)!important;
  line-height:1.55!important;
  font-weight:750!important;
}
.partner-copy .btn{
  margin-top:6px!important;
}
@media(max-width:720px){
  .partner-stack{padding-block:38px!important;gap:20px!important;}
  .partner-banner-wide{border-radius:20px!important;}
  .partner-copy{text-align:left!important;justify-items:start!important;}
  .partner-copy h2{font-size:clamp(30px,10vw,44px)!important;}
}

/* Remoção do card/fundo da seção Wellhub e Totalpass */
.partner-section,
.partner-stack,
.partner-copy{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.partner-banner-wide{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.partner-banner-wide img{
  border-radius:0!important;
  box-shadow:none!important;
}
.partner-copy{
  padding:0!important;
}

/* Refinamento visual dos benefícios dos planos */
.plan-card .feature-list{
  display:grid!important;
  gap:10px!important;
  margin:18px 0 0!important;
  padding:0!important;
  list-style:none!important;
}
.plan-card .feature-list li{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:46px!important;
  padding:9px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(152,192,31,.13),rgba(255,255,255,.92))!important;
  border:1px solid rgba(152,192,31,.24)!important;
  box-shadow:0 10px 24px rgba(19,19,18,.055)!important;
  color:rgba(19,19,18,.86)!important;
  font-size:13.5px!important;
  line-height:1.32!important;
  font-weight:850!important;
}
.plan-card .feature-list li span:last-child{
  min-width:0!important;
}
.plan-card .feature-icon{
  width:28px!important;
  height:28px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:var(--mf-green,#98c01f)!important;
  color:var(--mf-black,#131312)!important;
  font-size:14px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 8px 18px rgba(152,192,31,.32)!important;
}
.plan-card .feature-list li:hover{
  transform:translateX(3px)!important;
  border-color:rgba(152,192,31,.48)!important;
  box-shadow:0 14px 28px rgba(19,19,18,.09)!important;
}
.plan-card.primary .feature-list li{
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.055))!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:none!important;
  color:rgba(255,255,255,.9)!important;
}
.plan-card.primary .feature-list li:hover{
  background:linear-gradient(135deg,rgba(152,192,31,.22),rgba(255,255,255,.075))!important;
  border-color:rgba(152,192,31,.46)!important;
}
.plan-card.primary .feature-icon{
  background:var(--mf-green,#98c01f)!important;
  color:var(--mf-black,#131312)!important;
  box-shadow:0 8px 22px rgba(152,192,31,.38)!important;
}
.plan-card .feature-list + .plan-actions,
.plan-body .feature-list + .plan-actions{
  margin-top:18px!important;
}
@media (max-width:640px){
  .plan-card .feature-list{
    gap:8px!important;
    margin-top:14px!important;
  }
  .plan-card .feature-list li{
    min-height:42px!important;
    padding:8px 10px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
}

/* Home cinematográfica — entrada com scroll e preview que congela em imagem */
.cinematic-hero{
  position:relative!important;
  min-height:168vh!important;
  background:#131312!important;
  color:#fff!important;
  overflow:clip!important;
  isolation:isolate!important;
}
.cinematic-sticky{
  position:sticky!important;
  top:0!important;
  min-height:100vh!important;
  display:grid!important;
  align-items:center!important;
  padding:clamp(96px,12vw,150px) 0 clamp(72px,9vw,110px)!important;
}
.cinematic-bg,
.cinematic-bg-scene,
.cinematic-noise{
  position:absolute!important;
  inset:0!important;
}
.cinematic-bg{z-index:-2!important;background:#131312!important;}
.cinematic-bg-scene{
  background-size:cover!important;
  background-position:center!important;
  opacity:0!important;
  transform:scale(1.12)!important;
  filter:saturate(1.08) contrast(1.04)!important;
  transition:opacity .18s linear, transform .28s ease-out!important;
}
.cinematic-bg-scene:first-child{opacity:.6!important;}
.cinematic-bg::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at 75% 20%,rgba(152,192,31,.34),transparent 28%),
    linear-gradient(90deg,rgba(19,19,18,.94) 0%,rgba(19,19,18,.78) 38%,rgba(19,19,18,.45) 70%,rgba(19,19,18,.76) 100%)!important;
  z-index:2!important;
}
.cinematic-noise{
  z-index:3!important;
  opacity:.12!important;
  background-image:linear-gradient(115deg,rgba(255,255,255,.10) 0 1px,transparent 1px 14px)!important;
  mix-blend-mode:screen!important;
}
.cinematic-grid{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(340px,.8fr)!important;
  align-items:center!important;
  gap:clamp(34px,7vw,92px)!important;
}
.cinematic-copy{
  max-width:760px!important;
  transform:translateY(calc(var(--cine-progress,0) * -28px))!important;
  transition:transform .16s linear!important;
}
.cinematic-eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 14px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
  font-weight:950!important;
  box-shadow:0 18px 42px rgba(0,0,0,.20)!important;
}
.cinematic-eyebrow::before{
  content:""!important;
  width:9px!important;
  height:9px!important;
  border-radius:999px!important;
  background:#98c01f!important;
  box-shadow:0 0 0 7px rgba(152,192,31,.18)!important;
}
.cinematic-copy h1{
  max-width:860px!important;
  margin:22px 0 18px!important;
  color:#fff!important;
  font-size:clamp(46px,7.6vw,104px)!important;
  line-height:.88!important;
  letter-spacing:-.075em!important;
  font-weight:1000!important;
  text-wrap:balance!important;
}
.cinematic-copy p{
  max-width:680px!important;
  color:rgba(255,255,255,.78)!important;
  font-size:clamp(16px,1.45vw,20px)!important;
  line-height:1.55!important;
  font-weight:650!important;
}
.cinematic-actions{
  display:flex!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  margin-top:28px!important;
}
.cinematic-actions .btn{
  min-height:48px!important;
  padding-inline:20px!important;
}
.cinematic-outline,
.btn-outline-light.cinematic-outline{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  backdrop-filter:blur(10px)!important;
}
.cinematic-outline:hover{
  background:#fff!important;
  color:#131312!important;
}
.cinematic-stats{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  max-width:680px!important;
  margin-top:34px!important;
}
.cinematic-stats div{
  min-height:96px!important;
  padding:17px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.055))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.20)!important;
}
.cinematic-stats strong{
  display:block!important;
  color:#fff!important;
  font-size:clamp(25px,3vw,42px)!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:-.055em!important;
}
.cinematic-stats span{
  display:block!important;
  margin-top:7px!important;
  color:rgba(255,255,255,.68)!important;
  font-size:12px!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.cinematic-stage{
  position:relative!important;
  min-height:560px!important;
  perspective:1400px!important;
}
.record-dot{
  width:10px!important;
  height:10px!important;
  border-radius:999px!important;
  background:#98c01f!important;
  box-shadow:0 0 0 8px rgba(152,192,31,.15)!important;
  animation:mfRecordPulse 1.35s ease-in-out infinite!important;
}
.cinematic-hero.is-freeze .record-dot{
  animation:none!important;
}
.cinematic-scroll-cue{
  position:absolute!important;
  left:50%!important;
  bottom:24px!important;
  z-index:4!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:10px 14px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,255,255,.80)!important;
  backdrop-filter:blur(10px)!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.cinematic-scroll-cue i{
  width:22px!important;
  height:34px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:999px!important;
  position:relative!important;
}
.cinematic-scroll-cue i::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:7px!important;
  width:4px!important;
  height:8px!important;
  border-radius:99px!important;
  background:#98c01f!important;
  transform:translateX(-50%)!important;
  animation:mfScrollCue 1.25s ease-in-out infinite!important;
}
@keyframes mfRecordPulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 7px rgba(152,192,31,.15)}
  50%{transform:scale(.82);box-shadow:0 0 0 13px rgba(152,192,31,.04)}
}
@keyframes mfScrollCue{
  0%{transform:translate(-50%,0);opacity:0}
  30%{opacity:1}
  100%{transform:translate(-50%,11px);opacity:0}
}
@media (max-width:980px){
  .cinematic-hero{min-height:auto!important;}
  .cinematic-sticky{position:relative!important;padding:112px 0 70px!important;}
  .cinematic-grid{grid-template-columns:1fr!important;gap:32px!important;}
  .cinematic-stage{min-height:auto!important;}
  .cinematic-copy h1{font-size:clamp(42px,12vw,70px)!important;}
  .cinematic-scroll-cue{display:none!important;}
}
@media (max-width:640px){
  .cinematic-stats{grid-template-columns:1fr!important;}
  .cinematic-actions .btn{width:100%!important;justify-content:center!important;}
}
@media (prefers-reduced-motion:reduce){
  .cinematic-bg-scene,
  .cinematic-copy{
    transition:none!important;
    transform:none!important;
  }
  .record-dot,
  .cinematic-scroll-cue i::before{
    animation:none!important;
  }
}

/* Ajuste fino — hero cinematográfico mais compacto e premium */
.cinematic-hero{
  min-height:118vh!important;
}
.cinematic-sticky{
  min-height:92vh!important;
  padding:clamp(78px,8vw,110px) 0 clamp(42px,5vw,66px)!important;
}
.cinematic-grid{
  grid-template-columns:minmax(0,.98fr) minmax(300px,.64fr)!important;
  gap:clamp(26px,4.8vw,64px)!important;
}
.cinematic-copy{
  max-width:680px!important;
}
.cinematic-eyebrow{
  padding:8px 12px!important;
  font-size:11px!important;
  letter-spacing:.12em!important;
}
.cinematic-copy h1{
  max-width:720px!important;
  margin:18px 0 14px!important;
  font-size:clamp(38px,5.5vw,76px)!important;
  line-height:.94!important;
  letter-spacing:-.065em!important;
}
.cinematic-copy p{
  max-width:590px!important;
  font-size:clamp(15px,1.18vw,18px)!important;
  line-height:1.5!important;
}
.cinematic-actions{
  margin-top:22px!important;
}
.cinematic-actions .btn{
  min-height:44px!important;
  padding-inline:17px!important;
  font-size:13px!important;
}
.cinematic-stats{
  max-width:590px!important;
  gap:8px!important;
  margin-top:24px!important;
}
.cinematic-stats div{
  min-height:74px!important;
  padding:13px!important;
  border-radius:18px!important;
}
.cinematic-stats strong{
  font-size:clamp(22px,2.25vw,34px)!important;
}
.cinematic-stats span{
  margin-top:5px!important;
  font-size:10.5px!important;
}
.cinematic-stage{
  min-height:430px!important;
}
.cinematic-scroll-cue{
  bottom:12px!important;
  padding:8px 12px!important;
  font-size:10.5px!important;
  opacity:.9!important;
}
.cinematic-scroll-cue i{
  width:19px!important;
  height:29px!important;
}
@media (max-width:980px){
  .cinematic-hero{min-height:auto!important;}
  .cinematic-sticky{min-height:auto!important;padding:92px 0 48px!important;}
  .cinematic-grid{gap:26px!important;}
  .cinematic-stage{min-height:auto!important;}
}
@media (max-width:640px){
  .cinematic-copy h1{font-size:clamp(36px,10.5vw,54px)!important;}
  .cinematic-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .cinematic-stats div{min-height:68px!important;padding:10px!important;}
  .cinematic-stats span{font-size:9px!important;letter-spacing:.05em!important;}
}

/* Aplicativo Motion Fit — imagem real e botões de loja */
.app-section{
  background:linear-gradient(135deg,#f7f9f3 0%,#fff 48%,#eef5df 100%)!important;
  overflow:hidden!important;
}
.app-grid{
  grid-template-columns:minmax(280px,.84fr) minmax(0,1fr)!important;
  gap:clamp(28px,6vw,76px)!important;
}
.app-visual{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  /* Acompanha a altura do celular menor; antes eram 720px fixos, que
     deixavam a coluna vazia bem mais alta que o texto ao lado. */
  min-height:clamp(300px,30vw,420px)!important;
}
.app-visual::before{
  content:""!important;
  position:absolute!important;
  width:72%!important;
  height:72%!important;
  border-radius:999px!important;
  background:radial-gradient(circle,rgba(152,192,31,.30),rgba(152,192,31,0) 70%)!important;
  filter:blur(14px)!important;
  z-index:0!important;
}
.app-visual img{
  position:relative!important;
  z-index:1!important;
  /* Dimensionado pela altura do bloco de texto ao lado (~290px): a imagem
     é vertical (518x925), então a altura é que manda. Antes eram 378x648,
     mais que o dobro da altura do texto. */
  width:min(210px,60vw)!important;
  max-height:380px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 34px 70px rgba(19,19,18,.34))!important;
  transform:translateY(0)!important;
}
.store-buttons{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:24px!important;
}
.store-badge{
  min-width:176px!important;
  min-height:58px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:10px 14px!important;
  border-radius:18px!important;
  background:#131312!important;
  color:#fff!important;
  border:1px solid rgba(19,19,18,.12)!important;
  box-shadow:0 16px 34px rgba(19,19,18,.16)!important;
  transition:transform .18s var(--mf-ease), box-shadow .18s var(--mf-ease), background .18s var(--mf-ease)!important;
}
.store-badge:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 22px 44px rgba(19,19,18,.22)!important;
}
.store-badge small,
.store-badge strong{
  display:block!important;
  line-height:1.05!important;
}
.store-badge small{
  font-size:10px!important;
  color:rgba(255,255,255,.68)!important;
  font-weight:800!important;
  letter-spacing:.03em!important;
}
.store-badge strong{
  margin-top:3px!important;
  font-size:18px!important;
  color:#fff!important;
  letter-spacing:-.03em!important;
}
.store-icon{
  width:34px!important;
  height:34px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:12px!important;
  background:#98c01f!important;
  color:#131312!important;
  font-size:19px!important;
  font-weight:1000!important;
}
.store-apple .store-icon{
  font-size:22px!important;
}
@media(max-width:1060px){
  .app-grid{grid-template-columns:1fr!important;text-align:center!important;}
  .app-visual{min-height:auto!important;}
  .app-visual img{width:min(230px,62vw)!important;}
  .store-buttons{justify-content:center!important;}
}
@media(max-width:560px){
  .app-visual img{width:min(210px,58vw)!important;}
  .store-badge{width:100%!important;justify-content:center!important;}
}

/* Badges oficiais das lojas na seção Aplicativo */
.store-buttons-official{
  align-items:center!important;
}
.store-badge-img{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:54px!important;
  border-radius:13px!important;
  transition:transform .18s var(--mf-ease), filter .18s var(--mf-ease)!important;
}
.store-badge-img:hover{
  transform:translateY(-3px)!important;
  filter:drop-shadow(0 12px 22px rgba(19,19,18,.18))!important;
}
.store-badge-img img{
  display:block!important;
  height:54px!important;
  width:auto!important;
  max-width:190px!important;
}
@media(max-width:560px){
  .store-buttons-official{
    justify-content:center!important;
  }
  .store-badge-img,
  .store-badge-img img{
    height:48px!important;
  }
}

/* Refino final — home menor e animação mais suave */
.cinematic-hero{
  min-height:clamp(560px,78vh,720px)!important;
  overflow:hidden!important;
}
.cinematic-sticky{
  position:relative!important;
  min-height:auto!important;
  padding:clamp(74px,7vw,98px) 0 clamp(44px,5vw,64px)!important;
}
.cinematic-grid{
  grid-template-columns:minmax(0,1fr) minmax(270px,.52fr)!important;
  gap:clamp(24px,4vw,54px)!important;
}
.cinematic-copy{
  max-width:620px!important;
  transform:translateY(calc(var(--cine-progress,0) * -10px))!important;
}
.cinematic-copy h1{
  max-width:650px!important;
  margin:16px 0 12px!important;
  font-size:clamp(34px,4.55vw,62px)!important;
  line-height:.98!important;
  letter-spacing:-.058em!important;
}
.cinematic-copy p{
  max-width:540px!important;
  font-size:clamp(14px,1.02vw,17px)!important;
  line-height:1.48!important;
}
.cinematic-actions{
  margin-top:20px!important;
}
.cinematic-stats{
  max-width:540px!important;
  margin-top:20px!important;
}
.cinematic-stats div{
  min-height:66px!important;
  padding:11px 12px!important;
  border-radius:16px!important;
}
.cinematic-stats strong{
  font-size:clamp(20px,2vw,30px)!important;
}
.cinematic-stats span{
  font-size:9.5px!important;
  letter-spacing:.055em!important;
}
.cinematic-stage{
  min-height:360px!important;
}
.cinematic-scroll-cue{
  display:none!important;
}
.cinematic-bg::after{
  background:
    radial-gradient(circle at 72% 18%,rgba(152,192,31,.24),transparent 24%),
    linear-gradient(90deg,rgba(19,19,18,.95) 0%,rgba(19,19,18,.78) 42%,rgba(19,19,18,.50) 72%,rgba(19,19,18,.74) 100%)!important;
}
@media(max-width:980px){
  .cinematic-hero{min-height:auto!important;}
  .cinematic-sticky{padding:82px 0 42px!important;}
  .cinematic-grid{grid-template-columns:1fr!important;}
  .cinematic-stage{min-height:auto!important;}
}
@media(max-width:640px){
  .cinematic-copy h1{font-size:clamp(32px,9.4vw,48px)!important;}
  .cinematic-stats{grid-template-columns:1fr!important;}
  .cinematic-stats div{min-height:auto!important;}
}

/* Polimento proativo — UX, acessibilidade e microinterações */
body.is-scrolled .site-header{
  box-shadow:0 12px 32px rgba(19,19,18,.08)!important;
  border-bottom-color:rgba(19,19,18,.10)!important;
}
.back-to-top{
  position:fixed!important;
  right:clamp(14px,2.6vw,28px)!important;
  bottom:clamp(14px,2.6vw,28px)!important;
  z-index:95!important;
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:999px!important;
  background:#98c01f!important;
  color:#131312!important;
  font-size:22px!important;
  font-weight:1000!important;
  box-shadow:0 16px 34px rgba(19,19,18,.20)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(14px) scale(.92)!important;
  transition:opacity .18s var(--mf-ease), transform .18s var(--mf-ease), visibility .18s var(--mf-ease)!important;
}
.back-to-top.is-visible{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
}
.back-to-top:hover{
  transform:translateY(-3px) scale(1.03)!important;
  box-shadow:0 22px 44px rgba(19,19,18,.24)!important;
}
.back-to-top:focus-visible{
  outline:3px solid rgba(152,192,31,.36)!important;
  outline-offset:4px!important;
}
.mf-reveal{
  opacity:0!important;
  transform:translateY(18px)!important;
  transition:opacity .48s var(--mf-ease), transform .48s var(--mf-ease), box-shadow .22s var(--mf-ease), border-color .22s var(--mf-ease)!important;
}
.mf-reveal.is-visible{
  opacity:1!important;
  transform:translateY(0)!important;
}
@media (prefers-reduced-motion:reduce){
  .mf-reveal,
  .mf-reveal.is-visible,
  .back-to-top,
  .back-to-top.is-visible{
    transition:none!important;
    transform:none!important;
  }
}
@media(max-width:640px){
  .back-to-top{
    width:44px!important;
    height:44px!important;
    font-size:20px!important;
  }
}

/* Correções solicitadas — home, planos e footer */
.cinematic-bg-scene{
  transition:opacity .72s ease, transform 1.15s ease!important;
  will-change:opacity, transform!important;
}

/* Mantém apenas a seta de voltar ao topo do uiux.js e evita duplicidade */
.back-to-top,
.back-to-top.is-visible,
[data-back-to-top]{
  display:none!important;
}

/* Mais respiro entre os benefícios e os botões dos planos */
.plan-card .feature-list{
  margin-bottom:24px!important;
}
.plan-card .plan-actions{
  margin-top:26px!important;
  padding-top:4px!important;
}
.plan-card .feature-list + .plan-actions,
.plan-body .feature-list + .plan-actions{
  margin-top:26px!important;
}

/* Correção de contraste do seletor de idioma no footer */
.footer .footer-bottom,
.footer .footer-bottom span,
.footer .footer-bottom button,
.footer .footer-bottom .region,
.footer .footer-bottom .region span,
.footer .footer-bottom .language-selector,
.footer .footer-bottom .language-selector .js-current-locale-label{
  color:rgba(255,255,255,.86)!important;
}
.footer .footer-bottom .flag-slot{
  color:#131312!important;
  background:#98c01f!important;
}
.footer .footer-bottom .language-menu,
.footer .footer-bottom .language-menu a,
.footer .footer-bottom .language-option,
.footer .footer-bottom .language-option small{
  color:#131312!important;
}
.footer .footer-bottom .region{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.24)!important;
}
.footer .footer-bottom .chevron,
.footer .footer-bottom .chevron::before,
.footer .footer-bottom .chevron::after{
  border-color:rgba(255,255,255,.82)!important;
}

/* Correção da animação/scroller da home — versão estável */
.cinematic-hero{
  min-height:auto!important;
  overflow:hidden!important;
}
.cinematic-sticky{
  position:relative!important;
  top:auto!important;
  min-height:auto!important;
  padding:clamp(82px,8vw,108px) 0 clamp(44px,5vw,64px)!important;
}
.cinematic-grid{
  min-height:auto!important;
  align-items:center!important;
}
.cinematic-copy{
  transition:transform .36s ease, opacity .36s ease!important;
}
.cinematic-copy{
  transform:translateY(calc(var(--cine-scroll,0) * -6px))!important;
}
.cinematic-scroll-cue{
  display:none!important;
}
.cinematic-bg-scene{
  transition:opacity .78s ease, transform 1.1s ease!important;
  will-change:opacity, transform!important;
}
@media(max-width:980px){
  .cinematic-sticky{padding:78px 0 40px!important;}
}

/* Substitui o scroller/sticky experimental por uma jornada limpa */
.journey-flow{
  background:#fff!important;
  padding:clamp(48px,6vw,78px) 0!important;
  border-bottom:1px solid rgba(19,19,18,.08)!important;
}
.journey-head{
  max-width:760px!important;
  margin-bottom:24px!important;
}
.journey-head h2{
  margin:10px 0 10px!important;
  font-size:clamp(30px,4vw,54px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  color:#131312!important;
}
.journey-head p{
  color:rgba(19,19,18,.66)!important;
  font-size:clamp(15px,1.4vw,18px)!important;
  line-height:1.55!important;
  font-weight:750!important;
}
.journey-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.journey-card{
  min-height:220px!important;
  padding:24px!important;
  border-radius:28px!important;
  border:1px solid rgba(19,19,18,.10)!important;
  background:linear-gradient(180deg,#fff,rgba(152,192,31,.055))!important;
  box-shadow:0 14px 34px rgba(19,19,18,.06)!important;
}
.journey-card small{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:#98c01f!important;
  color:#131312!important;
  font-weight:1000!important;
}
.journey-card h3{
  margin:22px 0 10px!important;
  color:#131312!important;
  font-size:clamp(22px,2.4vw,30px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}
.journey-card p{
  margin:0!important;
  color:rgba(19,19,18,.66)!important;
  font-weight:760!important;
  line-height:1.5!important;
}
.dynamic-mouse-follower{
  display:none!important;
}
@media(max-width:860px){
  .journey-grid{grid-template-columns:1fr!important;}
  .journey-card{min-height:auto!important;}
}

/* Correção — Avaliações no Google com contraste correto */
.welcome-benefits{
  background:#ffffff!important;
  color:#131312!important;
}
.welcome-benefits .welcome-title h2,
.welcome-benefits [data-i18n="benefits.title"],
.welcome-benefits h2,
.welcome-benefits .benefit-card h3{
  color:#131312!important;
}
.welcome-benefits .welcome-title p,
.welcome-benefits p,
.welcome-benefits .benefit-card p{
  color:rgba(19,19,18,.72)!important;
}
.welcome-benefits .eyebrow,
.welcome-benefits [data-i18n="benefits.kicker"]{
  color:#5f7b0c!important;
  background:rgba(152,192,31,.14)!important;
  border-color:rgba(152,192,31,.28)!important;
}
.welcome-benefits .benefit-card{
  background:#ffffff!important;
  color:#131312!important;
}
.welcome-benefits .benefit-card a{
  color:#5f7b0c!important;
}


/* Símbolo do Google na seção de avaliações */
.welcome-benefits .welcome-title{
  position:relative!important;
}
.welcome-benefits .google-brand-mark{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:56px!important;
  height:56px!important;
  margin:0 0 16px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid rgba(19,19,18,.08)!important;
  box-shadow:0 14px 34px rgba(19,19,18,.08)!important;
}
.welcome-benefits .google-brand-mark img{
  width:28px!important;
  height:28px!important;
  display:block!important;
}
.welcome-benefits .google-icon{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 0 16px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(19,19,18,.08)!important;
  box-shadow:0 10px 24px rgba(19,19,18,.06)!important;
}
.welcome-benefits .google-icon img{
  width:22px!important;
  height:22px!important;
  display:block!important;
}

/* Google Reviews API nos cards de avaliação */
.welcome-benefits .google-review-card{
  min-height:260px!important;
}
.welcome-benefits .google-rating-line{
  margin:8px 0 0!important;
  color:rgba(19,19,18,.72)!important;
  font-weight:800!important;
}
.welcome-benefits .google-rating-line strong{
  color:#131312!important;
  font-weight:1000!important;
}
.welcome-benefits .google-review-text{
  margin-top:10px!important;
  color:rgba(19,19,18,.68)!important;
  line-height:1.48!important;
}
.welcome-benefits .google-api-label{
  display:inline-flex!important;
  width:max-content!important;
  margin-top:12px!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:rgba(152,192,31,.14)!important;
  color:#5f7b0c!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}

/* Ajuste — layout das avaliações Google sem sobreposição */
.welcome-benefits .welcome-layout{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(16px,2vw,24px)!important;
  align-items:stretch!important;
}
.welcome-benefits .welcome-title{
  grid-column:1 / -1!important;
  min-height:220px!important;
  background:#131312!important;
  color:#ffffff!important;
  z-index:2!important;
  overflow:hidden!important;
  box-shadow:0 22px 58px rgba(19,19,18,.18)!important;
}
.welcome-benefits .google-review-card{
  position:relative!important;
  z-index:1!important;
  margin:0!important;
  transform:none!important;
}
.welcome-benefits .google-review-card:hover{
  transform:translateY(-4px)!important;
}
.welcome-benefits .welcome-title h2,
.welcome-benefits .welcome-title [data-i18n="benefits.title"]{
  color:#ffffff!important;
  background:none!important;
  background-clip:initial!important;
  -webkit-text-fill-color:#ffffff!important;
  text-shadow:none!important;
}
.welcome-benefits .welcome-title .eyebrow,
.welcome-benefits .welcome-title [data-i18n="benefits.kicker"]{
  background:#ffffff!important;
  color:#4285F4!important;
  border-color:rgba(255,255,255,.16)!important;
}
.welcome-benefits .welcome-title .google-brand-mark{
  background:#ffffff!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.20)!important;
}
@media(max-width:980px){
  .welcome-benefits .welcome-layout{
    grid-template-columns:1fr 1fr!important;
  }
  .welcome-benefits .welcome-title{
    grid-column:1 / -1!important;
  }
}
@media(max-width:720px){
  .welcome-benefits .welcome-layout{
    grid-template-columns:1fr!important;
  }
}

/* Resultado de CEP — cards das unidades mais próximas */
.club-card.is-nearest-result,
.unit-card.is-nearest-result{
  position:relative!important;
  border-color:rgba(152,192,31,.62)!important;
  box-shadow:0 20px 48px rgba(19,19,18,.12), 0 0 0 1px rgba(152,192,31,.20)!important;
}
.club-card.is-nearest,
.unit-card.is-nearest{
  border-color:#98c01f!important;
  box-shadow:0 26px 64px rgba(152,192,31,.26)!important;
}
.nearest-rank-badge{
  position:absolute!important;
  z-index:5!important;
  top:12px!important;
  left:12px!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:#98c01f!important;
  color:#131312!important;
  font-size:11px!important;
  font-weight:1000!important;
  letter-spacing:.01em!important;
  box-shadow:0 12px 26px rgba(19,19,18,.18)!important;
}
.club-distance,
.unit-distance,
[data-distance-output]{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:10px!important;
  padding:8px 10px!important;
  border-radius:999px!important;
  background:rgba(152,192,31,.14)!important;
  color:#445a06!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.1!important;
}
[data-distance-output][hidden]{display:none!important;}
@media(max-width:720px){
  .nearest-rank-badge{
    top:10px!important;
    left:10px!important;
    font-size:10px!important;
  }
}

/* Logo em SVG */
.brand-logo img,
.footer-brand-logo img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
}
.site-header .brand-logo img{
  object-position:left center!important;
}
.footer-brand-logo img{
  object-position:left center!important;
}

/* Home com imagens das unidades em rotação */
.cinematic-bg-scene{
  opacity:0!important;
  background-size:cover!important;
  background-position:center!important;
  transition:opacity .9s ease, transform 4.8s ease!important;
}
.cinematic-bg-scene.is-active{
  opacity:.58!important;
  transform:scale(1.065)!important;
}
.site-carousel-image.has-photo{
  background-size:cover!important;
  background-position:center!important;
  border:0!important;
  box-shadow:0 22px 54px rgba(19,19,18,.16)!important;
}
.site-carousel-image.has-photo::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.26))!important;
  z-index:0!important;
}
.site-carousel-image.has-photo .placeholder-label{
  position:absolute!important;
  left:20px!important;
  bottom:18px!important;
  z-index:1!important;
  color:#fff!important;
  background:rgba(19,19,18,.78)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:999px!important;
  padding:8px 12px!important;
  font-weight:900!important;
}


/* Banner de promoção controlado pelo admin */
.promo-banner-section{
  background:#ffffff!important;
  padding:clamp(22px,4vw,46px) 0!important;
}
.promo-banner-card{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)!important;
  gap:clamp(18px,3vw,36px)!important;
  align-items:center!important;
  min-height:clamp(240px,32vw,360px)!important;
  padding:clamp(24px,4vw,46px)!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 15% 0%, rgba(152,192,31,.28), transparent 34%),
    linear-gradient(135deg,#131312 0%, #1d2117 58%, #98c01f 165%)!important;
  color:#ffffff!important;
  box-shadow:0 28px 80px rgba(19,19,18,.16)!important;
}
.promo-banner-card::before{
  content:""!important;
  position:absolute!important;
  inset:auto -80px -120px auto!important;
  width:260px!important;
  height:260px!important;
  border-radius:999px!important;
  background:rgba(152,192,31,.22)!important;
  filter:blur(4px)!important;
}
.promo-banner-copy{
  position:relative!important;
  z-index:2!important;
  max-width:720px!important;
}
.promo-banner-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin:0 0 14px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:rgba(152,192,31,.16)!important;
  border:1px solid rgba(152,192,31,.32)!important;
  color:#bdf04c!important;
  font-size:12px!important;
  font-weight:1000!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.promo-banner-copy h2{
  margin:0!important;
  color:#ffffff!important;
  font-size:clamp(30px,5vw,58px)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
  font-weight:1000!important;
}
.promo-banner-copy p{
  margin:16px 0 22px!important;
  color:rgba(255,255,255,.78)!important;
  max-width:620px!important;
  font-size:clamp(15px,1.45vw,18px)!important;
  line-height:1.55!important;
  font-weight:700!important;
}
.promo-banner-copy .btn{
  border-color:#ffffff!important;
}
.promo-banner-media{
  position:relative!important;
  z-index:2!important;
  min-height:220px!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.08)!important;
  box-shadow:0 20px 60px rgba(0,0,0,.24)!important;
}
.promo-banner-media img{
  width:100%!important;
  height:100%!important;
  min-height:220px!important;
  object-fit:cover!important;
  display:block!important;
  transform:scale(1.02)!important;
}
@media(max-width:860px){
  .promo-banner-card{
    grid-template-columns:1fr!important;
    border-radius:26px!important;
    padding:24px!important;
  }
  .promo-banner-media{
    min-height:190px!important;
  }
  .promo-banner-media img{
    min-height:190px!important;
  }
}

/* ---------- Preço promocional (página de Planos) ----------
   Valor cheio riscado ao lado do promocional, para a diferença ficar clara. */
.price--promo,
.price-block--promo{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;}
.price--promo .price-old,
.price-block--promo .price-old{
  color:rgba(19,19,18,.55)!important;
  font-weight:700;
  font-size:clamp(15px,2.2vw,18px);
  text-decoration:line-through;
  text-decoration-thickness:2px;
}
.price--promo .price-off,
.price-block--promo .price-off{
  display:inline-block;
  background:var(--mf-green);
  color:var(--mf-black);
  border-radius:999px;
  padding:2px 10px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  white-space:nowrap;
}
.plan-card.primary .price--promo .price-old,
.plan-card.primary .price-block--promo .price-old{color:rgba(255,255,255,.6)!important;}
@media (max-width:480px){
  .price--promo,
  .price-block--promo{gap:6px;}
  .price--promo .price-old,
  .price-block--promo .price-old{font-size:14px;}
}
