.extasy-hero{position:relative;background:#071e28;color:#fff;overflow:hidden}.extasy-hero__slides{position:relative}.extasy-hero__slide{position:absolute;inset:0;opacity:0;visibility:hidden;min-height:750px;background-size:cover;background-position:center center;transition:opacity .6s ease,visibility .6s ease}.extasy-hero__slide.is-active{position:relative;opacity:1;visibility:visible}.extasy-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0,.18)}.extasy-hero__content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:108px 70px 190px}.extasy-hero__badge{display:inline-block;position:relative;background:#d84d67;color:#fff;font-size:18px;line-height:1.2;font-weight:400;padding:10px 20px 11px 28px;margin-bottom:18px}.extasy-hero__badge:before{content:"";position:absolute;left:-14px;top:0;bottom:0;width:18px;background:#263349;transform:skewX(-16deg)}.extasy-hero__badge span{font-weight:700}.extasy-hero__title{font-size:74px;line-height:1.02;font-weight:800;margin:0 0 26px;max-width:880px;text-shadow:0 2px 10px rgba(0,0,0,.25)}.extasy-hero__line{width:126px;height:4px;background:#fff;margin-bottom:30px}.extasy-hero__desc{font-size:21px;line-height:1.45;max-width:980px;font-weight:600;text-shadow:0 1px 6px rgba(0,0,0,.25)}.extasy-hero__link{display:inline-block;color:#fff;font-style:italic;font-weight:800;text-decoration:underline;margin-left:6px}.extasy-hero__navwrap{position:absolute;left:0;right:0;bottom:0;z-index:3;background:linear-gradient(90deg,#001e2a 0%,#052a3a 50%,#001e2a 100%);box-shadow:0 -1px 0 rgba(255,255,255,.08) inset}.extasy-hero__nav{max-width:1200px;margin:0 auto;display:flex;justify-content:center}.extasy-hero__navbtn{width:135px;height:100px;background:transparent;border:0;border-right:1px solid rgba(255,255,255,.06);border-left:1px solid rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;transition:background .25s ease}.extasy-hero__navbtn img{display:block;max-width:44px;max-height:44px}.extasy-hero__navbtn .icon-active{display:none}.extasy-hero__navbtn.is-active{background:#fff}.extasy-hero__navbtn.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:#df3b53}.extasy-hero__navbtn.is-active .icon-default{display:none}.extasy-hero__navbtn.is-active .icon-active{display:block}.extasy-hero__navbtn:hover{background:rgba(255,255,255,.08)}.extasy-hero__navbtn.is-active:hover{background:#fff}
@media (max-width:1199px){.extasy-hero__content{padding:90px 40px 170px}.extasy-hero__title{font-size:56px}.extasy-hero__desc{font-size:18px}.extasy-hero__slide{min-height:670px}}
@media (max-width:767px){.extasy-hero__slide{min-height:620px}.extasy-hero__content{padding:60px 20px 160px}.extasy-hero__badge{font-size:15px;padding:8px 16px 9px 22px}.extasy-hero__badge:before{left:-11px;width:14px}.extasy-hero__title{font-size:42px;max-width:100%}.extasy-hero__line{width:100px;height:3px;margin-bottom:18px}.extasy-hero__desc{font-size:16px;line-height:1.5;max-width:100%}.extasy-hero__navbtn{width:20%;min-width:0;height:82px}.extasy-hero__navbtn img{max-width:34px;max-height:34px}}

/* v0.1.1 – faithful Paradise typography and ribbon alignment */
.extasy-hero .extasy-hero__slide{min-height:750px;background-position:center center}
.extasy-hero .extasy-hero__content{box-sizing:border-box;width:75%;max-width:1200px;margin:0 auto;padding:102px 0 180px;text-align:left}
.extasy-hero .extasy-hero__badge{position:relative;isolation:isolate;display:inline-flex;align-items:center;height:42px;padding:0;margin:0 0 18px 8px;background:transparent;line-height:1;white-space:nowrap;font-size:17px;font-weight:400;vertical-align:top}
.extasy-hero .extasy-hero__badge:before{content:"";position:absolute;z-index:-2;left:-10px;top:5px;width:calc(100% + 8px);height:42px;background:#27344b;clip-path:polygon(12px 0,100% 0,calc(100% - 11px) 100%,0 100%);transform:none}
.extasy-hero .extasy-hero__badge span{position:relative;z-index:0;display:block;padding:11px 28px 12px 18px;background:#cf4564;clip-path:polygon(10px 0,100% 0,calc(100% - 11px) 100%,0 100%);font-weight:400}
.extasy-hero .extasy-hero__title{font-size:clamp(42px,5.85vw,72px);line-height:1.06;letter-spacing:-.028em;font-weight:800;max-width:none;margin:0 0 23px;white-space:nowrap;overflow:visible;text-shadow:0 2px 4px rgba(0,0,0,.18)}
.extasy-hero .extasy-hero__line{width:126px;height:4px;margin:0 0 30px}
.extasy-hero .extasy-hero__desc{font-size:18px;font-weight:600;line-height:1.45;max-width:100%;margin:0;text-shadow:0 1px 3px rgba(0,0,0,.22)}
.extasy-hero .extasy-hero__link{font-size:inherit;font-weight:800;margin-left:4px;color:#fff}
@media(max-width:1100px){.extasy-hero .extasy-hero__content{width:80%;padding-top:90px}.extasy-hero .extasy-hero__title{font-size:clamp(40px,5.5vw,64px)}}
@media(max-width:767px){.extasy-hero .extasy-hero__slide{min-height:620px}.extasy-hero .extasy-hero__content{width:auto;margin:0;padding:64px 24px 150px}.extasy-hero .extasy-hero__badge{height:36px;font-size:15px;margin-bottom:17px}.extasy-hero .extasy-hero__badge:before{height:36px}.extasy-hero .extasy-hero__badge span{padding:10px 22px 11px 16px}.extasy-hero .extasy-hero__title{white-space:normal;font-size:clamp(34px,9vw,48px);line-height:1.05;letter-spacing:-.02em;margin-bottom:22px}.extasy-hero .extasy-hero__line{width:110px;height:3px;margin-bottom:23px}.extasy-hero .extasy-hero__desc{font-size:16px;line-height:1.45}}

/* v0.2.0 transition engine: keep slides stacked for smooth crossfades/slides */
.extasy-hero__slides{height:750px;overflow:hidden;isolation:isolate}
.extasy-hero__slide,.extasy-hero__slide.is-active{position:absolute;inset:0;min-height:0;height:100%;display:block;visibility:visible;opacity:0;pointer-events:none;transform:translate3d(0,0,0);filter:none;transition:opacity var(--extasy-duration,850ms) ease,transform var(--extasy-duration,850ms) ease,filter var(--extasy-duration,850ms) ease}
.extasy-hero__slide.is-active{opacity:1;z-index:2;pointer-events:auto}
.extasy-hero__slide.is-leaving{z-index:1;pointer-events:none}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide{transform:translateX(10%)}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide.is-active{transform:translateX(0)}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide.is-leaving{transform:translateX(-10%)}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide{transform:translateX(-10%)}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide.is-active{transform:translateX(0)}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide.is-leaving{transform:translateX(10%)}
.extasy-hero[data-transition="zoom"] .extasy-hero__slide{transform:scale(1.08)}
.extasy-hero[data-transition="zoom"] .extasy-hero__slide.is-active{transform:scale(1)}
.extasy-hero[data-transition="zoom"] .extasy-hero__slide.is-leaving{transform:scale(.98)}
.extasy-hero[data-transition="blur"] .extasy-hero__slide{filter:blur(8px)}
.extasy-hero[data-transition="blur"] .extasy-hero__slide.is-active{filter:blur(0)}
.extasy-hero[data-transition="none"] .extasy-hero__slide{transition:none}
@media(max-width:1199px){.extasy-hero__slides{height:670px}}
@media(max-width:767px){.extasy-hero__slides{height:620px}}
@media(prefers-reduced-motion:reduce){.extasy-hero__slide{transition:none!important;transform:none!important;filter:none!important}}

/* v0.3: full-frame slide (no crossfade). Both frames remain fully opaque. */
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide,
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide{opacity:1!important;filter:none!important;transition:transform var(--extasy-duration,850ms) cubic-bezier(.42,0,.19,1)!important;visibility:visible!important;will-change:transform}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide{transform:translate3d(100%,0,0);z-index:1}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide.is-active{transform:translate3d(0,0,0);z-index:3}
.extasy-hero[data-transition="slide-left"] .extasy-hero__slide.is-leaving{transform:translate3d(-100%,0,0);z-index:2}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide{transform:translate3d(-100%,0,0);z-index:1}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide.is-active{transform:translate3d(0,0,0);z-index:3}
.extasy-hero[data-transition="slide-right"] .extasy-hero__slide.is-leaving{transform:translate3d(100%,0,0);z-index:2}
@media(prefers-reduced-motion:reduce){.extasy-hero[data-transition="slide-left"] .extasy-hero__slide,.extasy-hero[data-transition="slide-right"] .extasy-hero__slide{transition:none!important}}
