/* Colégio Aprendiz — refinamentos v3.3 stable
   Camada final: corrige wrappers do Elementor, consolida a home como referência
   visual e dá às páginas internas composições próprias sem trocar a identidade. */

/* --------------------------------------------------------------------------
   1. SHELL ELEMENTOR: sem gaps artificiais entre widgets/seções
   -------------------------------------------------------------------------- */
.aprendiz-site-shell,
.aprendiz-site-shell .aprendiz-page-main,
.aprendiz-site-shell .aprendiz-page-main > .elementor {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.aprendiz-site-shell .aprendiz-section-shell {
  --gap: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
  --widgets-spacing: 0px;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

.aprendiz-site-shell .aprendiz-section-shell > .e-con-inner,
.aprendiz-site-shell .aprendiz-section-shell > .elementor-element,
.aprendiz-site-shell .aprendiz-section-shell > .elementor-widget,
.aprendiz-site-shell .aprendiz-section-shell > .elementor-widget > .elementor-widget-container {
  margin-block: 0 !important;
  margin-inline: 0 !important;
  padding-block: 0;
  gap: 0 !important;
}

.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-hero,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-divider,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-about,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-differentials,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-segments,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-testimonials,
.aprendiz-site-shell .elementor-widget-aprendiz-instagram-feed,
.aprendiz-site-shell .elementor-widget-aprendiz-home-latest-blog,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-faq,
.aprendiz-site-shell .elementor-widget-aprendiz-exact-home-location {
  margin-block: 0 !important;
}

/* Os globais são templates Elementor reais, mas os wrappers de documento não
   podem limitar sticky, largura ou introduzir espaços entre aviso/header/footer. */
.aprendiz-global-header-slot,
.aprendiz-global-footer-slot,
.aprendiz-global-modal-slot {
  display: contents;
}

.aprendiz-global-header-slot > .elementor,
.aprendiz-global-header-slot .aprendiz-section-shell,
.aprendiz-global-header-slot .elementor-widget,
.aprendiz-global-header-slot .elementor-widget-container,
.aprendiz-global-footer-slot > .elementor,
.aprendiz-global-footer-slot .aprendiz-section-shell,
.aprendiz-global-modal-slot > .elementor,
.aprendiz-global-modal-slot .aprendiz-section-shell {
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

.aprendiz-global-header-slot > .elementor,
.aprendiz-global-header-slot .aprendiz-section-shell,
.aprendiz-global-header-slot .elementor-widget,
.aprendiz-global-header-slot .elementor-widget-container {
  display: contents;
}

.aprendiz-site-shell .site-header {
  position: sticky;
  top: 0;
  z-index: 980;
}

.aprendiz-site-shell .top-bar-notice {
  margin: 0 !important;
}

.aprendiz-site-shell .site-footer {
  margin-top: 0 !important;
}

/* --------------------------------------------------------------------------
   2. TIPOGRAFIA CANÔNICA DA HOME
   -------------------------------------------------------------------------- */
.aprendiz-page-inicio .about-overview-section .section-title,
.aprendiz-page-inicio .about-overview-section .section-title span,
.aprendiz-page-inicio .about-overview-section .section-title em,
.aprendiz-page-inicio #diferenciais .section-title,
.aprendiz-page-inicio #diferenciais .section-title span,
.aprendiz-page-inicio #segmentos .section-title,
.aprendiz-page-inicio #segmentos .section-title span,
.aprendiz-page-inicio #faq .section-title,
.aprendiz-page-inicio #faq .section-title span,
.aprendiz-site-shell .aprendiz-compact-title,
.aprendiz-page-contato .aprendiz-contact-form-panel > h1 {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
}

/* Títulos editoriais internos seguem a mesma assinatura, não uma fonte SaaS. */
.aprendiz-site-shell .internal-hero-title,
.aprendiz-site-shell .page-editorial-hero .editorial-hero-title,
.aprendiz-site-shell .blog-story-hero .internal-hero-title,
.aprendiz-site-shell .estrutura-story-hero .internal-hero-title,
.aprendiz-site-shell .contato-story-hero .internal-hero-title {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
}

.aprendiz-site-shell .internal-hero-title .highlight-script,
.aprendiz-site-shell .editorial-hero-title .highlight-script {
  font-family: inherit !important;
  font-weight: inherit !important;
}

/* --------------------------------------------------------------------------
   3. INSTAGRAM — widget dedicado, sem comentários/estrutura vazando como texto
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .insta-editorial-shell {
  position: relative;
  z-index: 2;
  text-align: center;
}

.aprendiz-site-shell .insta-main-title {
  margin: .5rem auto .85rem;
}

.aprendiz-site-shell .insta-main-copy {
  max-width: 680px;
  margin: 0 auto 2.5rem;
  color: #CBD5E1;
  font-size: 1.05rem;
  line-height: 1.65;
}

.aprendiz-site-shell .insta-feed-card {
  color: #1A1A1A;
}

.aprendiz-site-shell .insta-feed-card:focus-visible {
  outline: 3px solid rgba(237, 125, 4, .75);
  outline-offset: 4px;
}

/* --------------------------------------------------------------------------
   4. HERO INTERNO — linguagem derivada da home, com fotografia real
   -------------------------------------------------------------------------- */
.aprendiz-internal-hero,
.aprendiz-site-shell .page-editorial-hero {
  position: relative;
  overflow: clip;
  background:
    radial-gradient(circle at 92% 10%, rgba(237, 125, 4, .09), transparent 30%),
    linear-gradient(180deg, #FAFAF8 0%, #FFFFFF 100%);
  padding: clamp(3.4rem, 6vw, 5.6rem) 1.5rem clamp(3.25rem, 5vw, 4.8rem);
  border: 0;
}

.aprendiz-internal-hero::after,
.aprendiz-site-shell .page-editorial-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(39, 42, 90, .13), rgba(237, 125, 4, .18), transparent);
}

.aprendiz-site-shell .page-editorial-hero::before {
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(237, 125, 4, .09), transparent 68%);
}

.internal-hero-grid,
.aprendiz-site-shell .editorial-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
  align-items: center;
  gap: clamp(2.5rem, 5vw, 5.5rem);
}

.internal-hero-copy,
.aprendiz-site-shell .editorial-hero-content {
  min-width: 0;
  text-align: left;
  align-items: flex-start;
}

.internal-hero-title,
.aprendiz-site-shell .editorial-hero-title {
  max-width: 760px;
  margin: .9rem 0 1.15rem;
  color: var(--aprendiz-navy);
  font-size: clamp(3rem, 5.25vw, 5rem);
  line-height: .98;
  text-wrap: balance;
}

.internal-hero-title .highlight-script,
.aprendiz-site-shell .editorial-hero-title .highlight-script {
  color: var(--aprendiz-orange);
}

.internal-hero-lead,
.aprendiz-site-shell .editorial-hero-lead {
  max-width: 650px;
  margin: 0 0 1.85rem;
  color: var(--aprendiz-text-muted);
  font-size: clamp(1rem, 1.25vw, 1.13rem);
  line-height: 1.72;
}

.internal-hero-actions,
.aprendiz-site-shell .editorial-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin: 0 0 1.8rem;
}

.internal-hero-visual,
.aprendiz-site-shell .editorial-hero-media {
  min-width: 0;
  position: relative;
}

/* Segmentos + Sobre: a fotografia vira a assinatura, não um card genérico. */
.aprendiz-site-shell .page-editorial-hero .editorial-hero-photo-card {
  border-radius: 30px 30px 30px 9rem;
  border: 0;
  box-shadow: 0 28px 70px rgba(10, 25, 49, .14);
  background: #fff;
}

.aprendiz-site-shell .page-editorial-hero .editorial-hero-photo-card::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 55%, rgba(10,25,49,.18));
}

.aprendiz-site-shell .page-editorial-hero .editorial-hero-photo-card img {
  min-height: 470px;
  max-height: 560px;
  object-fit: cover;
}

.aprendiz-site-shell .editorial-hero-float-badge {
  left: 1rem;
  right: auto;
  bottom: 1rem;
  max-width: min(86%, 390px);
  border-radius: 18px;
}

.aprendiz-site-shell .editorial-hero-pills {
  margin-top: 1rem;
  gap: .55rem;
}

.aprendiz-site-shell .editorial-hero-pill-link {
  background: rgba(255,255,255,.96);
  border-color: rgba(39,42,90,.12);
  box-shadow: 0 6px 18px rgba(10,25,49,.05);
}

.aprendiz-site-shell .editorial-hero-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .6rem 1rem;
  padding-top: 1.15rem;
  border-top: 1px solid rgba(39,42,90,.09);
}

.aprendiz-site-shell .editorial-hero-stat-item {
  align-items: flex-start;
  line-height: 1.4;
}

/* Estrutura: mosaico fotográfico assimétrico. */
.structure-photo-story {
  min-height: 520px;
  display: grid;
  grid-template-columns: 1.22fr .78fr;
  grid-template-rows: 1fr 1fr;
  gap: .75rem;
  padding: .75rem;
  border-radius: 34px;
  background: var(--aprendiz-navy-dark);
  box-shadow: 0 30px 70px rgba(10,25,49,.18);
}

.structure-photo {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  min-width: 0;
  min-height: 0;
}

.structure-photo--main { grid-row: 1 / 3; border-bottom-left-radius: 7rem; }
.structure-photo img { width:100%; height:100%; object-fit:cover; display:block; }

.internal-visual-caption {
  position: absolute;
  left: 1.6rem;
  bottom: 1.6rem;
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .72rem .9rem;
  border-radius: 15px;
  color: #fff;
  background: rgba(10,25,49,.9);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 12px 32px rgba(0,0,0,.22);
  backdrop-filter: blur(10px);
}
.internal-visual-caption i { color:var(--aprendiz-orange); }
.internal-visual-caption div { display:flex; flex-direction:column; line-height:1.3; }
.internal-visual-caption strong { font-size:.88rem; }
.internal-visual-caption span { color:#CBD5E1; font-size:.76rem; }

.internal-proof-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .65rem;
  max-width: 650px;
}

.internal-proof-item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  gap: .45rem;
  padding: .65rem 0;
  border-bottom: 1px solid rgba(39,42,90,.09);
}
.internal-proof-item strong { color:var(--aprendiz-orange); font:800 1.05rem/1 'Outfit',sans-serif; }
.internal-proof-item span { color:var(--aprendiz-navy); font-size:.83rem; font-weight:650; line-height:1.35; }

/* Blog: capa editorial, não um painel de stats. */
.blog-editorial-board {
  display: grid;
  grid-template-columns: 1fr;
  gap: .7rem;
  padding: .8rem;
  border-radius: 32px;
  background: var(--aprendiz-navy-dark);
  box-shadow: 0 30px 70px rgba(10,25,49,.18);
}

.blog-editorial-image {
  position: relative;
  overflow: hidden;
  min-height: 300px;
  border-radius: 24px 24px 7rem 24px;
}
.blog-editorial-image img { width:100%;height:100%;object-fit:cover;display:block; }
.blog-editorial-image::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(10,25,49,.35)); }

.blog-editorial-note {
  margin: -4.5rem 1rem 0 auto;
  width: min(86%, 390px);
  position: relative;
  z-index: 2;
  padding: 1.1rem 1.2rem;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(0,0,0,.18);
}
.blog-editorial-kicker { display:block;color:var(--aprendiz-orange);font:800 .72rem/1 'Outfit',sans-serif;text-transform:uppercase;letter-spacing:.11em;margin-bottom:.35rem; }
.blog-editorial-note strong { display:block;color:var(--aprendiz-navy);font:800 1.1rem/1.25 'Outfit',sans-serif;margin-bottom:.35rem; }
.blog-editorial-note p { margin:0;color:var(--aprendiz-text-muted);font-size:.84rem;line-height:1.5; }

