/* ==========================================================================
   STATION BURGER - "O Hambúrguer Que Virou Destino"
   Dobra 7: Tecnologia Proprietária (Design Editorial Minimalista & Humano)
   ========================================================================== */

:root {
  --primary-orange: #F26B09;
  --primary-orange-bright: #FF7700;
  --primary-orange-warm: #D95D00;
  --bg-dark: #000000;
  --bg-cream: #F6F0EA;
  --text-cream-dark: #1F2937;
  --font-headline: 'Bebas Neue', sans-serif;
  --font-btn: 'Bebas Neue', sans-serif;
  --font-subheadline: 'Montserrat', sans-serif;
  --font-serif: 'Playfair Display', Georgia, serif;
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  color-scheme: dark;
}

body {
  font-family: var(--font-subheadline);
  background-color: var(--bg-dark);
  color: #FFFFFF;
  overflow-x: hidden;
}

/* ==========================================================================
   Contêiner do Trem (Scroll Height Imersivo de 450vh para 3 Dobras)
   ========================================================================== */
.train-experience {
  height: 450vh;
  position: relative;
}

.train-stage {
  position: sticky;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000000;
}

/* CANVAS DE EXPANSÃO TELA CHEIA (2564 x 1080) */
.train-stage-canvas {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: max(100vw, calc(100vh * 2564 / 1080));
  height: max(100vh, calc(100vw * 1080 / 2564));
  aspect-ratio: 2564 / 1080;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Camadas Básicas */
.layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  will-change: filter;
  transition: filter 0.2s linear;
}

.layer img {
  width: 100%;
  height: 100%;
  object-fit: fill;
}

/* HIERARQUIA DE Z-INDEX */
.layer-bg { z-index: 1; overflow: hidden; }
.station-reveal-content { position: absolute; z-index: 2; bottom: 3.0%; left: 50%; transform: translateX(-50%) translateY(35px) scale(0.95); width: 17.6%; min-width: 220px; opacity: 0; pointer-events: none; transition: opacity 0.3s ease, transform 0.3s ease; }
.doors-wrapper { position: absolute; z-index: 3; top: 23.2%; height: 78.8%; left: 40.4%; width: 19.2%; display: flex; overflow: hidden; will-change: filter; transition: filter 0.2s linear; }
.layer-fg { z-index: 4; pointer-events: none; will-change: filter; transition: filter 0.2s linear; }
.hero-overlay-content { position: absolute; z-index: 5; top: 0; left: 0; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; pointer-events: none; transition: opacity 0.3s ease; }
.burgers-foreground { position: absolute; z-index: 6; bottom: 0; left: 50%; transform: translateX(-50%); width: 55%; max-width: 1400px; display: flex; justify-content: center; align-items: flex-end; pointer-events: none; will-change: transform; transition: transform 0.08s linear; }
.video-section-overlay { position: absolute; z-index: 20; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.45); opacity: 0; pointer-events: none; transition: opacity 0.4s ease, transform 0.4s ease; padding-top: 5vh; }
.top-seal-wrapper { position: absolute; z-index: 30; top: 7.2%; left: 50%; transform: translateX(-50%); pointer-events: none; }

/* CAMADA 1: FUNDO EM MOVIMENTO DE TREM EM VIAGEM */
.bg-motion-strip {
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  height: 100%;
  display: flex;
  will-change: transform, filter;
  filter: brightness(0.35) blur(14px);
}

.bg-motion-strip img {
  width: 50%;
  height: 100%;
  object-fit: cover;
  flex-shrink: 0;
}

/* REVELAÇÃO E BOTÕES DOBRA 2 (BEBAS NEUE) */
.reveal-card-clean { background: transparent; border: none; box-shadow: none; padding: 0; display: flex; flex-direction: column; gap: 1.0vh; width: 100%; }

.reveal-main-title {
  font-family: var(--font-headline);
  font-size: clamp(1.45rem, 3.6vh, 3.3rem);
  font-weight: 400;
  letter-spacing: 2px;
  color: #FFFFFF;
  line-height: 0.94;
  text-align: center;
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.95);
  text-transform: uppercase;
}

