/* V5 keeps the approved compass world; outcomes precede the walkthrough. */
.hero-world.shell { height: 646px; margin-top: 22px; }
.world-compass-perspective { transform: rotate(calc(-12deg + var(--world-scroll-tilt, 0deg))) translateY(var(--world-scroll-lift, 0px)); }
.hero-v4[data-world-ready="true"] .world-compass-body,
.hero-v4[data-world-ready="true"] .world-needle-seek { animation: none; }
.hero-v4[data-world-intro="playing"] .world-compass-body { animation: world-body-rock 4.6s ease-in-out 1 both; }
.hero-v4[data-world-intro="playing"] .world-needle-seek { animation: world-needle-search 4.6s cubic-bezier(.35,0,.3,1) 1 both; }
.hero-v4[data-world-motion="paused"] .world-compass-body,
.hero-v4[data-world-motion="paused"] .world-needle-seek { animation-play-state: paused; }
.world-card { opacity: .92; }
.world-card-kicker { font-size: 11px; }
.world-tariff-compare dt small { font-size: 11px; }
.world-controls button > span { color: #b1bdc5; }
@media (min-width:1101px) { .world-card-question { top: 420px; } }
@media (max-width:1100px) and (min-width:901px) { .world-card-question { top: 430px; } }
.benefit-v5 { padding-top: 130px; padding-bottom: 135px; background: radial-gradient(ellipse at 4% 90%, #5b3020 0, transparent 60%), linear-gradient(145deg, #c4895c, #a9633e 55%, #6c3925); }
.benefit-v5 .why-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(45px, 6vw, 95px); }
.benefit-v5 .why-copy { max-width: 550px; }
.benefit-v5 .why-copy h2 { font-size: clamp(46px, 4.8vw, 70px); line-height: 1.03; letter-spacing: -.055em; }
.benefit-v5 .why-copy > p:not(.eyebrow) { margin: 25px 0; max-width: 34ch; font-size: 17px; line-height: 1.65; color: #211811; }
.benefit-v5 .why-card { padding: 40px; min-height: 330px; border-radius: 18px; gap: 25px; border: 1px solid #f1dac322; box-shadow: 0 24px 55px #3716072b, inset 0 1px 0 #fff2; }
.benefit-v5 .why-card::before, .benefit-v5 .why-card::after { display: none; }
.benefit-v5 .why-card-paper { background: linear-gradient(135deg, #fff8ee, #e9d9c6); }
.benefit-v5 .why-card-copper { background: linear-gradient(145deg, #823f28, #5e2b1d); margin-left: 0; }
.benefit-v5 .why-card-dark { background: linear-gradient(145deg, #152c36, #0c1922); margin-left: 0; }
.benefit-v5 h3.benefit-word { font-size: clamp(40px, 4.4vw, 65px); line-height: .98; font-weight: 550; letter-spacing: -.055em; margin: 0; }
.benefit-v5 .why-card p { font-size: 16px; line-height: 1.65; max-width: 34ch; }
.benefit-v5 .why-card-dark p { color: #c6d0d5; }
.result-link { display: inline-flex; align-items: center; gap: 18px; min-height: 48px; color: #22170f; font-size: 14px; font-weight: 650; text-underline-offset: 6px; }
.story-copy > p:not(.eyebrow) { color: #c1cbd1; }
.story-v3 .story-step h3 { text-wrap: pretty; }
.final-cta .final-contact-note { margin: 18px auto 0; font-size: 13px; max-width: 54ch; }
.contact-email { display: block; margin-top: 10px; color: inherit; font-size: 14px; text-underline-offset: 4px; overflow-wrap: anywhere; }
.price-card .contact-note { margin-top: 15px; }
.final-cta .button { margin-top: 10px; }
@media (min-width:1600px) { .hero-world.shell { height: 680px; } }
@media (max-width:1100px) and (min-width:901px) { .hero-world.shell { height: 626px; } }
@media (max-width:900px) and (min-width:761px) { .hero-world.shell { height: 946px; } }
@media (max-width:980px) {
  .benefit-v5 { padding-block: 86px; min-height: 0; }
  .benefit-v5 .why-layout { grid-template-columns: 1fr; gap: 40px; }
  .benefit-v5 .why-copy { max-width: 680px; }
  .benefit-v5 .why-copy h2 { font-size: clamp(42px, 7.8vw, 65px); }
  .benefit-v5 .why-card { min-height: 265px; padding: 32px; }
  .benefit-v5 h3.benefit-word { font-size: clamp(42px, 7vw, 65px); }
}
@media (max-width:760px) {
  .hero-world.shell { height: auto; margin-top: 20px; padding-top: 378px; padding-bottom: 15px; }
  .world-card-kicker { font-size: 10px; }
  .world-controls button { flex: 1; padding-inline: 7px; }
  .world-controls button > span { font-size: 9px; }
  .benefit-v5 .why-copy > p:not(.eyebrow) { font-size: 16px; }
  .benefit-v5 .why-copy h2 { font-size: clamp(39px, 10vw, 59px); }
  .benefit-v5 .why-card { padding: 27px; min-height: 260px; border-radius: 14px; }
  .benefit-v5 .why-card p { font-size: 15px; }
}
@media (max-width:370px) {
  .hero-world.shell { padding-top: 352px; }
  .world-controls button { font-size: 10px; padding-inline: 5px; }
  .benefit-v5 .why-card { padding: 23px; }
  .benefit-v5 h3.benefit-word { font-size: 39px; }
  .benefit-v5 .why-copy h2 { font-size: 39px; }
}
@media (prefers-reduced-motion:reduce) {
  .world-compass-perspective { transform: rotate(-12deg); }
  .hero-v4[data-world-intro="playing"] .world-compass-body,
  .hero-v4[data-world-intro="playing"] .world-needle-seek { animation: none !important; }
}