.blog-topic-strip {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: .45rem;
}
.blog-topic-strip > div { padding:.85rem .75rem;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09); }
.blog-topic-strip strong { display:block;color:#fff;font:750 .83rem/1.2 'Outfit',sans-serif;margin-bottom:.2rem; }
.blog-topic-strip span { display:block;color:#9FB0C5;font-size:.7rem;line-height:1.35; }

/* Contato: recepção + canais oficiais em uma única peça visual. */
.contact-hub-card {
  position: relative;
  padding: .8rem;
  border-radius: 32px;
  background: var(--aprendiz-navy-dark);
  box-shadow: 0 30px 70px rgba(10,25,49,.18);
}
.contact-hub-photo { height: 250px; overflow:hidden; border-radius:24px 24px 24px 6rem; }
.contact-hub-photo img { width:100%;height:100%;object-fit:cover;display:block; }
.contact-hub-panel { margin-top:.7rem; display:grid; gap:.15rem; }
.contact-hub-row { display:grid; grid-template-columns:38px minmax(0,1fr);gap:.7rem;align-items:center;padding:.7rem .65rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.09); }
.contact-hub-row i { width:38px;height:38px;border-radius:12px;background:rgba(237,125,4,.13);color:var(--aprendiz-orange);display:grid;place-items:center; }
.contact-hub-row div { display:flex;flex-direction:column;min-width:0; }
.contact-hub-row strong { font:750 .9rem/1.25 'Outfit',sans-serif;overflow-wrap:anywhere; }
.contact-hub-row span { color:#AFC0D1;font-size:.74rem;line-height:1.35; }
.contact-hub-response { display:flex;align-items:center;gap:.45rem;margin:.65rem .4rem .15rem;padding:.65rem .75rem;border-radius:14px;background:rgba(255,255,255,.07);color:#fff;font-size:.75rem; }
.contact-hub-response strong { color:#fff;font:800 .9rem/1 'Outfit',sans-serif; }
.contact-hub-response span:last-child { color:#C7D3DF; }
.pulse-dot { width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 5px rgba(34,197,94,.12); }

/* --------------------------------------------------------------------------
   5. CORPO DAS PÁGINAS INTERNAS — tira o aspecto de template genérico
   -------------------------------------------------------------------------- */
.aprendiz-page-segmentos .section-wrapper,
.aprendiz-page-sobre .section-wrapper,
.aprendiz-page-estrutura .section-wrapper,
.aprendiz-page-contato .section-wrapper,
.aprendiz-page-blog .section-wrapper {
  border-radius: 0 !important;
}

.aprendiz-page-sobre .diff-watermark-number {
  display: none;
}

.aprendiz-page-sobre .diff-card-v2,
.aprendiz-page-estrutura .gallery-card,
.aprendiz-page-blog .blog-card {
  border-color: rgba(39,42,90,.09);
  box-shadow: 0 10px 34px rgba(10,25,49,.055);
}

.aprendiz-page-segmentos .about-overview-grid {
  gap: clamp(2.25rem, 4vw, 4rem);
}

.aprendiz-page-segmentos .about-overview-grid:nth-child(even) .about-narrative-block {
  order: 2;
}

.aprendiz-page-estrutura .estrutura-gallery-grid {
  gap: 1.25rem;
}

.aprendiz-page-blog .aprendiz-blog-dynamic {
  background:
    radial-gradient(circle at 8% 4%, rgba(237,125,4,.05), transparent 28%),
    #FAFAF8 !important;
}

.aprendiz-page-blog .blog-cards-grid {
  align-items: stretch;
}

/* Legal: simples, institucional e legível; sem "hero premium" genérico. */
.aprendiz-page-politica-de-privacidade .legal-hero-section,
.aprendiz-page-termos-de-uso .legal-hero-section {
  background: #FAFAF8;
  color: var(--aprendiz-navy);
  border-radius: 0;
  border-bottom: 1px solid rgba(39,42,90,.08);
}

/* --------------------------------------------------------------------------
   6. MOBILE DEDICADO
   -------------------------------------------------------------------------- */
@media (max-width: 1023px) {
  .internal-hero-grid,
  .aprendiz-site-shell .editorial-hero-grid {
    grid-template-columns: minmax(0,1fr);
    gap: 2rem;
  }

  .internal-hero-copy,
  .aprendiz-site-shell .editorial-hero-content {
    max-width: 760px;
  }

  .structure-photo-story { min-height: 470px; }
}

@media (max-width: 767px) {
  .aprendiz-site-shell .aprendiz-section-shell,
  .aprendiz-site-shell .aprendiz-section-shell > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  .aprendiz-internal-hero,
  .aprendiz-site-shell .page-editorial-hero {
    padding: 2.35rem 1.05rem 2.7rem;
  }

  .internal-hero-title,
  .aprendiz-site-shell .editorial-hero-title {
    margin-top: .72rem;
    font-size: clamp(2.45rem, 12vw, 3.35rem);
    line-height: .99;
  }

  .internal-hero-lead,
  .aprendiz-site-shell .editorial-hero-lead {
    font-size: .96rem;
    line-height: 1.62;
    margin-bottom: 1.35rem;
  }

  .internal-hero-actions,
  .aprendiz-site-shell .editorial-hero-actions {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    width: 100%;
    gap: .65rem;
  }

  .internal-hero-actions > *,
  .aprendiz-site-shell .editorial-hero-actions > * {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-content: center;
    text-align: center;
    white-space: normal;
  }

  .aprendiz-site-shell .editorial-hero-stats,
  .internal-proof-grid {
    grid-template-columns: minmax(0,1fr);
    gap: .1rem;
  }

  .aprendiz-site-shell .page-editorial-hero .editorial-hero-photo-card {
    border-radius: 22px 22px 22px 4.5rem;
  }

  .aprendiz-site-shell .page-editorial-hero .editorial-hero-photo-card img {
    min-height: 340px;
    max-height: 420px;
  }

  .aprendiz-site-shell .editorial-hero-float-badge {
    max-width: calc(100% - 1.5rem);
    left: .75rem;
    bottom: .75rem;
  }

  .structure-photo-story {
    min-height: 0;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 280px 150px;
    padding: .55rem;
    gap: .55rem;
    border-radius: 24px;
  }

  .structure-photo--main { grid-column: 1 / 3; grid-row: 1; border-radius:18px 18px 18px 4.5rem; }
  .structure-photo--class { grid-column:1;grid-row:2;border-radius:15px; }
  .structure-photo--kids { grid-column:2;grid-row:2;border-radius:15px; }
  .internal-visual-caption { left:.9rem;bottom:.9rem;padding:.6rem .7rem; }

  .blog-editorial-board,
  .contact-hub-card {
    border-radius: 24px;
    padding: .55rem;
  }

  .blog-editorial-image { min-height: 250px;border-radius:18px 18px 4.5rem 18px; }
  .blog-editorial-note { margin:-3.8rem .65rem 0 auto;width:calc(100% - 1.3rem); }
  .blog-topic-strip { grid-template-columns:1fr; }
  .blog-topic-strip > div { display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:baseline; }
  .blog-topic-strip strong { margin:0; }

  .contact-hub-photo { height:220px;border-radius:18px 18px 18px 4.5rem; }
  .contact-hub-row { padding:.72rem .55rem; }

  .aprendiz-site-shell .insta-main-copy {
    font-size: .93rem;
    margin-bottom: 1.55rem;
  }

  /* Instagram no telefone funciona como trilho real, não cards espremidos. */
  .aprendiz-site-shell .insta-carousel-viewport {
    width: calc(100% + 1.05rem);
    margin-right: -1.05rem;
    padding-right: 1.05rem;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .aprendiz-site-shell .insta-carousel-viewport::-webkit-scrollbar { display:none; }
  .aprendiz-site-shell .insta-carousel-track { transform:none !important; transition:none !important; width:max-content; }
  .aprendiz-site-shell .insta-feed-card { flex:0 0 min(82vw, 310px);scroll-snap-align:start; }

  .aprendiz-page-segmentos .about-overview-grid:nth-child(even) .about-narrative-block {
    order: initial;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aprendiz-site-shell .insta-carousel-track,
  .aprendiz-site-shell .insta-feed-card,
  .aprendiz-site-shell .gallery-card,
  .aprendiz-site-shell .blog-card,
  .aprendiz-site-shell .editorial-hero-pill-link {
    transition: none !important;
    transform: none !important;
  }
}

/* --------------------------------------------------------------------------
   9. ROBUSTEZ DO SHELL — wrappers não criam “faixas vazias” entre seções
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .aprendiz-page-main > .elementor,
.aprendiz-site-shell .aprendiz-page-main > .elementor > .e-con,
.aprendiz-site-shell .aprendiz-page-main > .elementor > .elementor-section {
  --widgets-spacing: 0px;
  --container-widget-spacing: 0px;
  --container-widget-flex-grow: 0;
  margin-block: 0 !important;
  padding-block: 0 !important;
  gap: 0 !important;
}

.aprendiz-site-shell .aprendiz-page-main .aprendiz-section-shell,
.aprendiz-site-shell .aprendiz-page-main .aprendiz-section-shell > .e-con-inner,
.aprendiz-site-shell .aprendiz-page-main .aprendiz-section-shell > .elementor-widget,
.aprendiz-site-shell .aprendiz-page-main .aprendiz-section-shell > .elementor-widget > .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

.aprendiz-site-shell .aprendiz-page-main .aprendiz-section-shell + .aprendiz-section-shell {
  margin-top: 0 !important;
}

.admin-bar.aprendiz-site-shell .site-header { top: 32px; }
@media (max-width: 782px) {
  .admin-bar.aprendiz-site-shell .site-header { top: 46px; }
}

/* --------------------------------------------------------------------------
   10. SEGMENTOS — cinco capítulos reais, não uma sequência de cards genéricos
   -------------------------------------------------------------------------- */
.aprendiz-page-segmentos .segment-chapter {
  position: relative;
  overflow: clip;
  isolation: isolate;
}

.aprendiz-page-segmentos .segment-chapter::before {
  position: absolute;
  top: clamp(2rem, 4vw, 3.75rem);
  left: max(1.5rem, calc((100vw - 1280px) / 2));
  z-index: 0;
  font-family: 'Outfit', sans-serif;
  font-size: clamp(4.5rem, 10vw, 9rem);
  line-height: .75;
  font-weight: 900;
  letter-spacing: -.07em;
  color: rgba(39, 42, 90, .045);
  pointer-events: none;
}
.aprendiz-page-segmentos .segment-chapter--maternal::before { content: '01'; }
.aprendiz-page-segmentos .segment-chapter--fundamental1::before { content: '02'; }
.aprendiz-page-segmentos .segment-chapter--fundamental2::before { content: '03'; }
.aprendiz-page-segmentos .segment-chapter--medio::before { content: '04'; }
.aprendiz-page-segmentos .segment-chapter--integral::before { content: '05'; }

.aprendiz-page-segmentos .segment-chapter .section-container {
  position: relative;
  z-index: 1;
}

.aprendiz-page-segmentos .segment-chapter .about-overview-grid {
  gap: clamp(2.2rem, 5vw, 5.25rem);
}

.aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card {
  border-radius: 34px 12px 34px 12px;
  box-shadow: 0 24px 64px rgba(10, 25, 49, .13);
  overflow: hidden;
}

.aprendiz-page-segmentos .segment-chapter:nth-of-type(even) .editorial-hero-photo-card {
  border-radius: 12px 34px 12px 34px;
}

.aprendiz-page-segmentos .segment-chapter .section-title {
  max-width: 700px;
  text-align: left !important;
}

.aprendiz-page-segmentos .segment-chapter .about-text-lead {
  font-size: 1.08rem;
}

.aprendiz-page-segmentos .segment-chapter .about-actions-group {
  flex-wrap: wrap;
  min-width: 0 !important;
}

/* --------------------------------------------------------------------------
   11. SOBRE — identidade institucional derivada da home
   -------------------------------------------------------------------------- */
.aprendiz-page-sobre .sobre-chapter--pilares .diff-grid-v2 {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.15rem;
}
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2 {
  grid-column: span 4;
  min-height: 270px;
  border: 1px solid rgba(39, 42, 90, .08);
  box-shadow: 0 12px 38px rgba(10, 25, 49, .055);
}
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2:first-child,
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2:last-child {
  grid-column: span 6;
}
.aprendiz-page-sobre .sobre-chapter--historia {
  position: relative;
  background:
    radial-gradient(circle at 12% 16%, rgba(237,125,4,.12), transparent 30%),
    linear-gradient(135deg, #0A1931 0%, #272A5A 100%) !important;
}
.aprendiz-page-sobre .sobre-chapter--historia .sobre-era-card {
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.075);
  backdrop-filter: blur(8px);
}
.aprendiz-page-sobre .sobre-chapter--pedagogia .editorial-hero-photo-card {
  border-radius: 38px 14px 38px 14px;
  box-shadow: 0 24px 70px rgba(10,25,49,.13);
}

/* --------------------------------------------------------------------------
   12. LEGAIS — “documento institucional”, sem hero SaaS genérico
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .legal-story-hero {
  background:
    linear-gradient(90deg, rgba(39,42,90,.035) 1px, transparent 1px),
    linear-gradient(rgba(39,42,90,.035) 1px, transparent 1px),
    radial-gradient(circle at 88% 12%, rgba(237,125,4,.11), transparent 32%),
    #FBFCFE !important;
  background-size: 32px 32px, 32px 32px, auto, auto !important;
  padding-block: clamp(4rem, 7vw, 6.5rem) !important;
}
.aprendiz-site-shell .legal-story-hero .section-container {
  position: relative;
  max-width: 980px !important;
  text-align: left !important;
  margin: 0 auto !important;
  padding: clamp(2rem, 5vw, 4.5rem) !important;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(39,42,90,.09);
  border-radius: 14px 42px 14px 42px;
  box-shadow: 0 28px 80px rgba(10,25,49,.075);
}
.aprendiz-site-shell .legal-story-hero .section-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: clamp(2rem, 5vw, 4.5rem);
  width: 88px;
  height: 6px;
  border-radius: 0 0 999px 999px;
  background: var(--aprendiz-orange);
}
.aprendiz-site-shell .legal-story-hero .editorial-hero-badge,
.aprendiz-site-shell .legal-story-hero .editorial-hero-lead {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.aprendiz-site-shell .legal-story-hero .editorial-hero-title {
  max-width: 820px;
  margin-left: 0 !important;
}
.aprendiz-site-shell .legal-content-container {
  max-width: 1040px;
}
.aprendiz-site-shell .legal-section-card {
  border: 1px solid rgba(39,42,90,.08);
  border-left: 4px solid rgba(237,125,4,.75);
  border-radius: 6px 22px 22px 6px;
  box-shadow: 0 8px 30px rgba(10,25,49,.04);
}

/* --------------------------------------------------------------------------
   13. MOBILE DEDICADO — os capítulos viram leitura vertical, não desktop espremido
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .aprendiz-page-segmentos .segment-chapter::before {
    top: 1.4rem;
    left: 1rem;
    font-size: 4rem;
  }
  .aprendiz-page-segmentos .segment-chapter .about-overview-grid,
  .aprendiz-page-sobre .sobre-chapter--pedagogia .about-overview-grid {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 1.75rem !important;
  }
  .aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card,
  .aprendiz-page-sobre .sobre-chapter--pedagogia .editorial-hero-photo-card {
    border-radius: 24px 8px 24px 8px;
  }
  .aprendiz-page-segmentos .segment-chapter .about-actions-group {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .aprendiz-page-segmentos .segment-chapter .about-actions-group > * {
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
  }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-grid-v2 {
    display: flex !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: .25rem 1px 1rem;
    gap: .9rem;
    scrollbar-width: none;
  }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-grid-v2::-webkit-scrollbar { display:none; }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2 {
    flex: 0 0 min(84vw, 320px);
    min-height: 250px;
    scroll-snap-align: start;
  }
  .aprendiz-site-shell .legal-story-hero {
    padding: 1rem !important;
  }
  .aprendiz-site-shell .legal-story-hero .section-container {
    padding: 2.25rem 1.25rem 1.5rem !important;
    border-radius: 8px 24px 8px 24px;
  }
}

/* --------------------------------------------------------------------------
   14. ESTRUTURA — galeria em mosaico, inspirada na riqueza fotográfica da home
   -------------------------------------------------------------------------- */
@media (min-width: 900px) {
  .aprendiz-page-estrutura .estrutura-gallery-grid {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0,1fr)) !important;
    grid-auto-flow: dense;
  }
  .aprendiz-page-estrutura .gallery-card { grid-column: span 4; }
  .aprendiz-page-estrutura .gallery-card:nth-child(1),
  .aprendiz-page-estrutura .gallery-card:nth-child(6) { grid-column: span 8; }
  .aprendiz-page-estrutura .gallery-card:nth-child(1) .gallery-card-media,
  .aprendiz-page-estrutura .gallery-card:nth-child(6) .gallery-card-media { min-height: 330px; }
  .aprendiz-page-estrutura .gallery-card:nth-child(2),
  .aprendiz-page-estrutura .gallery-card:nth-child(7) { grid-column: span 4; }
}
.aprendiz-page-estrutura .gallery-card {
  overflow: hidden;
  border-radius: 24px 8px 24px 8px;
  background: #fff;
}
.aprendiz-page-estrutura .gallery-card:nth-child(even) { border-radius: 8px 24px 8px 24px; }
.aprendiz-page-estrutura .gallery-card-badge { backdrop-filter: blur(8px); }
.aprendiz-page-estrutura .gallery-filter-bar {
  justify-content: flex-start;
  max-width: 1280px;
  margin-inline: auto;
}

/* --------------------------------------------------------------------------
   15. BLOG — primeira matéria vira chamada editorial, as demais viram coleção
   -------------------------------------------------------------------------- */
@media (min-width: 980px) {
  .aprendiz-page-blog .blog-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0,1fr)) !important;
    gap: 1.25rem !important;
  }
  .aprendiz-page-blog .blog-cards-grid > .blog-card { grid-column: span 4; }
  .aprendiz-page-blog .blog-cards-grid > .blog-card:first-child {
    grid-column: span 8;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    min-height: 420px;
    border-radius: 34px 10px 34px 10px;
  }
  .aprendiz-page-blog .blog-cards-grid > .blog-card:first-child .blog-thumb-wrapper {
    height: 100%;
    min-height: 420px;
  }
  .aprendiz-page-blog .blog-cards-grid > .blog-card:first-child .blog-card-content {
    padding: clamp(1.6rem, 3vw, 2.6rem);
    justify-content: center;
  }
  .aprendiz-page-blog .blog-cards-grid > .blog-card:first-child .blog-title {
    font-size: clamp(1.7rem, 2.5vw, 2.35rem);
    line-height: 1.08;
  }
}
.aprendiz-page-blog .blog-filter-bar {
  justify-content: flex-start;
  overflow-x: auto;
  scrollbar-width: none;
}
.aprendiz-page-blog .blog-filter-bar::-webkit-scrollbar { display:none; }
.aprendiz-page-blog .blog-filter-btn { white-space: nowrap; }

/* --------------------------------------------------------------------------
   16. CONTATO — formulário e canais como uma recepção digital, não dashboard
   -------------------------------------------------------------------------- */
.aprendiz-page-contato .contato-main-grid {
  align-items: start;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.aprendiz-page-contato .contato-form-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(39,42,90,.08);
  border-radius: 12px 34px 12px 34px;
  box-shadow: 0 24px 64px rgba(10,25,49,.07);
}
.aprendiz-page-contato .contato-form-card::before {
  content:'';
  position:absolute;
  top:0; left:0;
  width:100%; height:6px;
  background: linear-gradient(90deg,var(--aprendiz-orange),#FFB800 58%,transparent);
}
.aprendiz-page-contato .contato-form-card .form-control-item:focus {
  border-color: var(--aprendiz-orange);
  box-shadow: 0 0 0 4px rgba(237,125,4,.09);
}
.aprendiz-page-contato .contato-sidebar {
  display:grid;
  gap:1rem;
}
.aprendiz-page-contato .card-direct-whatsapp {
  border-radius: 28px 8px 28px 8px;
  background: linear-gradient(145deg,#0A1931,#272A5A) !important;
  color:#fff;
  border:0;
  box-shadow:0 20px 50px rgba(10,25,49,.13);
}
.aprendiz-page-contato .card-direct-whatsapp h3,
.aprendiz-page-contato .card-direct-whatsapp p { color:inherit !important; }
.aprendiz-page-contato .card-info-pratica {
  border-radius: 8px 28px 8px 28px;
  border:1px solid rgba(237,125,4,.15);
  background:#FFF9F2;
}
.aprendiz-page-contato .channel-item-link {
  border-radius:16px;
  transition: transform .2s ease, background .2s ease;
}
.aprendiz-page-contato .channel-item-link:hover { transform:translateX(4px); }

/* --------------------------------------------------------------------------
   17. HOME INSTAGRAM — superfície estável, sem dependência de comentários HTML
   -------------------------------------------------------------------------- */
.aprendiz-page-inicio .insta-carousel-track {
  align-items: stretch;
}
.aprendiz-page-inicio .insta-feed-card {
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 42px rgba(0,0,0,.16);
  overflow:hidden;
  border-radius:18px;
  text-decoration:none;
}
.aprendiz-page-inicio .insta-feed-header,
.aprendiz-page-inicio .insta-feed-actions {
  flex:0 0 auto;
}
.aprendiz-page-inicio .insta-feed-media {
  position:relative;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#E2E8F0;
}
.aprendiz-page-inicio .insta-feed-media img {
  width:100%; height:100%; object-fit:cover; display:block;
}

@media (max-width: 767px) {
  .aprendiz-page-estrutura .estrutura-gallery-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:1rem !important;
  }
  .aprendiz-page-estrutura .gallery-card,
  .aprendiz-page-estrutura .gallery-card:nth-child(even) {
    border-radius:20px 7px 20px 7px;
  }
  .aprendiz-page-blog .blog-cards-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:1rem !important;
  }
  .aprendiz-page-blog .blog-card { border-radius:20px 7px 20px 7px; }
  .aprendiz-page-contato .contato-main-grid { grid-template-columns:minmax(0,1fr) !important; }
  .aprendiz-page-contato .contato-form-card { border-radius:8px 24px 8px 24px; }
}

/* --------------------------------------------------------------------------
   18. STABLE 3.3 — robustez final de renderização e responsividade
   -------------------------------------------------------------------------- */
/* Conteúdo nunca depende de JS/IntersectionObserver para existir. */
.aprendiz-site-shell .reveal-on-scroll,
.aprendiz-site-shell .reveal-on-scroll.is-visible {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* Wrappers Elementor não podem ampliar a largura, criar gap ou reter sticky. */
.aprendiz-site-shell,
.aprendiz-site-shell .aprendiz-page-main,
.aprendiz-site-shell .aprendiz-page-main > .elementor,
.aprendiz-site-shell .aprendiz-section-shell,
.aprendiz-site-shell .aprendiz-section-shell > .e-con-inner,
.aprendiz-site-shell .aprendiz-section-shell > .elementor-widget,
.aprendiz-site-shell .aprendiz-section-shell > .elementor-widget > .elementor-widget-container,
.aprendiz-site-shell [data-apr-widget-root="1"] {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}

.aprendiz-site-shell .aprendiz-page-main > .elementor > :where(.e-con,.elementor-section),
.aprendiz-site-shell .aprendiz-section-shell {
  margin-block: 0 !important;
  row-gap: 0 !important;
}

/* Travas defensivas para conteúdos editáveis no Elementor. */
.aprendiz-site-shell :where(p,li,a,button,label) {
  overflow-wrap: anywhere;
}
.aprendiz-site-shell :where(h1,h2,h3,h4,h5,h6,h1 *,h2 *,h3 *,h4 *,h5 *,h6 *,strong,span) {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
.aprendiz-site-shell :where(img,video,svg,canvas,iframe) {
  max-width: 100%;
}
.aprendiz-site-shell :where(.about-overview-grid,.editorial-hero-grid,.contato-main-grid,.blog-cards-grid,.estrutura-gallery-grid,.segments-grid,.diff-grid-v2,.sobre-timeline-grid) > * {
  min-width: 0;
}

/* No mobile o Instagram é scroll nativo; JS não compete com o gesto do usuário. */
@media (max-width: 767px) {
  .aprendiz-site-shell .insta-carousel-viewport {
    touch-action: pan-x pan-y;
    -webkit-overflow-scrolling: touch;
    scroll-padding-inline: 0;
  }
  .aprendiz-site-shell .insta-carousel-track {
    transform: none !important;
    will-change: auto !important;
  }
  .aprendiz-site-shell .insta-slider-dots {
    max-width: 100%;
    overflow: hidden;
  }

  /* Evita que qualquer conteúdo editado volte a criar largura fantasma. */
  .aprendiz-site-shell :where(.section-container,.header-container,.footer-container,.modal-card,.drawer-content) {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
  .aprendiz-site-shell :where(.btn-aprendiz-primary,.btn-aprendiz-secondary,.btn-aprendiz-whatsapp,.btn-header-cta) {
    min-width: 0;
    max-width: 100%;
  }
  .aprendiz-site-shell :where(.editorial-hero-badge,.section-tag,.badge-navy,.badge-orange) {
    max-width: 100%;
    white-space: normal;
  }
  .aprendiz-site-shell input,
  .aprendiz-site-shell textarea,
  .aprendiz-site-shell select {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    font-size: 16px; /* evita zoom automático do iOS */
  }
}

/* 320–360 px: composição realmente dedicada, sem simplesmente encolher desktop. */
@media (max-width: 380px) {
  .aprendiz-site-shell .header-container { padding-inline: .75rem; }
  .aprendiz-site-shell .site-logo-img { width: auto; max-width: 145px; height: 40px; }
  .aprendiz-site-shell .header-actions-group { gap: .4rem; }
  .aprendiz-site-shell .btn-header-instagram { width: 40px; height: 40px; }
  .aprendiz-site-shell .menu-toggle-btn { width: 42px; height: 42px; }
  .aprendiz-site-shell .btn-header-cta { display: none; }

  .aprendiz-site-shell .section-wrapper,
  .aprendiz-site-shell .about-overview-section,
  .aprendiz-site-shell .page-editorial-hero,
  .aprendiz-site-shell .blog-hero-wrap,
  .aprendiz-site-shell .estrutura-hero-wrap,
  .aprendiz-site-shell .contato-hero-wrap {
    padding-left: .85rem;
    padding-right: .85rem;
  }

  .aprendiz-site-shell .editorial-hero-title,
  .aprendiz-site-shell .internal-hero-title,
  .aprendiz-site-shell .blog-hero-title,
  .aprendiz-site-shell .estrutura-hero-title,
  .aprendiz-site-shell .contato-hero-title,
  .aprendiz-site-shell .legal-hero-title {
    font-size: clamp(2rem, 12.25vw, 2.65rem);
    line-height: 1.02;
  }

  .aprendiz-site-shell .editorial-hero-stats,
  .aprendiz-site-shell .blog-stats-bar,
  .aprendiz-site-shell .estrutura-stats-bar,
  .aprendiz-site-shell .contato-stats-bar {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .aprendiz-site-shell .mobile-bottom-bar {
    gap: .3rem;
    padding-inline: .4rem;
  }
  .aprendiz-site-shell .mobile-bottom-bar :where(.bar-btn-wa,.bar-btn-cta,.bar-btn-tel) {
    min-height: 44px;
    padding-inline: .25rem;
    font-size: .66rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aprendiz-site-shell .insta-carousel-viewport { scroll-behavior: auto !important; }
}

/* --------------------------------------------------------------------------
   19. HOTFIX 3.3.1 — globais previsíveis no shell Elementor
   -------------------------------------------------------------------------- */
/* O footer precisa participar do fluxo normal do documento. `display: contents`
   no slot global não agrega nada aqui e pode produzir comportamento inconsistente
   com wrappers/documentos do Elementor em alguns navegadores/versões. */
.aprendiz-site-shell .aprendiz-global-footer-slot {
  display: block !important;
  width: 100%;
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  z-index: 5;
}
.aprendiz-site-shell .aprendiz-global-footer-slot > .elementor,
.aprendiz-site-shell .aprendiz-global-footer-slot > .elementor > .e-con,
.aprendiz-site-shell .aprendiz-global-footer-slot > .elementor > .elementor-section,
.aprendiz-site-shell .aprendiz-global-footer-slot .aprendiz-section-shell,
.aprendiz-site-shell .aprendiz-global-footer-slot .elementor-widget,
.aprendiz-site-shell .aprendiz-global-footer-slot .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}
.aprendiz-site-shell .aprendiz-global-footer-slot .site-footer {
  display: block !important;
  width: 100%;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Preview dos componentes globais no editor não deve herdar largura/spacing de tema. */
.aprendiz-global-preview,
.aprendiz-global-preview .aprendiz-global-preview-main,
.aprendiz-global-preview .aprendiz-global-preview-main > .elementor {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

/* v3.3.2 — logo global robusta no frontend.
   Mantém a proporção original e neutraliza regras externas que escondam imagens do header. */
.aprendiz-site-shell .site-header .logo-link {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  min-width: 190px;
  min-height: 54px;
  opacity: 1 !important;
  visibility: visible !important;
}
.aprendiz-site-shell .site-header .logo-link .site-logo-img {
  display: block !important;
  width: auto !important;
  height: 54px !important;
  max-width: 205px !important;
  max-height: 54px !important;
  object-fit: contain !important;
  object-position: left center !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
}
.aprendiz-site-shell .drawer-header img[data-apr-image="i002"] {
  display: block !important;
  width: auto !important;
  height: 40px !important;
  max-width: 152px !important;
  object-fit: contain !important;
  opacity: 1 !important;
  visibility: visible !important;
}
@media (max-width: 1023px) {
  .aprendiz-site-shell .site-header .logo-link {
    min-width: 0;
    min-height: 48px;
  }
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    height: 48px !important;
    max-height: 48px !important;
    max-width: 180px !important;
  }
}
@media (max-width: 380px) {
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    height: 40px !important;
    max-height: 40px !important;
    max-width: 145px !important;
  }
}

/* ========================================================================== 
   20. v3.3.3 — MOBILE FINAL: contenção, tipografia, footer e ações persistentes
   Ajustes derivados da validação em aparelhos reais. Não altera o desktop.
   ========================================================================== */

/* A antiga barra tripla foi substituída pelo FAB de WhatsApp. */
.aprendiz-site-shell .mobile-bottom-bar { display: none !important; }
.mobile-whatsapp-fab { display: none; }

/* O copyright/CNPJ deixa de fazer parte do componente padrão, inclusive em
   documentos globais antigos ainda armazenados no Elementor. */
.aprendiz-site-shell .footer-legal-copy { display: none !important; }

@media (max-width: 767px) {
  /* Contenção real do viewport. Remove a sensação de página “maior que a tela”
     sem bloquear trilhos horizontais internos. */
  html { max-width: 100%; overflow-x: clip; }
  body.aprendiz-site-shell {
    width: 100%;
    max-width: 100%;
    overflow-x: clip !important;
  }
  .aprendiz-site-shell,
  .aprendiz-site-shell .aprendiz-page-main,
  .aprendiz-site-shell .aprendiz-global-slot,
  .aprendiz-site-shell .elementor,
  .aprendiz-site-shell .e-con,
  .aprendiz-site-shell .e-con-inner,
  .aprendiz-site-shell .elementor-element,
  .aprendiz-site-shell .elementor-widget,
  .aprendiz-site-shell .elementor-widget-container,
  .aprendiz-site-shell [data-apr-widget-root="1"] {
    box-sizing: border-box;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .aprendiz-site-shell .aprendiz-page-main,
  .aprendiz-site-shell .aprendiz-global-slot,
  .aprendiz-site-shell [data-apr-widget-root="1"] {
    overflow-x: clip;
  }

  /* Trilhos móveis ficam contidos no próprio componente: sem largura negativa
     vazando para o body. */
  .aprendiz-site-shell .about-metrics-grid,
  .aprendiz-site-shell .editorial-hero-pills,
  .aprendiz-site-shell .blog-filter-bar,
  .aprendiz-site-shell .gallery-filter-bar,
  .aprendiz-site-shell .insta-carousel-viewport,
  .aprendiz-site-shell .reviews-slider-viewport {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Títulos nunca quebram dentro de uma palavra. Texto corrido usa linhas mais
     naturais em telas estreitas. */
  .aprendiz-site-shell :where(h1,h2,h3,h4,h5,h6,.section-title,.editorial-hero-title,.internal-hero-title,.blog-hero-title,.estrutura-hero-title,.contato-hero-title,.legal-hero-title,.insta-main-title) {
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    text-wrap: balance;
  }
  .aprendiz-site-shell :where(p,.section-subtitle,.editorial-hero-lead,.insta-main-copy,.google-review-text,.footer-brand-manifesto) {
    text-wrap: pretty;
  }
  .aprendiz-site-shell .section-title {
    font-size: clamp(2rem, 9.2vw, 2.5rem) !important;
    line-height: 1.04 !important;
  }
  .aprendiz-site-shell .section-subtitle {
    font-size: .93rem !important;
    line-height: 1.58 !important;
    margin-bottom: 1.55rem !important;
  }

  /* -----------------------------------------------------------------------
     Header + drawer
     ----------------------------------------------------------------------- */
  .aprendiz-site-shell .header-container {
    width: 100% !important;
    padding: .7rem .95rem !important;
    gap: .65rem;
  }
  .aprendiz-site-shell .site-header .logo-link {
    min-width: 0 !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
  }
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    width: auto !important;
    height: clamp(42px, 12vw, 50px) !important;
    max-width: min(190px, 56vw) !important;
    max-height: 50px !important;
  }
  .aprendiz-site-shell .header-actions-group { flex: 0 0 auto; min-width: 0; gap: .5rem; }
  .aprendiz-site-shell .btn-header-instagram,
  .aprendiz-site-shell .menu-toggle-btn { width: 44px; height: 44px; flex: 0 0 44px; }

  .aprendiz-site-shell .drawer-content {
    width: min(92vw, 360px) !important;
    padding: 1rem 1rem calc(1.2rem + var(--sab, 0px)) !important;
  }
  .aprendiz-site-shell .drawer-header { padding-bottom: 1rem; margin-bottom: .75rem; }
  .aprendiz-site-shell .drawer-nav-list { gap: .35rem; }
  .aprendiz-site-shell .drawer-nav-item a {
    min-height: 50px;
    padding: .72rem .85rem;
    border-radius: 14px;
    font-size: .96rem;
    line-height: 1.25;
  }
  .aprendiz-site-shell .drawer-contact-meta {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--aprendiz-border);
    display: grid;
    gap: .65rem;
    color: var(--aprendiz-text-muted);
  }
  .aprendiz-site-shell .drawer-contact-line {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: start;
    gap: .55rem;
    margin: 0;
    font-size: .78rem;
    line-height: 1.45;
  }
  .aprendiz-site-shell .drawer-contact-line a {
    color: var(--aprendiz-navy);
    text-decoration: none;
    font-weight: 650;
  }
  .aprendiz-site-shell .drawer-contact-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    color: var(--aprendiz-navy);
    background: rgba(39,42,90,.08);
  }
  .aprendiz-site-shell .drawer-contact-icon--location {
    color: var(--aprendiz-orange);
    background: rgba(237,125,4,.10);
  }
  .aprendiz-site-shell .drawer-contact-icon svg { display:block; width:15px; height:15px; }

  /* FAB padrão de WhatsApp: único CTA persistente no mobile. */
  .aprendiz-site-shell .mobile-whatsapp-fab {
    position: fixed;
    right: max(16px, env(safe-area-inset-right));
    bottom: calc(16px + env(safe-area-inset-bottom));
    z-index: 960;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #16A34A;
    color: #fff !important;
    text-decoration: none;
    border: 2px solid rgba(255,255,255,.96);
    box-shadow: 0 12px 30px rgba(22,163,74,.33), 0 4px 12px rgba(10,25,49,.18);
    transition: transform .2s ease, opacity .2s ease, box-shadow .2s ease;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab i { font-size: 1.72rem; line-height: 1; }
  .aprendiz-site-shell .mobile-whatsapp-fab:active { transform: scale(.95); }
  .aprendiz-site-shell .mobile-whatsapp-fab.is-hidden,
  body.aprendiz-site-shell.aprendiz-scroll-lock .mobile-whatsapp-fab {
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px) scale(.92);
  }

  /* -----------------------------------------------------------------------
     Localização — mapa e chamada sem colunas espremidas
     ----------------------------------------------------------------------- */
  .aprendiz-site-shell .visit-section-card { border-radius: 20px; }
  .aprendiz-site-shell .custom-map-wrapper {
    min-height: 0 !important;
    border-radius: 0 0 18px 18px;
  }
  .aprendiz-site-shell .custom-map-frame {
    height: 270px !important;
    min-height: 270px !important;
  }
  .aprendiz-site-shell .custom-map-frame iframe { min-height: 270px !important; }
  .aprendiz-site-shell .map-footer-action {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    align-items: start !important;
    gap: .55rem !important;
    padding: .8rem .9rem !important;
  }
  .aprendiz-site-shell .map-footer-action > * { min-width: 0; max-width: 100%; }
  .aprendiz-site-shell .map-footer-action > span {
    font-size: .78rem !important;
    line-height: 1.4;
  }
  .aprendiz-site-shell .map-footer-action > a {
    width: fit-content;
    max-width: 100%;
    font-size: .8rem !important;
    line-height: 1.25;
    white-space: nowrap;
  }
  .aprendiz-site-shell .visit-info-column { padding: 1.35rem 1rem 1.5rem !important; }
  .aprendiz-site-shell .visit-info-column > .badge-navy {
    max-width: 100%;
    white-space: normal !important;
    line-height: 1.35;
    padding: .58rem .78rem;
    border-radius: 16px;
    font-size: .77rem;
  }
  .aprendiz-site-shell .visit-info-column .section-title {
    max-width: 100%;
    font-size: clamp(2rem, 8.5vw, 2.3rem) !important;
    line-height: 1.03 !important;
    margin-bottom: .75rem !important;
  }
  .aprendiz-site-shell .visit-info-column > p {
    font-size: .92rem !important;
    line-height: 1.62 !important;
    margin-bottom: 1rem !important;
  }
  .aprendiz-site-shell .visit-info-list { gap: .9rem; margin: 1rem 0 1.2rem; }
  .aprendiz-site-shell .visit-info-item { gap: .72rem; }
  .aprendiz-site-shell .visit-custom-icon { width: 34px; height: 34px; object-fit: contain; flex:0 0 34px; }
  .aprendiz-site-shell .visit-info-item-text strong { font-size: .86rem; }
  .aprendiz-site-shell .visit-info-item-text span { font-size: .78rem; line-height: 1.45; }

  /* -----------------------------------------------------------------------
     Avaliações Google — resumo compacto + cards realmente móveis
     ----------------------------------------------------------------------- */
  .aprendiz-site-shell .google-reviews-summary-bar {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    align-items: stretch !important;
    gap: .85rem !important;
    padding: 1rem !important;
    margin-bottom: 1.35rem !important;
    border-radius: 18px !important;
  }
  .aprendiz-site-shell .google-brand-badge { gap: .72rem; min-width: 0; }
  .aprendiz-site-shell .google-g-icon { width: 38px; height: 38px; }
  .aprendiz-site-shell .google-rating-row {
    display: flex !important;
    align-items: center !important;
    gap: .45rem !important;
    flex-wrap: nowrap !important;
  }
  .aprendiz-site-shell .google-rating-score { font-size: 1.55rem; }
  .aprendiz-site-shell .google-stars {
    font-size: .9rem;
    letter-spacing: .5px;
    white-space: nowrap;
  }
  .aprendiz-site-shell .google-summary-actions {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: .7rem !important;
    padding-top: .75rem;
    border-top: 1px solid #EEF0F2;
  }
  .aprendiz-site-shell .google-review-count {
    min-width: 0;
    font-size: .78rem !important;
    line-height: 1.4;
  }
  .aprendiz-site-shell .google-summary-actions .btn-aprendiz-secondary {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: .58rem .72rem !important;
    border-radius: 12px !important;
    font-size: .74rem !important;
    line-height: 1.2;
    white-space: nowrap !important;
  }
  .aprendiz-site-shell .reviews-slider-container { width:100%; max-width:100%; overflow:hidden; }
  .aprendiz-site-shell .reviews-slider-viewport {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-radius: 0 !important;
    padding: .3rem .05rem .7rem !important;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: .05rem;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
    -webkit-overflow-scrolling: touch;
  }
  .aprendiz-site-shell .reviews-slider-viewport::-webkit-scrollbar { display:none; }
  .aprendiz-site-shell .reviews-slider-track {
    width: max-content;
    max-width: none !important;
    gap: .75rem !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
  .aprendiz-site-shell .google-review-card {
    flex: 0 0 min(86vw, 320px) !important;
    width: min(86vw, 320px);
    max-width: calc(100vw - 2.2rem);
    padding: 1.05rem !important;
    border-radius: 16px !important;
    scroll-snap-align: start;
  }
  .aprendiz-site-shell .google-card-header { margin-bottom: .75rem; gap:.5rem; }
  .aprendiz-site-shell .google-author-wrap { gap: .65rem; min-width:0; }
  .aprendiz-site-shell .google-author-avatar { width:40px; height:40px; font-size:1rem; flex:0 0 40px; }
  .aprendiz-site-shell .google-author-meta { min-width:0; }
  .aprendiz-site-shell .google-author-meta h4 {
    font-size: .9rem;
    line-height: 1.2;
    margin-bottom: 3px;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .aprendiz-site-shell .google-verified-tag { font-size: .68rem; }
  .aprendiz-site-shell .google-card-stars { margin-bottom: .65rem; }
  .aprendiz-site-shell .google-review-text { font-size: .84rem; line-height:1.55; margin-bottom:.8rem; }
  .aprendiz-site-shell .google-card-footer { font-size:.68rem; gap:.6rem; }
  .aprendiz-site-shell .reviews-slider-dots { margin-top: .75rem; }

  /* -----------------------------------------------------------------------
     Instagram — mesma identidade, sem vazamento horizontal ou avatar quadrado
     ----------------------------------------------------------------------- */
  .aprendiz-site-shell .insta-section-wrapper {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    padding: 3.4rem 1rem 3rem !important;
    border-radius: 20px !important;
  }
  .aprendiz-site-shell .insta-editorial-shell { width:100%; max-width:100%; }
  .aprendiz-site-shell .insta-header-stats {
    max-width: 100%;
    padding: .38rem .8rem .38rem .4rem;
    gap: .5rem;
    margin-bottom: 1.05rem;
    font-size: .78rem;
  }
  .aprendiz-site-shell .insta-header-stats-avatar-wrap {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px;
    flex-basis: 30px;
    border-radius: 50% !important;
    overflow: hidden !important;
  }
  .aprendiz-site-shell .insta-header-stats-avatar {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
    clip-path: none !important;
    object-fit: cover !important;
  }
  .aprendiz-site-shell .insta-main-title {
    max-width: 15ch;
    margin: .35rem auto .7rem !important;
    font-size: clamp(2rem, 8.7vw, 2.35rem) !important;
    line-height: 1.02 !important;
  }
  .aprendiz-site-shell .insta-main-copy {
    max-width: 31rem;
    font-size: .9rem !important;
    line-height: 1.56 !important;
    margin-bottom: 1.35rem !important;
  }
  .aprendiz-site-shell .insta-carousel-container {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    padding: .2rem 0 .4rem;
  }
  .aprendiz-site-shell .insta-carousel-viewport {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: .4rem 0 .7rem !important;
    scroll-padding-inline: 0;
  }
  .aprendiz-site-shell .insta-carousel-track {
    width: max-content !important;
    max-width: none !important;
    gap: .8rem !important;
    transform: none !important;
  }
  .aprendiz-site-shell .insta-feed-card {
    flex: 0 0 min(84vw, 300px) !important;
    width: min(84vw, 300px);
    max-width: calc(100vw - 2rem);
    scroll-snap-align: start;
    border-radius: 16px !important;
  }
  .aprendiz-site-shell .insta-slider-dots { margin-top: .6rem !important; }
  .aprendiz-site-shell .insta-actions-cta { margin-top: 1.55rem; }

  /* -----------------------------------------------------------------------
     Footer — versão móvel própria e compacta
     ----------------------------------------------------------------------- */
  .aprendiz-site-shell .site-footer {
    padding: 2.4rem 1rem calc(1.35rem + env(safe-area-inset-bottom)) !important;
    border-top-left-radius: 24px 12px !important;
    border-top-right-radius: 24px 12px !important;
  }
  .aprendiz-site-shell .footer-container { width:100%; max-width:100%; }
  .aprendiz-site-shell .footer-main-layout { gap: 1.45rem !important; }
  .aprendiz-site-shell .footer-brand-pane { width:100%; }
  .aprendiz-site-shell .footer-brand-logo-link { margin-bottom: .85rem; }
  .aprendiz-site-shell .footer-brand-logo { height: 40px; max-width: 172px; }
  .aprendiz-site-shell .footer-motto-lockup { margin-bottom: .55rem; }
  .aprendiz-site-shell .footer-motto-eyebrow { font-size:.64rem; line-height:1.35; letter-spacing:.095em; }
  .aprendiz-site-shell .footer-motto-headline { font-size:1.28rem; line-height:1.18; }
  .aprendiz-site-shell .footer-brand-manifesto { font-size:.8rem; line-height:1.55; margin-bottom:1rem; max-width:34rem; }
  .aprendiz-site-shell .footer-social-channels {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:.35rem !important;
    width:100%;
  }
  .aprendiz-site-shell .footer-social-link {
    width: fit-content;
    max-width:100%;
    min-height:36px;
    padding:.3rem 0;
    font-size:.78rem;
    line-height:1.3;
  }
  .aprendiz-site-shell .footer-social-badge { width:22px; justify-content:flex-start; }

  .aprendiz-site-shell .footer-nav-pane {
    display:block !important;
    width:100%;
  }
  .aprendiz-site-shell .footer-nav-col--segments,
  .aprendiz-site-shell .footer-nav-col--school { display:none !important; }
  .aprendiz-site-shell .footer-nav-col--quick { display:block !important; }
  .aprendiz-site-shell .footer-nav-title {
    margin:0 0 .65rem !important;
    padding:0 0 .5rem !important;
    font-size:.9rem;
  }
  .aprendiz-site-shell .footer-nav-list { gap:.2rem !important; }
  .aprendiz-site-shell .footer-nav-list li a {
    width:100%;
    min-height:40px;
    padding:.42rem 0;
    gap:.5rem;
    font-size:.8rem;
    line-height:1.35;
  }
  .aprendiz-site-shell .footer-nav-list li a:hover { transform:none; }

  .aprendiz-site-shell .footer-credentials-bar {
    margin-top: 1.35rem !important;
    padding: 1.05rem 0 !important;
    gap: .9rem !important;
  }
  .aprendiz-site-shell .footer-credential-block { align-items:flex-start; gap:.7rem; }
  .aprendiz-site-shell .footer-credential-icon { width:22px; font-size:1rem; text-align:center; padding-top:.1rem; }
  .aprendiz-site-shell .footer-credential-text strong { font-size:.77rem; line-height:1.3; margin-bottom:.15rem; }
  .aprendiz-site-shell .footer-credential-text span { font-size:.73rem; line-height:1.45; }

  .aprendiz-site-shell .footer-legal-bar {
    margin-top: .8rem !important;
    padding-top: .95rem !important;
    gap: .55rem !important;
    align-items:flex-start !important;
    text-align:left !important;
  }
  .aprendiz-site-shell .footer-legal-links {
    width:100%;
    justify-content:flex-start !important;
    gap:.45rem .7rem !important;
    font-size:.72rem;
    line-height:1.35;
  }
  .aprendiz-site-shell .footer-legal-sep { display:none; }
  .aprendiz-site-shell .footer-back-to-top {
    margin-left:auto;
    padding:.25rem 0;
    font-size:.72rem;
  }
}

@media (max-width: 380px) {
  .aprendiz-site-shell .site-header .logo-link .site-logo-img { max-width: 150px !important; height: 41px !important; }
  .aprendiz-site-shell .btn-header-instagram,
  .aprendiz-site-shell .menu-toggle-btn { width:42px;height:42px;flex-basis:42px; }
  .aprendiz-site-shell .section-title { font-size: clamp(1.9rem, 9.4vw, 2.3rem) !important; }
  .aprendiz-site-shell .google-summary-actions { grid-template-columns:minmax(0,1fr) !important; }
  .aprendiz-site-shell .google-summary-actions .btn-aprendiz-secondary { width:fit-content !important; }
  .aprendiz-site-shell .google-review-card { flex-basis: calc(100vw - 2rem) !important; width:calc(100vw - 2rem); }
  .aprendiz-site-shell .insta-feed-card { flex-basis: calc(100vw - 2rem) !important; width:calc(100vw - 2rem); }
  .aprendiz-site-shell .mobile-whatsapp-fab { width:54px;height:54px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom)); }
  .aprendiz-site-shell .mobile-whatsapp-fab i { font-size:1.58rem; }
}


/* ========================================================================== 
   21. v3.3.3 — QA EM APARELHOS REAIS
   Mobile tratado como composição própria: zero bleed, texto íntegro, footer
   compacto, carrosséis sem “card escapando” e CTA persistente único.
   ========================================================================== */
@media (max-width: 767px) {
  /* --- Viewport: nenhum componente estrutural pode aumentar a página. --- */
  html,
  body.aprendiz-site-shell {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  body.aprendiz-site-shell { position: relative; }
  .aprendiz-site-shell .aprendiz-page-main,
  .aprendiz-site-shell .aprendiz-global-header-slot,
  .aprendiz-site-shell .aprendiz-global-footer-slot,
  .aprendiz-site-shell .aprendiz-global-modal-slot,
  .aprendiz-site-shell .aprendiz-section-shell,
  .aprendiz-site-shell .section-wrapper,
  .aprendiz-site-shell .section-container,
  .aprendiz-site-shell [data-apr-widget-root="1"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }
  .aprendiz-site-shell .aprendiz-page-main,
  .aprendiz-site-shell .aprendiz-global-footer-slot,
  .aprendiz-site-shell .aprendiz-section-shell,
  .aprendiz-site-shell [data-apr-widget-root="1"] { overflow-x: clip; }

  /* O Elementor pode acrescentar min-width/gap nos wrappers. Neutraliza apenas
     a camada estrutural; espaçamento interno dos componentes continua intacto. */
  .aprendiz-site-shell .e-con,
  .aprendiz-site-shell .e-con-inner,
  .aprendiz-site-shell .elementor-element,
  .aprendiz-site-shell .elementor-widget,
  .aprendiz-site-shell .elementor-widget-container {
    min-width: 0 !important;
    max-width: 100% !important;
    --widgets-spacing: 0px !important;
    --gap: 0px !important;
  }

  /* Nunca quebrar uma palavra de display ao meio — inclusive spans de destaque. */
  .aprendiz-site-shell :where(h1,h2,h3,h4,h5,h6,.section-title,.section-title *,
    .divider-slogan-script,.divider-slogan-script *, .editorial-hero-title,.editorial-hero-title *,
    .internal-hero-title,.internal-hero-title *, .blog-hero-title,.blog-hero-title *,
    .estrutura-hero-title,.estrutura-hero-title *, .contato-hero-title,.contato-hero-title *,
    .legal-hero-title,.legal-hero-title *, .insta-main-title,.insta-main-title *) {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }
  .aprendiz-site-shell :where(.section-title,.divider-slogan-script,.insta-main-title) {
    text-wrap: balance;
  }
  .aprendiz-site-shell .section-title {
    max-width: min(18ch, 100%) !important;
    font-size: clamp(1.78rem, 8vw, 2.2rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -.015em !important;
  }
  .aprendiz-site-shell .section-subtitle {
    max-width: 36rem !important;
    font-size: .92rem !important;
    line-height: 1.55 !important;
  }
  .aprendiz-site-shell .section-wrapper { padding: 2.75rem 1rem !important; }

  /* --- Header/drawer: densidade de app, sem emojis e sem CTAs gigantes. --- */
  .aprendiz-site-shell .drawer-cta-stack {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: .55rem;
    margin-top: .85rem;
  }
  .aprendiz-site-shell .drawer-cta-stack :where(.btn-aprendiz-primary,.btn-aprendiz-whatsapp) {
    width: 100% !important;
    min-height: 46px !important;
    padding: .65rem .8rem !important;
    border-radius: 14px !important;
    font-size: .84rem !important;
  }
  .aprendiz-site-shell .drawer-contact-meta { margin-top: .85rem !important; }
  .aprendiz-site-shell .drawer-contact-line {
    grid-template-columns: 26px minmax(0,1fr) !important;
    align-items: center !important;
    font-size: .76rem !important;
  }
  .aprendiz-site-shell .drawer-contact-icon {
    width: 26px !important;
    height: 26px !important;
    border-radius: 9px !important;
  }

  /* Único CTA persistente. Não existe faixa inferior ocupando conteúdo. */
  .aprendiz-site-shell .mobile-bottom-bar { display: none !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab {
    width: 56px !important;
    height: 56px !important;
    right: max(14px, env(safe-area-inset-right)) !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: #25D366 !important;
    border: 2px solid #fff !important;
    box-shadow: 0 10px 26px rgba(18, 140, 70, .28), 0 3px 8px rgba(10,25,49,.14) !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab-icon {
    display: block;
    width: 31px;
    height: 31px;
  }

  /* --- Divisória institucional: em celular vira lista editorial compacta. --- */
  .aprendiz-site-shell .institutional-divider-section { border-radius: 0 0 18px 18px !important; }
  .aprendiz-site-shell .divider-header-strip {
    padding: 1.85rem 1rem 1.45rem !important;
  }
  .aprendiz-site-shell .divider-badge-scope {
    max-width: 30ch;
    margin: 0 auto .7rem !important;
    font-size: .69rem !important;
    line-height: 1.4 !important;
    letter-spacing: .09em !important;
  }
  .aprendiz-site-shell .divider-slogan-script {
    max-width: 15ch;
    margin-inline: auto;
    font-size: clamp(1.85rem, 8.3vw, 2.25rem) !important;
    line-height: 1.04 !important;
  }
  .aprendiz-site-shell .divider-pillars { display: grid !important; grid-template-columns: 1fr !important; }
  .aprendiz-site-shell .divider-pilar {
    display: grid !important;
    grid-template-columns: 46px minmax(0,1fr) !important;
    grid-template-rows: auto auto auto !important;
    column-gap: .85rem !important;
    row-gap: .34rem !important;
    padding: 1.25rem 1rem !important;
    border-right: 0 !important;
  }
  .aprendiz-site-shell .divider-pilar-icon {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;
    width: 42px !important;
    height: 42px !important;
    margin: .1rem 0 0 !important;
    align-self: start;
  }
  .aprendiz-site-shell .divider-pilar-accent {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 28px !important;
    height: 3px !important;
    margin: .05rem 0 .18rem !important;
  }
  .aprendiz-site-shell .divider-pilar h3 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    font-size: .96rem !important;
    line-height: 1.25 !important;
  }
  .aprendiz-site-shell .divider-pilar p {
    grid-column: 2 !important;
    grid-row: 3 !important;
    margin: 0 !important;
    font-size: .78rem !important;
    line-height: 1.5 !important;
  }

  /* --- Localização: nenhuma dupla coluna comprimida e título menos “torre”. --- */
  .aprendiz-site-shell .visit-section-card,
  .aprendiz-site-shell .visit-section-card > * { min-width: 0 !important; max-width: 100% !important; }
  .aprendiz-site-shell .visit-info-column { padding: 1.2rem .95rem 1.35rem !important; }
  .aprendiz-site-shell .visit-info-column .section-title {
    max-width: 13ch !important;
    margin-inline: 0 !important;
    text-align: left !important;
    font-size: clamp(1.78rem, 7.8vw, 2.05rem) !important;
  }
  .aprendiz-site-shell .visit-info-column > p { text-align: left; }
  .aprendiz-site-shell .map-footer-action {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .35rem !important;
  }
  .aprendiz-site-shell .map-footer-action > a {
    display: inline-flex !important;
    align-items: center;
    white-space: nowrap !important;
    padding: .2rem 0 !important;
  }

  /* --- Google: card-resumo legível + 1 review completo por viewport. --- */
  .aprendiz-site-shell .google-reviews-summary-bar {
    padding: .95rem !important;
    gap: .75rem !important;
    border-radius: 18px !important;
  }
  .aprendiz-site-shell .google-brand-badge {
    display: grid !important;
    grid-template-columns: 40px minmax(0,1fr) !important;
    align-items: center !important;
    gap: .68rem !important;
  }
  .aprendiz-site-shell .google-g-icon { width: 36px !important; height: 36px !important; }
  .aprendiz-site-shell .google-brand-badge > div > div:first-child {
    font-size: .7rem !important;
    line-height: 1.25 !important;
  }
  .aprendiz-site-shell .google-rating-score { font-size: 1.42rem !important; }
  .aprendiz-site-shell .google-stars { font-size: .82rem !important; letter-spacing: 0 !important; }
  .aprendiz-site-shell .google-summary-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: .55rem !important;
    padding-top: .7rem !important;
  }
  .aprendiz-site-shell .google-review-count {
    display: block !important;
    width: 100% !important;
    font-size: .76rem !important;
    line-height: 1.4 !important;
  }
  .aprendiz-site-shell .google-summary-actions .btn-aprendiz-secondary {
    width: fit-content !important;
    min-height: 38px !important;
    padding: .5rem .7rem !important;
    border-radius: 11px !important;
    font-size: .72rem !important;
    white-space: nowrap !important;
  }
  .aprendiz-site-shell .reviews-slider-viewport {
    width: 100% !important;
    padding: .2rem 0 .55rem !important;
    scroll-snap-type: x mandatory !important;
    overflow-x: auto !important;
    overscroll-behavior-inline: contain;
  }
  .aprendiz-site-shell .reviews-slider-track {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: .7rem !important;
    transform: none !important;
  }
  .aprendiz-site-shell .google-review-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    padding: 1rem !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  .aprendiz-site-shell .google-card-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between;
  }

  /* --- Instagram: pill correta e um card completo por swipe, sem “vazamento”. --- */
  .aprendiz-site-shell .insta-section-wrapper {
    padding: 2.8rem 1rem 2.6rem !important;
    border-radius: 18px !important;
  }
  .aprendiz-site-shell .insta-header-stats {
    max-width: min(100%, 260px) !important;
    padding: .34rem .72rem .34rem .34rem !important;
    margin-bottom: .9rem !important;
  }
  .aprendiz-site-shell .insta-header-stats-avatar-wrap {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    flex-basis: 30px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
  }
  .aprendiz-site-shell .insta-header-stats-avatar {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
    clip-path: none !important;
    object-fit: cover !important;
  }
  .aprendiz-site-shell .insta-main-title {
    max-width: 13ch !important;
    font-size: clamp(1.85rem, 8vw, 2.15rem) !important;
    line-height: 1.03 !important;
  }
  .aprendiz-site-shell .insta-main-copy {
    max-width: 31rem !important;
    margin-inline: auto !important;
    font-size: .88rem !important;
    line-height: 1.55 !important;
  }
  .aprendiz-site-shell .insta-carousel-viewport {
    width: 100% !important;
    padding: .25rem 0 .55rem !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    overscroll-behavior-inline: contain;
  }
  .aprendiz-site-shell .insta-carousel-track {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: .75rem !important;
    transform: none !important;
  }
  .aprendiz-site-shell .insta-feed-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always;
  }
  .aprendiz-site-shell .insta-feed-avatar,
  .aprendiz-site-shell .insta-feed-avatar img {
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%);
  }
  .aprendiz-site-shell .insta-actions-cta {
    grid-template-columns: minmax(0,1fr) !important;
    gap: .55rem !important;
    width: 100% !important;
  }
  .aprendiz-site-shell .insta-actions-cta > * {
    width: 100% !important;
    min-height: 44px !important;
  }

  /* --- Footer: cabe no celular, sem “vazios” editoriais de desktop. --- */
  .aprendiz-site-shell .site-footer {
    padding: 1.65rem 1rem calc(1rem + env(safe-area-inset-bottom)) !important;
    border-radius: 18px 18px 0 0 !important;
  }
  .aprendiz-site-shell .footer-main-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .9rem !important;
  }
  .aprendiz-site-shell .footer-brand-pane {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: .7rem !important;
    width: 100% !important;
  }
  .aprendiz-site-shell .footer-brand-logo-link {
    margin: 0 !important;
    min-width: 0 !important;
  }
  .aprendiz-site-shell .footer-brand-logo {
    height: 34px !important;
    max-height: 34px !important;
    max-width: 145px !important;
  }
  .aprendiz-site-shell .footer-motto-lockup,
  .aprendiz-site-shell .footer-brand-manifesto { display: none !important; }
  .aprendiz-site-shell .footer-social-channels {
    display: flex !important;
    width: auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: .38rem !important;
  }
  .aprendiz-site-shell .footer-social-link {
    width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    background: rgba(255,255,255,.04) !important;
  }
  .aprendiz-site-shell .footer-social-badge {
    width: auto !important;
    height: auto !important;
    font-size: .95rem !important;
  }
  .aprendiz-site-shell .footer-social-text { display: none !important; }

  .aprendiz-site-shell .footer-nav-pane { margin: 0 !important; }
  .aprendiz-site-shell .footer-nav-title {
    margin: 0 0 .45rem !important;
    padding: 0 0 .45rem !important;
    font-size: .82rem !important;
  }
  .aprendiz-site-shell .footer-nav-list { gap: .05rem !important; }
  .aprendiz-site-shell .footer-nav-list li a {
    min-height: 36px !important;
    padding: .34rem 0 !important;
    font-size: .76rem !important;
  }
  .aprendiz-site-shell .footer-credentials-bar {
    display: grid !important;
    grid-template-columns: 1fr !important;
    margin-top: .7rem !important;
    padding: .8rem 0 !important;
    gap: .62rem !important;
  }
  .aprendiz-site-shell .footer-credential-block { gap: .62rem !important; }
  .aprendiz-site-shell .footer-credential-icon {
    width: 20px !important;
    font-size: .9rem !important;
  }
  .aprendiz-site-shell .footer-credential-text strong {
    font-size: .74rem !important;
    margin-bottom: 1px !important;
  }
  .aprendiz-site-shell .footer-credential-text span {
    font-size: .69rem !important;
    line-height: 1.38 !important;
  }
  .aprendiz-site-shell .footer-legal-bar {
    margin-top: .35rem !important;
    padding-top: .7rem !important;
    gap: .4rem !important;
  }
  .aprendiz-site-shell .footer-legal-copy { display: none !important; }
  .aprendiz-site-shell .footer-legal-links {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,auto)) !important;
    justify-content: start !important;
    align-items: center !important;
    gap: .3rem .85rem !important;
    font-size: .67rem !important;
  }
  .aprendiz-site-shell .footer-legal-links .footer-back-to-top {
    grid-column: 1 / -1;
    justify-self: start;
    margin: .15rem 0 0 !important;
  }
  .aprendiz-site-shell .footer-legal-sep { display: none !important; }

  /* Cards / grids comuns: a borda e sombra cabem integralmente no viewport. */
  .aprendiz-site-shell :where(.segment-card,.diff-card-v2,.blog-card,.gallery-card,.sobre-era-card,
    .visit-section-card,.google-reviews-summary-bar,.google-review-card,.insta-feed-card,.cta-inner-card) {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 380px) {
  .aprendiz-site-shell .header-container { padding-inline: .72rem !important; }
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    max-width: 148px !important;
    height: 40px !important;
  }
  .aprendiz-site-shell .section-wrapper { padding-inline: .85rem !important; }
  .aprendiz-site-shell .section-title { font-size: clamp(1.68rem, 8.3vw, 2rem) !important; }
  .aprendiz-site-shell .divider-pilar { padding-inline: .85rem !important; }
  .aprendiz-site-shell .google-reviews-summary-bar { padding: .85rem !important; }
  .aprendiz-site-shell .insta-section-wrapper { padding-inline: .85rem !important; }
  .aprendiz-site-shell .site-footer { padding-inline: .85rem !important; }
  .aprendiz-site-shell .footer-brand-logo { max-width: 132px !important; height: 32px !important; }
}

/* A barra inferior antiga não existe mais; tablets não devem reservar o espaço
   que era dedicado a ela no design system original. */
@media (min-width: 768px) and (max-width: 1023px) {
  .aprendiz-site-shell .site-footer {
    padding-bottom: 2rem !important;
  }
}

/* ==========================================================================
   v3.4 — HUMANIZAÇÃO DAS INTERNAS + REFINO FINAL
   A Home permanece como matriz. As páginas internas passam a compartilhar o
   mesmo vocabulário (fotografia real, Galaxy Room, navy/laranja, ritmo amplo)
   sem virar uma coleção de cards "premium" genéricos.
   ========================================================================== */

/* --- Tipografia de marca: títulos editoriais usam a mesma voz de "pelo afeto". --- */
.aprendiz-site-shell :where(
  .editorial-hero-title,.internal-hero-title,.section-title,.cta-title,
  .article-hero-title,.legal-heading
) {
  font-family: "Outfit", sans-serif;
  font-weight: 400;
  letter-spacing: -.025em;
}
.aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title,.section-title,.cta-title,.article-hero-title) {
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.aprendiz-site-shell :where(.internal-hero-lead,.editorial-hero-lead,.section-subtitle,.about-text-lead,.about-text-body) {
  max-width: 62ch;
}

/* --- Home hero: slides empilhados para crossfade real, sem quadro branco. --- */
.aprendiz-site-shell .hero-slider-section,
.aprendiz-site-shell .hero-slider-container,
.aprendiz-site-shell .hero-slider-track {
  background: #272A5A;
}
.aprendiz-site-shell .hero-slider-track {
  display: block;
  position: relative;
  aspect-ratio: 1600 / 522;
  overflow: hidden;
}
.aprendiz-site-shell .hero-slide {
  display: block !important;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.012);
  z-index: 0;
  transition:
    opacity .72s cubic-bezier(.22,.61,.36,1),
    transform 1.05s cubic-bezier(.22,.61,.36,1),
    visibility 0s linear .74s;
  will-change: opacity, transform;
}
.aprendiz-site-shell .hero-slide.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  z-index: 2;
  transition-delay: 0s;
}
.aprendiz-site-shell .hero-slide.is-leaving {
  display: block !important;
  opacity: 0;
  visibility: visible;
  transform: scale(1.006);
  z-index: 1;
  transition-delay: 0s;
}
.aprendiz-site-shell .hero-slide-picture,
.aprendiz-site-shell .hero-slide-img {
  display: block;
  width: 100%;
  height: 100%;
}
.aprendiz-site-shell .hero-slide-img { object-fit: cover; }
.aprendiz-site-shell .slider-arrow {
  width: 40px;
  height: 40px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: 0 6px 22px rgba(10,25,49,.13);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  font-size: .82rem;
  opacity: .86;
  color: #272A5A;
}
.aprendiz-site-shell .slider-arrow:hover,
.aprendiz-site-shell .slider-arrow:focus-visible {
  opacity: 1;
  background: #fff;
  color: var(--aprendiz-orange);
  transform: translateY(-50%) scale(1.03);
}
.aprendiz-site-shell .slider-arrow.prev { left: clamp(.65rem,2.3vw,2rem); }
.aprendiz-site-shell .slider-arrow.next { right: clamp(.65rem,2.3vw,2rem); }
.aprendiz-site-shell .slider-dots {
  bottom: clamp(.7rem,2vw,1.1rem);
  padding: .32rem .65rem;
  gap: .42rem;
  background: rgba(7,23,43,.44);
  border-color: rgba(255,255,255,.16);
  box-shadow: none;
}
.aprendiz-site-shell .slider-dot { width: 7px; height: 7px; }
.aprendiz-site-shell .slider-dot.active { width: 23px; }

