/* Approved desktop/mobile hero hierarchy and CTA positions. */
#homeView .stage{display:flex;flex-direction:column;min-width:0}
#homeView .hero-copy{flex:none;pointer-events:none}
#homeView .hero-copy h1{
  font-size:52px;line-height:1.18;letter-spacing:-1.8px;font-weight:850;
  margin:0 0 20px;white-space:nowrap
}
#homeView .hero-subtitle{
  font-size:20px;line-height:1.5;font-weight:650;letter-spacing:.02em;
  margin:0 0 18px;color:#202720
}
#homeView .hero-description{
  font-size:17px;line-height:1.85;font-weight:400;letter-spacing:.015em;
  margin:0;color:#202720
}
#homeView .start-mobile{display:none}
#homeView .art{
  position:relative;inset:auto;display:grid;place-items:center;
  flex:1;min-height:0;height:auto;margin:10px -20px 0;overflow:hidden
}

#homeView .stage-bottom{
  position:static;display:flex;flex:none;flex-wrap:nowrap;
  justify-content:space-between;align-items:center;gap:20px;
  margin-top:14px
}
#homeView .start{
  flex:none;padding:16px 23px;font-size:15px;font-weight:700;
  line-height:1.4;border-radius:32px
}
#homeView .start span{margin-left:16px}
#homeView .product-switch{width:330px;max-width:330px;min-width:0;flex:1;padding:5px}
#homeView .product-switch button{padding:13px 10px;font-size:14px;line-height:1.5}
@media(min-width:951px){
  #homeView .stage{padding:25px 28px 18px}
  #homeView .art{margin-inline:-28px}
}
@media(min-width:951px) and (max-width:1200px){
  #homeView .stage{padding-inline:18px}
  #homeView .hero-copy h1{font-size:39px}
  #homeView .hero-subtitle{font-size:18px}
  #homeView .hero-description{font-size:14px}
  #homeView .stage-bottom{gap:10px;flex-wrap:nowrap}
  #homeView .product-switch{width:280px;max-width:280px}
}
@media(max-width:950px){
  #homeView .stage{min-height:0;padding:24px 10px 14px}
  #homeView .hero-copy{text-align:left}
  #homeView .hero-copy h1{
    font-size:34px;line-height:1.25;letter-spacing:-1.1px;margin-bottom:18px
  }
  #homeView .hero-subtitle{
    font-size:14px;line-height:1.5;letter-spacing:0;
    margin:0 0 20px;font-weight:650
  }
  #homeView .hero-description{
    font-size:14px;line-height:1.8;letter-spacing:0;margin:0 0 20px
  }
  #homeView .art{
    flex:none;aspect-ratio:1008/768;height:auto;
    width:calc(100% + 20px);margin:10px -10px 0
  }
  #homeView .stage-bottom{
    flex-direction:column;align-items:stretch;gap:13px;margin-top:18px
  }
  #homeView .start{
    justify-content:center;width:auto;padding:12px 18px;
    font-size:13px;line-height:1.4;border-radius:28px
  }
  #homeView .start span{margin-left:18px}
  #homeView .start-mobile{display:inline-flex;pointer-events:auto}
  #homeView .start-desktop{display:none}
  #homeView .product-switch{width:100%;max-width:none;flex:none;padding:5px}
  #homeView .product-switch button{padding:12px 8px;font-size:14px}
}
@media(max-width:370px){
  #homeView .hero-copy h1{font-size:30px}
  #homeView .hero-subtitle{font-size:13px}
  #homeView .hero-description{font-size:13px}
}

