/* ============================================
   RESPONSIVE — LJR Digital Studio
   6 Breakpoints Sistema Profissional:
   - Desktop Large (≥1536px)
   - Desktop (1280px)
   - Notebook (1024px)
   - Tablet (768px)
   - Mobile (480px)
   - Mobile Small (360px)
============================================ */

/* ==============================
   1. DESKTOP LARGE — 1536px+
============================== */
@media (min-width: 1536px) {
  :root {
    --container: 1400px;
    --container-padding: 40px;
    --section-gap: 160px;
  }

  .hero__container {
    max-width: 1400px;
    gap: 48px;
  }
}

/* ==============================
   2. DESKTOP — 1280px
============================== */
@media (max-width: 1280px) {
  :root {
    --container-padding: 32px;
  }

  /* services carousel: sem override necessário — JS gerencia larguras */

  .differentials__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}

/* ==============================
   3. NOTEBOOK — 1024px
============================== */
@media (max-width: 1024px) {
  :root {
    --section-gap: 110px;
    --container-padding: 32px;
  }

  /* Navbar */
  .navbar {
    padding: 0 var(--container-padding);
    height: 76px;
  }

  .navbar__inner {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    margin: 0;
  }

  .navbar__logo {
    margin-right: auto;
  }

  .navbar__menu {
    display: none;
  }

  .navbar__hamburger {
    display: flex;
    margin-left: auto;
  }

  .navbar__cta,
  #navbar-cta,
  a.navbar__cta {
    display: none !important;
  }

  /* Hero (1024px / Nest Hub) */
  .hero {
    padding: 84px 0 32px !important;
  }

  .hero__container {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    text-align: center !important;
    min-height: auto !important;
  }

  .hero__content {
    width: 100% !important;
    align-items: center !important;
    padding-top: 0 !important;
  }

  .hero__headline {
    max-width: 100% !important;
    font-size: clamp(1.75rem, 3.8vw, 2.25rem) !important;
    line-height: 1.18 !important;
  }

  .hero__sub {
    margin: 0 auto 28px !important;
    max-width: 540px !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }

  .hero__label {
    justify-content: center !important;
  }

  .hero__actions {
    justify-content: center !important;
  }

  /* Elementos invisíveis em 1024px igual ao mobile */
  .hero__glow-bg,
  .hero__visual,
  .hero__bg-circle,
  .hero__photo-img,
  .hero__signature-block,
  .hero__card {
    display: none !important;
  }

  /* Exceção: O bloco "ESPECIALISTA EM" + ícones DEVE SE MANTER VISÍVEL */
  .hero__tech {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    margin-top: 28px !important;
  }

  .hero__tech-label {
    display: block !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
  }

  .hero__tech-logos {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 16px !important;
    margin-top: 12px !important;
  }

  /* Services: carrossel — sem override, JS gerencia */

  /* Portfolio (1024px / Nest Hub — Botão abaixo dos cards) */
  .portfolio__inner {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    text-align: center !important;
  }

  .portfolio__info {
    display: contents !important;
  }

  .portfolio__label {
    order: 1 !important;
    margin: 0 auto 12px !important;
  }

  .portfolio__headline {
    order: 2 !important;
    text-align: center !important;
    margin: 0 auto 16px !important;
    font-size: clamp(1.5rem, 3.2vw, 1.85rem) !important;
  }

  .portfolio__sub {
    order: 3 !important;
    text-align: center !important;
    margin: 0 auto 28px !important;
    font-size: 14.5px !important;
  }

  .portfolio__carousel-wrapper {
    order: 4 !important;
    width: 100% !important;
    margin-right: 0 !important;
  }

  .portfolio__cta {
    order: 5 !important;
    align-self: center !important;
    margin: 28px auto 0 !important;
  }

  /* ——— TIPOGRAFIA HARMONIZADA EM 1024px ——— */
  .section-headline,
  .about__headline,
  .services__headline,
  .pricing__headline,
  .plans__headline,
  .differentials__headline,
  .process__headline,
  .testimonials__headline,
  .leads__headline {
    font-size: clamp(1.5rem, 3.2vw, 1.85rem) !important;
    line-height: 1.2 !important;
  }

  .section-sub,
  .about__sub,
  .services__sub,
  .pricing__sub,
  .plans__sub,
  .differentials__sub,
  .process__sub,
  .testimonials__sub,
  .leads__sub {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }

  /* ——— BOTÕES COM TAMANHOS EXATOS E PADRONIZADOS EM 1024px ——— */
  .btn:not(.navbar__cta),
  .hero__cta,
  .portfolio__cta,
  .plan-card__cta,
  .plans-cta__btn,
  .cta-final__btn {
    height: 48px !important;
    padding: 0 24px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: var(--radius-pill) !important;
  }

  .navbar__cta,
  #navbar-cta,
  a.navbar__cta {
    display: none !important;
  }

  .plan-card__cta-secondary,
  .portfolio__cta-secondary {
    height: 44px !important;
    padding: 0 20px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
  }

  /* Process: 3 colunas */
  .process__steps {
    grid-template-columns: repeat(3, 1fr);
  }

  .process__line {
    display: none;
  }

  /* Differentials: 2 colunas */
  .differentials__inner {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .differentials__intro {
    position: static !important;
    top: auto !important;
  }

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

  /* Testimonials */
  .testimonials__inner {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .test-card {
    flex: 0 0 calc(50% - 10px);
  }

  /* Leads */
  .leads__inner {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  /* CTA Final (1024x600 / Notebook / Tablet) — Imagem Colada na Borda Inferior */
  .cta-final {
    padding: 60px 0 0 !important;
    margin-bottom: 0 !important;
  }

  .cta-final__grid {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: flex-end;
  }

  .cta-final__col-headline {
    grid-column: 1;
    align-items: flex-start;
    text-align: left;
  }

  .cta-final__headline {
    text-align: left;
  }

  .cta-final__col-action {
    grid-column: 1;
    align-items: flex-start;
    text-align: left;
    padding-left: 0;
  }

  .cta-final__desc {
    max-width: 100%;
    text-align: left;
    margin: 0 0 20px;
  }

  .cta-final__col-hero {
    grid-column: 2;
    grid-row: 1 / span 2;
    min-height: 320px;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .cta-final__illustration-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
  }

  .cta-final__illustration-img {
    width: clamp(400px, 44vw, 540px) !important;
    margin-right: -4% !important;
    margin-bottom: 0 !important;
    display: block !important;
    vertical-align: bottom !important;
  }

  /* Footer */
  .footer__inner {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

/* ==============================
   4. TABLET & MOBILE — ≤ 768px
============================== */
@media (max-width: 768px) {
  :root {
    --section-gap: 90px;
    --container-padding: 24px;
  }

  /* Seção 01 (Hero) — Ocultar Imagens, Assinatura, Card Flutuante, Glow Azul e Tech Stack no Mobile */
  .hero__glow-bg,
  .hero__visual,
  .hero__bg-circle,
  .hero__photo-img,
  .hero__signature-block,
  .hero__signature-img,
  .hero__card,
  .hero__tech {
    display: none !important;
  }

  .hero {
    padding: 85px 0 30px;
    width: 100%;
    overflow: hidden;
  }

  .hero__container {
    grid-template-columns: 1fr;
    gap: 0;
    text-align: center;
    min-height: auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0 16px;
  }

  .hero__content {
    width: 100%;
    max-width: 100%;
    align-items: center;
    text-align: center;
    padding-top: 0;
    box-sizing: border-box;
  }

  .hero__label {
    justify-content: center;
    width: 100%;
    margin-bottom: 14px;
  }

  .hero__label .label-text {
    font-size: 11px;
    letter-spacing: 1px;
  }

  .hero__headline {
    width: 100%;
    max-width: 100%;
    font-size: clamp(1.25rem, 5.2vw, 1.65rem);
    line-height: 1.25;
    text-align: center;
    margin-bottom: 16px;
    box-sizing: border-box;
    overflow-wrap: break-word;
    word-break: break-word;
    letter-spacing: -0.2px;
  }

  .hero__headline br {
    display: none !important;
  }

  .hero__headline--blue {
    white-space: normal !important;
    display: inline !important;
  }

  .hero__sub {
    width: 100%;
    max-width: 100%;
    text-align: center;
    font-size: 13.5px;
    line-height: 1.5;
    margin: 0 auto 24px;
    box-sizing: border-box;
  }

  .hero__sub br {
    display: none !important;
  }

  .hero__actions {
    width: 100%;
    max-width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 24px;
    box-sizing: border-box;
  }

  .hero__actions .btn {
    width: 100%;
    max-width: 100%;
    min-height: 48px;
    padding: 12px 16px;
    font-size: 13px;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    white-space: normal !important;
  }

  .hero__tech {
    width: 100%;
    max-width: 100%;
    align-items: center;
    text-align: center;
    box-sizing: border-box;
  }

  .hero__tech-label {
    text-align: center;
    font-size: 11px;
    margin-bottom: 8px;
  }

  .hero__tech-logos {
    display: flex;
    justify-content: center;
    gap: 6px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    flex-wrap: wrap;
  }

  .hero__tech-logos .tech-chip {
    width: calc(25% - 6px);
    max-width: 76px;
    height: 68px;
    padding: 6px 2px;
    box-sizing: border-box;
  }

  /* Portfolio Mobile — Botão VER PORTFÓLIO COMPLETO abaixo dos cards */
  .portfolio__inner {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .portfolio__info {
    display: contents;
  }

  .portfolio__info .section-label {
    order: 1;
  }

  .portfolio__headline {
    order: 2;
    margin-top: 12px;
    margin-bottom: 16px;
  }

  .portfolio__sub {
    order: 3;
    margin-bottom: 24px;
  }

  .portfolio__carousel-wrapper {
    order: 4;
    width: 100%;
    margin-bottom: 24px;
  }

  .portfolio__cta {
    order: 5;
    width: 100%;
    max-width: 100%;
    min-height: 52px;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    align-self: center;
    margin-top: 4px;
  }

  /* Services: carrossel tablet — sem override, JS gerencia */

  /* Process: 2 colunas no tablet */
  .process__steps {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  /* Differentials: 2 colunas */
  .differentials__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  /* Testimonials: 1 card por vez */
  .test-card {
    flex: 0 0 100%;
  }

  /* Leads Form */
  .form-row {
    grid-template-columns: 1fr;
  }

  .leads__form-card {
    padding: 32px 24px;
  }

  .leads__trust {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .trust-item {
    flex-direction: row;
    text-align: left;
  }

  /* Footer */
  .footer__inner {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

/* ==============================
   5. MOBILE — 480px
============================== */
@media (max-width: 480px) {
  :root {
    --section-gap: 75px;
    --container-padding: 18px;
  }

  /* Desativar elementos decorativos pesados no celular */
  .hero__glow-bg,
  .hero__visual,
  .hero__card,
  .cta-final__glow,
  .cta-final__lines {
    display: none !important;
  }

  /* Navbar Mobile */
  .navbar {
    height: 72px;
    padding: 0 var(--container-padding) !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .navbar__inner {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .navbar__logo {
    margin-right: auto !important;
  }

  .navbar__logo-img {
    height: 38px;
  }

  .navbar__hamburger {
    display: flex !important;
    margin-left: auto !important;
  }

  /* Hero Mobile */
  .hero {
    padding: 95px 0 35px;
  }

  .hero__container {
    padding: 0 var(--container-padding);
    gap: 24px;
  }

  .hero__actions {
    flex-direction: column;
    width: 100%;
    gap: 12px;
  }

  .hero__actions .btn {
    width: 100%;
    min-height: 52px;
    justify-content: center;
  }

  /* Services: carrossel mobile — sem override, JS gerencia */
  .services__carousel-viewport {
    /* Garante que o carrossel não cause overflow horizontal na página */
    max-width: 100%;
  }

  .process__steps {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .differentials__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* Testimonials / Portfolio */
  .testimonials__carousel-wrapper .carousel-arrow--prev,
  .testimonials__carousel-wrapper .carousel-arrow--next,
  .portfolio__carousel-wrapper .carousel-arrow--prev,
  .portfolio__carousel-wrapper .carousel-arrow--next {
    display: none;
  }

  /* Leads Mobile Form */
  .leads__form-card {
    padding: 28px 18px;
    border-radius: var(--radius-lg);
  }

  .leads__submit,
  .leads__whatsapp {
    min-height: 52px;
  }

  /* CTA Final Mobile — Imagem encostada na borda inferior junto ao footer */
  .cta-final {
    padding: 40px 0 0 !important;
  }

  .cta-final__grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    text-align: center !important;
    justify-items: center !important;
  }

  .cta-final__col-headline {
    grid-column: auto !important;
    align-items: center !important;
    text-align: center !important;
    padding-bottom: 0 !important;
    width: 100% !important;
  }

  .cta-final__headline {
    text-align: center !important;
    font-size: clamp(1.2rem, 5.2vw, 1.55rem) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.4px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  .cta-final__headline--blue {
    display: inline-block !important;
  }

  .cta-final__col-action {
    grid-column: auto !important;
    align-items: center !important;
    text-align: center !important;
    padding-left: 0 !important;
    padding-bottom: 20px !important;
    width: 100% !important;
    gap: 16px !important;
  }

  .cta-final__desc {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
    text-align: center !important;
    max-width: 310px !important;
    margin: 0 auto !important;
  }

  .cta-final__btn {
    width: 100% !important;
    max-width: 290px !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 auto !important;
    font-size: 13px !important;
    padding: 0 20px !important;
    justify-content: center !important;
  }

  .cta-final__col-hero {
    position: relative;
    bottom: auto;
    right: auto;
    grid-column: auto;
    grid-row: auto;
    min-height: auto;
    height: auto;
    margin-top: 12px;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    justify-content: center;
    width: 100%;
    pointer-events: auto;
  }

  .cta-final__illustration-wrapper {
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .cta-final__illustration-img {
    width: 88%;
    max-width: 460px;
    margin: 0 auto;
    display: block !important;
    margin-bottom: 0 !important;
    vertical-align: bottom !important;
    transform: none !important;
    animation: none !important;
  }

  /* ============================================
     FOOTER MOBILE — ORGANIZADO, CENTRALIZADO E COM DIVISÓRIAS
     ============================================ */
  .footer {
    padding: 60px 0 0 !important;
    text-align: center !important;
  }

  .footer__inner {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding-bottom: 48px !important;
    text-align: center !important;
    justify-items: center !important;
  }

  /* Divisórias elegantes entre os blocos no mobile */
  .footer__brand,
  .footer__nav,
  .footer__services {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-bottom: 32px !important;
  }

  .footer__contact {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding-bottom: 0 !important;
    border-bottom: none !important;
  }

  .footer__logo-link {
    align-self: center !important;
    margin: 0 auto !important;
    display: inline-block !important;
  }

  .footer__logo-img {
    margin: 0 auto !important;
  }

  .footer__desc {
    text-align: center !important;
    margin: 16px auto 20px !important;
    max-width: 320px !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
  }

  .footer__copy-mini {
    text-align: center !important;
    margin: 0 auto !important;
  }

  .footer__col-title {
    text-align: center !important;
    width: 100% !important;
    margin-bottom: 20px !important;
  }

  .footer__list {
    align-items: center !important;
    text-align: center !important;
    justify-content: center !important;
    width: 100% !important;
    gap: 14px !important;
  }

  .footer__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .footer__contact-item {
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
  }

  .footer__bottom {
    text-align: center !important;
    padding: 20px 16px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  }

  .footer__bottom-inner {
    justify-content: center !important;
    text-align: center !important;
  }

  .footer__bottom p {
    text-align: center !important;
    margin: 0 auto !important;
  }
}

/* ==============================
   5.5 MOBILE IPHONE SE — 375px
============================== */
@media (max-width: 375px) {
  .cta-final__headline {
    font-size: clamp(1.15rem, 5.2vw, 1.45rem) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.3px !important;
    text-align: center !important;
  }

  .cta-final__desc {
    font-size: 13px !important;
    line-height: 1.5 !important;
    max-width: 280px !important;
    text-align: center !important;
    margin: 0 auto !important;
  }

  .cta-final__btn {
    max-width: 270px !important;
    font-size: 12.5px !important;
    padding: 0 16px !important;
    height: 48px !important;
    margin: 0 auto !important;
  }
}

/* ==============================
   6. MOBILE SMALL — 360px
============================== */
@media (max-width: 360px) {
  :root {
    --container-padding: 14px;
    --section-gap: 60px;
  }

  .hero__headline {
    font-size: clamp(1.6rem, 7vw, 2.1rem);
  }

  .section-headline {
    font-size: clamp(1.4rem, 6.5vw, 1.8rem);
  }

  .hero__actions .btn {
    font-size: 13.5px;
    padding: 0 20px;
  }

  .leads__form-card {
    padding: 24px 14px;
  }

  .cta-final__btn {
    font-size: 12.5px;
    padding: 0 20px;
  }

  .cta-final__illustration-img {
    width: 90%;
    max-width: 320px;
  }
}

/* ==============================
   PRICING & PLANS — Responsivo
============================== */

/* Tablet — 768px */
@media (max-width: 768px) {
  .plans__grid {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
  }

  .plan-card {
    order: initial !important;
  }

  .plan-card--featured {
    transform: translateY(0);
    order: initial !important;
  }

  .plan-card--featured:hover {
    transform: translateY(-6px);
  }

  .pricing__carousel-header {
    flex-direction: row;
    gap: 16px;
  }

  .plans__scope-grid {
    grid-template-columns: 1fr;
  }

  .plans__trial-banner {
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
  }

  .plans__care-cta {
    padding: 40px 24px;
  }
}

/* Mobile — 480px */
@media (max-width: 480px) {
  .plans__grid {
    grid-template-columns: 1fr;
  }

  .plans__transparency {
    padding: 24px 20px;
  }

  .plans__transparency-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .pricing__carousel-header {
    margin-bottom: 20px;
  }

  .pricing__footnote-main,
  .pricing__footnote-detail {
    text-align: left;
  }

  .plans__care-actions {
    flex-direction: column;
    width: 100%;
  }

  .plans__care-actions .btn {
    width: 100%;
  }
}

/* ==============================
   REDUCED MOTION
============================== */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  .reveal-fade-up,
  .reveal-fade-left,
  .reveal-fade-right,
  .reveal-scale {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* ============================================
   UTILITÁRIOS DE VISIBILIDADE POR DISPOSITIVO
   ============================================ */
/* Ocultar em Dispositivos Móveis (≤ 768px) */
@media (max-width: 768px) {
  .hide-on-mobile,
  .mobile-hidden {
    display: none !important;
  }
}

/* Ocultar em Computadores e Laptops (≥ 769px) */
@media (min-width: 769px) {
  .hide-on-desktop,
  .desktop-hidden {
    display: none !important;
  }
}

/* Ocultar em Tablets (769px a 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
  .hide-on-tablet,
  .tablet-hidden {
    display: none !important;
  }
}

/* ============================================
   PROTEÇÃO GLOBAL DE OVERFLOW E ALINHAMENTO MOBILE
   ============================================ */
@media (max-width: 768px) {
  html, body {
    overflow-x: hidden !important;
    width: 100% !important;
  }

  .container {
    padding-left: 18px !important;
    padding-right: 18px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  h1, h2, h3, h4, .section-headline, .hero__headline, .portfolio__headline {
    word-break: break-word;
    overflow-wrap: break-word;
  }

  img, video, iframe, svg {
    max-width: 100%;
  }

  /* Garantir que todos os containers de carrossel respeitem a largura da tela */
  .portfolio__carousel-wrapper,
  .testimonials__carousel-wrapper,
  .services__carousel-viewport,
  .pricing__carousel-viewport {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  /* ============================================
     CENTRALIZAÇÃO COMPLETA DE TÍTULOS DE SEÇÃO NO MOBILE
     ============================================ */
  .section-label,
  .hero__label,
  .about__label,
  .services__label,
  .portfolio__label,
  .pricing__label,
  .plans__label,
  .differentials__label,
  .process__label,
  .testimonials__label,
  .leads__label {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .section-header,
  .about__header,
  .services__header,
  .portfolio__header,
  .pricing__header,
  .plans__header,
  .differentials__header,
  .process__header,
  .testimonials__header,
  .leads__header {
    text-align: center !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  h1, h2, h3, h4,
  .section-headline,
  .hero__headline,
  .about__headline,
  .services__headline,
  .portfolio__headline,
  .pricing__headline,
  .plans__headline,
  .differentials__headline,
  .process__headline,
  .testimonials__headline,
  .leads__headline,
  .cta-final__headline {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  .hero__sub,
  .about__sub,
  .services__sub,
  .portfolio__sub,
  .pricing__sub,
  .plans__sub,
  .differentials__sub,
  .process__sub,
  .testimonials__sub,
  .leads__sub,
  .cta-final__sub {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .section-headline br,
  .hero__headline br,
  .about__headline br,
  .services__headline br,
  .portfolio__headline br,
  .pricing__headline br,
  .plans__headline br,
  .differentials__headline br,
  .process__headline br,
  .testimonials__headline br,
  .leads__headline br,
  .cta-final__headline br,
  .hero__sub br,
  .about__sub br,
  .services__sub br,
  .portfolio__sub br,
  .pricing__sub br,
  .plans__sub br,
  .leads__sub br {
    display: none !important;
  }
}