/* --- WhatsApp FAB: ícone correto + leve profundidade, sem aspecto de telefone torto. --- */
.aprendiz-site-shell .mobile-whatsapp-fab {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  color: #fff !important;
  background: linear-gradient(145deg,#31e777 0%,#25D366 42%,#16b957 100%) !important;
  border: 1px solid rgba(255,255,255,.48) !important;
  box-shadow:
    0 13px 32px rgba(20,177,80,.28),
    0 4px 10px rgba(10,25,49,.13),
    inset 0 1px 0 rgba(255,255,255,.38) !important;
  overflow: hidden;
  isolation: isolate;
}
.aprendiz-site-shell .mobile-whatsapp-fab::before {
  content: '';
  position: absolute;
  inset: 3px 7px auto 7px;
  height: 20px;
  border-radius: 50%;
  background: linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0));
  pointer-events: none;
  z-index: -1;
}
.aprendiz-site-shell .mobile-whatsapp-fab-icon {
  font-size: 1.78rem !important;
  line-height: 1 !important;
  transform: none !important;
  font-style: normal;
}
.aprendiz-site-shell .mobile-whatsapp-fab:hover { transform: translateY(-2px) scale(1.025); }

/* --- Ritmo comum das páginas internas: menos “caixas”, mais página. --- */
.aprendiz-site-shell :where(.page-editorial-hero,.aprendiz-internal-hero) {
  padding: clamp(4rem,7vw,7rem) clamp(1rem,4vw,2rem);
  background:
    radial-gradient(circle at 8% 10%,rgba(237,125,4,.08),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbfaf7 100%);
}
.aprendiz-site-shell :where(.page-editorial-hero,.aprendiz-internal-hero) .section-container {
  max-width: 1240px;
}
.aprendiz-site-shell :where(.editorial-hero-grid,.internal-hero-grid) {
  gap: clamp(2.5rem,6vw,6rem);
  align-items: center;
}
.aprendiz-site-shell :where(.editorial-hero-badge,.section-tag .badge-orange,.section-tag .badge-navy,.section-tag .badge-gold) {
  border-radius: 8px;
}
.aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) {
  font-size: clamp(3.15rem,5.8vw,5.7rem);
  line-height: .93;
  max-width: 10.8ch;
  color: var(--aprendiz-navy);
}
.aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) .highlight-script {
  display: inline;
  color: var(--aprendiz-orange);
  font: inherit;
}
.aprendiz-site-shell :where(.editorial-hero-lead,.internal-hero-lead) {
  margin-top: 1.4rem;
  font-size: clamp(1rem,1.35vw,1.16rem);
  line-height: 1.72;
}
.aprendiz-site-shell :where(.editorial-hero-actions,.internal-hero-actions) { margin-top: 1.65rem; }

