/* "Activities" (nm-activities.js): GetYourGuide's widget for the towns of the trip, between the stays and the itinerary — the card, the town
   chips, the explanation and the frame. The widget's own tiles take the font, the text size and the link colour from the card (its loader reads
   them), so nothing here styles the inside of the iframe. */
#planContent>#nmActivities{order:3}
.nm-activities .nm-head h3{display:flex;align-items:center;gap:8px}
.nm-ac-towns{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 2px}
.nm-ac-town{display:inline-flex;align-items:center;gap:7px;border:1px solid #d9d0c1;background:#fff;color:var(--nm-ink);border-radius:999px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:650;line-height:1.1;min-height:36px;cursor:pointer;transition:background .15s,border-color .15s}
.nm-ac-town small{font-size:12px;font-weight:600;color:var(--nm-muted)}
.nm-ac-town:hover{border-color:var(--nm-teal);background:var(--nm-teal-soft)}
.nm-ac-town.is-on{background:var(--nm-ink);border-color:var(--nm-ink);color:#fff}
.nm-ac-town.is-on small{color:#c9dadd}
.nm-ac-town:focus-visible,.nm-ac-more:focus-visible,.nm-ac-intro a:focus-visible{outline:2px solid var(--nm-teal);outline-offset:2px}
.nm-ac-intro{margin:12px 2px 14px;font-size:14px;line-height:1.55;color:var(--nm-ink);max-width:68ch}
.nm-ac-intro a{color:var(--nm-teal-d);font-weight:700;text-decoration:none}
.nm-ac-intro a:hover{text-decoration:underline;text-underline-offset:2px}
.nm-ac-frame{position:relative}
.nm-ac-gyg{display:block;width:100%}
/* while GetYourGuide answers: a calm placeholder the size of a row of tiles (a gradient image only: the loader reads the background colour
   behind the widget and must keep finding the card's white) */
.nm-ac-frame.is-loading{min-height:260px;border-radius:16px;background-image:linear-gradient(100deg,#f3eee5 20%,#faf7f1 40%,#f3eee5 60%);background-size:200% 100%;animation:nmAcWait 1.4s linear infinite}
.nm-ac-frame.is-loading .nm-ac-gyg{position:absolute;inset:0;opacity:0}
.nm-ac-wait{display:none;position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);margin:0;padding:0 16px;text-align:center;font-size:13px;color:var(--nm-muted);pointer-events:none}
.nm-ac-frame.is-loading .nm-ac-wait{display:block}
@keyframes nmAcWait{to{background-position:-200% 0}}
.nm-ac-fail{display:none;margin:0;padding:14px 16px;border:1px solid var(--nm-line);border-radius:14px;background:var(--nm-paper);font-size:13.5px;line-height:1.5;color:var(--nm-ink)}
.nm-ac-fail a{color:var(--nm-teal-d);font-weight:700}
.nm-ac-frame.is-failed{min-height:0;animation:none;background:none}
.nm-ac-frame.is-failed .nm-ac-gyg{position:absolute;inset:0;opacity:0;pointer-events:none}
.nm-ac-frame.is-failed .nm-ac-fail{display:block}
.nm-ac-ph{margin:0;padding:16px;border:1px solid var(--nm-line);border-radius:16px;background:var(--nm-paper);display:grid;gap:10px;font-size:13.5px;line-height:1.45;color:var(--nm-ink)}
.nm-ac-ph p{margin:0}
.nm-ac-phacts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.nm-ac-more{display:inline-flex;align-items:center;margin:12px 0 0;border:1.5px solid var(--nm-teal);background:#fff;color:var(--nm-teal-d);border-radius:999px;padding:9px 16px;font:inherit;font-size:13.5px;font-weight:700;line-height:1.1;min-height:38px;cursor:pointer}
.nm-ac-more:hover{background:var(--nm-teal-soft)}
.nm-ac-cap{margin:10px 2px 0;font-size:12px;line-height:1.45;color:var(--nm-muted);max-width:80ch}
@media (prefers-reduced-motion:reduce){.nm-ac-frame.is-loading{animation:none}}
@media (max-width:560px){
  .nm-ac-towns{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-8px;padding-right:8px}
  .nm-ac-towns::-webkit-scrollbar{display:none}
  .nm-ac-town{flex:none}
  .nm-ac-intro{font-size:13.5px}
  .nm-ac-more{width:100%;justify-content:center}
}
