/* Character scenes are decorative backgrounds beneath the text at every width. */
.hero.has-character{justify-content:center;text-align:center;isolation:isolate;overflow:hidden}
.hero.has-character .hero-content{width:100%;padding:60px 20px 90px;z-index:3}
.hero.has-character .hero-eyebrow{justify-content:center}
.hero.has-character h1{font-size:clamp(55px,9.2vw,130px);letter-spacing:-7px}
.hero-character{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;opacity:.52;pointer-events:none;z-index:0;filter:grayscale(1) sepia(.4) hue-rotate(18deg);user-select:none}
.hero.has-character:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#08100655 0%,#07100566 60%,#070d08 100%),linear-gradient(90deg,#07100544,transparent 45%,#07100533)}
.hero.has-character:before{z-index:2}
.hero.has-character .hero-orbit,.hero.has-character .butterfly{z-index:2}
.hero.has-character .hero-bottom{z-index:3}
.hero.has-character .hero-line{color:#eef2e5;text-shadow:0 2px 18px #0009}
.hero.has-character h1{text-shadow:0 4px 40px #0008}
.hero.has-character .hero-description{color:#c2ccb8}
.poems-header{display:block;position:relative;isolation:isolate;overflow:hidden;margin-bottom:40px;padding:48px 42px;min-height:315px;border:1px solid #a4ba7626;border-radius:8px}
.poems-header-copy{position:relative;z-index:2;max-width:760px}
.poems-header .page-intro{margin-bottom:0;color:#c5cfbb}
.poems-character{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 28%;opacity:.46;filter:grayscale(1) sepia(.4) hue-rotate(18deg);pointer-events:none;z-index:0;user-select:none}
.poems-header:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#091107aa,#09110744 70%),linear-gradient(180deg,#09110722,#09110777)}
@media(prefers-reduced-motion:no-preference){.hero-character,.poems-character{animation:scene-reveal 1.5s ease-out both}@keyframes scene-reveal{from{opacity:0;scale:1.035}}}
@media(min-width:1500px){.hero.has-character h1{font-size:142px}}
@media(max-width:1280px){.hero.has-character h1{letter-spacing:-5px}}
@media(max-width:850px){.hero.has-character h1{font-size:80px}.poems-header{padding:38px 30px}}
@media(max-width:600px){
 .hero.has-character{min-height:615px;padding-top:0;flex-direction:row}
 .hero.has-character .hero-content{width:100%;padding:70px 17px 90px}
 .hero.has-character h1{font-size:clamp(40px,11.5vw,68px);letter-spacing:-3px;margin:35px 0 22px}
 .hero-character{position:absolute;inset:0;margin:0;width:100%;height:100%;opacity:.48;object-position:47% 50%}
 .poems-header{padding:32px 22px;min-height:315px;margin-bottom:32px}
 .poems-character{position:absolute;inset:0;margin:0;width:100%;height:100%;max-width:none;opacity:.45;object-position:54% 50%}
 .poems-header .page-title{font-size:34px;line-height:1.25}
 .poems-header .page-title em{font-size:45px}
 .poems-header .page-intro{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.hero-character,.poems-character{animation:none!important}}
.author-note.with-naoya .naoya-art{width:48%;height:100%;object-fit:cover;object-position:75% center;opacity:.55;filter:saturate(.6);mask-image:linear-gradient(90deg,transparent,#000 50%)}
@media(max-width:600px){.author-note.with-naoya .naoya-art{width:100%;height:100%;object-position:78% center;opacity:.28;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 90%,transparent)}}
