/*
  Motion Fit — refinamento visual
  Paleta solicitada: #98c01f, #ffffff, #131312
  Este arquivo é carregado por último para padronizar o projeto inteiro.
*/
:root{
  --brand:#98c01f;
  --brand-hover:#86aa1d;
  --brand-soft:rgba(152,192,31,.14);
  --brand-line:rgba(152,192,31,.38);
  --white:#ffffff;
  --black:#131312;
  --bg:#ffffff;
  --text:#131312;
  --dark:#131312;
  --muted:rgba(19,19,18,.68);
  --line:rgba(19,19,18,.14);
  --soft:rgba(152,192,31,.08);
  --soft2:rgba(152,192,31,.14);
  --shadow:0 18px 48px rgba(19,19,18,.12);
  --uiux-focus:#98c01f;
  --uiux-overlay:rgba(255,255,255,.92);
  --uiux-success:#98c01f;
  --uiux-info:#131312;
  --uiux-soft:rgba(152,192,31,.10);
  --uiux-line:rgba(19,19,18,.14);
  --uiux-shadow:0 18px 48px rgba(19,19,18,.12);
}

html{accent-color:var(--brand)}
body{
  background:var(--white);
  color:var(--black);
}
::selection{
  background:var(--brand);
  color:var(--black);
}

/* Estrutura e navegação */
.site-header{
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--line)!important;
  box-shadow:0 10px 30px rgba(19,19,18,.04);
}
/* .app-download-slot saiu daqui: deixou de ser placeholder e agora contém os
   selos das lojas — a caixa preta com borda verde ficaria em volta deles. */
.logo-slot,
.footer-logo-slot{
  background:var(--black)!important;
  border:1px solid var(--brand)!important;
}
.logo-slot::before,
.logo-slot::after{
  background:var(--brand)!important;
}
.nav-link,
.account-link,
.mobile-menu a,
.mobile-sub a{
  color:var(--black)!important;
}
.nav-link:hover,
.nav-link.ui-active,
.uiux-active-link,
.language-option:hover,
.language-option[aria-current=true],
.mobile-menu a:hover,
.mobile-sub a:hover{
  background:var(--brand)!important;
  color:var(--black)!important;
}
.dropdown,
.language-menu,
.mobile-menu{
  border-color:var(--line)!important;
  box-shadow:var(--shadow)!important;
}
.hamburger{
  border-color:var(--line)!important;
}
.hamburger span,
.hamburger::before,
.hamburger::after{
  background:var(--black)!important;
}

/* Botões */
.btn{
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, border-color .18s ease!important;
}
.btn:hover{transform:translateY(-2px)}
.btn-dark,
a.btn-dark,
button.btn-dark,
.join-desktop{
  background:var(--brand)!important;
  color:var(--black)!important;
  border:1px solid var(--brand)!important;
  box-shadow:0 10px 24px rgba(152,192,31,.26);
}
.btn-dark:hover,
a.btn-dark:hover,
button.btn-dark:hover,
.join-desktop:hover{
  background:var(--black)!important;
  color:var(--white)!important;
  border-color:var(--black)!important;
  box-shadow:0 14px 28px rgba(19,19,18,.22);
}
.btn-light,
a.btn-light,
button.btn-light,
.btn-gray,
a.btn-gray,
button.btn-gray{
  background:var(--white)!important;
  color:var(--black)!important;
  border:1px solid var(--line)!important;
}
.btn-light:hover,
a.btn-light:hover,
button.btn-light:hover,
.btn-gray:hover,
a.btn-gray:hover,
button.btn-gray:hover{
  border-color:var(--brand)!important;
  box-shadow:0 0 0 4px var(--brand-soft);
}
.btn-outline,
a.btn-outline,
button.btn-outline{
  background:transparent!important;
  color:var(--black)!important;
  border:2px solid var(--black)!important;
}
.btn-outline:hover,
a.btn-outline:hover,
button.btn-outline:hover{
  background:var(--black)!important;
  color:var(--white)!important;
}

