/* Hallmark · homepage integration: P4 H5 E4 S5 R5 V4 */
body.home-3d-enabled{--home3d-header-clear:oklch(97% .015 195 / 0);--home3d-bridge-top:oklch(98% .015 190);--home3d-border-clear:oklch(91% .015 170 / .35);--home3d-header-ink:oklch(24% .025 154);--home3d-header-muted:oklch(43% .025 154);--home3d-header-control:oklch(98% .012 190 / .86);--home3d-header-hover:oklch(94% .018 190)}
html body.home-3d-enabled>main{padding-top:0}
#home3d{--font-body:var(--font-home);--font-display:var(--font-home);font-family:var(--font-body);font-size:16px;line-height:1.7;position:relative}
#home3d :is(h1,h2,h3){font-family:var(--font-display)!important;font-weight:500!important;letter-spacing:-.045em!important;color:var(--color-ink)!important}
#home3d :is(p,small,button,input){font-family:var(--font-body)!important}
#home3d .hero{min-height:700px;height:100svh;max-height:1200px}
#home3d .plant-caption{top:13%}
#home3d .path-panel{top:19%}
#home3d .hero-title{font-size:clamp(60px,5.4vw,84px);line-height:1.2}
#home3d .hero-title-block{max-width:58%}
#home3d .scene-heading h2{font-size:clamp(34px,3.6vw,56px)}
#home3d .scene-end h2{font-size:clamp(42px,4.8vw,72px)}
.home-3d-bridge{height:64px;background:linear-gradient(to bottom,var(--home3d-bridge-top),var(--color-stage));pointer-events:none}
body.home-3d-enabled .home-welcome{scroll-margin-top:calc(var(--site-header-height) + 24px)}
body.home-3d-enabled .home-welcome:focus{outline:none}
body.home-3d-enabled .home-welcome-inner{padding-top:clamp(48px,6vw,88px)}
html[data-theme] body.home-3d-intro:not(.nav-open):not(.mega-open):not(.site-search-open) .site-header.site-header.site-header{background:var(--home3d-header-clear)!important;border-bottom-color:var(--home3d-header-clear)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html[data-theme] body.home-3d-intro:not(.nav-open):not(.mega-open):not(.site-search-open) .site-header.site-header.site-header :is(.brand-copy strong,.nav-primary,.nav-expand,.header-icon,.menu-toggle){color:var(--home3d-header-ink)!important}
html[data-theme] body.home-3d-intro:not(.nav-open):not(.mega-open):not(.site-search-open) .site-header.site-header.site-header .brand-copy small{color:var(--home3d-header-muted)!important}
html[data-theme] body.home-3d-intro:not(.nav-open):not(.mega-open):not(.site-search-open) .site-header.site-header.site-header :is(.header-quick-actions,.brand-mark){background:var(--home3d-header-control)!important;border-color:var(--home3d-border-clear)!important}
html[data-theme] body.home-3d-intro:not(.nav-open):not(.mega-open):not(.site-search-open) .site-header.site-header.site-header .header-icon:is(:hover,:focus-visible){background:var(--home3d-header-hover)!important;color:var(--home3d-header-ink)!important}
body.home-3d-intro .site-scroll-progress{opacity:0}
@media(prefers-reduced-motion:no-preference){
  body.home-3d-enabled .home-welcome.is-entering :is(h1,h2,.home-welcome-description,.home-welcome-search,.home-demo-controls,.home-welcome-preview,.home-demo-feedback,.home-welcome-links){animation-duration:560ms!important;animation-delay:0ms!important}
  body.home-3d-enabled .home-welcome.is-entering .home-welcome-description{animation-delay:60ms!important}
  body.home-3d-enabled .home-welcome.is-entering .home-welcome-search{animation-delay:100ms!important}
  body.home-3d-enabled .home-welcome.is-entering .home-demo-controls{animation-delay:140ms!important}
  body.home-3d-enabled .home-welcome.is-entering .home-welcome-preview{animation-delay:180ms!important}
  body.home-3d-enabled .home-welcome.is-entering :is(.home-demo-feedback,.home-welcome-links){animation-delay:220ms!important}
}
@media(max-width:767px){
  #home3d .hero{height:100svh;min-height:680px;max-height:1000px}
  #home3d .hero-title{font-size:clamp(40px,10.8vw,64px)}
  #home3d .hero-title-block{max-width:100%}
  #home3d .scene-heading h2{font-size:30px}
  #home3d .scene-end h2{font-size:38px}
  #home3d .path-panel{top:18%}
  #home3d .path-panel h2{font-size:17px}
  .home-3d-bridge{height:40px}
  body.home-3d-enabled .home-welcome-inner{padding-top:44px}
}
