.elementor-19315 .elementor-element.elementor-element-67b01eb{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-2d1e82a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-28f9290{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-75ad1a72{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-75ad1a72:not(.elementor-motion-effects-element-type-background), .elementor-19315 .elementor-element.elementor-element-75ad1a72 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a{--e-image-carousel-slides-to-show:4;width:var( --container-widget-width, 69% );max-width:69%;--container-widget-width:69%;--container-widget-flex-grow:0;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a > .elementor-widget-container{padding:30px 0px 0px 0px;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a.elementor-element{--align-self:center;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-radius:10px 10px 10px 10px;}.elementor-19315 .elementor-element.elementor-element-9c6399d{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-19315 .elementor-element.elementor-element-5b2f4bd3 > .elementor-widget-container{border-radius:17px 17px 17px 17px;}.elementor-19315 .elementor-element.elementor-element-5b2f4bd3 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-19315 .elementor-element.elementor-element-e62c9e3 > .elementor-widget-container{border-radius:17px 17px 17px 17px;}.elementor-19315 .elementor-element.elementor-element-e62c9e3 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-19315 .elementor-element.elementor-element-57be1507 > .elementor-widget-container{border-radius:17px 17px 17px 17px;}.elementor-19315 .elementor-element.elementor-element-57be1507 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-19315 .elementor-element.elementor-element-3d4a7dac{--e-image-carousel-slides-to-show:4;width:var( --container-widget-width, 69% );max-width:69%;--container-widget-width:69%;--container-widget-flex-grow:0;}.elementor-19315 .elementor-element.elementor-element-3d4a7dac > .elementor-widget-container{padding:0px 0px 63px 0px;}.elementor-19315 .elementor-element.elementor-element-3d4a7dac .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-radius:12px 12px 12px 12px;}.elementor-19315 .elementor-element.elementor-element-da01b4d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-d28b748{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-9b25acd{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-8001bef{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-96b9710{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-96b9710:not(.elementor-motion-effects-element-type-background), .elementor-19315 .elementor-element.elementor-element-96b9710 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f4faf6;}.elementor-19315 .elementor-element.elementor-element-c5a1a4e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-7d94af2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19315 .elementor-element.elementor-element-54d809e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-19315 .elementor-element.elementor-element-9c6399d{--width:70%;}}@media(max-width:1024px){.elementor-19315 .elementor-element.elementor-element-75ad1a72{--padding-top:80px;--padding-bottom:80px;--padding-left:40px;--padding-right:40px;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a{--e-image-carousel-slides-to-show:3;}.elementor-19315 .elementor-element.elementor-element-9c6399d{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-19315 .elementor-element.elementor-element-75ad1a72{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:024px;--padding-right:024px;}.elementor-19315 .elementor-element.elementor-element-1fc1ae6a{--e-image-carousel-slides-to-show:2;--container-widget-width:400px;--container-widget-flex-grow:0;width:var( --container-widget-width, 400px );max-width:400px;}.elementor-19315 .elementor-element.elementor-element-9c6399d{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for image-carousel, class: .elementor-element-1fc1ae6a */.elementor-19315 .elementor-element.elementor-element-1fc1ae6a::before {
    content:"";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 999;
    background: linear-gradient(90deg, #FFFFFF, transparent 15%, transparent 85%, #FFFFFF 100%); /*mude os #000000 para a mesma cor do fundo da seção*/
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS *//* === Reiki Online Brasil — Landing VSL === */

:root {
  --green-900: #0f3020;
  --green-800: #1A4A2A;
  --green-700: #245838;
  --green-500: #2E7D4F;
  --green-400: #3a9460;
  --green-50: #E8F5E9;
  --gold-600: #b17d28;
  --gold-500: #C9923A;
  --gold-400: #d9a964;
  --gold-100: #f2e2c2;
  --cream: #F8F4EF;
  --cream-dark: #efe7da;
  --ink: #1C1C1C;
  --ink-70: rgba(28, 28, 28, 0.72);
  --ink-50: rgba(28, 28, 28, 0.5);
  --white: #FFFFFF;
  --white-80: rgba(255, 255, 255, 0.8);
  --white-60: rgba(255, 255, 255, 0.6);
  --white-20: rgba(255, 255, 255, 0.2);
  --white-10: rgba(255, 255, 255, 0.1);
  --font-serif: "Lora", "Playfair Display", Georgia, serif;
  --font-sans: "DM Sans", "Inter", -apple-system, system-ui, sans-serif;
  --shadow-card: 0 2px 12px rgba(15, 48, 32, 0.06), 0 12px 40px rgba(15, 48, 32, 0.08);
  --shadow-gold: 0 18px 40px rgba(201, 146, 58, 0.18);
  --shadow-btn: 0 10px 24px rgba(46, 125, 79, 0.35);
  --maxw: 1180px;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
}

.e-con, .e-con-inner { padding: 0 !important; margin: 0 !important; }

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-sans) !important;
  color: var(--ink) !important;
  background: var(--cream) !important;
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
  font-size: 17px;
}

h1, h2, h3, h4 { font-family: var(--font-serif) !important; font-weight: 600; line-height: 1.15; letter-spacing: -0.01em; }
p { text-wrap: pretty; }

/* ==== Top bar ==== */
.topbar {
  position: sticky; top: 0; z-index: 50;
  background: rgba(26, 74, 42, 0.96);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--white-10);
}
.topbar__inner {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 14px 28px;
  display: flex; align-items: center; justify-content: space-between;
}
.brand {
  display: flex; align-items: center; gap: 12px;
  color: var(--white); text-decoration: none;
}
.brand__mark {
  width: 38px; height: 38px; border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, var(--gold-400), var(--gold-600));
  display: grid; place-items: center;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.2);
  flex-shrink: 0;
}
.brand__mark svg { width: 22px; height: 22px; }
.brand__name { font-family: var(--font-serif) !important; font-size: 18px; letter-spacing: 0.02em; }
.brand__name small { display: block; font-family: var(--font-sans) !important; font-size: 10px; letter-spacing: 0.25em; color: var(--white-60); text-transform: uppercase; margin-top: 2px; }
.topbar__cta {
  background: var(--gold-500); color: var(--green-900);
  padding: 10px 18px; border-radius: 999px;
  font-weight: 700; text-decoration: none; font-size: 14px;
  letter-spacing: 0.02em;
  transition: transform .2s ease, background .2s ease;
}
.topbar__cta:hover { background: var(--gold-400); transform: translateY(-1px); }

/* ==== Buttons ==== */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  border: none; cursor: pointer; text-decoration: none;
  font-family: var(--font-sans) !important; font-weight: 700;
  letter-spacing: 0.02em; border-radius: 999px;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.btn--primary {
  background: var(--green-500); color: var(--white);
  padding: 18px 32px; font-size: 17px;
  box-shadow: var(--shadow-btn);
}
.btn--primary:hover { background: var(--green-400); transform: translateY(-2px); }
.btn--xl { padding: 22px 44px; font-size: 19px; }
.btn--gold { background: var(--gold-500); color: var(--green-900); }
.btn--gold:hover { background: var(--gold-400); }
.btn--outline {
  background: transparent; color: var(--white);
  border: 1.5px solid var(--white-60); padding: 16px 28px;
}
.btn--outline:hover { border-color: var(--white); background: rgba(255,255,255,0.05); }
.btn__arrow { transition: transform .2s ease; }
.btn:hover .btn__arrow { transform: translateX(3px); }

/* ==== Section base ==== */
.section { padding: 110px 28px; }
.section__inner { max-width: var(--maxw); margin: 0 auto; }
.eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 12px; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--gold-500);
  margin-bottom: 18px; font-weight: 600;
}
.eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--gold-500); }
.eyebrow--center { justify-content: center; }
h2.section-title { font-size: 46px; max-width: 820px; margin-bottom: 20px; }
h2.section-title.center { margin-left: auto; margin-right: auto; text-align: center; }
.section-lede { font-size: 18px; color: var(--ink-70); max-width: 680px; }
.section-lede.center { margin: 0 auto; text-align: center; }
.on-dark .section-lede { color: var(--white-80); }
.on-dark h2.section-title, .on-dark h3, .on-dark h4 { color: var(--white); }

/* ==== Hero ==== */
.hero {
  position: relative; overflow: hidden;
  background: var(--green-800);
  color: var(--white);
  padding: 60px 28px 110px;
}
.hero__bg {
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse at 80% 10%, rgba(201, 146, 58, 0.15), transparent 50%),
    radial-gradient(ellipse at 10% 90%, rgba(46, 125, 79, 0.35), transparent 50%);
}
.hero__leaves {
  position: absolute; inset: 0; opacity: 0.08; pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400' viewBox='0 0 400 400'><g fill='none' stroke='%23ffffff' stroke-width='0.8' opacity='0.9'><path d='M50 380 Q70 200 90 20'/><path d='M58 380 Q78 200 98 20'/><path d='M120 380 Q140 200 160 20'/><path d='M128 380 Q148 200 168 20'/><path d='M210 380 Q230 200 250 20'/><path d='M218 380 Q238 200 258 20'/><path d='M310 380 Q330 200 350 20'/><path d='M318 380 Q338 200 358 20'/><g stroke-width='0.4'><path d='M70 320 q20 5 30 -5'/><path d='M80 260 q20 5 30 -5'/><path d='M85 200 q20 5 30 -5'/><path d='M140 340 q20 5 30 -5'/><path d='M150 280 q20 5 30 -5'/><path d='M230 300 q20 5 30 -5'/><path d='M240 220 q20 5 30 -5'/><path d='M330 340 q20 5 30 -5'/></g></g></svg>");
  background-size: 720px;
}
.hero__inner {
  position: relative; z-index: 2;
  max-width: var(--maxw); margin: 0 auto;
  display: grid; grid-template-columns: 1.05fr 0.95fr;
  gap: 72px; align-items: center;
}
.hero__tag {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 8px 14px; border-radius: 999px;
  background: rgba(201, 146, 58, 0.15);
  border: 1px solid rgba(201, 146, 58, 0.35);
  color: var(--gold-400); font-size: 12px;
  letter-spacing: 0.22em; text-transform: uppercase; font-weight: 600;
}
.hero__tag-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--gold-500); box-shadow: 0 0 10px var(--gold-400); }
.hero h1 { font-size: 58px; line-height: 1.08; margin: 24px 0 24px; color: var(--white); }
.hero h1 em { font-style: italic; color: var(--gold-400); font-weight: 500; }
.hero__sub { font-size: 18px; color: var(--white-80); max-width: 560px; margin-bottom: 36px; }
.hero__cta-row { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.hero__price-line { font-size: 13px; color: var(--white-60); display: flex; gap: 14px; align-items: center; }
.hero__price-line s { color: var(--white-60); }
.hero__price-line strong { color: var(--gold-400); font-weight: 700; }
.hero__seals {
  display: flex; gap: 26px; flex-wrap: wrap;
  margin-top: 28px; padding-top: 24px;
  border-top: 1px solid var(--white-10);
  font-size: 13px; color: var(--white-80);
}
.hero__seal { display: flex; align-items: center; gap: 8px; }
.hero__seal svg { color: var(--gold-400); flex-shrink: 0; }

/* VSL Player */
.vsl {
  position: relative; aspect-ratio: 16 / 9;
  border-radius: var(--radius-md); overflow: hidden;
  background: #0a1e14;
  box-shadow: 0 30px 80px rgba(0,0,0,0.45), 0 0 0 1px rgba(201,146,58,0.45), 0 0 0 8px rgba(201, 146, 58, 0.08);
  cursor: pointer; transition: transform .3s ease;
}
.vsl:hover { transform: translateY(-4px); }
.vsl__thumb {
  position: absolute; inset: 0;
  background: linear-gradient(140deg, rgba(15,48,32,0.5), rgba(15,48,32,0.85)), linear-gradient(45deg, #2a5a3e 0%, #1A4A2A 50%, #0f3020 100%);
  display: grid; place-items: center;
}
.vsl__portrait {
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 50% at 60% 45%, rgba(201,146,58,0.35), transparent 70%), repeating-linear-gradient(45deg, rgba(255,255,255,0.02) 0 2px, transparent 2px 8px);
}
.vsl__placeholder {
  position: absolute; bottom: 16px; left: 16px;
  font-family: ui-monospace, "SF Mono", Consolas, monospace;
  font-size: 11px; color: var(--white-60); letter-spacing: 0.1em;
}
.vsl__play {
  position: relative; z-index: 2;
  width: 88px; height: 88px; border-radius: 50%;
  background: rgba(255,255,255,0.96);
  display: grid; place-items: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
  transition: transform .25s ease;
}
.vsl:hover .vsl__play { transform: scale(1.08); }
.vsl__play::after {
  content: ""; width: 0; height: 0;
  border-left: 22px solid var(--green-800);
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
  margin-left: 5px;
}
.vsl__ring {
  position: absolute; inset: -12px;
  border-radius: 50%; border: 1px solid rgba(201,146,58,0.5);
  animation: pulse 2.4s ease-out infinite;
}
@keyframes pulse {
  0% { transform: scale(0.8); opacity: 1; }
  100% { transform: scale(1.5); opacity: 0; }
}
.vsl__chip {
  position: absolute; top: 16px; right: 16px;
  background: rgba(0,0,0,0.55); color: var(--white);
  font-size: 12px; padding: 6px 12px; border-radius: 999px;
  letter-spacing: 0.1em; display: flex; align-items: center; gap: 6px;
}
.vsl__chip-dot { width: 6px; height: 6px; border-radius: 50%; background: #e85c5c; }
.vsl__bottom {
  position: absolute; left: 16px; right: 16px; bottom: 16px;
  display: flex; align-items: center; gap: 12px;
  color: var(--white); font-size: 12px; opacity: 0.85;
}
.vsl__bar { flex: 1; height: 3px; border-radius: 99px; background: rgba(255,255,255,0.25); overflow: hidden; }
.vsl__bar i { display: block; height: 100%; width: 28%; background: var(--gold-500); border-radius: inherit; }

/* ==== Numbers ==== */
.numbers { background: var(--white); }
.numbers-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
  border-top: 1px solid var(--cream-dark); border-bottom: 1px solid var(--cream-dark);
}
.number { padding: 48px 32px; text-align: center; border-right: 1px solid var(--cream-dark); }
.number:last-child { border-right: none; }
.number__value { font-family: var(--font-serif) !important; font-size: 68px; font-weight: 500; color: var(--green-800); line-height: 1; letter-spacing: -0.02em; }
.number__value em { color: var(--gold-500); font-style: normal; font-weight: 500; }
.number__label { margin-top: 12px; font-size: 14px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-70); }
.numbers-head { text-align: center; max-width: 620px; margin: 0 auto 56px; }
.numbers-head h2 { font-size: 36px; color: var(--green-800); margin-bottom: 10px; }

.alumni-strip { margin-top: 64px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
.alumni { aspect-ratio: 1; border-radius: var(--radius-md); overflow: hidden; position: relative; background: linear-gradient(135deg, #d5c4a8, #b19874); }
.alumni::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 0 2px, transparent 2px 8px); }
.alumni:nth-child(2) { background: linear-gradient(135deg, #9cb89c, #5f7f66); }
.alumni:nth-child(3) { background: linear-gradient(135deg, #c7a876, #8a6c4a); }
.alumni:nth-child(4) { background: linear-gradient(135deg, #b8a393, #7d6655); }
.alumni:nth-child(5) { background: linear-gradient(135deg, #a8b5a3, #6b8269); }
.alumni:nth-child(6) { background: linear-gradient(135deg, #cab488, #927656); }
.alumni__tag { position: absolute; left: 10px; bottom: 10px; font-size: 10px; color: var(--white); font-family: ui-monospace, monospace; background: rgba(0,0,0,0.35); padding: 3px 7px; border-radius: 4px; letter-spacing: 0.05em; z-index: 2; }

/* ==== Problem ==== */
.problem { background: var(--cream); }
.problem__head { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: end; margin-bottom: 72px; }
.problem-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.p-card {
  background: var(--white); border-left: 3px solid var(--gold-500);
  border-radius: 4px; padding: 34px 32px;
  box-shadow: var(--shadow-card);
  transition: transform .25s ease, box-shadow .25s ease; position: relative;
}
.p-card:hover { transform: translateY(-4px); box-shadow: 0 6px 24px rgba(15,48,32,0.08), 0 24px 56px rgba(15,48,32,0.12); }
.p-card__icon { width: 52px; height: 52px; border-radius: 50%; background: var(--cream); display: grid; place-items: center; color: var(--gold-500); margin-bottom: 20px; }
.p-card h4 { font-size: 22px; margin-bottom: 10px; color: var(--green-800); }
.p-card p { font-size: 15px; color: var(--ink-70); }
.p-card__num { position: absolute; top: 22px; right: 28px; font-family: var(--font-serif) !important; font-size: 13px; color: var(--gold-500); letter-spacing: 0.2em; }

.bodies-diagram {
  display: flex; gap: 8px; align-items: center;
  margin-top: 20px; padding: 18px 20px;
  background: rgba(26,74,42,0.04); border-radius: var(--radius-md);
  font-size: 13px; color: var(--ink-70); flex-wrap: wrap;
}
.bodies-diagram strong { color: var(--green-800); font-weight: 600; }
.bodies-diagram span { padding: 4px 10px; border-radius: 999px; background: var(--white); border: 1px solid var(--cream-dark); }

/* ==== Drica ==== */
.drica { background: var(--green-800); color: var(--white); position: relative; overflow: hidden; }
.drica__bg {
  position: absolute; inset: 0; pointer-events: none; opacity: 0.06;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300' viewBox='0 0 300 300'><g fill='none' stroke='%23ffffff' stroke-width='0.6'><circle cx='150' cy='150' r='120'/><circle cx='150' cy='150' r='90'/><circle cx='150' cy='150' r='60'/></g></svg>");
  background-size: 600px; background-position: right center;
}
.drica__inner { position: relative; z-index: 2; display: grid; grid-template-columns: 0.8fr 1fr; gap: 72px; align-items: center; }
.drica__portrait {
  aspect-ratio: 4/5; border-radius: var(--radius-md); overflow: hidden; position: relative;
  background: radial-gradient(ellipse 55% 40% at 50% 40%, rgba(201,146,58,0.4), transparent 70%), linear-gradient(135deg, #3a6b4a, #1A4A2A 60%, #0f3020);
  box-shadow: 0 30px 60px rgba(0,0,0,0.3), 0 0 0 1px rgba(201,146,58,0.35);
}
.drica__portrait::after {
  content: "foto editorial \00B7 drica piretti";
  position: absolute; bottom: 14px; left: 14px;
  font-family: ui-monospace, monospace; font-size: 10px;
  color: var(--white-60); letter-spacing: 0.1em;
}
.drica__portrait::before {
  content: ""; position: absolute; inset: 0;
  background: repeating-linear-gradient(45deg, rgba(255,255,255,0.03) 0 2px, transparent 2px 12px);
}
.drica__badge {
  position: absolute; top: 20px; right: 20px;
  width: 70px; height: 70px; border-radius: 50%;
  background: var(--gold-500); color: var(--green-900);
  display: grid; place-items: center;
  font-family: var(--font-serif) !important; font-size: 11px; text-align: center; line-height: 1.2; font-weight: 600;
  transform: rotate(8deg); box-shadow: 0 10px 20px rgba(0,0,0,0.25);
}
.drica__content h2 { font-size: 44px; color: var(--white); margin-bottom: 24px; }
.drica__content p { color: var(--white-80); font-size: 17px; margin-bottom: 18px; }
.pullquote {
  position: relative; border-left: 2px solid var(--gold-500);
  padding: 10px 0 10px 28px; margin: 32px 0;
  font-family: var(--font-serif) !important; font-size: 26px; font-style: italic;
  color: var(--gold-400); line-height: 1.35;
}
.pullquote::before {
  content: "\201C";
  position: absolute; top: -18px; left: 16px;
  font-size: 80px; color: rgba(201,146,58,0.25);
  font-family: var(--font-serif) !important; pointer-events: none;
}
.drica__credentials { display: flex; gap: 0; margin-top: 36px; padding-top: 28px; border-top: 1px solid var(--white-10); }
.cred { flex: 1; padding-right: 24px; border-right: 1px solid var(--white-10); }
.cred:last-child { border-right: none; padding-right: 0; padding-left: 24px; }
.cred:first-child { padding-left: 0; }
.cred__v { font-family: var(--font-serif) !important; font-size: 26px; color: var(--gold-400); }
.cred__l { font-size: 12px; color: var(--white-60); letter-spacing: 0.12em; text-transform: uppercase; margin-top: 6px; }

/* ==== USM ==== */
.usm { background: var(--white); }
.usm__head { text-align: center; max-width: 780px; margin: 0 auto 56px; }
.usm__card {
  background: var(--cream); border: 1px solid var(--gold-100);
  border-radius: var(--radius-lg); padding: 56px 56px;
  position: relative; box-shadow: var(--shadow-gold); margin-bottom: 48px;
}
.usm__card::before {
  content: ""; position: absolute; inset: 1px; border-radius: inherit;
  border: 1px dashed rgba(201,146,58,0.3); pointer-events: none;
}
.usm__card-label {
  position: absolute; top: -14px; left: 40px;
  background: var(--gold-500); color: var(--green-900);
  padding: 6px 16px; border-radius: 999px;
  font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; font-weight: 700;
}
.usm__card h3 { font-size: 30px; color: var(--green-800); margin-bottom: 16px; }
.usm__card p { font-size: 17px; color: var(--ink-70); max-width: 680px; }
.usm__pillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 40px; padding-top: 36px; border-top: 1px solid var(--gold-100); }
.pillar { text-align: center; padding: 0 20px; border-right: 1px solid var(--gold-100); }
.pillar:last-child { border-right: none; }
.pillar__icon { width: 56px; height: 56px; margin: 0 auto 16px; border-radius: 50%; background: var(--white); display: grid; place-items: center; color: var(--gold-500); box-shadow: 0 6px 16px rgba(201,146,58,0.18); }
.pillar h5 { font-family: var(--font-serif) !important; font-size: 20px; color: var(--green-800); margin-bottom: 6px; }
.pillar p { font-size: 14px; color: var(--ink-70); }

.vs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-card); }
.vs__col { padding: 40px 36px; }
.vs__col--bad { background: #f7f2ef; color: var(--ink-70); }
.vs__col--good { background: var(--green-800); color: var(--white); position: relative; }
.vs__col--good::before {
  content: "recomendado"; position: absolute; top: 20px; right: 20px;
  background: var(--gold-500); color: var(--green-900);
  font-size: 10px; padding: 4px 10px; border-radius: 999px;
  letter-spacing: 0.2em; text-transform: uppercase; font-weight: 700;
}
.vs__h { font-family: var(--font-serif) !important; font-size: 22px; margin-bottom: 20px; display: flex; align-items: center; gap: 10px; }
.vs__col--good .vs__h { color: var(--gold-400); }
.vs__col--bad .vs__h { color: #9e6866; }
.vs__list { list-style: none; }
.vs__list li { padding: 14px 0; font-size: 15px; display: flex; gap: 12px; align-items: flex-start; border-bottom: 1px solid rgba(0,0,0,0.06); }
.vs__col--good .vs__list li { border-bottom-color: var(--white-10); }
.vs__col--good .vs__list li:last-child, .vs__col--bad .vs__list li:last-child { border-bottom: none; }
.vs__icon { flex-shrink: 0; margin-top: 2px; }
.vs__col--bad .vs__icon { color: #c36b6b; }
.vs__col--good .vs__icon { color: var(--gold-400); }

/* ==== Included ==== */
.included { background: var(--green-50); }
.included__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: start; }
.included__left { position: sticky; top: 100px; }
.included__sticker { display: inline-block; background: var(--white); border: 1px solid var(--gold-100); padding: 18px 22px; border-radius: var(--radius-md); margin-top: 28px; font-size: 14px; color: var(--ink-70); }
.included__sticker strong { color: var(--green-800); font-weight: 700; }
.included-list { list-style: none; }
.included-list li { display: flex; gap: 18px; align-items: flex-start; padding: 20px 0; border-bottom: 1px solid rgba(26,74,42,0.1); }
.included-list li:last-child { border-bottom: none; }
.check { width: 32px; height: 32px; border-radius: 50%; background: var(--green-500); color: var(--white); display: grid; place-items: center; flex-shrink: 0; }
.included-list h5 { font-family: var(--font-sans) !important; font-size: 17px; font-weight: 600; color: var(--green-800); margin-bottom: 4px; }
.included-list p { font-size: 14px; color: var(--ink-70); }
.included-list .star { background: var(--gold-500); color: var(--green-900); }
.included-list li.star-item h5 { color: var(--gold-600); }
.included-list li.star-item h5::after { content: "destaque"; margin-left: 10px; background: var(--gold-500); color: var(--green-900); padding: 2px 8px; border-radius: 99px; font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; vertical-align: middle; font-weight: 700; }

/* ==== Testimonials ==== */
.testis { background: var(--white); }
.testi-head { text-align: center; max-width: 640px; margin: 0 auto 64px; }
.testi-stack { display: flex; flex-direction: column; gap: 28px; }
.testi { background: var(--cream); border-radius: var(--radius-md); padding: 36px 40px; display: grid; grid-template-columns: 140px 1fr auto; gap: 32px; align-items: center; transition: transform .25s ease; }
.testi:hover { transform: translateY(-2px); }
.testi__photo { width: 140px; height: 140px; border-radius: 50%; overflow: hidden; position: relative; }
.testi__photo::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(135deg, rgba(255,255,255,0.1) 0 2px, transparent 2px 8px); }
.testi:nth-child(1) .testi__photo { background: linear-gradient(135deg, #d6b48a, #8c6a47); }
.testi:nth-child(2) .testi__photo { background: linear-gradient(135deg, #9cb89c, #5f7f66); }
.testi:nth-child(3) .testi__photo { background: linear-gradient(135deg, #c29d8a, #7f5a49); }
.testi:nth-child(4) .testi__photo { background: linear-gradient(135deg, #b8a393, #7d6655); }
.testi:nth-child(5) .testi__photo { background: linear-gradient(135deg, #a8b5a3, #6b8269); }
.testi__body p { font-family: var(--font-serif) !important; font-style: italic; font-size: 19px; color: var(--ink); line-height: 1.45; margin-bottom: 16px; }
.testi__who { display: flex; align-items: center; gap: 14px; font-size: 14px; }
.testi__who strong { color: var(--green-800); font-weight: 700; }
.testi__who span { color: var(--ink-50); }
.testi__stars { color: var(--gold-500); display: flex; gap: 2px; font-size: 14px; letter-spacing: 2px; }
.testi__flag { align-self: flex-start; background: var(--green-50); color: var(--green-800); padding: 6px 12px; border-radius: 99px; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 600; white-space: nowrap; }

/* ==== Offer ==== */
.offer { background: var(--green-800); color: var(--white); position: relative; overflow: hidden; }
.offer__bg { position: absolute; inset: 0; opacity: 0.08; background: radial-gradient(ellipse at 50% 0%, rgba(201,146,58,0.4), transparent 60%); pointer-events: none; }
.offer__inner { position: relative; z-index: 2; text-align: center; }
.offer h2 { font-size: 52px; max-width: 820px; margin: 0 auto 20px; }
.offer h2 em { color: var(--gold-400); font-style: italic; }
.offer__lede { color: var(--white-80); max-width: 600px; margin: 0 auto 56px; font-size: 18px; }
.price-card {
  background: var(--cream); color: var(--ink); max-width: 520px; margin: 0 auto;
  border-radius: var(--radius-lg); padding: 48px 44px 40px; position: relative;
  box-shadow: 0 30px 80px rgba(0,0,0,0.4), 0 0 0 1px var(--gold-500), 0 0 0 10px rgba(201,146,58,0.1);
  text-align: left;
}
.price-card__ribbon { position: absolute; top: -20px; left: 50%; transform: translateX(-50%); background: var(--gold-500); color: var(--green-900); font-size: 11px; letter-spacing: 0.26em; text-transform: uppercase; font-weight: 700; padding: 10px 20px; border-radius: 999px; white-space: nowrap; box-shadow: 0 10px 20px rgba(0,0,0,0.25); }
.price-card h3 { font-size: 26px; color: var(--green-800); margin-bottom: 20px; text-align: center; }
.price-was { text-align: center; color: var(--ink-50); font-size: 15px; margin-bottom: 6px; }
.price-was s { text-decoration-thickness: 1.5px; }
.price-was small { display: block; font-size: 12px; letter-spacing: 0.1em; margin-top: 4px; }
.price-now { text-align: center; margin: 6px 0 4px; font-family: var(--font-serif) !important; color: var(--green-500); font-size: 88px; font-weight: 600; line-height: 1; letter-spacing: -0.02em; }
.price-now sup { font-size: 28px; vertical-align: top; margin-right: 4px; font-weight: 500; }
.price-installments { text-align: center; color: var(--ink-70); font-size: 15px; margin-bottom: 32px; }
.price-installments strong { color: var(--green-800); }
.price-card .btn { width: 100%; justify-content: center; }
.price-seals { display: flex; justify-content: center; gap: 22px; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--cream-dark); font-size: 13px; color: var(--ink-70); flex-wrap: wrap; }
.price-seals span { display: inline-flex; align-items: center; gap: 6px; }
.price-seals svg { color: var(--green-500); }
.guarantee { max-width: 620px; margin: 40px auto 0; background: rgba(255,255,255,0.06); border: 1px solid var(--white-10); border-radius: var(--radius-md); padding: 24px 28px; display: flex; gap: 20px; align-items: center; text-align: left; }
.guarantee__shield { flex-shrink: 0; width: 64px; height: 64px; border-radius: 50%; background: rgba(201,146,58,0.15); color: var(--gold-400); display: grid; place-items: center; }
.guarantee h5 { font-family: var(--font-serif) !important; font-size: 18px; color: var(--white); margin-bottom: 4px; }
.guarantee p { font-size: 14px; color: var(--white-80); }

/* ==== FAQ ==== */
.faq { background: var(--cream); }
.faq__head { text-align: center; max-width: 620px; margin: 0 auto 48px; }
.faq-list { max-width: 820px; margin: 0 auto; }
.faq-item { background: var(--white); border-radius: var(--radius-md); margin-bottom: 12px; overflow: hidden; box-shadow: 0 1px 3px rgba(15,48,32,0.04); transition: box-shadow .2s ease; }
.faq-item:hover { box-shadow: 0 4px 14px rgba(15,48,32,0.08); }
.faq-q { width: 100%; text-align: left; background: var(--green-800); color: var(--white); padding: 22px 26px; border: none; cursor: pointer; font-family: var(--font-sans) !important; font-size: 17px; font-weight: 600; display: flex; justify-content: space-between; align-items: center; gap: 20px; transition: background .2s ease; }
.faq-q:hover { background: var(--green-700); }
.faq-item.open .faq-q { background: var(--green-700); }
.faq-toggle { width: 32px; height: 32px; border-radius: 50%; background: rgba(255,255,255,0.1); display: grid; place-items: center; flex-shrink: 0; transition: transform .3s ease, background .2s ease; }
.faq-item.open .faq-toggle { transform: rotate(45deg); background: var(--gold-500); color: var(--green-900); }
.faq-a { max-height: 0; overflow: hidden; transition: max-height .4s ease; }
.faq-a__inner { padding: 24px 26px 28px; color: var(--ink-70); font-size: 16px; }
.faq-a__inner strong { color: var(--green-800); }

/* ==== Final CTA ==== */
.final { background: var(--green-900); color: var(--white); padding-top: 120px; padding-bottom: 80px; position: relative; overflow: hidden; }
.final__bg {
  position: absolute; inset: 0; pointer-events: none; opacity: 0.05;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='600' height='600' viewBox='0 0 600 600'><g fill='none' stroke='%23ffffff' stroke-width='0.5'><circle cx='300' cy='300' r='280'/><circle cx='300' cy='300' r='220'/><circle cx='300' cy='300' r='160'/><circle cx='300' cy='300' r='100'/></g></svg>");
  background-position: center;
}
.final__inner { position: relative; z-index: 2; text-align: center; max-width: 760px; margin: 0 auto; }
.final h2 { font-size: 56px; color: var(--white); margin-bottom: 22px; }
.final h2 em { color: var(--gold-400); font-style: italic; }
.final p { color: var(--white-80); margin-bottom: 40px; font-size: 18px; }
.final__ctas { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.wa-btn { display: inline-flex; align-items: center; gap: 10px; }
.wa-btn svg { color: #25D366; }

.footer { margin-top: 100px; padding-top: 48px; border-top: 1px solid var(--white-10); display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 48px; text-align: left; position: relative; z-index: 2; }
.footer__brand .brand__name { color: var(--white); }
.footer__brand p { color: var(--white-60); font-size: 14px; margin-top: 20px; }
.footer h6 { color: var(--gold-400); font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; margin-bottom: 16px; }
.footer ul { list-style: none; }
.footer ul li { margin-bottom: 10px; }
.footer a { color: var(--white-80); text-decoration: none; font-size: 14px; transition: color .2s; }
.footer a:hover { color: var(--gold-400); }
.footer__bottom { position: relative; z-index: 2; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--white-10); display: flex; justify-content: space-between; gap: 24px; color: var(--white-60); font-size: 12px; letter-spacing: 0.1em; flex-wrap: wrap; }

/* Reveal */
.reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }

/* Responsive */
@media (max-width: 1000px) {
  .hero__inner, .drica__inner, .problem__head, .included__inner { grid-template-columns: 1fr; gap: 40px; }
  .included__left { position: static; }
  .hero h1 { font-size: 40px; }
  h2.section-title { font-size: 32px; }
  .offer h2, .final h2 { font-size: 36px; }
  .numbers-grid { grid-template-columns: 1fr; }
  .number { border-right: none; border-bottom: 1px solid var(--cream-dark); }
  .problem-grid { grid-template-columns: 1fr; }
  .vs { grid-template-columns: 1fr; }
  .usm__pillars { grid-template-columns: 1fr; gap: 24px; }
  .pillar { border-right: none; border-bottom: 1px solid var(--gold-100); padding-bottom: 20px; }
  .testi { grid-template-columns: 100px 1fr; gap: 20px; }
  .testi__photo { width: 100px; height: 100px; }
  .testi__flag { grid-column: 1 / -1; }
  .alumni-strip { grid-template-columns: repeat(3, 1fr); }
  .footer { grid-template-columns: 1fr 1fr; }
  .usm__card { padding: 40px 28px; }
  .section { padding: 72px 22px; }
}

/* Hero H1 menor */
.hero h1 { font-size: 46px !important; }
@media (max-width: 1000px) { .hero h1 { font-size: 34px !important; } }

/* Hero — fundo com foto da Drica */
.hero {
  background-image:
    linear-gradient(to right, rgba(10,30,18,0.92) 38%, rgba(10,30,18,0.52) 100%),
    url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik__a-drica-est-em-um-templo-japons-tradicional-cercad__94567-scaled.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}
.hero__leaves { display: none; }
.hero__chokurei {
  position: absolute;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  width: 460px;
  opacity: 0.09;
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 1000px) {
  .hero__chokurei { width: 260px; right: 50%; transform: translate(50%, -50%); opacity: 0.06; }
  .hero {
    background-image:
      linear-gradient(to bottom, rgba(10,30,18,0.88) 0%, rgba(10,30,18,0.75) 100%),
      url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik__a-drica-est-em-um-templo-japons-tradicional-cercad__94567-scaled.png') !important;
    background-position: 60% top !important;
  }
}

/* Hero — troca de imagem de fundo */
.hero {
  background-image:
    linear-gradient(to right, rgba(10,30,18,0.92) 38%, rgba(10,30,18,0.52) 100%),
    url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotoreal-cinematic-_2707580816-1-scaled.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}
@media (max-width: 1000px) {
  .hero {
    background-image:
      linear-gradient(to bottom, rgba(10,30,18,0.88) 0%, rgba(10,30,18,0.75) 100%),
      url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotoreal-cinematic-_2707580816-1-scaled.png') !important;
    background-position: 60% top !important;
  }
}
.hero {
  background-image:
    linear-gradient(to right, rgba(10,30,18,0.92) 38%, rgba(10,30,18,0.52) 100%),
    url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotorealistic-cinem_2859903772-1-scaled.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}
.hero {
  background-image:
    linear-gradient(to right, rgba(10,30,18,0.92) 38%, rgba(10,30,18,0.52) 100%),
    url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotorealistic-cinem_2859936804-1-scaled.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}
@media (max-width: 1000px) {
  .hero {
    background-image:
      linear-gradient(to bottom, rgba(10,30,18,0.88) 0%, rgba(10,30,18,0.75) 100%),
      url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotorealistic-cinem_2859936804-1-scaled.png') !important;
    background-position: 60% top !important;
  }
}
.vsl-wrapper {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0,0,0,0.45), 0 0 0 1px rgba(201,146,58,0.45), 0 0 0 8px rgba(201,146,58,0.08);
}
/* === Mobile: oculta CTA do topbar === */
@media (max-width: 768px) {
  .topbar__cta { display: none !important; }
}

/* === Sticky bottom CTA bar — mobile only === */
.mobile-cta-bar {
  display: none;
}
@media (max-width: 768px) {
  .mobile-cta-bar {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 200;
    padding: 12px 16px 16px;
    background: rgba(15, 48, 32, 0.97);
    backdrop-filter: blur(10px);
    border-top: 1px solid rgba(201, 146, 58, 0.35);
    box-shadow: 0 -4px 24px rgba(0,0,0,0.3);
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.35s ease, transform 0.35s ease;
  }
  .mobile-cta-bar.visible {
    opacity: 1;
    transform: translateY(0);
  }
  .mobile-cta-bar__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 15px 20px;
    background: #C9923A;
    color: #0f3020;
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    font-weight: 700;
    border-radius: 12px;
    text-decoration: none;
    letter-spacing: 0.01em;
    box-shadow: 0 6px 20px rgba(201,146,58,0.35);
  }
  .mobile-cta-bar__sub {
    font-size: 11px;
    color: rgba(255,255,255,0.55);
    letter-spacing: 0.12em;
    text-align: center;
  }
}
/* === Hero mobile — vídeo primeiro, copy depois === */
@media (max-width: 768px) {
  .hero {
    padding: 24px 16px 100px !important;
  }
  .hero__inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }
  .hero__vsl {
    order: -1;
  }
  .hero__copy {
    order: 0;
  }
  .hero h1 {
    font-size: 26px !important;
    line-height: 1.2 !important;
    margin: 12px 0 12px !important;
  }
  .hero__sub {
    font-size: 15px !important;
    margin-bottom: 0 !important;
  }
  .hero__cta-row {
    display: none !important;
  }
  .hero__seals {
    display: none !important;
  }
  .hero__tag {
    font-size: 10px !important;
    padding: 6px 10px !important;
  }
}
/* === Course Preview Section === */
.course-preview { background: var(--white); }
.cp-header { text-align: center; max-width: 700px; margin: 0 auto 48px; }
.cp-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 32px; }
.cp-card { background: var(--cream); border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-card); transition: transform .25s ease; }
.cp-card:hover { transform: translateY(-4px); }
.cp-card__thumb { aspect-ratio: 16/9; position: relative; overflow: hidden; }
.cp-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cp-card__badge { position: absolute; top: 10px; left: 10px; background: rgba(0,0,0,0.6); color: white; font-size: 10px; padding: 4px 10px; border-radius: 999px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 600; }
.cp-card__badge--gold { background: var(--gold-500); color: var(--green-900); }
.cp-card__play { position: absolute; bottom: 10px; right: 10px; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.3); display: flex; align-items: center; justify-content: center; }
.cp-card__play--gold { background: rgba(201,146,58,0.3); border-color: rgba(201,146,58,0.5); }
.cp-card__body { padding: 16px 18px 20px; }
.cp-card__body h5 { font-family: var(--font-sans) !important; font-size: 14px; font-weight: 600; color: var(--green-800); margin-bottom: 6px; line-height: 1.35; }
.cp-card__meta { font-size: 12px; color: var(--ink-50); }
.cp-card__meta--gold { color: var(--gold-600); font-weight: 600; }
.cp-card--gold .cp-card__body { border-top: 2px solid var(--gold-500); }

/* Apostila strip */
.cp-apostila { display: grid; grid-template-columns: 180px 1fr; gap: 40px; align-items: center; padding: 40px 48px; background: var(--green-50); border: 1px solid rgba(26,74,42,0.12); border-radius: var(--radius-lg); }
.cp-apostila__img { aspect-ratio: 3/4; background: linear-gradient(135deg, #1A4A2A, #0f3020); border-radius: var(--radius-md); position: relative; overflow: hidden; box-shadow: 0 12px 30px rgba(0,0,0,0.2); }
.cp-apostila__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.cp-apostila__placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px; color: rgba(255,255,255,0.35); font-size: 11px; letter-spacing: 0.2em; font-family: monospace; }
.cp-apostila__text h3 { font-size: 26px; color: var(--green-800); margin: 10px 0 12px; }
.cp-apostila__text p { font-size: 16px; color: var(--ink-70); }
.cp-apostila__tags { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
.cp-apostila__tags span { padding: 6px 14px; border-radius: 999px; background: var(--white); border: 1px solid rgba(26,74,42,0.15); font-size: 13px; color: var(--green-800); font-weight: 500; }

/* Mobile */
@media (max-width: 900px) { .cp-grid { grid-template-columns: 1fr 1fr; gap: 14px; } }
@media (max-width: 600px) {
  .cp-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .cp-apostila { grid-template-columns: 1fr; padding: 28px 22px; }
  .cp-apostila__img { aspect-ratio: 16/9; }
}
/* === Slot foto sintonização (USM card) === */
.usm__foto-slot {
  position: relative;
  aspect-ratio: 16/9;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: linear-gradient(135deg, #1A4A2A, #0f3020);
  margin: 28px 0 32px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.18);
}
.usm__foto-slot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: absolute;
  inset: 0;
}
.usm__foto-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 10px;
  color: rgba(255,255,255,0.3);
  font-size: 11px;
  letter-spacing: 0.2em;
  font-family: monospace;
  text-transform: uppercase;
}
/* === Comparativo: texto branco na coluna Reiki Online Brasil === */
.vs__col--good,
.vs__col--good .vs__list li,
.vs__col--good .vs__list li strong {
  color: var(--white) !important;
}
/* === INCLUDED — comparação e âncora de preço === */
.included__comparison {
  background: rgba(255,255,255,0.04);
  border-left: 3px solid var(--gold, #C9A84C);
  border-radius: 0 var(--radius-sm, 8px) var(--radius-sm, 8px) 0;
  padding: 18px 20px;
  margin: 24px 0 28px;
}
.included__comparison p {
  margin: 0 0 8px;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--mist, #c8d8c0);
}
.included__comparison p:last-child { margin-bottom: 0; }
.included__comparison strong { color: var(--white, #fff); }

.included__price-anchor {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 8px;
}
.price-old {
  font-size: 1.1rem;
  color: var(--mist, #c8d8c0);
  text-decoration: line-through;
  opacity: 0.6;
}
.price-new {
  font-size: 2rem;
  font-weight: 700;
  color: var(--gold, #C9A84C);
  letter-spacing: -0.5px;
}
.price-note {
  display: block;
  width: 100%;
  font-size: 0.85rem;
  color: var(--mist, #c8d8c0);
  opacity: 0.75;
  margin-top: 4px;
}

@media (max-width: 600px) {
  .price-new { font-size: 1.7rem; }
}
/* === INCLUDED — correção de cores para fundo claro === */
.included__comparison {
  background: var(--white) !important;
  border-left: 3px solid var(--gold-500) !important;
  padding: 18px 20px !important;
  margin: 24px 0 28px !important;
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0 !important;
  box-shadow: 0 2px 10px rgba(15,48,32,0.06) !important;
}
.included__comparison p {
  color: var(--ink-70) !important;
  margin: 0 0 8px !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}
.included__comparison p:last-child { margin-bottom: 0 !important; }
.included__comparison strong { color: var(--green-800) !important; }

.included__price-anchor {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 10px 16px !important;
  margin-top: 28px !important;
}
.price-old {
  font-size: 1.1rem !important;
  color: var(--ink-50) !important;
  text-decoration: line-through !important;
}
.price-new {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  color: var(--green-500) !important;
  letter-spacing: -0.5px !important;
}
.price-note {
  display: block !important;
  width: 100% !important;
  font-size: 14px !important;
  color: var(--ink-70) !important;
  margin-top: 2px !important;
}
/* === Offer section — background image === */
.offer {
  background-image:
    linear-gradient(to bottom, rgba(10,28,18,0.86) 0%, rgba(10,28,18,0.92) 100%),
    url('https://reikionlinebrasil.com.br/wp-content/uploads/2026/04/freepik_ultraphotorealistic-cinem_2859903772-1-scaled.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}

/* ===== MOBILE FIXES ===== */
@media (max-width: 767px) {

  /* Fix: vídeo invisível no mobile */
  .vsl-wrapper {
    position: relative !important;
    width: 100% !important;
    padding-bottom: 56.25% !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  .vsl-wrapper iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
  }
  .hero__vsl {
    width: 100% !important;
    margin-top: 1.5rem !important;
  }

  /* Fix: botões com fonte grande demais no mobile */
  .btn--xl {
    font-size: 0.85rem !important;
    padding: 0.9rem 1.25rem !important;
    letter-spacing: 0.07em !important;
    line-height: 1.3 !important;
  }

  /* Fix: botão da barra mobile CTA */
  .mobile-cta-bar__btn {
    font-size: 0.82rem !important;
    letter-spacing: 0.06em !important;
  }
}/* End custom CSS */