/* Seções claras */
.hero,
.find-club,
.membership,
.welcome-benefits,
.quick-strip,
.section,
.section.alt,
.legal-note{
  background:var(--white)!important;
}
.hero{
  background:
    radial-gradient(circle at 15% 0%, rgba(152,192,31,.16), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, rgba(152,192,31,.06) 100%)!important;
}
.section,
.quick-strip,
.legal-note{
  border-color:var(--line)!important;
}

/* Tipografia e destaques */
.hero h1,
.section-title,
.membership-head h2,
.find-bar h2,
.welcome-title h2,
.split-copy h2,
.app-copy h2,
.perks-head h2,
.site-carousel-copy h2,
.horizontal-head h2,
.club-card h3,
.plan-card h3,
.benefit-card h3,
.site-perk-body h3{
  color:var(--black)!important;
}
.hero p,
.section-text,
.club-card p,
.plan-card p,
.benefit-card p,
.site-perk-body p,
.split-copy p,
.app-copy p,
.footer p{
  color:var(--muted)!important;
}
.eyebrow,
.plan-label,
.pill,
.uiux-pill{
  background:var(--brand-soft)!important;
  color:var(--black)!important;
  border:1px solid var(--brand-line)!important;
}
.pill.success,
.uiux-pill.success{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
.uiux-pill.success::before{background:var(--black)!important}

/* Cards */
.club-card,
.plan-card,
.benefit-card,
.site-perk-slide,
.quick-card,
.unit-card,
.map-panel,
.list-panel,
.dynamic-panel,
.scroll-card,
.uiux-loader-card,
.uiux-toast,
.uiux-link-preview{
  background:var(--white)!important;
  border-color:var(--line)!important;
  box-shadow:0 12px 34px rgba(19,19,18,.07)!important;
}
.club-card:hover,
.plan-card:hover,
.benefit-card:hover,
.site-perk-slide:hover,
.quick-card:hover,
.unit-card:hover{
  transform:translateY(-4px);
  border-color:var(--brand-line)!important;
  box-shadow:0 18px 44px rgba(19,19,18,.12)!important;
}
.unit-card,
.plan-card,
.club-card,
.benefit-card,
.site-perk-slide,
.quick-card{
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

/* Imagens placeholder com identidade Motion */
.hero-media,
.placeholder,
.unit-img,
.site-carousel-image,
.split-image,
.site-perk-image,
.phone-placeholder{
  background:
    linear-gradient(135deg, rgba(152,192,31,.34), rgba(255,255,255,.92) 48%, rgba(19,19,18,.10)),
    var(--white)!important;
  border:1px solid var(--brand-line)!important;
}
.placeholder::after{
  opacity:.45;
}
.placeholder-label{
  color:var(--black)!important;
}
.icon-placeholder{
  background:var(--brand)!important;
  border-color:var(--brand)!important;
}

/* Planos */
.plan-card.primary{
  background:var(--black)!important;
  color:var(--white)!important;
  border-color:var(--black)!important;
}
.plan-card.primary h3,
.plan-card.primary .price strong,
.plan-card.primary .price-block strong{
  color:var(--white)!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,.78)!important;
}
.plan-card.primary .eyebrow,
.plan-card.primary .plan-label{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
.plan-card.primary .btn-light,
.plan-card.primary .btn-gray{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
.price strong,
.price-block strong{
  color:var(--black)!important;
}
.feature-list li::marker{color:var(--brand)}

/* Formulários, filtros e mapa */
.search-input,
.search-box input,
.region,
.filter-btn{
  background:var(--white)!important;
  color:var(--black)!important;
  border-color:var(--line)!important;
}
.search-input:focus,
.search-box input:focus{
  border-color:var(--brand)!important;
  box-shadow:0 0 0 4px var(--brand-soft)!important;
}
.filter-btn.active{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
#map{
  border-color:var(--brand-line)!important;
}

/* Seções escuras */
.dynamic-scroll-lab,
.get-started,
.infinite-units,
.footer{
  background:var(--black)!important;
  color:var(--white)!important;
}
.dynamic-scroll-lab .dynamic-title,
.dynamic-scroll-lab h2,
.get-started h2,
.infinite-units h2,
.footer h4,
.footer-bottom span{
  color:var(--white)!important;
}
.dynamic-scroll-lab p,
.infinite-units p,
.footer p,
.footer a,
.footer-bottom{
  color:rgba(255,255,255,.76)!important;
}
.footer a:hover{
  color:var(--brand)!important;
}
.dynamic-kicker,
.unit-chip::before{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
.dynamic-stat{
  border-color:rgba(255,255,255,.12)!important;
}
.dynamic-stat strong,
.unit-chip,
.circle-btn,
.horizontal-btn,
.uiux-back-top{
  background:var(--brand)!important;
  color:var(--black)!important;
  border-color:var(--brand)!important;
}
.uiux-back-top:hover,
.circle-btn:hover,
.horizontal-btn:hover{
  background:var(--white)!important;
  color:var(--black)!important;
}
.uiux-progress{
  background:var(--brand)!important;
}
.uiux-spinner{
  border-color:rgba(19,19,18,.14)!important;
  border-top-color:var(--brand)!important;
}
.uiux-toast{border-left-color:var(--brand)!important}

/* Acessibilidade */
:focus-visible{
  outline:3px solid var(--brand)!important;
  outline-offset:3px!important;
}
@media (prefers-reduced-motion: reduce){
  .btn,
  .club-card,
  .plan-card,
  .benefit-card,
  .site-perk-slide,
  .quick-card,
  .unit-card{
    transition:none!important;
  }
}


/* Logo oficial Motion Fit */
.brand-logo{
  width:clamp(142px, 15vw, 188px);
  height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;
  line-height:0;
}
.brand-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:left center;
}
.footer-brand-logo{
  width:190px;
  max-width:100%;
  height:74px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  margin:0 0 14px;
  line-height:0;
}
.footer-brand-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:left center;
}
.site-header .brand-logo:hover img,
.footer-brand-logo:hover img{
  transform:translateY(-1px);
}
.brand-logo img,
.footer-brand-logo img{
  transition:transform .18s ease, opacity .18s ease;
}
@media(max-width:1060px){
  .brand-logo{width:156px;height:44px;}
}
@media(max-width:720px){
  .brand-logo{width:142px;height:40px;}
  .footer-brand-logo{width:172px;height:66px;}
}


/* Refinamento final — logo, header e consistência mobile */
.site-header .brand-logo{
  width:clamp(168px, 18vw, 238px)!important;
  height:52px!important;
  padding:4px 0!important;
}
.site-header .brand-logo img{
  object-fit:contain!important;
  object-position:left center!important;
}
.header-inner{
  min-height:68px!important;
}
.language-selector{z-index:80}
.language-menu{max-height:min(360px, calc(100vh - 96px));overflow:auto}
.mobile-menu{
  top:76px!important;
  background:rgba(255,255,255,.98)!important;
  backdrop-filter:blur(16px);
}
.unit-img-real{position:relative;background-color:rgba(152,192,31,.10)!important;}
.unit-img-real::after{background:linear-gradient(180deg,rgba(19,19,18,0),rgba(19,19,18,.12))!important;}
.plan-card .price small,
.plan-card .price span{color:var(--muted)!important;font-weight:800;}
.plan-card.primary .price small,
.plan-card.primary .price span{color:rgba(255,255,255,.74)!important;}
.feature-list li{line-height:1.35;}
.empty-state.show{display:block!important;}
.footer-brand-logo{filter:none!important;}
@media(max-width:1060px){
  .site-header .brand-logo{width:190px!important;height:48px!important;}
  .header-inner{min-height:64px!important;}
}
@media(max-width:720px){
  .site-header .brand-logo{width:166px!important;height:44px!important;}
  .header-actions{gap:6px!important;}
  .region span:not(.flag-slot){display:none;}
  .language-menu{right:-48px;min-width:210px;}
}
