.dd-promo{--promo-ink:#392e32;--promo-rose:#82455b;box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(940px,calc(100% - 40px));max-width:none;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);padding:0;border:1px solid #e6d7d6;border-radius:20px;background:#fffaf7;color:var(--promo-ink);box-shadow:0 24px 100px #241b2b55;font-family:"Plus Jakarta Sans",Arial,sans-serif;overflow:hidden}
.dd-promo:not([open]){display:none}
.dd-promo[open]{display:flex;flex-direction:column;animation:dd-promo-enter .22s ease-out}
.dd-promo::backdrop{background:#251c24b8;backdrop-filter:blur(5px)}
.dd-promo *{box-sizing:border-box}
.dd-promo__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px 0;flex-shrink:0}
.dd-promo__eyebrow{margin:0 0 5px;color:var(--promo-rose);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.dd-promo h2{margin:0;font-family:"Playfair Display",Georgia,serif;font-size:34px;line-height:1.15;font-weight:500;letter-spacing:-.035em;color:var(--promo-ink)}
.dd-promo button{font:inherit;cursor:pointer}
.dd-promo__close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #d9c4ca;border-radius:50%;background:white;color:var(--promo-ink);font-size:30px!important;line-height:1}
.dd-promo__intro{margin:8px 26px 18px;font-size:13px;color:#66565d;line-height:1.5;flex-shrink:0}
.dd-promo__content{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 26px 16px}
.dd-promo__viewport{overflow:hidden;border-radius:10px}
.dd-promo__posters{display:flex;width:200%;align-items:start;animation:dd-promo-drift 28s linear infinite;animation-play-state:paused;will-change:transform}
.dd-promo__offer{margin:0;min-width:0;flex:0 0 25%;padding:0 9px}
.dd-promo__offer[hidden]{display:none}
.dd-promo__image-link{display:block;border-radius:10px;overflow:hidden;background:#f2e7df}
.dd-promo__image-link img{display:block;width:100%;height:min(56dvh,560px);max-height:calc(100dvh - 390px);min-height:100px;object-fit:contain;margin:0 auto}
.dd-promo figcaption{display:grid;gap:5px;padding:12px 2px 0;line-height:1.4;font-size:13px}
.dd-promo figcaption strong{font-weight:700;color:var(--promo-ink)}
.dd-promo figcaption span{font-size:12px;color:#66565d}
.dd-promo__hint{margin:15px 0 0;font-size:11px;line-height:1.6;color:#66565d;text-align:center}
.dd-promo__footer{display:flex;gap:12px;padding:16px 26px;border-top:1px solid #eadbdd;background:#fffaf7;flex-shrink:0}
.dd-promo__footer a{display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;text-decoration:none;font-size:13px;font-weight:700;border-radius:8px;line-height:1.4;padding:10px 14px}
.dd-promo__call{flex:1;border:1px solid #c5a5b1;color:var(--promo-rose);background:white}
.dd-promo__book{flex:1.5;background:var(--promo-rose);color:#fff!important;border:1px solid var(--promo-rose)}
.dd-promo__motion-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 26px 14px;font-size:12px;color:#66565d;flex-shrink:0}
.dd-promo__pause{min-height:44px;padding:8px 12px;border:1px solid #c5a5b1;border-radius:8px;background:white;color:#713c50;font-size:12px!important;font-weight:700!important;flex-shrink:0}
.dd-promo__pause:hover{background:#f4e6eb}
.dd-promo__pause[hidden]{display:none}
.dd-promo__hint a{color:#713c50;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:5px 2px;min-height:24px}
.dd-promo :is(a,button):focus-visible,.dd-promo-reopen:focus-visible{outline:3px solid #82455b;outline-offset:3px}
.dd-promo__close:hover,.dd-promo__call:hover{background:#f4e6eb}
.dd-promo__book:hover{background:#673548}
.dd-promo .booking-attention-cue{display:none!important}
.dd-promo__footer a{margin:0!important}
.dd-promo-reopen{display:block;min-height:44px;margin-top:16px;padding:10px 16px;border:1px solid #c5a5b1;border-radius:6px;background:#fffaf7;color:#82455b;font:600 13px/1.5 "Plus Jakarta Sans",Arial,sans-serif;cursor:pointer}
html.dd-promo-open{overflow:hidden}
@keyframes dd-promo-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes dd-promo-drift{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:759px){
 .dd-promo{width:calc(100% - 20px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:14px}
 .dd-promo__header{padding:16px 16px 0;gap:8px}
 .dd-promo h2{font-size:28px}
 .dd-promo__eyebrow{font-size:9px;letter-spacing:.12em}
 .dd-promo__intro{margin:7px 16px 12px;font-size:12px}
 .dd-promo__motion-controls{margin:0 16px 12px;font-size:11px;gap:8px}
 .dd-promo__pause{font-size:11px!important;padding:8px}
 .dd-promo__content{padding:0 16px 12px}
 .dd-promo__posters{width:400%}
 .dd-promo__offer{padding:0 5px}
 .dd-promo__image-link img{max-height:none;min-height:0;width:100%;height:auto;aspect-ratio:2 / 3;object-fit:contain}
 .dd-promo__footer{padding:12px 16px max(12px,env(safe-area-inset-bottom));gap:8px}
 .dd-promo__footer a{font-size:12px;min-height:44px;padding:10px 8px}
 .dd-promo__hint{text-align:left;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
 .dd-promo[open]{animation:none}
 .dd-promo__posters{animation:none;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;will-change:auto}
 .dd-promo__offer{padding:0}
 .dd-promo [data-promo-clone]{display:none}
}
@media(prefers-reduced-motion:reduce) and (max-width:759px){.dd-promo__posters{grid-template-columns:1fr}}