#homeView .hero-story[data-case="crew"] .story-scene-content{position:relative;width:100%;height:720px;padding:32px 38px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;perspective:1400px}#homeView .hero-story[data-case="crew"] .story-word{position:absolute;inset:220px 0 auto;text-align:center;font:900 135px/1 "Noto Sans TC","PingFang TC",sans-serif;letter-spacing:-5px;color:#cf421f;white-space:nowrap}#homeView .hero-story[data-case="crew"] .story-floor{position:absolute;width:580px;height:24px;border-radius:50%;background:#7f321d26;filter:blur(12px);left:190px;bottom:66px}#homeView .hero-story[data-case="crew"] .story-design{position:absolute;width:740px;left:110px;top:140px;transform:rotate(-5deg);transform-origin:50% 50%;filter:drop-shadow(0 24px 22px #57200c26)}#homeView .hero-story[data-case="crew"] .story-design-mount{padding:13px;background:#f7f5ef;border-radius:19px}#homeView .hero-story[data-case="crew"] .story-design-photo{display:block;width:100%;height:374px;object-fit:cover;border-radius:10px}#homeView .hero-story[data-case="crew"] .story-mount-label{display:flex;align-items:center;justify-content:space-between;height:51px;padding:5px 9px 0;font-size:25px;font-weight:700}#homeView .hero-story[data-case="crew"] .story-mount-label small{font-size:17px;font-weight:500;letter-spacing:1.5px}#homeView .hero-story[data-case="crew"] .story-artwork{position:absolute;right:-22px;bottom:-27px;width:170px;height:170px;border:9px solid #f7f5ef;border-radius:13px;transform:rotate(13deg);box-shadow:0 14px 24px #351e1929}#homeView .hero-story[data-case="crew"] .story-garment{position:absolute;width:640px;height:640px;left:160px;top:18px;filter:drop-shadow(0 22px 14px #51251a26)}#homeView .hero-story[data-case="crew"] .story-garment img{width:100%;height:100%;object-fit:contain}#homeView .hero-story[data-case="crew"] .story-proof{position:absolute;width:352px;right:39px;top:165px;transform:rotate(6deg);background:#f7f5ef;padding:10px 10px 0;border-radius:16px;box-shadow:0 22px 32px #51251a29}#homeView .hero-story[data-case="crew"] .story-proof img{display:block;width:332px;height:332px;border-radius:8px;object-fit:contain}#homeView .hero-story[data-case="crew"] .story-proof p{font-size:23px;font-weight:700;padding:16px 7px 18px}#homeView .hero-story[data-case="crew"] .story-proof p span{color:#202720;background:#e3ef91;border-radius:50%;display:inline-grid;place-items:center;width:28px;height:28px;margin-right:7px;font-size:19px}#homeView .hero-story[data-case="crew"] .story-caption{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:14px;font-size:21px;letter-spacing:1px}#homeView .hero-story[data-case="crew"] .story-caption b{font-size:18px;letter-spacing:1.5px;border:1px solid #20272055;border-radius:30px;padding:7px 15px}

#homeView .hero-story[data-case="polo"] .story-scene-content{position:relative;width:100%;height:720px;padding:32px 38px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;perspective:1400px}#homeView .hero-story[data-case="polo"] .story-word{position:absolute;inset:220px 0 auto;text-align:center;font:900 135px/1 "Noto Sans TC","PingFang TC",sans-serif;letter-spacing:-5px;color:#a8b56a;white-space:nowrap}#homeView .hero-story[data-case="polo"] .story-floor{position:absolute;width:580px;height:24px;border-radius:50%;background:#20272026;filter:blur(12px);left:190px;bottom:66px}#homeView .hero-story[data-case="polo"] .story-design{position:absolute;width:740px;left:110px;top:140px;transform:rotate(-5deg);transform-origin:50% 50%;filter:drop-shadow(0 24px 22px #20272026)}#homeView .hero-story[data-case="polo"] .story-design-mount{padding:13px;background:#f7f5ef;border-radius:19px}#homeView .hero-story[data-case="polo"] .story-design-photo{display:block;width:100%;height:374px;object-fit:contain;border-radius:10px}#homeView .hero-story[data-case="polo"] .story-mount-label{display:flex;align-items:center;justify-content:space-between;height:51px;padding:5px 9px 0;font-size:25px;font-weight:700}#homeView .hero-story[data-case="polo"] .story-mount-label small{font-size:17px;font-weight:500;letter-spacing:1.5px}#homeView .hero-story[data-case="polo"] .story-artwork{position:absolute;right:-22px;bottom:-27px;width:170px;height:170px;border:9px solid #f7f5ef;border-radius:13px;transform:rotate(13deg);box-shadow:0 14px 24px #20272029}#homeView .hero-story[data-case="polo"] .story-artwork{overflow:hidden;background:#ededed}#homeView .hero-story[data-case="polo"] .story-artwork img{position:absolute;width:800%;max-width:none;height:auto;left:-12px;top:-7px}#homeView .hero-story[data-case="polo"] .story-garment{position:absolute;width:640px;height:640px;left:160px;top:18px;filter:drop-shadow(0 22px 14px #20272026)}#homeView .hero-story[data-case="polo"] .story-garment img{width:100%;height:100%;object-fit:contain}#homeView .hero-story[data-case="polo"] .story-proof{position:absolute;width:352px;left:39px;top:165px;transform:rotate(-6deg);background:#f7f5ef;padding:10px 10px 0;border-radius:16px;box-shadow:0 22px 32px #20272029}#homeView .hero-story[data-case="polo"] .story-proof img{display:block;width:332px;height:332px;border-radius:8px;object-fit:contain}#homeView .hero-story[data-case="polo"] .story-proof p{font-size:23px;font-weight:700;padding:16px 7px 18px}#homeView .hero-story[data-case="polo"] .story-proof p span{color:#202720;background:#e3ef91;border-radius:50%;display:inline-grid;place-items:center;width:28px;height:28px;margin-right:7px;font-size:19px}#homeView .hero-story[data-case="polo"] .story-caption{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:14px;font-size:21px;letter-spacing:1px}#homeView .hero-story[data-case="polo"] .story-caption b{font-size:18px;letter-spacing:1.5px;border:1px solid #20272055;border-radius:30px;padding:7px 15px}

