/* Progressive enhancement: the real heading is always the fallback. */
.w-hero-copy h1{font-size:clamp(126px,18vw,285px);line-height:.86;margin-bottom:34px}
@media(max-width:700px){.w-hero-copy h1{font-size:34vw;line-height:.88;margin-bottom:26px}}
/* The hero copy, portrait and details are independent so mobile can stack them. */
.w-hero-details{display:block;z-index:3;pointer-events:none}
.w-hero-details .button{pointer-events:auto}
@media(min-width:1101px){
 .w-hero-copy{padding:0}
 .w-hero-copy h1{position:absolute;top:calc(var(--hello-center-y,52%) - 80px);left:0;margin:0;transform:translateY(-50%)}
 .w-hero-details{position:absolute;display:block;left:0;right:0;bottom:32px}
 .w-hero-details .w-jp-head{font-size:clamp(27px,2.2vw,34px);line-height:1.28;margin:0 0 10px}
 .w-hero-details .w-hero-description{font-size:clamp(13px,1vw,14px);line-height:1.6;margin:0 0 18px}
 .w-hero-details .button{min-height:60px}
}
@media(min-width:1101px) and (max-width:1279px){
 .w-hero-details{bottom:12px}
 .w-hero-details .w-jp-head{margin-bottom:8px}
 .w-hero-details .w-hero-description{margin-bottom:12px}
 .w-hero-details .button{min-height:54px;padding-block:14px}
}
.w-hero-copy h1>.w-hello-word{position:relative;display:inline-block;color:var(--ink);font:inherit;letter-spacing:inherit;pointer-events:auto}
.w-hello-text{color:inherit!important;font:inherit;opacity:var(--hello-solid,1)}
.w-hello-play{position:absolute;inset:-28px -22px;border:0;padding:0;background:none;color:inherit;cursor:pointer;touch-action:pan-y;border-radius:10px;z-index:1}
.w-welcome{position:relative;touch-action:pan-y}
/* Above the welcome background, behind all foreground content. */
.w-particle-field{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.w-hello-play:focus-visible{outline:2px dashed var(--blue);outline-offset:6px}
@media(max-width:700px){
 .w-hero-grid{display:flex;flex-direction:column}
 .w-hero-copy{order:1;padding:24px 0 0}
 .w-hero-copy h1{text-align:center}
 .w-tony{order:2;margin-top:5px}
 .w-hero-details{order:3;padding:22px 0 28px}
 .w-hero-details .button{min-height:54px;font-size:12px;padding:13px 20px;gap:25px}
}
@media(prefers-reduced-motion:reduce){.w-hello-play{display:none}.w-hello-text{opacity:1!important}}
