:root{
  --rosa-analise:#b72d31;
  --rosa-analise-soft:rgba(183,45,49,.16);
  --dourado:#d5ab2d;
  --bg-card:rgba(16,16,22,.88);
  --bg-card-2:rgba(21,21,28,.94);
  --borda-analise:rgba(255,255,255,.10);
  --texto-soft:#cfd0d8;
}

body.modal-open{
  overflow:hidden;
}

.analysis-hero{
  padding:56px 0 42px;
  border-bottom:1px solid var(--borda, rgba(255,255,255,.08));
  background:
    radial-gradient(circle at top right, rgba(183,45,49,.18), transparent 32%),
    linear-gradient(180deg, rgba(10,10,14,.98), rgba(12,12,18,.98));
}

.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
  align-items:center;
}

.hero-copy h1{
  font-size:clamp(2.4rem, 5vw, 4.8rem);
  line-height:1.02;
  max-width:760px;
  margin:0 0 18px;
}

.hero-text{
  max-width:760px;
  font-size:1.08rem;
  line-height:1.7;
  color:var(--texto-soft);
}

.kicker{
  display:block;
  margin-bottom:14px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.92rem;
  color:#de8f95;
}

.hero-side-card{
  background:linear-gradient(180deg, rgba(35,27,31,.95), rgba(24,21,29,.96));
  border:1px solid rgba(183,45,49,.25);
  border-radius:18px;
  padding:28px;
  box-shadow:0 20px 40px rgba(0,0,0,.25);
}

.hero-side-card h2{
  margin:0 0 14px;
  font-size:1.6rem;
}

.hero-side-card p{
  color:var(--texto-soft);
  line-height:1.75;
  margin-bottom:20px;
}

.analysis-library{
  padding-top:42px;
}

.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:28px;
  margin-bottom:18px;
}

.section-head h2{
  font-size:clamp(2rem, 4vw, 3rem);
  line-height:1.08;
  margin:0;
}

.section-note{
  max-width:420px;
  color:var(--texto-soft);
  line-height:1.7;
}

.filters{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin:18px 0 28px;
}

.filter-btn{
  border:1px solid var(--borda-analise);
  background:rgba(255,255,255,.03);
  color:#fff;
  border-radius:12px;
  padding:11px 18px;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease;
}

.filter-btn:hover,
.filter-btn.active{
  background:var(--rosa-analise-soft);
  border-color:rgba(183,45,49,.5);
}

.analysis-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.analysis-card{
  display:flex;
  flex-direction:column;
  background:linear-gradient(180deg, rgba(10,12,18,.96), rgba(17,17,25,.98));
  border:1px solid var(--borda-analise);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 16px 35px rgba(0,0,0,.18);
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
  min-height:100%;
}

.analysis-card:hover{
  transform:translateY(-3px);
  border-color:rgba(183,45,49,.35);
  box-shadow:0 22px 40px rgba(0,0,0,.24);
}

.analysis-card img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  background:#0f2f1f;
}

.analysis-card-body{
  padding:16px 16px 18px;
  display:flex;
  flex-direction:column;
  gap:12px;
  height:100%;
}