/* Meta/provas viram uma faixa informacional, não quatro “cards de dashboard”. */
.aprendiz-site-shell :where(.editorial-hero-stats,.internal-proof-grid) {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0;
  margin-top: 2.1rem;
  border-top: 1px solid rgba(39,42,90,.12);
  border-bottom: 1px solid rgba(39,42,90,.12);
}
.aprendiz-site-shell :where(.editorial-hero-stat-item,.internal-proof-item) {
  min-width: 0;
  padding: .9rem 1rem .9rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.aprendiz-site-shell :where(.editorial-hero-stat-item,.internal-proof-item):nth-child(even) { padding-left: 1rem; border-left: 1px solid rgba(39,42,90,.09); }
.aprendiz-site-shell .editorial-hero-stat-item i { color: var(--aprendiz-orange); }
.aprendiz-site-shell .internal-proof-item strong { color: var(--aprendiz-navy); font-family:"Outfit",sans-serif; }

/* --------------------------------------------------------------------------
   SEGMENTOS — a progressão de idade aparece nas fotografias e nos capítulos.
   -------------------------------------------------------------------------- */
.aprendiz-page-segmentos .segment-hero-media { min-width: 0; }
.aprendiz-page-segmentos .segment-hero-portraits {
  position: relative;
  display: grid;
  grid-template-columns: 1.02fr .82fr;
  grid-template-rows: 1fr 1fr;
  gap: .72rem;
  min-height: 540px;
}
.aprendiz-page-segmentos .segment-hero-portrait {
  margin: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #ece7dd;
}
.aprendiz-page-segmentos .segment-hero-portrait img { width:100%;height:100%;object-fit:cover;display:block; }
.aprendiz-page-segmentos .segment-hero-portrait--early { grid-row: 1 / 3; }
.aprendiz-page-segmentos .segment-hero-portrait--early img { object-position:center 25%; }
.aprendiz-page-segmentos .segment-hero-portrait--middle img { object-position:center 40%; }
.aprendiz-page-segmentos .segment-hero-portrait--teen img { object-position:center 38%; }
.aprendiz-page-segmentos .editorial-hero-float-badge {
  border-radius: 10px;
  box-shadow: 0 14px 38px rgba(10,25,49,.12);
}
.aprendiz-page-segmentos .editorial-hero-pills {
  margin-top: 1rem;
  gap: .35rem .85rem;
}
.aprendiz-page-segmentos .editorial-hero-pill-link {
  border-radius: 0;
  padding: .45rem 0;
  border: 0;
  border-bottom: 1px solid rgba(39,42,90,.18);
  background: transparent;
  box-shadow: none;
}
.aprendiz-page-segmentos .segment-chapter {
  position: relative;
  padding-block: clamp(4.8rem,8vw,7.7rem) !important;
  overflow: clip;
}
.aprendiz-page-segmentos .segment-chapter::before {
  top: 2rem;
  left: max(1rem,calc((100% - 1240px)/2));
  font-size: clamp(4rem,7vw,7.2rem);
  line-height: 1;
  opacity: .035;
  letter-spacing: -.07em;
}
.aprendiz-page-segmentos .segment-chapter .about-overview-grid {
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  align-items: center;
  gap: clamp(2.5rem,6vw,6.2rem);
}
.aprendiz-page-segmentos .segment-chapter:nth-child(even) .about-overview-grid { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); }
.aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card {
  border-radius: 10px;
  box-shadow: 0 22px 55px rgba(10,25,49,.1);
}
.aprendiz-page-segmentos .segment-chapter:nth-of-type(even) .editorial-hero-photo-card { border-radius: 10px; }
.aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.aprendiz-page-segmentos .segment-chapter .about-narrative-block { max-width: 610px; }
.aprendiz-page-segmentos .segment-chapter .section-title {
  font-size: clamp(2.8rem,4.4vw,4.55rem);
  line-height: .97;
  max-width: 11ch;
}
.aprendiz-page-segmentos .segment-chapter .about-text-body p,
.aprendiz-page-segmentos .segment-chapter .about-text-body li { line-height: 1.68; }
.aprendiz-page-segmentos .segment-chapter .about-text-body i.fa-circle-check { color: var(--aprendiz-orange); }
.aprendiz-page-segmentos .segment-chapter .editorial-hero-float-badge { border-radius: 9px; }

/* --------------------------------------------------------------------------
   SOBRE — pilares e história como narrativa institucional, sem card farm.
   -------------------------------------------------------------------------- */
.aprendiz-page-sobre .sobre-hero-photo-story {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(130px,.38fr);
  gap: .72rem;
  align-items: end;
}
.aprendiz-page-sobre .sobre-hero-photo { margin:0;overflow:hidden;border-radius:10px;background:#eee; }
.aprendiz-page-sobre .sobre-hero-photo img { width:100%;height:100%;object-fit:cover;display:block; }
.aprendiz-page-sobre .sobre-hero-photo--main { height: 540px; }
.aprendiz-page-sobre .sobre-hero-photo--detail { height: 285px; transform: translateY(1.4rem); }
.aprendiz-page-sobre .sobre-chapter--pilares { background: #fff !important; }
.aprendiz-page-sobre .sobre-chapter--pilares .diff-grid-v2 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0 2.5rem;
  border-top: 1px solid rgba(39,42,90,.12);
}
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2,
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2:first-child,
.aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2:last-child {
  grid-column: auto;
  min-height: 0;
  padding: 2.1rem 0 2.35rem;
  border: 0;
  border-bottom: 1px solid rgba(39,42,90,.12);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.aprendiz-page-sobre .sobre-chapter--pilares .diff-watermark-number { display:none; }
.aprendiz-page-sobre .sobre-chapter--pilares .diff-icon-header { margin-bottom: .95rem; }
.aprendiz-page-sobre .sobre-chapter--pilares .diff-custom-icon { width: 46px; height:46px; object-fit:contain; }
.aprendiz-page-sobre .sobre-chapter--pilares .diff-title { font-size: 1.28rem; }
.aprendiz-page-sobre .sobre-chapter--pilares .diff-pill-tag {
  border-radius: 0;
  padding: .25rem 0;
  background: transparent;
  border: 0;
  color: var(--aprendiz-orange);
}
.aprendiz-page-sobre .sobre-chapter--historia {
  background: #0a1931 !important;
}
.aprendiz-page-sobre .sobre-chapter--historia .sobre-timeline-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.18);
  margin-top: 2.8rem;
}
.aprendiz-page-sobre .sobre-chapter--historia .sobre-era-card {
  position: relative;
  padding: 2rem 1.4rem 1rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
}
.aprendiz-page-sobre .sobre-chapter--historia .sobre-era-card::before {
  content:'';
  position:absolute;
  width:9px;height:9px;border-radius:50%;
  top:-5px;left:0;background:var(--aprendiz-orange);
  box-shadow:0 0 0 5px rgba(237,125,4,.14);
}
.aprendiz-page-sobre .sobre-chapter--historia .sobre-era-year { font-size: 1.05rem; }
.aprendiz-page-sobre .sobre-chapter--historia .reveal-on-scroll[style*="display: flex"] { gap:.55rem !important; }
.aprendiz-page-sobre .sobre-chapter--historia .reveal-on-scroll[style*="display: flex"] img { border-radius: 8px !important; box-shadow:none !important; }
.aprendiz-page-sobre .sobre-chapter--pedagogia .editorial-hero-photo-card { border-radius:10px;box-shadow:0 22px 58px rgba(10,25,49,.1); }

/* --------------------------------------------------------------------------
   ESTRUTURA — fotos primeiro. Textos funcionam como legenda editorial.
   -------------------------------------------------------------------------- */
