/* HUBMAT — Portal da Família 2026
   Camada visual: preserva integralmente o conteúdo e reorganiza somente ritmo, cor e hierarquia. */
:root{
  --fam-ink:#3f2b27;
  --fam-deep:#8a4935;
  --fam-terra:#b76443;
  --fam-orange:#c9754e;
  --fam-peach:#f6ded2;
  --fam-cream:#fff8f3;
  --fam-paper:#fffdfb;
  --fam-line:#ead5ca;
  --fam-muted:#715e58;
  --fam-green:#527f69;
}

body{background:var(--fam-paper)}
.hps-main{background:var(--fam-paper)}
.hps-main .rv2-wrap{width:min(1120px,calc(100% - 44px))}

/* Abertura */
.hps-main .rv2-hero{
  padding:48px 0 52px;
  background:
    radial-gradient(circle at 88% 8%,rgba(183,100,67,.08),transparent 26%),
    linear-gradient(135deg,#fffaf6 0%,#faece4 100%);
  border-bottom:1px solid var(--fam-line);
}
.hps-main .rv2-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:30px}
.hps-main .rv2-kicker{background:#f8e7de;color:#984d34}
.hps-main .rv2-hero h1{max-width:760px;color:var(--fam-ink);font-size:clamp(38px,4.7vw,60px);letter-spacing:-.045em}
.hps-main .rv2-hero p{max-width:740px;color:var(--fam-muted);font-size:16px;line-height:1.6}
.hps-main .rv2-btn.primary{background:var(--fam-deep);border-color:var(--fam-deep);color:#fff;box-shadow:none}
.hps-main .rv2-btn.light{background:#fff;border-color:var(--fam-line);color:var(--fam-deep)}
.hps-main .rv2-hero-panel{padding:22px;border-color:#e8cfc2;border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 14px 34px rgba(102,56,38,.07)}
.hps-main .rv2-hero-panel h2{color:var(--fam-ink);font-size:20px}
.hps-main .rv2-panel-grid{gap:8px}
.hps-main .rv2-panel-grid div{padding:12px;border-color:#eadbd3;background:#fffaf7}
.hps-main .rv2-panel-grid strong{color:var(--fam-deep)}
.hps-main .rv2-panel-grid span{color:var(--fam-muted)}

/* Números — informativos, sem transformar a página em painel */
.hps-main .pr2-proof{background:#fff;border-bottom:1px solid #efe2da}
.hps-main .pr2-proof-grid{gap:10px}
.hps-main .pr2-proof-card{min-height:112px;padding:16px;border-color:#eadbd2;box-shadow:none;background:#fffdfb}
.hps-main .pr2-proof-card strong{font-size:clamp(24px,2.8vw,34px);color:var(--fam-deep)}
.hps-main .pr2-proof-card span{font-size:11px;line-height:1.4;color:var(--fam-muted)}

/* Ritmo editorial */
.hps-main .rv2-section{padding:44px 0}
.hps-main .rv2-white{background:#fff}
.hps-main .rv2-head{max-width:820px;margin-bottom:22px}
.hps-main .rv2-head h2,.hps-main .rv2-login-note h2,.hps-main .rv2-final-box h2{color:var(--fam-ink);font-size:clamp(28px,3.4vw,40px);letter-spacing:-.03em}
.hps-main .rv2-head p,.hps-main .rv2-login-note p{color:var(--fam-muted)}

/* Rotas — quente e acolhedor, sem bloco marrom pesado */
.hps-main .rv2-route-feature{
  gap:28px;
  padding:28px;
  border:1px solid #e5c3b3;
  border-radius:24px;
  background:linear-gradient(135deg,#fff7f2 0%,#f8e4d9 58%,#f3d2c2 100%);
  color:var(--fam-ink);
  box-shadow:0 14px 32px rgba(105,57,41,.08)
}
.hps-main .rv2-route-feature .rv2-kicker{background:#fff;color:#a04e31;border:1px solid #efd5c8}
.hps-main .rv2-route-feature h2{color:var(--fam-ink);font-size:clamp(28px,3.5vw,40px)}
.hps-main .rv2-route-feature p{color:#6d554d}
.hps-main .rv2-route-feature .rv2-btn.primary{background:var(--fam-deep);border-color:var(--fam-deep);color:#fff}
.hps-main .rv2-route-list{gap:8px}
.hps-main .rv2-route-list span{padding:10px 12px;border-color:#e7c9bb;background:rgba(255,255,255,.68);color:#5b4038}

/* Mapa para família */
.hps-main #caminhos{background:#fff8f4}
.hps-main .rv2-map-grid{gap:10px}
.hps-main .rv2-map-card{min-height:130px;padding:18px;border-radius:18px;box-shadow:none}
.hps-main .rv2-map-card.direction{background:linear-gradient(135deg,#8a5949,#aa7461)}
.hps-main .rv2-map-card.learning{background:linear-gradient(135deg,#527f69,#739987)}
.hps-main .rv2-map-card.strength{background:linear-gradient(135deg,#a66e39,#c48a53)}
.hps-main .rv2-map-card.exam{background:linear-gradient(135deg,#985854,#b8746d)}
.hps-main .rv2-map-card strong{font-size:16px}

/* Situações reais */
.hps-main .rv2-need-grid{gap:12px}
.hps-main .rv2-need{grid-template-columns:48px 1fr;gap:12px;padding:18px;border-width:1px;border-left-width:5px;border-radius:18px;box-shadow:0 8px 22px rgba(78,48,37,.045)}
.hps-main .rv2-need-icon{width:44px;height:44px;border-radius:13px;font-size:17px}
.hps-main .rv2-need h3{font-size:18px;color:var(--fam-ink)}
.hps-main .rv2-need p{font-size:12.5px;color:var(--fam-muted)}
.hps-main .rv2-need span:last-child{font-size:11px}

/* Referência para acompanhar */
.hps-main .pr2-section.pr2-soft{background:#fbf0e9}
.hps-main .pr2-statement{border-color:#e6d0c4;background:#fffaf7;box-shadow:none}
.hps-main .pr2-statement h2{color:var(--fam-ink)}
.hps-main .pr2-statement p,.hps-main .pr2-statement-points span{color:var(--fam-muted)}
.hps-main .pr2-statement-points strong{color:var(--fam-ink)}
.hps-main .pr2-eyebrow{color:#9e4c31}

/* Premium continua comparável, sem virar área comercial dominante */
.hps-main .rv2-compare{gap:14px}
.hps-main .rv2-compare article{padding:23px;border-color:#eadbd2;border-radius:22px;box-shadow:0 10px 26px rgba(78,48,37,.05)}
.hps-main .rv2-compare h3{font-size:22px;color:var(--fam-ink)}
.hps-main .rv2-compare p,.hps-main .rv2-compare ul{color:var(--fam-muted)}

/* Rotina */
.hps-main .rv2-steps{gap:10px}
.hps-main .rv2-steps article{padding:18px;border-color:#eadbd2;border-radius:17px;background:#fffdfb}
.hps-main .rv2-steps b{background:var(--fam-deep);color:#fff}
.hps-main .rv2-steps h3{font-size:17px;color:var(--fam-ink)}
.hps-main .rv2-steps p{font-size:12.5px;color:var(--fam-muted)}

/* Login e fechamento — final claro, com CTA legível */
.hps-main .rv2-login-note{padding:24px;border-color:#ead6ca;border-radius:22px;background:#fff7f2}
.hps-main .rv2-final{padding-top:28px}
.hps-main .rv2-final-box{padding:28px;border:1px solid #e3c0b0;border-radius:24px;background:linear-gradient(135deg,#fff5ef 0%,#f7dfd3 62%,#f1cdbc 100%);color:var(--fam-ink)}
.hps-main .rv2-final-box h2{color:var(--fam-ink)}
.hps-main .rv2-final-box p{color:#6c544d}
.hps-main .rv2-final-box .rv2-btn.primary{background:var(--fam-deep);border-color:var(--fam-deep);color:#fff}
.hps-main .rv2-final-box .rv2-btn.light{background:rgba(255,255,255,.75);border-color:#d9b6a6;color:var(--fam-deep)}

@media(max-width:900px){
  .hps-main .rv2-hero-grid{grid-template-columns:1fr}
  .hps-main .rv2-hero-panel{max-width:none}
}
@media(max-width:650px){
  .hps-main .rv2-wrap{width:min(100% - 24px,1120px)}
  .hps-main .rv2-hero{padding:34px 0 38px}
  .hps-main .rv2-hero h1{font-size:36px}
  .hps-main .rv2-section{padding:36px 0}
  .hps-main .rv2-route-feature{padding:21px}
  .hps-main .rv2-need{grid-template-columns:42px 1fr;padding:16px}
  .hps-main .rv2-need-icon{width:40px;height:40px}
  .hps-main .rv2-final-box{padding:22px}
}
