/* ========================================================================
   CLUBBIX — REMODELO v1
   Camada de redesign da home. Carregada DEPOIS de style.css: sobrepoe o
   visual das secoes da home (header, hero, sobre, planos, Bixie, CTA,
   rodape) sem tocar nos componentes funcionais (formulario de
   contato, chatbot, calculadora) que continuam vindo do style.css.
   Classes novas usam o prefixo .rm- para nao colidir com o legado.
   ======================================================================== */

:root{
  --rm-bg-hero:#241439;
  --rm-bg-about:#160a28;
  --rm-bg-cta:#2b123d;
  --rm-bg-footer:#150522;
  --rm-text:#f3e9f5;
  --rm-muted:#a78fbd;
  --rm-grad:linear-gradient(120deg,#f5841f 0%,#ea5a1c 36%,#b43ac6 72%,#7c2ba8 100%);
  --rm-grad-cta:linear-gradient(125deg,#ea5a1c 1%,#7c2ba8 110%);
  --rm-maxw:1280px;
}

.rm-container{
  max-width:var(--rm-maxw);margin:0 auto;padding:0 40px;width:100%;
}
.rm-grad-text{
  background:var(--rm-grad);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 28px;border-radius:var(--pill);
  font-family:'Poppins',sans-serif;font-weight:600;font-size:15.7px;
  white-space:nowrap;border:none;cursor:pointer;
  transition:transform .25s var(--ease),filter .25s var(--ease),box-shadow .25s var(--ease);
}
.rm-btn:hover{transform:translateY(-3px);filter:brightness(1.07)}
.rm-btn:active{transform:translateY(-1px) scale(.99)}
.rm-btn-primary{background:var(--rm-grad-cta);color:#fff;box-shadow:0 14px 30px rgba(234,90,28,.28)}
.rm-btn-outline{border:1px solid #f5841f;color:#fff;background:transparent}

/* =========================== CABECALHO ================================= */
.page-home .site-header{
  background:rgba(20,9,36,.9);
  border-bottom:1px solid rgba(255,255,255,.11);
}
/* os blobs flutuantes do layout antigo ficam invisíveis atrás das seções
   opacas do remodelo — desligamos para não pagar blur+animação à toa */
.page-home .bg-decor{display:none}
.page-home .header-inner{max-width:var(--rm-maxw);padding:0 40px;min-height:66px;gap:24px}
.page-home .brand-tag{display:none}
.page-home .brand-name{font-size:21px}
.page-home .main-nav{gap:6px}
.page-home .tab{font-size:14.4px;padding:10px 16px;color:var(--rm-muted)}
.page-home .tab:hover{color:var(--rm-text)}
.page-home .header-actions .btn-sm{padding:8px 20px;font-size:14.4px}
.page-home #navLoginBtn{
  background:transparent;border:1px solid var(--ember);color:#fff;box-shadow:none;
}
.page-home #navLoginBtn:hover{background:rgba(234,90,28,.14);box-shadow:none}

/* ============================== HERO =================================== */
.rm-hero{
  background:radial-gradient(circle at center,#352155 0%,#241439 58%,#1b0f2e 100%);
  position:relative;overflow:hidden;padding:100px 0 0;z-index:1;
}
.rm-hero-orb{
  position:absolute;left:50%;bottom:-540px;
  width:4900px;height:880px;transform:translateX(-50%);
  border-radius:90%;
  background:radial-gradient(circle,
    rgba(245,132,31,.4) 0%,rgba(234,90,28,.22) 24%,
    rgba(180,58,198,.1) 44%,rgba(36,20,57,0) 64%);
  filter:blur(115px);z-index:0;pointer-events:none;
}
.rm-hero .rm-container{
  display:flex;align-items:stretch;justify-content:space-between;
  gap:40px;min-height:640px;position:relative;z-index:2;
}
.rm-hero-copy{
  flex:1 1 480px;display:flex;flex-direction:column;justify-content:center;
  transform:translateY(-38px);text-align:left;
}
/* o recuo lateral do modelo só entra quando sobra margem fora do container,
   senão o título vaza pela borda esquerda em telas de ~1280px */
@media (min-width:1400px){
  .rm-hero-copy{transform:translate(-54px,-38px)}
}
.rm-hero h1{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(44px,5.6vw,72px);line-height:1.06;color:var(--rm-text);
}
.rm-hero-lead{
  margin-top:20px;font-size:20px;line-height:1.35;
  color:var(--rm-muted);max-width:420px;
}
.rm-hero-lead strong{color:var(--rm-text);font-weight:700}
.rm-hero-cta{margin-top:55px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.rm-member-note{margin-top:28px;font-size:15px;color:var(--rm-muted)}
.rm-member-note a{color:var(--ember);font-weight:700;text-decoration:underline;text-underline-offset:3px}

.rm-hero-visual{position:relative;flex:0 0 560px;max-width:560px}
.rm-hero-rings{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  transform:translateX(34px);z-index:1;isolation:isolate;
}
.rm-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.9}
.rm-ring-outer{
  width:140%;height:360%;opacity:1;z-index:1;
  background-size:contain;background-repeat:no-repeat;background-position:center;
  background-image:url("../img/orange-circle-dot.png");
  animation:rmSpin 90s linear infinite;
}
.rm-ring-middle{
  width:130%;aspect-ratio:1/1;z-index:0;
  background-size:contain;background-repeat:no-repeat;
  background-image:url("../img/yellow-circle.png");
  animation:rmSpin 40s linear infinite;
}
.rm-ring-inner{width:95%;z-index:2;animation:rmSpin 60s linear infinite reverse}
@keyframes rmSpin{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes rmSpinBack{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
.rm-badge-orbit{position:absolute;inset:0;z-index:3;pointer-events:none;transform-origin:50% 50%}
.rm-badge-anchor{position:absolute;width:auto;height:auto;z-index:4}
/* posicionamento percentual: alinha os badges sobre os pontos do circulo */
.rm-a1{left:30%;top:64%}    /* +300 empresas */
.rm-a2{left:63%;top:35%}    /* Under Armour */
.rm-a3{left:20%;top:62%}    /* Petz */
.rm-a4{left:86%;top:56%}    /* Vivara */
.rm-a5{left:73%;top:38%}    /* Tampatinhas */
.rm-a6{left:2%;top:44%}     /* Escape 60 */
.rm-a7{left:89%;top:50%}    /* Centauro */
.rm-a8{left:84%;top:43%}    /* Espaco La Vieh */
.rm-a9{left:7%;top:57%}     /* Riquepro */
.rm-a10{left:7%;top:40%}    /* Coloiado Fitness */
.rm-a11{left:.5%;top:49%}   /* Evino */
.rm-a12{left:2%;top:53%}    /* Farmacias */
.rm-a13{left:23%;top:36%}   /* Cinemas */
.rm-a14{left:40%;top:34%}   /* Academia MOVE */
.rm-float-badge{
  position:absolute;top:0;left:0;
  display:flex;align-items:center;gap:6px;
  /* sem backdrop-filter: são 14 badges animando ao mesmo tempo e o blur
     por trás de cada um derrubava o frame rate. O fundo escuro já basta. */
  background:rgba(20,9,36,.82);border:1px solid rgba(255,255,255,.15);
  border-radius:var(--pill);padding:9px 16px;
  font-family:'Poppins',sans-serif;font-weight:700;font-size:11.8px;color:#fff;
  white-space:nowrap;box-shadow:0 10px 22px rgba(0,0,0,.3);
  transform:translate(-50%,-50%);pointer-events:auto;
  /* contra-rotacao: mantem o badge na horizontal enquanto orbita */
  animation:rmSpinBack 90s linear infinite;
}
.rm-hero-person{
  position:absolute;left:50%;bottom:0;z-index:2;
  width:116%;max-width:none;height:auto;display:block;
  transform:translateX(-50%);
}
.rm-hero-baseline{
  position:absolute;bottom:0;left:56%;width:350px;max-width:88%;height:5px;
  transform:translateX(-50%);background:#e07722;z-index:3;pointer-events:none;
}

/* ============================== SOBRE ================================== */
.rm-about{
  background:var(--rm-bg-about);position:relative;overflow:hidden;padding:30px 0;z-index:1;
}
.rm-about::before{
  content:"";position:absolute;left:50%;top:18%;
  width:3800px;height:620px;transform:translate(-50%,-50%);
  border-radius:60% 70% 50% 50%/50% 55% 65% 50%;
  background:radial-gradient(circle,
    rgba(245,132,31,.34) 0%,rgba(234,90,28,.18) 22%,
    rgba(180,58,198,.12) 40%,rgba(36,20,57,0) 68%);
  filter:blur(110px);z-index:0;pointer-events:none;
}
.rm-about .rm-container{
  display:grid;grid-template-columns:.82fr 1.18fr;gap:0;align-items:end;
  position:relative;z-index:2;min-height:620px;padding-top:12px;
}
.rm-about-visual{
  position:relative;display:flex;align-items:center;justify-content:center;
  align-self:center;margin-left:-90px;width:560px;min-height:560px;overflow:visible;
}
.rm-about-visual img{
  position:relative;z-index:4;display:block;
  width:clamp(340px,31vw,500px);max-height:585px;height:auto;object-fit:contain;
}
.rm-about h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(32px,3.6vw,48px);line-height:1.14;color:var(--rm-text);
}
.rm-about-lead{margin-top:24px;font-size:19.5px;line-height:1.6;color:#fff;max-width:520px}
.rm-stat-row{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap}
.rm-stat-card{
  flex:1 1 180px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);border-radius:18px;
  padding:22px 22px 18px;min-height:110px;
  display:flex;flex-direction:column;justify-content:center;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.rm-stat-card .rm-num{
  font-family:'Poppins',sans-serif;font-weight:800;font-size:32px;
  background:linear-gradient(118deg,#f5841f 33%,#b43ac6 82%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-stat-card .rm-label{margin-top:6px;font-size:15px;color:var(--rm-muted);font-weight:500}

/* ============================== PLANOS ================================= */
.rm-plans{
  background:radial-gradient(circle at center,
    rgba(75,35,72,.96) 0%,rgba(25,11,34,.98) 38%,rgba(11,7,19,1) 100%);
  position:relative;overflow:hidden;padding:110px 0 120px;text-align:center;z-index:1;
}
.rm-plans::before,.rm-plans::after{
  content:"";position:absolute;border-radius:50%;filter:blur(120px);
  pointer-events:none;z-index:0;
}
.rm-plans::before{
  width:980px;height:980px;left:50%;top:52%;transform:translate(-50%,-50%);
  background:radial-gradient(circle,
    rgba(255,135,60,.18) 0%,rgba(255,135,60,.08) 20%,
    rgba(180,58,198,.04) 42%,rgba(36,20,57,0) 70%);
}
.rm-plans::after{
  width:760px;height:760px;left:50%;bottom:-220px;transform:translateX(-50%);
  background:radial-gradient(circle,
    rgba(255,150,80,.14) 0%,rgba(180,58,198,.08) 32%,rgba(36,20,57,0) 70%);
}
.rm-plans .rm-container{position:relative;z-index:2}
.rm-plans h2{
  font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(42px,4vw,78px);line-height:.98;letter-spacing:-.06em;
  color:var(--rm-text);max-width:760px;margin:0 auto;
}
.rm-plans-sub{
  margin:26px auto 0;max-width:640px;color:var(--rm-muted);
  font-size:18.2px;line-height:1.6;
}
.rm-plans-grid{
  margin:52px auto 0;display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));
  gap:18px;align-items:end;max-width:1020px;
}
.rm-plan{
  background:rgba(95,67,108,.34);border:1px solid rgba(255,255,255,.08);
  border-radius:26px;padding:34px 26px 22px;text-align:left;position:relative;
  min-height:420px;display:flex;flex-direction:column;justify-content:space-between;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.rm-plan:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(16,7,22,.42)}
.rm-plan.is-featured{
  background:linear-gradient(180deg,rgba(113,62,135,.8) 0%,rgba(90,66,117,.52) 100%);
  border:1px solid rgba(255,255,255,.14);
  padding-top:52px;margin-top:-18px;min-height:500px;
  box-shadow:0 22px 44px rgba(16,7,22,.38);
}
.rm-plan-badge{
  position:absolute;top:-18px;left:50%;transform:translateX(-50%);
  background:linear-gradient(123deg,#fbb13c 0%,#f5841f 55%,#ea5a1c 100%);
  color:#fff;font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;
  padding:9px 22px;border-radius:var(--pill);white-space:nowrap;
  box-shadow:0 12px 18px rgba(234,90,28,.28);
}
.rm-plan-eyebrow{
  font-size:12px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:#ff783f;
}
.rm-plan.is-featured .rm-plan-eyebrow{color:var(--gold)}
.rm-plan-name{
  margin-top:12px;font-family:'Poppins',sans-serif;font-weight:800;
  font-size:30px;color:var(--rm-text);
}
.rm-plan-price{margin-top:16px;display:flex;align-items:baseline;gap:6px}
.rm-plan-price .rm-cur{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:16.8px;color:var(--ember);
}
.rm-plan.is-featured .rm-plan-price .rm-cur{color:var(--gold)}
.rm-plan-price .rm-val{
  font-family:'Poppins',sans-serif;font-weight:800;font-size:32.8px;color:var(--rm-text);
}
.rm-plan.is-featured .rm-plan-price .rm-val{color:#fff}
.rm-plan-feats{margin-top:22px;list-style:none;display:flex;flex-direction:column;gap:14px}
.rm-plan-feats li{
  display:flex;align-items:flex-start;gap:12px;
  font-size:15px;line-height:1.5;color:var(--rm-text);
}
.rm-plan-feats .rm-check{
  flex-shrink:0;width:19px;height:19px;border-radius:50%;
  background:var(--warm-grad);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:11px;line-height:1;margin-top:3px;
}
.rm-plan.is-featured .rm-plan-feats .rm-check{background:var(--magenta)}
.rm-plan-cta{
  margin-top:26px;display:block;width:100%;text-align:center;
  padding:13px 0;border-radius:var(--pill);
  border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;
  font-family:'Poppins',sans-serif;font-weight:600;font-size:15.7px;
  transition:transform .25s var(--ease),background .25s var(--ease),filter .25s var(--ease);
}
.rm-plan-cta:hover{transform:translateY(-2px);background:rgba(255,255,255,.08)}
.rm-plan.is-featured .rm-plan-cta{
  border:1px solid #ffe5bc;
  background:linear-gradient(120deg,#f5841f 0%,#ea5a1c 100%);
  box-shadow:0 12px 18px rgba(234,90,28,.24);
}
.rm-plan.is-featured .rm-plan-cta:hover{filter:brightness(1.07)}

/* ========================= BIXIE / DUVIDAS ============================= */
.rm-qa{
  background:var(--rm-bg-about);position:relative;overflow:hidden;padding:110px 0;z-index:1;
}
.rm-qa::before{
  content:"";position:absolute;inset:0;
  background-image:url("../img/chat-bg.png");
  background-position:center 18%;background-repeat:no-repeat;background-size:cover;
  opacity:.07;pointer-events:none;z-index:0;
}
.rm-qa .rm-container{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;
  position:relative;z-index:2;
}
.rm-qa h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(30px,3.4vw,45.6px);line-height:1.15;color:var(--rm-text);
}
.rm-qa-lead{margin-top:24px;font-size:18.2px;line-height:1.6;color:var(--rm-muted);max-width:480px}
.rm-qa .rm-btn{margin-top:32px}
.rm-chat-mock{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
  border-radius:24px;padding:28px;cursor:pointer;
  transition:transform .3s var(--ease),border-color .3s var(--ease);
}
.rm-chat-mock:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.22)}
.rm-chat-bubble{display:flex;gap:14px;align-items:flex-start}
.rm-chat-bubble .rm-avatar{
  width:44px;height:44px;border-radius:50%;background:var(--rm-grad);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.rm-chat-bubble .rm-avatar img{width:30px;height:30px;object-fit:contain}
.rm-chat-bubble p{
  background:rgba(255,255,255,.06);border-radius:16px;padding:16px 18px;
  font-size:15px;line-height:1.6;color:#f2e3ff;
}
.rm-chat-placeholder{margin-top:18px;display:flex;flex-direction:column;gap:12px}
.rm-chat-placeholder span{height:16px;border-radius:8px;background:rgba(255,255,255,.08);display:block}
.rm-chat-placeholder span:nth-child(1){width:70%}
.rm-chat-placeholder span:nth-child(2){width:85%}
.rm-chat-placeholder span:nth-child(3){width:55%}

/* ============================ CTA FINAL ================================ */
.rm-cta{
  background:var(--rm-bg-cta);position:relative;overflow:hidden;padding:42px 0 54px;z-index:1;
}
.rm-cta::before{
  content:"";position:absolute;right:-90px;top:-96%;
  width:1100px;height:1100px;border-radius:50%;
  background-image:url("../img/logo.png"),
    radial-gradient(circle,
      rgba(255,170,118,.7) 0%,rgba(255,107,129,.42) 28%,
      rgba(164,72,166,.18) 54%,rgba(164,72,166,0) 78%);
  background-repeat:no-repeat,no-repeat;
  background-position:right center,center;
  background-size:62% auto,100% 100%;
  opacity:.12;pointer-events:none;z-index:0;transform:rotate(36deg);
}
.rm-cta::after{
  content:"";position:absolute;left:-10%;top:50%;
  width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,
    rgba(255,149,96,.12) 0%,rgba(255,149,96,.02) 45%,transparent 78%);
  pointer-events:none;z-index:0;
}
.rm-cta .rm-container{
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:2;min-height:420px;
}
.rm-cta-copy{
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;max-width:610px;margin:0 auto;
}
.rm-cta h2{
  font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(38px,4.2vw,94px);line-height:.84;letter-spacing:-.06em;
  color:var(--rm-text);margin:0;
}
.rm-cta .rm-grad-text{display:block}
.rm-cta .rm-btn{
  margin-top:47px;font-size:18px;padding:20px 30px;border-radius:18px;
  background:var(--rm-grad);box-shadow:none;
  min-width:420px;width:max-content;font-weight:700;
}

/* ============================== RODAPE ================================= */
.page-home .site-footer{background:var(--rm-bg-footer);padding:64px 0 0}
.page-home .footer-top{
  max-width:var(--rm-maxw);padding:0 40px 48px;
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;
}
.page-home .footer-brand p{
  font-size:14.7px;line-height:1.6;color:rgba(255,255,255,.78);max-width:280px;
}
.page-home .footer-col h4{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:16px;color:#fff;margin-bottom:16px;
}
.page-home .footer-col a,
.page-home .footer-col .footer-addr{font-size:14.4px;color:rgba(255,255,255,.78)}
.page-home .footer-cnpj{font-size:13.1px;opacity:.7}
.page-home .footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  font-size:13.4px;color:rgba(255,255,255,.78);
}

/* ======================= SECOES LEGADAS NA HOME ======================== */
/* paineis Exclusividade / Filantropia e o bloco de contato
   herdam o fundo escuro do novo desenho */
.page-home .tab-panel .section,
.page-home .section.contact{background:var(--rm-bg-about);position:relative;z-index:1}

/* =========================== RESPONSIVO ================================ */
@media (max-width:1100px){
  .rm-hero-copy{transform:translateY(-20px)}
  .rm-hero-visual{flex:0 0 460px;max-width:460px}
  .rm-about-visual{margin-left:-40px;width:auto}
}
@media (max-width:900px){
  .rm-container{padding:0 22px}

  .rm-hero{padding:56px 0 0}
  .rm-hero .rm-container{flex-direction:column;min-height:0;gap:0}
  .rm-hero-copy{flex:none;transform:none;text-align:center;align-items:center}
  .rm-hero h1{font-size:clamp(34px,8.4vw,52px)}
  .rm-hero-lead{font-size:17.5px;max-width:none}
  .rm-hero-cta{margin-top:34px;justify-content:center}
  .rm-hero-orb{width:900px;height:700px;bottom:-260px}
  .rm-hero-visual{
    position:relative;flex:none;width:100%;max-width:340px;height:330px;margin:34px auto 0;z-index:1;
  }
  .rm-hero-rings{transform:none}
  .rm-ring-outer{width:100%;height:100%}
  .rm-ring-middle,.rm-ring-inner,.rm-badge-orbit,.rm-hero-baseline{display:none}
  .rm-hero-person{width:100%}

  .rm-about{padding:56px 0}
  .rm-about .rm-container{grid-template-columns:1fr;min-height:0;gap:34px;align-items:start;padding-top:0}
  .rm-about-visual{margin-left:0;width:100%;min-height:0;justify-content:center}
  .rm-about-visual img{width:min(80vw,380px);max-height:none}
  .rm-about-lead{max-width:none}

  .rm-plans{padding:64px 0 72px}
  .rm-plans h2{font-size:clamp(32px,7.6vw,48px);letter-spacing:-.03em}
  .rm-plans-sub{font-size:16.5px}
  .rm-plans-grid{grid-template-columns:1fr;max-width:400px;margin-top:44px}
  .rm-plan{min-height:0}
  .rm-plan.is-featured{margin-top:16px;min-height:0;padding-top:46px}

  .rm-qa{padding:64px 0}
  .rm-qa .rm-container{grid-template-columns:1fr;gap:34px}
  .rm-qa-lead{max-width:none}
  .rm-chat-mock{padding:22px}

  .rm-cta{padding:56px 0 64px}
  .rm-cta .rm-container{min-height:0}
  .rm-cta h2{font-size:clamp(32px,7.8vw,52px);line-height:.95}
  .rm-cta .rm-btn{min-width:0;width:100%;margin-top:34px;font-size:16.5px;padding:18px 22px}

  .page-home .header-inner{padding:10px 16px}
  .page-home .footer-top{grid-template-columns:1fr 1fr;padding:0 22px 36px}
}
@media (max-width:600px){
  .rm-container{padding:0 20px}
  .rm-hero h1{font-size:clamp(31px,8.6vw,42px)}
  .rm-hero-cta{width:100%}
  .rm-hero-cta .rm-btn{width:100%}
  .rm-hero-visual{max-width:290px;height:280px}
  .rm-stat-card{flex:1 1 100%;min-height:0;padding:18px 20px}
  .rm-stat-card .rm-num{font-size:28px}
  .rm-plan{padding:28px 22px 20px}
  .rm-plan-name{font-size:26px}
  .page-home .site-footer{padding:48px 0 0}
  .page-home .footer-top{grid-template-columns:1fr;gap:32px}
  .page-home .footer-brand p{max-width:none}
}

/* ------------------------- movimento reduzido -------------------------- */
@media (prefers-reduced-motion:reduce){
  .rm-ring-outer,.rm-ring-middle,.rm-ring-inner,.rm-float-badge{animation:none!important}
}
/* aparelhos pequenos: desliga as orbitas por completo */
@media (max-width:380px){
  .rm-ring-outer{animation:none}
}

/* ========================================================================
   PÁGINA UNIVAG — hero "círculo laranja" + blocos da página do convênio
   ======================================================================== */
.rm-u-hero{
  background:#160a28;position:relative;overflow:hidden;padding:80px 0;z-index:1;
}
.rm-u-hero::before{
  content:"";position:absolute;left:44%;top:50%;width:1500px;height:560px;
  transform:translate(-50%,-50%);
  border-radius:60% 70% 50% 50%/50% 55% 65% 50%;
  background:radial-gradient(circle,
    rgba(245,132,31,.3) 0%,rgba(234,90,28,.16) 24%,
    rgba(180,58,198,.1) 44%,rgba(36,20,57,0) 70%);
  filter:blur(100px);pointer-events:none;z-index:0;
}
.rm-u-hero .rm-container{
  position:relative;z-index:2;
  display:grid;grid-template-columns:540px 1fr;gap:56px;align-items:center;
}

/* ---- coluna visual: disco + anel + foto + chips em órbita ---- */
.rm-u-visual{
  position:relative;height:500px;
  display:flex;align-items:center;justify-content:center;
}
.rm-u-disc{
  position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);
  width:390px;height:390px;border-radius:50%;
  background:linear-gradient(150deg,#f5841f 0%,#ea5a1c 46%,#b43ac6 100%);
  box-shadow:0 30px 70px rgba(234,90,28,.28);
}
.rm-u-arc{
  position:absolute;top:42%;left:50%;
  width:490px;height:490px;border-radius:50%;
  border:2px dashed rgba(245,132,31,.42);
  animation:rmSpin 70s linear infinite;
}
.rm-u-photo{
  position:relative;top:22px;z-index:3;width:440px;max-width:100%;
  /* a foto é recortada, mas a bancada chega reta na borda de baixo:
     o fade dissolve a base dela no fundo da seção */
  -webkit-mask-image:linear-gradient(to bottom,#000 62%,rgba(0,0,0,.35) 86%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 62%,rgba(0,0,0,.35) 86%,transparent 100%);
}
.rm-u-orbit{
  position:absolute;inset:0;z-index:5;pointer-events:none;
  animation:rmTurn 80s linear infinite;
}
.rm-u-anchor{position:absolute}
.rm-u-anchor .rm-u-chip{
  position:absolute;top:0;left:0;
  /* contra-rotação: o chip dá a volta com o anel, mas o texto nunca vira */
  animation:rmTurnBack 80s linear infinite;
}
@keyframes rmTurn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes rmTurnBack{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
/* posições sobre o anel pontilhado (raio ~240px, centro 50% / 44%) */
.rm-u-o1{left:94%;top:44%}
.rm-u-o2{left:85.6%;top:72.2%}
.rm-u-o3{left:63.6%;top:89.7%}
.rm-u-o4{left:36.4%;top:89.7%}
.rm-u-o5{left:14.4%;top:72.2%}
.rm-u-o6{left:6%;top:44%}
.rm-u-o7{left:14.4%;top:15.8%}
.rm-u-o8{left:36.4%;top:-1.7%}
.rm-u-o9{left:63.6%;top:-1.7%}
.rm-u-o10{left:85.6%;top:15.8%}
.rm-u-chip{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(20,9,36,.86);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--pill);padding:8px 15px;
  font-family:'Poppins',sans-serif;font-weight:700;font-size:11.6px;color:#fff;
  white-space:nowrap;box-shadow:0 10px 22px rgba(0,0,0,.34);
}
.rm-u-chip.is-hot{
  background:linear-gradient(120deg,#f5841f 0%,#ea5a1c 100%);
  border-color:rgba(255,229,188,.5);
}

/* ---- coluna de texto ---- */
.rm-u-copy{display:flex;flex-direction:column}
.rm-u-eyebrow{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  padding:8px 16px;border-radius:var(--pill);
  background:rgba(245,132,31,.14);border:1px solid rgba(245,132,31,.34);
  color:#ffb877;font-family:'Poppins',sans-serif;font-weight:600;
  font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;
}
.rm-u-eyebrow .ico{width:15px;height:15px}
.rm-u-hero h1{
  margin-top:22px;font-family:'Poppins',sans-serif;font-weight:800;
  letter-spacing:-.02em;font-size:clamp(38px,4.4vw,62px);line-height:1.06;
  color:var(--rm-text);
}
.rm-u-lead{margin-top:20px;font-size:18.5px;line-height:1.5;color:var(--rm-muted);max-width:470px}
.rm-u-lead strong{color:var(--rm-text);font-weight:700}
.rm-u-cta{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}
.rm-u-stats{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}
.rm-u-stat{
  flex:1 1 150px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px 18px;
}
.rm-u-stat b{
  display:block;font-family:'Poppins',sans-serif;font-weight:800;font-size:29px;
  background:linear-gradient(118deg,#f5841f 33%,#b43ac6 82%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-u-stat > span{display:block;margin-top:4px;font-size:13.5px;color:var(--rm-muted);font-weight:500}
.rm-u-stat b .counter{display:inline}
.rm-u-note{margin-top:20px;font-size:13px;color:#8f7aa5}

/* ---- card usado no aviso de manutenção da calculadora ---- */
.rm-u-card{
  max-width:640px;margin:0 auto;text-align:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);
  border-radius:26px;padding:44px 38px;
  box-shadow:0 22px 44px rgba(16,7,22,.3);
}
.rm-u-card h2{
  font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(26px,3vw,36px);line-height:1.14;color:var(--rm-text);margin-bottom:14px;
}
.rm-u-card p{color:var(--rm-muted);line-height:1.6;font-size:16px}
.rm-u-status{
  display:inline-flex;align-items:center;gap:9px;margin:22px 0;
  padding:11px 20px;border-radius:var(--pill);
  background:rgba(245,132,31,.12);border:1px solid rgba(245,132,31,.3);
  font-size:13.5px;color:#ffb877;font-weight:600;
}
.rm-u-status i{
  width:8px;height:8px;border-radius:50%;background:var(--gold);
  animation:rmPulse 2s ease-in-out infinite;
}
@keyframes rmPulse{0%,100%{opacity:1}50%{opacity:.35}}
.rm-u-card-actions{
  display:flex;flex-direction:column;gap:12px;max-width:360px;margin:26px auto 0;
}
.rm-u-card-actions .rm-btn{width:100%}
.rm-u-card-foot{margin-top:26px;font-size:13.5px;color:#8f7aa5}
.rm-u-card-foot a{color:#c58ae8;font-weight:600}

/* ---- responsivo ---- */
@media (max-width:1080px){
  .rm-u-hero .rm-container{grid-template-columns:1fr;gap:44px}
  .rm-u-copy{order:-1}
  .rm-u-visual{height:400px}
  .rm-u-photo{width:min(92vw,440px)}
  .rm-u-disc{width:330px;height:330px}
  .rm-u-arc{width:400px;height:400px}
  .rm-u-orbit{display:none}
  .rm-u-lead{max-width:none}
}
@media (max-width:600px){
  .rm-u-hero{padding:52px 0 44px}
  .rm-u-visual{height:320px}
  .rm-u-disc{width:250px;height:250px}
  .rm-u-arc{width:305px;height:305px}
  .rm-u-photo{width:min(94vw,360px);top:14px}
  .rm-u-stat{flex:1 1 100%}
  .rm-u-cta .rm-btn{width:100%}
  .rm-u-card{padding:32px 22px}
}
@media (prefers-reduced-motion:reduce){
  .rm-u-arc,.rm-u-orbit,.rm-u-anchor .rm-u-chip{animation:none!important}
}

/* faixa de desconto em destaque no card "quer saber seu desconto?" */
.rm-u-range{
  margin:26px auto;padding:22px 26px;max-width:420px;
  background:rgba(245,132,31,.08);border:1px solid rgba(245,132,31,.26);
  border-radius:20px;
}
.rm-u-range b{
  display:block;font-family:'Poppins',sans-serif;font-weight:800;
  font-size:clamp(34px,5vw,46px);line-height:1;letter-spacing:-.02em;
  background:linear-gradient(118deg,#f5841f 20%,#b43ac6 88%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.rm-u-range span{
  display:block;margin-top:8px;font-size:14px;color:var(--rm-muted);font-weight:500;
}
@media (max-width:600px){
  .rm-u-range{padding:18px 20px;margin:22px auto}
}
