.hts{--hts-accent:#6d42d8;--hts-height:680px;position:relative;width:100%;height:var(--hts-height);overflow:hidden;background:#f7f6fb;color:#17151c;isolation:isolate}
.hts__viewport,.hts__track{height:100%}.hts__slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(300px,42%) 1fr;height:100%;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s;pointer-events:none}.hts__slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hts__content{z-index:2;display:flex;flex-direction:column;justify-content:center;height:100%;overflow:auto;padding:clamp(2rem,4vw,4.5rem) clamp(2rem,7vw,7.5rem);padding-right:clamp(2rem,5vw,5rem);background:#fff;clip-path:polygon(0 0,86% 0,100% 100%,0 100%)}
.hts__eyebrow{margin:0 0 1rem;color:var(--hts-accent);font-size:.78rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hts__title{max-width:12ch;margin:0;font-size:clamp(2.6rem,5.2vw,5.8rem);font-weight:750;line-height:.98;letter-spacing:-.045em}.hts__text{max-width:38rem;margin-top:1.6rem;font-size:clamp(1rem,1.25vw,1.25rem);line-height:1.65;color:#595662}.hts__cta{align-self:flex-start;margin-top:2rem;padding:.9rem 1.45rem;border-radius:999px;background:var(--hts-accent);color:#fff;text-decoration:none;font-weight:700;transition:transform .2s,box-shadow .2s}.hts__cta:hover,.hts__cta:focus-visible{color:#fff;transform:translateY(-2px);box-shadow:0 10px 25px color-mix(in srgb,var(--hts-accent) 35%,transparent)}
.hts__visual{position:absolute;inset:0 0 0 36%;z-index:0;background:linear-gradient(90deg,color-mix(in srgb,var(--hts-accent) 38%,transparent),transparent 48%),var(--hts-image) center/cover no-repeat}.hts__visual::after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(transparent,rgba(0,0,0,.24));pointer-events:none}
.hts__transport{margin-top:2.4rem}.hts__transport-title{display:block;margin-bottom:.8rem;font-size:.78rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#77717e}.hts__transport-list{display:flex;flex-wrap:wrap;gap:.65rem}.hts__transport-item{display:inline-flex;align-items:center;gap:.55rem;min-height:46px;padding:.5rem .85rem;border:1px solid #dedbe5;border-radius:12px;background:#fff;color:#24202a;text-decoration:none;font-weight:650;box-shadow:0 4px 12px rgba(31,24,43,.06);transition:border-color .2s,transform .2s}.hts__transport-item img{width:26px;height:26px;object-fit:contain}.hts__transport-item:hover,.hts__transport-item:focus-visible{color:var(--hts-accent);border-color:var(--hts-accent);transform:translateY(-2px)}
.hts__arrow{position:absolute;z-index:5;top:50%;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(20,17,26,.38);color:#fff;font-size:1.35rem;cursor:pointer;backdrop-filter:blur(8px);transform:translateY(-50%)}.hts__arrow--prev{left:1rem}.hts__arrow--next{right:1rem}.hts__arrow:hover,.hts__arrow:focus-visible{background:var(--hts-accent)}.hts__dots{position:absolute;z-index:5;right:clamp(3rem,7vw,7rem);bottom:2rem;display:flex;gap:.55rem}.hts__dots button{width:9px;height:9px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.58);cursor:pointer;transition:width .25s,background .25s}.hts__dots button[aria-selected=true]{width:30px;background:#fff}
@media(max-width:800px){.hts{height:max(720px,var(--hts-height))}.hts__slide{display:flex;align-items:flex-end}.hts__visual{inset:0}.hts__content{width:100%;height:100%;justify-content:flex-end;padding:3rem 1.5rem 5rem;background:linear-gradient(transparent,rgba(13,10,18,.9) 28%);clip-path:none;color:#fff}.hts__title{max-width:14ch;font-size:clamp(2.35rem,11vw,4.2rem)}.hts__text{color:rgba(255,255,255,.82)}.hts__transport-title{color:rgba(255,255,255,.7)}.hts__dots{right:50%;bottom:1.35rem;transform:translateX(50%)}.hts__arrow{top:2rem;transform:none}.hts__arrow--prev{left:auto;right:4.5rem}.hts__arrow--next{right:1rem}}
@media(prefers-reduced-motion:reduce){.hts__slide,.hts__cta,.hts__transport-item,.hts__dots button{transition:none}}

/* Version 2: simple 50/50 image and HTML layout. */
.hts{height:var(--hts-height);background:#fff;color:#17151c}
.hts__viewport,.hts__track{height:100%;min-height:0}
.hts__slide{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;height:100%;min-height:0}
.hts__slide.is-active{position:absolute}
.hts__media{grid-column:1;grid-row:1;min-width:0;min-height:0;overflow:hidden}
.hts__media img{display:block;width:100%;height:100%;object-fit:cover}
.hts__content{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:flex-start;height:100%;min-width:0;min-height:0;overflow:auto;padding:clamp(1rem,2vw,2rem);background:#fff;clip-path:none}
.hts__slide--image-right .hts__media{grid-column:2}
.hts__slide--image-right .hts__content{grid-column:1}
.hts__html{width:100%;max-width:46rem;margin-inline:auto}
.hts__html>:first-child{margin-top:0}
.hts__html>:last-child{margin-bottom:0}
.hts__html h1,.hts__html h2,.hts__html h3{line-height:1.05;letter-spacing:-.035em}
.hts__html h1,.hts__html h2{font-size:clamp(2.2rem,4vw,5rem)}
.hts__full-link{position:absolute;z-index:2;inset:0}
.hts__full-link:focus-visible{outline:4px solid currentColor;outline-offset:-6px}
.hts__dots{left:50%;right:auto;transform:translateX(-50%)}
.hts__dots button{border:1px solid rgba(0,0,0,.24)}
.hts__dots button[aria-selected=true]{background:#17151c}
@media(max-width:800px){.hts{height:auto;min-height:0}.hts__viewport,.hts__track{height:auto;min-height:0}.hts__slide{position:absolute;display:flex;flex-direction:column;height:auto;min-height:0}.hts__slide.is-active{position:relative}.hts__media,.hts__slide--image-right .hts__media{order:1;width:100%;height:clamp(240px,62vw,440px)}.hts__content,.hts__slide--image-right .hts__content{order:2;width:100%;height:auto;overflow:visible;padding:clamp(2rem,8vw,4rem) clamp(1.25rem,6vw,2.5rem) 4.5rem;background:#fff;color:#17151c}.hts__html h1,.hts__html h2{font-size:clamp(2rem,10vw,3.75rem)}.hts__arrow{top:calc(clamp(240px,62vw,440px)/2)}.hts__dots{right:auto;bottom:1.25rem;transform:translateX(-50%)}}

/* Version 2.1: framed card and quieter controls. */
.hts{width:min(calc(100% - 32px),var(--hts-max-width));max-height:var(--hts-height);margin:24px auto;border:1px solid rgba(21,24,35,.1);border-radius:24px;box-shadow:0 18px 55px rgba(24,28,40,.12)}
.hts__media img{transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.hts:hover .hts__slide.is-active .hts__media img{transform:scale(1.015)}
.hts__arrow{width:44px;height:44px;border:1px solid rgba(20,23,32,.12);background:rgba(255,255,255,.94);color:#171922;box-shadow:0 8px 24px rgba(13,17,28,.16);backdrop-filter:blur(12px);transition:transform .2s,background .2s,box-shadow .2s}
.hts__arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hts__arrow--prev{left:18px}.hts__arrow--next{right:18px}
.hts__arrow:hover,.hts__arrow:focus-visible{background:#171922;color:#fff;box-shadow:0 10px 30px rgba(13,17,28,.24);transform:translateY(-50%) scale(1.06)}
.hts__dots{gap:7px;padding:7px 10px;border:1px solid rgba(20,23,32,.08);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 6px 20px rgba(13,17,28,.1);backdrop-filter:blur(10px)}
.hts__dots button{width:7px;height:7px;border:0;background:#a8abb4}
.hts__dots button[aria-selected=true]{width:22px;background:#171922}
@media(max-width:800px){.hts{width:calc(100% - 20px);max-height:none;margin:10px auto;border-radius:18px}.hts__arrow:hover,.hts__arrow:focus-visible{transform:scale(1.06)}}

/* Offer content entered through JCE. */
.hts__offer{--offer-accent:#202b5b;display:flex;flex-direction:column;align-items:flex-start;width:min(100%,620px);margin-inline:auto;color:#171922}
.hts__offer-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 0 24px;border:1px solid color-mix(in srgb,var(--offer-accent) 14%,transparent);border-radius:20px;background:color-mix(in srgb,var(--offer-accent) 6%,#fff);box-shadow:0 10px 28px rgba(22,28,52,.08)}
.hts__offer-icon img{display:block;width:42px;height:42px;object-fit:contain}
.hts__offer-kicker{margin:0 0 9px;color:var(--offer-accent);font-size:clamp(.76rem,.72rem + .18vw,.9rem);font-weight:800;line-height:1.25;letter-spacing:.14em;text-transform:uppercase}
.hts__offer-title{margin:0 0 20px!important;color:#11131a;font-size:clamp(2.6rem,4.4vw,5.4rem)!important;font-weight:800;line-height:.92!important;letter-spacing:-.055em!important}
.hts__offer-details{display:grid;gap:7px;margin:0;padding:0;list-style:none;color:#4f5360;font-size:clamp(1rem,.94rem + .25vw,1.2rem);line-height:1.42}
.hts__offer-details li{display:flex;align-items:center;gap:10px;margin:0}
.hts__offer-details li::before{content:"";flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:var(--offer-accent);opacity:.55}
.hts__offer-price{display:flex;align-items:baseline;gap:9px;margin:24px 0 0;padding-top:18px;border-top:1px solid rgba(20,24,36,.11);color:#11131a}
.hts__offer-price-label{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#777b87}
.hts__offer-price strong{font-size:clamp(2rem,2.8vw,3.25rem);font-weight:850;line-height:1;letter-spacing:-.04em}
@media(max-width:800px){.hts__content,.hts__slide--image-right .hts__content{padding:clamp(1.25rem,5vw,2rem) clamp(1rem,4vw,1.5rem) 4.5rem}.hts__offer-icon{width:62px;height:62px;margin-bottom:18px;border-radius:17px}.hts__offer-icon img{width:36px;height:36px}.hts__offer-title{margin-bottom:16px!important}.hts__offer-price{margin-top:20px;padding-top:15px}}

/* Version 3: structured destination offer. */
.hts__offer-info{display:grid;gap:7px;color:#4f5360;font-size:clamp(1rem,.94rem + .25vw,1.2rem);line-height:1.42}
.hts__offer-info p{margin:0}
.hts__offer-hotel{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.hts__offer-stars{color:var(--offer-accent);font-size:.82em;letter-spacing:.08em;white-space:nowrap}
.hts__offer-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;width:100%;margin-top:24px;padding-top:18px;border-top:1px solid rgba(20,24,36,.11)}
.hts__offer-bottom .hts__offer-price{flex-wrap:wrap;margin:0;padding:0;border:0}
.hts__last-minute{flex:0 0 auto;display:grid;place-items:center;max-width:132px}
.hts__last-minute img{display:block;max-width:112px;max-height:92px;object-fit:contain}
.hts__last-minute span{display:grid;place-items:center;width:98px;min-height:76px;padding:12px 9px;background:#ffd327;color:#11131a;font-size:.86rem;font-weight:900;line-height:1.05;letter-spacing:.04em;text-align:center;text-transform:uppercase;box-shadow:7px 7px 0 rgba(32,43,91,.14);transform:rotate(-5deg)}
@media(max-width:1100px){.hts__offer-icon{width:60px;height:60px;margin-bottom:16px;border-radius:16px}.hts__offer-icon img{width:34px;height:34px}.hts__offer-title{margin-bottom:14px!important}.hts__offer-bottom{margin-top:18px;padding-top:14px}.hts__last-minute img{max-width:86px;max-height:70px}}
@media(max-width:800px){.hts__offer-bottom{align-items:center}.hts__last-minute{max-width:100px}.hts__last-minute span{width:82px;min-height:64px;font-size:.72rem}}

/* Version 3.1: multiple slide types and corner badges. */
.hts__slide--image .hts__media{grid-column:1/-1}
.hts__offer{position:relative;min-height:min(470px,calc(var(--hts-height) - 64px));padding-right:clamp(92px,9vw,145px)}
.hts__offer-icon{position:absolute;top:0;right:0;margin:0}
.hts__last-minute{position:absolute;right:0;bottom:0;z-index:1}
.hts__offer-bottom{margin-top:auto}
@media(max-width:1100px){.hts__offer{min-height:min(410px,calc(var(--hts-height) - 48px));padding-right:76px}.hts__last-minute img{max-width:72px;max-height:62px}}
@media(max-width:800px){.hts__slide--image .hts__media{order:1;grid-column:auto;width:100%;height:clamp(320px,72vw,560px)}.hts__offer{min-height:400px;padding-right:72px}.hts__offer-icon{top:0;right:0}.hts__last-minute{right:0;bottom:0}}

/* Version 3.1.1: sizing, hover controls and media-field compatibility. */
.hts,.hts *{box-sizing:border-box}
.hts__content{overflow:hidden}
@media (hover:hover) and (pointer:fine){.hts__arrow{opacity:0;pointer-events:none;transition:opacity .2s,transform .2s,background .2s,box-shadow .2s}.hts:hover .hts__arrow,.hts:focus-within .hts__arrow,.hts__arrow:focus-visible{opacity:1;pointer-events:auto}}
@media(max-width:800px){.hts__content,.hts__slide--image-right .hts__content{overflow:visible}}

/* Version 3.2: compact mobile offers and per-device slides. */
.hts__slide[hidden],.hts__dots button[hidden]{display:none!important}
.hts--single .hts__arrow,.hts--single .hts__dots{display:none!important}
.hts__slide--fit-contain .hts__media{background:#fff}
.hts__slide--fit-contain .hts__media img{object-fit:contain;transform:none}
.hts:hover .hts__slide--fit-contain.is-active .hts__media img{transform:none}
@media(max-width:800px){.hts__arrow{display:none!important}.hts__offer{min-height:0;padding-right:72px}.hts__offer-bottom{margin-top:22px}.hts__content,.hts__slide--image-right .hts__content{padding-bottom:3.75rem}.hts__last-minute{position:relative;right:auto;bottom:auto;margin-top:18px;align-self:flex-end}.hts__slide--image.hts__slide--fit-cover .hts__media{height:clamp(320px,72vw,560px)}.hts__slide--image.hts__slide--fit-contain .hts__media{height:auto;min-height:0;aspect-ratio:auto}.hts__slide--image.hts__slide--fit-contain .hts__media img{height:auto;max-height:none;object-fit:contain}.hts__dots{bottom:12px}}

/* Version 3.3: full image with overlaid content. */
.hts__slide--fit-full .hts__media{grid-column:1/-1;grid-row:1}
.hts__slide--fit-full .hts__media img{object-fit:cover}
.hts__slide--fit-full .hts__content{position:relative;z-index:1;grid-column:1/-1;grid-row:1;align-self:stretch;justify-self:end;width:min(50%,720px);height:calc(100% - 40px);margin:20px;padding:clamp(1.25rem,2.6vw,2.75rem);border:1px solid rgba(255,255,255,.65);border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 18px 48px rgba(12,18,32,.16);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.hts__slide--fit-full.hts__slide--image-right .hts__content{justify-self:start}
.hts__slide--fit-full .hts__offer{min-height:100%;padding-right:clamp(76px,7vw,120px)}
@media(max-width:800px){.hts__slide--fit-full{display:grid;min-height:620px}.hts__slide--fit-full .hts__media,.hts__slide--fit-full.hts__slide--image-right .hts__media{position:absolute;inset:0;width:100%;height:100%;min-height:0}.hts__slide--fit-full .hts__content,.hts__slide--fit-full.hts__slide--image-right .hts__content{position:relative;z-index:1;align-self:end;justify-self:stretch;order:2;width:auto;height:auto;max-height:calc(100% - 32px);margin:16px;padding:1.25rem 1rem 3.75rem;border-radius:16px;background:rgba(255,255,255,.9);overflow:auto}.hts__slide--fit-full .hts__offer{min-height:0;padding-right:68px}}

/* Version 3.3.1: content directly over full-width imagery. */
.hts__slide--fit-full .hts__content,.hts__slide--fit-full.hts__slide--image-right .hts__content{height:100%;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
@media(max-width:800px){.hts__slide--fit-full .hts__content,.hts__slide--fit-full.hts__slide--image-right .hts__content{height:auto;max-height:100%;margin:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}}
