/* Original promotion posters, in a compact, manually controlled gallery. */
.promo-section{padding:32px 0 24px;background:linear-gradient(180deg,#100c18,#0b0910);border-block:1px solid #d8b46b25}
.promo-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.promo-heading h2{font-size:26px;color:#f6ebd6;letter-spacing:.02em}
.promo-total{font-size:13px;color:#c9b58f;white-space:nowrap}
.promo-tabs{display:flex;gap:7px;margin-bottom:12px}
.promo-tabs button{flex:1;min-width:0;min-height:44px;padding:8px 7px;border:1px solid #c6a5663d;border-radius:8px;background:#17121e;color:#cfc5d5;font-size:13px;white-space:nowrap}
.promo-tabs button[aria-pressed="true"]{background:#302518;color:#ffe3a3;border-color:#e3bd6c;box-shadow:inset 0 1px 0 #ffedc118}
.promo-track{position:relative;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:3px 3px 10px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
.promo-track::-webkit-scrollbar{display:none}
.promo-track.is-dragging{scroll-snap-type:none;cursor:grabbing}
.promo-card{display:block;flex:0 0 calc(100% - 48px);max-width:340px;min-width:0;scroll-snap-align:start;border:1px solid #cdb37566;border-radius:12px;background:#15101d;overflow:hidden;color:#faf4e9;user-select:none;-webkit-user-drag:none;transition:border-color .2s,box-shadow .2s}
.promo-card:hover,.promo-card:focus-visible{border-color:#ebca83;box-shadow:0 0 18px #d6a64c23}
.promo-poster{display:block;height:280px;background:#09080c}
.promo-poster img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.promo-caption{display:block;padding:12px 14px 13px}
.promo-caption strong{display:block;font-size:18px;line-height:1.4;letter-spacing:.015em}
.promo-caption small{display:block;min-height:19px;margin-top:3px;color:#d1c2d5;font-size:12px;line-height:1.5}
.promo-gold-action{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-top:10px;padding:8px 13px;border:1px solid #ffe2a0;border-radius:7px;overflow:hidden;background:linear-gradient(112deg,#be8b37,#e3bc69 24%,#fae6a8 49%,#e6bd67 74%,#c89540);color:#291a08;font-size:13px;font-weight:750;box-shadow:inset 0 1px 0 #fff2ca,0 3px 13px #e2b35a30}
.promo-gold-action>span{position:relative;z-index:1}
.promo-gold-action:after{content:"";position:absolute;z-index:0;inset:-30% auto -30% -65%;width:55%;background:linear-gradient(105deg,transparent,#fff7d17a,transparent);transform:translateX(0) skewX(-18deg);opacity:0;pointer-events:none;animation:promo-gold-sheen 8s ease-in-out infinite;animation-play-state:paused}
.promo-section.promo-in-view .promo-gold-action:after{animation-play-state:running}
.promo-card:nth-child(2) .promo-gold-action:after{animation-delay:1.1s}.promo-card:nth-child(3) .promo-gold-action:after{animation-delay:2.2s}
.promo-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}
.promo-hint{margin:0;color:#bfb2c8;font-size:12px}
.promo-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.promo-control{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #c7a56355;border-radius:8px;background:#19131f;color:#e8cf98;font-size:22px;line-height:1}
.promo-control:disabled{opacity:.3;cursor:default}
.promo-counter{min-width:38px;text-align:center;color:#f4e5c7;font-size:13px;font-variant-numeric:tabular-nums}
.promo-section a:focus-visible,.promo-section button:focus-visible,.promo-dialog button:focus-visible,.promo-dialog a:focus-visible,.promo-track:focus-visible{outline:3px solid #ffe0a0;outline-offset:3px}
.promo-track:focus-visible{outline-offset:0}
.promo-dialog{width:min(1020px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid #cfb27588;border-radius:14px;background:#100c17;overflow:hidden;color:#f8f0df}
.promo-dialog::backdrop{background:#050309ed;backdrop-filter:blur(5px)}
.promo-dialog[open]{display:flex;flex-direction:column}
.promo-dialog [hidden]{display:none!important}
.promo-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #cbb17835;background:#120e1b;flex-shrink:0}
.promo-dialog-head h2{font-size:20px;line-height:1.3;margin:0}.promo-dialog-head p{font-size:12px;color:#cbb88d;margin:0 0 3px}
.promo-dialog-close{flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid #cbb17866;border-radius:8px;background:#201725;color:#f5e2b8;font-size:27px;line-height:1}
.promo-dialog-scroll{overflow:auto;overscroll-behavior:contain;padding:14px;min-height:0}
.promo-view-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.promo-view-tools>div{display:flex;align-items:center;gap:8px}
.promo-zoom{min-height:44px;padding:8px 13px;border:1px solid #bca57580;border-radius:8px;background:#22192b;color:#f1ddb7;font:inherit;font-size:13px}
.promo-zoom[aria-pressed="true"]{background:#e4c583;color:#21180d}
.promo-image-viewport{overflow:auto;max-height:62dvh;background:#08070b;border-radius:6px;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
.promo-image-viewport img{display:block;max-width:100%;max-height:60dvh;width:auto;height:auto;object-fit:contain;margin:auto;cursor:zoom-in}
.promo-image-viewport.is-zoomed img{width:1229px;max-width:none;max-height:none;margin:0;cursor:zoom-out}
.promo-image-error{padding:30px 18px;text-align:center;color:#e3d3b5}
.promo-details{padding:18px 2px 4px;font-size:14px;color:#d6cddc;line-height:1.7}
.promo-details h3{font-size:21px;line-height:1.4;color:#ffe1a2;margin:0 0 8px}
.promo-details p{margin:8px 0}.promo-details ul{padding-left:20px;margin:12px 0}.promo-details li+li{margin-top:8px}
.promo-inquiry{margin-top:16px;font-size:15px;min-height:48px}.promo-original{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#cfc1dc;text-decoration:underline;text-underline-offset:3px}
.promo-view-open{overflow:hidden}
body:has(.promo-dialog[open]) .waze-dock{visibility:hidden}
body:has(.promo-dialog[open]) .rm-flow-frame:before,body:has(.promo-dialog[open]) .rm-group-toggle:before{animation-play-state:paused}
@keyframes promo-gold-sheen{0%,8%{transform:translateX(0) skewX(-18deg);opacity:0}10%{opacity:.8}32%{transform:translateX(350%) skewX(-18deg);opacity:0}100%{transform:translateX(350%) skewX(-18deg);opacity:0}}
@media(max-width:700px){.promo-section{padding:24px 0 18px}.promo-heading h2{font-size:23px}.promo-poster{height:260px}.promo-caption{padding:10px 12px 12px}.promo-caption strong{font-size:17px}.promo-caption small{min-height:36px}.promo-gold-action{margin-top:7px}.promo-dialog{max-height:calc(100dvh - 16px);width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.promo-dialog-head{padding:10px 12px}.promo-dialog-head h2{font-size:18px}.promo-dialog-scroll{padding:10px}.promo-details{padding:14px 3px 4px}.promo-details h3{font-size:19px}}
@media(min-width:900px){.promo-card{flex:1;max-width:none}.promo-poster{height:330px}.promo-tabs,.promo-footer{display:none}.promo-track{overflow:visible;scroll-snap-type:none}.promo-dialog-content{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:22px;align-items:start}.promo-details{padding-top:0}.promo-image-viewport{max-height:70dvh}.promo-image-viewport img{max-height:68dvh}}
@media(prefers-reduced-motion:reduce){.promo-gold-action:after{display:none}.promo-card{transition:none}.promo-track{scroll-behavior:auto}}
/* Five destinations remain visible after adding the Offers shortcut. */
@media(max-width:700px){.nav .menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.nav .menu a{display:flex;justify-content:center;min-width:0;min-height:44px;padding:6px 1px;letter-spacing:0;font-size:14px}html[lang="en"] .nav .menu a{font-size:12px}}
@media(max-width:360px){html[lang="en"] .nav .menu a{font-size:11px}}
