html.yts-tour-popup-open { overflow: hidden; }
dialog.yts-tour-popup {
    box-sizing: border-box;
    position: fixed;
    inset: 0;
    width: min(620px, calc(100% - 32px));
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 38px;
    overflow-y: auto;
    border: 0;
    border-top: 5px solid #000066;
    background: #fff;
    color: #2c3e50;
    font-family: inherit;
    box-shadow: 0 18px 70px rgba(0, 0, 40, .3);
}
.yts-tour-popup::backdrop { background: rgba(16, 28, 44, .65); }
.yts-tour-popup .yts-tour-popup-eyebrow { margin: 0 46px 12px 0; color: #000066; font-size: 12px; font-weight: 700; letter-spacing: 2px; }
.yts-tour-popup h2 { margin: 0 0 16px; font-size: 30px; line-height: 1.2; color: #2c3e50; }
.yts-tour-popup #yts-tour-popup-intro { margin: 0 0 24px; font-size: 16px; line-height: 1.6; }
.yts-tour-popup .yts-tour-popup-close {
    position: absolute; top: 12px; right: 12px;
    width: 44px; height: 44px; padding: 0;
    border: 0; border-radius: 0; box-shadow: none;
    background: transparent; color: #2c3e50; font-family: inherit; cursor: pointer;
    font-size: 30px; line-height: 1;
}
.yts-tour-popup .yts-tour-popup-links { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 0; padding: 0; list-style: none; }
.yts-tour-popup-links > li { margin: 0; padding: 0; }
.yts-tour-popup .yts-tour-popup-links a { display: flex; align-items: center; justify-content: flex-start; gap: 7px; box-sizing: border-box; min-height: 44px; padding: 3px 0; border: 0; color: #000066; background: transparent; font-size: 16px; line-height: 1.5; text-decoration: none; }
.yts-tour-popup .yts-tour-popup-children { margin: 5px 0 4px 31px; padding: 0 0 0 18px; list-style: disc; font-size: 13px; line-height: 1.5; color: #526170; }
.yts-tour-popup .yts-tour-popup-children li { margin: 0 0 5px; padding: 0; }
.yts-tour-popup .yts-tour-popup-links a:hover { color: #24649a; background: transparent; }
.yts-tour-popup button:focus-visible, .yts-tour-popup a:focus-visible { outline: 3px solid #368bd6; outline-offset: 3px; }
.yts-tour-popup .yts-tour-popup-close:focus-visible { outline: 2px solid #526170; outline-offset: 1px; }
.yts-tour-popup #yts-tour-popup-title:focus { outline: none; }
.yts-tour-popup .yts-tour-popup-body { display: block; }
.yts-tour-popup .yts-tour-popup-map { display: none; }
@media (width > 520px) {
    .yts-tour-popup .yts-tour-popup-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; align-items: stretch; }
    .yts-tour-popup .yts-tour-popup-links, .yts-tour-popup .yts-tour-link-text { min-width: 0; overflow-wrap: anywhere; }
    .yts-tour-popup .yts-tour-popup-map { display: flex; flex-direction: column; position: relative; min-width: 0; margin: 0; padding: 2px 10px 12px 0; box-sizing: border-box; }
    .yts-tour-popup .yts-tour-popup-map-image { position: relative; flex: 1; min-height: 0; overflow: visible; isolation: isolate; border-radius: 14px; filter: drop-shadow(-4px -5px 7px rgba(16, 35, 54, .22)); }
    /* Rounded one-pixel layers join the image-wrapped edges without clipped corners. */
    .yts-tour-popup .yts-tour-popup-map-depth { position: absolute; inset: 0; z-index: calc(10 - var(--depth)); pointer-events: none; border-radius: inherit; background: linear-gradient(rgba(255, 255, 255, .5), rgba(255, 255, 255, .5)), url("scotland-nasa-cloudfree.webp") center / cover no-repeat; transform: translate(calc(var(--depth) * 1px), calc(var(--depth) * 1px)); }
    .yts-tour-popup .yts-tour-popup-map img { display: block; position: absolute; inset: 0; z-index: 10; width: 100%; height: 100%; max-width: none; border-radius: inherit; object-fit: cover; object-position: center; filter: brightness(1.22) contrast(.92) saturate(.95); }
}
@media (max-width: 480px) {
    dialog.yts-tour-popup { padding: 28px 22px 24px; }
    .yts-tour-popup h2 { font-size: 25px; }
    .yts-tour-popup .yts-tour-popup-links { grid-template-columns: 1fr; gap: 8px; }
    .yts-tour-popup .yts-tour-popup-links a { min-height: 44px; }
}
