@import "tailwindcss";

@font-face {
  font-family: "Casa Bali Editorial";
  src: url("./fonts/cormorant-garamond-latin-400-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

:root {
  --ivory: #f6f0e6;
  --paper: #fffdf8;
  --sage: #e7ded1;
  --olive: #76513f;
  --olive-dark: #56392e;
  --gold: #c59a4a;
  --brown: #342a24;
  --muted: #746d66;
  --line: rgba(52, 42, 36, 0.14);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--paper);
  color: var(--brown);
  font-family: "Avenir Next", "Segoe UI", Arial, sans-serif;
  text-rendering: optimizeLegibility;
}

button, input, select { font: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; }

.site-shell { overflow: hidden; }

.site-header {
  position: absolute;
  z-index: 20;
  top: 0;
  left: 50%;
  width: min(1400px, calc(100% - 64px));
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 32px;
  padding: 24px 0;
  border-bottom: 1px solid var(--line);
}

.wordmark {
  font-family: "Casa Bali Editorial", Georgia, "Times New Roman", serif;
  font-size: clamp(1.55rem, 2.3vw, 2.3rem);
  letter-spacing: -0.04em;
}

.brand-logo { display: inline-block; width: fit-content; }
.brand-logo img { width: auto; height: auto; }
.brand-logo-header img { width: clamp(190px, 16vw, 235px); }
.brand-logo-footer img { width: clamp(205px, 17vw, 250px); }

.site-header nav { display: flex; gap: 30px; color: #5c574f; font-size: 0.9rem; }
.site-header nav a:hover { color: var(--olive); }
.site-header > .button { justify-self: end; }

.button {
  display: inline-flex;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  gap: 16px;
  border: 0;
  border-radius: 12px;
  background: var(--gold);
  color: white;
  padding: 0 28px;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.button:hover { transform: translateY(-2px); background: #aa7f35; box-shadow: 0 14px 30px rgba(52, 42, 36, 0.14); }
.button:focus-visible, .video-card:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid rgba(185, 154, 93, 0.55); outline-offset: 3px; }
.button-small { min-height: 44px; padding: 0 22px; font-size: 0.75rem; }

.hero {
  min-height: 900px;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
  align-items: center;
  gap: clamp(52px, 6vw, 100px);
  max-width: 1440px;
  margin: 0 auto;
  padding: 142px 48px 82px;
  background: var(--paper);
  position: relative;
}

.hero::before, .hero::after {
  content: none;
}
.hero::before { left: -150px; top: 190px; }
.hero::after { right: -150px; bottom: -100px; }

.hero-copy { position: relative; z-index: 2; }
.eyebrow, .section-kicker {
  color: var(--olive);
  font-size: 0.76rem;
  font-weight: 750;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}
.eyebrow { display: flex; align-items: center; gap: 14px; margin: 0 0 32px; }
.eyebrow span { width: 32px; height: 2px; background: var(--gold); }

h1, h2, h3 { font-family: "Casa Bali Editorial", Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -0.035em; }
h1 { max-width: 720px; margin: 0; font-size: clamp(2.9rem, 3.8vw, 3.8rem); line-height: 1.04; }
.hero h1 span { display: block; }
.hero-subtitle { max-width: 630px; margin: 30px 0; color: #5d5953; font-size: 1.08rem; line-height: 1.7; }

.benefit-grid {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin: 0 0 34px;
  padding: 0;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.benefit-grid li {
  display: flex;
  gap: 12px;
  min-height: 58px;
  align-items: center;
  padding: 16px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-size: 0.94rem;
  line-height: 1.45;
}
.benefit-grid .benefit-investment {
  background: #eee5ce;
  color: var(--brown);
  font-size: 1rem;
  font-weight: 800;
}
.benefit-investment .check { background: var(--gold); color: white; }
.check {
  flex: 0 0 29px;
  width: 29px;
  height: 29px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--gold);
  border-radius: 50%;
  color: var(--olive);
  font-weight: 800;
}
.hero-button { min-width: min(100%, 430px); }

.video-card {
  position: relative;
  aspect-ratio: 4 / 4.3;
  width: 100%;
  max-height: 700px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 20px;
  background: #d5cebd;
  cursor: pointer;
  box-shadow: 0 28px 70px rgba(52, 42, 36, 0.2);
}
.video-card img { height: 100%; object-fit: cover; transition: transform 700ms cubic-bezier(.2,.8,.2,1); }
.video-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(35, 30, 25, 0.72)); }
.video-card:hover img { transform: scale(1.035); }
.play { display: grid; place-items: center; width: 90px; height: 90px; border-radius: 50%; background: rgba(255,253,248,0.92); color: var(--olive-dark); font-size: 1.65rem; padding-left: 5px; box-shadow: 0 12px 30px rgba(52,42,36,.22); }
.video-card > .play { position: absolute; z-index: 2; inset: 50% auto auto 50%; transform: translate(-50%, -50%); }
.video-label { position: absolute; z-index: 2; left: 32px; right: 32px; bottom: 28px; color: white; font-size: 1.05rem; text-align: center; }

.video-card-embed {
  cursor: default;
  padding: 0;
  background: #1c2f27;
}
.video-card-embed::after { content: none; }
.video-card-embed iframe,
.video-card-embed video { display: block; width: 100%; height: 100%; border: 0; object-fit:cover; }
.video-card-vertical {
  width: min(100%, 390px);
  aspect-ratio: 9 / 16;
  max-height: none;
  margin-inline: auto;
  border-radius: 22px;
}

.section { max-width: 1280px; margin: 0 auto; padding: 108px 48px; }
.experience { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; }
.section-kicker { margin: 0 0 26px; }
.section-kicker.light { color: #d9bf88; }
.section h2, .formats-heading h2, .interest-section h2, .closing-section h2 { margin: 0 0 30px; font-size: clamp(2rem, 2.45vw, 2.55rem); line-height: 1.12; text-align: left; }
.section-copy h2, .support-intro h2, .profile-intro h2, .faq-heading h2 { max-width: 650px; }
.section-copy > p:not(.section-kicker), .formats-heading > p:not(.section-kicker) { color: #68615b; line-height: 1.85; font-size: 1.05rem; }
.hero-subtitle,
.section-copy > p:not(.section-kicker),
.sensory-description,
.sensory-highlight,
.support-intro > p:not(.section-kicker),
.support-grid p,
.profile-list li,
.formats-heading > p:not(.section-kicker),
.format-description,
.interest-copy > p:not(.section-kicker),
.faq-list details p,
.closing-section > p:not(.section-kicker) { text-align: justify; text-justify: inter-word; }
.section-copy > p + p { margin-top: 26px; }
.accent-copy { margin-top: 30px !important; padding: 18px 22px; border-left: 3px solid var(--gold); background: rgba(238,229,206,.48); color: var(--brown) !important; }
.section-cta { margin-top: 28px; }
.image-frame { overflow: hidden; border-radius: 18px; }
.experience-carousel {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 18px;
  background: var(--ivory);
  box-shadow: 0 22px 60px rgba(52,42,36,.15);
}
.experience-carousel-stage { position: absolute; inset: 0; }
.experience-carousel-slide { position: absolute; inset: 0; margin: 0; opacity: 0; transform: scale(1.035); transition: opacity 900ms ease, transform 5200ms ease; }
.experience-carousel-slide.is-active { opacity: 1; transform: scale(1); z-index: 1; }
.experience-carousel-slide img { width: 100%; height: 100%; object-fit: cover; }
.carousel-dots { position: absolute; z-index: 3; right: 18px; bottom: 16px; left: 18px; display: flex; justify-content: center; gap: 8px; }
.carousel-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.55); cursor: pointer; }
.carousel-dots button.is-active { width: 24px; border-radius: 999px; background: white; }
.sensory-image img { height: 100%; object-fit: cover; }

.founder-section {
  max-width: 1400px;
  margin: 24px auto 0;
  display: grid;
  grid-template-columns: 1.06fr .94fr;
  gap: clamp(56px, 8vw, 120px);
  align-items: center;
  padding: 104px max(48px, calc((100% - 1184px) / 2));
  background: #f1ebe2;
}
.founder-copy h2 {
  max-width: 670px;
  margin: 0 0 30px;
  font-family: "Casa Bali Editorial", Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 2.45vw, 2.55rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: 1.12;
}
.founder-copy > p:not(.section-kicker) {
  max-width: 700px;
  margin: 0;
  color: #68615b;
  font-size: 1.03rem;
  line-height: 1.85;
  text-align: justify;
  text-justify: inter-word;
}
.founder-copy > p + p { margin-top: 22px; }
.founder-visual { width: min(100%, 500px); margin: 0 auto; }
.founder-visual > img {
  width: 100%;
  aspect-ratio: 3/4;
  height: auto;
  object-fit: cover;
  object-position: center top;
  border-radius: 20px 20px 0 0;
  box-shadow: 0 24px 60px rgba(52,42,36,.15);
}
.founder-quote {
  position: relative;
  margin: 0;
  padding: 25px 30px 22px;
  border-radius: 0 0 20px 20px;
  background: var(--olive-dark);
  color: white;
  box-shadow: 0 24px 60px rgba(52,42,36,.16);
}
.founder-quote > span {
  position: absolute;
  top: 8px;
  left: 18px;
  color: var(--gold);
  font-family: "Casa Bali Editorial", Georgia, serif;
  font-size: 3.5rem;
  line-height: 1;
  opacity: .9;
}
.founder-quote > p {
  position: relative;
  z-index: 1;
  margin: 13px 0 18px;
  font-family: "Casa Bali Editorial", Georgia, "Times New Roman", serif;
  font-size: clamp(1.05rem, 1.35vw, 1.3rem);
  line-height: 1.35;
}
.quote-attribution { display: grid; gap: 4px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.2); }
.quote-attribution strong { font-size: .94rem; letter-spacing: .04em; }
.quote-attribution small { color: #d9d0c8; font-size: .8rem; }

.sensory-strip { max-width: 1400px; margin: 64px auto 0; min-height: 650px; display: grid; grid-template-columns: 1fr 1fr; background: var(--olive-dark); color: white; border-radius: 24px; overflow: hidden; }
.sensory-copy { padding: clamp(48px, 7vw, 110px); align-self: center; }
.sensory-copy h2 { max-width: 650px; margin: 0 0 34px; font-size: clamp(2rem, 2.45vw, 2.55rem); line-height: 1.12; text-align: left; }
.sensory-description { margin: 0 0 24px; color: #e4ddd2; font-size: .98rem; line-height: 1.8; }
.sensory-highlight { margin: 0 0 32px; padding-left: 18px; border-left: 2px solid var(--gold); color: white; font-weight: 700; line-height: 1.65; }
.sensory-tags { display: flex; flex-wrap: wrap; gap: 10px; }
.sensory-tags span { padding: 11px 15px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; font-size: .8rem; }
.sensory-cta { margin-top: 30px; }

.support-section { display: grid; grid-template-columns: .88fr 1.12fr; gap: 72px; align-items: center; padding-block: 96px; }
.support-intro > p:not(.section-kicker) { max-width: 600px; margin: 0; color: var(--muted); font-size: 1.02rem; line-height: 1.85; }
.support-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
.support-grid article { display: grid; grid-template-columns: 66px minmax(130px, .62fr) 1.38fr; align-items: center; gap: 22px; min-height: 108px; padding: 20px 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--ivory); }
.support-grid span { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: rgba(197,154,74,.15); color: var(--gold); font-family: "Casa Bali Editorial", Georgia, serif; font-size: 1.35rem; }
.support-grid h3 { margin: 0; font-size: 1.3rem; line-height: 1.2; }
.support-grid p { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.6; }

.profile-section { display: grid; grid-template-columns: .92fr 1.08fr; gap: 88px; max-width: none; padding-inline: max(48px, calc((100% - 1184px) / 2)); background: #f1ebe2; }
.profile-intro { display: flex; flex-direction: column; }
.profile-conversion { margin-top: 30px; padding-top: 28px; border-top: 1px solid var(--line); }
.profile-conversion p { margin: 0 0 24px; color: var(--muted); font-size: 1rem; line-height: 1.75; text-align: justify; }
.profile-list { display: grid; gap: 10px; list-style: none; margin: 0; padding: 0; }
.profile-list li { display: flex; align-items: center; gap: 16px; min-height: 72px; padding: 18px 20px; border: 0; border-radius: 12px; background: var(--olive-dark); color: white; line-height: 1.5; text-align: left; box-shadow: 0 8px 24px rgba(52,42,36,.08); }
.profile-list .check { border-color: var(--gold); background: rgba(197,154,74,.15); color: #f1d59a; }

.formats-section { padding: 120px max(48px, calc((100% - 1280px) / 2)); background: var(--paper); }
.formats-heading { max-width: 1120px; margin-bottom: 72px; }
.formats-heading h2 { max-width: 980px; }
.formats-heading > p:not(.section-kicker) { white-space: nowrap; }
.format-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.format-card { display: flex; flex-direction: column; padding: 0 0 28px; min-height: 500px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--ivory); }
.format-card-image { position: relative; aspect-ratio: 16/10; margin: 0; overflow: hidden; background: #ded3c3; }
.format-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms cubic-bezier(.2,.8,.2,1); }
.format-card:hover .format-card-image img { transform: scale(1.025); }
.format-card-image span { position: absolute; top: 16px; left: 16px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(255,253,248,.9); color: var(--olive-dark); font-size: .7rem; letter-spacing: .08em; }
.format-card-copy { margin-top: auto; padding: 0 28px; }
.format-card h3 { margin: 26px 0 10px; font-size: 1.65rem; }
.format-card p { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.6; }
.format-card .format-area { color: var(--olive-dark); font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.format-card .format-description { margin-top: 22px; padding-top: 22px; border-top: 1px solid var(--line); }
.format-investment { display: grid; gap: 7px; margin-top: auto; padding-top: 22px; border-top: 1px solid var(--line); }
.format-investment small { color: var(--muted); font-size: .69rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.format-investment strong { color: var(--brown); font-family: "Casa Bali Editorial", Georgia, "Times New Roman", serif; font-size: 1.65rem; font-weight: 400; }
.investment-banner { margin-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 34px; border-radius: 16px; background: var(--olive-dark); color: white; }
.investment-banner div { display: grid; gap: 12px; }
.investment-banner span { font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: #e1d6bc; }
.investment-banner strong { max-width: 720px; font-family: "Casa Bali Editorial", Georgia, serif; font-size: clamp(1.75rem, 2.25vw, 2.4rem); font-weight: 400; line-height: 1.15; }
.investment-banner p { margin: 0; color: #eadfd8; font-size: .96rem; line-height: 1.6; }
.button-light { background: var(--gold); color: white; }
.button-light:hover { background: #aa7f35; color: white; }

.interest-section { display: grid; grid-template-columns: .83fr 1.17fr; gap: 90px; padding: 120px max(48px, calc((100% - 1280px) / 2)); background: var(--brown); color: white; }
.interest-copy > p:not(.section-kicker) { margin-top: 0; color: #d6cec7; line-height: 1.85; }
.interest-copy { align-self: center; }
.interest-copy h2 { max-width: 570px; font-size: clamp(2rem, 2.45vw, 2.55rem); }
.contact-flow { margin-top: 44px; display: grid; grid-template-columns: 38px 1fr; gap: 18px 14px; align-items: center; }
.contact-flow span { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: #d9bf88; }
.contact-flow p { margin: 0; color: #f0e9e1; }

.lead-form { padding: 38px; border-radius: 18px; background: var(--paper); color: var(--brown); box-shadow: 0 22px 60px rgba(0,0,0,.18); }
.lead-form label { display: grid; gap: 9px; margin-bottom: 18px; font-size: .78rem; font-weight: 750; letter-spacing: .04em; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lead-form input, .lead-form select { min-width: 0; height: 52px; padding: 0 14px; border: 1px solid #d8d0c7; border-radius: 8px; background: white; color: var(--brown); }
.consent { display: flex !important; align-items: center; gap: 10px !important; color: #68615b; font-weight: 500 !important; letter-spacing: 0 !important; line-height: 1.45; }
.consent input { flex: 0 0 18px; width: 18px; height: 18px; margin: 0; }
.form-button { width: 100%; }
.privacy-note { margin: 12px 0 0; color: #857d76; font-size: .72rem; text-align: center; }
.success-message { margin: 14px 0 0; padding: 11px; border-radius: 8px; background: var(--sage); color: var(--olive-dark); font-size: .82rem; text-align: center; }

.faq-section { display: grid; grid-template-columns: .72fr 1.28fr; gap: 88px; align-items: start; }
.faq-list details { border-top: 1px solid var(--line); }
.faq-list details:last-child { border-bottom: 1px solid var(--line); }
.faq-list summary { display: flex; justify-content: space-between; gap: 28px; padding: 28px 0; cursor: pointer; font-weight: 700; line-height: 1.45; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--gold); font-size: 1.4rem; font-weight: 400; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { margin: -5px 48px 24px 0; color: var(--muted); line-height: 1.75; }

.closing-section { padding: 96px 48px; background: var(--olive-dark); color: white; text-align: center; }
.closing-section h2 { max-width: 980px; margin: 0 auto 26px; text-align: center; }
.closing-break { display: block; }
.closing-section > p:not(.section-kicker) { max-width: 780px; margin: 0 auto 36px; color: #d9d2c9; font-size: 1.08rem; line-height: 1.75; text-align: center; }

footer { display: grid; grid-template-columns: 1fr auto 1fr; gap: 30px; align-items: center; padding: 34px max(48px, calc((100% - 1280px) / 2)); background: #29211d; color: #e9e1d8; }
footer p { margin: 0; font-size: .8rem; }
footer .legal { justify-self: end; max-width: 390px; color: #aaa19b; text-align: right; line-height: 1.5; }

.modal-backdrop { position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(29,24,20,.86); backdrop-filter: blur(9px); }
.video-modal { position: relative; width: min(900px, 100%); aspect-ratio: 16/9; border-radius: 18px; overflow: hidden; background: var(--ivory); }
.modal-close { position: absolute; z-index: 2; top: 12px; right: 12px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: var(--brown); color: white; font-size: 1.5rem; cursor: pointer; }
.video-placeholder { height: 100%; display: grid; place-items: center; align-content: center; gap: 16px; padding: 40px; text-align: center; background: linear-gradient(145deg, var(--sage), var(--ivory)); }
.video-placeholder h2 { margin: 0; font-size: 2.5rem; }
.video-placeholder p { margin: 0; color: var(--muted); }

@media (max-width: 1000px) {
  .site-header { grid-template-columns: 1fr auto; width: calc(100% - 40px); }
  .site-header nav { display: none; }
  .hero { min-height: auto; grid-template-columns: 1fr; padding: 132px 28px 70px; }
  .hero-copy { max-width: 760px; }
  .video-card { aspect-ratio: 16/10; }
  .experience, .founder-section, .support-section, .profile-section, .faq-section, .interest-section { grid-template-columns: 1fr; gap: 56px; }
  .support-grid { grid-template-columns: 1fr; }
  .formats-heading > p:not(.section-kicker) { white-space: normal; }
  .sensory-strip { margin: 56px 24px 0; grid-template-columns: 1fr; }
  .sensory-image { aspect-ratio: 16/9; border-radius: 0; }
  .format-grid { grid-template-columns: 1fr 1fr; }
  .format-card { min-height: 480px; }
  footer { grid-template-columns: 1fr; text-align: center; }
  footer .legal { justify-self: center; text-align: center; }
}

@media (max-width: 640px) {
  .site-header { padding: 18px 0; }
  .brand-logo-header img { width: 180px; }
  .brand-logo-footer { justify-self: center; }
  .site-header .button { display: none; }
  .button { min-height: 52px; gap: 8px; padding-inline: 14px; font-size: .65rem; letter-spacing: .045em; white-space: nowrap; }
  .hero { padding-inline: 20px; gap: 44px; }
  h1 { font-size: 2.55rem; }
  .hero h1 span { display: inline; }
  .hero h1 span + span::before { content: " "; }
  .hero-subtitle { font-size: 1rem; }
  .benefit-grid, .field-row { grid-template-columns: 1fr; }
  .benefit-grid li { min-height: 70px; }
  .section, .formats-section, .interest-section { padding: 78px 20px; }
  .founder-section { margin-top: 0; padding: 78px 20px; }
  .founder-quote { padding: 25px 22px 20px; }
  .founder-quote > span { left: 14px; }
  .profile-conversion .button { width: 100%; }
  .section-cta, .sensory-cta { width: 100%; }
  .sensory-strip { margin: 46px 0 0; border-radius: 0; }
  .sensory-copy { padding: 58px 24px; }
  .format-grid { grid-template-columns: 1fr; }
  .format-card { min-height: 0; }
  .support-grid { grid-template-columns: 1fr; }
  .support-grid article { grid-template-columns: 54px 1fr; min-height: auto; gap: 12px 16px; }
  .support-grid article p { grid-column: 1 / -1; }
  .support-grid span { width: 46px; height: 46px; font-size: 1.1rem; }
  .investment-banner { align-items: stretch; flex-direction: column; }
  .investment-banner .button, .closing-section .button { width: 100%; }
  .lead-form { padding: 24px 18px; }
  .faq-list details p { margin-right: 0; }
  .closing-section { padding: 78px 20px; }
  .closing-break { display: inline; }
  .closing-break::before { content: " "; }
  footer { padding: 34px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

/* Versão 2 — direção sensorial e comercial */
.v2-site { --v2-light:#cfdec1; --v2-paper:#f8faf4; --v2-soft:#e9f0e2; --v2-green:#2f4a38; --v2-deep:#20382d; --v2-gold:#d2a454; --v2-line:rgba(47,74,56,.16); overflow:hidden; background:var(--v2-paper); color:var(--v2-green); }
.v2-site h1,.v2-site h2,.v2-site h3,.v2-site blockquote { font-family:"Casa Bali Editorial",Georgia,serif; font-weight:400; }
.v2-site img { width:100%; }
.v2-header img { height:auto; }
.v2-header { position:absolute; z-index:20; top:0; left:50%; width:min(1380px,calc(100% - 72px)); transform:translateX(-50%); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px; padding:22px 0; border-bottom:1px solid rgba(255,255,255,.22); color:white; }
.v2-header>a:first-child { display:block; width:205px; }
.v2-header nav { display:flex; gap:30px; font-size:.82rem; }
.v2-header nav a { opacity:.8; }
.v2-header>.v2-button { justify-self:end; }
.v2-button { display:inline-flex; width:min(380px,100%); min-height:64px; align-items:center; justify-content:center; padding:0 32px; border-radius:999px; background:var(--v2-gold); color:var(--v2-deep); box-shadow:0 11px 24px rgba(22,45,31,.2); font-size:.8rem; font-weight:800; letter-spacing:.075em; text-align:center; text-transform:uppercase; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.v2-button:hover { transform:translateY(-2px); background:#c99b4b; box-shadow:0 17px 34px rgba(22,45,31,.28); }
.v2-button-small { width:auto; min-height:43px; padding-inline:22px; font-size:.68rem; }
.v2-kicker { margin:0 0 22px; color:#55705b; font-size:.71rem; font-weight:800; letter-spacing:.19em; text-transform:uppercase; }
.v2-kicker-light { color:#e5c680; }

.v2-hero { min-height:900px; display:grid; place-items:center; background:radial-gradient(circle at 42% 38%,rgba(207,222,193,.18),transparent 29%),linear-gradient(135deg,#17291f 0%,#365442 58%,#20362a 100%); color:white; }
.v2-hero-inner { width:min(1280px,calc(100% - 72px)); display:grid; grid-template-columns:minmax(0,1.18fr) minmax(410px,.82fr); align-items:center; gap:clamp(48px,6vw,88px); padding:142px 0 92px; }
.v2-hero-copy { text-align:left; }
.v2-hero h1 { margin:0; font-size:clamp(3.35rem,4.45vw,4.75rem); line-height:.96; letter-spacing:-.045em; }
.v2-hero-title-desktop,.v2-hero-title-desktop>span { display:block; }
.v2-hero-title-desktop>span { white-space:nowrap; }
.v2-hero-title-mobile { display:none; }
.v2-hero-copy>p:not(.v2-kicker) { max-width:650px; margin:29px 0 0; color:rgba(255,255,255,.83); font-size:1.08rem; line-height:1.68; }
.v2-hero-facts { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; margin-top:39px; border-radius:17px; background:var(--v2-light); box-shadow:0 18px 45px rgba(10,22,15,.2); }
.v2-hero-facts span { min-height:116px; display:grid; align-content:center; gap:7px; padding:22px 18px; color:#496052; font-size:.8rem; line-height:1.35; }
.v2-hero-facts span+span { border-left:1px solid rgba(32,56,45,.18); }
.v2-hero-facts strong { color:var(--v2-deep); font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.72rem; font-weight:400; line-height:1; }
.v2-hero-form { padding:29px; border:1px solid rgba(255,255,255,.28); border-radius:23px; background:rgba(248,250,244,.97); color:var(--v2-green); box-shadow:0 30px 80px rgba(14,31,21,.38); }
.v2-form-kicker { margin:0 0 9px; color:#55705b; font-size:.66rem; font-weight:800; letter-spacing:.16em; text-align:center; text-transform:uppercase; }
.v2-hero-form>h2 { margin:0; font-size:clamp(1.95rem,2.45vw,2.5rem); line-height:1.04; text-align:center; }
.v2-hero-form>p:not(.v2-form-kicker) { margin:11px auto 19px; color:#5e6e61; font-size:.84rem; line-height:1.5; text-align:center; }
.v2-hero-form .lead-form { padding:0; border-radius:0; background:transparent; box-shadow:none; }
.v2-hero-form .field-row { grid-template-columns:1fr 1fr; gap:11px; }
.v2-hero-form .lead-form label { gap:5px; margin-bottom:10px; font-size:.65rem; }
.v2-hero-form .lead-form input,.v2-hero-form .lead-form select { height:43px; border-color:#cad6c3; font-size:.76rem; }
.v2-hero-form .consent { font-size:.65rem; }
.v2-hero-form .button { min-height:49px; border-radius:999px; padding-inline:15px; font-size:.6rem; letter-spacing:.05em; }
.v2-hero-form .privacy-note { font-size:.6rem; }

.v2-centered-heading { max-width:900px; margin:0 auto; text-align:center; }
.v2-centered-heading h2 { margin:0; font-size:clamp(2.6rem,4vw,4.45rem); line-height:1.02; letter-spacing:-.04em; }
.v2-centered-heading:not(.v2-heading-light) h2 { color:var(--v2-deep); }
.v2-centered-heading>p:not(.v2-kicker) { max-width:760px; margin:25px auto 0; color:#5a6b5e; font-size:1.1rem; line-height:1.68; }
.v2-heading-light { color:white; }
.v2-heading-light h2 { text-shadow:0 3px 12px rgba(15,34,23,.3); }
.v2-heading-light>p:not(.v2-kicker) { color:rgba(255,255,255,.84); }
.v2-intro { padding:118px max(32px,calc((100% - 1240px)/2)); }
.v2-intro-story { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(55px,7vw,100px); }
.v2-intro-copy { text-align:left; }
.v2-intro-copy h2 { max-width:570px; margin:0; font-size:clamp(3rem,4.4vw,4.65rem); line-height:.99; letter-spacing:-.045em; }
.v2-intro-copy>p:not(.v2-kicker) { max-width:570px; margin:25px 0 0; color:#647064; font-size:1rem; line-height:1.72; }
.v2-intro-copy blockquote { max-width:570px; margin:33px 0 0; padding:22px 0 0 24px; border-top:1px solid var(--v2-line); border-left:3px solid var(--v2-gold); color:var(--v2-green); font-size:clamp(1.65rem,2.35vw,2.45rem); line-height:1.08; }
.v2-intro-copy small { display:block; margin:15px 0 0 27px; color:#647064; font-size:.67rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.v2-intro-video .video-card { aspect-ratio:16/10; max-height:none; border-radius:22px; }

.v2-market { padding:114px max(32px,calc((100% - 1180px)/2)); background:var(--v2-light); text-align:center; }
.v2-market-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:58px; }
.v2-market-grid article { min-height:195px; display:grid; align-content:center; gap:14px; padding:30px; border:1px solid rgba(255,255,255,.13); border-radius:18px; background:var(--v2-deep); color:white; }
.v2-market-grid strong { color:#e5c680; font-family:"Casa Bali Editorial",Georgia,serif; font-size:clamp(2rem,3vw,3rem); font-weight:400; line-height:1; }
.v2-market-grid p { max-width:270px; margin:0 auto; color:rgba(255,255,255,.7); font-size:.8rem; line-height:1.55; }
.v2-market-closing { max-width:900px; margin:42px auto 0; }
.v2-market-closing p { margin:0; color:#526356; font-size:1.04rem; line-height:1.75; }
.v2-market-closing .v2-button { margin-top:38px; }
.v2-market-source { display:block; max-width:850px; margin:25px auto 0; color:#647064; font-size:.62rem; line-height:1.5; }
.v2-market-source a { text-decoration:underline; text-underline-offset:2px; }

.v2-experience { padding:118px max(28px,calc((100% - 1320px)/2)); background:var(--v2-deep); color:white; text-align:center; }
.v2-service-marquee { width:100vw; margin:66px 0 0 calc(50% - 50vw); overflow:hidden; mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent); }
.v2-service-track { display:flex; width:max-content; gap:18px; padding-inline:18px; animation:v2Rail 58s linear infinite; }
.v2-service-track:hover { animation-play-state:paused; }
.v2-service-track article { position:relative; flex:0 0 360px; min-height:500px; overflow:hidden; border-radius:18px; background:#355140; text-align:left; isolation:isolate; }
.v2-service-track article:after { display:none; }
.v2-service-track img { position:absolute; z-index:-1; inset:0 0 auto; height:58%; object-fit:cover; transition:transform .9s ease; }
.v2-service-track article[data-service="relaxantes"] img { object-position:center 35%; }
.v2-service-track article[data-service="esteticas"] img { object-position:24% 48%; }
.v2-service-track article[data-service="day-spa"] img { object-position:center 38%; }
.v2-service-track article[data-service="club-horas"] img { object-position:center 48%; }
.v2-service-track article:hover img { transform:scale(1.055); }
.v2-service-track article>div { position:absolute; right:0; bottom:0; left:0; min-height:46%; display:grid; grid-template-rows:34px 44px 54px; gap:10px; padding:29px 25px; background:#4f715c; }
.v2-service-track h3 { align-self:start; margin:0; font-size:1.58rem; line-height:1.04; white-space:nowrap; }
.v2-service-track p { margin:0; line-height:1.5; }
.v2-service-track .v2-service-highlights { align-self:start; color:#f1d08a; font-size:.78rem; font-weight:750; }
.v2-service-track .v2-service-description { align-self:start; color:rgba(255,255,255,.74); font-size:.76rem; }
.v2-service-note { max-width:860px; margin:38px auto 0; color:rgba(255,255,255,.84); font-size:1rem; line-height:1.65; }
.v2-experience>.v2-button { margin-top:38px; }

.v2-founder { display:grid; grid-template-columns:.83fr 1.17fr; min-height:750px; background:var(--v2-light); }
.v2-founder figure { min-height:750px; margin:0; overflow:hidden; }
.v2-founder figure img { height:100%; object-fit:cover; object-position:center top; }
.v2-founder>div { display:flex; flex-direction:column; justify-content:center; padding:clamp(62px,8vw,125px); text-align:center; }
.v2-founder h2 { margin:0; font-size:clamp(2.7rem,4.2vw,4.7rem); line-height:1; }
.v2-founder>div>p:not(.v2-kicker) { max-width:690px; margin:27px auto 0; color:#526356; line-height:1.78; }
.v2-founder-highlight { padding-top:25px; border-top:1px solid var(--v2-line); }
.v2-text-link { align-self:center; margin-top:32px; padding-bottom:7px; border-bottom:1px solid #55705b; color:#55705b; font-size:.73rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }

.v2-business { padding:114px max(32px,calc((100% - 1180px)/2)); }
.v2-business-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:60px; }
.v2-business-grid article { padding:37px 29px; border:1px solid rgba(255,255,255,.13); border-radius:18px; background:var(--v2-deep); color:white; text-align:center; transition:transform .24s ease,box-shadow .24s ease; }
.v2-business-grid article:hover { transform:translateY(-6px); box-shadow:0 22px 45px rgba(32,56,45,.2); }
.v2-business-grid span { display:grid; place-items:center; width:55px; height:55px; margin:0 auto 24px; border:1px solid rgba(229,198,128,.55); border-radius:50%; color:#e5c680; font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.3rem; }
.v2-business-grid h3 { margin:0; font-size:1.72rem; }
.v2-business-grid p { margin:12px 0 0; color:rgba(255,255,255,.7); font-size:.88rem; line-height:1.62; }
.v2-business-break { display:none; }

@media (min-width:1101px) {
  .v2-business-break { display:block; }
}

.v2-formats { padding:118px max(28px,calc((100% - 1360px)/2)); background:var(--v2-light); }
.v2-format-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:65px; }
.v2-format-grid article { overflow:hidden; border-radius:18px; background:var(--v2-paper); box-shadow:0 15px 40px rgba(47,74,56,.1); }
.v2-format-grid figure { position:relative; aspect-ratio:4/3; margin:0; overflow:hidden; }
.v2-format-grid figure img { height:100%; object-fit:cover; transition:transform .7s ease; }
.v2-format-grid article:hover img { transform:scale(1.045); }
.v2-format-grid figure span { position:absolute; top:17px; left:17px; display:grid; place-items:center; width:37px; height:37px; border-radius:50%; background:rgba(248,250,244,.9); font-size:.68rem; }
.v2-format-grid article>div { padding:27px 24px 29px; text-align:center; }
.v2-format-grid article p { margin:0 0 8px; color:#55705b; font-size:.68rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.v2-format-grid h3 { margin:0; font-size:1.85rem; }
.v2-format-grid small { display:block; margin-top:14px; color:#607064; font-size:.8rem; line-height:1.58; }
.v2-investment { max-width:940px; margin:68px auto 0; padding:52px 46px; border-radius:24px; background:var(--v2-green); color:white; text-align:center; }
.v2-investment>p { margin:0; color:#e0bd79; font-size:.7rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.v2-investment h2 { margin:13px 0 9px; font-size:clamp(2.8rem,5vw,5.1rem); line-height:1; }
.v2-investment>span { display:block; color:rgba(255,255,255,.67); font-size:.83rem; line-height:1.55; text-align:center; }
.v2-investment .v2-button { display:flex; margin:36px auto 0; }

.v2-profile { padding:112px max(32px,calc((100% - 1120px)/2)); background:var(--v2-green); color:white; text-align:center; }
.v2-profile-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:54px; }
.v2-profile-grid>div { display:flex; align-items:center; gap:15px; padding:21px 23px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(255,255,255,.06); text-align:left; }
.v2-profile-grid span { flex:0 0 33px; display:grid; place-items:center; width:33px; height:33px; border:1px solid var(--v2-gold); border-radius:50%; color:var(--v2-gold); }
.v2-profile-grid p { margin:0; color:rgba(255,255,255,.82); line-height:1.5; }
.v2-profile .v2-centered-heading h2>span { display:block; }
.v2-profile>.v2-button { margin-top:48px; }

.v2-faq { padding:114px max(32px,calc((100% - 980px)/2)); }
.v2-faq-list { margin-top:54px; }
.v2-faq-list details { border-top:1px solid var(--v2-line); }
.v2-faq-list details:last-child { border-bottom:1px solid var(--v2-line); }
.v2-faq-list summary { display:flex; justify-content:space-between; gap:28px; padding:26px 0; cursor:pointer; font-weight:750; list-style:none; }
.v2-faq-list summary::-webkit-details-marker { display:none; }
.v2-faq-list summary span { color:#55705b; font-size:1.4rem; transition:transform .18s ease; }
.v2-faq-list details[open] summary span { transform:rotate(45deg); }
.v2-faq-list details p { margin:-4px 56px 25px 0; color:#647064; line-height:1.72; white-space:pre-line; }
.v2-closing { padding:108px 32px; background:linear-gradient(rgba(26,52,36,.82),rgba(20,42,29,.9)),url("./experiencia-humana.webp") center/cover; color:white; text-align:center; }
.v2-closing h2 { max-width:1050px; margin:0 auto; font-size:clamp(2.75rem,3.6vw,3.6rem); line-height:1.04; text-shadow:0 3px 14px rgba(15,34,23,.34); }
.v2-closing-message { max-width:900px; margin:30px auto 0; color:rgba(255,255,255,.84); font-size:1.06rem; line-height:1.72; }
.v2-closing-invitation { max-width:760px; margin:34px auto 0; color:white; font-size:1.12rem; font-weight:650; line-height:1.6; }
.v2-closing .v2-button { width:min(460px,100%); min-height:70px; margin-top:44px; }
.v2-footer { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:32px max(32px,calc((100% - 1280px)/2)); background:#17291f; color:rgba(255,255,255,.6); text-align:center; }
.v2-footer-brand { display:flex; flex-direction:column; align-items:center; gap:12px; }
.v2-footer-brand img { width:145px; height:auto; }
.v2-footer p { margin:0; font-size:.7rem; }
[data-v2-reveal] { opacity:0; transform:translateY(27px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1); }
[data-v2-reveal].is-visible { opacity:1; transform:translateY(0); }
@keyframes v2Rail { to { transform:translateX(calc(-50% - 9px)); } }

@media (max-width:1100px) {
  .v2-header { grid-template-columns:1fr auto; width:calc(100% - 48px); }
  .v2-header nav { display:none; }
  .v2-hero-inner { grid-template-columns:minmax(0,1fr) minmax(360px,.78fr); width:min(980px,calc(100% - 48px)); gap:42px; padding:140px 0 80px; }
  .v2-hero h1 { font-size:clamp(3rem,5.2vw,3.65rem); }
  .v2-hero-facts span { min-height:104px; padding:19px 13px; }
  .v2-hero-facts strong { font-size:1.5rem; }
  .v2-format-grid { grid-template-columns:repeat(2,1fr); }
  .v2-founder>div { padding:68px 44px; }
  .v2-closing-message { font-size:1rem; }
}
@media (max-width:900px) {
  .v2-hero-inner { grid-template-columns:1fr; width:min(720px,calc(100% - 48px)); }
  .v2-hero-copy { text-align:center; }
  .v2-hero-copy>p:not(.v2-kicker) { margin-inline:auto; }
  .v2-hero-facts { text-align:left; }
  .v2-hero-form { width:min(620px,100%); margin:0 auto; }
  .v2-intro-story { grid-template-columns:1fr; width:min(760px,100%); margin:0 auto; }
  .v2-intro-copy { text-align:center; }
  .v2-intro-copy h2,.v2-intro-copy>p:not(.v2-kicker),.v2-intro-copy blockquote { margin-right:auto; margin-left:auto; }
  .v2-intro-copy blockquote { text-align:left; }
  .v2-intro-copy small { margin-left:0; text-align:center; }
}
@media (max-width:760px) {
  .v2-header { width:calc(100% - 36px); padding:17px 0; }
  .v2-header>a:first-child { width:170px; }
  .v2-header>.v2-button { display:none; }
  .v2-hero-inner { grid-template-columns:1fr; width:calc(100% - 36px); padding:122px 0 72px; }
  .v2-hero-copy { text-align:center; }
  .v2-hero h1 { font-size:clamp(2.8rem,13vw,4rem); }
  .v2-hero-title-desktop { display:none; }
  .v2-hero-title-mobile { display:inline; }
  .v2-hero-copy>p:not(.v2-kicker) { margin-inline:auto; }
  .v2-hero-facts { grid-template-columns:1fr; }
  .v2-hero-facts span { min-height:88px; text-align:left; }
  .v2-hero-facts span+span { border-top:1px solid rgba(32,56,45,.18); border-left:0; }
  .v2-hero-form { padding:25px 19px; }
  .v2-hero-form .field-row { grid-template-columns:1fr; gap:0; }
  .v2-hero-form .button { white-space:normal; text-align:center; }
  .v2-centered-heading h2,.v2-founder h2 { font-size:clamp(2.45rem,12vw,3.5rem); }
  .v2-intro,.v2-market,.v2-experience,.v2-business,.v2-formats,.v2-profile,.v2-faq { padding:80px 20px; }
  .v2-intro-story { grid-template-columns:1fr; gap:46px; }
  .v2-intro-copy { text-align:center; }
  .v2-intro-copy h2,.v2-intro-copy>p:not(.v2-kicker),.v2-intro-copy blockquote { margin-right:auto; margin-left:auto; }
  .v2-intro-copy blockquote { padding-left:18px; text-align:left; }
  .v2-intro-copy small { margin-left:0; text-align:center; }
  .v2-intro-video .video-card { aspect-ratio:4/3; }
  .v2-service-track article { flex-basis:min(82vw,320px); min-height:440px; }
  .v2-service-track article>div { grid-template-rows:54px 48px 64px; }
  .v2-service-track h3 { font-size:1.55rem; white-space:normal; }
  .v2-founder { grid-template-columns:1fr; }
  .v2-founder figure { min-height:540px; }
  .v2-founder>div { padding:72px 20px; }
  .v2-market-grid,.v2-business-grid,.v2-format-grid,.v2-profile-grid { grid-template-columns:1fr; }
  .v2-investment { padding:44px 21px; }
  .v2-investment .v2-button,.v2-profile>.v2-button,.v2-experience>.v2-button,.v2-closing .v2-button { width:100%; padding-inline:16px; }
  .v2-closing .v2-button { min-height:64px; }
  .v2-closing { padding:84px 20px; }
  .v2-closing h2 { font-size:clamp(2.5rem,12vw,3.5rem); }
  .v2-footer { flex-direction:column; align-items:center; text-align:center; }
  .v2-footer-brand { flex-direction:column; gap:12px; }
}
@media (prefers-reduced-motion:reduce) {
  .v2-service-track { animation:none; }
  .v2-service-marquee { overflow-x:auto; mask-image:none; }
  [data-v2-reveal] { opacity:1; transform:none; }
}

/* Versão 2 revisada — primeira dobra aprovada por etapas */
.v2-review-site {
  --v2-green:#52735f;
  --v2-deep:#52735f;
  --v2-line:rgba(82,115,95,.18);
}
.v2-review-site .v2-hero {
  position:relative;
  isolation:isolate;
  background:url("./fachada-casa-bali-horizontal.webp") center top/cover no-repeat;
  background-attachment:fixed;
}
.v2-review-site .v2-hero::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  background:linear-gradient(90deg,rgba(56,89,68,.76) 0%,rgba(70,104,82,.58) 34%,rgba(70,104,82,.2) 56%,rgba(70,104,82,0) 72%);
  pointer-events:none;
}
.v2-review-site .v2-hero-inner { position:relative; z-index:1; width:min(1380px,calc(100% - 72px)); }
.v2-review-site .v2-header { display:flex; justify-content:flex-start; text-shadow:0 1px 12px rgba(30,48,38,.3); }
.v2-review-site .v2-hero-copy { text-shadow:0 2px 15px rgba(20,36,27,.46),0 1px 3px rgba(20,36,27,.62); }
.v2-review-site .v2-hero-copy>p:not(.v2-kicker) { max-width:600px; }
.v2-review-site .v2-hero-facts { background:rgba(82,115,95,.96); text-shadow:none; }
.v2-review-site .v2-hero-facts span { color:rgba(255,255,255,.86); }
.v2-review-site .v2-hero-facts span+span { border-left-color:rgba(255,255,255,.2); }
.v2-review-site .v2-hero-facts strong { color:#f0ce86; }
.v2-review-site .v2-hero-form { box-shadow:0 30px 75px rgba(38,65,50,.3); }
.cb-builderall-form { margin:0; }
.cb-builderall-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.cb-builderall-form label { display:grid; gap:5px; color:#1d1d1d; font-size:.65rem; font-weight:700; }
.cb-builderall-form input:not([type="checkbox"]),.cb-builderall-form select {
  width:100%;
  height:43px;
  padding:0 14px;
  border:1px solid #cad6c3;
  border-radius:8px;
  background:#fff;
  color:#222;
  font:inherit;
  font-size:.76rem;
  outline:none;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.cb-builderall-form input::placeholder { color:#9f958f; font-weight:600; }
.cb-builderall-form input:focus,.cb-builderall-form select:focus { border-color:#6b8a7f; box-shadow:0 0 0 3px rgba(77,109,101,.1); }
.cb-builderall-hidden { display:none!important; }
.cb-builderall-consent { grid-template-columns:auto 1fr; align-items:center; gap:11px!important; margin-top:17px; color:#4a4a4a!important; font-size:.65rem!important; font-weight:400!important; line-height:1.45; }
.cb-builderall-consent input { width:20px; height:20px; margin:0; accent-color:#426e64; }
.cb-builderall-submit {
  width:100%;
  min-height:49px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top:19px;
  padding:12px 15px;
  border:0;
  border-radius:999px;
  background:#d2a454;
  color:#193526;
  box-shadow:0 11px 24px rgba(22,45,31,.17);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.05em;
  text-align:center;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.cb-builderall-submit:hover { transform:translateY(-2px); background:#c99b4b; box-shadow:0 16px 30px rgba(22,45,31,.22); }
.cb-builderall-note { margin:11px 0 0; color:#8d8178; font-size:.6rem; line-height:1.5; text-align:center; }
.v2-review-site .v2-button { color:#193526; }
.v2-review-site .v2-format-grid { grid-template-columns:repeat(3,1fr); max-width:1180px; margin-right:auto; margin-left:auto; }
.v2-review-site .v2-format-grid article { display:flex; flex-direction:column; }
.v2-review-site .v2-format-grid article>div { flex:1; }
.v2-review-site .v2-format-grid small { font-size:.84rem; line-height:1.65; }
.v2-review-site .v2-investment { max-width:820px; padding:40px 36px; }
.v2-review-site .v2-investment h2 { font-size:clamp(2.8rem,4.35vw,4.45rem); }
.v2-review-site .v2-investment .v2-button { margin-top:36px; }
.v2-review-site .v2-service-track article { background:#5b7b68; }
.v2-review-site .v2-closing { background:linear-gradient(rgba(92,126,103,.68),rgba(76,112,88,.76)),url("./experiencia-humana.webp") center/cover; }
.v2-review-site .v2-footer { background:#466853; }
.v2-review-site .v2-hero-title-mobile>span { display:block; white-space:nowrap; }
.v2-review-site .v2-intro-copy h2 { font-size:clamp(2.65rem,3.55vw,3.8rem); line-height:1.02; }
.v2-review-site .v2-intro-copy blockquote { font-size:clamp(1.25rem,1.55vw,1.55rem); line-height:1.38; }
.v2-review-site .v2-intro-video { position:relative; top:24px; }
.v2-review-site .v2-intro-video .video-card-vertical {
  width: min(100%, 365px);
  aspect-ratio: 9 / 16;
  margin-right: auto;
  margin-left: 0;
  box-shadow: 0 24px 60px rgba(30, 59, 47, .18);
}
.v2-review-site .v2-intro-video-cta {
  width:min(100%,365px);
  margin-top:24px;
}
.v2-review-site .v2-quote-band {
  margin:0;
  padding:clamp(58px,7vw,88px) max(36px,calc((100% - 1180px)/2));
  background:var(--v2-green);
  color:#fffdf8;
  text-align:center;
}
.v2-review-site .v2-quote-band blockquote {
  max-width:1060px;
  margin:0 auto;
  font-family:"Casa Bali Editorial",Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3.25vw,3.45rem);
  font-weight:400;
  line-height:1.13;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.v2-intro-title-desktop { display:none; }
.v2-intro-title-fluid { display:inline; }

@media (min-width:761px) {
  .v2-review-site .v2-founder {
    grid-template-columns:minmax(280px,360px) minmax(0,1fr);
    min-height:0;
    align-items:center;
    gap:clamp(48px,7vw,100px);
    padding:70px max(36px,calc((100% - 1180px)/2));
  }
  .v2-review-site .v2-founder figure {
    width:100%;
    min-height:0;
    aspect-ratio:3/4.55;
    border-radius:24px;
    box-shadow:0 24px 54px rgba(38,65,50,.18);
  }
  .v2-review-site .v2-founder>div { padding:35px 0; }
}

@media (min-width:1101px) {
  .v2-review-site .v2-hero-form { position:relative; top:clamp(0px,calc(18vw - 216px),56px); left:clamp(0px,calc(50vw - 725px),48px); }
  .v2-review-site .v2-intro { padding-right:max(36px,calc((100% - 1380px)/2)); padding-left:max(36px,calc((100% - 1380px)/2)); }
  .v2-review-site .v2-intro-story { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(64px,5vw,90px); }
  .v2-review-site .v2-intro-video { left:0; justify-self:start; }
}
@media (min-width:1250px) {
  .v2-review-site .v2-intro-copy h2 { max-width:none; font-size:clamp(2.5rem,3.15vw,3.35rem); }
  .v2-review-site .v2-intro-title-desktop,.v2-review-site .v2-intro-title-desktop>span { display:block; }
  .v2-review-site .v2-intro-title-desktop>span { white-space:nowrap; }
  .v2-review-site .v2-intro-title-fluid { display:none; }
}

@media (max-width:900px) {
  .v2-review-site .v2-hero-inner { width:min(720px,calc(100% - 48px)); }
  .v2-review-site .v2-hero {
    background:url("./fachada-casa-bali-horizontal.webp") center top/cover no-repeat;
    background-attachment:scroll;
  }
  .v2-review-site .v2-hero::before { background:rgba(82,115,95,.58); }
  .v2-review-site .v2-intro-video { top:0; width:100%; justify-self:center; text-align:center; }
  .v2-review-site .v2-intro-video .video-card-vertical {
    width:min(100%, 330px);
    aspect-ratio:9/16;
    margin-inline:auto;
  }
  .v2-review-site .v2-intro-video-cta { width:min(100%,380px); margin-right:auto; margin-left:auto; }
  .v2-review-site .v2-format-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
  .v2-review-site .v2-header { width:calc(100% - 30px); justify-content:center; }
  .v2-review-site .v2-header>a:first-child { width:185px; }
  .v2-review-site .v2-hero-inner { width:calc(100% - 30px); padding-top:162px; }
  .v2-review-site .v2-hero {
    background-position:31% bottom;
    background-size:auto 122%;
  }
  .v2-review-site .v2-hero::before {
    background:linear-gradient(180deg,rgba(57,86,68,.76) 0%,rgba(63,96,75,.67) 44%,rgba(57,86,68,.72) 100%);
  }
  .v2-review-site .v2-hero h1 { font-size:clamp(2.5rem,10.4vw,3rem); line-height:1.01; }
  .v2-review-site .v2-hero-title-mobile { display:block; }
  .v2-review-site .v2-hero-copy>p:not(.v2-kicker) {
    margin:26px 0 0;
    font-size:1.02rem;
    line-height:1.62;
    text-align:left;
  }
  .v2-review-site .v2-hero-facts {
    width:calc(100% - 10px);
    gap:8px;
    overflow:visible;
    margin-right:auto;
    margin-left:auto;
    background:transparent;
    box-shadow:none;
  }
  .v2-review-site .v2-hero-facts span {
    min-height:78px;
    padding:17px 16px;
    border-radius:12px;
    background:rgba(82,115,95,.96);
    box-shadow:0 10px 25px rgba(10,22,15,.15);
    text-align:center;
  }
  .v2-review-site .v2-hero-facts span+span { border-top:0; }
  .v2-review-site .v2-centered-heading h2,
  .v2-review-site .v2-intro-copy h2,
  .v2-review-site .v2-founder h2 { font-size:clamp(1.9rem,8.6vw,2.25rem); line-height:1.06; text-wrap:balance; }
  .v2-review-site .v2-business .v2-centered-heading h2 { font-size:clamp(1.72rem,7.7vw,2rem); }
  .v2-review-site .v2-closing h2 { font-size:clamp(1.62rem,7.3vw,1.9rem); line-height:1.1; text-wrap:balance; }
  .v2-review-site .v2-market-grid,
  .v2-review-site .v2-business-grid,
  .v2-review-site .v2-profile-grid { width:min(100%,380px); margin-right:auto; margin-left:auto; }
  .v2-review-site .v2-format-grid { width:calc(100% - 20px); margin-right:auto; margin-left:auto; }
  .v2-review-site .v2-market-grid article,
  .v2-review-site .v2-business-grid article { padding-right:24px; padding-left:24px; }
  .v2-review-site .v2-hero-copy>p:not(.v2-kicker),
  .v2-review-site .v2-intro-copy>p:not(.v2-kicker),
  .v2-review-site .v2-centered-heading>p:not(.v2-kicker),
  .v2-review-site .v2-market-closing p,
  .v2-review-site .v2-service-note,
  .v2-review-site .v2-founder>div>p:not(.v2-kicker),
  .v2-review-site .v2-faq-list details p,
  .v2-review-site .v2-closing-message {
    margin-right:15px;
    margin-left:15px;
    font-size:.94rem;
    line-height:1.68;
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
  }
  .v2-review-site .v2-quote-band { padding:52px 30px; }
  .v2-review-site .v2-quote-band blockquote { font-size:clamp(1.75rem,8vw,2.2rem); line-height:1.12; }
  .v2-review-site .v2-format-grid { grid-template-columns:1fr; }
  .v2-review-site .v2-investment { width:min(100%,380px); padding:34px 18px; }
  .v2-review-site .v2-founder figure {
    width:min(300px,calc(100% - 30px));
    min-height:0;
    aspect-ratio:3/5;
    margin:32px auto 0;
    border-radius:22px;
    box-shadow:0 20px 46px rgba(38,65,50,.18);
  }
  .v2-review-site .v2-button,
  .v2-review-site .v2-intro-video-cta,
  .v2-review-site .v2-investment .v2-button,
  .v2-review-site .v2-profile>.v2-button,
  .v2-review-site .v2-experience>.v2-button,
  .v2-review-site .v2-closing .v2-button {
    width:min(100%,380px);
    min-height:64px;
    margin-right:auto;
    margin-left:auto;
    padding-right:14px;
    padding-left:14px;
    font-size:clamp(.62rem,2.8vw,.76rem);
    line-height:1.15;
    white-space:nowrap;
  }
  .v2-review-site .v2-hero-form .form-button {
    width:min(100%,380px);
    min-height:64px;
    margin-right:auto;
    margin-left:auto;
    padding-right:10px;
    padding-left:10px;
    font-size:clamp(.54rem,2.25vw,.64rem);
    line-height:1.15;
    white-space:nowrap;
  }
  .cb-builderall-grid { grid-template-columns:1fr; gap:14px; }
  .cb-builderall-form label { gap:8px; font-size:.86rem; }
  .cb-builderall-form input:not([type="checkbox"]),.cb-builderall-form select { height:52px; padding:0 16px; border-radius:10px; font-size:.94rem; }
  .cb-builderall-consent { align-items:flex-start; gap:13px!important; margin-top:27px; font-size:.78rem!important; line-height:1.5; }
  .cb-builderall-submit { min-height:64px; margin-top:28px; padding:14px 12px; font-size:clamp(.54rem,2.25vw,.64rem); line-height:1.15; white-space:nowrap; }
  .cb-builderall-note { margin-top:15px; font-size:.68rem; }
}
@media (prefers-reduced-motion:reduce) {
  .v2-review-site .v2-hero { background-attachment:scroll; }
}

/* Confirmação de cadastro e redirecionamento para o atendimento */
.v2-thank-you {
  min-height:100svh;
  display:grid;
  place-items:center;
  padding:40px 20px;
  background:
    radial-gradient(circle at 50% 12%,rgba(207,222,193,.2),transparent 34%),
    linear-gradient(145deg,#52735f 0%,#466853 100%);
  color:#fffdf8;
  text-align:center;
}
.v2-thank-you-card {
  width:min(720px,100%);
  padding:clamp(38px,7vw,72px);
  border:1px solid rgba(255,255,255,.18);
  border-radius:28px;
  background:rgba(58,91,70,.58);
  box-shadow:0 30px 80px rgba(20,42,29,.22);
  backdrop-filter:blur(8px);
}
.v2-thank-you-logo { width:min(230px,62%); height:auto; margin:0 auto 34px; }
.v2-thank-you-check {
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  margin:0 auto 27px;
  border:1px solid rgba(240,206,134,.7);
  border-radius:50%;
  color:#f0ce86;
  font-size:1.65rem;
}
.v2-thank-you h1 {
  max-width:650px;
  margin:0 auto;
  font-family:"Casa Bali Editorial",Georgia,serif;
  font-size:clamp(2.35rem,5vw,4rem);
  font-weight:400;
  line-height:1.04;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.v2-thank-you-copy { max-width:590px; margin:27px auto 0; color:rgba(255,255,255,.88); font-size:1.04rem; line-height:1.7; }
.v2-thank-you-countdown { margin:24px 0 0; color:#f0ce86; font-size:.83rem; font-weight:700; letter-spacing:.05em; }
.v2-thank-you .v2-button { margin:32px auto 0; }
.v2-thank-you-note { margin:17px 0 0; color:rgba(255,255,255,.66); font-size:.74rem; }
@media (max-width:600px) {
  .v2-thank-you { padding:15px; }
  .v2-thank-you-card { padding:38px 20px; border-radius:22px; }
  .v2-thank-you-logo { margin-bottom:29px; }
  .v2-thank-you h1 { font-size:clamp(2rem,9.4vw,2.65rem); }
  .v2-thank-you-copy { font-size:.94rem; line-height:1.65; }
  .v2-thank-you .v2-button { width:100%; min-height:62px; padding:0 12px; font-size:.72rem; white-space:nowrap; }
}

/* Versão 3 — narrativa em vídeo, cadastro e apresentação comercial */
.v3-site {
  --v3-green:#183528;
  --v3-green-2:#294d3a;
  --v3-sage:#cfdec1;
  --v3-sage-soft:#edf2e8;
  --v3-ivory:#f8f5ee;
  --v3-paper:#fffdf8;
  --v3-gold:#d5a54d;
  --v3-ink:#1f2f27;
  overflow:hidden;
  background:var(--v3-sage-soft);
  color:var(--v3-ink);
}
.v3-site h1,.v3-site h2,.v3-site h3,.v3-site blockquote { font-family:"Casa Bali Editorial",Georgia,serif; font-weight:400; }
.v3-site img { width:100%; }
.v3-header {
  position:absolute;
  z-index:30;
  top:0;
  left:50%;
  width:min(1320px,calc(100% - 72px));
  transform:translateX(-50%);
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:28px;
  padding:20px 0;
  border-bottom:1px solid rgba(24,53,40,.18);
}
.v3-header>a:first-child { display:block; width:205px; }
.v3-header nav { display:flex; gap:30px; color:#385346; font-size:.8rem; }
.v3-header nav a { transition:color .2s ease; }
.v3-header nav a:hover { color:#9b702d; }
.v3-header>.v3-button { justify-self:end; }
.v3-button {
  display:inline-flex;
  width:min(340px,100%);
  min-height:64px;
  align-items:center;
  justify-content:center;
  padding:0 32px;
  border-radius:999px;
  background:var(--v3-gold);
  color:var(--v3-green);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.075em;
  text-align:center;
  text-transform:uppercase;
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.v3-button:hover { transform:translateY(-2px); background:#b98634; box-shadow:0 15px 30px rgba(24,53,40,.18); }
.v3-button-small { width:auto; min-height:43px; padding-inline:21px; font-size:.63rem; }
.v3-kicker { margin:0 0 18px; color:#506f5b; font-size:.7rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.v3-kicker-light { color:#ebc97e; }
.v3-heading { max-width:880px; margin:0 auto; text-align:center; }
.v3-heading h1,.v3-heading h2 { margin:0; letter-spacing:-.045em; }
.v3-heading h1 { font-size:clamp(3.2rem,5.4vw,5.75rem); line-height:.95; }
.v3-heading h2 { font-size:clamp(2.75rem,3.9vw,4rem); line-height:1; }
.v3-heading>p:last-child { max-width:700px; margin:22px auto 0; color:#607268; font-size:1rem; line-height:1.7; }
.v3-heading-light { color:white; }
.v3-heading-light>p:last-child { color:rgba(255,255,255,.7); }

.v3-hero { padding:160px 32px 128px; background:linear-gradient(180deg,var(--v3-sage) 0%,var(--v3-sage-soft) 100%); }
.v3-hero-top { width:min(1280px,100%); min-height:610px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:clamp(42px,4.5vw,68px); margin:0 auto; }
.v3-hero-heading { max-width:620px; margin:0; text-align:left; }
.v3-hero-heading h1 { font-size:clamp(3rem,3.9vw,4rem); font-weight:600; line-height:.96; letter-spacing:-.05em; }
.v3-hero-heading h1 span { display:block; white-space:nowrap; }
.v3-hero-heading>p:last-of-type { max-width:570px; margin:26px 0 0; color:#40594b; }
.v3-hero-video { width:100%; margin:0; }
.v3-hero-facts { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; margin-top:31px; border:1px solid rgba(255,255,255,.12); border-radius:15px; background:var(--v3-green); box-shadow:0 13px 30px rgba(24,53,40,.13); }
.v3-hero-facts>span { min-height:112px; display:grid; align-content:center; gap:8px; padding:22px 18px; color:rgba(255,255,255,.78); font-size:.78rem; line-height:1.4; }
.v3-hero-facts>span+span { border-left:1px solid rgba(255,255,255,.15); }
.v3-hero-facts strong { color:white; font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.6rem; font-weight:400; line-height:1; }
.v3-video {
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border:0;
  border-radius:28px;
  padding:0;
  background:var(--v3-green);
  color:white;
  cursor:pointer;
  box-shadow:0 34px 80px rgba(24,53,40,.24);
}
.v3-video img { height:100%; object-fit:cover; transition:transform 1s cubic-bezier(.2,.75,.2,1); }
.v3-video:hover img { transform:scale(1.025); }
.v3-video-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,31,21,.08),rgba(10,31,21,.68)); }
.v3-play { position:absolute; top:50%; left:50%; width:82px; height:82px; transform:translate(-50%,-50%); display:grid; place-items:center; border:1px solid rgba(255,255,255,.72); border-radius:50%; background:rgba(255,255,255,.17); color:white; font-size:1.15rem; padding-left:4px; backdrop-filter:blur(7px); }
.v3-video-label { position:absolute; right:30px; bottom:27px; left:30px; font-size:.72rem; font-weight:750; letter-spacing:.13em; text-align:center; text-transform:uppercase; }
.v3-form-wrap {
  position:relative;
  z-index:2;
  width:min(1280px,100%);
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(540px,1.22fr);
  gap:54px;
  align-items:center;
  margin:58px auto 0;
  padding:52px;
  border:1px solid rgba(24,53,40,.1);
  border-radius:28px;
  background:rgba(237,242,232,.97);
  box-shadow:0 26px 70px rgba(24,53,40,.12);
}
.v3-form-copy h2 { margin:0; font-size:clamp(2.4rem,3.6vw,3.7rem); line-height:1; letter-spacing:-.04em; }
.v3-form-copy>p:not(.v3-kicker) { margin:22px 0 0; color:#607168; line-height:1.7; }
.v3-form-proof { display:grid; gap:7px; margin-top:29px; padding-top:23px; border-top:1px solid rgba(24,53,40,.14); }
.v3-form-proof strong { color:var(--v3-green); font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.8rem; font-weight:400; }
.v3-form-proof span { color:#748077; font-size:.75rem; }
.v3-form-wrap .lead-form { padding:0; box-shadow:none; }
.v3-form-wrap .lead-form input,.v3-form-wrap .lead-form select { background:#fbfaf6; }
.v3-form-wrap .form-button { border-radius:999px; }

.v3-market { padding:112px 32px; background:var(--v3-sage); text-align:center; }
.v3-market-grid { width:min(1120px,100%); display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:55px auto 0; }
.v3-market-grid article { min-height:190px; display:grid; align-content:center; gap:14px; padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:var(--v3-green); color:white; }
.v3-market-grid strong { color:#efcb7a; font-family:"Casa Bali Editorial",Georgia,serif; font-size:clamp(2rem,3vw,3rem); font-weight:400; line-height:1; }
.v3-market-grid p { max-width:270px; margin:0 auto; color:rgba(255,255,255,.7); font-size:.8rem; line-height:1.55; }
.v3-market-closing { max-width:900px; margin:42px auto 0; }
.v3-market-closing p { margin:0; color:#496154; font-size:1.04rem; line-height:1.75; }
.v3-market-closing .v3-button { margin-top:28px; }
.v3-market-source { display:block; max-width:850px; margin:25px auto 0; color:#718177; font-size:.62rem; line-height:1.5; }
.v3-market-source a { text-decoration:underline; text-underline-offset:2px; }

.v3-investment { padding:110px 32px; background:linear-gradient(135deg,var(--v3-green),#274b39); color:white; }
.v3-investment .v3-heading>p:last-child { color:rgba(255,255,255,.7); }
.v3-investment-grid { width:min(1280px,100%); display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:58px auto 0; }
.v3-investment-grid article { overflow:hidden; border:1px solid rgba(255,255,255,.15); border-radius:22px; background:rgba(255,255,255,.07); }
.v3-investment-grid article>img { aspect-ratio:16/10; object-fit:cover; }
.v3-investment-grid article>div { display:grid; padding:25px 23px 28px; }
.v3-investment-grid article p { margin:0 0 10px; color:#ddc27e; font-size:.68rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.v3-investment-grid article h3 { margin:0 0 21px; font-size:2rem; line-height:1; }
.v3-investment-grid article span { color:rgba(255,255,255,.57); font-size:.67rem; }
.v3-investment-grid article strong { margin-top:5px; color:white; font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.55rem; font-weight:400; }
.v3-investment-note { max-width:760px; margin:28px auto 0; color:rgba(255,255,255,.58); font-size:.73rem; line-height:1.6; text-align:center; }

.v3-story { width:min(1260px,calc(100% - 64px)); display:grid; grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr); align-items:center; gap:clamp(55px,8vw,120px); margin:0 auto; padding:118px 0; }
.v3-story figure { position:relative; height:680px; margin:0; overflow:hidden; border-radius:200px 200px 24px 24px; background:var(--v3-sage); }
.v3-story figure:after { content:""; position:absolute; inset:0; border:1px solid rgba(24,53,40,.12); border-radius:inherit; pointer-events:none; }
.v3-story figure img { height:100%; object-fit:cover; object-position:50% 18%; }
.v3-story h2 { max-width:680px; margin:0; font-size:clamp(2.75rem,3.9vw,4rem); line-height:1; letter-spacing:-.045em; }
.v3-story>div>p:not(.v3-kicker) { max-width:670px; margin:25px 0 0; color:#5e6c63; line-height:1.78; }
.v3-story blockquote { max-width:670px; margin:34px 0 0; padding:25px 0 0 29px; border-top:1px solid rgba(24,53,40,.15); border-left:3px solid var(--v3-gold); color:var(--v3-green); font-size:1.75rem; line-height:1.14; }
.v3-story blockquote span { display:block; margin-top:13px; color:#718077; font-family:"Avenir Next","Segoe UI",Arial,sans-serif; font-size:.65rem; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }

.v3-services { padding:112px 0; overflow:hidden; background:var(--v3-green); color:white; text-align:center; }
.v3-services>.v3-heading { padding-inline:24px; }
.v3-service-marquee { margin-top:58px; overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent); }
.v3-service-track { display:flex; width:max-content; gap:18px; padding-inline:9px; animation:v3ServiceRail 42s linear infinite; }
.v3-service-track:hover { animation-play-state:paused; }
.v3-service-track article { position:relative; flex:0 0 330px; min-height:455px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:22px; background:#234333; text-align:left; }
.v3-service-track article:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(14,39,26,.02) 32%,rgba(14,39,26,.93) 100%); }
.v3-service-track article img { height:100%; object-fit:cover; transition:transform .8s ease; }
.v3-service-track article:hover img { transform:scale(1.035); }
.v3-service-track article>div { position:absolute; z-index:1; right:24px; bottom:25px; left:24px; }
.v3-service-track h3 { margin:0; font-size:2rem; line-height:1; }
.v3-service-track p { margin:12px 0 0; color:rgba(255,255,255,.66); font-size:.73rem; line-height:1.65; }
.v3-services>.v3-button { margin-top:42px; }
@keyframes v3ServiceRail { to { transform:translateX(calc(-50% - 9px)); } }

.v3-support { padding:108px 32px; background:var(--v3-sage); }
.v3-support-grid { width:min(1120px,100%); display:grid; gap:14px; margin:55px auto 0; }
.v3-support-grid article { display:grid; grid-template-columns:82px 1fr; align-items:center; gap:24px; padding:23px 29px; border:1px solid rgba(255,255,255,.13); border-radius:18px; background:var(--v3-green); color:white; }
.v3-support-grid article>span { color:var(--v3-gold); font-family:"Casa Bali Editorial",Georgia,serif; font-size:2.15rem; text-align:center; }
.v3-support-grid article h3 { margin:0; font-size:1.55rem; }
.v3-support-grid article p { margin:5px 0 0; color:rgba(255,255,255,.68); line-height:1.55; }

.v3-models { padding:112px 32px; background:var(--v3-sage-soft); text-align:center; }
.v3-model-grid { width:min(1320px,100%); display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin:60px auto 0; text-align:left; }
.v3-model-grid article { overflow:hidden; border:1px solid rgba(24,53,40,.12); border-radius:20px; background:rgba(207,222,193,.58); }
.v3-model-grid figure { position:relative; aspect-ratio:16/8.7; margin:0; overflow:hidden; }
.v3-model-grid figure img { height:100%; object-fit:cover; transition:transform .8s ease; }
.v3-model-grid article:hover figure img { transform:scale(1.025); }
.v3-model-grid figure span { position:absolute; top:18px; left:18px; display:grid; width:45px; height:45px; place-items:center; border-radius:50%; background:rgba(255,253,248,.92); color:var(--v3-green); font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.15rem; }
.v3-model-grid article>div { padding:24px 22px 27px; }
.v3-model-grid article p { margin:0 0 9px; color:#71816f; font-size:.69rem; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }
.v3-model-grid article h3 { margin:0; font-size:2rem; line-height:1; }
.v3-model-grid article>div>span { display:block; margin-top:15px; color:#5a6d61; font-size:.85rem; line-height:1.6; }
.v3-models>.v3-button { margin-top:42px; }

.v3-differentials { padding:112px 32px; background:var(--v3-green); color:white; }
.v3-differential-grid { width:min(1180px,100%); display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:58px auto 0; }
.v3-differential-grid article { min-height:235px; padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:rgba(255,255,255,.055); }
.v3-differential-grid article>span { color:#ebc97e; font-family:"Casa Bali Editorial",Georgia,serif; font-size:1.4rem; }
.v3-differential-grid h3 { margin:26px 0 10px; font-size:1.65rem; }
.v3-differential-grid p { margin:0; color:rgba(255,255,255,.66); font-size:.88rem; line-height:1.65; }

.v3-closing { padding:112px 32px; background:linear-gradient(180deg,var(--v3-sage-soft),var(--v3-sage)); text-align:center; }
.v3-closing>.v3-heading { max-width:1000px; }
.v3-closing-video { width:min(960px,100%); margin:55px auto 0; }
.v3-closing-video .v3-video { aspect-ratio:16/8.5; }
.v3-closing-video .v3-video img { object-position:50% 24%; }
.v3-closing>.v3-button { margin-top:40px; }
.v3-footer { display:grid; justify-items:center; gap:16px; padding:48px 24px; background:#10271c; color:rgba(255,255,255,.62); text-align:center; }
.v3-footer img { width:210px; }
.v3-footer p { margin:0; font-size:.76rem; }
.v3-footer small { font-size:.64rem; }

[data-v3-reveal] { opacity:0; transform:translateY(28px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1); }
[data-v3-reveal].is-visible { opacity:1; transform:translateY(0); }

@media (max-width:1050px) {
  .v3-header { grid-template-columns:1fr auto; width:calc(100% - 48px); }
  .v3-header nav { display:none; }
  .v3-hero-top { min-height:0; grid-template-columns:1fr; width:min(760px,100%); }
  .v3-hero-heading { max-width:720px; margin:0 auto; text-align:center; }
  .v3-hero-heading>p:last-of-type { margin-inline:auto; }
  .v3-hero-facts { width:min(620px,100%); margin-inline:auto; }
  .v3-form-wrap { grid-template-columns:1fr; width:min(720px,100%); }
  .v3-form-copy { text-align:center; }
  .v3-form-copy>p:not(.v3-kicker) { max-width:560px; margin-inline:auto; }
  .v3-market-grid { grid-template-columns:1fr; width:min(580px,100%); }
  .v3-investment-grid { grid-template-columns:repeat(2,1fr); width:min(720px,100%); }
  .v3-story { grid-template-columns:340px 1fr; gap:50px; }
  .v3-story figure { height:570px; }
  .v3-model-grid { grid-template-columns:repeat(2,1fr); width:min(760px,100%); }
  .v3-differential-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:720px) {
  .v3-header { width:calc(100% - 36px); padding:16px 0; }
  .v3-header>a:first-child { width:172px; }
  .v3-header>.v3-button { display:none; }
  .v3-hero { padding:124px 18px 88px; }
  .v3-heading h1 { font-size:clamp(3rem,14vw,4.4rem); }
  .v3-heading h2 { font-size:clamp(2.55rem,12vw,3.7rem); }
  .v3-hero-heading h1 { font-size:clamp(2.55rem,11vw,3.35rem); }
  .v3-hero-heading h1 span { white-space:normal; }
  .v3-hero-facts { grid-template-columns:1fr; }
  .v3-hero-facts>span { min-height:88px; padding:18px 16px; font-size:.74rem; }
  .v3-hero-facts strong { font-size:1.45rem; }
  .v3-hero-facts>span+span { border-top:1px solid rgba(255,255,255,.15); border-left:0; }
  .v3-video { aspect-ratio:4/3; border-radius:19px; }
  .v3-play { width:66px; height:66px; }
  .v3-video-label { right:18px; bottom:18px; left:18px; font-size:.58rem; line-height:1.5; }
  .v3-form-wrap { gap:32px; margin-top:38px; padding:31px 20px; border-radius:20px; }
  .v3-form-copy h2 { font-size:2.7rem; }
  .v3-form-wrap .lead-form { padding:0; }
  .v3-form-wrap .field-row { grid-template-columns:1fr; gap:0; }
  .v3-form-wrap .form-button { min-height:58px; white-space:normal; line-height:1.35; }
  .v3-market,.v3-investment,.v3-services,.v3-support,.v3-models,.v3-differentials,.v3-closing { padding:82px 18px; }
  .v3-investment-grid { grid-template-columns:1fr; width:min(390px,100%); gap:19px; margin-top:44px; }
  .v3-story { width:calc(100% - 36px); grid-template-columns:1fr; gap:42px; padding:82px 0; }
  .v3-story figure { width:min(360px,100%); height:530px; margin:0 auto; }
  .v3-story>div { text-align:center; }
  .v3-story blockquote { padding-left:18px; text-align:left; }
  .v3-service-marquee { margin-inline:-18px; mask-image:none; }
  .v3-service-track article { flex-basis:min(82vw,320px); min-height:440px; }
  .v3-services>.v3-button { width:100%; padding-inline:16px; }
  .v3-support-grid { margin-top:42px; }
  .v3-support-grid article { grid-template-columns:50px 1fr; gap:15px; padding:21px 18px; text-align:left; }
  .v3-model-grid { grid-template-columns:1fr; gap:19px; margin-top:44px; }
  .v3-model-grid article>div { padding:24px 22px 27px; }
  .v3-differential-grid { grid-template-columns:1fr; margin-top:42px; }
  .v3-differential-grid article { min-height:auto; text-align:center; }
  .v3-closing-video { margin-top:42px; }
  .v3-closing-video .v3-video { aspect-ratio:4/3; }
  .v3-closing>.v3-button,.v3-models>.v3-button { width:100%; padding-inline:16px; }
  .v3-footer { padding:42px 18px; }
}

@media (prefers-reduced-motion:reduce) {
  [data-v3-reveal] { opacity:1; transform:none; }
  .v3-video img,.v3-model-grid figure img { transition:none; }
  .v3-service-track { animation:none; }
  .v3-service-marquee { overflow-x:auto; mask-image:none; }
}