.card-pill{
  display:inline-flex;
  align-self:flex-start;
  min-height:38px;
  align-items:center;
  padding:0 14px;
  border-radius:11px;
  font-size:.92rem;
  font-weight:800;
  color:#fff;
  background:linear-gradient(180deg, rgba(98,22,26,.95), rgba(64,17,20,.95));
  border:1px solid rgba(183,45,49,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

.analysis-card h3{
  font-size:1.08rem;
  line-height:1.24;
  margin:0;
  min-height:2.48em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.analysis-card p{
  margin:0;
  color:var(--texto-soft);
  line-height:1.7;
  font-size:1rem;
  min-height:4.9em;
}

.read-link{
  margin-top:auto;
  align-self:flex-start;
  padding:0;
  border:none;
  background:none;
  color:#fff;
  font-size:1rem;
  font-weight:900;
  border-bottom:1px solid rgba(255,255,255,.35);
  cursor:pointer;
}

.read-link:hover{
  color:#f7d8da;
  border-color:#f7d8da;
}

.evolution-strip{
  margin-top:28px;
  padding:22px;
  border-radius:18px;
  border:1px solid var(--borda-analise);
  background:
    radial-gradient(circle at left top, rgba(183,45,49,.18), transparent 28%),
    linear-gradient(180deg, rgba(16,10,14,.98), rgba(14,14,20,.98));
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1.8fr);
  gap:18px;
  align-items:center;
}

.evolution-copy h2{
  margin:0 0 8px;
  font-size:clamp(1.8rem, 3vw, 2.4rem);
}

.evolution-copy p:last-child{
  margin:0;
  color:var(--texto-soft);
  line-height:1.7;
}

.evolution-steps{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:12px;
}

.step-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:94px;
  padding:14px;
  border-radius:16px;
  border:1px solid var(--borda-analise);
  background:rgba(255,255,255,.02);
  color:#fff;
}

.step-card:hover{
  border-color:rgba(183,45,49,.35);
}

.step-card span{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--rosa-analise);
  font-weight:900;
}

.step-card strong{
  line-height:1.2;
}

.modal-overlay{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(6,8,12,.72);
  backdrop-filter:blur(7px);
  z-index:9999;
}

.modal-overlay.show{
  display:flex;
}

.analysis-modal{
  width:min(760px, 100%);
  max-height:min(86vh, 760px);
  border:1px solid rgba(183,45,49,.28);
  border-radius:22px;
  background:linear-gradient(180deg, rgba(12,13,19,.98), rgba(18,18,26,.98));
  box-shadow:0 30px 70px rgba(0,0,0,.45);
  position:relative;
}

.modal-scroll{
  padding:26px;
  overflow:auto;
  max-height:min(86vh, 760px);
}

.modal-close{
  position:absolute;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid var(--borda-analise);
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
}

.modal-close:hover{
  background:rgba(255,255,255,.08);
}

.analysis-modal h2{
  font-size:clamp(2rem, 4vw, 3.45rem);
  line-height:1.02;
  margin:16px 0 18px;
  max-width:92%;
}

.modal-content p{
  color:#d8d8de;
  line-height:1.8;
  margin:0 0 18px;
  font-size:1.08rem;
}

.modal-next-step{
  margin-top:18px;
  padding:16px 18px;
  border-radius:16px;
  background:rgba(255,255,255,.03);
  border:1px solid var(--borda-analise);
}

.modal-next-step strong{
  display:block;
  margin-bottom:8px;
  font-size:1rem;
}

.modal-next-step p{
  color:var(--texto-soft);
  line-height:1.7;
  margin:0;
}

#modalCta{
  display:inline-flex;
  margin-top:18px;
}

@media (max-width: 1120px){
  .analysis-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .evolution-strip{
    grid-template-columns:1fr;
  }
}

