/* Home is one responsive scene. Other routes retain normal document scrolling. */
html.is-home,body.is-home{height:100%;height:100dvh;overflow:hidden;background:#102e24}
body.is-home #app{height:100%}
.is-home .hero{height:100%;min-height:0;width:100%;overflow:hidden}
.is-home .hero>.wrap{position:absolute;inset:0;height:100%;width:100%;padding:0 clamp(24px,4vw,54px)}
.is-home .nav{height:clamp(60px,10dvh,86px)}
.is-home .hero-main{position:absolute;top:clamp(98px,19dvh,190px);width:43%;max-width:540px;padding:0}
.is-home .hero h1{font-size:clamp(34px,min(5.2vw,8.4dvh),76px);margin:clamp(12px,2.5dvh,25px) 0;line-height:1.25}
.is-home .hero-copy{font-size:clamp(11px,1.8dvh,15px);line-height:1.85;margin:0}
.is-home .actions{margin-top:clamp(14px,3.5dvh,32px)}
.is-home .tiger-stage{left:42%;right:1%;top:clamp(70px,12dvh,110px);bottom:48px;min-height:0}
.is-home .hero-art{inset:0}
.home-legal{position:absolute;z-index:5;bottom:max(10px,env(safe-area-inset-bottom));left:18px;right:18px;display:flex;justify-content:center;gap:18px;align-items:center;color:#e7e9d6b3;font-size:10px;line-height:1.5;text-shadow:0 1px 4px #102e24}
.home-legal a{color:inherit;text-decoration:none;white-space:nowrap}
.home-legal a:hover{color:#fff3c5}
@media(max-width:760px) and (orientation:portrait){
 .is-home .hero>.wrap{padding:0 24px}
 .is-home .nav{height:clamp(52px,8dvh,70px)}
 .is-home .hero-main{top:clamp(72px,11dvh,100px);width:calc(100% - 48px);max-width:none}
 .is-home .hero h1{font-size:clamp(29px,min(9vw,5.6dvh),47px);margin:12px 0;letter-spacing:-1.6px}
 .is-home .hero-copy{font-size:clamp(10px,1.6dvh,12px);line-height:1.6}
 .is-home .hero .eyebrow{font-size:7px;letter-spacing:1.7px}
 .is-home .actions{margin-top:14px}
 .is-home .primary{padding:11px 19px;font-size:11px}
 .is-home .tiger-stage{left:0;right:0;top:46%;bottom:37px;min-height:0}
 .is-home .hero.tiger-loaded .hero-art{background-size:auto 65%;background-position:65% 100%}
 .is-home .hero-shade{background:linear-gradient(180deg,#102e24 32%,#102e24ed 39%,transparent 64%,#102e2440)}
 .home-legal{gap:2px;flex-direction:column;font-size:8px;bottom:max(5px,env(safe-area-inset-bottom))}
}
@media(max-height:500px) and (orientation:landscape){
 .is-home .nav{height:50px}
 .is-home .hero-main{top:65px}
 .is-home .hero h1{font-size:clamp(24px,7.2dvh,36px);margin:9px 0;letter-spacing:-1px}
 .is-home .hero .eyebrow{font-size:7px;letter-spacing:1.4px}
 .is-home .hero-copy{font-size:10px;line-height:1.5}
 .is-home .actions{margin-top:10px}
 .is-home .primary{padding:10px 18px;font-size:10px}
 .is-home .tiger-stage{top:42px;bottom:28px;left:44%;right:0}
 .is-home .hero.tiger-loaded .hero-art{background-size:cover;background-position:center 58%}
 .is-home .hero-shade{background:linear-gradient(90deg,#102e24bf,transparent 70%)}
 .home-legal{font-size:8px;bottom:5px;gap:12px}
}
@media(max-height:350px){.is-home .hero .eyebrow{display:none}.is-home .hero-main{top:56px}.is-home .hero-copy{line-height:1.3}}

/* Actual model preparation, never an unrelated illustrated tiger fallback. */
.hero:not(.tiger-loaded) .hero-art{background-image:none}
.hero:not(.tiger-loaded)>.wrap,.hero:not(.tiger-loaded)>.home-legal,.hero:not(.tiger-loaded)>.tiger-stage{visibility:hidden}
.tiger-loading{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;background:radial-gradient(ellipse at 50% 45%,#244331,#102e24 66%);color:#f2e1a5}
.tiger-loading-mark{position:relative;display:grid;place-items:center;width:70px;height:70px;font:bold 42px Georgia;color:#f2dda1}
.tiger-loading-mark:after{content:'';position:absolute;inset:-10px;border:1px solid #efd99826;border-top-color:#efd998;border-radius:50%;animation:tiger-loading-spin 1.8s linear infinite}
.tiger-loading p{font-size:12px;letter-spacing:2px;margin:6px 0}
.tiger-loading button{border:1px solid #efd99866;border-radius:24px;padding:10px 22px;color:#f2e1a5;background:transparent;font-size:12px}
.tiger-loading button[hidden]{display:none}
.hero.tiger-loaded .tiger-loading{display:none}
.tiger-loading.is-error .tiger-loading-mark:after{animation:none;border-color:#efd99866}
@keyframes tiger-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.tiger-loading-mark:after{animation:none}}
