/* LP-Apeiria hero slider runtime stylesheet v2.
   Kept separate from main.css so theme/plugin/CDN caches cannot leave the slider unstyled. */
.hero.hero--slider{display:block;align-items:initial;background:#0d0d0d;background-image:none;isolation:isolate;position:relative;overflow:hidden}
.hero.hero--slider::before{display:none}
.hero--slider .hero__track{position:absolute;inset:0}
.hero--slider .hero__slide{position:absolute;inset:0;z-index:0;opacity:0;visibility:hidden;transition:opacity .9s cubic-bezier(.22,.61,.36,1),visibility 0s linear .9s}
.hero--slider .hero__slide.is-active{z-index:1;opacity:1;visibility:visible;transition-delay:0s}
.hero--slider .hero__picture{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden}
.hero--slider .hero__picture img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:scale(1.018);transition:transform 8s cubic-bezier(.18,.72,.22,1)}
.hero--slider .hero__slide.is-active .hero__picture img{transform:scale(1.065)}
.hero--slider .hero__slide-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,9,15,.78) 0%,rgba(4,9,15,.58) 34%,rgba(4,9,15,.2) 61%,rgba(4,9,15,.03) 82%);pointer-events:none}
.hero--slider .hero__slide-overlay::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.24))}
.hero--slider .hero__slide--text-right .hero__slide-overlay{background:linear-gradient(270deg,rgba(4,9,15,.78) 0%,rgba(4,9,15,.58) 34%,rgba(4,9,15,.2) 61%,rgba(4,9,15,.03) 82%)}
.hero--slider .hero__slide-content{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;color:#fff;pointer-events:none}
.hero--slider .hero__inner{width:min(calc(100% - (var(--sw-gutter) * 2)),var(--sw-max));padding:180px 0 clamp(64px,9vh,112px);margin:0 auto}
.hero--slider .hero__copy{max-width:680px}
.hero--slider .hero__slide--text-right .hero__copy{margin-left:auto;text-align:right}
.hero--slider .hero__title{font-family:"Zen Kaku Gothic New","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-weight:500;font-size:clamp(2.1rem,4.6vw,4.8rem);line-height:1.12;letter-spacing:.015em;margin:0 0 28px;max-width:18ch;text-wrap:balance;color:#fff}
.hero--slider .hero__slide--text-right .hero__title{margin-left:auto}
.hero--slider .hero__body{font-size:clamp(.98rem,1.25vw,1.18rem);line-height:1.9;max-width:620px;color:rgba(255,255,255,.9);margin:0}
.hero--slider .hero__slide--text-right .hero__body{margin-left:auto}
.hero--slider .hero__actions{display:flex;align-items:center;gap:28px;margin-top:38px;pointer-events:auto}
.hero--slider .hero__slide--text-right .hero__actions{justify-content:flex-end}
.hero--slider.is-enhanced .hero__copy h1,.hero--slider.is-enhanced .hero__copy .hero__title,.hero--slider.is-enhanced .hero__copy .hero__body,.hero--slider.is-enhanced .hero__actions{opacity:0;clip-path:inset(0 100% 0 0);transform:translate3d(-16px,0,0);transition:clip-path .82s cubic-bezier(.7,0,.2,1),opacity .28s ease,transform .82s cubic-bezier(.16,1,.3,1);will-change:clip-path,opacity,transform}
.hero--slider.is-enhanced .hero__slide--text-right .hero__copy h1,.hero--slider.is-enhanced .hero__slide--text-right .hero__copy .hero__title,.hero--slider.is-enhanced .hero__slide--text-right .hero__copy .hero__body,.hero--slider.is-enhanced .hero__slide--text-right .hero__actions{clip-path:inset(0 0 0 100%);transform:translate3d(16px,0,0)}
.hero--slider.is-enhanced .hero__slide.is-active.is-entering .hero__copy h1,.hero--slider.is-enhanced .hero__slide.is-active.is-entering .hero__copy .hero__title{opacity:1;clip-path:inset(0 0 0 0);transform:none;transition-delay:.18s}
.hero--slider.is-enhanced .hero__slide.is-active.is-entering .hero__copy .hero__body{opacity:1;clip-path:inset(0 0 0 0);transform:none;transition-delay:.36s}
.hero--slider.is-enhanced .hero__slide.is-active.is-entering .hero__actions{opacity:1;clip-path:inset(0 0 0 0);transform:none;transition-delay:.54s}
.hero--slider .hero__controls{position:absolute;z-index:5;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:7px 10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(0,0,0,.2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hero--slider .hero__arrow{appearance:none;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:#fff;font-size:25px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s ease,transform .2s ease}
.hero--slider .hero__arrow:hover{background:rgba(255,255,255,.15);transform:scale(1.05)}
.hero--slider .hero__dots{display:flex;align-items:center;gap:7px}
.hero--slider .hero__dot{appearance:none;border:0;background:transparent;padding:7px 2px;cursor:pointer}
.hero--slider .hero__dot span{display:block;width:22px;height:2px;border-radius:9px;background:rgba(255,255,255,.42);transition:width .35s ease,background .35s ease}
.hero--slider .hero__dot.is-active span{width:42px;background:#fff}
.site-main--home .hero--slider .hero__slide-content{align-items:center}
.site-main--home .hero--slider .hero__inner{padding:150px 0 78px}
@media(max-width:980px){.hero--slider .hero__copy{max-width:64%}.hero--slider .hero__title{font-size:clamp(2rem,5vw,3.5rem)}}
@media(max-width:680px){
  .hero.hero--slider{background-image:none;min-height:620px}
  .hero--slider .hero__slide-overlay,.hero--slider .hero__slide--text-right .hero__slide-overlay{background:linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.17) 38%,rgba(0,0,0,.76) 100%)}
  .hero--slider .hero__slide-content,.site-main--home .hero--slider .hero__slide-content{align-items:flex-end}
  .hero--slider .hero__copy{max-width:100%}
  .hero--slider .hero__inner,.site-main--home .hero--slider .hero__inner{padding:118px 0 94px}
  .hero--slider .hero__title{font-size:clamp(1.9rem,8.5vw,3rem);line-height:1.18;margin-bottom:24px;max-width:16ch}
  .hero--slider .hero__body{font-size:.92rem;line-height:1.8;max-width:32em}
  .hero--slider .hero__controls{bottom:18px;gap:7px;padding:6px 8px}
  .hero--slider .hero__arrow{width:30px;height:30px;font-size:22px}
  .hero--slider .hero__dot span{width:15px}.hero--slider .hero__dot.is-active span{width:30px}
  .hero--slider .hero__slide--text-right .hero__copy{margin-left:auto;text-align:right}
  .hero--slider .hero__slide--text-right .hero__actions{justify-content:flex-end}
}
@media(prefers-reduced-motion:reduce){.hero--slider .hero__slide,.hero--slider .hero__picture img,.hero--slider .hero__copy h1,.hero--slider .hero__copy .hero__title,.hero--slider .hero__copy .hero__body,.hero--slider .hero__actions,.hero--slider .hero__arrow,.hero--slider .hero__dot span{transition:none!important;animation:none!important;transform:none!important;filter:none!important;clip-path:none!important;opacity:1!important}}