@media (max-width: 920px){
  .hero-grid,
  .section-head{
    grid-template-columns:1fr;
    display:grid;
  }

  .hero-side-card{
    max-width:480px;
  }

  .section-note{
    max-width:none;
  }

  .evolution-steps{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width: 640px){
  .analysis-hero{
    padding:34px 0 28px;
  }

  .hero-copy h1{
    font-size:2.4rem;
  }

  .hero-text,
  .section-note,
  .analysis-card p,
  .modal-content p{
    font-size:.98rem;
  }

  .analysis-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .analysis-card-body{
    padding:14px;
    gap:10px;
  }

  .analysis-card h3{
    min-height:auto;
    font-size:1.12rem;
  }

  .analysis-card p{
    min-height:auto;
  }

  .evolution-steps{
    grid-template-columns:1fr;
  }

  .modal-overlay{
    padding:12px;
    align-items:center;
  }

  .analysis-modal{
    width:100%;
    max-height:88vh;
    border-radius:18px;
  }

  .modal-scroll{
    padding:18px 16px 20px;
  }

  .analysis-modal h2{
    margin-top:12px;
    font-size:2.05rem;
    max-width:100%;
  }

  .modal-close{
    top:10px;
    right:10px;
    width:38px;
    height:38px;
  }
}



/* =========================================================
   MOBILE PREMIUM - Página Análises
   Foco: melhorar estética e leitura no celular sem mexer no desktop
   ========================================================= */

@media (max-width: 760px){

  html{
    scroll-behavior:smooth;
  }

  body{
    background:
      radial-gradient(circle at 50% -120px, rgba(183,45,49,.18), transparent 320px),
      #090a0f;
  }

  /* Topbar mais leve no mobile */
  .topbar{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(9,10,15,.88);
    border-bottom:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  .topbar-inner{
    padding-top:14px;
    padding-bottom:10px;
    gap:12px;
  }

  .brand strong{
    font-size:1.04rem;
    letter-spacing:.01em;
  }

  .brand span{
    font-size:.78rem;
    opacity:.72;
  }

  .nav{
    width:100%;
    display:flex;
    gap:8px;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding:4px 0 2px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .nav::-webkit-scrollbar{
    display:none;
  }

  .nav a{
    flex:0 0 auto;
    white-space:nowrap;
    font-size:.86rem;
    padding:9px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.025);
    border:1px solid rgba(255,255,255,.06);
  }

  .nav a.ativa{
    background:linear-gradient(135deg, rgba(183,45,49,.30), rgba(70,20,24,.72));
    border-color:rgba(183,45,49,.45);
    box-shadow:0 8px 24px rgba(183,45,49,.12);
  }

  /* Hero mais editorial e menos cansativa */
  .analysis-hero{
    padding:28px 0 22px;
    border-bottom:1px solid rgba(255,255,255,.08);
    background:
      radial-gradient(circle at 94% 0%, rgba(183,45,49,.28), transparent 230px),
      radial-gradient(circle at 0% 26%, rgba(213,171,45,.07), transparent 220px),
      linear-gradient(180deg, rgba(10,10,15,.98), rgba(9,10,15,.98));
  }

  .hero-grid{
    gap:18px;
  }

  .kicker{
    margin-bottom:10px;
    font-size:.72rem;
    letter-spacing:.14em;
    color:#ef9ca5;
  }

  .hero-copy h1{
    max-width:100%;
    font-size:clamp(2.02rem, 10.4vw, 2.78rem);
    line-height:.98;
    letter-spacing:-.055em;
    margin-bottom:14px;
  }

  .hero-text{
    font-size:1.02rem;
    line-height:1.58;
    color:rgba(236,236,242,.80);
    max-width:32rem;
  }

  /* Card "Como usar" vira uma dica compacta e premium */
  .hero-side-card{
    max-width:none;
    padding:16px;
    border-radius:20px;
    background:
      linear-gradient(135deg, rgba(183,45,49,.16), rgba(255,255,255,.025)),
      rgba(15,15,22,.84);
    border:1px solid rgba(183,45,49,.26);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
    position:relative;
    overflow:hidden;
  }

  .hero-side-card::before{
    content:"Guia rápido";
    display:inline-flex;
    margin-bottom:9px;
    padding:5px 9px;
    border-radius:999px;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#ffd8dc;
    background:rgba(183,45,49,.24);
    border:1px solid rgba(183,45,49,.25);
  }

  .hero-side-card h2{
    font-size:1.28rem;
    margin-bottom:8px;
  }

  .hero-side-card p{
    margin-bottom:13px;
    font-size:.96rem;
    line-height:1.55;
    color:rgba(236,236,242,.78);
  }

  .hero-side-card .btn{
    width:100%;
    justify-content:center;
    min-height:46px;
    border-radius:14px;
  }

  /* Biblioteca mais limpa no mobile */
  .analysis-library{
    padding-top:28px;
  }

  .section-head{
    display:block;
    margin-bottom:14px;
  }

  .section-head h2{
    font-size:clamp(1.8rem, 8.7vw, 2.45rem);
    line-height:1.04;
    letter-spacing:-.045em;
    margin-bottom:10px;
  }

  .section-note{
    max-width:100%;
    font-size:.98rem;
    line-height:1.55;
    color:rgba(236,236,242,.73);
  }

  /* Filtros estilo app: horizontal, compacto e grudado no topo */
  .filters{
    position:sticky;
    top:92px;
    z-index:20;
    display:flex;
    flex-wrap:nowrap;
    overflow-x:auto;
    gap:9px;
    margin:16px -16px 18px;
    padding:10px 16px 12px;
    background:linear-gradient(180deg, rgba(9,10,15,.96), rgba(9,10,15,.82));
    border-top:1px solid rgba(255,255,255,.035);
    border-bottom:1px solid rgba(255,255,255,.055);
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .filters::-webkit-scrollbar{
    display:none;
  }

  .filter-btn{
    flex:0 0 auto;
    min-height:42px;
    padding:0 16px;
    border-radius:999px;
    font-size:.88rem;
    background:rgba(255,255,255,.045);
    border-color:rgba(255,255,255,.10);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }

  .filter-btn.active{
    background:linear-gradient(135deg, rgba(183,45,49,.36), rgba(79,19,24,.86));
    border-color:rgba(255,102,112,.42);
    box-shadow:0 10px 24px rgba(183,45,49,.16);
  }

  /* Cards com visual mais premium e legível */
  .analysis-grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .analysis-card{
    border-radius:22px;
    background:
      linear-gradient(180deg, rgba(11,16,23,.98), rgba(13,13,20,.98));
    border:1px solid rgba(125,160,190,.16);
    box-shadow:
      0 16px 42px rgba(0,0,0,.30),
      inset 0 1px 0 rgba(255,255,255,.035);
  }

  .analysis-card:hover{
    transform:none;
  }

  .analysis-card img{
    width:calc(100% - 26px);
    margin:13px 13px 0;
    border-radius:17px;
    aspect-ratio:16/8.8;
    object-fit:cover;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 12px 30px rgba(0,0,0,.18);
  }

  .analysis-card-body{
    padding:16px 18px 18px;
    gap:11px;
  }

  .card-pill{
    min-height:34px;
    padding:0 13px;
    border-radius:12px;
    font-size:.82rem;
    letter-spacing:.01em;
    background:
      linear-gradient(135deg, rgba(183,45,49,.62), rgba(84,21,27,.96));
    border-color:rgba(255,116,126,.25);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.08),
      0 8px 22px rgba(183,45,49,.13);
  }

  .analysis-card h3{
    min-height:auto;
    font-size:1.23rem;
    line-height:1.18;
    letter-spacing:-.018em;
    -webkit-line-clamp:3;
  }

  .analysis-card p{
    min-height:auto;
    font-size:1.01rem;
    line-height:1.52;
    color:rgba(235,236,242,.75);
  }

  .read-link{
    margin-top:4px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:.98rem;
    color:#fff;
    border-bottom:none;
    text-decoration:none;
  }

  .read-link::after{
    content:"→";
    font-size:1.05rem;
    transform:translateY(-1px);
    opacity:.88;
  }

  .read-link{
    padding:10px 0 2px;
    background:
      linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;
  }

  /* Trilha final vira bloco de conversão mais elegante */
  .evolution-strip{
    margin-top:22px;
    padding:18px;
    border-radius:22px;
    background:
      radial-gradient(circle at 100% 0%, rgba(183,45,49,.22), transparent 220px),
      rgba(15,15,22,.92);
  }

  .evolution-copy h2{
    font-size:1.55rem;
    letter-spacing:-.02em;
  }

  .evolution-copy p:last-child{
    font-size:.98rem;
    line-height:1.55;
  }

  .evolution-steps{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }

  .step-card{
    min-height:82px;
    padding:12px;
    border-radius:16px;
    background:rgba(255,255,255,.035);
  }

  .step-card span{
    width:28px;
    height:28px;
    font-size:.86rem;
  }

  .step-card strong{
    font-size:.9rem;
  }

  /* Modal mais confortável no mobile */
  .modal-overlay{
    align-items:flex-end;
    padding:0;
    background:rgba(5,6,10,.72);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  .analysis-modal{
    width:100%;
    max-height:86vh;
    border-radius:24px 24px 0 0;
    border-left:none;
    border-right:none;
    border-bottom:none;
    background:
      radial-gradient(circle at top right, rgba(183,45,49,.18), transparent 240px),
      linear-gradient(180deg, rgba(16,17,25,.99), rgba(11,12,18,.99));
    box-shadow:0 -20px 60px rgba(0,0,0,.48);
  }

  .analysis-modal::before{
    content:"";
    position:absolute;
    top:9px;
    left:50%;
    width:48px;
    height:5px;
    transform:translateX(-50%);
    border-radius:999px;
    background:rgba(255,255,255,.18);
  }

  .modal-scroll{
    padding:28px 18px calc(24px + env(safe-area-inset-bottom));
    max-height:86vh;
  }

  .modal-close{
    top:14px;
    right:14px;
    width:40px;
    height:40px;
    border-radius:14px;
    background:rgba(255,255,255,.06);
  }

  .analysis-modal h2{
    font-size:clamp(1.75rem, 8.5vw, 2.35rem);
    line-height:1.05;
    letter-spacing:-.035em;
    margin:14px 48px 16px 0;
  }

  .modal-content p{
    font-size:1.01rem;
    line-height:1.68;
    color:rgba(241,241,246,.82);
  }

  .modal-next-step{
    padding:15px;
    border-radius:18px;
    background:rgba(255,255,255,.04);
    border-color:rgba(255,255,255,.09);
  }

  #modalCta{
    width:100%;
    justify-content:center;
    min-height:48px;
    border-radius:14px;
    margin-top:16px;
  }

  .footer{
    padding-bottom:calc(20px + env(safe-area-inset-bottom));
  }
}

@media (max-width: 380px){
  .hero-copy h1{
    font-size:2rem;
  }

  .section-head h2{
    font-size:1.78rem;
  }

  .analysis-card h3{
    font-size:1.14rem;
  }

  .analysis-card p{
    font-size:.95rem;
  }

  .evolution-steps{
    grid-template-columns:1fr;
  }
}



/* =========================================================
   MOBILE PREMIUM V2 - Correção segura
   Motivo: filtros não ficam mais grudados na tela; cards mais compactos;
   visual mobile mais limpo sem alterar o desktop.
   ========================================================= */

@media (max-width: 760px){

  /* Evita qualquer estouro lateral */
  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }

  .container{
    width:100%;
    max-width:100%;
    padding-left:18px;
    padding-right:18px;
  }

  /* Header mobile mais organizado, sem botão gigante único */
  .topbar{
    position:relative !important;
    top:auto !important;
    background:rgba(9,10,15,.98);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }

  .topbar-inner{
    padding:18px 18px 14px;
  }

  .brand{
    margin-bottom:12px;
  }

  .brand strong{
    font-size:1rem;
  }

  .brand span{
    font-size:.78rem;
  }

  .nav{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr);
    gap:8px;
    width:100%;
    overflow:visible !important;
    padding:0;
  }

  .nav a{
    width:100%;
    text-align:center;
    justify-content:center;
    font-size:.82rem;
    padding:10px 8px;
    border-radius:14px;
    white-space:nowrap;
    background:rgba(255,255,255,.025);
    border:1px solid rgba(255,255,255,.06);
  }

  .nav a.ativa{
    background:linear-gradient(135deg, rgba(183,45,49,.28), rgba(63,17,22,.72));
    border-color:rgba(183,45,49,.45);
  }

  /* Hero mais compacto para a pessoa chegar nos cards mais rápido */
  .analysis-hero{
    padding:30px 0 22px !important;
  }

  .hero-grid{
    gap:14px !important;
  }

  .kicker{
    font-size:.70rem !important;
    letter-spacing:.13em;
    margin-bottom:9px !important;
  }

  .hero-copy h1{
    font-size:clamp(1.86rem, 9.4vw, 2.46rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.045em;
    margin-bottom:12px !important;
  }

  .hero-text{
    font-size:.96rem !important;
    line-height:1.52 !important;
    color:rgba(238,238,244,.76);
  }

  /* Como usar menos alto e mais elegante */
  .hero-side-card{
    padding:15px !important;
    border-radius:18px !important;
    margin-top:2px;
  }

  .hero-side-card::before{
    font-size:.66rem !important;
    padding:4px 8px !important;
    margin-bottom:8px !important;
  }

  .hero-side-card h2{
    font-size:1.18rem !important;
    margin-bottom:7px !important;
  }

  .hero-side-card p{
    font-size:.91rem !important;
    line-height:1.48 !important;
    margin-bottom:12px !important;
  }

  .hero-side-card .btn{
    min-height:42px !important;
    font-size:.92rem;
    border-radius:12px;
  }

  /* Título da biblioteca mais curto visualmente */
  .analysis-library{
    padding-top:26px !important;
  }

  .section-head{
    margin-bottom:12px !important;
  }

  .section-head h2{
    font-size:clamp(1.62rem, 7.6vw, 2.1rem) !important;
    line-height:1.08 !important;
    letter-spacing:-.035em;
  }

  .section-note{
    font-size:.92rem !important;
    line-height:1.5 !important;
    color:rgba(236,236,242,.70);
  }

  /* CORREÇÃO PRINCIPAL: filtros NÃO descem com a página */
  .filters{
    position:static !important;
    top:auto !important;
    z-index:auto !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:8px !important;
    margin:14px 0 18px !important;
    padding:0 0 4px !important;
    background:transparent !important;
    border:0 !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .filters::-webkit-scrollbar{
    display:none;
  }

  .filter-btn{
    flex:0 0 auto;
    min-height:38px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:.82rem !important;
    background:rgba(255,255,255,.04) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:none !important;
  }

  .filter-btn.active{
    background:linear-gradient(135deg, rgba(183,45,49,.34), rgba(70,18,22,.82)) !important;
    border-color:rgba(255,112,122,.40) !important;
  }

  /* Cards mais compactos e sem sensação de estar fugindo */
  .analysis-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .analysis-card{
    width:100%;
    max-width:100%;
    border-radius:18px !important;
    overflow:hidden;
    background:linear-gradient(180deg, rgba(11,13,20,.97), rgba(14,14,21,.98)) !important;
    border:1px solid rgba(255,255,255,.09) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.26) !important;
  }

  .analysis-card img{
    width:100% !important;
    margin:0 !important;
    border-radius:0 !important;
    aspect-ratio:16/8.2 !important;
    object-fit:cover !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .analysis-card-body{
    padding:14px 15px 15px !important;
    gap:9px !important;
  }

  .card-pill{
    min-height:30px !important;
    padding:0 11px !important;
    border-radius:10px !important;
    font-size:.76rem !important;
    line-height:1;
    background:linear-gradient(135deg, rgba(162,38,44,.88), rgba(82,22,26,.94)) !important;
  }

  .analysis-card h3{
    font-size:1.08rem !important;
    line-height:1.22 !important;
    letter-spacing:-.012em;
    margin:0 !important;
    display:block !important;
    overflow:visible !important;
    -webkit-line-clamp:unset !important;
    min-height:auto !important;
  }

  .analysis-card p{
    font-size:.93rem !important;
    line-height:1.48 !important;
    color:rgba(238,238,244,.72) !important;
    min-height:auto !important;
    margin:0 !important;
  }

  .read-link{
    font-size:.92rem !important;
    padding-top:4px !important;
    margin-top:2px !important;
    border-bottom:1px solid rgba(255,255,255,.46) !important;
    background:none !important;
  }

  .read-link::after{
    content:" →";
    font-size:.95rem;
  }

  /* Trilha final mais compacta */
  .evolution-strip{
    margin-top:20px !important;
    padding:16px !important;
    border-radius:18px !important;
  }

  .evolution-copy h2{
    font-size:1.38rem !important;
  }

  .evolution-copy p:last-child{
    font-size:.92rem !important;
    line-height:1.48 !important;
  }

  .evolution-steps{
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
  }

  .step-card{
    min-height:74px !important;
    padding:11px !important;
    border-radius:14px !important;
  }

  .step-card span{
    width:25px !important;
    height:25px !important;
    font-size:.78rem !important;
  }

  .step-card strong{
    font-size:.83rem !important;
    line-height:1.15 !important;
  }

  /* Modal: bottom sheet mantido, mas mais leve */
  .modal-overlay{
    align-items:flex-end !important;
    padding:0 !important;
  }

  .analysis-modal{
    max-height:84vh !important;
    border-radius:22px 22px 0 0 !important;
  }

  .modal-scroll{
    max-height:84vh !important;
    padding:26px 17px calc(22px + env(safe-area-inset-bottom)) !important;
  }

  .analysis-modal h2{
    font-size:clamp(1.55rem, 7.7vw, 2.1rem) !important;
    line-height:1.08 !important;
  }

  .modal-content p{
    font-size:.96rem !important;
    line-height:1.62 !important;
  }

  #modalCta{
    width:100% !important;
    justify-content:center !important;
  }
}

@media (max-width: 380px){
  .container{
    padding-left:14px;
    padding-right:14px;
  }

  .nav{
    grid-template-columns:repeat(2, 1fr);
  }

  .hero-copy h1{
    font-size:1.76rem !important;
  }

  .section-head h2{
    font-size:1.52rem !important;
  }

  .analysis-card h3{
    font-size:1rem !important;
  }

  .analysis-card p{
    font-size:.88rem !important;
  }

  .evolution-steps{
    grid-template-columns:1fr !important;
  }
}



/* =========================================================
   MOBILE CLEAN V3 - Ajuste final
   - Remove o card "Guia rápido / Como usar" no mobile
   - Filtros viram grade 2x2 para não cortar "Comunicação"
   - Hero fica mais limpa e leva o usuário mais rápido aos cards
   ========================================================= */

@media (max-width: 760px){

  /* Remove o bloco "Como usar" somente no mobile */
  .hero-side-card{
    display:none !important;
  }

  .analysis-hero{
    padding:28px 0 20px !important;
  }

  .hero-grid{
    display:block !important;
  }

  .hero-copy h1{
    font-size:clamp(1.78rem, 8.8vw, 2.35rem) !important;
    line-height:1.04 !important;
    letter-spacing:-.04em !important;
    margin-bottom:12px !important;
  }

  .hero-text{
    font-size:.94rem !important;
    line-height:1.5 !important;
    max-width:100% !important;
  }

  .analysis-library{
    padding-top:24px !important;
  }

  .section-head h2{
    font-size:clamp(1.52rem, 7.2vw, 2rem) !important;
    line-height:1.1 !important;
  }

  .section-note{
    font-size:.9rem !important;
    line-height:1.48 !important;
  }

  /* Filtros fixos removidos e sem corte: 2 colunas no mobile */
  .filters{
    position:static !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    overflow:visible !important;
    margin:16px 0 18px !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
  }

  .filter-btn{
    width:100% !important;
    min-width:0 !important;
    min-height:42px !important;
    padding:0 10px !important;
    border-radius:14px !important;
    font-size:.88rem !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  /* Cards um pouco mais compactos */
  .analysis-card{
    border-radius:17px !important;
  }

  .analysis-card img{
    aspect-ratio:16/8.6 !important;
  }

  .analysis-card-body{
    padding:13px 14px 15px !important;
  }

  .analysis-card h3{
    font-size:1.05rem !important;
    line-height:1.22 !important;
  }

  .analysis-card p{
    font-size:.91rem !important;
    line-height:1.46 !important;
  }

  .card-pill{
    min-height:29px !important;
    font-size:.74rem !important;
    padding:0 10px !important;
  }

  .read-link{
    font-size:.91rem !important;
  }
}

@media (max-width: 380px){
  .filters{
    gap:8px !important;
  }

  .filter-btn{
    font-size:.82rem !important;
    padding:0 8px !important;
  }

  .hero-copy h1{
    font-size:1.68rem !important;
  }

  .section-head h2{
    font-size:1.46rem !important;
  }
}