.aprendiz-page-estrutura .structure-photo-story {
  display:grid;
  grid-template-columns: 1.35fr .65fr;
  grid-template-rows: repeat(2,minmax(0,1fr));
  gap:.65rem;
  background:transparent;
  padding:0;
  border:0;
  box-shadow:none;
}
.aprendiz-page-estrutura .structure-photo { overflow:hidden;border-radius:9px;min-width:0; }
.aprendiz-page-estrutura .structure-photo img { width:100%;height:100%;object-fit:cover;display:block; }
.aprendiz-page-estrutura .structure-photo--main { grid-row:1/3; }
.aprendiz-page-estrutura .structure-photo--main img { min-height:540px; }
.aprendiz-page-estrutura .internal-visual-caption {
  grid-column:1/3;
  position:static;
  border-radius:0;
  padding:.75rem 0 0;
  background:transparent;
  color:var(--aprendiz-navy);
  box-shadow:none;
  border:0;
}
.aprendiz-page-estrutura .gallery-filter-bar {
  border-bottom:1px solid rgba(39,42,90,.12);
  gap:1.2rem;
}
.aprendiz-page-estrutura .gallery-filter-btn {
  border:0;
  border-radius:0;
  background:transparent;
  padding:.75rem 0;
  box-shadow:none;
  border-bottom:2px solid transparent;
}
.aprendiz-page-estrutura .gallery-filter-btn.active { border-bottom-color:var(--aprendiz-orange); }
.aprendiz-page-estrutura .estrutura-gallery-grid { gap: clamp(1.1rem,2vw,1.7rem); }
.aprendiz-page-estrutura .gallery-card,
.aprendiz-page-estrutura .gallery-card:nth-child(even) {
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.aprendiz-page-estrutura .gallery-card-media { border-radius:9px;overflow:hidden;background:#eee; }
.aprendiz-page-estrutura .gallery-card-img { transition:transform .6s cubic-bezier(.22,.61,.36,1); }
.aprendiz-page-estrutura .gallery-card:hover .gallery-card-img { transform:scale(1.025); }
.aprendiz-page-estrutura .gallery-card-body { padding:1rem 0 1.2rem;border-bottom:1px solid rgba(39,42,90,.12); }
.aprendiz-page-estrutura .gallery-card-badge { border-radius:6px; }
.aprendiz-page-estrutura .diferenciais-infra-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 2.5rem;
  border-top:1px solid rgba(39,42,90,.12);
}
.aprendiz-page-estrutura .infra-feature-card {
  padding:2rem 0;
  border:0;
  border-bottom:1px solid rgba(39,42,90,.12);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

/* --------------------------------------------------------------------------
   BLOG — página editorial real, não grade de cards de SaaS.
   -------------------------------------------------------------------------- */
.aprendiz-page-blog .blog-story-hero { background:#fff; }
.aprendiz-page-blog .blog-editorial-board { position:relative; }
.aprendiz-page-blog .blog-editorial-image { overflow:hidden;border-radius:10px; }
.aprendiz-page-blog .blog-editorial-image img { display:block;width:100%;aspect-ratio:4/5;object-fit:cover; }
.aprendiz-page-blog .blog-editorial-note {
  width:min(90%,360px);
  margin:-4.6rem 0 0 auto;
  position:relative;
  padding:1.25rem 1.35rem;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(39,42,90,.1);
  box-shadow:0 14px 42px rgba(10,25,49,.1);
}
.aprendiz-page-blog .blog-topic-strip {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin-top:1.25rem;
  border-top:1px solid rgba(39,42,90,.12);
  border-bottom:1px solid rgba(39,42,90,.12);
}
.aprendiz-page-blog .blog-topic-strip>div { padding:.9rem .85rem .9rem 0; }
.aprendiz-page-blog .blog-topic-strip>div+div { padding-left:.85rem;border-left:1px solid rgba(39,42,90,.09); }
.aprendiz-page-blog .aprendiz-blog-dynamic { background:#fbfaf7 !important; border-radius:0 !important; }
.aprendiz-page-blog .aprendiz-blog-search { margin-inline:0 !important; }
.aprendiz-page-blog .aprendiz-blog-search input { border-radius:10px !important;box-shadow:none !important; }
.aprendiz-page-blog .aprendiz-blog-search button { border-radius:8px !important; }
.aprendiz-page-blog .blog-filter-bar { border-bottom:1px solid rgba(39,42,90,.12);gap:1.25rem; }
.aprendiz-page-blog .blog-filter-btn {
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:.7rem 0 !important;
  box-shadow:none !important;
  border-bottom:2px solid transparent !important;
}
.aprendiz-page-blog .blog-filter-btn.active { border-bottom-color:var(--aprendiz-orange) !important; }
.aprendiz-page-blog .blog-cards-grid { gap:1.7rem !important; }
.aprendiz-page-blog .blog-card,
.aprendiz-page-blog .blog-cards-grid>.blog-card:first-child {
  border-radius:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.aprendiz-page-blog .blog-thumb-wrapper { overflow:hidden;border-radius:9px;background:#eee; }
.aprendiz-page-blog .blog-card-content { padding:1.1rem 0 1.35rem;border-bottom:1px solid rgba(39,42,90,.12); }
.aprendiz-page-blog .blog-category-badge { border-radius:6px; }
.aprendiz-page-blog .blog-read-more { border-radius:0; }
.aprendiz-page-blog .aprendiz-blog-pagination a { border-radius:6px; }

/* --------------------------------------------------------------------------
   CONTATO — recepção digital, canais em lista, formulário com respiro.
   -------------------------------------------------------------------------- */
.aprendiz-page-contato .contact-hub-card { border-radius:10px;overflow:hidden;box-shadow:0 20px 54px rgba(10,25,49,.09); }
.aprendiz-page-contato .contact-hub-photo { min-height:370px; }
.aprendiz-page-contato .contact-hub-photo img { width:100%;height:100%;object-fit:cover; }
.aprendiz-page-contato .contact-hub-panel { border-radius:0;padding:1.1rem 1.3rem; }
.aprendiz-page-contato .contact-hub-row { border-radius:0;border:0;border-bottom:1px solid rgba(39,42,90,.1);background:transparent; }
.aprendiz-page-contato .contact-hub-response { border-radius:7px; }
.aprendiz-page-contato .contato-main-grid { gap:clamp(2.5rem,6vw,5rem); }
.aprendiz-page-contato .contato-form-card {
  border-radius:10px;
  box-shadow:0 18px 50px rgba(10,25,49,.06);
  padding:clamp(1.5rem,4vw,2.6rem);
}
.aprendiz-page-contato .contato-form-card::before { height:4px; }
.aprendiz-page-contato .card-direct-whatsapp,
.aprendiz-page-contato .card-info-pratica {
  border-radius:9px;
  box-shadow:none;
}
.aprendiz-page-contato .channel-item-link { border-radius:0;border:0;border-bottom:1px solid rgba(39,42,90,.1); }
.aprendiz-page-contato .map-embed-wrapper { border-radius:10px;overflow:hidden; }

/* --------------------------------------------------------------------------
   LEGAIS — leitura de documento, sem “AI premium card”.
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .legal-story-hero {
  padding-block:clamp(4.5rem,7vw,7rem) !important;
  background:#fbfaf7 !important;
  background-image:none !important;
}
.aprendiz-site-shell .legal-story-hero .section-container {
  max-width:1000px !important;
  padding:0 !important;
  text-align:left !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
.aprendiz-site-shell .legal-story-hero .section-container::before { display:none; }
.aprendiz-site-shell .legal-story-hero .editorial-hero-title { max-width:10.5ch; }
.aprendiz-site-shell .legal-meta-row {
  display:flex;
  flex-wrap:wrap;
  gap:.7rem 1.3rem;
  margin-top:1.8rem;
  padding-top:1rem;
  border-top:1px solid rgba(39,42,90,.12);
  font-size:.82rem;
  color:#64748b;
}
.aprendiz-site-shell .legal-content-container { padding-block:clamp(3.5rem,6vw,6rem); }
.aprendiz-site-shell .legal-section-card {
  padding:2rem 0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(39,42,90,.12) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
.aprendiz-site-shell .legal-section-num { color:var(--aprendiz-orange);font-size:.75rem; }
.aprendiz-site-shell .legal-heading { font-family:"Outfit",sans-serif;font-weight:800;letter-spacing:-.02em; }
.aprendiz-site-shell .legal-highlight-box,
.aprendiz-site-shell .dpo-contact-card { border-radius:8px; }

/* --------------------------------------------------------------------------
   CTAs INTERNOS — banda de marca, sem cápsula gigante flutuando.
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .pre-footer-cta-section {
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
  background:#0a1931;
  padding:clamp(4rem,6vw,6.2rem) 1rem;
}
.aprendiz-site-shell .pre-footer-cta-section .cta-inner-card {
  max-width:1120px;
  margin-inline:auto;
  border-radius:0;
  border:0;
  box-shadow:none;
  background:transparent;
  padding:0;
}
.aprendiz-site-shell .pre-footer-cta-section .cta-title { max-width:13ch;margin-inline:auto;color:#fff; }
.aprendiz-site-shell .pre-footer-cta-section .cta-description { max-width:58ch;margin-inline:auto;color:rgba(255,255,255,.72); }

/* --------------------------------------------------------------------------
   ARTIGOS — leitura editorial coerente com o blog e com a Home.
   -------------------------------------------------------------------------- */
.aprendiz-blog-single .article-container { max-width:920px;padding-block:clamp(3.5rem,6vw,6rem); }
.aprendiz-blog-single .article-header { max-width:800px;margin-bottom:2rem; }
.aprendiz-blog-single .article-hero-title { font-size:clamp(3rem,6vw,5.5rem);line-height:.95;max-width:11ch; }
.aprendiz-blog-single .aprendiz-article-cover { border-radius:10px !important;box-shadow:0 18px 50px rgba(10,25,49,.08) !important; }
.aprendiz-blog-single .table-of-contents { border-radius:8px;background:#fbfaf7;border:1px solid rgba(39,42,90,.1); }
.aprendiz-blog-single .article-content { font-size:1.05rem;line-height:1.8; }
.aprendiz-blog-single .article-content h2 { font-family:"Outfit",sans-serif;font-weight:800;font-size:clamp(2.4rem,4vw,3.5rem);line-height:1; }
.aprendiz-blog-single .author-box { border-radius:8px; }
.aprendiz-blog-single .related-articles-grid>a { border-radius:8px !important;box-shadow:none !important; }

/* --------------------------------------------------------------------------
   FOOTER — rodapé de verdade: marca, navegação e credenciais em camadas claras.
   -------------------------------------------------------------------------- */
.aprendiz-site-shell .site-footer--studio {
  position:relative;
  margin:0;
  padding:clamp(4.4rem,7vw,6.2rem) clamp(1rem,4vw,2rem) 1.7rem;
  border-radius:0 !important;
  background:#0E1B36;
  color:#fff;
  overflow:hidden;
}
.aprendiz-site-shell .site-footer--studio::before {
  content:'';
  position:absolute;inset:0 0 auto;height:4px;
  background:linear-gradient(90deg,var(--aprendiz-orange) 0 22%,rgba(237,125,4,.18) 22% 100%);
}
.aprendiz-site-shell .site-footer--studio .footer-container { max-width:1240px;margin-inline:auto; }
.aprendiz-site-shell .footer-main-layout--studio {
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.55fr);
  gap:clamp(3rem,7vw,7rem);
  align-items:start;
}
.aprendiz-site-shell .footer-brand-pane { display:block; }
.aprendiz-site-shell .footer-brand-logo { width:180px;height:auto;max-height:none; }
.aprendiz-site-shell .footer-motto-lockup { margin-top:2rem; }
.aprendiz-site-shell .footer-motto-eyebrow {
  display:block;
  color:#f4a54b;
  font:700 .72rem/1.35 "Outfit",sans-serif;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.aprendiz-site-shell .footer-motto-headline {
  max-width:8.5ch;
  margin:.65rem 0 .85rem;
  color:#fff;
  font-size:clamp(2.1rem,3.4vw,3.4rem);
  line-height:.96;
}
.aprendiz-site-shell .footer-brand-manifesto { max-width:44ch;color:rgba(255,255,255,.64);font-size:.88rem;line-height:1.65; }
.aprendiz-site-shell .footer-social-channels { display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem; }
.aprendiz-site-shell .footer-social-link {
  width:auto;height:auto;min-height:42px;
  display:inline-flex;align-items:center;gap:.6rem;
  padding:.55rem .75rem;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:#fff;
}
.aprendiz-site-shell .footer-social-link:hover { background:rgba(255,255,255,.08); }
.aprendiz-site-shell .footer-social-badge { display:grid;place-items:center;width:22px;height:22px;color:#f4a54b; }
.aprendiz-site-shell .footer-social-text { display:inline;color:rgba(255,255,255,.82);font-size:.78rem;font-weight:650; }
.aprendiz-site-shell .footer-nav-pane { display:grid;grid-template-columns:1.08fr .88fr .88fr;gap:2.3rem; }
.aprendiz-site-shell .footer-nav-title { margin:0 0 .9rem;padding:0 0 .65rem;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em; }
.aprendiz-site-shell .footer-nav-list { display:grid;gap:.12rem; }
.aprendiz-site-shell .footer-nav-list li a { min-height:0;padding:.38rem 0;color:rgba(255,255,255,.66);font-size:.79rem;line-height:1.45; }
.aprendiz-site-shell .footer-nav-list li a:hover { color:#fff; }
.aprendiz-site-shell .footer-credentials-bar--studio {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2rem;
  margin-top:3.3rem;
  padding:1.5rem 0;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.aprendiz-site-shell .footer-credential-block { display:flex;align-items:flex-start;gap:.8rem; }
.aprendiz-site-shell .footer-credential-icon { color:#f4a54b;font-size:1rem;margin-top:.1rem; }
.aprendiz-site-shell .footer-credential-text { display:grid;gap:.2rem; }
.aprendiz-site-shell .footer-credential-text strong { color:#fff;font-size:.8rem; }
.aprendiz-site-shell .footer-credential-text span { color:rgba(255,255,255,.58);font-size:.74rem;line-height:1.5; }
.aprendiz-site-shell .footer-legal-bar--studio { margin-top:1.25rem;padding:0; }
.aprendiz-site-shell .footer-legal-links { display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;color:rgba(255,255,255,.45);font-size:.69rem; }
.aprendiz-site-shell .footer-legal-links a { color:rgba(255,255,255,.54); }
.aprendiz-site-shell .footer-back-to-top { margin-left:auto;display:inline-flex;gap:.4rem;align-items:center; }

/* ==========================================================================
   MOBILE DEDICADO v3.4 — menos radius, mais respiro e zero “desktop espremido”.
   ========================================================================== */
@media (max-width: 767px) {
  .aprendiz-site-shell body { padding-bottom:0 !important; }
  .aprendiz-site-shell .aprendiz-page-main { overflow:clip; }

  /* Hero da home mantém a arte mobile inteira e transiciona em camada. */
  .aprendiz-site-shell .hero-slider-track { aspect-ratio:9 / 16; }
  .aprendiz-site-shell .slider-arrow {
    width:32px;height:32px;font-size:.7rem;
    background:rgba(255,255,255,.66);
    border-color:rgba(255,255,255,.55);
    box-shadow:0 4px 16px rgba(10,25,49,.1);
  }
  .aprendiz-site-shell .slider-arrow.prev { left:.42rem; }
  .aprendiz-site-shell .slider-arrow.next { right:.42rem; }

  /* Cantos: superfícies são discretas; pills continuam pills. */
  .aprendiz-site-shell :where(
    .editorial-hero-photo-card,.structure-photo,.gallery-card-media,.blog-thumb-wrapper,
    .contato-form-card,.contact-hub-card,.map-embed-wrapper,.google-reviews-summary-bar,
    .google-review-card,.insta-section-wrapper,.insta-feed-card,.cta-inner-card,
    .legal-highlight-box,.dpo-contact-card,.table-of-contents,.author-box
  ) { border-radius:12px !important; }

  .aprendiz-site-shell :where(.page-editorial-hero,.aprendiz-internal-hero) {
    padding:3.3rem 1rem 3.6rem;
  }
  .aprendiz-site-shell :where(.editorial-hero-grid,.internal-hero-grid) {
    grid-template-columns:minmax(0,1fr) !important;
    gap:2.3rem !important;
  }
  .aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) {
    max-width:12ch;
    font-size:clamp(2.75rem,13vw,4.05rem) !important;
    line-height:.94 !important;
  }
  .aprendiz-site-shell :where(.editorial-hero-lead,.internal-hero-lead) {
    font-size:.96rem !important;
    line-height:1.65 !important;
  }
  .aprendiz-site-shell :where(.editorial-hero-actions,.internal-hero-actions) {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:.65rem !important;
    width:100%;
  }
  .aprendiz-site-shell :where(.editorial-hero-actions,.internal-hero-actions)>* {
    width:100% !important;
    min-width:0 !important;
    justify-content:center;
    white-space:normal !important;
  }
  .aprendiz-site-shell :where(.editorial-hero-stats,.internal-proof-grid) {
    grid-template-columns:1fr !important;
    margin-top:1.7rem;
  }
  .aprendiz-site-shell :where(.editorial-hero-stat-item,.internal-proof-item),
  .aprendiz-site-shell :where(.editorial-hero-stat-item,.internal-proof-item):nth-child(even) {
    padding:.72rem 0 !important;
    border-left:0 !important;
    border-bottom:1px solid rgba(39,42,90,.08);
  }
  .aprendiz-site-shell :where(.editorial-hero-stat-item,.internal-proof-item):last-child { border-bottom:0; }

  /* Segmentos — retratos contam a progressão; capítulos não têm mega números. */
  .aprendiz-page-segmentos .segment-hero-portraits {
    grid-template-columns:1.15fr .85fr;
    grid-template-rows:1fr 1fr;
    min-height:390px;
    gap:.45rem;
  }
  .aprendiz-page-segmentos .segment-hero-portrait { border-radius:10px; }
  .aprendiz-page-segmentos .editorial-hero-float-badge { position:static;margin-top:.7rem;border-radius:9px; }
  .aprendiz-page-segmentos .editorial-hero-pills {
    display:flex;overflow-x:auto;flex-wrap:nowrap;gap:.9rem;
    padding:.2rem 0 .5rem;scroll-snap-type:x proximity;scrollbar-width:none;
  }
  .aprendiz-page-segmentos .editorial-hero-pills::-webkit-scrollbar{display:none}
  .aprendiz-page-segmentos .editorial-hero-pill-link { flex:0 0 auto;scroll-snap-align:start; }
  .aprendiz-page-segmentos .segment-chapter { padding:4.2rem 1rem !important; }
  .aprendiz-page-segmentos .segment-chapter::before { display:none; }
  .aprendiz-page-segmentos .segment-chapter .about-overview-grid,
  .aprendiz-page-segmentos .segment-chapter:nth-child(even) .about-overview-grid {
    grid-template-columns:minmax(0,1fr) !important;
    gap:1.8rem !important;
  }
  .aprendiz-page-segmentos .segment-chapter .section-title { font-size:clamp(2.55rem,11vw,3.5rem) !important;max-width:11ch; }
  .aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card img { aspect-ratio:4/3; }

  /* Sobre — pilares voltam a ser leitura vertical, com respiro. */
  .aprendiz-page-sobre .sobre-hero-photo-story { grid-template-columns:1fr .42fr;gap:.45rem; }
  .aprendiz-page-sobre .sobre-hero-photo--main { height:370px; }
  .aprendiz-page-sobre .sobre-hero-photo--detail { height:210px;transform:translateY(.65rem); }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-grid-v2 {
    display:grid !important;
    grid-template-columns:1fr !important;
    overflow:visible !important;
    gap:0 !important;
    padding:0 !important;
  }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2 {
    width:100% !important;min-height:0 !important;flex:none !important;
    padding:1.75rem 0 1.9rem !important;
  }
  .aprendiz-page-sobre .sobre-chapter--historia .sobre-timeline-grid {
    grid-template-columns:1fr;
    border-top:0;
    border-left:1px solid rgba(255,255,255,.2);
    margin-left:.35rem;
    padding-left:1.3rem;
    gap:.4rem;
  }
  .aprendiz-page-sobre .sobre-chapter--historia .sobre-era-card { padding:1.25rem 0 1.55rem; }
  .aprendiz-page-sobre .sobre-chapter--historia .sobre-era-card::before { top:1.5rem;left:-1.58rem; }
  .aprendiz-page-sobre .sobre-chapter--historia .reveal-on-scroll[style*="display: flex"] {
    display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:.45rem !important;
  }
  .aprendiz-page-sobre .sobre-chapter--historia .reveal-on-scroll[style*="display: flex"] img {
    min-width:0 !important;width:100% !important;height:125px !important;border-radius:8px !important;
  }

  /* Estrutura — mosaico simples, fotos grandes, legendas respirando. */
  .aprendiz-page-estrutura .structure-photo-story {
    grid-template-columns:1fr 1fr;
    grid-template-rows:260px 155px auto;
    gap:.45rem;
  }
  .aprendiz-page-estrutura .structure-photo--main { grid-column:1/3;grid-row:1; }
  .aprendiz-page-estrutura .structure-photo--main img { min-height:0;height:260px; }
  .aprendiz-page-estrutura .structure-photo--class { grid-column:1;grid-row:2; }
  .aprendiz-page-estrutura .structure-photo--kids { grid-column:2;grid-row:2; }
  .aprendiz-page-estrutura .internal-visual-caption { grid-column:1/3;grid-row:3;padding-top:.7rem; }
  .aprendiz-page-estrutura .gallery-filter-bar {
    display:flex;flex-wrap:nowrap;overflow-x:auto;gap:1rem;scrollbar-width:none;
  }
  .aprendiz-page-estrutura .gallery-filter-bar::-webkit-scrollbar{display:none}
  .aprendiz-page-estrutura .gallery-filter-btn { flex:0 0 auto; }
  .aprendiz-page-estrutura .estrutura-gallery-grid { grid-template-columns:1fr !important;gap:1.7rem !important; }
  .aprendiz-page-estrutura .gallery-card { grid-column:auto !important; }
  .aprendiz-page-estrutura .gallery-card-media { min-height:0 !important;aspect-ratio:4/3; }
  .aprendiz-page-estrutura .diferenciais-infra-grid { grid-template-columns:1fr;gap:0; }

  /* Blog — busca e artigos viram publicação editorial de uma coluna. */
  .aprendiz-page-blog .blog-editorial-image img { aspect-ratio:4/3; }
  .aprendiz-page-blog .blog-editorial-note { width:calc(100% - 1.2rem);margin:-2.2rem 0 0 1.2rem;padding:1rem; }
  .aprendiz-page-blog .blog-topic-strip { grid-template-columns:1fr; }
  .aprendiz-page-blog .blog-topic-strip>div,
  .aprendiz-page-blog .blog-topic-strip>div+div { padding:.7rem 0;border-left:0;border-bottom:1px solid rgba(39,42,90,.08); }
  .aprendiz-page-blog .aprendiz-blog-dynamic { padding:3.6rem 1rem !important; }
  .aprendiz-page-blog .blog-filter-bar { overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none; }
  .aprendiz-page-blog .blog-cards-grid { grid-template-columns:1fr !important;gap:2rem !important; }
  .aprendiz-page-blog .blog-cards-grid>.blog-card,
  .aprendiz-page-blog .blog-cards-grid>.blog-card:first-child { display:block;grid-column:auto;min-height:0; }
  .aprendiz-page-blog .blog-cards-grid>.blog-card:first-child .blog-thumb-wrapper { min-height:0;height:auto; }
  .aprendiz-page-blog .blog-thumb-wrapper { aspect-ratio:4/3; }
  .aprendiz-page-blog .blog-card-content { padding:1rem 0 1.4rem; }
  .aprendiz-page-blog .blog-title { font-size:1.25rem !important;line-height:1.28 !important; }

  /* Contato — uma coluna de verdade. */
  .aprendiz-page-contato .contact-hub-photo { min-height:280px; }
  .aprendiz-page-contato .contato-main-grid { grid-template-columns:1fr !important;gap:2.4rem !important; }
  .aprendiz-page-contato .contato-form-card { padding:1.25rem !important; }
  .aprendiz-page-contato .contato-sidebar { gap:1rem; }

  /* Legais e artigos: leitura confortável e linear. */
  .aprendiz-site-shell .legal-story-hero { padding:3.6rem 1rem !important; }
  .aprendiz-site-shell .legal-story-hero .editorial-hero-title { max-width:12ch; }
  .aprendiz-site-shell .legal-meta-row { display:grid;gap:.55rem; }
  .aprendiz-site-shell .legal-content-container { padding:2.5rem 1rem 4rem; }
  .aprendiz-site-shell .legal-section-card { padding:1.55rem 0 !important; }
  .aprendiz-blog-single .article-container { padding:3rem 1rem 4rem; }
  .aprendiz-blog-single .article-hero-title { font-size:clamp(2.7rem,13vw,4rem);max-width:12ch; }

  /* CTA final encaixa no fluxo da página sem virar um card gigante arredondado. */
  .aprendiz-site-shell .pre-footer-cta-section { padding:3.7rem 1rem; }
  .aprendiz-site-shell .pre-footer-cta-section .cta-inner-card { border-radius:0 !important; }

  /* Footer mobile: visual de rodapé, não um menu apertado. */
  .aprendiz-site-shell .site-footer--studio {
    padding:3.35rem 1.1rem calc(1.35rem + env(safe-area-inset-bottom)) !important;
    border-radius:0 !important;
  }
  .aprendiz-site-shell .footer-main-layout--studio { grid-template-columns:1fr;gap:2.5rem; }
  .aprendiz-site-shell .footer-brand-pane { display:block !important; }
  .aprendiz-site-shell .footer-brand-logo { width:158px !important;height:auto !important;max-width:158px !important;max-height:none !important; }
  .aprendiz-site-shell .footer-motto-lockup { display:block !important;margin-top:1.65rem !important; }
  .aprendiz-site-shell .footer-motto-eyebrow { font-size:.64rem;letter-spacing:.1em; }
  .aprendiz-site-shell .footer-motto-headline {
    display:block !important;
    margin:.55rem 0 .65rem !important;
    max-width:8.8ch;
    font-size:2.45rem !important;
    line-height:.96 !important;
  }
  .aprendiz-site-shell .footer-brand-manifesto {
    display:block !important;
    max-width:36ch;
    margin:0 !important;
    color:rgba(255,255,255,.6) !important;
    font-size:.78rem !important;
    line-height:1.6 !important;
  }
  .aprendiz-site-shell .footer-social-channels {
    width:100% !important;
    margin-top:1.25rem !important;
    justify-content:flex-start !important;
    gap:.55rem !important;
  }
  .aprendiz-site-shell .footer-social-link {
    width:auto !important;height:auto !important;min-height:40px !important;
    display:inline-flex !important;place-items:unset !important;
    padding:.5rem .65rem !important;border-radius:7px !important;
  }
  .aprendiz-site-shell .footer-social-text { display:inline !important;font-size:.72rem !important; }
  .aprendiz-site-shell .footer-nav-pane {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:1.55rem !important;
    margin:0 !important;
  }
  .aprendiz-site-shell .footer-nav-col--segments { display:none; }
  .aprendiz-site-shell .footer-nav-title { font-size:.7rem !important;margin:0 0 .6rem !important;padding-bottom:.5rem !important; }
  .aprendiz-site-shell .footer-nav-list { gap:0 !important; }
  .aprendiz-site-shell .footer-nav-list li a { min-height:0 !important;padding:.38rem 0 !important;font-size:.75rem !important; }
  .aprendiz-site-shell .footer-credentials-bar--studio {
    grid-template-columns:1fr !important;
    gap:1.15rem !important;
    margin-top:2.2rem !important;
    padding:1.25rem 0 !important;
  }
  .aprendiz-site-shell .footer-credential-block { gap:.7rem !important; }
  .aprendiz-site-shell .footer-credential-text strong { font-size:.76rem !important; }
  .aprendiz-site-shell .footer-credential-text span { font-size:.7rem !important;line-height:1.48 !important; }
  .aprendiz-site-shell .footer-legal-bar--studio { margin-top:1rem !important; }
  .aprendiz-site-shell .footer-legal-links {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:.45rem .85rem !important;
    font-size:.66rem !important;
  }
  .aprendiz-site-shell .footer-legal-sep { display:none !important; }
  .aprendiz-site-shell .footer-back-to-top { width:100%;margin: .25rem 0 0 !important; }

  .aprendiz-site-shell .mobile-whatsapp-fab {
    right: max(1rem,env(safe-area-inset-right)) !important;
    bottom: max(1rem,env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 380px) {
  .aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) { font-size:clamp(2.55rem,13.2vw,3.45rem) !important; }
  .aprendiz-site-shell .segment-hero-portraits { min-height:345px; }
  .aprendiz-page-sobre .sobre-hero-photo--main { height:330px; }
  .aprendiz-page-sobre .sobre-hero-photo--detail { height:185px; }
  .aprendiz-site-shell .footer-motto-headline { font-size:2.18rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  .aprendiz-site-shell .hero-slide { transition:none !important;transform:none !important; }
  .aprendiz-site-shell .gallery-card-img { transition:none !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab:hover { transform:none; }
}

/* ==========================================================================
   v3.4.1 — FINAL VISUAL PASS
   Ajustes de direção: mobile mais editorial, menos “card farm”, footer com
   presença real de rodapé e header sem competição entre logo/CTAs.
   ========================================================================== */

/* O CTA de agendamento permanece no drawer/FAB no mobile; no header ele
   competia com a marca e fazia a logo parecer cortada em 390–430 px. */
@media (max-width: 767px) {
  .aprendiz-site-shell .btn-header-cta { display: none !important; }
  .aprendiz-site-shell .header-actions-group { gap: .55rem !important; }
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    max-width: min(190px, 58vw) !important;
  }

  /* Cantos mobile: superfícies grandes ficam mais arquitetônicas. Pills
     continuam pills apenas quando a função pede esse formato. */
  .aprendiz-site-shell :where(
    .editorial-hero-photo-card,.blog-editorial-image,.blog-editorial-note,
    .contact-hub-card,.contato-form-card,.card-direct-whatsapp,.card-info-pratica,
    .map-embed-wrapper,.visit-section-card,.google-reviews-summary-bar,
    .google-review-card,.insta-feed-card,.gallery-card-media,.structure-photo,
    .sobre-hero-photo,.legal-highlight-box,.dpo-contact-card
  ) { border-radius: 8px !important; }

  .aprendiz-site-shell :where(.btn-aprendiz-primary,.btn-aprendiz-secondary,.btn-aprendiz-whatsapp) {
    border-radius: 9px !important;
  }
  .aprendiz-site-shell :where(.badge-navy,.badge-orange,.badge-gold,.gallery-card-badge,.blog-category-badge) {
    border-radius: 5px !important;
  }
  .aprendiz-site-shell .drawer-nav-item a { border-radius: 9px !important; }

  /* FAB: SVG próprio, centralizado de verdade e com brilho discreto. */
  .aprendiz-site-shell .mobile-whatsapp-fab-icon {
    width: 29px !important;
    height: 29px !important;
    display: grid !important;
    place-items: center !important;
    color: #fff !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab-icon svg {
    width: 29px !important;
    height: 29px !important;
    display: block !important;
  }

  /* Espaçamento vertical coerente entre blocos. O conteúdo respira sem
     empilhar 100 px vazios entre uma seção e outra. */
  .aprendiz-page-main > .elementor > .e-con,
  .aprendiz-page-main > .elementor > .elementor-section { margin-block: 0 !important; }
  .aprendiz-site-shell .section-wrapper { padding-block: 3.9rem !important; }
  .aprendiz-site-shell :where(.page-editorial-hero,.aprendiz-internal-hero) {
    padding-block: 3.55rem 4.2rem !important;
  }
  .aprendiz-site-shell .section-tag { margin-bottom: .85rem !important; }
  .aprendiz-site-shell .section-title { margin-bottom: .95rem !important; }

  /* Segmentos: capítulos têm ritmo editorial em vez de repetir “foto + card”. */
  .aprendiz-page-segmentos .segment-chapter { padding-block: 4.35rem !important; }
  .aprendiz-page-segmentos .segment-chapter .editorial-hero-photo-card {
    box-shadow: none !important;
    border: 1px solid rgba(39,42,90,.08) !important;
  }
  .aprendiz-page-segmentos .segment-chapter .editorial-hero-float-badge {
    position: static !important;
    margin: .65rem 0 0 !important;
    padding: .75rem .85rem !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    border: 1px solid rgba(39,42,90,.1) !important;
  }
  .aprendiz-page-segmentos .segment-chapter .about-text-body ul {
    margin-top: 1.1rem !important;
    display: grid;
    gap: .62rem;
  }

  /* Estrutura: no celular a galeria vira diário visual. A fotografia lidera,
     o texto funciona como legenda e não como “card de produto”. */
  .aprendiz-page-estrutura .estrutura-gallery-grid { gap: 2.25rem !important; }
  .aprendiz-page-estrutura .gallery-card-body {
    padding: .85rem 0 0 !important;
    border-bottom: 0 !important;
  }
  .aprendiz-page-estrutura .gallery-card-title {
    font-size: 1.2rem !important;
    line-height: 1.25 !important;
    margin-bottom: .38rem !important;
  }
  .aprendiz-page-estrutura .gallery-card-desc {
    font-size: .9rem !important;
    line-height: 1.58 !important;
    color: #5f6976 !important;
  }
  .aprendiz-page-estrutura .gallery-card-footer {
    margin-top: .7rem !important;
    padding-top: .65rem !important;
    border-top: 1px solid rgba(39,42,90,.08) !important;
  }
  .aprendiz-page-estrutura .gallery-card-action {
    font-size: .78rem !important;
    white-space: nowrap;
  }

  /* Sobre: pilares como manifesto, sem “quatro cards” visualmente idênticos. */
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-card-v2 {
    padding: 1.6rem 0 1.75rem !important;
  }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-icon-header {
    display: grid !important;
    grid-template-columns: 48px minmax(0,1fr) !important;
    align-items: center !important;
    gap: .85rem !important;
    margin-bottom: .7rem !important;
  }
  .aprendiz-page-sobre .sobre-chapter--pilares .diff-title {
    margin: 0 !important;
    font-size: 1.17rem !important;
  }

  /* Blog: cards deixam de parecer catálogo. */
  .aprendiz-page-blog .blog-cards-grid { gap: 2.45rem !important; }
  .aprendiz-page-blog .blog-card-content {
    padding: .9rem 0 0 !important;
    border-bottom: 0 !important;
  }
  .aprendiz-page-blog .blog-card + .blog-card {
    padding-top: 0 !important;
  }
  .aprendiz-page-blog .blog-read-more {
    display: inline-flex !important;
    margin-top: .75rem !important;
    padding: 0 !important;
    background: transparent !important;
    color: var(--aprendiz-orange) !important;
    border: 0 !important;
  }

  /* Contato: menos blocos fechados; mais fluxo de atendimento. */
  .aprendiz-page-contato .contato-form-card {
    box-shadow: none !important;
    border: 1px solid rgba(39,42,90,.1) !important;
  }
  .aprendiz-page-contato .card-direct-whatsapp,
  .aprendiz-page-contato .card-info-pratica {
    box-shadow: none !important;
    border: 1px solid rgba(39,42,90,.08) !important;
  }

  /* Footer: composição deliberadamente mais simples no celular. */
  .aprendiz-site-shell .site-footer--studio {
    padding: 3.6rem 1.25rem calc(1.55rem + env(safe-area-inset-bottom)) !important;
  }
  .aprendiz-site-shell .footer-main-layout--studio { gap: 2.65rem !important; }
  .aprendiz-site-shell .footer-brand-logo { width: 148px !important; max-width: 148px !important; }
  .aprendiz-site-shell .footer-motto-lockup { margin-top: 1.8rem !important; }
  .aprendiz-site-shell .footer-motto-headline {
    max-width: 7.8ch !important;
    font-size: clamp(2.35rem, 11vw, 3rem) !important;
    line-height: .95 !important;
    margin: .7rem 0 .95rem !important;
  }
  .aprendiz-site-shell .footer-brand-manifesto {
    max-width: 34ch !important;
    font-size: .83rem !important;
    line-height: 1.68 !important;
  }
  .aprendiz-site-shell .footer-social-channels { margin-top: 1.45rem !important; }
  .aprendiz-site-shell .footer-social-link {
    min-height: 42px !important;
    padding: .58rem .72rem !important;
    border-radius: 6px !important;
  }
  .aprendiz-site-shell .footer-nav-col--school,
  .aprendiz-site-shell .footer-nav-col--segments { display: none !important; }
  .aprendiz-site-shell .footer-nav-pane { gap: 0 !important; }
  .aprendiz-site-shell .footer-nav-col--quick {
    padding-top: 1.45rem !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
  }
  .aprendiz-site-shell .footer-nav-title {
    font-size: .68rem !important;
    letter-spacing: .08em !important;
    margin-bottom: .65rem !important;
  }
  .aprendiz-site-shell .footer-nav-list li a {
    padding: .46rem 0 !important;
    font-size: .79rem !important;
    line-height: 1.38 !important;
  }
  .aprendiz-site-shell .footer-credentials-bar--studio {
    margin-top: 2.4rem !important;
    padding: 1.55rem 0 0 !important;
    border-top: 1px solid rgba(255,255,255,.13) !important;
    border-bottom: 0 !important;
  }
  .aprendiz-site-shell .footer-credential-block:first-child { display: none !important; }
  .aprendiz-site-shell .footer-credential-block:last-child {
    display: grid !important;
    grid-template-columns: 28px minmax(0,1fr) !important;
    align-items: start !important;
    gap: .8rem !important;
  }
  .aprendiz-site-shell .footer-credential-icon { margin-top: .1rem !important; }
  .aprendiz-site-shell .footer-credential-text strong { font-size: .8rem !important; }
  .aprendiz-site-shell .footer-credential-text span {
    margin-top: .2rem !important;
    font-size: .73rem !important;
    line-height: 1.55 !important;
  }
  .aprendiz-site-shell .footer-legal-bar--studio {
    margin-top: 1.7rem !important;
    padding-top: 1.15rem !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
  }
  .aprendiz-site-shell .footer-legal-links {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,auto)) !important;
    justify-content: start !important;
    gap: .6rem 1rem !important;
    font-size: .68rem !important;
  }
  .aprendiz-site-shell .footer-back-to-top {
    grid-column: 1 / -1 !important;
    margin-top: .35rem !important;
  }
}

@media (max-width: 430px) {
  .aprendiz-site-shell .site-header .logo-link .site-logo-img {
    max-width: min(178px, 54vw) !important;
    height: 46px !important;
  }
  .aprendiz-site-shell .header-container { padding-inline: .9rem !important; }
  .aprendiz-site-shell .section-wrapper { padding-inline: 1rem !important; }
  .aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) {
    font-size: clamp(2.62rem, 12vw, 3.25rem) !important;
    max-width: 11.5ch !important;
  }
}

@media (max-width: 350px) {
  .aprendiz-site-shell .btn-header-instagram { display: none !important; }
  .aprendiz-site-shell .site-header .logo-link .site-logo-img { max-width: 180px !important; }
  .aprendiz-site-shell :where(.editorial-hero-title,.internal-hero-title) {
    font-size: 2.52rem !important;
  }
}
.aprendiz-site-shell .slider-arrow .hero-arrow-icon {
  width: 18px;
  height: 18px;
  display: block;
}
@media (max-width: 767px) {
  .aprendiz-site-shell .slider-arrow .hero-arrow-icon { width: 15px; height: 15px; }
}


/* ==========================================================================
   v3.4.1 — HOTFIX: FAB WhatsApp estritamente mobile
   Regra final propositalmente no fim do arquivo para vencer refinamentos
   anteriores que definem display:grid no componente.
   ========================================================================== */
.aprendiz-site-shell .mobile-whatsapp-fab.is-desktop-hidden {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
@media (min-width: 768px) {
  body.aprendiz-site-shell .mobile-whatsapp-fab,
  .aprendiz-site-shell .mobile-whatsapp-fab {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
@media (max-width: 767px) {
  .aprendiz-site-shell .mobile-whatsapp-fab:not(.is-hidden) {
    visibility: visible !important;
  }
}


/* ==========================================================================
   v3.4.2 — WhatsApp flutuante com linguagem Aprendiz (desktop + mobile)
   Em vez de um círculo genérico de plugin, o desktop usa uma pequena peça de
   marca em navy/laranja com o verde restrito ao canal WhatsApp. No mobile a
   mesma assinatura é condensada sem cobrir conteúdo.
   ========================================================================== */
body.aprendiz-site-shell .mobile-whatsapp-fab,
.aprendiz-site-shell .mobile-whatsapp-fab,
.aprendiz-site-shell .mobile-whatsapp-fab.is-desktop-hidden {
  position: fixed !important;
  right: max(24px, env(safe-area-inset-right)) !important;
  bottom: calc(24px + env(safe-area-inset-bottom)) !important;
  z-index: 960 !important;
  width: auto !important;
  min-width: 204px !important;
  height: 62px !important;
  padding: 8px 16px 8px 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 11px !important;
  border-radius: 18px !important;
  color: #fff !important;
  text-decoration: none !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(255,255,255,.10), transparent 32%),
    linear-gradient(135deg, #07182f 0%, #0a1f3b 56%, #112b4c 100%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow:
    0 18px 42px rgba(6,24,48,.24),
    0 5px 14px rgba(6,24,48,.13),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  overflow: hidden !important;
  isolation: isolate;
  transform: translateZ(0);
  transition: transform .22s cubic-bezier(.2,.8,.2,1), box-shadow .22s ease, opacity .2s ease !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  border-radius: inherit !important;
  background: linear-gradient(112deg, rgba(255,255,255,.08), transparent 38%, rgba(237,125,4,.05) 76%, transparent) !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab::after {
  content: '';
  position: absolute;
  width: 44px;
  height: 5px;
  right: -12px;
  top: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--aprendiz-orange,#ED7D04), #ffad34);
  transform: rotate(38deg);
  opacity: .95;
  pointer-events: none;
}

.aprendiz-site-shell .mobile-whatsapp-fab-icon {
  position: relative !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(145deg, #35e57a 0%, #25D366 48%, #16ad50 100%) !important;
  box-shadow:
    0 6px 14px rgba(37,211,102,.22),
    inset 0 1px 0 rgba(255,255,255,.35) !important;
  transform: none !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab-icon::after {
  content: '';
  position: absolute;
  width: 7px;
  height: 7px;
  right: -2px;
  top: -2px;
  border-radius: 50%;
  background: var(--aprendiz-orange,#ED7D04);
  border: 2px solid #0a1f3b;
}

.aprendiz-site-shell .mobile-whatsapp-fab-icon svg {
  width: 25px !important;
  height: 25px !important;
  display: block !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab-copy {
  display: grid !important;
  min-width: 0;
  gap: 2px;
  line-height: 1;
}

.aprendiz-site-shell .mobile-whatsapp-fab-kicker {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: rgba(255,255,255,.66) !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 9px !important;
  font-weight: 650 !important;
  letter-spacing: .085em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.aprendiz-site-shell .mobile-whatsapp-presence-dot {
  display: inline-block !important;
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: #38e47d !important;
  box-shadow: 0 0 0 3px rgba(56,228,125,.10) !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab-label {
  color: #fff !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px !important;
  font-weight: 720 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
}

.aprendiz-site-shell .mobile-whatsapp-fab:hover {
  transform: translateY(-3px) !important;
  box-shadow:
    0 22px 48px rgba(6,24,48,.28),
    0 8px 18px rgba(37,211,102,.12),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab:focus-visible {
  outline: 3px solid rgba(237,125,4,.38) !important;
  outline-offset: 4px !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab:active { transform: translateY(-1px) scale(.985) !important; }

.aprendiz-site-shell .mobile-whatsapp-fab.is-hidden,
body.aprendiz-site-shell.aprendiz-scroll-lock .mobile-whatsapp-fab {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(12px) scale(.96) !important;
}

/* A v3.4.1 escondia o CTA acima de 767px. Esta regra final reverte
   explicitamente aquele hotfix e mantém a peça ativa no desktop. */
@media (min-width: 768px) {
  body.aprendiz-site-shell .mobile-whatsapp-fab,
  .aprendiz-site-shell .mobile-whatsapp-fab,
  .aprendiz-site-shell .mobile-whatsapp-fab.is-desktop-hidden {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab.is-hidden,
  body.aprendiz-site-shell.aprendiz-scroll-lock .mobile-whatsapp-fab {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

@media (max-width: 767px) {
  body.aprendiz-site-shell .mobile-whatsapp-fab,
  .aprendiz-site-shell .mobile-whatsapp-fab,
  .aprendiz-site-shell .mobile-whatsapp-fab.is-desktop-hidden {
    right: max(14px, env(safe-area-inset-right)) !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    width: 60px !important;
    min-width: 60px !important;
    height: 60px !important;
    padding: 7px !important;
    justify-content: center !important;
    border-radius: 19px !important;
    gap: 0 !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab-copy { display: none !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab-icon {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
    border-radius: 15px !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab-icon svg {
    width: 26px !important;
    height: 26px !important;
  }
  .aprendiz-site-shell .mobile-whatsapp-fab::after {
    width: 34px;
    right: -12px;
    top: 7px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aprendiz-site-shell .mobile-whatsapp-fab { transition: opacity .12s ease !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab:hover { transform: none !important; }
}

/* ==========================================================================
   18. v3.5 — internas compactas, diretas e alinhadas à Home
   ========================================================================== */
.aprendiz-site-shell .aprendiz-compact-intro {
  background:#fff;
  padding:clamp(3rem,5vw,4.75rem) 1.5rem clamp(2.25rem,4vw,3.5rem);
}
.aprendiz-site-shell .aprendiz-compact-intro__inner {
  max-width:1180px;
  display:grid;
  grid-template-columns:minmax(0,760px) 1fr;
  gap:clamp(2rem,7vw,7rem);
  align-items:end;
}
.aprendiz-site-shell .aprendiz-compact-kicker {
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:.45rem .72rem;
  border:1px solid rgba(237,125,4,.24);
  border-radius:999px;
  color:#D96D00;
  background:#FFF8F0;
  font:700 .74rem/1.15 "Outfit",sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.aprendiz-site-shell .aprendiz-compact-title {
  margin:.95rem 0 .85rem;
  max-width:17ch;
  color:var(--aprendiz-navy);
  font-family:"Outfit",sans-serif;
  font-size:clamp(2.35rem,3.5vw,3.7rem);
  font-weight:800;
  line-height:.96;
  letter-spacing:-.025em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}
.aprendiz-site-shell .aprendiz-compact-lead {
  max-width:700px;
  margin:0;
  color:var(--aprendiz-text-muted);
  font-size:clamp(1rem,1.25vw,1.12rem);
  line-height:1.7;
}
.aprendiz-site-shell .aprendiz-compact-intro__rule {
  align-self:center;
  height:1px;
  background:rgba(10,25,49,.12);
  position:relative;
}
.aprendiz-site-shell .aprendiz-compact-intro__rule span {
  position:absolute;
  left:0;top:-1px;
  width:min(130px,45%);
  height:3px;
  background:var(--aprendiz-orange);
  border-radius:3px;
}
.aprendiz-site-shell .aprendiz-compact-section {
  padding:clamp(1.5rem,3vw,2.5rem) 1.5rem clamp(4rem,7vw,6rem);
  background:#fff;
}
.aprendiz-site-shell .aprendiz-anchor-pills {
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin:0 0 2rem;
}
.aprendiz-site-shell .aprendiz-anchor-pills a,
.aprendiz-site-shell .blog-filter-btn {
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:.55rem .9rem;
  border:1px solid rgba(10,25,49,.11);
  border-radius:999px;
  background:#fff;
  color:var(--aprendiz-navy);
  font:700 .86rem/1 "Outfit",sans-serif;
  text-decoration:none;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.aprendiz-site-shell .aprendiz-anchor-pills a:hover,
.aprendiz-site-shell .blog-filter-btn:hover { border-color:rgba(237,125,4,.35);background:#FFF8F0;transform:translateY(-1px); }
.aprendiz-site-shell .blog-filter-btn.active { background:#FFF4E8;border-color:rgba(237,125,4,.45);color:#D96D00; }

/* Segmentos — mesma superfície dos cards da Home, sem hero inflado */
.aprendiz-site-shell .aprendiz-segment-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
.aprendiz-site-shell .aprendiz-segment-card {
  min-width:0;
  display:grid;
  grid-template-columns:minmax(180px,40%) minmax(0,1fr);
  min-height:310px;
  overflow:hidden;
  border:1px solid rgba(10,25,49,.09);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 34px rgba(10,25,49,.06);
}
.aprendiz-site-shell .aprendiz-segment-card--wide { grid-column:1 / -1;grid-template-columns:minmax(260px,34%) minmax(0,1fr); }
.aprendiz-site-shell .aprendiz-segment-card > img { width:100%;height:100%;min-height:310px;object-fit:cover;display:block; }
.aprendiz-site-shell .aprendiz-segment-card__body { min-width:0;padding:clamp(1.35rem,2.5vw,2rem);display:flex;flex-direction:column;align-items:flex-start; }
.aprendiz-site-shell .aprendiz-card-kicker { color:#D96D00;font:700 .74rem/1.2 "Outfit",sans-serif;text-transform:uppercase;letter-spacing:.07em;margin-bottom:.5rem; }
.aprendiz-site-shell .aprendiz-segment-card h2 { margin:0 0 .65rem;color:var(--aprendiz-navy);font:800 clamp(1.35rem,2vw,1.8rem)/1.08 "Outfit",sans-serif;letter-spacing:-.02em; }
.aprendiz-site-shell .aprendiz-segment-card p { margin:0;color:var(--aprendiz-text-muted);font-size:.97rem;line-height:1.6; }
.aprendiz-site-shell .aprendiz-segment-card ul { display:flex;flex-wrap:wrap;gap:.4rem .55rem;list-style:none;padding:0;margin:1rem 0 1.25rem; }
.aprendiz-site-shell .aprendiz-segment-card li { padding:.35rem .6rem;border-radius:999px;background:#F5F7FA;color:#334155;font:600 .76rem/1.2 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-segment-card .btn-aprendiz-primary,
.aprendiz-site-shell .aprendiz-segment-card .btn-aprendiz-secondary { margin-top:auto; }

/* Estrutura — fotografia protagonista, legenda legível e direta */
.aprendiz-site-shell .aprendiz-structure-features { display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem; }
.aprendiz-site-shell .aprendiz-structure-features span { display:inline-flex;align-items:center;gap:.48rem;padding:.62rem .78rem;border-radius:999px;background:#F5F7FA;color:var(--aprendiz-navy);font:700 .82rem/1 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-structure-features i { color:var(--aprendiz-orange); }
.aprendiz-site-shell .aprendiz-photo-grid { display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:repeat(2,minmax(220px,1fr));gap:.85rem; }
.aprendiz-site-shell .aprendiz-photo-card { position:relative;min-width:0;margin:0;overflow:hidden;border-radius:18px;background:#E9EEF4; }
.aprendiz-site-shell .aprendiz-photo-card--hero { grid-row:1 / 3; }
.aprendiz-site-shell .aprendiz-photo-card img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease; }
.aprendiz-site-shell .aprendiz-photo-card:hover img { transform:scale(1.015); }
.aprendiz-site-shell .aprendiz-photo-card figcaption { position:absolute;left:.8rem;right:.8rem;bottom:.8rem;padding:.72rem .82rem;border-radius:12px;background:rgba(10,25,49,.86);color:#fff;backdrop-filter:blur(8px); }
.aprendiz-site-shell .aprendiz-photo-card figcaption strong,.aprendiz-site-shell .aprendiz-photo-card figcaption span { display:block; }
.aprendiz-site-shell .aprendiz-photo-card figcaption strong { font:700 .9rem/1.2 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-photo-card figcaption span { margin-top:.2rem;color:#CBD5E1;font-size:.76rem;line-height:1.3; }
.aprendiz-site-shell .aprendiz-compact-actions { display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem; }

/* Sobre — uma história, quatro princípios; sem grade de cards SaaS */
.aprendiz-site-shell .aprendiz-story-split { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:center; }
.aprendiz-site-shell .aprendiz-story-media { position:relative;min-width:0; }
.aprendiz-site-shell .aprendiz-story-media img { display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px; }
.aprendiz-site-shell .aprendiz-story-stamp { position:absolute;left:1rem;bottom:1rem;padding:.72rem .85rem;border-radius:12px;background:var(--aprendiz-navy);color:#fff;font:700 .82rem/1.35 "Outfit",sans-serif;box-shadow:0 8px 24px rgba(10,25,49,.2); }
.aprendiz-site-shell .aprendiz-story-copy h2 { margin:.85rem 0 1rem;color:var(--aprendiz-navy);font:800 clamp(1.85rem,3vw,2.8rem)/1.04 "Outfit",sans-serif;letter-spacing:-.035em;text-wrap:balance; }
.aprendiz-site-shell .aprendiz-story-copy p { margin:0 0 .9rem;color:var(--aprendiz-text-muted);font-size:1rem;line-height:1.7; }
.aprendiz-site-shell .aprendiz-values-list { margin-top:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(10,25,49,.1); }
.aprendiz-site-shell .aprendiz-values-list article { display:grid;grid-template-columns:42px minmax(0,1fr);gap:.9rem;padding:1.55rem 1.1rem;border-bottom:1px solid rgba(10,25,49,.1); }
.aprendiz-site-shell .aprendiz-values-list article:nth-child(odd) { border-right:1px solid rgba(10,25,49,.1);padding-left:0; }
.aprendiz-site-shell .aprendiz-values-list i,
.aprendiz-site-shell .aprendiz-values-list article > svg { color:var(--aprendiz-orange);font-size:1.45rem;margin-top:.1rem; }
.aprendiz-site-shell .aprendiz-values-list article > svg { width:1.45rem !important;height:1.45rem !important;max-width:1.45rem !important;fill:currentColor; }
.aprendiz-site-shell .aprendiz-values-list h3 { margin:0 0 .3rem;color:var(--aprendiz-navy);font:800 1.08rem/1.25 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-values-list p { margin:0;color:var(--aprendiz-text-muted);font-size:.92rem;line-height:1.55; }

/* Contato — uma única decisão: formulário + canais */
.aprendiz-site-shell .aprendiz-contact-hub { padding-top:clamp(3rem,5vw,5rem); }
.aprendiz-site-shell .aprendiz-contact-grid { display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start; }
.aprendiz-site-shell .aprendiz-contact-form-panel { min-width:0; }
.aprendiz-site-shell .aprendiz-contact-form-panel > h1 { margin:.85rem 0 .65rem;color:var(--aprendiz-navy);font:800 clamp(2rem,3vw,2.85rem)/1.04 "Outfit",sans-serif;letter-spacing:-.04em;text-wrap:balance; }
.aprendiz-site-shell .aprendiz-contact-form-panel > p { margin:0 0 1.6rem;max-width:640px;color:var(--aprendiz-text-muted);font-size:1rem;line-height:1.65; }
.aprendiz-site-shell .aprendiz-contact-form-panel form { padding:1.5rem;border:1px solid rgba(10,25,49,.1);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(10,25,49,.05); }
.aprendiz-site-shell .apr-form-row { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem; }
.aprendiz-site-shell .aprendiz-contact-form-panel label { display:flex;flex-direction:column;gap:.42rem;margin-bottom:.9rem;color:var(--aprendiz-navy);font:700 .84rem/1.3 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-contact-form-panel input,
.aprendiz-site-shell .aprendiz-contact-form-panel select,
.aprendiz-site-shell .aprendiz-contact-form-panel textarea { width:100%;min-width:0;padding:.8rem .9rem;border:1px solid rgba(10,25,49,.13);border-radius:10px;background:#FBFCFD;color:#172033;font:400 .95rem/1.4 "Plus Jakarta Sans",sans-serif;outline:none; }
.aprendiz-site-shell .aprendiz-contact-form-panel input:focus,
.aprendiz-site-shell .aprendiz-contact-form-panel select:focus,
.aprendiz-site-shell .aprendiz-contact-form-panel textarea:focus { border-color:rgba(237,125,4,.6);box-shadow:0 0 0 3px rgba(237,125,4,.09); }
.aprendiz-site-shell .aprendiz-contact-form-panel .btn-aprendiz-primary { width:100%;justify-content:center;margin-top:.35rem; }
.aprendiz-site-shell .aprendiz-contact-info-panel { overflow:hidden;border-radius:20px;background:var(--aprendiz-navy);color:#fff;box-shadow:0 18px 46px rgba(10,25,49,.16); }
.aprendiz-site-shell .aprendiz-contact-info-panel > img { display:block;width:100%;aspect-ratio:16/9;object-fit:cover; }
.aprendiz-site-shell .aprendiz-contact-info-copy { padding:1.35rem; }
.aprendiz-site-shell .aprendiz-contact-info-copy h2 { margin:0 0 1rem;color:#fff;font:800 1.4rem/1.15 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-contact-line { display:flex;align-items:center;gap:.8rem;padding:.8rem 0;border-top:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none; }
.aprendiz-site-shell .aprendiz-contact-line i { width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:var(--aprendiz-orange);flex:0 0 auto; }
.aprendiz-site-shell .aprendiz-contact-line strong,.aprendiz-site-shell .aprendiz-contact-line small { display:block; }
.aprendiz-site-shell .aprendiz-contact-line strong { font:700 .93rem/1.25 "Outfit",sans-serif; }
.aprendiz-site-shell .aprendiz-contact-line small { margin-top:.15rem;color:#AAB7C8;font-size:.78rem;line-height:1.35; }
.aprendiz-site-shell .aprendiz-contact-info-copy .btn-aprendiz-secondary { margin-top:1rem;background:#fff;color:var(--aprendiz-navy);border-color:#fff; }

/* Blog — sem hero ornamental: título, busca, filtros e matérias */
.aprendiz-site-shell .aprendiz-blog-dynamic { padding:clamp(3rem,5vw,4.5rem) 1.5rem clamp(4rem,7vw,6rem);background:#fff; }
.aprendiz-site-shell .aprendiz-blog-simple-head { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:2rem;align-items:end;padding-bottom:1.5rem;border-bottom:1px solid rgba(10,25,49,.1); }
.aprendiz-site-shell .aprendiz-blog-simple-head h1 { margin:.85rem 0 .55rem;max-width:18ch;color:var(--aprendiz-navy);font:800 clamp(2rem,3.15vw,3rem)/1.04 "Outfit",sans-serif;letter-spacing:-.045em;text-wrap:balance; }
.aprendiz-site-shell .aprendiz-blog-simple-head p { max-width:680px;margin:0;color:var(--aprendiz-text-muted);font-size:1rem;line-height:1.65; }
.aprendiz-site-shell .aprendiz-blog-search { position:relative;margin:0; }
.aprendiz-site-shell .aprendiz-blog-search > i { position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#64748B; }
.aprendiz-site-shell .aprendiz-blog-search input { width:100%;min-height:48px;padding:.75rem 3.25rem .75rem 2.65rem;border:1px solid rgba(10,25,49,.12);border-radius:999px;background:#F8FAFC;color:var(--aprendiz-navy);font:500 .92rem/1.3 "Plus Jakarta Sans",sans-serif;outline:none; }
.aprendiz-site-shell .aprendiz-blog-search button { position:absolute;right:.35rem;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:var(--aprendiz-orange);color:#fff;display:grid;place-items:center;cursor:pointer; }
.aprendiz-site-shell .blog-filter-bar { display:flex;flex-wrap:wrap;gap:.55rem;margin:1.25rem 0 1.75rem; }
.aprendiz-site-shell .blog-cards-grid--simple { display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:1rem !important; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-card { min-width:0;display:flex !important;flex-direction:column !important;grid-column:auto !important;grid-row:auto !important;border:1px solid rgba(10,25,49,.09);border-radius:18px !important;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(10,25,49,.045); }
.aprendiz-site-shell .blog-cards-grid--simple .blog-thumb-wrapper { position:relative;aspect-ratio:16/10;overflow:hidden; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-thumb-img { width:100%;height:100%;object-fit:cover;display:block; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-card-content { padding:1.15rem;display:flex;flex-direction:column;flex:1; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-title { margin:.55rem 0 .6rem;font:800 clamp(1.1rem,1.6vw,1.42rem)/1.22 "Outfit",sans-serif;letter-spacing:-.02em; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-title a { color:var(--aprendiz-navy);text-decoration:none; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-excerpt { margin:0;color:var(--aprendiz-text-muted);font-size:.9rem;line-height:1.55; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-read-more { margin-top:auto;padding-top:1rem;color:#D96D00;font:700 .86rem/1 "Outfit",sans-serif;text-decoration:none; }
.aprendiz-site-shell .aprendiz-blog-empty { text-align:center;padding:3rem 1.5rem;border:1px dashed rgba(10,25,49,.15);border-radius:18px;background:#F8FAFC; }

/* Artigo — título legível, sem ocupar uma dobra inteira */
.aprendiz-blog-single .article-container { max-width:980px !important;padding-top:clamp(2.2rem,4vw,3.5rem) !important; }
.aprendiz-blog-single .article-header { max-width:860px; }
.aprendiz-blog-single .article-hero-title { max-width:18ch !important;font-family:"Outfit",sans-serif !important;font-weight:800 !important;font-size:clamp(2.3rem,3.9vw,3.55rem) !important;line-height:1.02 !important;letter-spacing:-.045em !important;text-wrap:balance;overflow-wrap:normal;word-break:normal; }
.aprendiz-blog-single .article-hero-title .highlight-orange { font-family:"Outfit",sans-serif !important;font-weight:800 !important; }
.aprendiz-blog-single .pre-footer-cta-section { max-width:980px !important;border-radius:20px !important; }
.aprendiz-blog-single .pre-footer-cta-section .cta-title { font-family:"Outfit",sans-serif !important;font-size:clamp(1.8rem,3vw,2.6rem) !important;line-height:1.08 !important; }

/* Footer — volta a ser um rodapé, com respiro e fechamento visual */
.aprendiz-site-shell .site-footer--studio {
  margin:clamp(3.5rem,6vw,6rem) 1rem 0 !important;
  border-radius:28px 28px 0 0 !important;
  overflow:hidden !important;
  background:#0E1B36 !important;
  border-top:3px solid var(--aprendiz-orange);
}
.aprendiz-site-shell .site-footer--studio .footer-container { max-width:1480px;padding:clamp(3.25rem,5vw,5rem) clamp(1.5rem,4vw,4.5rem) 1.4rem; }
.aprendiz-site-shell .footer-main-layout--studio { display:grid !important;grid-template-columns:minmax(300px,1.2fr) minmax(0,2.1fr) !important;gap:clamp(3rem,6vw,7rem) !important;align-items:start; }
.aprendiz-site-shell .footer-brand-pane { min-width:0; }
.aprendiz-site-shell .footer-brand-logo { width:min(220px,100%);height:auto; }
.aprendiz-site-shell .footer-motto-lockup { margin-top:2.2rem; }
.aprendiz-site-shell .footer-motto-eyebrow { display:block;color:#FF9B3D;font:700 .74rem/1.3 "Outfit",sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.7rem; }
.aprendiz-site-shell .footer-motto-headline { margin:0;color:#fff;font-family:"Outfit",sans-serif;font-size:clamp(2.45rem,2.75vw,3.3rem) !important;font-weight:800;line-height:.91;letter-spacing:-.02em; }
.aprendiz-site-shell .footer-motto-headline > span { display:block;white-space:nowrap; }
.aprendiz-site-shell .footer-brand-manifesto { max-width:500px;margin:1.1rem 0 1.4rem;color:#9FB0C4;font-size:.95rem;line-height:1.65; }
.aprendiz-site-shell .footer-social-channels { display:flex;flex-wrap:wrap;gap:.6rem; }
.aprendiz-site-shell .footer-social-link { min-height:42px;padding:.5rem .72rem;border:1px solid rgba(255,255,255,.13);border-radius:12px;color:#fff;text-decoration:none; }
.aprendiz-site-shell .footer-nav-pane { display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.4rem,3vw,3rem) !important; }
.aprendiz-site-shell .footer-nav-title { padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;font:800 .82rem/1.2 "Outfit",sans-serif;letter-spacing:.07em;text-transform:uppercase; }
.aprendiz-site-shell .footer-nav-list { display:flex;flex-direction:column;gap:.72rem; }
.aprendiz-site-shell .footer-nav-list a { color:#AFC0D3 !important;font-size:.91rem;line-height:1.35;text-decoration:none; }
.aprendiz-site-shell .footer-nav-list a:hover { color:#fff !important; }
.aprendiz-site-shell .footer-nav-list .footer-link-highlight { color:#FF8A1D !important;font-weight:700; }
.aprendiz-site-shell .footer-external-icon { margin-left:.3rem;font-size:.7rem;opacity:.72; }
.aprendiz-site-shell .footer-credentials-bar--studio { margin-top:2.4rem;padding:1.35rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem; }
.aprendiz-site-shell .footer-credential-block { display:grid;grid-template-columns:36px minmax(0,1fr);gap:.8rem;align-items:start; }
.aprendiz-site-shell .footer-credential-icon { width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(237,125,4,.12);color:var(--aprendiz-orange); }
.aprendiz-site-shell .footer-credential-text strong,.aprendiz-site-shell .footer-credential-text span { display:block; }
.aprendiz-site-shell .footer-credential-text strong { color:#fff;font-size:.92rem; }
.aprendiz-site-shell .footer-credential-text span { margin-top:.18rem;color:#8FA1B6;font-size:.82rem;line-height:1.4; }
.aprendiz-site-shell .footer-legal-bar--studio { padding:1.15rem 0 0; }
.aprendiz-site-shell .footer-legal-links { display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.7rem;color:#6F8298; }
.aprendiz-site-shell .footer-legal-links a { color:#8FA1B6 !important;font-size:.82rem;text-decoration:none; }

/* Legal — o mesmo intro compacto; conteúdo legível, sem hero inflado */
.aprendiz-page-politica-de-privacidade .privacy-content-wrapper,
.aprendiz-page-termos-de-uso .terms-content-wrapper,
.aprendiz-page-politica-de-privacidade .legal-content-section,
.aprendiz-page-termos-de-uso .legal-content-section { padding-top:1rem !important; }
.aprendiz-site-shell .legal-heading { font-family:"Outfit",sans-serif !important;font-size:clamp(1.4rem,2.2vw,2rem) !important;line-height:1.18 !important; }

@media (max-width:1024px) {
  .aprendiz-site-shell .aprendiz-compact-intro__inner { grid-template-columns:1fr;gap:1.4rem; }
  .aprendiz-site-shell .aprendiz-compact-intro__rule { max-width:320px; }
  .aprendiz-site-shell .aprendiz-segment-grid { grid-template-columns:1fr; }
  .aprendiz-site-shell .aprendiz-segment-card--wide { grid-column:auto; }
  .aprendiz-site-shell .aprendiz-photo-grid { grid-template-columns:1fr 1fr;grid-template-rows:auto; }
  .aprendiz-site-shell .aprendiz-photo-card--hero { grid-column:1 / -1;grid-row:auto;aspect-ratio:16/7; }
  .aprendiz-site-shell .aprendiz-story-split { grid-template-columns:1fr; }
  .aprendiz-site-shell .aprendiz-story-media { max-width:760px; }
  .aprendiz-site-shell .aprendiz-contact-grid { grid-template-columns:1fr; }
  .aprendiz-site-shell .aprendiz-contact-info-panel { display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr); }
  .aprendiz-site-shell .aprendiz-contact-info-panel > img { height:100%;aspect-ratio:auto; }
  .aprendiz-site-shell .blog-cards-grid--simple { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .aprendiz-site-shell .footer-main-layout--studio { grid-template-columns:1fr !important;gap:2.5rem !important; }
  .aprendiz-site-shell .footer-brand-manifesto { max-width:680px; }
}

@media (max-width:767px) {
  .aprendiz-site-shell .aprendiz-compact-intro { padding:2.35rem 1rem 1.65rem; }
  .aprendiz-site-shell .aprendiz-compact-title { max-width:100%;font-size:clamp(2rem,9.5vw,2.7rem);line-height:.98; }
  .aprendiz-site-shell .aprendiz-compact-lead { font-size:.95rem;line-height:1.62; }
  .aprendiz-site-shell .aprendiz-compact-section { padding:1.15rem 1rem 3.6rem; }
  .aprendiz-site-shell .aprendiz-anchor-pills { margin-bottom:1.15rem;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.25rem;scrollbar-width:none; }
  .aprendiz-site-shell .aprendiz-anchor-pills::-webkit-scrollbar { display:none; }
  .aprendiz-site-shell .aprendiz-anchor-pills a { flex:0 0 auto; }
  .aprendiz-site-shell .aprendiz-segment-grid { gap:.85rem; }
  .aprendiz-site-shell .aprendiz-segment-card,
  .aprendiz-site-shell .aprendiz-segment-card--wide { grid-template-columns:1fr;min-height:0;border-radius:16px; }
  .aprendiz-site-shell .aprendiz-segment-card > img { min-height:0;height:auto;aspect-ratio:16/9; }
  .aprendiz-site-shell .aprendiz-segment-card__body { padding:1.15rem; }
  .aprendiz-site-shell .aprendiz-segment-card h2 { font-size:1.38rem; }
  .aprendiz-site-shell .aprendiz-segment-card ul { margin:.85rem 0 1rem; }
  .aprendiz-site-shell .aprendiz-photo-grid { grid-template-columns:1fr;gap:.7rem; }
  .aprendiz-site-shell .aprendiz-photo-card,
  .aprendiz-site-shell .aprendiz-photo-card--hero { aspect-ratio:16/10;grid-column:auto; }
  .aprendiz-site-shell .aprendiz-photo-card { border-radius:14px; }
  .aprendiz-site-shell .aprendiz-structure-features { flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:.2rem; }
  .aprendiz-site-shell .aprendiz-structure-features span { flex:0 0 auto; }
  .aprendiz-site-shell .aprendiz-story-media img { border-radius:16px;aspect-ratio:4/3; }
  .aprendiz-site-shell .aprendiz-values-list { grid-template-columns:1fr; }
  .aprendiz-site-shell .aprendiz-values-list article,
  .aprendiz-site-shell .aprendiz-values-list article:nth-child(odd) { border-right:0;padding:1.2rem 0; }
  .aprendiz-site-shell .aprendiz-contact-grid { gap:1rem; }
  .aprendiz-site-shell .aprendiz-contact-form-panel > h1 { font-size:2rem; }
  .aprendiz-site-shell .aprendiz-contact-form-panel form { padding:1rem;border-radius:14px; }
  .aprendiz-site-shell .apr-form-row { grid-template-columns:1fr;gap:0; }
  .aprendiz-site-shell .aprendiz-contact-info-panel { display:block;border-radius:16px; }
  .aprendiz-site-shell .aprendiz-contact-info-panel > img { aspect-ratio:16/9;height:auto; }
  .aprendiz-site-shell .aprendiz-blog-dynamic { padding:2.35rem 1rem 3.8rem; }
  .aprendiz-site-shell .aprendiz-blog-simple-head { grid-template-columns:1fr;gap:1.15rem; }
  .aprendiz-site-shell .aprendiz-blog-simple-head h1 { max-width:100%;font-size:2.05rem; }
  .aprendiz-site-shell .blog-filter-bar { flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:1rem 0 1.25rem; }
  .aprendiz-site-shell .blog-filter-btn { flex:0 0 auto; }
  .aprendiz-site-shell .blog-cards-grid--simple { grid-template-columns:1fr !important;gap:.85rem !important; }
  .aprendiz-site-shell .blog-cards-grid--simple .blog-card { border-radius:15px !important; }
  .aprendiz-blog-single .article-container { padding-inline:1rem !important; }
  .aprendiz-blog-single .article-hero-title { font-size:clamp(1.95rem,8.5vw,2.45rem) !important;max-width:100% !important;line-height:1.04 !important; }
  .aprendiz-site-shell .site-footer--studio { margin:3rem .65rem 0 !important;border-radius:22px 22px 0 0 !important; }
  .aprendiz-site-shell .site-footer--studio .footer-container { padding:2.5rem 1.2rem 1.2rem; }
  .aprendiz-site-shell .footer-main-layout--studio { gap:2rem !important; }
  .aprendiz-site-shell .footer-motto-lockup { margin-top:1.6rem; }
  .aprendiz-site-shell .footer-motto-headline { font-size:clamp(1.85rem,8.2vw,2.18rem) !important;line-height:.95; }
  .aprendiz-site-shell .footer-motto-headline > span { white-space:nowrap; }
  .aprendiz-site-shell .footer-brand-manifesto { margin:.9rem 0 1.2rem;font-size:.9rem; }
  .aprendiz-site-shell .footer-nav-pane { grid-template-columns:1fr !important;gap:1.4rem !important; }
  .aprendiz-site-shell .footer-nav-col--segments,
  .aprendiz-site-shell .footer-nav-col--school { display:none !important; }
  .aprendiz-site-shell .footer-nav-list { gap:.85rem; }
  .aprendiz-site-shell .footer-nav-list a { font-size:.94rem; }
  .aprendiz-site-shell .footer-credentials-bar--studio { margin-top:1.8rem;grid-template-columns:1fr;gap:.85rem;padding:1.15rem 0; }
  .aprendiz-site-shell .footer-legal-links { justify-content:flex-start;gap:.55rem .7rem; }
  .aprendiz-site-shell .footer-legal-sep { display:none; }
  .aprendiz-site-shell .footer-back-to-top { margin-left:auto; }
}

@media (prefers-reduced-motion:reduce) {
  .aprendiz-site-shell .aprendiz-photo-card img,
  .aprendiz-site-shell .aprendiz-anchor-pills a,
  .aprendiz-site-shell .blog-filter-btn { transition:none !important; }
}
/* v3.5 footer cascade guard */
.aprendiz-site-shell .site-footer--studio { padding:0 !important; }
.aprendiz-site-shell .footer-motto-headline { max-width:520px !important; }
.aprendiz-blog-single .article-content h2 { font-family:"Outfit",sans-serif !important;font-weight:800 !important;font-size:clamp(1.65rem,2.7vw,2.25rem) !important;line-height:1.16 !important;letter-spacing:-.025em !important; }
.aprendiz-blog-single .article-content h3 { font-family:"Outfit",sans-serif !important;font-size:clamp(1.25rem,2vw,1.6rem) !important;line-height:1.25 !important; }
.aprendiz-blog-single .pre-footer-cta-section .cta-inner-card { padding:clamp(1.75rem,4vw,2.75rem) !important; }

/* ========================================================================== 
   v3.6.0 — refinamento final das internas
   Menos superfície ornamental, mais reaproveitamento dos padrões aprovados da Home.
   ========================================================================== */

/* Footer: full-width real, sem gap lateral do wrapper, mantendo cantos superiores. */
.aprendiz-site-shell .aprendiz-global-footer-slot {
  overflow: visible !important;
}
.aprendiz-site-shell .site-footer--studio {
  width: 100% !important;
  max-width: none !important;
  margin: clamp(3.5rem,6vw,6rem) 0 0 !important;
  border-radius: 28px 28px 0 0 !important;
  box-sizing: border-box;
}
.aprendiz-site-shell .site-footer--studio .footer-container {
  width: min(100%, 1480px) !important;
  margin-inline: auto !important;
}
.aprendiz-site-shell .footer-motto-headline {
  max-width: 620px !important;
  font-size: clamp(2.15rem,2.55vw,3rem) !important;
  line-height: .93 !important;
}
.aprendiz-site-shell .footer-motto-headline > span {
  display: block;
  white-space: normal !important;
}
.aprendiz-site-shell .footer-external-icon {
  display: inline-block !important;
  margin-left: .35rem;
  opacity: .78 !important;
  transform: translateY(-.03em);
}

/* Sobre: reutiliza literalmente a gramática visual do tour da Home. */
.aprendiz-site-shell .aprendiz-about-tour-layout {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr);
  gap: clamp(2.4rem,5vw,5rem);
  align-items: center;
}
.aprendiz-site-shell .aprendiz-about-tour-media { min-width: 0; }
.aprendiz-site-shell .aprendiz-about-tour-media .tour-visual-wrapper { width: 100%; }
.aprendiz-site-shell .aprendiz-about-tour-media .tour-main-frame {
  border-radius: 22px;
  overflow: hidden;
}
.aprendiz-site-shell .aprendiz-about-tour-media .tour-slide-img { border-radius: 0; }
.aprendiz-site-shell .aprendiz-about-tour-media .tour-thumbnails-strip { margin-top: .8rem; }
.aprendiz-site-shell .aprendiz-values-list--compact {
  margin-top: 1.6rem;
  grid-template-columns: 1fr;
}
.aprendiz-site-shell .aprendiz-values-list--compact article,
.aprendiz-site-shell .aprendiz-values-list--compact article:nth-child(odd) {
  border-right: 0;
  padding: .9rem 0;
}
.aprendiz-site-shell .aprendiz-values-list--compact article:first-child { border-top: 1px solid rgba(10,25,49,.1); }
.aprendiz-site-shell .aprendiz-values-list--compact h3 { font-size: 1rem; }
.aprendiz-site-shell .aprendiz-values-list--compact p { font-size: .88rem; }

/* Segmentos: um card por linha, alternando imagem/conteúdo sem achatar a fotografia. */
.aprendiz-site-shell .aprendiz-segment-stack {
  display: flex;
  flex-direction: column;
  gap: clamp(1.1rem,2.5vw,1.7rem);
}
.aprendiz-site-shell .aprendiz-segment-card {
  display: grid !important;
  grid-template-columns: minmax(330px,.92fr) minmax(0,1.08fr) !important;
  min-height: 390px;
  border-radius: 24px !important;
  padding: 12px;
  gap: 0;
  overflow: visible;
  box-shadow: 0 14px 34px rgba(10,25,49,.055);
}
.aprendiz-site-shell .aprendiz-segment-card:nth-child(even) .aprendiz-segment-card__media { order: 2; }
.aprendiz-site-shell .aprendiz-segment-card:nth-child(even) .aprendiz-segment-card__body { order: 1; }
.aprendiz-site-shell .aprendiz-segment-card__media {
  min-width: 0;
  min-height: 0;
  border-radius: 18px;
  overflow: hidden;
  background: #F4F6F8;
}
.aprendiz-site-shell .aprendiz-segment-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 366px;
  object-fit: cover;
  object-position: center;
}
.aprendiz-site-shell .aprendiz-segment-card:nth-child(-n+2) .aprendiz-segment-card__media img {
  object-position: center 28%;
}
.aprendiz-site-shell .aprendiz-segment-card__body {
  padding: clamp(1.7rem,3.5vw,3.1rem);
  justify-content: center;
}
.aprendiz-site-shell .aprendiz-segment-card h2 {
  font-size: clamp(1.6rem,2.35vw,2.25rem);
  max-width: 18ch;
}
.aprendiz-site-shell .aprendiz-segment-card p { max-width: 58ch; }
.aprendiz-site-shell .aprendiz-segment-card ul { margin: 1.15rem 0 1.45rem; }
.aprendiz-site-shell .aprendiz-segment-card .btn-aprendiz-primary,
.aprendiz-site-shell .aprendiz-segment-card .btn-aprendiz-secondary { margin-top: .2rem; }

/* Estrutura: masonry que respeita a proporção natural de cada fotografia. */
.aprendiz-site-shell .aprendiz-photo-masonry {
  columns: 3 320px;
  column-gap: .95rem;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card {
  display: block;
  width: 100%;
  aspect-ratio: auto !important;
  margin: 0 0 .95rem;
  break-inside: avoid;
  border-radius: 20px;
  overflow: hidden;
  background: #F4F6F8;
  box-shadow: 0 12px 30px rgba(10,25,49,.06);
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  transform: none !important;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption {
  position: static;
  background: #fff;
  color: var(--aprendiz-navy);
  padding: .9rem 1rem 1rem;
  border-top: 1px solid rgba(10,25,49,.07);
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption strong {
  color: var(--aprendiz-navy);
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption span {
  color: var(--aprendiz-text-muted);
}

/* Contato: checkbox nativo bem desenhado + imagem com quatro cantos internos. */
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row,
.aprendiz-site-shell .aprendiz-contact-form-panel label.contato-consent {
  display: grid !important;
  grid-template-columns: 20px minmax(0,1fr) !important;
  align-items: start !important;
  gap: .65rem !important;
  margin: .15rem 0 .7rem !important;
  font: 600 .78rem/1.45 "Plus Jakarta Sans",sans-serif !important;
  color: var(--aprendiz-text-muted) !important;
  cursor: pointer;
}
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  padding: 0 !important;
  margin: .05rem 0 0 !important;
  border: 1.5px solid rgba(10,25,49,.28) !important;
  border-radius: 5px !important;
  background: #fff !important;
  display: grid;
  place-items: center;
  cursor: pointer;
}
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row input[type="checkbox"]::before {
  content: "";
  width: 9px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg) scale(0);
  transition: transform .14s ease;
  margin-top: -2px;
}
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row input[type="checkbox"]:checked {
  background: var(--aprendiz-orange) !important;
  border-color: var(--aprendiz-orange) !important;
}
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row input[type="checkbox"]:checked::before { transform: rotate(-45deg) scale(1); }
.aprendiz-site-shell .aprendiz-contact-form-panel label.aprendiz-consent-row input[type="checkbox"]:focus-visible { box-shadow: 0 0 0 3px rgba(237,125,4,.16) !important; }
.aprendiz-site-shell #contatoConsentError { margin: -.15rem 0 .65rem 1.75rem; }
.aprendiz-site-shell .aprendiz-contact-info-panel { padding: 12px; }
.aprendiz-site-shell .aprendiz-contact-info-panel > img {
  width: 100%;
  border-radius: 16px !important;
  overflow: hidden;
}
.aprendiz-site-shell .aprendiz-contact-info-copy { padding: 1.25rem .75rem .75rem; }

/* Blog: pills mais modernas + os mesmos cards base usados pela Home. */
.aprendiz-site-shell .blog-filter-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem;
  padding: .65rem;
  margin: 1.25rem 0 1.75rem;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(10,25,49,.08);
  border-radius: 999px;
  background: #F7F8FA;
}
.aprendiz-site-shell .blog-filter-btn {
  min-height: 38px;
  padding: .55rem .9rem;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #44536A !important;
  font: 700 .82rem/1 "Outfit",sans-serif !important;
}
.aprendiz-site-shell .blog-filter-btn:hover { background: #fff !important;color: var(--aprendiz-navy) !important;transform: none !important; }
.aprendiz-site-shell .blog-filter-btn.active {
  background: var(--aprendiz-navy) !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(10,25,49,.12) !important;
}
.aprendiz-site-shell .blog-cards-grid--simple {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 1.25rem !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing {
  border-radius: 24px !important;
  border: 1px solid rgba(10,25,49,.06) !important;
  box-shadow: 0 4px 16px rgba(10,25,49,.04) !important;
  background: #fff;
  overflow: hidden;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(10,25,49,.08) !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing .blog-thumb {
  aspect-ratio: 4/3;
  border-radius: 0 0 20px 20px;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-category-badge-home {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-content { padding: 1.25rem 1.3rem 1.35rem; }
.aprendiz-site-shell .blog-cards-grid--simple .blog-title {
  margin: .2rem 0 .55rem;
  font-size: clamp(1.05rem,1.4vw,1.25rem);
  line-height: 1.3;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid var(--aprendiz-border);
  margin-top: auto;
  padding-top: 1rem;
  color: var(--aprendiz-navy);
  font: 600 .8rem/1.3 "Outfit",sans-serif;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-read-more {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

/* FAB Joinchat-like: só o essencial. */
body.aprendiz-site-shell .mobile-whatsapp-fab,
.aprendiz-site-shell .mobile-whatsapp-fab,
.aprendiz-site-shell .mobile-whatsapp-fab.is-desktop-hidden {
  position: fixed !important;
  right: max(18px, env(safe-area-inset-right)) !important;
  bottom: max(18px, env(safe-area-inset-bottom)) !important;
  z-index: 1600 !important;
  display: grid !important;
  place-items: center !important;
  width: 60px !important;
  height: 60px !important;
  min-width: 60px !important;
  min-height: 60px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: linear-gradient(145deg,#28D86B 0%,#18B957 100%) !important;
  color: #fff !important;
  box-shadow: 0 10px 26px rgba(17,118,57,.28), 0 2px 7px rgba(10,25,49,.14) !important;
  text-decoration: none !important;
  overflow: visible !important;
  transform: none !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab::before,
.aprendiz-site-shell .mobile-whatsapp-fab::after { content: none !important;display:none !important; }
.aprendiz-site-shell .mobile-whatsapp-fab-icon {
  width: 31px !important;
  height: 31px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  display: grid !important;
  place-items: center !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab-icon::after { content:none !important;display:none !important; }
.aprendiz-site-shell .mobile-whatsapp-fab-icon svg { width:31px !important;height:31px !important;display:block !important; }
.aprendiz-site-shell .mobile-whatsapp-fab-copy,
.aprendiz-site-shell .mobile-whatsapp-fab-accent,
.aprendiz-site-shell .mobile-whatsapp-presence-dot { display:none !important; }
.aprendiz-site-shell .mobile-whatsapp-fab:hover { transform: translateY(-2px) scale(1.035) !important;box-shadow:0 14px 30px rgba(17,118,57,.32),0 3px 8px rgba(10,25,49,.15) !important; }
.aprendiz-site-shell .mobile-whatsapp-fab:active { transform: scale(.96) !important; }
.aprendiz-site-shell .mobile-whatsapp-fab:focus-visible { outline:3px solid rgba(237,125,4,.55) !important;outline-offset:3px !important; }
.aprendiz-site-shell .mobile-whatsapp-fab.is-hidden,
body.aprendiz-site-shell.aprendiz-scroll-lock .mobile-whatsapp-fab { opacity:0 !important;pointer-events:none !important;transform:translateY(10px) scale(.9) !important; }

/* Modal mobile: sheet limpa, conteúdo contido e botões sem estourar. */
@media (max-width:767px) {
  .aprendiz-site-shell .lead-modal-backdrop { padding: 0 !important;align-items: flex-end !important; }
  .aprendiz-site-shell .lead-modal-container {
    width: 100% !important;
    max-width: 100% !important;
    max-height: min(91dvh, 760px) !important;
    padding: 1.15rem 1rem calc(1rem + env(safe-area-inset-bottom)) !important;
    border-radius: 22px 22px 0 0 !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
  }
  .aprendiz-site-shell .lead-modal-container > div:first-child { margin-bottom: .9rem !important; }
  .aprendiz-site-shell .lead-modal-container .step-indicator { margin-bottom: 1rem; }
  .aprendiz-site-shell .lead-modal-container .form-group { margin-bottom: .85rem; }
  .aprendiz-site-shell .lead-modal-container .form-input,
  .aprendiz-site-shell .lead-modal-container .form-select { min-height: 46px;font-size: 16px; }
  .aprendiz-site-shell .lead-modal-container .radio-cards-grid { grid-template-columns: 1fr 1fr !important;gap:.55rem !important; }
  .aprendiz-site-shell .lead-modal-container .radio-card { min-width:0;padding:.7rem .55rem !important;font-size:.78rem !important;text-align:center; }
  .aprendiz-site-shell .lead-modal-container [style*="display: flex; gap: 0.5rem"] { gap:.55rem !important; }
  .aprendiz-site-shell .lead-modal-container [style*="display: flex; gap: 0.5rem"] > button { min-width:0 !important;padding-inline:.65rem !important; }
  .aprendiz-site-shell .lead-modal-container .aprendiz-consent-row { font-size:.76rem;line-height:1.4; }

  .aprendiz-site-shell .site-footer--studio {
    margin: 3rem 0 0 !important;
    border-radius: 22px 22px 0 0 !important;
  }
  .aprendiz-site-shell .site-footer--studio .footer-container { padding-inline: 1.25rem !important; }
  .aprendiz-site-shell .footer-motto-headline { font-size: clamp(1.85rem,8vw,2.2rem) !important;max-width: 100% !important; }

  .aprendiz-site-shell .aprendiz-about-tour-layout { grid-template-columns:1fr;gap:1.7rem; }
  .aprendiz-site-shell .aprendiz-about-tour-media .tour-main-frame { border-radius:18px; }
  .aprendiz-site-shell .aprendiz-about-tour-media .tour-thumbnails-strip { gap:.45rem; }

  .aprendiz-site-shell .aprendiz-segment-stack { gap:1rem; }
  .aprendiz-site-shell .aprendiz-segment-card {
    grid-template-columns: 1fr !important;
    min-height: 0;
    padding: 9px;
    border-radius: 19px !important;
  }
  .aprendiz-site-shell .aprendiz-segment-card:nth-child(even) .aprendiz-segment-card__media,
  .aprendiz-site-shell .aprendiz-segment-card:nth-child(even) .aprendiz-segment-card__body { order: initial; }
  .aprendiz-site-shell .aprendiz-segment-card__media { border-radius:14px; }
  .aprendiz-site-shell .aprendiz-segment-card__media img { min-height:0;height:auto;aspect-ratio:auto;object-fit:cover; }
  .aprendiz-site-shell .aprendiz-segment-card__body { padding:1.15rem .85rem .95rem; }
  .aprendiz-site-shell .aprendiz-segment-card h2 { font-size:1.4rem; }
  .aprendiz-site-shell .aprendiz-segment-card ul { gap:.35rem;margin:.8rem 0 1rem; }

  .aprendiz-site-shell .aprendiz-photo-masonry { columns:1;column-gap:0; }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card { margin-bottom:.8rem;border-radius:16px; }

  .aprendiz-site-shell .aprendiz-contact-info-panel { padding:9px; }
  .aprendiz-site-shell .aprendiz-contact-info-panel > img { border-radius:13px !important; }
  .aprendiz-site-shell .aprendiz-contact-info-copy { padding:1.1rem .55rem .55rem; }

  .aprendiz-site-shell .blog-filter-bar {
    width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    padding:.45rem;
    border-radius:16px;
  }
  .aprendiz-site-shell .blog-filter-bar::-webkit-scrollbar { display:none; }
  .aprendiz-site-shell .blog-filter-btn { flex:0 0 auto; }
  .aprendiz-site-shell .blog-cards-grid--simple { grid-template-columns:1fr !important; }
  .aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing { border-radius:20px !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab,
  body.aprendiz-site-shell .mobile-whatsapp-fab { width:56px !important;height:56px !important;min-width:56px !important;min-height:56px !important;right:14px !important;bottom:calc(14px + env(safe-area-inset-bottom)) !important; }
  .aprendiz-site-shell .mobile-whatsapp-fab-icon,
  .aprendiz-site-shell .mobile-whatsapp-fab-icon svg { width:29px !important;height:29px !important; }
}

@media (max-width:1024px) and (min-width:768px) {
  .aprendiz-site-shell .aprendiz-about-tour-layout { grid-template-columns:1fr; }
  .aprendiz-site-shell .aprendiz-segment-card { grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr) !important; }
  .aprendiz-site-shell .aprendiz-photo-masonry { columns:2 300px; }
}

@media (prefers-reduced-motion:reduce) {
  .aprendiz-site-shell .mobile-whatsapp-fab { transition:none !important; }
}


/* v3.6.1 — WhatsApp FAB: glyph nativo e centralização óptica estável */
body.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon,
.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  transform: none !important;
}
body.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp,
.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
  font-style: normal !important;
  font-weight: 400 !important;
  font-size: 31px !important;
  line-height: 1 !important;
  color: #fff !important;
  transform: none !important;
  vertical-align: 0 !important;
}
body.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp::before,
.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp::before {
  display: block !important;
  margin: 0 !important;
  line-height: 1 !important;
}
@media (max-width: 767px) {
  body.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon,
  .aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
  }
  body.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp,
  .aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon > i.fa-whatsapp {
    font-size: 29px !important;
  }
}

/* ========================================================================== 
   v3.6.2 — estabilização de Segmentos, Estrutura e Blog
   Corrige cards altos, troca o mosaico simples por grid editorial real e
   volta o blog para a linguagem dos cards da home.
   ========================================================================== */

/* Segmentos — mesma leitura de card largo, com mídia controlada para evitar alturas exageradas. */
.aprendiz-site-shell .aprendiz-segmentos-compact .section-container {
  display: grid;
  gap: 1.25rem;
}
.aprendiz-site-shell .aprendiz-segment-stack {
  gap: 1.2rem !important;
}
.aprendiz-site-shell .aprendiz-segment-card {
  display: grid !important;
  grid-template-columns: minmax(310px, 42%) minmax(0, 58%) !important;
  align-items: stretch !important;
  min-height: 0 !important;
  padding: 12px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}
.aprendiz-site-shell .aprendiz-segment-card__media {
  align-self: stretch;
  min-height: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 18px;
  overflow: hidden;
  background: #EEF2F6;
}
.aprendiz-site-shell .aprendiz-segment-card__media img {
  display: block;
  width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center 32% !important;
  aspect-ratio: auto !important;
}
.aprendiz-site-shell .aprendiz-segment-card:nth-child(n+3) .aprendiz-segment-card__media img {
  object-position: center 42% !important;
}
.aprendiz-site-shell .aprendiz-segment-card__body {
  padding: clamp(1.5rem, 3vw, 2.7rem) !important;
}
.aprendiz-site-shell .aprendiz-segment-card h2 {
  max-width: 16ch;
}
.aprendiz-site-shell .aprendiz-segment-card p {
  max-width: 54ch;
}

/* Estrutura — mosaico editorial responsivo, sem colunas quebradas e sem achatar a imagem. */
.aprendiz-site-shell .aprendiz-photo-masonry {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-rows: 24px;
  gap: 1rem !important;
  columns: unset !important;
  column-gap: 0 !important;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card {
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  break-inside: auto !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(10, 25, 49, 0.07);
  box-shadow: 0 14px 34px rgba(10, 25, 49, 0.06);
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--wide {
  grid-column: span 5;
  grid-row: span 14;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--medium {
  grid-column: span 3;
  grid-row: span 14;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--medium:nth-of-type(3) {
  grid-column: span 4;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--tall {
  grid-column: span 4;
  grid-row: span 28;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--panorama {
  grid-column: span 8;
  grid-row: span 14;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card img {
  width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  aspect-ratio: auto !important;
  transform: none !important;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption {
  position: static !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  padding: .95rem 1rem 1rem !important;
  background: #fff !important;
  color: var(--aprendiz-navy) !important;
  border-top: 1px solid rgba(10, 25, 49, 0.07);
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption strong {
  color: var(--aprendiz-navy) !important;
  font: 800 1rem/1.2 "Outfit", sans-serif;
}
.aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card figcaption span {
  margin-top: .24rem;
  color: var(--aprendiz-text-muted) !important;
  font-size: .84rem;
  line-height: 1.45;
}

/* Blog — usa de novo a mesma família de cards da home; filtros simples e estáveis. */
.aprendiz-site-shell .aprendiz-blog-simple-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 360px);
  gap: 1.25rem;
  align-items: end;
}
.aprendiz-site-shell .blog-filter-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center;
  gap: .55rem !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 1.1rem 0 1.6rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.aprendiz-site-shell .blog-filter-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 40px;
  padding: .68rem 1rem !important;
  border: 1px solid #E2E5EC !important;
  border-radius: 999px !important;
  background: #FFFFFF !important;
  color: #272A5A !important;
  font: 700 .88rem/1 "Outfit", sans-serif !important;
  box-shadow: 0 1px 2px rgba(10, 25, 49, 0.025) !important;
}
.aprendiz-site-shell .blog-filter-btn:hover {
  background: #F7F8FA !important;
  border-color: #D5D9E2 !important;
  color: #272A5A !important;
  box-shadow: none !important;
}
body.aprendiz-site-shell.aprendiz-page-blog .elementor-widget-aprendiz-blog-listing .aprendiz-blog-dynamic .blog-filter-btn.active,
body.aprendiz-site-shell .aprendiz-blog-dynamic .blog-filter-btn.active {
  background: #F0F2F6 !important;
  border-color: #C9CEDA !important;
  color: #272A5A !important;
  box-shadow: inset 0 0 0 1px rgba(39, 42, 90, 0.025) !important;
}
.aprendiz-site-shell .blog-cards-grid--simple {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  align-items: stretch !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  min-height: 100%;
  border-radius: 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(10, 25, 49, 0.06) !important;
  background: #FFFFFF !important;
  box-shadow: 0 4px 16px rgba(10, 25, 49, 0.04) !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(10, 25, 49, 0.08) !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing .blog-thumb {
  display: block;
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 0 0 20px 20px;
  background: #F8FAFC;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing .blog-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-category-badge-home {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-content {
  padding: 1.25rem 1.35rem 1.35rem !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-title {
  margin: .2rem 0 .55rem;
  font-size: clamp(1.1rem, 1.45vw, 1.25rem) !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-excerpt {
  margin-bottom: .8rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid var(--aprendiz-border);
  color: var(--aprendiz-navy);
  font: 600 .85rem/1.3 "Outfit", sans-serif;
}
.aprendiz-site-shell .blog-cards-grid--simple .blog-read-more {
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap;
}

@media (max-width: 1140px) {
  .aprendiz-site-shell .aprendiz-segment-card {
    grid-template-columns: minmax(280px, 40%) minmax(0, 60%) !important;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry {
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--wide,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--panorama {
    grid-column: span 8;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--medium,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--medium:nth-of-type(3) {
    grid-column: span 4;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--tall {
    grid-column: span 8;
    grid-row: span 20;
  }
  .aprendiz-site-shell .blog-cards-grid--simple {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  .aprendiz-site-shell .aprendiz-blog-simple-head {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .aprendiz-site-shell .aprendiz-segment-card {
    grid-template-columns: 1fr !important;
    padding: 10px !important;
    border-radius: 18px !important;
  }
  .aprendiz-site-shell .aprendiz-segment-card__media {
    aspect-ratio: 16 / 10;
    border-radius: 14px;
  }
  .aprendiz-site-shell .aprendiz-segment-card__media img {
    object-position: center 28% !important;
  }
  .aprendiz-site-shell .aprendiz-segment-card__body {
    padding: 1.1rem .9rem 1rem !important;
  }

  .aprendiz-site-shell .aprendiz-photo-masonry {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--wide,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--medium,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--tall,
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card--panorama {
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .aprendiz-site-shell .aprendiz-photo-masonry .aprendiz-photo-card img {
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
  }

  .aprendiz-site-shell .blog-filter-bar {
    flex-wrap: nowrap !important;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: .2rem !important;
  }
  .aprendiz-site-shell .blog-filter-bar::-webkit-scrollbar { display: none; }
  .aprendiz-site-shell .blog-filter-btn { flex: 0 0 auto; }
  .aprendiz-site-shell .blog-cards-grid--simple {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  .aprendiz-site-shell .blog-cards-grid--simple .blog-card--listing {
    border-radius: 20px !important;
  }
  .aprendiz-site-shell .blog-cards-grid--simple .blog-content {
    padding: 1.15rem 1.1rem 1.2rem !important;
  }
  .aprendiz-site-shell .blog-cards-grid--simple .blog-card-footer {
    flex-wrap: wrap;
  }
}

/* v3.6.3 — WhatsApp FAB: SVG vetorial independente de fonte e centralização óptica */
body.aprendiz-site-shell .mobile-whatsapp-fab,
.aprendiz-site-shell .mobile-whatsapp-fab {
  display: grid !important;
  place-items: center !important;
  line-height: 0 !important;
}
body.aprendiz-site-shell .mobile-whatsapp-fab > .mobile-whatsapp-fab-glyph,
.aprendiz-site-shell .mobile-whatsapp-fab > .mobile-whatsapp-fab-glyph {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 31px !important;
  height: 31px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  display: block !important;
  transform: translate(-50%, -50%) translate(1px, -1px) !important;
  transform-origin: center center !important;
  overflow: visible !important;
  pointer-events: none !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab > .mobile-whatsapp-fab-glyph path {
  fill: currentColor !important;
}
.aprendiz-site-shell .mobile-whatsapp-fab .mobile-whatsapp-fab-icon,
.aprendiz-site-shell .mobile-whatsapp-fab > i.fa-whatsapp {
  display: none !important;
}
@media (max-width: 767px) {
  body.aprendiz-site-shell .mobile-whatsapp-fab > .mobile-whatsapp-fab-glyph,
  .aprendiz-site-shell .mobile-whatsapp-fab > .mobile-whatsapp-fab-glyph {
    width: 29px !important;
    height: 29px !important;
    transform: translate(-50%, -50%) translate(1px, -1px) !important;
  }
}

/* ========================================================================== 
   v3.7.0 — Galeria da Estrutura
   Um componente novo, isolado do legado: hero panorâmica + quatro miniaturas,
   sem legendas visíveis e com lightbox navegável.
   ========================================================================== */
.aprendiz-site-shell .aprendiz-gallery-clean {
  display: grid;
  gap: 14px;
  width: 100%;
}

.aprendiz-site-shell .aprendiz-gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.aprendiz-site-shell .aprendiz-gallery-item {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 18px;
  overflow: hidden;
  background: #E9EEF4;
  cursor: zoom-in;
  box-shadow: 0 8px 24px rgba(10, 25, 49, 0.06);
  isolation: isolate;
}

.aprendiz-site-shell .aprendiz-gallery-item--featured {
  aspect-ratio: 21 / 8;
  border-radius: 24px;
}

.aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item {
  aspect-ratio: 4 / 3;
}

.aprendiz-site-shell .aprendiz-gallery-item img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .28s ease;
}

.aprendiz-site-shell .aprendiz-gallery-item--featured img { object-position: center 52%; }
.aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item:nth-child(1) img { object-position: center 34%; }
.aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item:nth-child(2) img { object-position: center 38%; }
.aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item--portrait img { object-position: center 34%; }
.aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item:nth-child(4) img { object-position: center 48%; }

.aprendiz-site-shell .aprendiz-gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(10,25,49,0) 62%, rgba(10,25,49,.2) 100%);
  opacity: .55;
  pointer-events: none;
  transition: opacity .22s ease;
}

.aprendiz-site-shell .aprendiz-gallery-expand {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255,255,255,.94);
  color: var(--aprendiz-navy);
  box-shadow: 0 8px 20px rgba(10,25,49,.13);
  opacity: 0;
  transform: translateY(-5px);
  transition: opacity .2s ease, transform .2s ease, background .2s ease;
  pointer-events: none;
}

.aprendiz-site-shell .aprendiz-gallery-expand i {
  font-size: .92rem;
}

.aprendiz-site-shell .aprendiz-gallery-item:hover img { transform: scale(1.012); }
.aprendiz-site-shell .aprendiz-gallery-item:hover::after { opacity: .85; }
.aprendiz-site-shell .aprendiz-gallery-item:hover .aprendiz-gallery-expand,
.aprendiz-site-shell .aprendiz-gallery-item:focus-visible .aprendiz-gallery-expand {
  opacity: 1;
  transform: translateY(0);
}

.aprendiz-site-shell .aprendiz-gallery-item:focus-visible {
  outline: 3px solid rgba(237,125,4,.55);
  outline-offset: 3px;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  padding: clamp(12px, 2vw, 28px);
  background: rgba(4, 12, 24, .94);
  backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease, visibility .2s ease;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__dialog {
  position: relative;
  width: min(94vw, 1540px);
  height: min(90vh, 980px);
  min-height: 320px;
  display: grid;
  place-items: center;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__stage {
  width: 100%;
  height: 100%;
  margin: 0;
  display: grid;
  place-items: center;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__stage img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 16px;
  box-shadow: 0 24px 80px rgba(0,0,0,.34);
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__close,
.aprendiz-site-shell .aprendiz-gallery-lightbox__nav {
  position: absolute;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  background: rgba(255,255,255,.1);
  color: #fff;
  cursor: pointer;
  backdrop-filter: blur(8px);
  transition: background .18s ease, transform .18s ease;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__close:hover,
.aprendiz-site-shell .aprendiz-gallery-lightbox__nav:hover {
  background: rgba(255,255,255,.18);
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__close:focus-visible,
.aprendiz-site-shell .aprendiz-gallery-lightbox__nav:focus-visible {
  outline: 3px solid rgba(237,125,4,.8);
  outline-offset: 3px;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__close {
  top: 0;
  right: 0;
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__nav {
  top: 50%;
  transform: translateY(-50%);
}

.aprendiz-site-shell .aprendiz-gallery-lightbox__nav:hover { transform: translateY(-50%) scale(1.04); }
.aprendiz-site-shell .aprendiz-gallery-lightbox__nav--prev { left: 0; }
.aprendiz-site-shell .aprendiz-gallery-lightbox__nav--next { right: 0; }

.aprendiz-site-shell .aprendiz-gallery-lightbox__counter {
  position: absolute;
  right: 6px;
  bottom: 2px;
  z-index: 3;
  padding: .45rem .7rem;
  border-radius: 999px;
  background: rgba(4,12,24,.62);
  color: rgba(255,255,255,.88);
  font: 700 .78rem/1 "Outfit", sans-serif;
  letter-spacing: .04em;
  backdrop-filter: blur(8px);
}

@media (max-width: 1024px) {
  .aprendiz-site-shell .aprendiz-gallery-item--featured { aspect-ratio: 16 / 8; }
  .aprendiz-site-shell .aprendiz-gallery-thumbs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .aprendiz-site-shell .aprendiz-gallery-clean { gap: 9px; }
  .aprendiz-site-shell .aprendiz-gallery-thumbs { gap: 9px; }
  .aprendiz-site-shell .aprendiz-gallery-item,
  .aprendiz-site-shell .aprendiz-gallery-item--featured { border-radius: 15px; }
  .aprendiz-site-shell .aprendiz-gallery-item--featured { aspect-ratio: 16 / 10; }
  .aprendiz-site-shell .aprendiz-gallery-thumbs .aprendiz-gallery-item { aspect-ratio: 4 / 3; }
  .aprendiz-site-shell .aprendiz-gallery-expand {
    top: 9px;
    right: 9px;
    width: 36px;
    height: 36px;
    opacity: .96;
    transform: none;
  }
  .aprendiz-site-shell .aprendiz-gallery-lightbox { padding: 8px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__dialog { width: 100%; height: 92dvh; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__stage img { border-radius: 10px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__close,
  .aprendiz-site-shell .aprendiz-gallery-lightbox__nav { width: 42px; height: 42px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__close { top: 6px; right: 6px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__nav--prev { left: 6px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__nav--next { right: 6px; }
  .aprendiz-site-shell .aprendiz-gallery-lightbox__counter { right: 8px; bottom: 8px; }
}

@media (hover: none) {
  .aprendiz-site-shell .aprendiz-gallery-expand { opacity: .96; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .aprendiz-site-shell .aprendiz-gallery-item img,
  .aprendiz-site-shell .aprendiz-gallery-item::after,
  .aprendiz-site-shell .aprendiz-gallery-expand,
  .aprendiz-site-shell .aprendiz-gallery-lightbox,
  .aprendiz-site-shell .aprendiz-gallery-lightbox__close,
  .aprendiz-site-shell .aprendiz-gallery-lightbox__nav {
    transition: none !important;
  }
  .aprendiz-site-shell .aprendiz-gallery-item:hover img { transform: none; }
}

/* ========================================================================== 
   v3.8.0 — Widgets de coleção com Repeater nativo do Elementor.
   Hardening visual do card de matrículas e dos componentes reordenáveis.
   ========================================================================== */
.aprendiz-site-shell #segmentos .bolsas-spotlight-card {
  min-height: 0 !important;
  align-self: stretch;
  isolation: isolate;
}
.aprendiz-site-shell #segmentos .bolsas-spotlight-content {
  height: 100% !important;
  min-height: 0 !important;
  justify-content: flex-start !important;
  gap: 0 !important;
}
.aprendiz-site-shell #segmentos .bolsas-card-title {
  color: #FFFFFF !important;
  flex: 0 0 auto !important;
}
.aprendiz-site-shell #segmentos .bolsas-card-subtitle {
  color: #B8C4D6 !important;
  flex: 0 0 auto !important;
  margin-bottom: 1.15rem !important;
}
.aprendiz-site-shell #segmentos .bolsas-perks-list {
  color: #E8EEF7 !important;
  margin: 0 0 1.35rem !important;
  flex: 0 0 auto !important;
}
.aprendiz-site-shell #segmentos .bolsas-perks-list i {
  color: #FFB800 !important;
}
.aprendiz-site-shell #segmentos .btn-aprendiz-gold-cta {
  margin-top: auto !important;
  min-height: 46px;
  border: 0 !important;
  cursor: pointer;
}

/* Itens criados/reordenados no Elementor nunca herdam larguras inline antigas. */
.aprendiz-site-shell .segments-grid > .segment-card,
.aprendiz-site-shell .segments-grid > .bolsas-spotlight-card,
.aprendiz-site-shell .diff-grid-v2 > .diff-card-v2,
.aprendiz-site-shell .divider-pillars > .divider-pilar,
.aprendiz-site-shell .about-metrics-grid > .about-metric-card,
.aprendiz-site-shell .reviews-slider-track > .google-review-card {
  min-width: 0;
}

/* Link opcional do FAQ permanece parte da resposta, sem markup editável. */
.aprendiz-site-shell .faq-inline-link {
  display: inline;
  margin-left: .25rem;
  color: var(--aprendiz-orange);
  font-weight: 700;
  text-decoration: none;
}
.aprendiz-site-shell .faq-inline-link:hover { text-decoration: underline; }

/* O tour lê metadados do próprio item Repeater; thumbnails adicionadas seguem o fluxo. */
.aprendiz-site-shell .tour-thumbnails-strip {
  scrollbar-width: thin;
}
.aprendiz-site-shell .tour-thumb-item {
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .aprendiz-site-shell #segmentos .bolsas-spotlight-content {
    padding: 1.35rem 1.15rem 1.2rem !important;
  }
  .aprendiz-site-shell #segmentos .bolsas-card-subtitle {
    margin-bottom: 1rem !important;
  }
}

/* v3.8.1 — estabilidade entre breakpoints dos componentes editáveis */
.aprendiz-site-shell .about-narrative-block,
.aprendiz-site-shell .visit-info-column { text-align: left; }
.aprendiz-site-shell .about-narrative-block .section-tag,
.aprendiz-site-shell .about-narrative-block .section-title,
.aprendiz-site-shell .visit-info-column .section-title {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.aprendiz-site-shell #blog .blog-grid .blog-title a,
.aprendiz-site-shell #blog .blog-grid .blog-title a:visited {
  color: var(--aprendiz-navy) !important;
}
.aprendiz-site-shell .segment-stage-icon,
.aprendiz-site-shell .segment-stage-icon :where(svg,i) {
  box-sizing: border-box;
}
.aprendiz-site-shell .segment-stage-icon :where(svg,i) {
  width: 1rem !important;
  height: 1rem !important;
  min-width: 1rem !important;
  max-width: 1rem !important;
  font-size: .9rem !important;
  line-height: 1 !important;
  margin: 0 !important;
}
.aprendiz-site-shell .tour-main-frame { background: #EEF2F6 !important; }

@media (min-width: 768px) and (max-width: 1179px) {
  body.aprendiz-site-shell,
  .aprendiz-site-shell .aprendiz-page-main,
  .aprendiz-site-shell .aprendiz-global-slot,
  .aprendiz-site-shell .aprendiz-section-shell {
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  .aprendiz-site-shell .about-overview-grid,
  .aprendiz-site-shell .visit-grid-2col {
    grid-template-columns: minmax(0,1fr) !important;
  }
  .aprendiz-site-shell .about-narrative-block,
  .aprendiz-site-shell .about-visual-composition {
    width: min(100%, 860px);
    margin-inline: auto;
  }
  .aprendiz-site-shell .custom-map-wrapper {
    min-height: 0;
    border-radius: 20px 20px 0 0 !important;
    border-right: 0 !important;
    box-shadow: none !important;
  }
  .aprendiz-site-shell .custom-map-frame,
  .aprendiz-site-shell .custom-map-frame iframe { min-height: 360px !important; }
}

@media (max-width: 767px) {
  .aprendiz-site-shell .hero-slider-track,
  .aprendiz-site-shell .hero-slide,
  .aprendiz-site-shell .hero-slide-picture,
  .aprendiz-site-shell .hero-slide-img {
    aspect-ratio: 9 / 16 !important;
  }
  .aprendiz-site-shell .hero-slide-img {
    object-fit: cover !important;
    object-position: center center !important;
    max-height: none !important;
  }
  .aprendiz-site-shell .tour-slide-meta {
    left: .65rem;
    right: .65rem;
    bottom: .65rem;
  }
  .aprendiz-site-shell .tour-meta-text {
    max-width: calc(100% - 4.2rem);
    padding: .5rem .6rem .55rem;
  }
  .aprendiz-site-shell .tour-meta-title { font-size: .84rem; }
  .aprendiz-site-shell .tour-meta-tag { font-size: .61rem; }
  .aprendiz-site-shell .custom-map-frame,
  .aprendiz-site-shell .custom-map-frame iframe { min-height: 300px !important; }
  .aprendiz-site-shell .visit-info-column > .badge-navy { align-self: flex-start !important; }
}


/* ==========================================================================
   v3.8.3 — Instagram: ritmo vertical e hover refinados
   ========================================================================== */
.aprendiz-site-shell .insta-section-wrapper .insta-carousel-container {
  padding-bottom: 0 !important;
}
.aprendiz-site-shell .insta-section-wrapper .insta-carousel-viewport {
  padding-bottom: .65rem !important;
}
.aprendiz-site-shell .insta-section-wrapper .insta-slider-dots {
  margin-top: .7rem !important;
  margin-bottom: 0 !important;
}
.aprendiz-site-shell .insta-section-wrapper .insta-actions-cta {
  margin-top: 1.75rem !important;
}
.aprendiz-site-shell .insta-section-wrapper .insta-feed-card {
  transition: transform .46s cubic-bezier(.22,1,.36,1),
              box-shadow .46s cubic-bezier(.22,1,.36,1),
              border-color .32s ease !important;
  transform: translateZ(0);
}
@media (hover:hover) and (pointer:fine) {
  .aprendiz-site-shell .insta-section-wrapper .insta-feed-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 17px 38px rgba(0,0,0,.34), 0 0 0 1px rgba(237,125,4,.08) !important;
    border-color: rgba(237,125,4,.22) !important;
  }
  .aprendiz-site-shell .insta-section-wrapper .insta-feed-card:hover .insta-feed-media img {
    transform: scale(1.012) !important;
  }
  .aprendiz-site-shell .insta-section-wrapper .insta-feed-card:hover .insta-heart-btn svg {
    transform: scale(1.08) !important;
  }
}
@media (max-width:767px) {
  .aprendiz-site-shell .insta-section-wrapper .insta-carousel-viewport {
    padding-bottom: .45rem !important;
  }
  .aprendiz-site-shell .insta-section-wrapper .insta-slider-dots {
    margin-top: .55rem !important;
  }
  .aprendiz-site-shell .insta-section-wrapper .insta-actions-cta {
    margin-top: 1.35rem !important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .aprendiz-site-shell .insta-section-wrapper .insta-feed-card,
  .aprendiz-site-shell .insta-section-wrapper .insta-feed-media img,
  .aprendiz-site-shell .insta-section-wrapper .insta-action-btn svg {
    transition: none !important;
    transform: none !important;
  }
}

/* ========================================================================== 
   v3.9.0 — Popup de matrículas em vídeo
   Componente isolado: não interfere na cascata das seções existentes.
   ========================================================================== */
.aprendiz-video-popup {
  position: fixed;
  inset: 0;
  z-index: 100120;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2.5rem);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease, visibility .24s ease;
}
.aprendiz-video-popup.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.aprendiz-video-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 18, 38, .78);
  backdrop-filter: blur(12px);
}
.aprendiz-video-popup__card {
  position: relative;
  z-index: 1;
  width: min(960px, 100%);
  max-height: min(88vh, 760px);
  overflow: auto;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 24px;
  background: #FFFFFF;
  box-shadow: 0 28px 90px rgba(4, 13, 29, .36);
  transform: translateY(12px) scale(.985);
  transition: transform .28s cubic-bezier(.22,1,.36,1);
}
.aprendiz-video-popup.is-open .aprendiz-video-popup__card { transform: translateY(0) scale(1); }
.aprendiz-video-popup__close {
  position: absolute;
  top: .8rem;
  right: .8rem;
  z-index: 3;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  background: rgba(10,25,49,.78);
  color: #fff;
  cursor: pointer;
}
.aprendiz-video-popup__close:focus-visible { outline: 3px solid rgba(237,125,4,.45); outline-offset: 2px; }
.aprendiz-video-popup__media {
  aspect-ratio: 16 / 9;
  background: #08162b;
}
.aprendiz-video-popup__media iframe { display:block; width:100%; height:100%; border:0; }
.aprendiz-video-popup__copy {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: .4rem 1.5rem;
  align-items: center;
  padding: 1.35rem 1.5rem 1.5rem;
}
.aprendiz-video-popup__copy > span {
  grid-column: 1;
  color: var(--aprendiz-orange);
  font: 800 .72rem/1.2 "Outfit", sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.aprendiz-video-popup__copy h2 {
  grid-column: 1;
  margin: 0;
  color: var(--aprendiz-navy);
  font: 800 clamp(1.55rem, 3vw, 2.35rem)/1.08 "Outfit", sans-serif !important;
  letter-spacing: -.03em;
}
.aprendiz-video-popup__copy p {
  grid-column: 1;
  margin: .25rem 0 0;
  color: var(--aprendiz-text-muted);
  line-height: 1.55;
}
.aprendiz-video-popup__copy .btn-aprendiz-primary { grid-column: 2; grid-row: 1 / span 3; white-space: nowrap; }
@media (max-width: 680px) {
  .aprendiz-video-popup { padding: .75rem; }
  .aprendiz-video-popup__card { border-radius: 18px; }
  .aprendiz-video-popup__copy { grid-template-columns: 1fr; padding: 1.1rem; }
  .aprendiz-video-popup__copy > span,
  .aprendiz-video-popup__copy h2,
  .aprendiz-video-popup__copy p,
  .aprendiz-video-popup__copy .btn-aprendiz-primary { grid-column: 1; grid-row: auto; }
  .aprendiz-video-popup__copy .btn-aprendiz-primary { width: 100%; margin-top: .6rem; }
}
@media (prefers-reduced-motion: reduce) {
  .aprendiz-video-popup,
  .aprendiz-video-popup__card { transition: none !important; }
}

/* v3.9.2 — galeria da Estrutura com 1 destaque + 3 miniaturas após retirada da quadra. */
.aprendiz-site-shell .aprendiz-gallery-thumbs {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
@media (max-width: 640px) {
  .aprendiz-site-shell .aprendiz-gallery-thumbs {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* v3.9.2 — tipografia institucional atemporal solicitada na 2ª revisão.
   A assinatura "Nossas Digitais alcançam o mundo" é a única chamada que
   preserva Galaxy Room; os demais títulos usam Outfit para não depender da campanha. */
.aprendiz-site-shell :where(
  .section-title,
  .editorial-hero-title,
  .internal-hero-title,
  .blog-hero-title,
  .estrutura-hero-title,
  .contato-hero-title,
  .legal-hero-title,
  .insta-main-title,
  .aprendiz-compact-title,
  .footer-motto-headline
),
.aprendiz-site-shell :where(
  .section-title,
  .editorial-hero-title,
  .internal-hero-title,
  .blog-hero-title,
  .estrutura-hero-title,
  .contato-hero-title,
  .legal-hero-title,
  .insta-main-title,
  .aprendiz-compact-title,
  .footer-motto-headline
) :where(span,em,strong) {
  font-family: "Outfit", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
}
.aprendiz-site-shell .divider-slogan-script,
.aprendiz-site-shell .divider-slogan-script :where(span,em,strong) {
  font-family: "Galaxy Room", "Outfit", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}
