/* Shared CTA only. No booking, calculator, gallery or global header selectors. */
body[data-jwd-modernized] .jwd-cinematic{position:relative;isolation:isolate;box-sizing:border-box;width:100%;max-width:none;margin:38px auto 44px;padding:0;background:#182c3e;color:#fff;overflow:clip;border:0;border-radius:0;box-shadow:none}
.jwd-cinematic-scene{position:relative;max-width:1774px;margin-inline:auto;isolation:isolate}
.jwd-cinematic picture{display:block;line-height:0;mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 91%,transparent),linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}
.jwd-cinematic picture img{display:block;width:100%;height:auto;margin:0;border:0;border-radius:0;max-width:none}
.jwd-cinematic .jwd-cinematic-button{position:absolute;left:3%;top:70%;width:55.5%;height:15.3%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border:0;border-radius:70px;text-align:center;text-decoration:none;color:#fff;z-index:2;background:transparent;min-height:48px;touch-action:manipulation}
.jwd-cinematic-button span{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.jwd-cinematic .jwd-cinematic-button:hover{box-shadow:0 0 35px #ff493050;background:#fff1}
.jwd-cinematic .jwd-cinematic-button:focus-visible{outline:4px solid #b8d6e8;outline-offset:5px}
.jwd-cinematic-mobile-copy{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.jwd-cinematic-promise{display:none}
.jwd-cinematic-review{position:relative;z-index:2;max-width:850px;margin:-8px auto 0;padding:0 24px 20px;text-align:center;font-size:1rem;line-height:1.65;color:#e8f4fc}
.jwd-cinematic-review a{color:#b8d6e8!important;text-decoration:underline;text-underline-offset:4px}
.jwd-cinematic-review blockquote{margin:4px 0 10px;padding:0;border:0;background:none;color:#fff;font-size:clamp(1rem,1.4vw,1.2rem)}
.jwd-cinematic-review p{margin:3px 0;color:inherit}
.jwd-cinematic-stars{color:#ffda80;letter-spacing:3px}
/* Break out of the existing article container without changing other sections. */
@media(min-width:1100px){.jwd-inline-main .container:has(>.jwd-cinematic),main>.container:has(>.jwd-cinematic){overflow:visible}.jwd-inline-main .jwd-cinematic,.container>.jwd-cinematic{width:calc(100vw - 32px);max-width:1920px;left:50%;transform:translateX(-50%);margin-left:0;margin-right:0}}
@media(min-width:601px) and (max-width:1000px){.jwd-cinematic .jwd-cinematic-button{min-height:48px}.jwd-cinematic-review{font-size:.95rem}}
@media(max-width:600px){
 body[data-jwd-modernized] .jwd-cinematic{margin:22px auto 28px;overflow:clip}
 .jwd-cinematic-scene{min-height:565px;overflow:hidden}
 .jwd-cinematic picture{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 55%,transparent 77%)}
 .jwd-cinematic picture img{position:absolute;width:780px;height:390px;max-width:none;right:-74px;top:116px}
 .jwd-cinematic picture:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#182c3e 0%,transparent 36%,transparent 59%,#182c3e 78%)}
 .jwd-cinematic-mobile-copy{position:relative;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal;z-index:1;padding:18px 12px 0;text-align:center;pointer-events:none}
 .jwd-cinematic-mobile-copy p{margin:0 0 4px;color:#fff;font-size:1.1rem;font-weight:600}
 .jwd-cinematic-mobile-copy p:last-child{margin-top:3px;font-style:italic}
 .jwd-cinematic-mobile-copy h2{margin:0!important;color:#fff!important;font-size:clamp(2.45rem,12vw,4rem)!important;line-height:1.02!important;font-weight:950!important;text-transform:uppercase;letter-spacing:-.035em;text-shadow:0 3px 12px #061824}
 .jwd-cinematic-mobile-copy h2 span{color:#ef5746!important}
 .jwd-cinematic .jwd-cinematic-button{left:12px;right:12px;top:auto;bottom:44px;width:calc(100% - 24px);height:auto;min-height:64px;border-radius:13px;border:1px solid #ff8d7d;background:linear-gradient(#d74130,#af2418);box-shadow:0 0 22px #c83b2c42;padding:15px 7px;font-weight:900;font-size:clamp(.98rem,4.25vw,1.25rem);line-height:1.25}
 .jwd-cinematic-button span{position:static;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal}
 .jwd-cinematic-promise{display:block;position:absolute;bottom:6px;left:0;right:0;text-align:center;color:#e4f2fc!important;font-size:.75rem;letter-spacing:.08em}
 .jwd-cinematic-promise span{color:#ef5746;margin-inline:8px}
 .jwd-cinematic-review{padding:0 14px 16px;margin:0;line-height:1.55;font-size:.95rem}
}
@media(prefers-reduced-motion:reduce){.jwd-cinematic *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* The legacy shared stylesheet also styles generic picture images. Keep this composition scoped. */
body[data-jwd-modernized] .jwd-cinematic picture img{max-width:none!important;border:0!important;border-radius:0!important}
@media(max-width:600px){
 body[data-jwd-modernized] .jwd-cinematic{width:calc(100vw - 20px);left:50%;transform:translateX(-50%);margin-left:0;margin-right:0}
 body[data-jwd-modernized] .jwd-cinematic picture img{position:absolute!important;width:780px!important;height:390px!important;max-width:none!important;right:-74px!important;left:auto!important;top:116px!important;object-fit:fill!important}
 body[data-jwd-modernized] .jwd-cinematic-mobile-copy h2{font-size:clamp(2rem,10vw,3rem)!important}
}
@media(max-width:600px){body[data-jwd-modernized] .jwd-cinematic picture img{right:-10px!important;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 59%,transparent 74%);}}
@media(min-width:601px){body[data-jwd-modernized] .jwd-inline-main .jwd-cinematic,body[data-jwd-modernized] .container>.jwd-cinematic{width:calc(100vw - 32px);max-width:1920px;left:50%;transform:translateX(-50%);margin-left:0;margin-right:0}}
body[data-jwd-modernized] .jwd-cinematic{background:transparent}
/* Final edge treatment: preserve image geometry; blend into the real ancestor surface. */
body[data-jwd-modernized] .jwd-cinematic{--jwd-cta-surface:#182c3e;background:transparent!important}
body[data-jwd-modernized] .jwd-cinematic picture::after{content:"";position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(to right,var(--jwd-cta-surface),transparent 4%,transparent 96%,var(--jwd-cta-surface)),linear-gradient(to bottom,var(--jwd-cta-surface),transparent 6%,transparent 90%,var(--jwd-cta-surface));}
body[data-jwd-modernized] .jwd-cinematic picture{position:relative}
.jwd-cinematic-rating{min-height:1.65em;color:#e8f4fc;font-weight:700}
@media(max-width:600px){body[data-jwd-modernized] .jwd-cinematic picture{position:absolute}body[data-jwd-modernized] .jwd-cinematic picture::after{background:linear-gradient(to right,var(--jwd-cta-surface),transparent 5%,transparent 95%,var(--jwd-cta-surface)),linear-gradient(to bottom,var(--jwd-cta-surface),transparent 36%,transparent 59%,var(--jwd-cta-surface) 78%);}}
@media(max-width:360px){.jwd-cinematic-rating{min-height:3.3em}}

/* Desktop height correction. Uniform proportional scene scaling; mobile/tablet unchanged. */
@media(min-width:1100px){
 body[data-jwd-modernized] .jwd-cinematic-scene{width:min(58%,1030px)}
}
