/* =========================================================
   Investe Prime — Central Meu Investe Prime v121.0.0
   Fase 2.1: refinamento de linguagem, identidade e responsividade.
   ========================================================= */

body.pi-home-page{
  background:
    radial-gradient(circle at 8% 2%, rgba(14,165,233,.065), transparent 28%),
    linear-gradient(180deg,#f8fbff 0%,#f2f7fb 34%,#f7fafc 100%);
}

.mp-home-hero{
  position:relative;
  overflow:hidden;
  padding:58px 0 34px;
  background:
    radial-gradient(circle at 84% 10%, rgba(14,165,233,.13), transparent 30%),
    radial-gradient(circle at 96% 68%, rgba(212,175,55,.07), transparent 28%),
    linear-gradient(135deg,#ffffff 0%,#f6fbff 64%,#fbfdff 100%);
  border-bottom:1px solid rgba(191,230,245,.72);
}
.mp-home-hero::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-180px;
  bottom:-260px;
  border-radius:50%;
  border:1px solid rgba(14,165,233,.12);
  box-shadow:0 0 0 40px rgba(14,165,233,.025),0 0 0 82px rgba(14,165,233,.018);
  pointer-events:none;
}
.mp-home-hero-grid{
  display:grid;
  min-width:0;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
  gap:38px;
  align-items:center;
  position:relative;
  z-index:1;
}
.mp-home-copy{min-width:0}
.mp-home-copy h1{
  margin:17px 0 18px;
  max-width:830px;
  font-size:clamp(2.65rem,5.6vw,5.55rem);
  line-height:.96;
  letter-spacing:-.065em;
  color:#0f172a;
}
.mp-home-copy h1 em{
  display:block;
  font-style:normal;
  color:#08758a;
}
.mp-home-copy>p{
  max-width:760px;
  margin:0;
  color:#475569;
  font-size:1.08rem;
  line-height:1.72;
  font-weight:560;
}
.mp-home-primary-actions{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin:24px 0 0;
}
.mp-home-primary-actions a{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:12px 17px;
  border-radius:999px;
  font-weight:900;
  font-size:.9rem;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.mp-home-primary-actions a:hover{transform:translateY(-2px)}
.mp-home-primary-actions .mp-primary{
  color:#fff;
  background:linear-gradient(135deg,#0ea5e9,#2563eb);
  box-shadow:0 15px 30px rgba(14,165,233,.18);
}
.mp-home-primary-actions .mp-secondary{
  color:#0f172a;
  background:#fff;
  border:1px solid rgba(148,163,184,.28);
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
.mp-home-search-wrap{margin-top:22px;max-width:760px}
body.pi-home-page .mp-home-search-wrap .pi-search{
  margin-top:0;
  max-width:none;
  border-radius:20px;
  padding:10px 10px 10px 17px;
  box-shadow:0 18px 46px rgba(15,23,42,.075)!important;
}
.mp-home-search-hint{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:center;
  margin-top:10px;
  color:#64748b;
  font-size:.77rem;
  font-weight:750;
}
.mp-home-search-hint span{display:inline-flex;align-items:center;gap:6px}
.mp-home-search-hint i{color:#0ea5e9}

.mp-next-step-card{
  position:relative;
  overflow:hidden;
  min-height:470px;
  padding:25px;
  border-radius:30px;
  background:
    radial-gradient(circle at 90% 8%,rgba(14,165,233,.12),transparent 30%),
    linear-gradient(145deg,#ffffff,#f6fbff);
  border:1px solid rgba(14,165,233,.18);
  box-shadow:0 28px 80px rgba(15,23,42,.11);
}
.mp-next-step-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,#0ea5e9,#2563eb,#d4af37);
}
.mp-next-top{
  display:flex;
  justify-content:space-between;
  gap:15px;
  align-items:center;
  margin-bottom:16px;
}
.mp-next-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#08758a;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.mp-next-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  color:#166534;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  font-size:.7rem;
  font-weight:900;
}
.mp-next-step-card h2{
  margin:8px 0 10px;
  font-size:1.8rem;
  line-height:1.08;
  letter-spacing:-.045em;
}
.mp-next-step-card>p{
  min-height:72px;
  margin:0;
  color:#526174;
  line-height:1.62;
  font-weight:600;
}
.mp-stage-title{
  display:block;
  margin:20px 0 9px;
  color:#64748b;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.mp-stage-selector{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.mp-stage-selector button{
  border:1px solid #dbe5ef;
  background:#fff;
  color:#334155;
  border-radius:999px;
  padding:8px 11px;
  cursor:pointer;
  font:inherit;
  font-size:.76rem;
  font-weight:850;
  transition:.18s ease;
}
.mp-stage-selector button:hover{border-color:#7dd3fc;color:#0369a1}
.mp-stage-selector button.active{
  color:#075f82;
  background:linear-gradient(135deg,#e6f8ff,#eef4ff);
  border-color:#7dd3fc;
  box-shadow:0 8px 20px rgba(14,165,233,.12),inset 0 0 0 1px rgba(255,255,255,.72);
}
.mp-next-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-top:17px;
  padding:14px 16px;
  border-radius:17px;
  color:#fff;
  background:linear-gradient(135deg,#08758a,#0ea5e9 58%,#2563eb);
  box-shadow:0 14px 30px rgba(14,165,233,.18);
  font-weight:900;
}
.mp-next-action span{display:flex;align-items:center;gap:10px}
.mp-next-action i:last-child{color:#7dd3fc}
.mp-journey-line{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
  margin-top:18px;
}
.mp-journey-line span{
  position:relative;
  display:grid;
  gap:7px;
  color:#64748b;
  font-size:.67rem;
  font-weight:850;
  text-align:center;
}
.mp-journey-line span::before{
  content:"";
  height:6px;
  border-radius:99px;
  background:#e2e8f0;
}
.mp-journey-line span.done::before{background:#0ea5e9}
.mp-journey-line span.current::before{background:linear-gradient(90deg,#0ea5e9,#d4af37)}

.mp-home-jump-shell{
  position:relative;
  z-index:3;
  margin-top:-1px;
  padding:12px 0;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid rgba(219,229,239,.9);
  box-shadow:0 10px 28px rgba(15,23,42,.035);
}
.mp-home-jump{
  display:flex;
  gap:8px;
  overflow:auto;
  scrollbar-width:none;
}
.mp-home-jump::-webkit-scrollbar{display:none}
.mp-home-jump a{
  flex:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border-radius:999px;
  color:#475569;
  font-size:.78rem;
  font-weight:850;
  border:1px solid transparent;
  transition:.18s ease;
}
.mp-home-jump a:hover,.mp-home-jump a.active{
  color:#0369a1;
  background:#effaff;
  border-color:#bae6fd;
}

.mp-central-section{padding-top:54px}
.mp-central-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:28px;
  margin-bottom:22px;
}
.mp-central-head h2{
  margin:8px 0 0;
  font-size:clamp(2rem,4vw,3.15rem);
  letter-spacing:-.055em;
  line-height:1;
}
.mp-central-head p{
  max-width:520px;
  margin:0;
  color:#64748b;
  line-height:1.62;
  font-weight:600;
}
.mp-journey-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.mp-journey-card{
  position:relative;
  overflow:hidden;
  min-height:275px;
  padding:21px;
  border-radius:23px;
  background:#fff;
  border:1px solid #dbe5ef;
  box-shadow:0 17px 44px rgba(15,23,42,.065);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.mp-journey-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 56px rgba(15,23,42,.095);
  border-color:#bae6fd;
}
.mp-journey-number{
  position:absolute;
  right:15px;
  top:9px;
  color:#eaf4fa;
  font-size:4rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.08em;
}
.mp-journey-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:15px;
  color:#0369a1;
  background:linear-gradient(135deg,#e0f2fe,#f8fafc);
  border:1px solid #bae6fd;
  margin-bottom:17px;
  position:relative;
  z-index:1;
}
.mp-journey-card h3{
  margin:0 0 8px;
  font-size:1.18rem;
  letter-spacing:-.025em;
  position:relative;
  z-index:1;
}
.mp-journey-card>p{
  min-height:67px;
  margin:0;
  color:#64748b;
  line-height:1.52;
  font-size:.86rem;
  font-weight:600;
  position:relative;
  z-index:1;
}
.mp-journey-links{
  display:grid;
  gap:7px;
  margin-top:16px;
}
.mp-journey-links a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:9px 11px;
  border-radius:12px;
  background:#f8fbfd;
  border:1px solid #edf2f7;
  color:#334155;
  font-size:.76rem;
  font-weight:850;
}
.mp-journey-links a:hover{color:#0369a1;border-color:#bae6fd;background:#f0faff}

.mp-market-complete{
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:30px;
  background:
    radial-gradient(circle at 95% 5%,rgba(14,165,233,.1),transparent 28%),
    linear-gradient(135deg,#ffffff,#f8fcff);
  border:1px solid rgba(14,165,233,.16);
  box-shadow:0 22px 60px rgba(15,23,42,.075);
}
.mp-market-complete-head{
  display:flex;
  min-width:0;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  margin-bottom:21px;
}
.mp-market-complete-head h2{
  margin:7px 0 7px;
  font-size:clamp(1.8rem,3.5vw,2.7rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.mp-market-complete-head>div{min-width:0}
.mp-market-complete-head p{
  margin:0;
  max-width:760px;
  color:#64748b;
  line-height:1.6;
  font-weight:600;
}
.mp-asset-universe-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
}
.mp-asset-link{
  display:grid;
  min-width:0;
  grid-template-columns:auto 1fr auto;
  gap:11px;
  align-items:center;
  min-height:78px;
  padding:13px;
  border-radius:17px;
  color:#0f172a;
  background:rgba(255,255,255,.88);
  border:1px solid #e2e8f0;
  transition:.18s ease;
}
.mp-asset-link:hover{
  transform:translateY(-2px);
  border-color:#7dd3fc;
  box-shadow:0 13px 27px rgba(15,23,42,.065);
}
.mp-asset-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#0369a1;
  background:#eaf8ff;
  border:1px solid #c7edff;
}
.mp-asset-link span{min-width:0}.mp-asset-link b{display:block;font-size:.86rem;margin-bottom:3px;overflow-wrap:anywhere}
.mp-asset-link small{display:block;color:#64748b;font-size:.68rem;line-height:1.3;font-weight:650}
.mp-asset-link>i{color:#94a3b8;font-size:.72rem}
.mp-asset-link.mp-highlight{
  color:#0b3850;
  background:linear-gradient(135deg,#e8f9ff 0%,#eef4ff 72%,#fff9e7 100%);
  border-color:#9adff3;
  box-shadow:0 13px 30px rgba(14,165,233,.09);
}
.mp-asset-link.mp-highlight .mp-asset-icon{color:#fff;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-color:transparent}
.mp-asset-link.mp-highlight small{color:#557083}
.mp-asset-link.mp-highlight>i{color:#0b87a7}
.mp-asset-link.mp-fiagro .mp-asset-icon{color:#166534;background:#ecfdf5;border-color:#bbf7d0}

.mp-integration-banner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:18px;
  align-items:center;
  margin-top:17px;
  padding:17px 18px;
  border-radius:19px;
  background:linear-gradient(135deg,#eefaff 0%,#f8fcff 68%,#fff8e6 100%);
  color:#17344a;
  border:1px solid rgba(14,165,233,.16);
  box-shadow:0 18px 40px rgba(15,23,42,.07);
}
.mp-integration-banner>i{font-size:1.4rem;color:#0b8fb1}
.mp-integration-banner b{display:block;margin-bottom:3px;color:#0b3850}
.mp-integration-banner span{display:block;color:#5d7184;font-size:.79rem;line-height:1.45}
.mp-integration-banner a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 13px;
  border-radius:999px;
  color:#075f82;
  background:#fff;
  border:1px solid rgba(14,165,233,.16);
  font-size:.76rem;
  font-weight:900;
  white-space:nowrap;
}


/* Ajustes de integração com blocos legados mantidos na home. */
body.pi-home-page .pi-start-here-v94{padding-top:24px}
body.pi-home-page .pi-section{scroll-margin-top:92px}
body.pi-home-page #market,
body.pi-home-page #inteligencia,
body.pi-home-page #rankings,
body.pi-home-page #oraculo,
body.pi-home-page #alocacao{
  position:relative;
}

@media(max-width:1080px){
  .mp-home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(330px,.86fr);gap:24px}
  .mp-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-asset-universe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .mp-home-hero{padding-top:36px}
  .mp-home-hero-grid{grid-template-columns:minmax(0,1fr)}
  .mp-next-step-card{min-height:0}
  .mp-central-head,.mp-market-complete-head{display:block}
  .mp-central-head p{margin-top:13px}
  .mp-asset-universe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mp-integration-banner{grid-template-columns:auto 1fr}
  .mp-integration-banner a{grid-column:1/-1;justify-content:center}
}

@media(max-width:720px){
  .mp-asset-universe-grid{grid-template-columns:1fr}
  .mp-market-complete-head h2{font-size:clamp(1.75rem,9vw,2.35rem)}
  .mp-asset-link{min-height:72px}
}
@media(max-width:590px){
  .mp-home-copy h1{font-size:clamp(2.45rem,12vw,3.35rem);letter-spacing:-.055em}
  .mp-home-primary-actions{display:grid}
  .mp-home-primary-actions a{width:100%}
  .mp-home-search-wrap .pi-search{border-radius:18px!important}
  .mp-home-search-hint{display:grid;gap:7px;margin-left:2px}
  .mp-home-search-hint span{align-items:flex-start}
  .mp-next-step-card{padding:20px;border-radius:23px}
  .mp-next-top{align-items:flex-start}
  .mp-next-status{font-size:.62rem}
  .mp-next-step-card>p{min-height:0}
  .mp-journey-grid,.mp-asset-universe-grid{grid-template-columns:1fr}
  .mp-central-section{padding-top:38px}
  .mp-market-complete{padding:20px;border-radius:23px}
  .mp-integration-banner{grid-template-columns:1fr;text-align:left;padding:16px}
  .mp-integration-banner>i{display:none}
  .mp-journey-line span{font-size:.59rem}
}

/* Assistente de Alocação Prime — integração da Fase 5 */
.mp-allocation-assistant{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:16px;padding:22px!important;border-color:#bfe1ea!important;background:radial-gradient(circle at 88% 20%,rgba(216,169,56,.14),transparent 24%),linear-gradient(135deg,#f1fbfd,#fff)!important}
.mp-allocation-assistant-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:17px;color:#087fa5;background:#dff5f8;font-size:1.15rem}
.mp-allocation-assistant h3{margin:5px 0 6px;font-size:1.12rem}.mp-allocation-assistant p{margin:0;color:#61798a;font-size:.82rem;line-height:1.55}
.mp-allocation-assistant .pi-button-gold{white-space:nowrap;text-decoration:none}
@media(max-width:820px){.mp-allocation-assistant{grid-template-columns:52px 1fr}.mp-allocation-assistant .pi-button-gold{grid-column:1/-1;width:100%;justify-content:center}}
