/* Existing approved artwork, in a compact two-character homepage scene. */
.hero,.hero.has-live-home-scene{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:20px;align-items:center;min-height:0;padding:28px;overflow:clip}
.hero .hero-content{position:relative;z-index:2;min-width:0}
.hero h1{font-size:clamp(1.75rem,3vw,2.625rem);line-height:1.2;letter-spacing:-1px;margin:0 0 12px;max-width:none}
.hero .hero-copy{font-size:1.125rem;line-height:1.6;color:#635744;max-width:350px;margin:0 0 20px}
.hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hero .hero-actions>.button-primary{font-size:1.0625rem;min-height:48px;padding:12px 18px;background:#a5573d;color:#fff9ed}
.hero .hero-character-block{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}
.hero .hero-art,.hero.has-live-home-scene .hero-art.has-live-mascots{--child-body:210px;--cat-body:88px;--live-ground:0px;position:relative;left:auto;right:auto;bottom:auto;align-self:auto;min-height:0;width:100%;max-width:360px;height:225px;margin:0;overflow:visible;pointer-events:none}
.hero .hero-art .hero-kauthar{width:245px;height:245px;left:calc(50% - 48px);right:auto;bottom:-6px;transform:translateX(-50%)}
.hero .hero-art .hero-cat{width:100px;height:100px;left:calc(50% + 54px);right:auto;bottom:0;transform:translateX(-50%)}
.hero .hero-star{top:11px;left:8%;color:#94763f;font-size:23px;z-index:0;animation:home-star-drift 18s ease-in-out infinite alternate}
.hero .hero-star.second{top:41px;left:auto;right:5%;font-size:15px;animation:none}
.mascot-motion{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:9px 13px;border:1px solid #8d846f;border-radius:10px;background:#fffdf7;color:#493a30;font:600 .875rem/1.5 "Avenir Next",Avenir,"Segoe UI",sans-serif;white-space:normal;text-align:center;cursor:pointer;touch-action:manipulation}
.mascot-motion:focus-visible{outline:3px solid #925238;outline-offset:4px}
.mascot-motion[aria-pressed="true"]{background:#e5e9d8;border-style:double;border-width:3px;padding:7px 11px}
.mascot-motion[hidden]{display:none!important}
.live-mascot-scene{position:absolute;inset:0;visibility:hidden;pointer-events:none;isolation:isolate}
.has-live-mascots>.live-mascot-scene{visibility:visible}
.hero-art.has-live-mascots>.hero-kauthar,.hero-art.has-live-mascots>.hero-cat{visibility:hidden}
.live-mascot{position:absolute;width:var(--live-box);height:var(--live-box);bottom:calc(var(--live-ground) - var(--live-box)/10);pointer-events:none}
.live-mascot>svg{display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.live-mascot-kauthar{--live-box:calc(var(--child-body)*1000/765.16);left:calc(50% - 48px);transform:translateX(-50%);z-index:2}
.live-mascot-cat{--live-box:calc(var(--cat-body)*1000/721);left:calc(50% + 54px);transform:translateX(-56.6%);z-index:3}
.hero.is-motion-paused .hero-star{animation-play-state:paused}
@keyframes home-star-drift{from{transform:translateY(0)}to{transform:translateY(3px)}}
@media(hover:hover){.mascot-motion:hover{background:#eceede;border-color:#635d4b}}
@media(max-width:760px){
  .hero,.hero.has-live-home-scene{grid-template-columns:minmax(0,1fr);gap:14px;padding:24px}
  .hero h1{font-size:1.875rem;line-height:1.2;letter-spacing:-.6px;margin-bottom:10px}
  .hero .hero-copy{font-size:1rem;line-height:1.55;margin-bottom:16px;max-width:none}
  .hero .hero-actions>.button-primary{font-size:1rem;min-height:46px;padding:10px 16px}
  .hero .hero-art,.hero.has-live-home-scene .hero-art.has-live-mascots{--child-body:195px;--cat-body:80px;height:207px;max-width:310px}
  .hero .hero-character-block{gap:5px}
  .hero .hero-art .hero-kauthar{height:227px;width:227px;bottom:-5px}
  .hero .hero-art .hero-cat{height:91px;width:91px}
  .hero .hero-star{left:5%;top:15px;font-size:20px}
  .hero .hero-star.second{right:3%;top:42px;font-size:14px}
}
@media(max-width:480px){
  .hero,.hero.has-live-home-scene{padding:20px;gap:10px}
  .hero h1{font-size:1.75rem}
}
@media(prefers-reduced-motion:reduce){.hero .hero-star{animation:none!important;transform:none!important}.mascot-motion{transition:none!important}}