#homeView .hero-story{position:relative;width:0;height:0;pointer-events:none;visibility:hidden}
#homeView .hero-story.ready{visibility:visible}
#homeView .hero-story .story-canvas{position:absolute;left:0;top:0;width:1008px;height:768px;transform-origin:top left;overflow:hidden}
#homeView .hero-story[data-case] .story-scene-content{width:960px;transform:translate(var(--scene-left,24px),32px)}
#homeView .hero-story *{box-sizing:border-box;margin:0}
#homeView .hero-story img{max-width:none}
#homeView .hero-story .story-garment{animation:none;translate:none}
#homeView .hero-story .story-caption{color:#202720}
#homeView .legacy-art[hidden]{display:none!important}
#homeView .legacy-art{position:absolute;inset:0}
#homeView .art.processing-preview>.hero-story{display:none}
#homeView .art.processing-preview>.legacy-art:not([hidden]){display:block}
#homeView .story-control{position:absolute;right:8px;bottom:0;z-index:2;background:#f7f5efcc;color:#202720;border-radius:50%;width:32px;height:32px;padding:0;font-size:13px;display:none;place-items:center}
#homeView .art.story-active:not(.processing-preview)>.story-control{display:grid}
#homeView .story-control:hover{transform:none;background:#f7f5ef}
@media(max-width:950px){
 #homeView .hero-story[data-case] .story-caption{font-size:30px;gap:15px;letter-spacing:0}
 #homeView .hero-story[data-case] .story-caption b{font-size:26px;letter-spacing:0}
 #homeView .hero-story[data-case] .story-proof p{font-size:31px}
 #homeView .hero-story[data-case] .story-proof p span{width:32px;height:32px;font-size:23px}
 #homeView .legacy-art .garment{height:100%;width:auto;top:0}
 #homeView .legacy-art .minimum{top:40%;right:4px;padding:10px 13px}
 #homeView .legacy-art .minimum strong{font-size:24px}
}

#homeView .story-control[hidden]{display:none!important}

/* One stable heading area, synchronized with the approved BEFORE / AFTER cuts. */
#homeView .hero-copy h1{display:grid;align-items:center}
#homeView .hero-copy h1>span{grid-area:1/1;white-space:nowrap}
#homeView .hero-title-before{font-size:.9em}
#homeView .hero-title-after{opacity:0}
/* One brief click sparkle anchored to the upper-right of the final character. */
#homeView .hero-emphasis{position:relative;display:inline-block}
#homeView .click-spark{position:absolute;right:-.06em;top:.135em;width:1px;height:1px;pointer-events:none;overflow:visible}
#homeView .spark-flash{position:absolute;left:-.25em;top:-.25em;width:.5em;height:.5em;opacity:0;transform-origin:center}
#homeView .spark-ray{position:absolute;width:1px;height:1px;left:0;top:0}
#homeView .spark-ray i{position:absolute;left:.192em;top:-.031em;display:block;width:.192em;height:.062em;border-radius:3px;background:#202720;transform-origin:0 50%;opacity:0}
#homeView .ray-a{transform:rotate(-7deg)}
#homeView .ray-b{transform:rotate(-50deg)}
#homeView .ray-c{transform:rotate(-94deg)}
#homeView .spark-twinkle{position:absolute;left:.288em;top:-.481em;width:.212em;height:.212em;opacity:0}
/* No previous-version garment is ever used as a loading or error fallback. */
#homeView .story-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#homeView .story-visuals{position:absolute;inset:0;perspective:1400px}
@media(min-width:951px){
 #homeView .story-visuals{transform:translateY(-8px) scale(clamp(1,var(--shot-zoom,1),var(--max-zoom,1.2)));transform-origin:480px 400px}
 #homeView .hero-story[data-case] .story-caption{bottom:0}
}
#homeView .hero-story.fallback :is(.story-artwork,.story-garment,.story-proof,.story-word-after,.story-caption-after,.story-caption-proof){display:none}
#homeView .art.story-fallback>.story-control{display:none}