.reveal-paragraph-1line { font-family: var(--font-subheadline); font-size: clamp(0.55rem, 1.25vh, 1.05rem); font-weight: 500; line-height: 1.35; color: #F8FAFC; text-align: center; text-shadow: 0 3px 14px rgba(0, 0, 0, 0.95); }
.metrics-single-column { display: flex; flex-direction: column; gap: 0.7vh; width: 100%; }
.metric-card-stacked { display: flex; flex-direction: row; align-items: center; justify-content: space-between; padding: 0.9vh 1.4vh; background: rgba(26, 16, 10, 0.88); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 6px; box-shadow: 0 6px 20px rgba(0, 0, 0, 0.7); width: 100%; }
.metric-val { font-family: var(--font-headline); font-size: clamp(1.1rem, 2.6vh, 2.2rem); line-height: 1; letter-spacing: 0.8px; white-space: nowrap; }
.metric-val.text-white { color: #FFFFFF; }
.metric-val.text-orange { color: var(--primary-orange); }
.metric-lbl { font-family: var(--font-subheadline); font-size: clamp(0.68rem, 1.35vh, 1.05rem); font-weight: 700; color: #F1F5F9; letter-spacing: 0.6px; text-transform: uppercase; text-align: right; white-space: nowrap; }
.reveal-actions-single { width: 100%; margin-top: 0.2vh; }

.btn-franchise-single {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.0vh 1.4vh;
  border-radius: 6px;
  background: var(--primary-orange);
  color: #FFFFFF;
  font-family: var(--font-headline);
  font-size: clamp(0.82rem, 1.8vh, 1.45rem);
  letter-spacing: 1.5px;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.25s ease;
  border: none;
  box-shadow: 0 4px 20px rgba(242, 107, 9, 0.5);
  white-space: nowrap;
}
.btn-franchise-single:hover { background: var(--primary-orange-bright); box-shadow: 0 0 24px rgba(242, 107, 9, 0.9); }

/* PORTAS */
.door { width: 50.4%; height: 100%; object-fit: fill; will-change: transform; transition: transform 0.05s linear; }
.door-left { transform-origin: left center; }
.door-right { transform-origin: right center; }

/* DOBRA 1 TEXTO INICIAL (BEBAS NEUE) */
.hero-text-block { position: absolute; top: 44%; left: 50%; transform: translate(-50%, -50%); text-align: center; width: 17.8%; min-width: 230px; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.95), 0 0 12px rgba(0, 0, 0, 0.9); display: flex; flex-direction: column; align-items: center; }

.hero-main-title {
  font-family: var(--font-headline);
  font-size: clamp(1.6rem, 5.0vh, 4.2rem);
  font-weight: 400;
  letter-spacing: 2px;
  color: #FFFFFF;
  line-height: 0.94;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.hero-sub-title { font-family: var(--font-subheadline); font-size: clamp(0.75rem, 1.8vh, 1.45rem); font-weight: 400; letter-spacing: 1px; color: #F1F5F9; }
.scroll-prompt { position: relative; margin-top: 14px; display: flex; flex-direction: column; align-items: center; gap: 2px; color: var(--primary-orange); font-family: var(--font-subheadline); font-weight: 600; font-size: clamp(0.65rem, 1.3vh, 1.05rem); letter-spacing: 2px; text-transform: uppercase; text-align: center; white-space: nowrap; animation: pulsePrompt 2s infinite alternate; }
.scroll-arrow { font-size: 1rem; font-weight: 700; }
@keyframes pulsePrompt { 0% { opacity: 0.65; transform: translateY(0); } 100% { opacity: 1; transform: translateY(4px); } }

/* BANDEJA HAMBURGUERES */
.burgers-foreground img { width: 100%; height: auto; display: block; filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.9)); }

/* DOBRA 3 VIDEO (BEBAS NEUE) */
.video-section-card { width: auto; max-width: 920px; display: flex; flex-direction: row-reverse; align-items: center; justify-content: center; gap: 36px; background: transparent; border: none; box-shadow: none; padding: 0 20px; }
.video-info-col { flex: 1; max-width: 480px; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.video-text-block { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.95); }

.video-tagline {
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.2vh, 1.8rem);
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.video-main-title {
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 5.2vh, 4.2rem);
  font-weight: 400;
  letter-spacing: 2px;
  color: #FFFFFF;
  line-height: 0.95;
  text-transform: uppercase;
}

.video-description { font-family: var(--font-subheadline); font-size: clamp(0.88rem, 1.8vh, 1.35rem); font-weight: 400; line-height: 1.4; color: #E2E8F0; }
.video-cta-wrapper { width: 100%; max-width: 320px; }
.btn-video-cta { padding: 14px 24px; font-size: clamp(1.0rem, 2.2vh, 1.5rem); }
.vertical-video-box { width: clamp(280px, 34vh, 420px); aspect-ratio: 9 / 16; background: rgba(10, 10, 10, 0.85); border: 2px solid var(--primary-orange); border-radius: 16px; box-shadow: 0 16px 40px rgba(0, 0, 0, 0.95), 0 0 25px rgba(242, 107, 9, 0.35); overflow: hidden; position: relative; display: flex; align-items: center; justify-content: center; }

/* VIDEO FACADE (CAPA DE ALTA CONVERSÃO) */
.video-facade { width: 100%; height: 100%; position: relative; cursor: pointer; display: flex; align-items: center; justify-content: center; background: #0D1117; overflow: hidden; }
.video-facade .facade-img { width: 100%; height: 100%; object-fit: cover; opacity: 0.65; transition: transform 0.4s ease, opacity 0.4s ease; }
.video-facade:hover .facade-img { transform: scale(1.06); opacity: 0.82; }
.play-button-overlay { position: absolute; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; pointer-events: none; }
.play-icon { width: 68px; height: 68px; border-radius: 50%; background: var(--primary-orange); color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 26px; padding-left: 5px; box-shadow: 0 0 30px rgba(242, 107, 9, 0.8), 0 4px 15px rgba(0,0,0,0.5); transition: transform 0.3s ease, background 0.3s ease; }
.video-facade:hover .play-icon { transform: scale(1.15); background: #FF7700; }
.play-text { font-family: var(--font-headline); font-size: 1.1rem; letter-spacing: 2px; color: #FFFFFF; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.9); }

.play-button-pulse { width: 64px; height: 64px; border-radius: 50%; background: var(--primary-orange); color: #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 24px rgba(242, 107, 9, 0.9); animation: pulsePlay 2s infinite ease-in-out; cursor: pointer; }
.play-button-pulse svg { width: 30px; height: 30px; margin-left: 3px; }
.top-seal-logo { width: clamp(75px, 12.5vh, 140px); height: auto; object-fit: contain; filter: grayscale(100%) opacity(0.35) brightness(0.65); will-change: filter; transition: filter 0.25s linear; }

/* DOBRA 3 RESPONSIVIDADE MOBILE */
@media (max-width: 768px) {
  .burgers-foreground { width: 34%; max-width: 840px; }
  .station-reveal-content { min-width: 270px; }
  .metric-lbl { font-size: clamp(0.72rem, 1.5vh, 1.1rem); }
  .video-section-card { flex-direction: column; width: 100%; max-width: 320px; margin: 0 auto; padding: 0 16px; gap: 14px; align-items: center; }
  .video-info-col { display: contents; }
  .video-text-block { order: 1; width: 100%; align-items: center; text-align: center; gap: 4px; }
  .video-tagline { font-size: clamp(0.78rem, 3.2vw, 0.95rem); letter-spacing: 2px; }
  .video-main-title { font-size: clamp(1.4rem, 6.2vw, 1.85rem); line-height: 1.05; width: 100%; word-wrap: break-word; overflow-wrap: break-word; }
  .video-description { font-size: clamp(0.75rem, 3.2vw, 0.90rem); line-height: 1.35; width: 100%; }
  .video-player-col { order: 2; width: 100%; display: flex; justify-content: center; }
  .vertical-video-box { width: auto; height: min(44vh, 380px); max-width: 100%; aspect-ratio: 9 / 16; }
  .video-cta-wrapper { order: 3; width: 100%; max-width: 280px; }
  .video-cta-wrapper a { margin-top: 1rem; position: relative; z-index: 2;}
  .btn-video-cta { width: 100%; padding: 12px 16px; font-size: 1.15rem; }
  .video-section-overlay { align-items: flex-start; padding-top: 18vh; overflow-y: auto; }
  .top-seal-logo { width: clamp(55px, 9vh, 95px); }
}

/* ==========================================================================
   DOBRA 4: ROLAGEM NATURAL (BEBAS NEUE)
   ========================================================================== */
.station-dobra4 { position: relative; z-index: 40; background: radial-gradient(circle at center top, #0D1C35 0%, #050B14 100%); padding: 90px 24px; border-top: 1px solid rgba(242, 107, 9, 0.35); box-shadow: 0 -20px 50px rgba(0, 0, 0, 0.95); color: #FFFFFF; }
.dobra4-container { max-width: 1100px; margin: 0 auto; display: flex; flex-direction: column; gap: 40px; }
.dobra4-header { display: flex; flex-direction: column; gap: 12px; text-align: left; }

.dobra4-tagline {
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.4vh, 1.8rem);
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra4-title {
  font-family: var(--font-headline);
  font-size: clamp(2.0rem, 4.8vh, 3.6rem);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: 1.5px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.dobra4-body-grid { display: flex; flex-direction: row; align-items: stretch; gap: 36px; }
.dobra4-text-card { flex: 1.2; display: flex; flex-direction: column; justify-content: space-between; gap: 20px; background: rgba(11, 24, 46, 0.65); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; padding: 32px; backdrop-filter: blur(12px); box-shadow: 0 12px 30px rgba(0, 0, 0, 0.7); }
.dobra4-paragraph { font-family: var(--font-subheadline); font-size: clamp(0.95rem, 1.9vh, 1.25rem); font-weight: 400; line-height: 1.6; color: #CBD5E1; }
.dobra4-paragraph strong { color: #FFFFFF; font-weight: 700; }
.dobra4-action { margin-top: 10px; width: 100%; max-width: 320px; }
.dobra4-btn { padding: 14px 20px; }
.dobra4-stats-cards { flex: 0.8; display: flex; flex-direction: column; gap: 16px; }
.dobra4-stat-box { display: flex; flex-direction: column; justify-content: center; padding: 22px 24px; background: rgba(7, 16, 32, 0.85); border: 1px solid rgba(242, 107, 9, 0.2); border-radius: 12px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.8); transition: transform 0.25s ease, border-color 0.25s ease; }
.dobra4-stat-box:hover { transform: translateY(-3px); border-color: var(--primary-orange); }
.dobra4-stat-box.accent { background: rgba(242, 107, 9, 0.12); border-color: var(--primary-orange); }
.stat-number { font-family: var(--font-headline); font-size: clamp(1.8rem, 3.8vh, 2.8rem); color: var(--primary-orange); letter-spacing: 1.5px; line-height: 1; margin-bottom: 4px; }
.stat-label { font-family: var(--font-subheadline); font-size: 0.78rem; font-weight: 700; letter-spacing: 1px; color: #E2E8F0; text-transform: uppercase; }

@media (max-width: 768px) {
  .station-dobra4 { padding: 60px 18px; }
  .dobra4-body-grid { flex-direction: column; gap: 20px; }
  .dobra4-text-card { padding: 24px 20px; }
  .dobra4-action { max-width: 100%; }
}

/* ==========================================================================
   DOBRA 5: O CONCEITO - A ESTAÇÃO
   ========================================================================== */
.station-dobra5 {
  position: relative;
  z-index: 50;
  background-color: var(--bg-cream);
  color: var(--text-cream-dark);
  padding: 95px 32px;
  box-shadow: 0 -15px 40px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.dobra5-container {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 75px;
}

.dobra5-carousel-col {
  flex: 1.1;
  width: 100%;
  max-width: 580px;
  position: relative;
  overflow: visible;
}

.carousel-3d-viewport {
  position: relative;
  width: 100%;
  height: 380px;
  perspective: 1000px;
  display: flex;
  align-items: center;
  justify-content: center;
  user-select: none;
  touch-action: pan-y;
  overflow: visible;
}

.carousel-3d-ring {
  width: 190px;
  height: 270px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -135px;
  margin-left: -95px;
  transform-style: preserve-3d;
  will-change: transform;
}

.carousel-3d-card {
  position: absolute;
  top: 0;
  left: 0;
  width: 190px;
  height: 270px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.26);
  border: 2px solid rgba(242, 107, 9, 0.35);
  background: #111;
  backface-visibility: visible;
  transition: filter 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
  cursor: grab;
}

.carousel-3d-card:active {
  cursor: grabbing;
}

.carousel-3d-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.carousel-3d-card.active-3d-card {
  border-color: var(--primary-orange-warm);
  box-shadow: 0 18px 45px rgba(242, 107, 9, 0.45), 0 0 18px rgba(217, 93, 0, 0.3);
  filter: brightness(1.08);
}

.carousel-3d-card.side-3d-card {
  filter: brightness(0.82) opacity(0.88);
}

.carousel-3d-card.back-3d-card {
  filter: brightness(0.48) opacity(0.48);
}

.carousel-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: #1E293B;
  border: none;
  font-size: 1.7rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
  transition: all 0.2s ease;
  z-index: 20;
}

.carousel-nav:hover {
  background: #FFFFFF;
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4);
}

.nav-prev { left: -14px; }
.nav-next { right: -14px; }

.carousel-dots {
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  z-index: 20;
  padding: 5px 10px;
  background: rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(8px);
  border-radius: 20px;
}

.carousel-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  border: none;
  cursor: pointer;
  transition: all 0.25s ease;
}

.carousel-dot.active {
  background: var(--primary-orange);
  transform: scale(1.3);
  width: 16px;
  border-radius: 10px;
}

.dobra5-text-col {
  flex: 1;
  max-width: 540px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-left: 15px;
}

.concept-tagline {
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.2vh, 1.5rem);
  font-weight: 400;
  letter-spacing: 3px;
  color: #71717A;
  text-transform: uppercase;
  margin-bottom: 2px;
}

.concept-main-title {
  font-family: var(--font-headline);
  font-size: clamp(2.6rem, 6.4vh, 4.6rem);
  font-weight: 400;
  line-height: 0.95;
  color: #1A2332;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.concept-subtitle-orange {
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.1vh, 1.5rem);
  font-style: italic;
  font-weight: 600;
  color: var(--primary-orange-warm);
  margin-bottom: 22px;
}

.concept-paragraphs {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.concept-paragraphs p {
  font-family: var(--font-subheadline);
  font-weight: 400;
  font-size: clamp(0.85rem, 1.6vh, 1.02rem);
  line-height: 1.65;
  color: #374151;
}

.concept-highlight-bold {
  font-family: var(--font-subheadline) !important;
  font-weight: 700 !important;
  color: #111827 !important;
  font-size: clamp(0.90rem, 1.7vh, 1.08rem) !important;
}

@media (max-width: 900px) {
  .station-dobra5 { padding: 50px 16px; }
  .dobra5-container { flex-direction: column; gap: 28px; }
  .dobra5-carousel-col { flex: 1; width: 100%; max-width: 100%; }
  .carousel-3d-viewport { height: 320px; }
  .carousel-3d-ring { width: 150px; height: 210px; margin-top: -105px; margin-left: -75px; }
  .carousel-3d-card { width: 150px; height: 210px; }
  .nav-prev { left: -4px; }
  .nav-next { right: -4px; }
  .dobra5-text-col { width: 100%; padding-left: 0; }
  .concept-main-title { font-size: clamp(2.4rem, 8.5vw, 3.4rem); }
  .concept-subtitle-orange { font-size: clamp(1.0rem, 4.2vw, 1.35rem); }
  .concept-paragraphs p { font-size: 0.92rem; line-height: 1.6; }
}

/* ==========================================================================
   DOBRA 6: LINHA DO TEMPO (CARDS INTEGRALMENTE VISÍVEIS SEM CORTES)
   ========================================================================== */
.station-timeline-section {
  position: relative;
  z-index: 60;
  background: radial-gradient(circle at center top, #0A1628 0%, #03070E 100%);
  color: #FFFFFF;
  padding: 100px 24px 140px 24px;
  border-top: 1px solid rgba(242, 107, 9, 0.3);
  box-shadow: 0 -20px 50px rgba(0, 0, 0, 0.95);
  overflow: hidden;
}

.timeline-container {
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 60px;
  overflow: visible;
}

/* CABEÇALHO DA DOBRA 6 */
.timeline-header {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 720px;
  margin: 0 auto;
}

.timeline-tagline {
  font-family: var(--font-subheadline);
  font-size: clamp(0.85rem, 1.8vh, 1.1rem);
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.timeline-title {
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 5.2vh, 3.8rem);
  font-weight: 400;
  letter-spacing: 2px;
  color: #FFFFFF;
  line-height: 1.02;
  text-transform: uppercase;
}

.timeline-subtitle {
  font-family: var(--font-subheadline);
  font-size: clamp(0.92rem, 1.8vh, 1.2rem);
  font-weight: 400;
  line-height: 1.5;
  color: #94A3B8;
}

/* ÁREA DA LINHA DO TEMPO */
.timeline-body-wrapper {
  position: relative;
  width: 100%;
  min-height: 1180px;
  padding: 30px 0;
  overflow: visible;
}

/* TRILHO DO TREM VISTO DE CIMA */
.timeline-track {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 36px;
  background: 
    linear-gradient(90deg, 
      transparent 0px, transparent 4px,
      #475569 4px, #64748B 7px, #334155 8px,
      transparent 8px, transparent 28px,
      #475569 28px, #64748B 31px, #334155 32px,
      transparent 32px, transparent 36px
    ),
    repeating-linear-gradient(180deg,
      #1E293B 0px, #1E293B 6px,
      transparent 6px, transparent 20px
    );
  border-radius: 4px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.8);
  z-index: 20;
  overflow: hidden;
}

/* COMBOIO DE TREM MINIMALISTA CLEAN */
.timeline-locomotive {
  position: absolute;
  left: 50%;
  top: 0px;
  transform: translateX(-50%);
  width: 44px;
  height: 260px;
  z-index: 30;
  will-change: top, transform;
  filter: drop-shadow(0 14px 28px rgba(0, 0, 0, 0.95));
}

.locomotive-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.locomotive-light-beam {
  position: absolute;
  bottom: -45px;
  left: 50%;
  transform: translateX(-50%);
  width: 110px;
  height: 65px;
  background: radial-gradient(ellipse at top, rgba(255, 119, 0, 0.6) 0%, rgba(242, 107, 9, 0.2) 55%, transparent 80%);
  pointer-events: none;
  filter: blur(4px);
}

/* LISTA DOS 5 CARDS */
.timeline-cards-list {
  display: flex;
  flex-direction: column;
  gap: 65px;
  position: relative;
  z-index: 10;
  overflow: visible;
}

.timeline-card-item {
  display: flex;
  width: 100%;
  overflow: visible;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.timeline-card-item.card-left {
  justify-content: flex-start;
  padding-right: calc(50% + 50px);
}

.timeline-card-item.card-right {
  justify-content: flex-end;
  padding-left: calc(50% + 50px);
}

/* CARDS MAIS APAGADOS QUANDO NÃO SELECIONADOS */
.timeline-card-content {
  width: 100%;
  max-width: 460px;
  background: rgba(8, 14, 26, 0.45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  gap: 12px;
  opacity: 0.28;
  filter: grayscale(75%) brightness(0.6);
  transform: scale(0.96);
  transition: all 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
  position: relative;
  overflow: visible;
}

/* CARD ACESO E SELECIONADO QUANDO A LOCOMOTIVA PASSA */
.timeline-card-item.active-card .timeline-card-content {
  opacity: 1.0;
  filter: none;
  background: rgba(20, 32, 54, 0.94);
  border-color: var(--primary-orange);
  box-shadow: 0 0 40px rgba(242, 107, 9, 0.55), 0 16px 42px rgba(0, 0, 0, 0.9);
  transform: scale(1.03);
}

/* BADGE E ÍCONES */
.card-step-badge {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 4px;
}

.step-num {
  font-family: var(--font-headline);
  font-size: 2.5rem;
  line-height: 1;
  color: rgba(255, 255, 255, 0.25);
  letter-spacing: 1px;
  transition: color 0.35s ease, text-shadow 0.35s ease;
}

.timeline-card-item.active-card .step-num {
  color: var(--primary-orange);
  text-shadow: 0 0 18px rgba(242, 107, 9, 0.9);
}

.step-icon-box {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #64748B;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.35s ease;
}

.step-icon-box svg {
  width: 26px;
  height: 26px;
}

.timeline-card-item.active-card .step-icon-box {
  background: var(--primary-orange);
  border-color: var(--primary-orange-bright);
  color: #FFFFFF;
  box-shadow: 0 0 24px rgba(242, 107, 9, 0.9);
}

.card-step-title {
  font-family: var(--font-headline);
  font-size: 1.7rem;
  font-weight: 400;
  letter-spacing: 1.5px;
  color: #94A3B8;
  line-height: 1.05;
  text-transform: uppercase;
  transition: color 0.35s ease;
}

.timeline-card-item.active-card .card-step-title {
  color: #FFFFFF;
}

.card-step-desc {
  font-family: var(--font-subheadline);
  font-size: 0.94rem;
  font-weight: 400;
  line-height: 1.6;
  color: #94A3B8;
  transition: color 0.35s ease;
}

.timeline-card-item.active-card .card-step-desc {
  color: #CBD5E1;
}

/* RESPONSIVIDADE MOBILE DA DOBRA 6 */
@media (max-width: 900px) {
  .station-timeline-section {
    padding: 50px 12px 70px 12px;
  }

  .timeline-container {
    gap: 30px;
  }

  .timeline-body-wrapper {
    padding: 10px 0;
    min-height: auto;
  }

  .timeline-track {
    left: 14px;
    transform: none;
    width: 22px;
    z-index: 20;
  }

  .timeline-locomotive {
    left: 14px;
    transform: translateX(-50%);
    width: 28px;
    height: 175px;
    z-index: 30;
  }

  .locomotive-light-beam {
    width: 60px;
    height: 35px;
    bottom: -24px;
  }

  .timeline-cards-list {
    gap: 22px;
    z-index: 10;
  }

  .timeline-card-item.card-left,
  .timeline-card-item.card-right {
    justify-content: flex-start;
    padding-left: 48px;
    padding-right: 0;
  }

  .timeline-card-content {
    max-width: 100%;
    padding: 14px 15px;
    border-radius: 12px;
    gap: 8px;
  }

  .timeline-card-item.active-card .timeline-card-content {
    transform: none;
  }

  .step-num {
    font-size: 1.5rem;
  }

  .step-icon-box {
    width: 34px;
    height: 34px;
    border-radius: 8px;
  }

  .step-icon-box svg {
    width: 17px;
    height: 17px;
  }

  .card-step-title {
    font-size: 1.15rem;
    letter-spacing: 1px;
  }

  .card-step-desc {
    font-size: 0.80rem;
    line-height: 1.4;
  }
}

/* ==========================================================================
   DOBRA 7: TECNOLOGIA PROPRIETÁRIA (DESIGN EDITORIAL MINIMALISTA & HUMANO)
   ========================================================================== */
.station-dobra7 {
  position: relative;
  z-index: 70;
  background: radial-gradient(circle at center top, #0A1628 0%, #03070E 100%);
  color: #FFFFFF;
  padding: 100px 24px 120px 24px;
  border-top: 1px solid rgba(242, 107, 9, 0.3);
  box-shadow: 0 -20px 50px rgba(0, 0, 0, 0.95);
  overflow: hidden;
}

.dobra7-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 48px;
}

/* HEADER EDITORIAL */
.dobra7-header {
  display: flex;
  flex-direction: column;
  gap: 12px;
  text-align: left;
}

.dobra7-tagline {
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.4vh, 1.8rem);
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra7-title {
  font-family: var(--font-headline);
  font-size: clamp(2.4rem, 5.5vh, 4.2rem);
  font-weight: 400;
  line-height: 1.0;
  letter-spacing: 2px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.dobra7-subtitle {
  font-family: var(--font-subheadline);
  font-size: clamp(1.05rem, 2.1vh, 1.45rem);
  font-weight: 400;
  color: #94A3B8;
  max-width: 820px;
  line-height: 1.45;
}

.dobra7-editorial-text {
  max-width: 920px;
}

.dobra7-editorial-text p {
  font-family: var(--font-subheadline);
  font-size: clamp(1.1rem, 2.3vh, 1.5rem);
  font-weight: 500;
  line-height: 1.55;
  color: #F8FAFC;
}

/* GRID DE FOTOS REAIS */
.dobra7-photos-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
  margin-top: 10px;
}

.system-photo-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.system-photo-wrapper {
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8);
  background: #0B1320;
}

.system-photo-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.system-photo-card:hover .system-photo-wrapper img {
  transform: scale(1.03);
}

.system-photo-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.system-photo-title {
  font-family: var(--font-headline);
  font-size: 1.35rem;
  letter-spacing: 1.5px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.system-photo-desc {
  font-family: var(--font-subheadline);
  font-size: 0.9rem;
  color: #94A3B8;
}

/* FLUXO DA OPERAÇÃO ASSISTIDA (DIAGRAMAÇÃO NOBRE) */
.dobra7-flow-section {
  display: flex;
  flex-direction: column;
  gap: 28px;
  background: rgba(8, 16, 30, 0.75);
  border: 1px solid rgba(242, 107, 9, 0.25);
  border-radius: 18px;
  padding: 40px 32px;
  backdrop-filter: blur(12px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8);
}

.flow-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 6px;
}

.flow-tagline {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.flow-section-title {
  font-family: var(--font-headline);
  font-size: clamp(1.6rem, 3.5vh, 2.4rem);
  letter-spacing: 2px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.flow-track-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
  width: 100%;
}

.flow-card-step {
  background: rgba(15, 27, 48, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  position: relative;
}

.flow-card-step:hover {
  transform: translateY(-4px);
  border-color: var(--primary-orange);
  box-shadow: 0 8px 24px rgba(242, 107, 9, 0.25);
}

.flow-card-step.step-final {
  background: rgba(242, 107, 9, 0.12);
  border-color: var(--primary-orange);
}

.step-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.step-card-num {
  font-family: var(--font-headline);
  font-size: 1.4rem;
  color: var(--primary-orange);
  letter-spacing: 1px;
}

.step-card-arrow {
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.35);
  font-weight: 700;
  transition: color 0.3s ease, transform 0.3s ease;
}

.flow-card-step:hover .step-card-arrow {
  color: var(--primary-orange);
  transform: translateX(3px);
}

.step-card-arrow.check {
  color: var(--primary-orange);
  font-weight: 900;
}

.step-card-title {
  font-family: var(--font-headline);
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 1px;
  color: #FFFFFF;
  line-height: 1.15;
  text-transform: uppercase;
}

/* GRID DOS 4 PILARES (ABAIXO DAS FOTOS DO SISTEMA E DO FLUXO) */
.dobra7-pillars-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.pillar-card {
  background: rgba(11, 24, 46, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 26px 22px;
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6);
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.pillar-card:hover {
  transform: translateY(-4px);
  border-color: var(--primary-orange);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.8), 0 0 20px rgba(242, 107, 9, 0.2);
}

.pillar-title {
  font-family: var(--font-headline);
  font-size: 1.45rem;
  letter-spacing: 1.5px;
  color: var(--primary-orange);
  line-height: 1.05;
  text-transform: uppercase;
}

.pillar-desc {
  font-family: var(--font-subheadline);
  font-size: 0.90rem;
  font-weight: 400;
  line-height: 1.55;
  color: #CBD5E1;
}

/* RESPONSIVIDADE MOBILE */
@media (max-width: 1024px) {
  .flow-track-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .dobra7-pillars-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .station-dobra7 { padding: 60px 18px; }
  .dobra7-container { gap: 32px; }
  .dobra7-photos-grid { grid-template-columns: 1fr; gap: 32px; }
  .dobra7-pillars-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .flow-track-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* ==========================================================================
   DOBRA 8: SIR SUCULENTO — O MASCOTE DA MARCA
   Fundo branco limpo, layout editorial split left-text / right-grid
   ========================================================================== */
.station-dobra8 {
  position: relative;
  z-index: 80;
  background: #FFFFFF;
  color: #1A2332;
  padding: 100px 32px 110px 32px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.dobra8-container {
  max-width: 1240px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 80px;
}

/* COLUNA ESQUERDA: TEXTO */
.dobra8-text-col {
  flex: 1;
  max-width: 480px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.dobra8-overline {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra8-title {
  font-family: var(--font-headline);
  font-size: clamp(3.5rem, 9vh, 6.5rem);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 3px;
  color: #1A2332;
  text-transform: uppercase;
}

.dobra8-italic-sub {
  font-family: var(--font-serif);
  font-size: clamp(1.1rem, 2.2vh, 1.5rem);
  font-style: italic;
  font-weight: 600;
  color: var(--primary-orange-warm);
  line-height: 1.4;
}

/* DIVISOR ORNAMENTAL */
.dobra8-divider {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 4px 0;
}

.divider-line {
  flex: 1;
  height: 1px;
  background: repeating-linear-gradient(
    90deg,
    #C8A882 0px,
    #C8A882 3px,
    transparent 3px,
    transparent 8px
  );
  opacity: 0.7;
}

.divider-star {
  font-size: 0.85rem;
  color: var(--primary-orange);
}

/* PARÁGRAFOS DE COPY */
.dobra8-paragraphs {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.dobra8-paragraphs p {
  font-family: var(--font-subheadline);
  font-size: clamp(0.92rem, 1.7vh, 1.08rem);
  font-weight: 400;
  line-height: 1.7;
  color: #374151;
}

/* TAGS DE APLICAÇÃO */
.dobra8-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

.dobra8-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border: 1px solid #C8A882;
  border-radius: 4px;
  font-family: var(--font-subheadline);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: #4B3832;
  text-transform: uppercase;
  background: transparent;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.dobra8-tag:hover {
  border-color: var(--primary-orange);
  color: var(--primary-orange);
}

/* COLUNA DIREITA: GRADE 2×2 DOS 4 PERSONAGENS */
.dobra8-chars-col {
  flex: 1.1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sir-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  width: 100%;
  max-width: 620px;
}

.sir-card {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0 8px;
  transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.sir-card:hover {
  transform: translateY(-10px) scale(1.04);
  z-index: 2;
}

.sir-card img {
  width: 100%;
  max-width: 220px;
  height: auto;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 16px 32px rgba(0, 0, 0, 0.12));
  transition: filter 0.35s ease;
}

.sir-card:hover img {
  filter: drop-shadow(0 24px 48px rgba(242, 107, 9, 0.22));
}

/* RESPONSIVIDADE */
@media (max-width: 960px) {
  .station-dobra8 { padding: 60px 20px 70px 20px; }
  .dobra8-container { flex-direction: column; gap: 48px; align-items: flex-start; }
  .dobra8-text-col { max-width: 100%; }
  .dobra8-chars-col { width: 100%; justify-content: center; }
  .sir-grid { max-width: 480px; margin: 0 auto; }
}

@media (max-width: 520px) {
  .dobra8-title { font-size: clamp(3.0rem, 14vw, 4.5rem); }
  .sir-grid { gap: 0; max-width: 340px; }
  .sir-card img { max-width: 160px; }
}

/* ==========================================================================
   DOBRA 9: BILHETERIA — VALOR DO INVESTIMENTO
   Fundo creme editorial, tabela escura de custos, big number e badges finais
   ========================================================================== */
.station-dobra9 {
  position: relative;
  z-index: 90;
  background: #F0EAE1;
  color: #1A2332;
  padding: 100px 32px 110px 32px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.dobra9-container {
  max-width: 820px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* CABEÇALHO */
.dobra9-header {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dobra9-overline {
  font-family: var(--font-subheadline);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra9-title-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}

.dobra9-title {
  font-family: var(--font-headline);
  font-size: clamp(3.2rem, 8vh, 5.5rem);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 3px;
  color: #1A2332;
  text-transform: uppercase;
}

/* TAG BILHETE 1ª CLASSE */
.bilhete-tag {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 16px;
  background: #1A2332;
  color: #F0EAE1;
  border-radius: 4px;
  font-family: var(--font-subheadline);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  white-space: nowrap;
  align-self: flex-start;
}

.bilhete-star {
  color: var(--primary-orange);
  font-size: 0.65rem;
}

/* DIVISOR ORNAMENTAL */
.dobra9-divider {
  display: flex;
  align-items: center;
  gap: 14px;
}

.d9-divider-line {
  flex: 1;
  height: 1px;
  background: repeating-linear-gradient(
    90deg,
    #C8A882 0px,
    #C8A882 3px,
    transparent 3px,
    transparent 8px
  );
  opacity: 0.6;
}

.d9-divider-star {
  font-size: 0.8rem;
  color: var(--primary-orange);
}

/* TEXTO INTRO */
.dobra9-intro {
  font-family: var(--font-subheadline);
  font-size: clamp(0.92rem, 1.7vh, 1.1rem);
  font-weight: 400;
  line-height: 1.7;
  color: #374151;
  max-width: 700px;
}

.dobra9-intro strong {
  color: #1A2332;
  font-weight: 700;
}

/* BIG NUMBER */
.dobra9-big-number-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 20px 0 8px 0;
}

.dobra9-big-number {
  font-family: var(--font-headline);
  font-size: clamp(3.5rem, 10vh, 7rem);
  font-weight: 400;
  letter-spacing: 2px;
  color: #1A2332;
  line-height: 1;
}

.dobra9-big-label {
  font-family: var(--font-subheadline);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: #7C6E5E;
  text-transform: uppercase;
}

/* CARD ESCURO DA TABELA */
.dobra9-table-card {
  background: #15213A;
  border-radius: 14px;
  padding: 32px 36px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.04);
}

.invest-table {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* LINHA DA TABELA */
.invest-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.invest-row:last-child {
  border-bottom: none;
}

.invest-item-col {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
  min-width: 0;
}

.invest-item-name {
  font-family: var(--font-subheadline);
  font-size: 0.9rem;
  font-weight: 400;
  color: #E2E8F0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* BARRA PROPORCIONAL LARANJA */
.invest-item-bar {
  display: block;
  height: 2px;
  background: var(--primary-orange);
  border-radius: 2px;
  max-width: 100%;
  opacity: 0.75;
}

.invest-item-value {
  font-family: var(--font-subheadline);
  font-size: 0.9rem;
  font-weight: 700;
  color: #FFFFFF;
  white-space: nowrap;
  flex-shrink: 0;
}

/* LINHA TOTAL */
.invest-total-row {
  padding-top: 18px !important;
  padding-bottom: 4px !important;
  border-bottom: none !important;
  margin-top: 6px;
}

.invest-total-label {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 2px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.invest-total-value {
  font-family: var(--font-headline);
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 1px;
  color: var(--primary-orange);
}

/* BADGES DE DESTAQUE */
.dobra9-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 8px;
}

.bilhete-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 28px;
  background: #1A2332;
  border-radius: 6px;
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #FFFFFF;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.bilhete-badge:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
}

.badge-value {
  color: var(--primary-orange);
  font-family: var(--font-headline);
  font-size: 1.05rem;
  letter-spacing: 1px;
}

.badge-dot {
  color: rgba(255, 255, 255, 0.35);
  font-size: 1.1rem;
}

.badge-label {
  color: #94A3B8;
}

/* RESPONSIVIDADE */
@media (max-width: 700px) {
  .station-dobra9 { padding: 60px 16px 70px 16px; }
  .dobra9-container { gap: 22px; }
  .dobra9-title-row { flex-direction: column; align-items: flex-start; gap: 10px; }
  .dobra9-table-card { padding: 20px 18px; }
  .invest-row { gap: 10px; }
  .invest-item-name { font-size: 0.82rem; }
  .invest-item-value { font-size: 0.82rem; }
  .dobra9-big-number { font-size: clamp(2.8rem, 11vw, 4rem); }
  .bilhete-badge { padding: 12px 18px; }
}

/* ==========================================================================
   BANNER FOTO SALÃO (FULL BLEED)
   ========================================================================== */
.salao-banner {
  position: relative;
  width: 100%;
  height: clamp(320px, 55vw, 680px);
  overflow: hidden;
  display: block;
  z-index: 91;
}

.salao-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
  display: block;
  transition: transform 0.6s ease;
}

.salao-banner:hover img {
  transform: scale(1.02);
}

/* Gradiente de transição em baixo para fundir com o fundo escuro da Dobra 10 */
.salao-banner-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 45%;
  background: linear-gradient(to bottom, transparent 0%, #030810 100%);
  pointer-events: none;
}

/* ==========================================================================
   DOBRA 10: CABINE — NÚMEROS DA OPERAÇÃO
   Fundo escuro, 3 big metrics, dois cards salão+delivery
   ========================================================================== */
.station-dobra10 {
  position: relative;
  z-index: 92;
  background: #030810;
  color: #FFFFFF;
  padding: 80px 32px 110px 32px;
  overflow: hidden;
}

.dobra10-container {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 36px;
}

/* CABEÇALHO */
.dobra10-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}

.dobra10-overline {
  font-family: var(--font-subheadline);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra10-title {
  font-family: var(--font-headline);
  font-size: clamp(3.8rem, 10vh, 7rem);
  font-weight: 400;
  line-height: 0.88;
  letter-spacing: 3px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.dobra10-italic-sub {
  font-family: var(--font-serif);
  font-size: clamp(1.05rem, 2.2vh, 1.45rem);
  font-style: italic;
  font-weight: 600;
  color: var(--primary-orange-warm);
  line-height: 1.4;
  max-width: 560px;
  text-align: center;
}

/* DIVISOR ORNAMENTAL */
.dobra10-divider {
  display: flex;
  align-items: center;
  gap: 14px;
  max-width: 600px;
  width: 100%;
  align-self: center;
}

.d10-divider-line {
  flex: 1;
  height: 1px;
  background: repeating-linear-gradient(
    90deg,
    rgba(242, 107, 9, 0.4) 0px,
    rgba(242, 107, 9, 0.4) 3px,
    transparent 3px,
    transparent 8px
  );
}

.d10-divider-star {
  font-size: 0.8rem;
  color: var(--primary-orange);
}

/* 3 BIG METRICS */
.dobra10-metrics {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 20px 0;
}

.dobra10-metric {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center;
  padding: 24px 20px;
}

.d10-metric-value {
  font-family: var(--font-headline);
  font-size: clamp(2.0rem, 5vh, 3.4rem);
  font-weight: 400;
  letter-spacing: 1.5px;
  color: #FFFFFF;
  line-height: 1;
}

.d10-metric-label {
  font-family: var(--font-subheadline);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

/* SEPARADORES VERTICAIS ENTRE MÉTRICAS */
.dobra10-metric-sep {
  width: 1px;
  height: 60px;
  background: rgba(255, 255, 255, 0.1);
  flex-shrink: 0;
}

/* LABEL MODELO DE RECEITA */
.dobra10-model-label {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #94A3B8;
  padding-bottom: 4px;
}

.model-label-bold {
  color: #FFFFFF;
  font-weight: 800;
}

.model-label-sep {
  color: var(--primary-orange);
  font-weight: 400;
}

.model-label-sub {
  color: #94A3B8;
}

/* DOIS CARDS SALÃO & DELIVERY */
.dobra10-channels {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.channel-card {
  background: rgba(10, 22, 42, 0.9);
  border: 1px solid rgba(242, 107, 9, 0.3);
  border-radius: 10px;
  padding: 28px 28px 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.channel-card:hover {
  border-color: var(--primary-orange);
  box-shadow: 0 0 28px rgba(242, 107, 9, 0.2);
  transform: translateY(-3px);
}

.channel-title {
  font-family: var(--font-headline);
  font-size: 1.5rem;
  letter-spacing: 2px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.channel-desc {
  font-family: var(--font-subheadline);
  font-size: 0.94rem;
  font-weight: 400;
  line-height: 1.65;
  color: #CBD5E1;
}

/* RESPONSIVIDADE */
@media (max-width: 700px) {
  .salao-banner { height: clamp(220px, 65vw, 400px); }
  .station-dobra10 { padding: 50px 16px 70px 16px; }
  .dobra10-container { gap: 24px; }
  .dobra10-metrics { flex-direction: column; gap: 0; }
  .dobra10-metric-sep { width: 80px; height: 1px; }
  .d10-metric-value { font-size: clamp(2.0rem, 8vw, 2.6rem); }
  .dobra10-channels { grid-template-columns: 1fr; gap: 14px; }
  .channel-card { padding: 20px 18px 24px 18px; }
}

/* ==========================================================================
   MANÔMETROS DE PRESSÃO — DOBRA 10 CABINE
   ========================================================================== */
.dobra10-gauges {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  padding: 16px 0 24px 0;
  align-items: start;
}

.gauge-metric-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.gauge-wrapper {
  width: 100%;
  max-width: 200px;
  margin: 0 auto;
  position: relative;
  filter: drop-shadow(0 12px 28px rgba(0, 0, 0, 0.85));
  transition: filter 0.3s ease, transform 0.3s ease;
}

.gauge-wrapper:hover {
  filter: drop-shadow(0 16px 36px rgba(242, 107, 9, 0.35)) drop-shadow(0 8px 20px rgba(0,0,0,0.8));
  transform: translateY(-4px);
}

.pressure-gauge-svg {
  width: 100%;
  height: auto;
  display: block;
}

/* VALOR E LABEL ABAIXO DO GAUGE */
.gauge-metric-card .d10-metric-value {
  font-family: var(--font-headline);
  font-size: clamp(2.2rem, 5vh, 3.6rem);
  font-weight: 400;
  letter-spacing: 1.5px;
  color: #FFFFFF;
  line-height: 1;
  margin-top: 4px;
}

.gauge-metric-card .d10-metric-label {
  font-family: var(--font-subheadline);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: var(--primary-orange);
  text-transform: uppercase;
  margin-top: 2px;
}

/* RESPONSIVIDADE DOS GAUGES */
@media (max-width: 800px) {
  .dobra10-gauges {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .gauge-wrapper { max-width: 140px; }
  .gauge-metric-card .d10-metric-value { font-size: clamp(1.1rem, 4vw, 1.5rem); }
}

@media (max-width: 500px) {
  .dobra10-gauges {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .gauge-wrapper { max-width: 180px; }
}

/* ==========================================================================
   DOBRA 11: A JORNADA DO PAYBACK
   Split azul navy | imagem hero como elemento real, centralizado pelo meio
   ========================================================================== */
.station-dobra11 {
  position: relative;
  z-index: 100;
  background: #0A1628;
  overflow: hidden;
}

/* GRID SPLIT: texto esquerda / imagem direita */
.dobra11-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;          /* ambas as colunas alinhadas pelo meio vertical */
  min-height: 80vh;
}

/* COLUNA ESQUERDA: TEXTO + TIMELINE */
.dobra11-text-side {
  display: flex;
  align-items: center;          /* centraliza o inner container verticalmente */
  justify-content: flex-end;    /* empurra o conteúdo para a direita (borda com a imagem) */
  padding: 80px 56px 80px 60px;
  background: #0A1628;
}

/* Wrapper interno para limitar largura do conteúdo */
.dobra11-inner {
  width: 100%;
  max-width: 440px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}

/* COLUNA DIREITA: HERO IMAGE */
.dobra11-hero-side {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 48px 40px 24px;
}

.dobra11-hero-side img {
  display: block;
  width: 100%;
  max-width: 520px;
  height: auto;                 /* proporção natural — sem crop, sem stretch */
  filter: drop-shadow(0 24px 48px rgba(0, 0, 0, 0.5));
  transition: transform 0.5s ease;
}

.dobra11-hero-side:hover img {
  transform: translateY(-6px);
}

/* FASES DA TIMELINE */
.payback-phase {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* CADA CARD DA TIMELINE */
.payback-stop {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 18px 22px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.07);
  transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.payback-stop:hover {
  transform: translateX(4px);
  background: rgba(255, 255, 255, 0.07);
}

.payback-stop.negative {
  border-color: rgba(255, 255, 255, 0.07);
}

.payback-stop.positive {
  border-color: rgba(34, 197, 94, 0.2);
}

.payback-stop.highlight {
  background: rgba(10, 35, 20, 0.6);
  border-color: rgba(34, 197, 94, 0.45);
  box-shadow: 0 0 28px rgba(34, 197, 94, 0.12);
}

/* RÓTULO DO MÊS */
.payback-mes {
  font-family: var(--font-subheadline);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: #64748B;
  text-transform: uppercase;
}

/* VALOR GRANDE */
.payback-value {
  font-family: var(--font-headline);
  font-size: clamp(1.5rem, 3.5vh, 2.6rem);
  font-weight: 400;
  letter-spacing: 1.5px;
  line-height: 1;
}

.negative-val {
  color: #CBD5E1;
}

.positive-val {
  color: #22C55E;
}

.positive-val.big {
  font-size: clamp(2rem, 4.5vh, 3.4rem);
  text-shadow: 0 0 20px rgba(34, 197, 94, 0.55);
}

/* DESCRIÇÃO ITÁLICA */
.payback-desc {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(0.8rem, 1.4vh, 0.96rem);
  font-weight: 400;
  color: #64748B;
  line-height: 1.4;
  margin-top: 2px;
}

/* BADGE PAYBACK ROW */
.payback-badge-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 4px 0;
}

.pb-line {
  flex: 1;
  height: 1px;
  background: repeating-linear-gradient(
    90deg,
    var(--primary-orange) 0px,
    var(--primary-orange) 4px,
    transparent 4px,
    transparent 10px
  );
  opacity: 0.45;
}

.payback-badge-main {
  font-family: var(--font-headline);
  font-size: 1.05rem;
  font-weight: 400;
  letter-spacing: 3px;
  color: #000000;
  background: var(--primary-orange);
  padding: 9px 20px;
  border-radius: 4px;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 0 24px rgba(242, 107, 9, 0.65);
  flex-shrink: 0;
}

/* RESPONSIVIDADE */
@media (max-width: 900px) {
  .dobra11-split {
    grid-template-columns: 1fr;
    min-height: auto;
    align-items: start;
  }
  .dobra11-text-side {
    justify-content: flex-start;
    padding: 60px 24px 40px 24px;
    order: 2;
  }
  .dobra11-hero-side {
    justify-content: center;
    padding: 48px 24px 24px 24px;
    order: 1;
  }
  .dobra11-inner { max-width: 100%; }
  .dobra11-hero-side img { max-width: 420px; }
}

@media (max-width: 480px) {
  .dobra11-hero-side img { max-width: 100%; }
  .payback-stop { padding: 14px 16px; }
}

/* ==========================================================================
   DOBRA 12: SUPORTE DA FRANQUEADORA (LAYOUT 1 COLUNA CENTRALIZADA)
   Header -> Foto hero 3 (abaixo da head) -> Grade 8 itens -> Botão CTA
   ========================================================================== */
.station-dobra12 {
  position: relative;
  z-index: 110;
  background: #0A1628;
  padding: 100px 24px 110px 24px;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.dobra12-container {
  max-width: 860px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 36px;
}

/* HEADER CENTRALIZADO */
.dobra12-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  max-width: 780px;
  width: 100%;
}

.dobra12-overline {
  font-family: var(--font-subheadline);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra12-title {
  font-family: var(--font-headline);
  font-size: clamp(2.8rem, 7vh, 5.2rem);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: 2px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.dobra12-subtitle {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(1.05rem, 2.2vh, 1.45rem);
  font-weight: 600;
  color: var(--primary-orange-warm);
  line-height: 1.4;
}

.dobra12-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  max-width: 480px;
  margin-top: 4px;
}

.d12-line {
  flex: 1;
  height: 1px;
  background: repeating-linear-gradient(
    90deg,
    rgba(242, 107, 9, 0.4) 0px,
    rgba(242, 107, 9, 0.4) 3px,
    transparent 3px,
    transparent 8px
  );
}

.d12-star {
  font-size: 0.75rem;
  color: var(--primary-orange);
}

/* FOTO HERO 3 (ABAIXO DA HEAD) */
.dobra12-hero-img-block {
  width: 100%;
  max-width: 720px;
  display: flex;
  justify-content: center;
  margin: 4px 0;
}

.dobra12-hero-img {
  width: 100%;
  max-width: 680px;
  height: auto;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 20px 48px rgba(0, 0, 0, 0.65));
  transition: transform 0.4s ease, filter 0.4s ease;
  border-radius: 12px;
}

.dobra12-hero-img:hover {
  transform: translateY(-4px) scale(1.01);
  filter: drop-shadow(0 28px 56px rgba(242, 107, 9, 0.25));
}

/* GRADE DE 8 ITENS CENTRALIZADA */
.dobra12-items-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  width: 100%;
  max-width: 820px;
}

.dobra12-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  text-align: left;
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

.dobra12-item:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(242, 107, 9, 0.4);
  transform: translateY(-2px);
}

.item-title {
  font-family: var(--font-subheadline);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 1px;
  color: var(--primary-orange);
  text-transform: uppercase;
  line-height: 1.3;
}

.item-sub {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  font-weight: 400;
  color: #94A3B8;
  line-height: 1.4;
}

/* BOTÃO DE AÇÃO CENTRALIZADO */
.dobra12-actions {
  width: 100%;
  max-width: 480px;
  margin-top: 8px;
}

.dobra12-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 18px 32px;
  background: var(--primary-orange);
  color: #FFFFFF;
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.4vh, 1.5rem);
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 6px;
  box-shadow: 0 8px 25px rgba(242, 107, 9, 0.45);
  transition: all 0.3s ease;
}

.dobra12-btn:hover {
  background: var(--primary-orange-bright);
  box-shadow: 0 12px 32px rgba(242, 107, 9, 0.7);
  transform: translateY(-2px);
}

/* RESPONSIVIDADE */
@media (max-width: 768px) {
  .station-dobra12 { padding: 60px 16px 70px 16px; }
  .dobra12-container { gap: 28px; }
  .dobra12-title { font-size: clamp(2.2rem, 9vw, 3.4rem); }
  .dobra12-items-grid { grid-template-columns: 1fr; gap: 10px; }
  .dobra12-actions { max-width: 100%; }
}

/* ==========================================================================
   Dobra 13: Formulário de Cadastro de Franquia
   ========================================================================== */
.station-dobra13 {
  position: relative;
  z-index: 110;
  background: #050B16;
  padding: 100px 24px 110px 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.dobra13-container {
  max-width: 560px;
  margin: 0 auto;
}

.dobra13-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  margin-bottom: 36px;
}

.dobra13-overline {
  font-family: var(--font-subheadline);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--primary-orange);
  text-transform: uppercase;
}

.dobra13-title {
  font-family: var(--font-headline);
  font-size: clamp(2rem, 5vw, 2.8rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: 1px;
  color: #FFFFFF;
  text-transform: uppercase;
}

.dobra13-invest-highlight {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(242, 107, 9, 0.16);
  border: 1.5px solid var(--primary-orange);
  color: #FFFFFF;
  padding: 8px 24px;
  border-radius: 50px;
  font-family: var(--font-subheadline);
  font-size: clamp(0.92rem, 2.2vw, 1.15rem);
  font-weight: 700;
  letter-spacing: 1px;
  box-shadow: 0 0 25px rgba(242, 107, 9, 0.35);
  margin-top: 6px;
  margin-bottom: 4px;
}

.dobra13-subtitle {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(1rem, 2vh, 1.2rem);
  color: #94A3B8;
  line-height: 1.5;
  max-width: 440px;
}

.dobra13-form {
  display: flex;
  flex-direction: column;
}

.dobra13-form .field-group {
  margin-bottom: 16px;
}

.dobra13-form .field-group label {
  display: block;
  font-family: var(--font-subheadline);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: #FFFFFF;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.dobra13-form .field-group input[type="text"],
.dobra13-form .field-group input[type="email"],
.dobra13-form .field-group input[type="tel"],
.dobra13-form .field-group select {
  width: 100%;
  min-height: 46px;
  padding: 10px 14px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(242, 107, 9, 0.4);
  border-radius: 6px;
  font-family: var(--font-subheadline);
  font-size: 15px;
  color: #FFFFFF;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.dobra13-form .field-group input::placeholder {
  color: #64748B;
}

.dobra13-form .field-group input:focus,
.dobra13-form .field-group select:focus {
  border-color: var(--primary-orange);
  box-shadow: 0 0 0 2px rgba(242, 107, 9, 0.25);
}

.dobra13-form .field-group select option {
  background: #0A1628;
  color: #FFFFFF;
}

.dobra13-form .flex-fields {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 12px;
}

.dobra13-form .checkbox-group {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 6px;
  margin-bottom: 24px;
}

.dobra13-form .checkbox-group input {
  margin-top: 3px;
  width: 18px;
  height: 18px;
  accent-color: var(--primary-orange);
  cursor: pointer;
}

.dobra13-form .checkbox-group label {
  font-family: var(--font-subheadline);
  font-size: 0.78rem;
  color: #94A3B8;
  line-height: 1.4;
  cursor: pointer;
}

.dobra13-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 56px;
  padding: 14px 32px;
  background: var(--primary-orange);
  color: #FFFFFF;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-family: var(--font-headline);
  font-size: clamp(1.1rem, 2.4vh, 1.5rem);
  letter-spacing: 2px;
  text-transform: uppercase;
  box-shadow: 0 8px 25px rgba(242, 107, 9, 0.45);
  transition: all 0.3s ease;
}

.dobra13-btn:hover {
  background: var(--primary-orange-bright);
  box-shadow: 0 12px 32px rgba(242, 107, 9, 0.7);
  transform: translateY(-2px);
}

.dobra13-btn:disabled {
  opacity: 0.7;
  cursor: wait;
}

.msg-feedback {
  padding: 14px 18px;
  margin-top: 18px;
  border-radius: 6px;
  font-family: var(--font-subheadline);
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
  display: none;
}

.msg-feedback.error {
  background: rgba(229, 62, 62, 0.1);
  border: 1px solid #E53E3E;
  color: #FC8181;
}

.msg-feedback.success {
  background: rgba(56, 161, 105, 0.1);
  border: 1px solid #38A169;
  color: #68D391;
}

.hp-field {
  display: none !important;
}

@media (max-width: 480px) {
  .dobra13-form .flex-fields { grid-template-columns: 1fr; }
}

/* ==========================================================================
   VERSÃO CURTA — OVERRIDES & OTIMIZAÇÕES DE ALTA PERFORMANCE (franquiaCurto)
   ========================================================================== */

/* 1. HERO ESTÁTICO DE 100VH */
.train-experience-static {
  height: 100vh;
  min-height: 580px;
  max-height: 1080px;
  position: relative;
  overflow: hidden;
  background: #000000;
}

.train-experience-static .train-stage {
  position: relative;
  top: 0;
  width: 100%;
  height: 100%;
}

/* Fundo em Movimento Otimizado (Escurecido e suave para não cansar a vista) */
.bg-motion-strip {
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  height: 100%;
  display: flex;
  will-change: transform;
  transform: translate3d(0, 0, 0);
  filter: brightness(0.22);
}

.bg-motion-strip img {
  width: 50%;
  height: 100%;
  object-fit: cover;
  flex-shrink: 0;
}

/* 2. PORTAS FECHADAS NO FUNDO (CRIAM FUNDO SÓLIDO PARA O TEXTO) */
.doors-wrapper.curto-closed {
  filter: brightness(0.75);
}

.doors-wrapper.curto-closed .door-left {
  transform: translateX(0) !important;
}
.doors-wrapper.curto-closed .door-right {
  transform: translateX(0) !important;
}

/* LOGO DO TOPO ILUMINADA EM LARANJA VIBRANTE */
.top-seal-logo {
  width: clamp(80px, 13.5vh, 145px) !important;
  height: auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
  filter: drop-shadow(0 0 25px rgba(242, 107, 9, 0.95)) drop-shadow(0 0 8px rgba(255, 119, 0, 0.9)) !important;
}

/* 3. CONTEÚDO UNIFICADO PERFEITAMENTE ENCAIXADO NO VÃO DAS PORTAS */
.station-reveal-content.curto-unified {
  position: absolute !important;
  z-index: 5 !important;
  top: 22.0% !important;
  bottom: 33.5% !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 19.5% !important;
  min-width: 275px !important;
  max-width: 360px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  text-align: center !important;
  padding: 0 !important;
}

.curto-hero-unified-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.7vh;
  width: 100%;
}

.curto-header-titles {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}

.curto-header-titles .hero-main-title {
  font-family: var(--font-headline);
  font-size: clamp(1.45rem, 4.0vh, 2.7rem);
  line-height: 0.92;
  letter-spacing: 2px;
  color: #FFFFFF;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.98), 0 0 10px rgba(0, 0, 0, 0.9);
  margin: 0;
}

.curto-header-titles .hero-sub-title {
  font-family: var(--font-subheadline);
  font-size: clamp(0.70rem, 1.55vh, 1.05rem);
  color: var(--primary-orange);
  font-weight: 700;
  letter-spacing: 0.8px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.95);
  margin: 0;
}

.curto-divider-line {
  width: 70%;
  height: 1.5px;
  background: linear-gradient(90deg, transparent, rgba(242, 107, 9, 0.85), transparent);
  margin: 0.3vh auto;
}

.curto-highlight-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}

.curto-highlight-header .reveal-main-title {
  font-family: var(--font-headline);
  font-size: clamp(1.25rem, 3.2vh, 2.2rem);
  line-height: 0.92;
  color: #FFFFFF;
  letter-spacing: 1.6px;
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.98);
  margin: 0;
}

.curto-highlight-header .reveal-paragraph-1line {
  font-family: var(--font-subheadline);
  font-size: clamp(0.60rem, 1.3vh, 0.90rem);
  color: #F8FAFC;
  font-weight: 600;
  line-height: 1.25;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.95);
  margin: 0;
}

.curto-unified .metrics-single-column {
  display: flex;
  flex-direction: column;
  gap: 0.5vh;
  width: 100%;
  margin-top: 0.3vh;
}

.curto-unified .metric-card-stacked {
  padding: 0.7vh 1.2vh;
  min-height: auto;
  border-radius: 5px;
  background: rgba(14, 8, 4, 0.95);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.85);
}

.curto-unified .metric-val {
  font-size: clamp(1.05rem, 2.3vh, 1.65rem);
  line-height: 1;
  letter-spacing: 0.8px;
}

.curto-unified .metric-lbl {
  font-size: clamp(0.62rem, 1.25vh, 0.92rem);
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.6px;
}

/* Card de lucro projetado com destaque laranja */
.metric-card-stacked.curto-highlight {
  border: 1px solid var(--primary-orange) !important;
  background: rgba(242, 107, 9, 0.20) !important;
  box-shadow: 0 0 14px rgba(242, 107, 9, 0.40) !important;
}

/* 4. OTIMIZAÇÕES DA DOBRA 6 (TIMELINE / ZERO TRAVAMENTOS NO SCROLL) */
.timeline-locomotive {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate3d(-50%, 0, 0);
  will-change: transform;
}

.timeline-card-content {
  transition: opacity 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  filter: none !important;
}

/* 5. MODAL POP-UP PÓS-CONVERSÃO */
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(8px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

.modal-overlay.active {
  opacity: 1;
  pointer-events: auto;
}

.modal-card {
  width: 100%;
  max-width: 520px;
  background: #0F172A;
  border: 2px solid var(--primary-orange);
  border-radius: 20px;
  padding: 36px 28px;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.95), 0 0 40px rgba(242, 107, 9, 0.4);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
  transform: scale(0.9);
  transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.modal-overlay.active .modal-card {
  transform: scale(1);
}

.modal-icon-badge {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(242, 107, 9, 0.15);
  border: 2px solid var(--primary-orange);
  color: var(--primary-orange);
  font-size: 36px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 25px rgba(242, 107, 9, 0.5);
}

.modal-title {
  font-family: var(--font-headline);
  font-size: clamp(1.5rem, 4vw, 2.1rem);
  color: #FFFFFF;
  letter-spacing: 1.5px;
  line-height: 1.1;
}

.modal-desc {
  font-family: var(--font-subheadline);
  font-size: clamp(0.9rem, 2vw, 1.05rem);
  color: #CBD5E1;
  line-height: 1.5;
}

.modal-action-box {
  width: 100%;
  margin-top: 10px;
}

.modal-btn-cta {
  width: 100%;
  padding: 16px 20px;
  background: var(--primary-orange);
  color: #FFFFFF;
  border: none;
  border-radius: 10px;
  font-family: var(--font-headline);
  font-size: clamp(1.05rem, 2.5vw, 1.3rem);
  letter-spacing: 1.5px;
  cursor: pointer;
  box-shadow: 0 10px 30px rgba(242, 107, 9, 0.5);
  transition: all 0.25s ease;
}

.modal-btn-cta:hover {
  background: var(--primary-orange-bright);
  box-shadow: 0 14px 35px rgba(242, 107, 9, 0.75);
  transform: translateY(-2px);
}

/* 6. SEÇÃO DE VÍDEO STANDALONE */
.video-standalone-section {
  width: 100%;
  padding: 80px 20px;
  background: #050811;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
}


