/* Solid dark letterforms: no inherited white glow. No text panels. */
body.home-immersive { font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body.home-immersive :is(main,.site-header,.site-footer,.home-scene-caption),
body.home-immersive :is(main,.site-header,.site-footer,.home-scene-caption) :is(h1,h2,h3,p,span,strong,a,button,label,small,input,select,textarea,summary) {
  color: #020608 !important;
  text-shadow: none !important;
  font-weight: 800 !important;
}
body.home-immersive :is(main,.site-header,.site-footer) :is(h1,h2,h3),
body.home-immersive :is(main,.site-header,.site-footer) :is(h1,h2,h3) span { font-weight: 900 !important; -webkit-text-stroke: .35px currentColor; }
body.home-immersive main :is(p,a,label,small),
body.home-immersive .hero-credentials span { -webkit-text-stroke: .12px currentColor; }
body.home-immersive .brand-mark { color: #0d625b !important; -webkit-text-stroke: 0; }
body.home-immersive .hero .hero-description,
body.home-immersive .service-item p,
body.home-immersive .process-grid p { font-size: 1.0625rem; line-height: 1.5; }
body.home-immersive .hero-intro > .eyebrow,
body.home-immersive .home-cost-label { font-size: .8rem; letter-spacing: .055em; }
body.home-immersive .hero-credentials span,
body.home-immersive .small-note,
body.home-immersive .file-field small { font-size: .875rem; line-height: 1.45; }
body.home-immersive .home-cost-answer { font-size: 1.125rem; }
body.home-immersive .home-planner-button { font-size: 1.0625rem; }
body.home-immersive .hero .home-planner-button { font-size: 1.0625rem; font-weight: 900 !important; }
body.home-immersive .hero-credentials { display: block; }
body.home-immersive .service-index { font-size: .8rem; }
body.home-immersive .home-lively,
body.home-immersive .hero .home-cost.home-lively:hover,
body.home-immersive .service-item.home-lively:hover {
  --home-touch-y: 0px;
  --home-touch-scale: 1;
  transform: translate3d(0,calc(var(--home-scroll-y,0px) + var(--home-touch-y)),0) scale(var(--home-touch-scale));
  transition: transform 150ms cubic-bezier(.2,.8,.2,1);
  transform-origin: 45% 50%;
}
body.home-immersive .home-lively.is-home-pressed,
body.home-immersive .hero .home-cost.home-lively.is-home-pressed:hover,
body.home-immersive .service-item.home-lively.is-home-pressed:hover { --home-touch-y: 3px; --home-touch-scale: .96; }
body.home-immersive .home-lively.is-home-bouncing { animation: home-text-feedback 620ms cubic-bezier(.2,.8,.2,1) both; }
@keyframes home-text-feedback {
  0% { transform: translate3d(0,calc(var(--home-scroll-y,0px) + 3px),0) scale(.96); }
  35% { transform: translate3d(0,calc(var(--home-scroll-y,0px) - 4px),0) scale(1.045); }
  68% { transform: translate3d(0,calc(var(--home-scroll-y,0px) + 1px),0) scale(.993); }
  100% { transform: translate3d(0,var(--home-scroll-y,0px),0) scale(1); }
}
body.home-immersive .home-planner-button:active { transform: translateY(3px) scale(.96); }
@media(max-width:700px) {
  body.home-immersive .hero h1 { font-size: clamp(2.2rem,8.6vw,2.8rem); letter-spacing: -.045em; }
  body.home-immersive .hero .hero-description,
  body.home-immersive .service-item p,
  body.home-immersive .process-grid p { font-size: 1.0625rem; }
  body.home-immersive .home-cost-label { font-size: .8rem; }
  body.home-immersive .home-planner-button { font-size: 1.0625rem; }
}
@media(prefers-reduced-motion:reduce) {
  body.home-immersive .home-lively,
  body.home-immersive .home-lively.is-home-pressed,
  body.home-immersive .home-lively.is-home-bouncing,
  body.home-immersive .hero .home-cost.home-lively:hover,
  body.home-immersive .service-item.home-lively:hover,
  body.home-immersive .home-planner-button:active { animation: none; transform: none; transition: none; }
}
