/* ==========================================================================
       DESIGN SYSTEM & CSS RESET
       ========================================================================== */
    *,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      scroll-behavior: smooth;
      width: 100%;
      max-width: 100%;
      overflow-x: clip;
    }

    :root {
      /* Paleta de Cores LP Sinaida Menezes */
      --cor-fundo-neutro: #EFEFEF;
      --cor-superficie: #FFFFFF;
      --cor-primaria-verde: #30513B;
      --cor-destaque-dourado: #CBAA4C;
      --cor-apoio-dourado-claro: #CBB36D;

      /* Brand Color Palette - Identidade Visual Sinaida Menezes */
      --brown-950: #30513B;
      --brown-900: #30513B;
      --brown-850: #30513B;
      --brown-800: #30513B;
      --brown-700: #30513B;
      --brown-600: #30513B;
      --gold-glow: rgba(203, 170, 76, 0.45);
      --gold-light: #CBB36D;

      /* Mapeamento semântico */
      --navy-950: #30513B;
      --navy-900: #30513B;
      --navy-850: #30513B;
      --navy-800: #30513B;
      --navy-700: #30513B;
      --navy-600: #30513B;
      --teal-glow: rgba(203, 170, 76, 0.45);
      --teal-light: #CBB36D;

      /* Light Theme / Cards Palette */
      --bg-light: #EFEFEF;
      --bg-secondary: #EFEFEF;
      --card-white: #FFFFFF;
      --card-cream: #EFEFEF;
      --card-border: #EFEFEF;
      --pill-bg: #EFEFEF;
      --pill-border: #EFEFEF;
      --pill-text: #30513B;
      --text-dark: #30513B;
      --text-subtle: #30513B;

      /* Golden Accents */
      --gold-100: #EFEFEF;
      --gold-200: #EFEFEF;
      --gold-300: #CBB36D;
      --gold-400: #CBB36D;
      --gold-500: #CBAA4C;
      --gold-600: #CBAA4C;
      --gold-700: #CBAA4C;
      --terracotta: #CBAA4C;

      /* Neutrals & Text */
      --cream-100: #EFEFEF;
      --cream-200: #EFEFEF;
      --cream-300: #EFEFEF;
      --text-white: #FFFFFF;
      --text-soft: #EFEFEF;
      --text-muted: #EFEFEF;
      --text-cream: #EFEFEF;

      /* Typography */
      --font-heading: 'Outfit', 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
      --font-body: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
      --font-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;

      /* Elevation & Transitions */
      --shadow-gold: 0 12px 30px -4px rgba(203, 170, 76, 0.42), 0 6px 16px -2px rgba(203, 170, 76, 0.28);
      --shadow-gold-hover: 0 16px 36px -2px rgba(203, 170, 76, 0.55), 0 8px 20px -2px rgba(203, 170, 76, 0.35);
      --shadow-card: 0 18px 45px -8px rgba(48, 81, 59, 0.08), 0 8px 20px -4px rgba(48, 81, 59, 0.04);
      --transition-smooth: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    }

    body {
      font-family: var(--font-body);
      background-color: var(--navy-950);
      color: var(--text-soft);
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      overflow-x: clip;
      min-height: 100vh;
    }

    /* Top Accent Line */
    .top-gold-bar {
      height: 4px;
      width: 100%;
      background: linear-gradient(90deg, #CBAA4C 0%, #CBB36D 35%, #CBAA4C 65%, #CBAA4C 100%);
      position: relative;
      z-index: 50;
    }

    /* ==========================================================================
       SECTION 01: HERO SECTION
       ========================================================================== */
    .hero-section {
      position: relative;
      background: linear-gradient(135deg, #30513B 0%, #30513B 40%, #30513B 100%);
      min-height: 94vh;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      overflow: visible;
      padding-bottom: 0;
    }

    /* Ambient Background Light & Glows */
    .hero-bg-effects {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
      overflow: hidden;
    }

    /* Radial gold-warm highlight behind professional */
    .glow-radial-teal {
      position: absolute;
      top: 10%;
      right: 8%;
      width: 650px;
      height: 650px;
      background: radial-gradient(circle, rgba(203, 170, 76, 0.4) 0%, rgba(48, 81, 59, 0.25) 45%, rgba(48, 81, 59, 0) 70%);
      filter: blur(40px);
      border-radius: 50%;
      transform: translate3d(0, 0, 0);
    }

    /* Warm golden spotlight beam from top right */
    .light-beam-warm {
      position: absolute;
      top: -10%;
      right: 5%;
      width: 450px;
      height: 800px;
      background: linear-gradient(150deg, rgba(203, 179, 109, 0.18) 0%, rgba(203, 170, 76, 0.08) 40%, rgba(48, 81, 59, 0) 75%);
      transform: rotate(-15deg);
      filter: blur(35px);
    }

    /* Soft ambient vignette left side */
    .glow-radial-left {
      position: absolute;
      top: 25%;
      left: -10%;
      width: 500px;
      height: 500px;
      background: radial-gradient(circle, rgba(48, 81, 59, 0.65) 0%, rgba(48, 81, 59, 0) 70%);
      filter: blur(50px);
    }

    /* Hero Background Logo Watermark */
    .bg-hero-logo-watermark {
      position: absolute;
      top: 57.5%;
      right: 7%;
      transform: translateY(-50%);
      width: clamp(520px, 42vw, 660px);
      height: auto;
      object-fit: contain;
      opacity: 0.18;
      pointer-events: none;
      z-index: 2;
      filter: drop-shadow(0 0 50px rgba(203, 170, 76, 0.45));
      mix-blend-mode: screen;
      user-select: none;
    }

    /* Clinic Texture Overlay */
    .bg-texture-overlay {
      position: absolute;
      inset: 0;
      background-image: radial-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px);
      background-size: 32px 32px;
      opacity: 0.35;
    }

    /* Hero Container */
    .hero-container {
      position: relative;
      z-index: 10;
      width: 100%;
      max-width: 1280px;
      margin: 0 auto;
      padding: clamp(40px, 6vh, 64px) 32px 0;
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    /* Header Nav Area */
    .hero-header {
      padding-top: 0;
      padding-bottom: 0;
      margin-bottom: 30px;
      display: flex;
      align-items: center;
      justify-content: flex-start;
    }

    /* Logo Branding */
    .brand-logo {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      text-decoration: none;
      transition: transform 0.3s ease;
    }

    .brand-logo:hover {
      transform: translateY(-1px);
    }

    .logo-icon-wrapper {
      width: 46px;
      height: 46px;
      display: flex;
      align-items: center;
      justify-content: center;
      filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.3));
    }

    .logo-icon-img,
    .logo-icon-svg {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }

    .brand-text {
      display: flex;
      flex-direction: column;
      line-height: 1.08;
      letter-spacing: 0.12em;
    }

    .brand-name {
      font-family: var(--font-heading);
      font-size: 19px;
      font-weight: 700;
      color: #FFFFFF;
      text-transform: uppercase;
    }

    .brand-profession {
      font-family: var(--font-heading);
      font-size: 11px;
      font-weight: 600;
      color: var(--gold-300);
      letter-spacing: 0.22em;
      text-transform: uppercase;
      margin-top: 3px;
    }

    /* Hero Grid */
    .hero-grid {
      display: grid;
      grid-template-columns: minmax(590px, 1.22fr) 1fr;
      align-items: flex-end;
      gap: 20px;
      margin-top: auto;
      margin-bottom: 0;
      padding: 0;
      position: relative;
    }

    .hero-content {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      max-width: 660px;
      width: 100%;
      z-index: 12;
      padding-bottom: 44px;
    }

    /* CRP Badge */
    .crp-badge {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 5px 14px;
      background: rgba(48, 81, 59, 0.75);
      border: 1px solid rgba(203, 170, 76, 0.4);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border-radius: 6px;
      color: #EFEFEF;
      font-size: 12px;
      font-weight: 600;
      letter-spacing: 0.07em;
      text-transform: uppercase;
      margin-bottom: 18px;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    }

    .crp-badge .dot {
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background-color: #CBAA4C;
      box-shadow: 0 0 6px #CBAA4C;
    }

    /* Hero Title H1 */
    .hero-title {
      font-family: var(--font-heading);
      font-size: clamp(30px, 2.9vw, 46px);
      font-weight: 700;
      line-height: 1.2;
      color: var(--text-white);
      margin-bottom: 8px;
      letter-spacing: -0.015em;
    }

    .hero-title .title-name {
      display: block;
      font-weight: 700;
      color: #FFFFFF;
      white-space: nowrap;
    }

    .hero-title .title-accent {
      display: block;
      margin-top: 4px;
      font-weight: 700;
      white-space: nowrap;
      background: linear-gradient(135deg, #EFEFEF 0%, #CBB36D 45%, #CBAA4C 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      filter: drop-shadow(0 2px 8px rgba(203, 170, 76, 0.2));
    }

    .hero-title-mobile {
      display: none;
    }

    /* Hero Subtitle */
    .hero-description {
      font-size: clamp(15.5px, 1.15vw, 17.5px);
      line-height: 1.62;
      color: rgba(239, 239, 239, 0.9);
      margin-top: 16px;
      margin-bottom: 32px;
      font-weight: 400;
      max-width: 530px;
    }

    /* CTA Actions */
    .hero-actions {
      display: flex;
      flex-direction: column;
      gap: 16px;
      width: 100%;
      max-width: 440px;
    }

    .btn-cta-gold {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 16px 36px;
      background: linear-gradient(135deg, #FFFFFF 0%, #EFEFEF 100%);
      color: #30513B;
      font-family: var(--font-heading);
      font-size: 16px;
      font-weight: 800;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      text-decoration: none;
      border-radius: 12px;
      border: 2px solid #CBAA4C;
      box-shadow: var(--shadow-gold);
      position: relative;
      overflow: hidden;
      cursor: pointer;
      transition: var(--transition-smooth);
    }

    .btn-cta-gold::before {
      content: '';
      position: absolute;
      top: -50%;
      left: -60%;
      width: 50%;
      height: 200%;
      background: linear-gradient(60deg,
          rgba(255, 255, 255, 0) 0%,
          rgba(255, 255, 255, 0.45) 50%,
          rgba(255, 255, 255, 0) 100%);
      transform: rotate(25deg);
      transition: all 0.75s ease;
    }

    .btn-cta-gold:hover {
      transform: translateY(-3px) scale(1.01);
      box-shadow: var(--shadow-gold-hover);
      background: linear-gradient(135deg, #EFEFEF 0%, #FFFFFF 100%);
    }

    .btn-cta-gold:hover::before {
      left: 130%;
    }

    .btn-cta-gold:active {
      transform: translateY(-1px) scale(0.99);
      box-shadow: 0 6px 18px rgba(203, 170, 76, 0.4);
    }

    @media (min-width: 881px) {
      .hero-actions {
        max-width: 380px;
      }

      .hero-actions > .btn-cta-gold {
        gap: 10px;
        padding: 13px 24px;
        font-size: 14px;
      }
    }

    .btn-icon-whatsapp {
      width: 22px;
      height: 22px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      overflow: visible;
      filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
      transition: transform 0.3s ease;
    }

    .btn-icon-whatsapp svg {
      width: 100%;
      height: 100%;
      display: block;
      overflow: visible;
      flex-shrink: 0;
    }

    .btn-cta-gold:hover .btn-icon-whatsapp {
      transform: scale(1.12) rotate(4deg);
    }

    /* Trust Micro-Badges */
    .hero-trust-bar {
      display: flex;
      align-items: flex-start;
      gap: 20px;
      margin-top: 6px;
      width: 100%;
    }

    .trust-item {
      display: inline-flex;
      align-items: flex-start;
      gap: 8px;
      font-size: 13px;
      line-height: 1.35;
      color: rgba(239, 239, 239, 0.88);
      font-weight: 500;
      flex: 1;
    }

    .trust-item-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      width: 14px;
      height: 14px;
      margin-top: 2px;
    }

    .trust-item-icon svg,
    .trust-item svg {
      color: var(--gold-400);
      width: 14px;
      height: 14px;
      flex-shrink: 0;
      display: block;
    }

    .trust-item-text {
      display: inline-block;
      line-height: 1.35;
    }

    /* Photo Stage */
    .hero-image-wrapper {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: flex-end;
      height: 100%;
      min-height: 580px;
      z-index: 10;
      margin-bottom: -46px;
      padding-bottom: 0;
      margin-left: 0;
    }

    .photo-aura-glow {
      position: absolute;
      bottom: 0;
      width: 600px;
      height: 580px;
      background: radial-gradient(ellipse at center, rgba(203, 170, 76, 0.45) 0%, rgba(48, 81, 59, 0.25) 50%, transparent 75%);
      filter: blur(40px);
      z-index: 1;
      pointer-events: none;
    }

    .photo-gleis {
      position: relative;
      z-index: 3;
      max-width: 100%;
      width: clamp(520px, 42vw, 630px);
      height: auto;
      max-height: 640px;
      object-fit: contain;
      object-position: bottom center;
      filter: drop-shadow(0 22px 40px rgba(48, 81, 59, 0.8));
      display: block;
      margin: 0 auto;
      vertical-align: bottom;
      transform: translateY(18px);
    }

    /* Hero to Section Transition Button Indicator */
    .hero-bottom-transition {
      position: absolute;
      bottom: -25px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 100;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 0;
      pointer-events: auto;
    }

    .scroll-down-indicator {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background: #FFFFFF;
      border: 1.5px solid var(--gold-500);
      color: var(--gold-500);
      text-decoration: none;
      box-shadow: 0 8px 20px rgba(48, 81, 59, 0.18), 0 0 14px rgba(203, 170, 76, 0.25);
      transition: var(--transition-smooth);
      cursor: pointer;
    }

    .scroll-down-indicator:hover {
      transform: translateY(3px);
      background: var(--gold-500);
      color: #FFFFFF;
      box-shadow: 0 10px 24px rgba(203, 170, 76, 0.45);
    }

    .scroll-down-indicator svg {
      width: 20px;
      height: 20px;
      animation: arrowBounce 2s infinite;
    }

    @keyframes arrowBounce {

      0%,
      20%,
      50%,
      80%,
      100% {
        transform: translateY(0);
      }

      40% {
        transform: translateY(4px);
      }

      60% {
        transform: translateY(2px);
      }
    }

    /* ==========================================================================
       SECTION 02: SYMPTOMS & PAIN POINTS CARD (CORRESPONDING TO 02.PNG)
       ========================================================================== */
    .symptoms-section {
      position: relative;
      background-color: var(--bg-light);
      background-image:
        linear-gradient(to right, rgba(48, 81, 59, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(48, 81, 59, 0.04) 1px, transparent 1px);
      background-size: 36px 36px;
      padding: 70px 24px 80px 24px;
      z-index: 20;
    }

    .symptoms-card-wrapper {
      max-width: 1180px;
      margin: 0 auto;
      background: var(--card-white);
      border-radius: 32px;
      box-shadow: var(--shadow-card);
      border: 1px solid var(--card-border);
      padding: 48px;
      position: relative;
      overflow: hidden;
    }

    .symptoms-card-wrapper::before {
      content: '';
      position: absolute;
      top: -120px;
      right: -120px;
      width: 400px;
      height: 400px;
      border-radius: 50%;
      border: 40px solid rgba(203, 170, 76, 0.08);
      pointer-events: none;
    }

    .symptoms-grid {
      display: grid;
      grid-template-columns: 1fr 1.18fr;
      gap: 44px;
      align-items: center;
      position: relative;
      z-index: 2;
    }

    .symptoms-image-box {
      position: relative;
      border-radius: 24px;
      overflow: visible;
      box-shadow: 0 14px 35px rgba(48, 81, 59, 0.12);
    }

    .symptoms-img {
      width: 100%;
      height: 100%;
      max-height: 430px;
      object-fit: cover;
      border-radius: 24px;
      display: block;
    }

    .symptoms-stamp-seal {
      position: absolute;
      bottom: -18px;
      right: -20px;
      width: 90px;
      height: 90px;
      border-radius: 50%;
      background: rgba(239, 239, 239, 0.7);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 10px 25px rgba(48, 81, 59, 0.15);
      z-index: 5;
      animation: floatBadge 5s ease-in-out infinite alternate;
    }

    .symptoms-stamp-inner {
      width: 68px;
      height: 68px;
      border-radius: 50%;
      background: linear-gradient(145deg, #30513B 0%, #30513B 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1.5px solid rgba(255, 255, 255, 0.25);
    }

    .stamp-icon-img,
    .stamp-icon-svg {
      width: 40px;
      height: 40px;
      object-fit: contain;
      filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.3));
    }

    @keyframes floatBadge {
      0% {
        transform: translateY(0) scale(1);
      }

      100% {
        transform: translateY(-4px) scale(1.02);
      }
    }

    .symptoms-content {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .symptoms-heading {
      font-family: var(--font-heading);
      font-size: clamp(26px, 2.5vw, 35px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.25;
      letter-spacing: -0.015em;
      margin-bottom: 26px;
    }

    .symptoms-heading .highlight-gold,
    .title-highlight-gold,
    .faq-accent,
    .sessions-accent,
    .symptoms-heading .highlight-gold,
    .therapy-benefits-title .title-highlight-gold,
    .reviews-section-title .highlight-gold,
    .tcc-title .highlight-gold,
    .sessions-title .sessions-accent,
    .faq-title .faq-accent {
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-weight: 700;
      display: inline-block;
    }

    .symptoms-pills-list {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      margin-bottom: 12px;
    }

    .symptom-pill {
      display: flex;
      align-items: center;
      gap: 12px;
      background: var(--pill-bg);
      border: 1px solid var(--pill-border);
      border-radius: 10px;
      padding: 13px 18px;
      color: var(--pill-text);
      font-weight: 600;
      font-size: 15px;
      transition: var(--transition-smooth);
    }

    .symptom-pill:hover {
      background: #EFEFEF;
      border-color: #CBAA4C;
      transform: translateY(-1px);
    }

    .symptom-pill.full-width {
      grid-column: 1 / -1;
    }

    .symptom-icon {
      width: 24px;
      height: 24px;
      border-radius: 50%;
      background-color: var(--brown-800);
      color: #FFFFFF;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 12.5px;
      font-weight: 800;
      flex-shrink: 0;
      box-shadow: 0 2px 6px rgba(48, 81, 59, 0.25);
    }

    .symptoms-disclaimer {
      font-size: 14.5px;
      color: var(--text-subtle);
      margin-top: 14px;
      line-height: 1.5;
    }

    .symptoms-disclaimer strong {
      color: var(--text-dark);
      font-weight: 700;
    }

    .symptoms-callout-banner {
      margin-top: 38px;
      background: linear-gradient(135deg, #30513B 0%, #30513B 50%, #30513B 100%);
      border-radius: 50px;
      padding: 14px 18px 14px 22px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 22px;
      box-shadow: 0 12px 30px rgba(48, 81, 59, 0.25);
      border: 1px solid rgba(255, 255, 255, 0.12);
      position: relative;
      z-index: 2;
    }

    .callout-left {
      display: flex;
      align-items: center;
      gap: 16px;
      flex: 1;
    }

    .callout-icon-circle {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: #FFFFFF;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
      color: var(--gold-500);
    }

    .callout-text {
      color: #FFFFFF;
      font-size: 14px;
      line-height: 1.45;
      font-weight: 400;
    }

    .callout-text strong {
      font-weight: 700;
      color: #FFFFFF;
    }

    .btn-agendar-agora {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
      background: #FFFFFF;
      color: var(--brown-800);
      font-family: var(--font-heading);
      font-size: 13.5px;
      font-weight: 800;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      text-decoration: none;
      padding: 12px 24px;
      border-radius: 50px;
      white-space: nowrap;
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
      transition: var(--transition-smooth);
      flex-shrink: 0;
      position: relative;
      overflow: hidden;
    }

    .btn-agendar-agora::before {
      content: '';
      position: absolute;
      top: -50%;
      left: -60%;
      width: 50%;
      height: 200%;
      background: linear-gradient(60deg,
          rgba(255, 255, 255, 0) 0%,
          rgba(255, 255, 255, 0.5) 50%,
          rgba(255, 255, 255, 0) 100%);
      transform: rotate(25deg);
      transition: all 0.75s ease;
      pointer-events: none;
    }

    .btn-agendar-agora:hover::before {
      left: 130%;
    }

    .btn-agendar-agora:hover {
      background: #EFEFEF;
      transform: translateY(-2px);
      box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25);
      color: var(--brown-950);
    }

    .btn-agendar-agora .wa-icon-pill {
      width: 26px;
      height: 26px;
      border-radius: 50%;
      background: var(--brown-800);
      color: #FFFFFF;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      overflow: visible;
      padding: 5px;
      box-sizing: border-box;
      transition: transform 0.3s ease, background-color 0.3s ease;
      flex-shrink: 0;
    }

    .btn-agendar-agora .wa-icon-pill svg {
      width: 100%;
      height: 100%;
      display: block;
      overflow: visible;
      flex-shrink: 0;
    }

    .btn-agendar-agora:hover .wa-icon-pill {
      transform: scale(1.1);
      background: #25d366;
    }

    /* ==========================================================================
       SECTION 03: BENEFITS & HOW THERAPY HELPS (CORRESPONDING TO 13.PNG)
       ========================================================================== */
    .benefits-section {
      position: relative;
      background-color: var(--bg-secondary);
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .benefits-container {
      max-width: 1180px;
      margin: 0 auto;
    }

    .benefits-grid {
      display: grid;
      grid-template-columns: 0.9fr 1.15fr;
      gap: 60px;
      align-items: center;
    }

    /* Left Column: Portrait Card with Curved Arch and GT Seal */
    .benefits-image-column {
      position: relative;
      display: flex;
      justify-content: center;
    }

    .benefits-image-card {
      position: relative;
      width: 100%;
      max-width: 440px;
    }

    /* Arched Background Shadow / Accent Layer */
    .benefits-image-card::before {
      content: '';
      position: absolute;
      inset: -8px -8px 8px 8px;
      background: linear-gradient(145deg, rgba(203, 170, 76, 0.35) 0%, rgba(48, 81, 59, 0.12) 100%);
      border-radius: 220px 220px 28px 28px;
      z-index: 1;
      transform: rotate(-2deg);
    }

    .benefits-portrait-img {
      position: relative;
      z-index: 2;
      width: 100%;
      height: auto;
      max-height: 560px;
      object-fit: cover;
      border-radius: 220px 220px 28px 28px;
      box-shadow: 0 20px 45px rgba(48, 81, 59, 0.14);
      border: 1px solid var(--card-border);
      display: block;
    }

    /* Top Left Monogram Circular Seal Badge */
    .benefits-seal-badge {
      position: absolute;
      top: -18px;
      left: -18px;
      width: 112px;
      height: 112px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.96);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      border: 1.5px solid var(--gold-400);
      box-shadow: 0 10px 28px rgba(48, 81, 59, 0.14);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 10;
    }

    .seal-svg-ring {
      position: absolute;
      width: 100%;
      height: 100%;
      animation: spinSeal 30s linear infinite;
    }

    @keyframes spinSeal {
      from {
        transform: rotate(0deg);
      }

      to {
        transform: rotate(360deg);
      }
    }

    .seal-monogram-text {
      position: relative;
      z-index: 2;
      font-family: var(--font-heading);
      font-size: 22px;
      font-weight: 800;
      color: var(--brown-800);
      letter-spacing: 0.05em;
    }

    /* Right Column: Content, List, Disclaimer & CTA */
    .benefits-content-column {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .benefits-heading {
      font-family: var(--font-heading);
      font-size: clamp(30px, 2.9vw, 42px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.2;
      letter-spacing: -0.015em;
      margin-bottom: 28px;
    }

    .benefits-list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 18px;
      margin-bottom: 26px;
      width: 100%;
    }

    .benefit-item {
      display: flex;
      align-items: flex-start;
      gap: 16px;
    }

    .benefit-icon-box {
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: rgba(48, 81, 59, 0.08);
      border: 1.5px solid rgba(48, 81, 59, 0.25);
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      margin-top: 2px;
      box-shadow: 0 2px 8px rgba(48, 81, 59, 0.06);
    }

    .benefit-icon-box svg {
      width: 18px;
      height: 18px;
    }

    .benefit-item-content {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }

    .benefit-item-title {
      font-family: var(--font-heading);
      font-size: 17px;
      font-weight: 700;
      color: #30513B;
      line-height: 1.3;
      margin: 0;
    }

    .benefit-item-desc {
      font-size: 14.5px;
      line-height: 1.5;
      color: #30513B;
      font-weight: 400;
      margin: 0;
    }

    .benefit-text {
      font-size: 15.5px;
      line-height: 1.55;
      color: var(--text-subtle);
      font-weight: 400;
    }

    .benefit-text strong {
      color: var(--text-dark);
      font-weight: 700;
    }

    /* Info / Disclaimer Box */
    .benefits-disclaimer-box {
      width: 100%;
      background: #FFFFFF;
      border: 1px solid var(--card-border);
      border-radius: 12px;
      padding: 14px 20px;
      font-size: 13.5px;
      color: #30513B;
      line-height: 1.45;
      margin-bottom: 28px;
    }

    .benefits-disclaimer-box p {
      color: #30513B;
      font-weight: 500;
      margin: 0;
    }

    .benefits-cta-box {
      width: 100%;
    }

    .btn-benefits-cta {
      display: inline-flex;
      width: 100%;
      max-width: 440px;
      padding: 16px 28px;
      font-size: 15px;
      font-weight: 800;
    }

    /* ==========================================================================
       SECTION 04: HOW IT WORKS / COMO FUNCIONA (CORRESPONDING TO como funciona a sessão.png)
       ========================================================================== */
    .process-section {
      position: relative;
      background-color: var(--bg-light);
      background-image:
        linear-gradient(to right, rgba(48, 81, 59, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(48, 81, 59, 0.04) 1px, transparent 1px);
      background-size: 36px 36px;
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .process-container {
      max-width: 1180px;
      margin: 0 auto;
    }

    .process-header {
      text-align: center;
      max-width: 720px;
      margin: 0 auto 56px auto;
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .process-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 18px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      margin-bottom: 16px;
    }

    .process-heading {
      font-family: var(--font-heading);
      font-size: clamp(30px, 3vw, 42px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.2;
      letter-spacing: -0.015em;
      margin-bottom: 16px;
    }

    .process-description {
      font-size: 16px;
      line-height: 1.6;
      color: var(--text-subtle);
      font-weight: 400;
    }

    /* 3-Step Cards Container & Dotted Connector */
    .process-steps-wrapper {
      position: relative;
      margin-bottom: 50px;
    }

    .process-connection-line {
      position: absolute;
      top: 110px;
      left: 12%;
      right: 12%;
      height: 2px;
      border-top: 2px dashed rgba(203, 170, 76, 0.55);
      z-index: 1;
      pointer-events: none;
    }

    .process-cards-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 32px;
      position: relative;
      z-index: 2;
    }

    .process-card {
      background: var(--card-white);
      border-radius: 24px;
      border: 1px solid var(--card-border);
      box-shadow: 0 12px 32px rgba(48, 81, 59, 0.06);
      padding: 24px;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      transition: var(--transition-smooth);
      position: relative;
    }

    .process-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 18px 40px rgba(48, 81, 59, 0.12);
      border-color: rgba(203, 170, 76, 0.55);
    }

    .process-card-image-box {
      position: relative;
      width: 100%;
      height: 200px;
      border-radius: 18px;
      margin-bottom: 24px;
    }

    .process-card-img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 18px;
      display: block;
    }

    /* Number Badge 01, 02, 03 */
    .process-step-number {
      position: absolute;
      top: -12px;
      left: -10px;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: linear-gradient(135deg, #30513B 0%, #30513B 100%);
      color: #FFFFFF;
      font-family: var(--font-heading);
      font-size: 14px;
      font-weight: 800;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 12px rgba(48, 81, 59, 0.25);
      border: 2px solid #FFFFFF;
      z-index: 5;
    }

    /* Floating Circle Icon */
    .process-card-icon-seal {
      position: absolute;
      bottom: -16px;
      right: 14px;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background: #FFFFFF;
      color: #30513B;
      box-shadow: 0 6px 18px rgba(48, 81, 59, 0.12), 0 0 10px rgba(203, 170, 76, 0.25);
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1.5px solid rgba(203, 170, 76, 0.5);
      z-index: 5;
      overflow: visible;
      padding: 0;
      box-sizing: border-box;
      transition: transform 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
    }

    .process-card:hover .process-card-icon-seal {
      transform: scale(1.1);
      color: var(--gold-500);
      border-color: var(--gold-500);
      box-shadow: 0 8px 22px rgba(203, 170, 76, 0.4);
    }

    .process-card-icon-seal svg {
      width: 24px;
      height: 24px;
      display: block;
      overflow: visible;
      flex-shrink: 0;
    }

    .process-card-title {
      font-family: var(--font-heading);
      font-size: 18px;
      font-weight: 700;
      color: var(--text-dark);
      margin-bottom: 10px;
      line-height: 1.3;
    }

    .process-card-text {
      font-size: 14.5px;
      line-height: 1.55;
      color: var(--text-subtle);
      font-weight: 400;
    }

    /* Bottom 4 Differentiators Bar */
    .process-differentiators-bar {
      background: var(--card-white);
      border-radius: 20px;
      border: 1px solid var(--card-border);
      box-shadow: 0 10px 30px rgba(48, 81, 59, 0.05);
      padding: 26px 36px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 24px;
      align-items: center;
    }

    .diff-item {
      display: flex;
      align-items: center;
      gap: 14px;
      position: relative;
    }

    .diff-item:not(:last-child)::after {
      content: '';
      position: absolute;
      right: -12px;
      top: 15%;
      height: 70%;
      width: 1px;
      background: var(--card-border);
    }

    .diff-icon-circle {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.4);
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .diff-icon-circle svg {
      width: 22px;
      height: 22px;
    }

    .diff-text {
      display: flex;
      flex-direction: column;
    }

    .diff-title {
      font-family: var(--font-heading);
      font-size: 16px;
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.25;
    }

    .diff-label {
      font-size: 12.5px;
      color: var(--text-subtle);
      line-height: 1.35;
      margin-top: 2px;
    }

    /* ==========================================================================
       SECTION 05: THERAPY BENEFITS (CORRESPONDING TO beneficios.png)
       ========================================================================== */
    .therapy-benefits-section {
      position: relative;
      background-color: var(--bg-secondary);
      padding: 70px 24px 100px 24px;
      z-index: 20;
    }

    /* Top Central Transition Arrow */
    .benefits-top-arrow-wrapper {
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 30;
      display: flex;
      justify-content: center;
      align-items: center;
      pointer-events: none;
    }

    .benefits-top-chevron {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background: #FFFFFF;
      border: 1.5px solid var(--gold-500);
      color: var(--gold-500);
      box-shadow: 0 6px 20px rgba(48, 81, 59, 0.12), 0 0 12px rgba(203, 170, 76, 0.25);
      display: flex;
      align-items: center;
      justify-content: center;
      transition: var(--transition-smooth);
    }

    .benefits-top-chevron svg {
      width: 20px;
      height: 20px;
      stroke-width: 2.5;
    }

    .therapy-benefits-container {
      max-width: 1180px;
      margin: 0 auto;
    }

    .therapy-benefits-grid {
      display: grid;
      grid-template-columns: 0.9fr 1.15fr;
      gap: 60px;
      align-items: center;
    }

    .therapy-benefits-image-col {
      display: flex;
      justify-content: center;
      position: relative;
    }

    .therapy-benefits-img-frame {
      position: relative;
      width: 100%;
      max-width: 450px;
      border-radius: 28px;
      overflow: hidden;
      box-shadow: 0 20px 45px rgba(48, 81, 59, 0.12);
      border: 1px solid var(--card-border);
    }

    .therapy-benefits-img {
      width: 100%;
      height: auto;
      max-height: 580px;
      object-fit: cover;
      display: block;
    }

    .therapy-benefits-content-col {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .therapy-benefits-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 18px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .therapy-benefits-title {
      font-family: var(--font-heading);
      font-size: clamp(28px, 2.8vw, 40px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.22;
      letter-spacing: -0.015em;
      margin-bottom: 28px;
    }

    .therapy-benefits-title .title-highlight-gold {
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .therapy-benefits-items-list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 13px;
      width: 100%;
    }

    .therapy-benefit-row {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 7px 0;
      transition: transform 0.25s ease;
    }

    .therapy-benefit-row:hover {
      transform: translateX(4px);
    }

    .therapy-benefit-icon {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.4);
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .therapy-benefit-icon svg {
      width: 17px;
      height: 17px;
    }

    .therapy-benefit-label {
      font-size: 15.5px;
      line-height: 1.45;
      color: var(--text-subtle);
      font-weight: 500;
    }

    .therapy-benefit-row.extra-benefits .therapy-benefit-label {
      font-weight: 600;
      color: #30513B;
      font-style: italic;
    }

    /* ==========================================================================
       SECTION 06: TCC & THEMES WORKED (CORRESPONDING TO tratamentos.png)
       ========================================================================== */
    .tcc-themes-section {
      position: relative;
      background-color: var(--bg-light);
      background-image:
        linear-gradient(to right, rgba(48, 81, 59, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(48, 81, 59, 0.04) 1px, transparent 1px);
      background-size: 36px 36px;
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .tcc-themes-container {
      max-width: 1080px;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
    }

    .tcc-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 20px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .tcc-title {
      font-family: var(--font-heading);
      font-size: clamp(28px, 3.2vw, 42px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.25;
      letter-spacing: -0.015em;
      max-width: 860px;
      margin-bottom: 44px;
    }

    .tcc-title .tcc-accent {
      font-style: italic;
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    /* Staggered Flex / Grid of Theme Pills */
    .tcc-pills-wrapper {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 14px 16px;
      max-width: 980px;
      margin-bottom: 48px;
    }

    .tcc-pill {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      background: #FFFFFF;
      border: 1.5px solid var(--card-border);
      border-radius: 50px;
      padding: 12px 24px;
      color: var(--text-dark);
      font-size: 15px;
      font-weight: 600;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
      transition: var(--transition-smooth);
      cursor: default;
    }

    .tcc-pill:hover {
      transform: translateY(-3px);
      border-color: var(--gold-500);
      box-shadow: 0 8px 22px rgba(203, 170, 76, 0.25);
      background: #FFFFFF;
      color: var(--brown-950);
    }

    .tcc-pill-icon {
      color: var(--gold-500);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .tcc-pill-icon svg {
      width: 14px;
      height: 14px;
    }

    /* CTA Area */
    .tcc-cta-wrapper {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 14px;
    }

    .btn-tcc-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 16px 38px;
      min-width: 320px;
      font-size: 15px;
      font-weight: 800;
    }

    .tcc-support-text {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-size: 13.5px;
      color: var(--text-subtle);
      font-weight: 500;
    }

    .tcc-support-text .online-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background-color: #30513B;
      box-shadow: 0 0 8px rgba(48, 81, 59, 0.6);
    }

    /* ==========================================================================
       SECTION 07: TESTIMONIALS / AVALIAÇÕES (CORRESPONDING TO 07.PNG)
       ========================================================================== */
    .testimonials-section {
      position: relative;
      background-color: var(--bg-secondary);
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .testimonials-container {
      max-width: 1200px;
      margin: 0 auto;
    }

    .testimonials-header {
      text-align: center;
      margin-bottom: 48px;
    }

    .testimonials-title {
      font-family: var(--font-heading);
      font-size: clamp(30px, 3.2vw, 44px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.2;
      letter-spacing: -0.015em;
    }

    .testimonials-title .testimonials-accent {
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    /* Main Big Floating Reviews Block */
    .reviews-main-card {
      background: #FFFFFF;
      border: 1px solid var(--card-border);
      border-radius: 28px;
      box-shadow: 0 16px 45px rgba(48, 81, 59, 0.07);
      padding: 40px;
      position: relative;
      display: grid;
      grid-template-columns: 240px 1fr;
      gap: 36px;
      align-items: center;
    }

    /* Left: Summary Card */
    .reviews-summary-card {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding-right: 32px;
      border-right: 1px solid var(--card-border);
      height: 100%;
      justify-content: center;
    }

    .summary-rating-label {
      font-family: var(--font-heading);
      font-size: 20px;
      font-weight: 800;
      color: var(--text-dark);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      margin-bottom: 10px;
    }

    .summary-stars-row {
      display: flex;
      gap: 4px;
      color: #FBBC05;
      margin-bottom: 10px;
    }

    .summary-stars-row svg {
      width: 22px;
      height: 22px;
      fill: #FBBC05;
    }

    .summary-count-text {
      font-size: 13.5px;
      font-weight: 500;
      color: var(--text-subtle);
      margin-bottom: 16px;
    }

    .google-badge-logo {
      display: inline-flex;
      align-items: center;
      gap: 4px;
    }

    /* Right: Testimonial Carousel Track with Nav Arrows */
    .reviews-carousel-wrapper {
      position: relative;
      display: flex;
      align-items: center;
      width: 100%;
    }

    .reviews-carousel-dots {
      display: none;
    }

    .reviews-carousel-track {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      width: 100%;
      overflow-x: auto;
      scroll-behavior: smooth;
      scrollbar-width: none;
      -ms-overflow-style: none;
      padding: 6px 4px;
    }

    .reviews-carousel-track::-webkit-scrollbar {
      display: none;
    }

    /* Individual Testimonial Card */
    .testimonial-card {
      background: var(--bg-light);
      border: 1px solid var(--card-border);
      border-radius: 18px;
      padding: 22px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      min-height: 270px;
      transition: var(--transition-smooth);
      position: relative;
    }

    .testimonial-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 30px rgba(48, 81, 59, 0.08);
      border-color: rgba(203, 170, 76, 0.55);
      background: #FFFFFF;
    }

    .testimonial-card-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 12px;
    }

    .testimonial-user-info {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .testimonial-avatar-img {
      width: 44px;
      height: 44px;
      border-radius: 50%;
      object-fit: cover;
      border: 1.5px solid rgba(203, 170, 76, 0.5);
      box-shadow: 0 2px 8px rgba(48, 81, 59, 0.08);
      flex-shrink: 0;
    }

    .testimonial-meta {
      display: flex;
      flex-direction: column;
    }

    .testimonial-author-name {
      font-family: var(--font-heading);
      font-size: 15px;
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.25;
    }

    .testimonial-date {
      font-size: 12px;
      color: var(--text-subtle);
      margin-top: 2px;
    }

    .google-icon-svg {
      width: 20px;
      height: 20px;
      flex-shrink: 0;
    }

    .testimonial-stars-bar {
      display: flex;
      align-items: center;
      gap: 6px;
      margin-bottom: 12px;
    }

    .card-stars {
      display: flex;
      gap: 2px;
      color: #FBBC05;
    }

    .card-stars svg {
      width: 15px;
      height: 15px;
      fill: #FBBC05;
    }

    

    .verified-badge-icon {
      width: 16px;
      height: 16px;
      color: #30513B;
      flex-shrink: 0;
    }

    .testimonial-quote-text {
      font-size: 13.8px;
      line-height: 1.55;
      color: var(--text-subtle);
      font-weight: 400;
    }

    /* Carousel Nav Arrows */
    .carousel-nav-btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background: #FFFFFF;
      border: 1px solid rgba(203, 170, 76, 0.5);
      color: var(--text-dark);
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.12);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      z-index: 10;
      transition: var(--transition-smooth);
    }

    .carousel-nav-btn:hover {
      background: var(--gold-500);
      color: #FFFFFF;
      border-color: var(--gold-500);
      transform: translateY(-50%) scale(1.08);
    }

    .carousel-nav-btn.prev-btn {
      left: -18px;
    }

    .carousel-nav-btn.next-btn {
      right: -18px;
    }

    /* ==========================================================================
       SECTION 08: ABOUT ME / SOBRE MIM (CORRESPONDING TO 08.PNG)
       ========================================================================== */
    .about-section {
      position: relative;
      background-color: var(--bg-light);
      background-image:
        linear-gradient(to right, rgba(48, 81, 59, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(48, 81, 59, 0.04) 1px, transparent 1px);
      background-size: 36px 36px;
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .about-container {
      max-width: 1180px;
      margin: 0 auto;
    }

    .about-grid {
      display: grid;
      grid-template-columns: 0.9fr 1.15fr;
      gap: 56px;
      align-items: center;
    }

    /* Left Side: Photo Frame with Overlay Badge */
    .about-image-col {
      display: flex;
      justify-content: center;
      position: relative;
    }

    .about-img-frame {
      position: relative;
      width: 100%;
      max-width: 460px;
      border-radius: 28px;
      overflow: hidden;
      box-shadow: 0 20px 45px rgba(48, 81, 59, 0.12);
      border: 1px solid var(--card-border);
    }

    .about-img {
      width: 100%;
      height: auto;
      max-height: 600px;
      object-fit: cover;
      display: block;
    }

    /* Glass Overlay Badge at Bottom of Photo (Matching 08.png) */
    .about-photo-badge {
      position: absolute;
      bottom: 20px;
      left: 20px;
      right: 20px;
      background: rgba(48, 81, 59, 0.85);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border: 1px solid rgba(255, 255, 255, 0.18);
      border-radius: 16px;
      padding: 12px 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
    }

    .about-badge-profile {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .about-badge-avatar {
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background: linear-gradient(135deg, #30513B, #30513B);
      border: 1.5px solid #CBAA4C;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 4px;
      box-sizing: border-box;
      flex-shrink: 0;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    }

    .about-avatar-img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }

    .about-badge-text {
      display: flex;
      flex-direction: column;
    }

    .about-badge-name {
      font-family: var(--font-heading);
      font-size: 14px;
      font-weight: 700;
      color: #FFFFFF;
      line-height: 1.2;
    }

    .about-badge-role {
      font-size: 11.5px;
      color: var(--gold-300);
      font-weight: 500;
    }

    .about-badge-seal {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.12);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold-300);
    }

    /* Right Side: Content Column */
    .about-content-col {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .about-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 18px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      margin-bottom: 16px;
    }

    .about-title {
      font-family: var(--font-heading);
      font-size: clamp(32px, 3.4vw, 44px);
      font-weight: 800;
      color: var(--text-dark);
      line-height: 1.15;
      letter-spacing: -0.015em;
      margin-bottom: 6px;
    }

    .about-crp-line {
      font-family: var(--font-heading);
      font-size: 14px;
      font-weight: 700;
      color: #30513B;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      margin-bottom: 24px;
    }

    .about-paragraphs {
      display: flex;
      flex-direction: column;
      gap: 16px;
      margin-bottom: 24px;
    }

    .about-text {
      font-size: 15.5px;
      line-height: 1.65;
      color: var(--text-subtle);
      font-weight: 400;
    }

    /* Quote Callout Box */
    .about-quote-box {
      background: #FFFFFF;
      border-left: 4px solid var(--gold-500);
      border-radius: 0 16px 16px 0;
      padding: 18px 24px;
      margin-bottom: 28px;
      box-shadow: 0 6px 20px rgba(48, 81, 59, 0.05);
      border-top: 1px solid var(--card-border);
      border-right: 1px solid var(--card-border);
      border-bottom: 1px solid var(--card-border);
    }

    .about-quote-text {
      font-size: 15.5px;
      font-style: italic;
      line-height: 1.6;
      color: var(--text-dark);
      font-weight: 600;
    }

    /* Three Info Blocks */
    .about-info-blocks {
      display: flex;
      flex-direction: column;
      gap: 12px;
      width: 100%;
    }

    .about-info-card {
      background: #FFFFFF;
      border: 1px solid rgba(203, 170, 76, 0.4);
      border-left: 4px solid var(--gold-500);
      border-radius: 12px;
      padding: 14px 20px;
      display: flex;
      align-items: center;
      gap: 14px;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.03);
      transition: var(--transition-smooth);
    }

    .about-info-card:hover {
      transform: translateX(4px);
      box-shadow: 0 6px 18px rgba(203, 170, 76, 0.25);
      border-color: var(--gold-500);
    }

    .info-card-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--gold-500);
      flex-shrink: 0;
      box-shadow: 0 0 8px rgba(203, 170, 76, 0.7);
    }

    .info-card-text {
      font-size: 14.5px;
      line-height: 1.5;
      color: var(--text-subtle);
    }

    .info-card-text strong {
      color: var(--text-dark);
      font-weight: 700;
    }

    /* ==========================================================================
       SECTION 08.5: THERAPEUTIC SESSIONS / SESSÕES TERAPÊUTICAS (SCROLL STACK)
       ========================================================================== */
    .therapeutic-sessions-section {
      position: relative;
      background-color: var(--bg-secondary);
      padding: 95px 24px 130px 24px;
      z-index: 20;
    }

    .sessions-container {
      max-width: 1100px;
      margin: 0 auto;
      width: 100%;
    }

    .sessions-header {
      text-align: center;
      margin-bottom: 56px;
    }

    .sessions-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 20px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-family: var(--font-heading);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      margin-bottom: 16px;
    }

    .sessions-title {
      font-family: var(--font-heading);
      font-size: clamp(30px, 3.2vw, 44px);
      font-weight: 800;
      color: var(--text-dark);
      letter-spacing: -0.015em;
      margin-bottom: 12px;
      line-height: 1.2;
    }

    .sessions-title .sessions-accent {
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .sessions-subtitle {
      font-size: 16px;
      line-height: 1.6;
      color: var(--text-subtle);
      max-width: 680px;
      margin: 0 auto;
      font-weight: 400;
    }

    /* Scroll Stack Wrapper */
    .sessions-stack-wrapper {
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
      max-width: 960px;
      margin: 0 auto;
      padding-bottom: 20px;
    }

    /* Individual Stacked Card */
    .session-stack-card {
      position: sticky;
      top: calc(90px + var(--card-index) * 26px);
      width: 100%;
      margin-bottom: 48px;
      border-radius: 24px;
      background-color: #FFFFFF;
      border: 1.5px solid var(--card-border);
      box-shadow: 0 14px 38px rgba(48, 81, 59, 0.08), 0 2px 8px rgba(48, 81, 59, 0.04);
      transform-origin: center top;
      transition: transform 0.2s cubic-bezier(0.2, 0, 0, 1), filter 0.2s ease, box-shadow 0.2s ease;
      will-change: transform, filter;
      z-index: calc(var(--card-index) + 1);
      overflow: hidden;
    }

    .session-card-inner {
      padding: 36px 40px 38px 40px;
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    /* Card Top Bar (Tab / Badge) */
    .session-card-top-bar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid var(--card-border);
      padding-bottom: 16px;
    }

    .session-card-number {
      font-family: var(--font-heading);
      font-size: 14px;
      font-weight: 800;
      color: #30513B;
      letter-spacing: 0.1em;
    }

    .session-card-tag {
      font-family: var(--font-heading);
      font-size: 12px;
      font-weight: 700;
      color: var(--text-subtle);
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

    /* Card Body Grid (2 Columns: Left info & CTA, Right Features) */
    .session-card-body-grid {
      display: grid;
      grid-template-columns: 1.05fr 1fr;
      gap: 36px;
      align-items: center;
    }

    .session-card-left {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .session-card-title {
      font-family: var(--font-heading);
      font-size: clamp(22px, 2.2vw, 26px);
      font-weight: 800;
      color: var(--text-dark);
      margin-bottom: 12px;
      line-height: 1.25;
    }

    .session-card-desc {
      font-family: var(--font-body);
      font-size: 15px;
      line-height: 1.62;
      color: var(--text-subtle);
      margin-bottom: 24px;
      font-weight: 400;
    }

    .session-card-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 13px 26px;
      background: var(--pill-bg);
      border: 1px solid var(--gold-400);
      border-radius: 50px;
      color: var(--brown-800);
      font-family: var(--font-heading);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      text-decoration: none;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
      transition: var(--transition-smooth);
    }

    .session-card-btn svg {
      transition: transform 0.25s ease;
      stroke: currentColor;
    }

    .session-card-btn:hover {
      background: linear-gradient(135deg, #CBB36D 0%, #CBAA4C 100%);
      color: #30513B;
      border-color: var(--gold-500);
      box-shadow: 0 8px 22px rgba(203, 170, 76, 0.45);
      transform: translateY(-2px);
    }

    .session-card-btn:hover svg {
      transform: translateX(4px);
    }

    /* Right Column: Features List */
    .session-card-right {
      display: flex;
      flex-direction: column;
    }

    .session-features-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 13px;
    }

    .session-features-list li {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 14.5px;
      color: var(--text-dark);
      font-weight: 500;
      line-height: 1.4;
    }

    .session-check-box {
      width: 22px;
      height: 22px;
      border-radius: 50%;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      color: #30513B;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .session-check-box svg {
      width: 13px;
      height: 13px;
      stroke-width: 2.5;
    }

    /* Featured Card Styling (03 - Processo Completo / Dark Chocolate & Gold) */
    .session-stack-featured {
      background: linear-gradient(135deg, #30513B 0%, #30513B 45%, #30513B 100%);
      border: 1.5px solid rgba(203, 170, 76, 0.65);
      box-shadow: 0 20px 50px rgba(48, 81, 59, 0.35), 0 0 0 1px rgba(203, 170, 76, 0.35);
    }

    .session-stack-featured .session-card-top-bar {
      border-bottom-color: rgba(255, 255, 255, 0.12);
    }

    .session-stack-featured .session-card-number {
      color: var(--gold-300);
    }

    .session-stack-featured .session-card-title {
      color: #FFFFFF;
    }

    .session-stack-featured .session-card-desc {
      color: rgba(239, 239, 239, 0.9);
    }

    .session-stack-featured .session-features-list li {
      color: #EFEFEF;
    }

    .session-stack-featured .session-check-box {
      background: rgba(203, 170, 76, 0.35);
      border-color: rgba(203, 170, 76, 0.65);
      color: #CBB36D;
    }

    .session-stack-featured .featured-badge {
      background: linear-gradient(135deg, #CBB36D 0%, #CBAA4C 100%);
      color: #30513B;
      font-family: var(--font-heading);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      padding: 5px 14px;
      border-radius: 50px;
      box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .btn-featured-cta {
      background: linear-gradient(135deg, #CBB36D 0%, #CBAA4C 100%);
      color: #30513B;
      border-color: var(--gold-500);
      box-shadow: var(--shadow-gold);
    }

    .btn-featured-cta:hover {
      background: linear-gradient(135deg, #EFEFEF 0%, #CBB36D 100%);
      color: #30513B;
      box-shadow: var(--shadow-gold-hover);
    }

    /* ==========================================================================
       SECTION 09: ONLINE CONSULTATION BANNER (CORRESPONDING TO 09.PNG)
       ========================================================================== */
    .online-consult-section {
      position: relative;
      background-color: var(--bg-light);
      background-image:
        linear-gradient(to right, rgba(48, 81, 59, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(48, 81, 59, 0.04) 1px, transparent 1px);
      background-size: 36px 36px;
      padding: 70px 24px 90px 24px;
      z-index: 20;
    }

    .online-consult-container {
      max-width: 1200px;
      margin: 0 auto;
    }

    .online-consult-card {
      position: relative;
      background: linear-gradient(135deg, #30513B 0%, #30513B 45%, #30513B 100%);
      border-radius: 32px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      box-shadow: 0 24px 60px rgba(48, 81, 59, 0.28);
      padding: 56px 52px;
      overflow: hidden;
      display: grid;
      grid-template-columns: 1.05fr 1fr;
      gap: 48px;
      align-items: center;
    }

    /* Watermark Geometric Concentric Maze Background */
    .consult-watermark-bg {
      position: absolute;
      top: -15%;
      right: -10%;
      width: 700px;
      height: 700px;
      opacity: 0.18;
      pointer-events: none;
      z-index: 1;
    }

    .consult-glow-radial {
      position: absolute;
      top: 30%;
      left: -10%;
      width: 450px;
      height: 450px;
      background: radial-gradient(circle, rgba(203, 170, 76, 0.45) 0%, transparent 70%);
      filter: blur(40px);
      pointer-events: none;
      z-index: 1;
    }

    /* Left Side: Content & CTA */
    .online-consult-content {
      position: relative;
      z-index: 5;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .consult-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 7px 20px;
      background: #FFFFFF;
      border-radius: 50px;
      color: var(--text-dark);
      font-size: 13.5px;
      font-weight: 700;
      letter-spacing: 0.04em;
      margin-bottom: 22px;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
    }

    .consult-badge-icon {
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .consult-title {
      font-family: var(--font-heading);
      font-size: clamp(28px, 2.7vw, 38px);
      font-weight: 800;
      color: #FFFFFF;
      line-height: 1.2;
      letter-spacing: -0.015em;
      margin-bottom: 20px;
    }

    .consult-paragraphs {
      display: flex;
      flex-direction: column;
      gap: 14px;
      margin-bottom: 32px;
      max-width: 520px;
    }

    .consult-text {
      font-size: 15px;
      line-height: 1.62;
      color: rgba(239, 239, 239, 0.9);
      font-weight: 400;
    }

    .btn-agendar-consulta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 16px 36px;
      font-size: 15px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      box-shadow: var(--shadow-gold);
    }

    /* Right Side: Video Call Mockup Frame */
    .online-consult-media {
      position: relative;
      z-index: 5;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .video-call-frame {
      position: relative;
      width: 100%;
      border-radius: 18px;
      overflow: hidden;
      box-shadow: 0 20px 45px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 255, 255, 0.15);
      background: #30513B;
      transition: transform 0.35s ease, box-shadow 0.35s ease;
    }

    .video-call-frame:hover {
      transform: translateY(-4px) scale(1.01);
      box-shadow: 0 26px 55px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(203, 170, 76, 0.5);
    }

    .video-call-img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: cover;
    }

    /* ==========================================================================
       SECTION 10: CONTACT & LOCATION (CORRESPONDING TO 10.PNG)
       ========================================================================== */
    .contact-section {
      position: relative;
      background-color: var(--bg-light);
      padding: 90px 24px 100px 24px;
      z-index: 20;
      overflow: hidden;
    }

    .contact-container {
      max-width: 1200px;
      margin: 0 auto;
      position: relative;
      z-index: 2;
    }

    /* Left Side Ambient Watermark Concentric Labyrinth */
    .contact-watermark-bg {
      position: absolute;
      top: 50%;
      left: -160px;
      transform: translateY(-50%);
      width: 550px;
      height: 550px;
      opacity: 0.12;
      pointer-events: none;
      z-index: 1;
    }

    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 1.05fr;
      gap: 56px;
      align-items: center;
    }

    /* Left Column */
    .contact-content-col {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .contact-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 18px;
      background: var(--pill-bg);
      border: 1px solid var(--pill-border);
      border-radius: 50px;
      color: var(--text-dark);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.06em;
      margin-bottom: 20px;
      box-shadow: 0 2px 8px rgba(48, 81, 59, 0.04);
    }

    .contact-badge-icon {
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .contact-title {
      font-family: var(--font-heading);
      font-size: clamp(30px, 3.2vw, 42px);
      font-weight: 800;
      color: var(--text-dark);
      line-height: 1.18;
      letter-spacing: -0.015em;
      margin-bottom: 32px;
    }

    /* Info Cards Group */
    .contact-cards-group {
      display: flex;
      flex-direction: column;
      gap: 16px;
      width: 100%;
      margin-bottom: 32px;
    }

    /* Large Wide Card */
    .contact-card-wide {
      background: #FFFFFF;
      border: 1px solid var(--card-border);
      border-radius: 16px;
      padding: 16px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.03);
      transition: var(--transition-smooth);
      text-decoration: none;
    }

    .contact-card-wide:hover {
      transform: translateY(-2px);
      border-color: var(--gold-400);
      box-shadow: 0 8px 20px rgba(203, 170, 76, 0.25);
      background: #FFFFFF;
    }

    .contact-card-icon-box {
      width: 44px;
      height: 44px;
      border-radius: 12px;
      background: linear-gradient(135deg, #CBB36D 0%, #CBAA4C 40%, #CBAA4C 100%);
      color: #30513B;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      box-shadow: 0 4px 10px rgba(203, 170, 76, 0.4);
    }

    .contact-card-icon-box svg {
      width: 22px;
      height: 22px;
    }

    .contact-card-text {
      display: flex;
      flex-direction: column;
    }

    .contact-card-label {
      font-family: var(--font-heading);
      font-size: 15px;
      font-weight: 800;
      color: var(--text-dark);
      line-height: 1.25;
    }

    .contact-card-sub {
      font-size: 14px;
      color: var(--text-subtle);
      margin-top: 2px;
      font-weight: 500;
    }

    /* 2-Columns Small Cards Grid */
    .contact-cards-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      width: 100%;
    }

    .contact-card-small {
      background: #FFFFFF;
      border: 1px solid var(--card-border);
      border-radius: 16px;
      padding: 14px 18px;
      display: flex;
      align-items: center;
      gap: 14px;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.03);
      transition: var(--transition-smooth);
      text-decoration: none;
    }

    .contact-card-small:hover {
      transform: translateY(-2px);
      border-color: var(--gold-400);
      box-shadow: 0 8px 20px rgba(203, 170, 76, 0.25);
      background: #FFFFFF;
    }

    /* CTA Button */
    .btn-contact-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 16px 36px;
      font-size: 15px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      box-shadow: var(--shadow-gold);
    }

    /* Right Column: Image Collage Frame */
    .contact-media-col {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
    }

    .contact-image-frame {
      position: relative;
      width: 100%;
      border-radius: 28px;
      overflow: hidden;
      box-shadow: 0 20px 45px rgba(48, 81, 59, 0.1);
      border: 1px solid var(--card-border);
      background: #FFFFFF;
      transition: transform 0.35s ease, box-shadow 0.35s ease;
    }

    .contact-image-frame:hover {
      transform: translateY(-4px);
      box-shadow: 0 26px 55px rgba(48, 81, 59, 0.15);
    }

    .contact-anexo-img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: cover;
      border-radius: 28px;
    }

    /* ==========================================================================
       SECTION: FAQ / DÚVIDAS FREQUENTES (CORRESPONDING TO FAQ.PNG)
       ========================================================================== */
    .faq-section {
      position: relative;
      background-color: var(--bg-secondary);
      padding: 90px 24px 100px 24px;
      z-index: 20;
    }

    .faq-container {
      max-width: 900px;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
    }

    .faq-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 20px;
      background: rgba(203, 170, 76, 0.22);
      border: 1px solid rgba(203, 170, 76, 0.45);
      border-radius: 50px;
      color: #30513B;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .faq-title {
      font-family: var(--font-heading);
      font-size: clamp(28px, 3.2vw, 42px);
      font-weight: 700;
      color: var(--text-dark);
      line-height: 1.25;
      letter-spacing: -0.015em;
      max-width: 780px;
      margin-bottom: 44px;
    }

    .faq-title .faq-accent {
      font-style: italic;
      background: linear-gradient(135deg, #CBAA4C 0%, #30513B 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .faq-accordion-list {
      display: flex;
      flex-direction: column;
      gap: 14px;
      width: 100%;
      text-align: left;
    }

    .faq-item {
      background: #FFFFFF;
      border: 1.5px solid var(--card-border);
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 4px 14px rgba(48, 81, 59, 0.03);
      transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.25s ease;
    }

    .faq-item:hover {
      border-color: #CBAA4C;
      transform: translateY(-2px);
      box-shadow: 0 8px 22px rgba(48, 81, 59, 0.06);
    }

    .faq-item.is-open {
      border-color: var(--gold-400);
      box-shadow: 0 10px 28px rgba(203, 170, 76, 0.25);
    }

    .faq-button {
      width: 100%;
      background: transparent;
      border: none;
      padding: 20px 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      cursor: pointer;
      font-family: var(--font-heading);
      font-size: 16.5px;
      font-weight: 700;
      color: var(--text-dark);
      text-align: left;
      transition: color 0.25s ease;
    }

    .faq-button:hover {
      color: #30513B;
    }

    .faq-icon-toggle {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: var(--bg-light);
      border: 1px solid var(--card-border);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--text-dark);
      font-size: 19px;
      font-weight: 700;
      line-height: 1;
      flex-shrink: 0;
      transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;
    }

    .faq-item.is-open .faq-icon-toggle {
      background: var(--gold-500);
      border-color: var(--gold-500);
      color: #30513B;
    }

    .faq-collapse-content {
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      transition: max-height 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, padding 0.35s ease;
      padding: 0 24px;
    }

    .faq-item.is-open .faq-collapse-content {
      max-height: 250px;
      opacity: 1;
      padding: 0 24px 22px 24px;
    }

    .faq-answer-text {
      font-size: 15px;
      line-height: 1.65;
      color: var(--text-subtle);
      border-top: 1px solid var(--card-border);
      padding-top: 14px;
    }

    /* ==========================================================================
       SECTION 12: PRE-FOOTER BANNER & FOOTER (CORRESPONDING TO 11.PNG)
       ========================================================================== */
    .pre-footer-section {
      position: relative;
      background: linear-gradient(135deg, #30513B 0%, #30513B 45%, #30513B 100%);
      overflow: hidden;
      z-index: 20;
      border-top: 1px solid rgba(255, 255, 255, 0.08);
    }

    .pre-footer-watermark-bg {
      position: absolute;
      top: -20%;
      right: -10%;
      width: 700px;
      height: 700px;
      opacity: 0.15;
      pointer-events: none;
      z-index: 1;
    }

    .pre-footer-glow {
      position: absolute;
      top: 20%;
      left: -10%;
      width: 450px;
      height: 450px;
      background: radial-gradient(circle, rgba(203, 170, 76, 0.45) 0%, transparent 70%);
      filter: blur(40px);
      pointer-events: none;
      z-index: 1;
    }

    .pre-footer-container {
      max-width: 1280px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1.05fr;
      align-items: stretch;
      position: relative;
      z-index: 2;
    }

    .pre-footer-image-col {
      position: relative;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      min-height: 520px;
      overflow: hidden;
    }

    .pre-footer-img {
      width: 100%;
      height: 100%;
      max-height: 600px;
      object-fit: cover;
      object-position: top center;
      display: block;
    }

    .pre-footer-content-col {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      padding: 64px 48px;
    }

    .pre-footer-title {
      font-family: var(--font-heading);
      font-size: clamp(30px, 3.2vw, 44px);
      font-weight: 800;
      color: #FFFFFF;
      line-height: 1.18;
      letter-spacing: -0.015em;
      margin-bottom: 24px;
    }

    .pre-footer-paragraphs {
      display: flex;
      flex-direction: column;
      gap: 16px;
      margin-bottom: 36px;
      max-width: 520px;
    }

    .pre-footer-text {
      font-size: 16px;
      line-height: 1.65;
      color: rgba(239, 239, 239, 0.9);
      font-weight: 400;
    }

    .btn-pre-footer-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 16px 38px;
      font-size: 15px;
      font-weight: 800;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      box-shadow: var(--shadow-gold);
    }

    /* Rodapé / Footer */
    .site-footer {
      background: #30513B;
      border-top: 1px solid rgba(255, 255, 255, 0.08);
      padding: 32px 24px;
      position: relative;
      z-index: 25;
    }

    .footer-container {
      max-width: 1200px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }

    .footer-logo-link {
      display: inline-flex;
      align-items: center;
      text-decoration: none;
      transition: transform 0.3s ease;
    }

    .footer-logo-link:hover {
      transform: translateY(-2px);
    }

    .footer-logo-img {
      height: 78px;
      width: auto;
      object-fit: contain;
      filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.45));
    }

    .footer-copyright {
      font-size: 14px;
      color: #EFEFEF;
      font-weight: 500;
      letter-spacing: 0.02em;
    }

    /* ==========================================================================
       CONSOLIDATED RESPONSIVE BREAKPOINTS (MOBILE & TABLET)
       ========================================================================== */

    /* 1. Tablet Landscape & Medium Screens (max-width: 1024px) */
    @media (max-width: 1024px) {
      .hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
      }

      .hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
      }

      .hero-title {
        font-size: clamp(26px, 3.2vw, 36px);
      }

      .hero-title .title-name,
      .hero-title .title-accent {
        white-space: normal;
      }

      .hero-image-wrapper {
        margin-left: 0;
        min-height: 380px;
      }

      .photo-gleis {
        width: clamp(330px, 35vw, 380px);
        max-height: 390px;
      }

      .bg-hero-logo-watermark {
        width: clamp(440px, 48vw, 560px);
        top: 56%;
        right: 2%;
        opacity: 0.16;
      }

      .symptoms-card-wrapper {
        padding: 36px;
      }

      .symptoms-grid {
        gap: 32px;
      }

      .benefits-grid {
        gap: 40px;
      }

      .process-cards-grid {
        gap: 20px;
      }

      .process-differentiators-bar {
        padding: 22px 24px;
        gap: 16px;
      }

      .therapy-benefits-grid {
        gap: 40px;
      }

      .reviews-main-card {
        grid-template-columns: 1fr;
        padding: 32px 24px;
        gap: 28px;
      }

      .reviews-summary-card {
        padding-right: 0;
        border-right: none;
        border-bottom: 1px solid rgba(239, 239, 239, 0.9);
        padding-bottom: 24px;
      }

      .about-grid {
        gap: 40px;
      }

      .online-consult-card {
        grid-template-columns: 1fr;
        padding: 40px 32px;
        gap: 36px;
      }

      .online-consult-content {
        align-items: center;
        text-align: center;
      }

      .consult-paragraphs {
        margin: 0 auto 28px auto;
      }

      .btn-agendar-consulta {
        width: 100%;
        max-width: 380px;
      }

      .contact-grid {
        grid-template-columns: 1fr;
        gap: 40px;
      }

      .contact-content-col {
        align-items: center;
        text-align: center;
      }

      .contact-title {
        text-align: center;
      }

      .contact-cards-group {
        max-width: 520px;
        margin: 0 auto 32px auto;
      }

      .contact-card-wide,
      .contact-card-small {
        text-align: left;
      }

      .btn-contact-cta {
        width: 100%;
        max-width: 380px;
      }

      .contact-image-frame {
        max-width: 520px;
        margin: 0 auto;
      }

      .pre-footer-container {
        grid-template-columns: 1fr;
      }

      .pre-footer-image-col {
        min-height: 380px;
        max-height: 460px;
      }

      .pre-footer-content-col {
        padding: 44px 28px;
        align-items: center;
        text-align: center;
      }

      .pre-footer-paragraphs {
        margin: 0 auto 32px auto;
      }

      .btn-pre-footer-cta {
        width: 100%;
        max-width: 380px;
      }

      .footer-container {
        flex-direction: column;
        text-align: center;
        gap: 18px;
      }
    }

    /* 2. Tablet Portrait & Mobile Large (max-width: 880px) */
    @media (max-width: 880px) {

      /* UNIFIED MOBILE HORIZONTAL REFERENCE & CONTAINER SYSTEM */
      .symptoms-section,
      .benefits-section,
      .process-section,
      .therapy-benefits-section,
      .tcc-themes-section,
      .testimonials-section,
      .about-section,
      .online-consult-section,
      .contact-section,
      .faq-section {
        width: 100%;
        max-width: 100%;
        padding: 60px 16px 70px 16px;
        box-sizing: border-box;
        overflow: hidden;
      }

      .site-footer {
        width: 100%;
        max-width: 100%;
        padding: 36px 16px;
        box-sizing: border-box;
        overflow: hidden;
      }

      /* Unified Main Containers */
      .hero-container,
      .symptoms-container,
      .benefits-container,
      .process-container,
      .therapy-benefits-container,
      .tcc-themes-container,
      .testimonials-container,
      .about-container,
      .online-consult-container,
      .contact-container,
      .faq-container,
      .pre-footer-container,
      .footer-container {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding: 0;
        box-sizing: border-box;
      }

      /* SECTION 01: HERO MOBILE */
      .hero-section {
        min-height: auto;
        height: auto;
        padding: 28px 16px 75px 16px;
        overflow: visible;
        position: relative;
        width: 100%;
        box-sizing: border-box;
      }

      .hero-container {
        display: block;
        min-height: auto;
        height: auto;
        flex-grow: 0;
      }

      .hero-grid {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 0;
        padding: 0;
        min-height: auto;
        height: auto;
        position: relative;
      }

      .hero-content {
        display: contents;
      }

      /* 1. Logo */
      .hero-header {
        order: 1;
        width: 100%;
        max-width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 0;
        margin: 0 auto 8px auto;
        position: relative;
        z-index: 10;
      }

      .brand-logo {
        margin: 0 auto;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transform: translateX(-18px);
      }

      /* 2. Professional Image (Calibrated to Sketch: Generous Size & Positioned Behind CRP Badge) */
      .hero-image-wrapper {
        order: 2;
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        margin: 4px auto -88px auto;
        padding: 0;
        z-index: 1;
        overflow: visible;
      }

      .photo-aura-glow {
        width: 330px;
        height: 330px;
        top: 6%;
        bottom: auto;
        left: 50%;
        transform: translateX(calc(-50% + 18px));
        opacity: 0.9;
      }

      .photo-gleis {
        display: block;
        margin: 0 auto;
        transform: translateX(18px);
        width: clamp(315px, 88vw, 385px);
        max-height: 410px;
        height: auto;
        position: relative;
        z-index: 2;
        filter: drop-shadow(0 18px 36px rgba(48, 81, 59, 0.75));
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 68%, rgba(0, 0, 0, 0.4) 86%, transparent 100%);
        mask-image: linear-gradient(to bottom, #000 0%, #000 68%, rgba(0, 0, 0, 0.4) 86%, transparent 100%);
      }

      /* 3. CRP Registration Badge */
      .crp-badge {
        order: 3;
        position: relative;
        z-index: 10;
        margin: 0 auto 14px auto;
        align-self: center;
        padding: 4px 12px;
        font-size: 11px;
        letter-spacing: 0.06em;
        gap: 6px;
        background: rgba(48, 81, 59, 0.88);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
        border: 1px solid rgba(203, 170, 76, 0.4);
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
      }

      /* 4. Main Headline */
      .hero-title {
        order: 4;
        position: relative;
        z-index: 10;
        font-size: clamp(32px, 9.2vw, 44px);
        line-height: 1.15;
        letter-spacing: -0.025em;
        margin: 0 auto 16px auto;
        width: 100%;
        max-width: 100%;
        text-align: center;
        text-shadow: 0 4px 20px rgba(48, 81, 59, 0.95), 0 2px 8px rgba(0, 0, 0, 0.9);
      }

      .hero-title .title-name {
        font-size: inherit;
        white-space: normal;
        color: #FFFFFF;
        text-shadow: inherit;
      }

      .hero-title .title-accent {
        font-size: inherit;
        white-space: normal;
        margin-top: 6px;
        font-weight: 700;
        background: linear-gradient(135deg, #EFEFEF 0%, #CBB36D 45%, #CBAA4C 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        filter: drop-shadow(0 2px 10px rgba(203, 170, 76, 0.45));
        text-shadow: none;
        opacity: 1;
        mix-blend-mode: normal;
      }

      .hero-title > .title-name,
      .hero-title > .title-accent {
        display: none;
      }

      .hero-title-mobile,
      .hero-title-mobile > span {
        display: block;
        white-space: nowrap;
      }

      .hero-title-mobile > .title-accent {
        white-space: nowrap;
      }

      /* 5. Supporting Description */
      .hero-description {
        order: 5;
        position: relative;
        z-index: 10;
        margin: 0 auto 24px auto;
        font-size: 15px;
        line-height: 1.6;
        color: rgba(239, 239, 239, 0.95);
        width: 100%;
        max-width: 100%;
        text-align: center;
        text-shadow: 0 2px 14px rgba(48, 81, 59, 0.95), 0 1px 4px rgba(0, 0, 0, 0.85);
      }

      /* 6. CTA Actions */
      .hero-actions {
        order: 6;
        position: relative;
        z-index: 10;
        margin: 0 auto;
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .btn-cta-gold {
        width: 100%;
        max-width: 100%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 14px 16px;
        font-size: clamp(12.5px, 3.6vw, 14.5px);
        font-weight: 800;
        letter-spacing: 0.03em;
        border-radius: 12px;
        margin: 0 auto;
        box-sizing: border-box;
        text-align: center;
      }

      /* AUTOMATIC CTA SHINE ANIMATION ON MOBILE (EVERY 4 SECONDS) */
      @keyframes ctaShinePulseMobile {
        0% {
          left: -70%;
          opacity: 0;
        }

        5% {
          opacity: 1;
        }

        25% {
          left: 140%;
          opacity: 1;
        }

        26% {
          opacity: 0;
        }

        100% {
          left: 140%;
          opacity: 0;
        }
      }

      .btn-cta-gold::before,
      .btn-agendar-agora::before {
        animation: ctaShinePulseMobile 4s ease-in-out infinite !important;
      }

      .btn-cta-gold span:first-child {
        display: inline-block;
        line-height: 1.25;
        text-wrap: balance;
      }

      .btn-icon-whatsapp {
        width: 25px;
        height: 25px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        overflow: visible;
        margin-top: 0;
      }

      .btn-icon-whatsapp svg {
        width: 100%;
        height: 100%;
        display: block;
      }

      .hero-trust-bar {
        justify-content: center;
        flex-direction: column;
        align-items: center;
        gap: 10px;
        margin: 18px auto 0 auto;
        width: 100%;
        max-width: 100%;
      }

      .trust-item {
        width: 100%;
        max-width: 100%;
        justify-content: center;
        align-items: center;
        gap: 8px;
        font-size: 13px;
        text-align: center;
      }

      .trust-item-icon {
        margin-top: 0;
      }

      .bg-hero-logo-watermark {
        top: 10%;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        width: clamp(280px, 78vw, 360px);
        opacity: 0.14;
        pointer-events: none;
      }

      .glow-radial-teal {
        top: 20%;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        width: 320px;
        height: 320px;
        pointer-events: none;
      }

      .glow-radial-left,
      .light-beam-warm {
        display: none;
      }

      /* SECTION 02: SYMPTOMS MOBILE */
      .symptoms-card-wrapper {
        padding: 28px 18px;
        border-radius: 24px;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }

      .symptoms-grid {
        grid-template-columns: 1fr;
        gap: 28px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .symptoms-image-box {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .symptoms-img {
        width: 100%;
        height: auto;
      }

      .symptoms-stamp-seal {
        bottom: 8px;
        right: 8px;
        width: 72px;
        height: 72px;
      }

      .symptoms-heading {
        text-align: center;
        font-size: clamp(22px, 6vw, 26px);
        line-height: 1.32;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 24px auto;
      }

      .symptoms-pills-list {
        grid-template-columns: 1fr;
        gap: 12px;
        width: 100%;
        max-width: 100%;
        margin-bottom: 22px;
      }

      .symptom-pill {
        width: 100%;
        max-width: 100%;
        padding: 13px 16px;
        font-size: 14.5px;
        box-sizing: border-box;
      }

      .symptoms-disclaimer {
        text-align: center;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 28px auto;
        line-height: 1.55;
      }

      .symptoms-callout-banner {
        flex-direction: column;
        border-radius: 20px;
        padding: 24px 18px;
        text-align: center;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 28px auto 0 auto;
        gap: 16px;
      }

      .callout-left {
        flex-direction: column;
        text-align: center;
        width: 100%;
        max-width: 100%;
        gap: 12px;
      }

      .callout-icon-circle {
        margin: 0 auto 4px auto;
      }

      .callout-text {
        line-height: 1.5;
      }

      .btn-agendar-agora {
        width: 100%;
        max-width: 100%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        margin: 8px auto 0 auto;
        padding: 13px clamp(12px, 3.5vw, 20px);
        gap: clamp(8px, 2.2vw, 10px);
        font-size: clamp(11.5px, 3.2vw, 13.5px);
        letter-spacing: 0.03em;
        white-space: nowrap;
      }

      .btn-agendar-agora span:first-child {
        display: inline-block;
        line-height: 1.25;
        text-align: center;
      }

      .btn-agendar-agora .wa-icon-pill {
        width: 24px;
        height: 24px;
        padding: 4.5px;
        flex-shrink: 0;
      }

      /* SECTION 03: BENEFITS MOBILE */
      .benefits-grid {
        grid-template-columns: 1fr;
        gap: 32px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .benefits-image-card {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .benefits-portrait-img {
        width: 100%;
        height: auto;
      }

      .benefits-image-card::before {
        inset: 0;
        transform: none;
        border-radius: 200px 200px 24px 24px;
      }

      .benefits-seal-badge {
        top: 10px;
        left: 10px;
        width: 80px;
        height: 80px;
      }

      .benefits-heading {
        text-align: center;
        font-size: 28px;
        line-height: 1.3;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 24px auto;
      }

      .benefits-content-column {
        align-items: center;
        text-align: center;
        width: 100%;
        max-width: 100%;
      }

      .benefits-list {
        width: 100%;
        max-width: 100%;
        gap: 14px;
        margin-bottom: 24px;
      }

      .benefit-item {
        width: 100%;
        max-width: 100%;
        text-align: left;
        box-sizing: border-box;
        padding: 12px 14px;
        gap: 14px;
      }

      .benefit-text {
        line-height: 1.5;
      }

      .benefits-disclaimer-box {
        text-align: center;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0 auto 24px auto;
        padding: 16px 18px;
        line-height: 1.55;
      }

      .btn-benefits-cta {
        width: 100%;
        max-width: 100%;
        justify-content: center;
        box-sizing: border-box;
        margin: 0 auto;
      }

      /* SECTION 04: PROCESS MOBILE */
      .process-header {
        margin-bottom: 32px;
      }

      .process-badge {
        margin-bottom: 14px;
      }

      .process-heading {
        margin-bottom: 14px;
        line-height: 1.25;
      }

      .process-description {
        margin-bottom: 24px;
        line-height: 1.55;
      }

      .process-connection-line {
        display: none;
      }

      .process-cards-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 32px auto;
        position: relative;
      }

      .process-card {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 24px 18px;
        position: relative;
        z-index: 2;
      }

      /* Linha vertical conectando os cards no mobile (trilha de passos) */
      .process-card:not(:last-child)::after {
        content: '';
        position: absolute;
        bottom: -30px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 30px;
        border-left: 2.5px dashed var(--gold-500);
        z-index: 1;
        pointer-events: none;
      }

      .process-card-title {
        margin-top: 14px;
        margin-bottom: 10px;
        line-height: 1.3;
      }

      .process-card-text {
        line-height: 1.55;
      }

      .process-differentiators-bar {
        grid-template-columns: 1fr;
        gap: 16px;
        width: 100%;
        max-width: 100%;
        padding: 22px 18px;
        border-radius: 16px;
        box-sizing: border-box;
        margin: 32px auto 0 auto;
      }

      .diff-item {
        width: 100%;
        max-width: 100%;
        gap: 14px;
      }

      .diff-title {
        margin-bottom: 4px;
      }

      .diff-label {
        line-height: 1.4;
      }

      .diff-item::after {
        display: none !important;
      }

      /* SECTION 05: THERAPY BENEFITS MOBILE */
      .therapy-benefits-section {
        overflow: visible !important;
        position: relative;
      }

      .benefits-top-arrow-wrapper {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 30;
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none;
      }

      .benefits-top-chevron {
        width: 48px;
        height: 48px;
        border-radius: 50%;
        background: #FFFFFF;
        border: 1.5px solid var(--gold-500);
        color: var(--gold-500);
        box-shadow: 0 6px 20px rgba(48, 81, 59, 0.12), 0 0 12px rgba(203, 170, 76, 0.2);
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .benefits-top-chevron svg {
        width: 20px;
        height: 20px;
        stroke-width: 2.5;
      }

      .therapy-benefits-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .therapy-benefits-content-col {
        display: contents;
      }

      .therapy-benefits-pill {
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 18px auto;
        align-self: center;
      }

      .therapy-benefits-image-col {
        order: 2;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 26px auto;
        display: flex;
        justify-content: center;
      }

      .therapy-benefits-img-frame {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .therapy-benefits-title {
        order: 3;
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 24px auto;
        line-height: 1.28;
      }

      .therapy-benefits-items-list {
        order: 4;
        align-items: flex-start;
        text-align: left;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        gap: 6px;
      }

      .therapy-benefit-row {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 5px 0;
        gap: 12px;
      }

      .therapy-benefit-label {
        font-size: 15px;
        line-height: 1.42;
      }

      /* SECTION 06: ACP THEMES MOBILE */
      .tcc-badge {
        margin-bottom: 14px;
      }

      .tcc-title {
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 14px auto;
        line-height: 1.25;
      }

      .tcc-subtitle {
        margin: 0 auto 24px auto;
        line-height: 1.55;
      }

      /* SECTION 06: TCC & THEMES WORKED MOBILE */
      .tcc-themes-section {
        padding: 70px 16px;
      }

      .tcc-pills-wrapper {
        gap: 12px 10px;
        width: 100%;
        max-width: 100%;
        justify-content: center;
        margin: 0 auto 28px auto;
      }

      .tcc-pill {
        max-width: 100%;
        box-sizing: border-box;
      }

      .btn-tcc-cta {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        justify-content: center;
        margin: 0 auto;
      }

      .btn-tcc-cta {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        justify-content: center;
        margin: 0 auto;
      }

      .btn-tcc-cta {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        justify-content: center;
        margin: 0 auto;
      }

      /* SECTION 07: TESTIMONIALS MOBILE */
      .testimonials-header {
        margin-bottom: 28px;
      }

      .testimonials-title {
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 24px auto;
        line-height: 1.25;
      }

      .reviews-main-card {
        grid-template-columns: 1fr;
        padding: 26px 18px;
        gap: 24px;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
      }

      .reviews-summary-card {
        padding-right: 0;
        border-right: none;
        border-bottom: 1px solid rgba(239, 239, 239, 0.9);
        padding-bottom: 22px;
        width: 100%;
        max-width: 100%;
      }

      .summary-rating-label {
        margin-bottom: 8px;
      }

      .summary-stars-row {
        margin-bottom: 10px;
      }

      .summary-count-text {
        margin-bottom: 16px;
      }

      .reviews-carousel-wrapper {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .carousel-nav-btn {
        display: none !important;
      }

      .reviews-carousel-track {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 0;
        width: 100%;
        padding: 4px 0;
        scroll-behavior: smooth;
        scrollbar-width: none;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
      }

      .reviews-carousel-track::-webkit-scrollbar {
        display: none;
      }

      .testimonial-card {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        min-width: 100%;
        scroll-snap-align: start;
        scroll-snap-stop: always;
        box-sizing: border-box;
        border-radius: 18px;
        background: #FFFFFF;
        border: 1px solid rgba(239, 239, 239, 0.9);
        box-shadow: 0 4px 16px rgba(48, 81, 59, 0.04);
        padding: 22px 18px;
      }

      .testimonial-card-header {
        margin-bottom: 14px;
      }

      .testimonial-stars-bar {
        margin-bottom: 14px;
      }

      .testimonial-quote-text {
        line-height: 1.6;
      }

      .reviews-carousel-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin-top: 18px;
        width: 100%;
      }

      .reviews-carousel-dots .dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: rgba(203, 170, 76, 0.25);
        transition: all 0.4s ease;
        cursor: pointer;
      }

      .reviews-carousel-dots .dot.active {
        width: 24px;
        border-radius: 12px;
        background: var(--gold-500);
      }

      /* SECTION 08: ABOUT MOBILE */
      .about-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .about-content-col {
        display: contents;
      }

      .about-pill {
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 16px auto;
        align-self: center;
      }

      .about-title {
        order: 2;
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 6px auto;
        line-height: 1.2;
      }

      .about-crp-line {
        order: 3;
        width: 100%;
        max-width: 100%;
        text-align: center;
        display: block;
        margin: 0 auto 24px auto;
      }

      .about-image-col {
        order: 4;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 28px auto;
        display: flex;
        justify-content: center;
      }

      .about-img-frame {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .about-photo-badge {
        bottom: 10px;
        left: 10px;
        right: 10px;
        padding: 10px 14px;
        max-width: calc(100% - 20px);
        box-sizing: border-box;
      }

      .about-paragraphs {
        order: 5;
        width: 100%;
        max-width: 100%;
        gap: 16px;
        margin-bottom: 24px;
      }

      .about-text {
        line-height: 1.65;
      }

      .about-quote-box {
        order: 6;
        text-align: left;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 18px 20px;
        margin-bottom: 24px;
        line-height: 1.6;
      }

      .about-info-blocks {
        order: 7;
        width: 100%;
        max-width: 100%;
        gap: 14px;
      }

      .about-info-card {
        text-align: left;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 14px 16px;
        gap: 14px;
      }

      .info-card-text {
        line-height: 1.5;
      }

      /* SECTION 08.5: SESSIONS MOBILE (SCROLL STACK) */
      .therapeutic-sessions-section {
        padding: 60px 16px 80px 16px;
      }

      .sessions-header {
        margin-bottom: 32px;
      }

      .sessions-title {
        font-size: clamp(26px, 6.5vw, 32px);
      }

      .sessions-subtitle {
        font-size: 14.5px;
      }

      .sessions-stack-wrapper {
        gap: 0;
        width: 100%;
      }

      .session-stack-card {
        top: calc(75px + var(--card-index) * 20px);
        margin-bottom: 36px;
        border-radius: 20px;
      }

      .session-card-inner {
        padding: 24px 20px 26px 20px;
        gap: 16px;
      }

      .session-card-top-bar {
        display: grid;
        grid-template-columns: 32px minmax(0, 1fr);
        column-gap: 20px;
        padding-bottom: 12px;
      }

      .session-card-tag {
        min-width: 0;
        text-align: center;
        line-height: 1.5;
        overflow-wrap: anywhere;
      }

      .session-card-body-grid {
        grid-template-columns: 1fr;
        gap: 20px;
      }

      .session-card-title {
        font-size: 21px;
      }

      .session-card-desc {
        font-size: 14px;
        margin-bottom: 18px;
      }

      .session-card-btn {
        width: 100%;
        padding: 13px 20px;
        font-size: 12.5px;
      }

      .session-features-list {
        gap: 10px;
      }

      .session-features-list li {
        font-size: 13.5px;
      }

      /* SECTION 09: ONLINE CONSULT MOBILE */
      .online-consult-card {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 36px 20px;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        overflow: hidden;
        margin: 0 auto;
        position: relative;
      }

      .consult-watermark-bg,
      .consult-glow-radial {
        display: none;
      }

      .online-consult-content {
        display: contents;
      }

      .consult-badge {
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 18px auto;
        align-self: center;
      }

      .consult-title {
        order: 2;
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 18px auto;
        line-height: 1.25;
      }

      .consult-paragraphs {
        order: 3;
        gap: 14px;
        margin: 0 auto 26px auto;
        width: 100%;
        max-width: 100%;
        text-align: center;
      }

      .consult-text {
        line-height: 1.6;
      }

      .online-consult-media {
        order: 4;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 30px auto;
        display: flex;
        justify-content: center;
      }

      .video-call-frame {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        border-radius: 16px;
        box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45);
        overflow: hidden;
      }

      .video-call-img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: cover;
      }

      .btn-agendar-consulta {
        order: 5;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
        justify-content: center;
        display: inline-flex;
      }

      /* SECTION 10: CONTACT MOBILE */
      .contact-watermark-bg {
        display: none;
      }

      .contact-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .contact-content-col {
        display: contents;
      }

      .contact-badge {
        order: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 18px auto;
        align-self: center;
      }

      .contact-title {
        order: 2;
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 24px auto;
        line-height: 1.22;
      }

      .contact-cards-group {
        order: 3;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        gap: 14px;
        margin: 0 auto 28px auto;
      }

      .contact-card-wide {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 16px 18px;
        gap: 14px;
      }

      .contact-card-label {
        line-height: 1.25;
      }

      .contact-card-sub {
        margin-top: 4px;
      }

      .contact-cards-row {
        grid-template-columns: 1fr;
        gap: 12px;
        width: 100%;
        max-width: 100%;
      }

      .contact-card-small {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 14px 16px;
        gap: 12px;
      }

      .contact-media-col {
        order: 4;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 30px auto;
        display: flex;
        justify-content: center;
      }

      .contact-image-frame {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        border-radius: 20px;
        box-shadow: 0 16px 36px rgba(48, 81, 59, 0.1);
        overflow: hidden;
        border: 1px solid rgba(239, 239, 239, 0.95);
        background: #FFFFFF;
      }

      .contact-anexo-img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: cover;
        border-radius: 20px;
      }

      .btn-contact-cta {
        order: 5;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
        justify-content: center;
        display: inline-flex;
      }

      /* SECTION 11: FAQ MOBILE */
      .faq-badge {
        margin: 0 auto 16px auto;
      }

      .faq-title {
        font-size: 26px;
        line-height: 1.25;
        margin: 0 auto 28px auto;
        width: 100%;
        max-width: 100%;
        text-align: center;
      }

      .faq-accordion-list {
        width: 100%;
        max-width: 100%;
        gap: 12px;
        margin: 0 auto;
      }

      .faq-item {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        border-radius: 14px;
      }

      .faq-button {
        padding: 16px 18px;
        font-size: 15px;
        line-height: 1.4;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
      }

      .faq-item.is-open .faq-collapse-content {
        padding: 0 18px 20px 18px;
      }

      .faq-answer-text {
        font-size: 14.5px;
        line-height: 1.6;
      }

      /* SECTION 12: PRE-FOOTER & FOOTER MOBILE */
      .pre-footer-section {
        width: 100%;
        overflow: hidden;
      }

      .pre-footer-watermark-bg,
      .pre-footer-glow {
        display: none;
      }

      .pre-footer-container {
        grid-template-columns: 1fr;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .pre-footer-image-col {
        min-height: 280px;
        max-height: 380px;
        width: 100%;
      }

      .pre-footer-content-col {
        padding: 40px 20px;
        align-items: center;
        text-align: center;
        width: 100%;
        max-width: 100%;
      }

      .pre-footer-badge {
        margin: 0 auto 16px auto;
      }

      .pre-footer-title {
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin: 0 auto 20px auto;
        line-height: 1.25;
      }

      .pre-footer-paragraphs {
        gap: 14px;
        margin: 0 auto 30px auto;
        width: 100%;
        max-width: 100%;
      }

      .pre-footer-text {
        line-height: 1.6;
      }

      .btn-pre-footer-cta {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
      }

      .footer-container {
        flex-direction: column;
        text-align: center;
        gap: 18px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
      }

      .footer-logo-img {
        height: 78px;
        width: auto;
        max-width: 280px;
      }

      .footer-copyright {
        font-size: 13px;
        line-height: 1.5;
      }
    }

    /* 3. Small Mobile Devices (max-width: 580px) */
    @media (max-width: 580px) {
      .hero-image-wrapper {
        margin: 4px auto -84px auto;
        position: relative;
        z-index: 1;
      }

      .photo-gleis {
        transform: translateX(18px);
        width: clamp(305px, 90vw, 375px);
        max-height: 400px;
        -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 68%, rgba(0, 0, 0, 0.4) 86%, transparent 100%);
        mask-image: linear-gradient(to bottom, #000 0%, #000 68%, rgba(0, 0, 0, 0.4) 86%, transparent 100%);
      }

      .symptoms-heading {
        font-size: 23px;
      }

      .btn-agendar-agora {
        padding: 12px clamp(8px, 2.8vw, 14px);
        font-size: clamp(10px, 3vw, 12px);
        gap: 8px;
      }

      .btn-agendar-agora .wa-icon-pill {
        width: 22px;
        height: 22px;
        padding: 4px;
      }

      .benefits-heading {
        font-size: 25px;
      }

      .therapy-benefits-title {
        font-size: 24px;
      }

      .tcc-title {
        font-size: 24px;
      }

      .testimonials-title {
        font-size: 24px;
      }

      .about-title {
        font-size: 25px;
      }

      .consult-title {
        font-size: 24px;
      }

      .contact-title {
        font-size: 24px;
      }

      .faq-title {
        font-size: 23px;
      }

      .pre-footer-title {
        font-size: 24px;
      }

      .footer-logo-img {
        height: 72px;
        width: auto;
        max-width: 250px;
      }

      /* MOBILE VIEWPORT ENTRY MICRO-INTERACTIONS (REUSING DESKTOP HOVER STYLES) */
      @keyframes mobilePillPulse {
        0% {
          background: var(--pill-bg);
          border-color: var(--pill-border);
        }

        50% {
          background: #EFEFEF;
          border-color: #CBB36D;
        }

        100% {
          background: var(--pill-bg);
          border-color: var(--pill-border);
        }
      }

      @keyframes mobileCardHighlight {
        0% {
          border-color: inherit;
          box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
        }

        50% {
          border-color: rgba(203, 170, 76, 0.45);
          box-shadow: 0 8px 22px rgba(203, 170, 76, 0.15);
        }

        100% {
          border-color: inherit;
          box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
        }
      }

      @keyframes mobileTccPillHighlight {
        0% {
          border-color: rgba(203, 170, 76, 0.28);
          box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
        }

        50% {
          border-color: var(--gold-500);
          box-shadow: 0 8px 20px rgba(203, 170, 76, 0.18);
          background: #FFFFFF;
        }

        100% {
          border-color: rgba(203, 170, 76, 0.28);
          box-shadow: 0 4px 14px rgba(48, 81, 59, 0.04);
        }
      }

      @keyframes mobileIconSealHighlight {
        0% {
          color: #30513B;
          border-color: rgba(203, 170, 76, 0.4);
        }

        50% {
          color: var(--gold-500);
          border-color: var(--gold-500);
          transform: scale(1.06);
        }

        100% {
          color: #30513B;
          border-color: rgba(203, 170, 76, 0.4);
          transform: scale(1);
        }
      }

      .process-card.mobile-interact {
        animation: mobileCardHighlight 650ms ease-out forwards;
      }

      .process-card.mobile-interact .process-card-icon-seal {
        animation: mobileIconSealHighlight 650ms ease-out forwards;
      }

      .symptom-pill.mobile-interact {
        animation: mobilePillPulse 600ms ease-out forwards;
      }

      .testimonial-card.mobile-interact {
        animation: mobileCardHighlight 650ms ease-out forwards;
      }

      .about-info-card.mobile-interact {
        animation: mobileCardHighlight 650ms ease-out forwards;
      }

      .contact-card-wide.mobile-interact,
      .contact-card-small.mobile-interact {
        animation: mobileCardHighlight 650ms ease-out forwards;
      }

      .faq-item.mobile-interact {
        animation: mobileCardHighlight 600ms ease-out forwards;
      }
    }

    /* ==========================================================================
       HIGH-PERFORMANCE HARDWARE-ACCELERATED SCROLL REVEAL & TRANSITIONS
       ========================================================================== */
    .reveal,
    .reveal-left,
    .reveal-right,
    .reveal-zoom,
    .reveal-fade {
      opacity: 0;
      transition: opacity 0.65s cubic-bezier(0.16, 1, 0.3, 1),
                  transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
      backface-visibility: hidden;
      -webkit-backface-visibility: hidden;
    }

    .reveal {
      transform: translateY(22px);
    }

    .reveal-left {
      transform: translateX(-24px);
    }

    .reveal-right {
      transform: translateX(24px);
    }

    .reveal-zoom {
      transform: scale(0.96) translateY(16px);
    }

    .reveal-fade {
      transform: translateY(0);
    }

    /* Revealed State */
    .reveal.is-revealed,
    .reveal-left.is-revealed,
    .reveal-right.is-revealed,
    .reveal-zoom.is-revealed,
    .reveal-fade.is-revealed {
      opacity: 1;
      transform: translateY(0) translateX(0) scale(1);
    }

    /* Stagger Delays */
    .delay-1 { transition-delay: 0.05s; }
    .delay-2 { transition-delay: 0.10s; }
    .delay-3 { transition-delay: 0.15s; }
    .delay-4 { transition-delay: 0.20s; }
    .delay-5 { transition-delay: 0.25s; }
    .delay-6 { transition-delay: 0.30s; }
    .delay-7 { transition-delay: 0.35s; }
    .delay-8 { transition-delay: 0.40s; }
    .delay-9 { transition-delay: 0.45s; }

    /* Subtle Floating Keyframe for Watermarks and Background Badges */
    @keyframes floatGentle {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-8px); }
    }

    .animate-float {
      animation: floatGentle 6s ease-in-out infinite;
    }

    /* Accessibility: Respect Reduced Motion Preference */
    @media (prefers-reduced-motion: reduce) {
      .reveal,
      .reveal-left,
      .reveal-right,
      .reveal-zoom,
      .reveal-fade {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
      }
    }
  
/* Accessible defaults remain usable if JavaScript fails or is disabled. */
html:not(.enhanced) :is(.reveal,.reveal-left,.reveal-right,.reveal-zoom,.reveal-fade) { opacity:1; transform:none; }
html:not(.enhanced) .faq-collapse-content { max-height:none; opacity:1; padding-bottom:20px; }
.faq-collapse-content[hidden] { display:none; }
.faq-item.is-open .faq-collapse-content { max-height:none; }
:focus-visible { outline:3px solid #30513B; outline-offset:5px; box-shadow:0 0 0 7px #fff; }
.skip-link { position:fixed; top:8px; left:8px; z-index:100; padding:12px 18px; background:#fff; color:#30513B; transform:translateY(-200%); }
.skip-link:focus { transform:none; }
.reviews-carousel-dots button.dot { border:0; padding:0; cursor:pointer; min-width:16px; min-height:16px; }
.footer-privacy { color:inherit; text-decoration:underline; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .session-stack-card { transform:none !important; filter:none !important; }
}
