.uh-kind-hero > .uh-wrap:has(> .uh-hero-carousel) { width:100%; }
.uh-hero-carousel { position:relative; min-width:0; }
.uh-hero-carousel [hidden] { display:none !important; }
.uh-hero-legacy > .uh-hero-inner { width:min(var(--uh-width),calc(100% - 64px)); margin-inline:auto; }
.uh-balanced .uh-hero-legacy > .uh-hero-inner { width:min(var(--uh-width),calc(100% - 80px)); }
.uh-hero-track { min-width:0; }
.uh-hero-carousel.is-ready .uh-hero-track { display:flex; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; direction:ltr; }
.uh-hero-track::-webkit-scrollbar { display:none; }
.uh-hero-slide { flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; }
.uh-hero-carousel.is-ready .uh-hero-track { cursor:grab; }
.uh-hero-carousel.is-dragging .uh-hero-track { scroll-snap-type:none; cursor:grabbing; user-select:none; }
.uh-hero-carousel.is-dragging a { cursor:grabbing; }
.uh-hero-controls { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; background:#fff; border-top:1px solid #e5e4e8; }
.uh-hero-dots { display:flex; align-items:center; justify-content:center; }
.uray-home .uh-hero-dot,.uray-home .uh-hero-pause { display:inline-flex; align-items:center; justify-content:center; width:36px; height:40px; min-height:40px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#303833; }
.uh-hero-dot span { width:7px; height:7px; border:1px solid #68716b; border-radius:50%; background:transparent; }
.uh-hero-dot[aria-current=true] span { background:#303833; border-color:#303833; width:9px; height:9px; }
.uh-hero-pause .dashicons { width:16px; height:16px; font-size:16px; }
.uh-hero-banner { min-height:var(--uh-hero-height,495px); height:100%; position:relative; isolation:isolate; }
.uh-hero-tone-white { background:#f6f7f7; color:#232527; }
.uh-hero-tone-mint { background:#eef5f1; color:#20372a; }
.uh-hero-tone-rose { background:#fcf0f3; color:#392d33; }
.uh-hero-tone-ink { background:#26372e; color:#fff; }
.uh-hero-banner-inner { position:relative; min-height:inherit; height:100%; width:min(var(--uh-width),calc(100% - 80px)); margin-inline:auto; display:flex; align-items:center; gap:32px; }
.uh-hero-banner-copy { min-width:0; max-width:520px; padding:40px 0; flex:0 1 45%; }
.uray-home .uh-hero-banner-copy h2 { color:inherit; font-size:44px; line-height:1.15; overflow-wrap:anywhere; }
.uray-home .uh-hero-banner-copy p { color:inherit; font-size:16px; line-height:1.7; margin:20px 0 24px; }
.uray-home .uh-hero-banner-copy .uh-link { background:var(--uh-accent); color:#fff; border-radius:4px; min-height:48px; padding:12px 22px; max-width:100%; overflow-wrap:anywhere; white-space:normal; }
.uh-hero-tone-ink .uh-hero-banner-copy .uh-link { background:#fff; color:#26372e; }
.uh-hero-art,.uh-hero-art-link { position:absolute; inset:0; display:block; width:100%; height:100%; }
.uh-hero-art img { display:block; width:100%; height:100%; object-fit:var(--uh-hero-fit,contain); }
.uh-hero-has-copy .uh-hero-art img { object-position:right center; }
.uh-hero-banner:not(.uh-hero-has-copy) .uh-hero-banner-inner { pointer-events:none; }
.uh-hero-has-copy:not(.uh-hero-has-fan) .uh-hero-banner-copy { text-shadow:0 1px 1px #fff; }
.uh-hero-fan { flex:1 1 55%; display:flex; align-items:center; justify-content:center; gap:12px; min-width:0; padding:32px 0; }
.uh-hero-fan img { display:block; width:calc((100% - 24px)/3); height:380px; max-height:var(--uh-hero-height,495px); object-fit:contain; mix-blend-mode:multiply; }
.uh-hero-fan[data-count="2"] img { width:calc((100% - 12px)/2); }
.uh-hero-fan[data-count="1"] img { width:100%; }
.uh-hero-tone-ink .uh-hero-fan img { mix-blend-mode:normal; }
@media(max-width:1100px) { .uray-home .uh-hero-banner-copy h2 { font-size:36px; } .uh-hero-fan { gap:6px; } }
@media(max-width:767px) {
  .uh-hero-legacy > .uh-hero-inner { width:calc(100% - 32px); }
  .uh-balanced .uh-hero-legacy > .uh-hero-inner,.uh-hero-banner-inner { width:calc(100% - 36px); }
  .uh-hero-banner { min-height:550px; }
  .uh-hero-carousel .uh-hero-inner { min-height:550px; padding-bottom:220px; }
  .uh-hero-carousel .uh-hero-products { height:220px; }
  .uh-hero-banner-inner { flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0; }
  .uh-hero-banner-copy { max-width:100%; flex:0 0 auto; padding:34px 0 12px; }
  .uray-home .uh-hero-banner-copy h2 { font-size:32px; }
  .uray-home .uh-hero-banner-copy p { font-size:15px; margin:18px 0 22px; }
  .uh-hero-fan { width:100%; flex:1 0 auto; padding:16px 0 24px; }
  .uh-hero-fan img { height:220px; }
  .uh-hero-has-copy:not(.uh-hero-has-fan) .uh-hero-art { top:285px; height:calc(100% - 285px); }
  .uh-hero-has-copy .uh-hero-art img { object-position:center bottom; object-fit:contain; }
}
@media(max-width:359px) { .uh-hero-banner,.uh-hero-carousel .uh-hero-inner { min-height:570px; } .uray-home .uh-hero-banner-copy h2 { font-size:28px; } }
@media(prefers-reduced-motion:reduce) { .uh-hero-track { scroll-behavior:auto !important; } }
/* A fixed ten decorative drops; compositor transforms only, no polling or game engine. */
.uray-home .uh-hero-rain{position:absolute;inset:0;overflow:hidden;z-index:3;pointer-events:none;contain:paint}
.uray-home .uh-rain-drop{position:absolute;left:var(--rain-x);top:-75px;width:40px;height:60px;opacity:.5;animation:uh-case-rain var(--rain-speed) linear var(--rain-delay) infinite;animation-play-state:paused}
.uray-home .uh-rain-drop>img{width:100%;height:100%;object-fit:contain}
.uray-home .uh-rain-case{display:flex;align-items:center;justify-content:center;width:35px;height:58px;border:2px solid #793584;border-radius:8px;background:#d9b2df;box-shadow:inset 0 0 0 3px #f5e5f7}
.uray-home .uh-rain-case:before{content:"";position:absolute;top:6px;left:5px;width:9px;height:15px;border:2px solid #fff;border-radius:4px;background:#394146}
.uray-home .uh-rain-case img{width:28px;height:auto;object-fit:contain;margin-top:15px}
.uray-home .uh-rain-drop:nth-child(3n) .uh-rain-case{background:#a4dfd1;border-color:#318577}
.uray-home .uh-rain-drop:nth-child(3n + 1) .uh-rain-case{background:#f5c8d5;border-color:#a65170}
.uray-home .is-rain-playing .uh-hero-slide[aria-hidden="false"] .uh-rain-drop{animation-play-state:running}
@keyframes uh-case-rain{from{transform:translateY(0) rotate(var(--rain-turn))}to{transform:translateY(calc(var(--uh-hero-height, 495px) + 170px)) rotate(calc(var(--rain-turn) + 110deg))}}
@media(max-width:767px){.uray-home .uh-hero-rain{--uh-hero-height:550px}.uray-home .uh-rain-drop{width:32px;opacity:.35}.uray-home .uh-rain-drop:nth-child(n+7){display:none}}
@media(prefers-reduced-motion:reduce){.uray-home .uh-hero-rain{display:none}}
