:root {
  --ts-background: #f6fbfe;
  --ts-surface: #eaf8fe;
  --ts-card: #ffffff;
  --ts-foreground: #08213d;
  --ts-muted: #657889;
  --ts-primary: #1a4a6e;
  --ts-accent: #2d8a9e;
  --ts-accent-soft: #cceff4;
  --ts-border: #d8eaf1;
  --ts-soft-border: rgba(8, 33, 61, .09);
  --ts-radius: 18px;
  --ts-card-radius: 28px;
  --ts-container: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px));
  --ts-card-image-ratio: 4 / 3;
  --ts-section-spacing: 80px;
  --ts-mobile-section-spacing: 48px;
  --ts-shadow-tile: 0 1px 2px rgba(8,33,61,.05), 0 10px 28px -18px rgba(8,33,61,.24);
  --ts-shadow-elevated: 0 4px 14px rgba(8,33,61,.08), 0 28px 54px -26px rgba(8,33,61,.24);
  --ts-font-body: "Figtree", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ts-font-display: "Outfit", "Figtree", ui-sans-serif, system-ui, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ts-background); color: var(--ts-foreground); font-family: var(--ts-font-body); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
.site-main { min-height: 60vh; }
.ts-container { width: var(--ts-container) !important; max-width: none !important; margin-inline: auto; }
.ts-section { padding: var(--ts-section-spacing) 0; }
.ts-section--surface { background: var(--ts-surface); }
.ts-kicker { display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 7px 14px; background: var(--ts-accent-soft); color: var(--ts-accent); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.ts-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.ts-section-head h2, .ts-page-hero h1 { font-family: var(--ts-font-display); line-height: .98; letter-spacing: -.04em; margin: 12px 0 0; color: var(--ts-foreground); }
.ts-section-head h2 { font-size: clamp(34px, 4.5vw, 58px); }
.ts-section-head p, .ts-page-hero p { color: var(--ts-muted); font-size: 18px; line-height: 1.6; margin: 12px 0 0; max-width: 720px; }
.ts-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 999px; border: 1px solid var(--ts-border); background: #fff; color: var(--ts-foreground); font-weight: 800; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.ts-btn:hover { transform: translateY(-1px); box-shadow: var(--ts-shadow-tile); }
.ts-btn--primary { background: var(--ts-primary); color: #fff; border-color: var(--ts-primary); }
.ts-btn--accent { background: var(--ts-accent); color: #fff; border-color: var(--ts-accent); }
.ts-btn--ghost { background: transparent; }
.ts-site-header { position: sticky; top: 0; z-index: 50; background: rgba(246, 251, 254, .86); backdrop-filter: blur(18px); border-bottom: 1px solid var(--ts-border); }
.ts-header-inner { height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ts-logo { display: inline-flex; align-items: center; gap: 10px; font-weight: 900; font-family: var(--ts-font-display); color: var(--ts-foreground); }
.ts-logo-mark { width: 42px; height: 42px; display: inline-grid; place-items: center; border-radius: 50%; background: linear-gradient(135deg, var(--ts-primary), var(--ts-accent)); color: #fff; box-shadow: var(--ts-shadow-tile); }
.ts-logo-text { font-size: 24px; letter-spacing: -.04em; }
.ts-logo-text small { font: 800 11px var(--ts-font-body); color: var(--ts-accent); background: var(--ts-accent-soft); padding: 3px 6px; border-radius: 999px; vertical-align: middle; }
.ts-logo-img { max-height: 42px; width: auto; display: block; }
.ts-main-nav { display: flex; align-items: center; justify-content: center; gap: 6px; flex: 1; }
.ts-nav-item { position: relative; }
.ts-nav-link { display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 15px; border-radius: 999px; color: #456173; font-weight: 700; }
.ts-nav-link:hover, .ts-nav-item:focus-within .ts-nav-link { background: #fff; box-shadow: var(--ts-shadow-tile); color: var(--ts-foreground); }
.ts-dropdown { position: absolute; top: calc(100% + 10px); left: 50%; transform: translateX(-50%) translateY(8px); min-width: 260px; opacity: 0; visibility: hidden; pointer-events: none; background: #fff; border: 1px solid var(--ts-border); border-radius: 24px; padding: 12px; box-shadow: var(--ts-shadow-elevated); transition: all .18s ease; }
.ts-nav-item:hover .ts-dropdown, .ts-nav-item:focus-within .ts-dropdown { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0); }
.ts-dropdown a { display: flex; padding: 11px 12px; border-radius: 14px; color: #4a6577; font-weight: 700; }
.ts-dropdown a:hover { background: var(--ts-surface); color: var(--ts-foreground); }
.ts-header-actions { display: flex; align-items: center; gap: 10px; }
.ts-mobile-toggle { display: none; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--ts-border); background: #fff; }
.ts-hero { padding: 110px 0 84px; }
.ts-hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr); gap: 68px; align-items: center; }
.ts-hero h1 { font-family: var(--ts-font-display); font-size: clamp(58px, 7vw, 112px); line-height: .88; letter-spacing: -.065em; margin: 20px 0 24px; }
.ts-hero h1 span { color: var(--ts-accent); display: block; }
.ts-hero-copy { color: var(--ts-muted); max-width: 620px; font-size: clamp(18px, 1.5vw, 23px); line-height: 1.55; margin-bottom: 34px; }
.ts-search-bar { display: grid; grid-template-columns: 1.2fr .8fr .7fr auto; align-items: center; gap: 10px; max-width: 800px; background: #fff; border: 1px solid var(--ts-border); box-shadow: var(--ts-shadow-elevated); border-radius: 999px; padding: 12px; }
.ts-search-field { display: flex; align-items: center; gap: 12px; padding: 0 14px; border-right: 1px solid var(--ts-border); min-width: 0; }
.ts-search-field:last-of-type { border-right: 0; }
.ts-search-icon { flex: 0 0 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--ts-surface); color: var(--ts-accent); }
.ts-search-label { display: block; color: #718493; font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .12em; }
.ts-search-text { display: block; color: var(--ts-muted); font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ts-trust-row { display: flex; gap: 26px; flex-wrap: wrap; color: #557286; font-size: 14px; font-weight: 700; margin-top: 26px; }
.ts-hero-art { display: grid; grid-template-columns: 1.2fr .7fr; gap: 22px; align-items: center; }
.ts-image-card, .ts-stat-card { border-radius: var(--ts-card-radius); box-shadow: var(--ts-shadow-elevated); border: 1px solid var(--ts-border); overflow: hidden; background: #fff; }
.ts-image-card img { display: block; width: 100%; height: 260px; object-fit: cover; }
.ts-image-card--large img { height: 360px; }
.ts-hero-stack { display: grid; gap: 22px; }
.ts-stat-card { padding: 28px; }
.ts-stat-card strong { display: block; font: 900 42px var(--ts-font-display); letter-spacing: -.05em; }
.ts-stat-card span { color: var(--ts-muted); font-size: 14px; font-weight: 700; }
.ts-stat-card--dark { background: linear-gradient(135deg, var(--ts-primary), var(--ts-accent)); color: #fff; }
.ts-stat-card--dark span { color: rgba(255,255,255,.72); }
.ts-bento { display: grid; grid-template-columns: 1.25fr .6fr .6fr; gap: 24px; }
.ts-destination-large, .ts-offer-card, .ts-wide-image { position: relative; overflow: hidden; min-height: 320px; border-radius: var(--ts-card-radius); box-shadow: var(--ts-shadow-tile); border: 1px solid var(--ts-border); background: #fff; }
.ts-destination-large img, .ts-wide-image img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.ts-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(8,33,61,.78), rgba(8,33,61,.16), rgba(8,33,61,0)); }
.ts-card-content { position: absolute; left: 32px; right: 32px; bottom: 28px; color: #fff; }
.ts-card-content h3 { font-family: var(--ts-font-display); font-size: 34px; line-height: 1; margin: 8px 0; }
.ts-card-content p { margin: 0; color: rgba(255,255,255,.8); }
.ts-offer-card { padding: 34px; display: flex; flex-direction: column; justify-content: space-between; min-height: 320px; }
.ts-offer-card h3 { font-family: var(--ts-font-display); font-size: 34px; line-height: 1.05; margin: 16px 0 12px; letter-spacing: -.04em; }
.ts-thumb-row { display: flex; gap: 10px; }
.ts-thumb-row img { width: 62px; height: 62px; border-radius: 16px; object-fit: cover; }
.ts-place-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.ts-place-card { overflow: hidden; border-radius: var(--ts-card-radius); background: var(--ts-card); border: 1px solid var(--ts-border); box-shadow: var(--ts-shadow-tile); transition: transform .2s ease, box-shadow .2s ease; }
.ts-place-card:hover { transform: translateY(-3px); box-shadow: var(--ts-shadow-elevated); }
.ts-place-media { position: relative; aspect-ratio: var(--ts-card-image-ratio); overflow: hidden; background: var(--ts-surface); }
.ts-place-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.ts-place-card:hover .ts-place-media img { transform: scale(1.035); }
.ts-badge { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; background: rgba(255,255,255,.9); color: var(--ts-foreground); padding: 7px 12px; font-size: 12px; font-weight: 900; }
.ts-place-media .ts-badge { position: absolute; top: 16px; left: 16px; }
.ts-fav { position: absolute; top: 16px; right: 16px; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 0; background: rgba(255,255,255,.92); color: var(--ts-accent); }
.ts-place-body { padding: 20px 22px 22px; }
.ts-place-title-row { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.ts-place-title { font-family: var(--ts-font-display); font-size: 21px; margin: 0; letter-spacing: -.03em; }
.ts-rating { display: inline-flex; align-items: center; gap: 5px; color: var(--ts-foreground); font-weight: 900; }
.ts-rating span { color: var(--ts-accent); }
.ts-location { color: var(--ts-muted); font-size: 14px; margin: 12px 0 18px; }
.ts-place-bottom { display: flex; align-items: end; justify-content: space-between; gap: 14px; }
.ts-price { font-size: 14px; color: var(--ts-muted); }
.ts-price strong { color: var(--ts-foreground); font-size: 22px; font-weight: 900; }
.ts-reviews { color: #7a8c98; font-size: 12px; }
.ts-route-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; }
.ts-route-card { border-radius: 24px; background: #fff; border: 1px solid var(--ts-border); overflow: hidden; box-shadow: var(--ts-shadow-tile); }
.ts-route-card img { width: 100%; height: 190px; object-fit: cover; display: block; }
.ts-route-card div { padding: 18px; }
.ts-route-meta { color: var(--ts-accent); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.ts-route-card h3 { font-family: var(--ts-font-display); font-size: 22px; margin: 8px 0; letter-spacing: -.03em; }
.ts-planner { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: center; }
.ts-step-list { display: grid; gap: 18px; margin-top: 30px; }
.ts-step { display: flex; align-items: center; gap: 18px; padding: 22px; border-radius: 24px; background: #fff; border: 1px solid var(--ts-border); box-shadow: var(--ts-shadow-tile); }
.ts-step-number { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 auto; background: var(--ts-accent-soft); color: var(--ts-accent); font-weight: 900; }
.ts-plan-card { background: #fff; border: 1px solid var(--ts-border); border-radius: 32px; box-shadow: var(--ts-shadow-elevated); padding: 28px; }
.ts-plan-row { display: grid; grid-template-columns: 54px 64px 1fr auto; align-items: center; gap: 16px; padding: 16px; background: var(--ts-surface); border-radius: 20px; margin: 14px 0; }
.ts-plan-row img { width: 64px; height: 52px; border-radius: 14px; object-fit: cover; }
.ts-owner-cta { padding: 62px; border-radius: 36px; background: linear-gradient(135deg, var(--ts-primary), #0b7f91); color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 30px; box-shadow: var(--ts-shadow-elevated); }
.ts-owner-cta h2 { font: 900 clamp(36px, 5vw, 62px)/1.02 var(--ts-font-display); letter-spacing: -.05em; margin: 12px 0; }
.ts-owner-cta p { color: rgba(255,255,255,.78); max-width: 640px; font-size: 18px; line-height: 1.6; }
.ts-trust-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; }
.ts-trust-card { background: #fff; border: 1px solid var(--ts-border); border-radius: 26px; padding: 28px; box-shadow: var(--ts-shadow-tile); }
.ts-icon-bubble { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; background: var(--ts-accent-soft); color: var(--ts-accent); margin-bottom: 24px; font-weight: 900; }
.ts-trust-card h3 { font-family: var(--ts-font-display); margin: 0 0 12px; font-size: 22px; }
.ts-trust-card p { color: var(--ts-muted); line-height: 1.55; margin: 0; }
.ts-site-footer { background: var(--ts-surface); border-top: 1px solid var(--ts-border); padding: 70px 0 34px; }
.ts-footer-grid { display: grid; grid-template-columns: 1.4fr repeat(4,1fr); gap: 60px; }
.ts-footer-brand p { color: var(--ts-muted); line-height: 1.55; max-width: 330px; }
.ts-lang-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 22px; }
.ts-lang-row span { border-radius: 999px; border: 1px solid var(--ts-border); background: #fff; padding: 6px 10px; color: var(--ts-muted); font-size: 12px; font-weight: 800; }
.ts-footer-col h4 { font: 900 15px var(--ts-font-display); margin: 0 0 20px; }
.ts-footer-col a { display: block; color: var(--ts-muted); padding: 7px 0; }
.ts-footer-bottom { border-top: 1px solid var(--ts-border); margin-top: 56px; padding-top: 26px; color: #7c8f9d; font-size: 13px; display: flex; justify-content: space-between; gap: 20px; }
.ts-page-hero { padding: 70px 0 38px; }
.ts-page-hero h1 { font-size: clamp(46px, 5.5vw, 76px); }
.ts-listing-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr) 350px; gap: 34px; align-items: start; padding-bottom: 80px; }
.ts-filter-panel, .ts-map-panel, .ts-white-card { background: #fff; border: 1px solid var(--ts-border); border-radius: 28px; padding: 24px; box-shadow: var(--ts-shadow-tile); }
.ts-filter-title { font: 900 15px var(--ts-font-display); margin-bottom: 22px; display: flex; gap: 8px; align-items: center; }
.ts-filter-group { margin: 24px 0; }
.ts-filter-group label { display: block; font-size: 12px; font-weight: 900; color: #708594; text-transform: uppercase; letter-spacing: .12em; margin-bottom: 12px; }
.ts-pill-row { display: flex; flex-wrap: wrap; gap: 9px; }
.ts-pill { border-radius: 999px; border: 1px solid var(--ts-border); background: #fff; padding: 8px 12px; color: #466376; font-weight: 800; font-size: 13px; }
.ts-pill:hover, .ts-pill.is-active { background: var(--ts-primary); color: #fff; border-color: var(--ts-primary); }
.ts-results-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; }
.ts-results-head h1 { font: 900 34px var(--ts-font-display); letter-spacing: -.04em; margin: 0; }
.ts-results-head p { margin: 4px 0 0; color: var(--ts-muted); }
.ts-select { border: 1px solid var(--ts-border); background: #fff; border-radius: 999px; padding: 12px 18px; font-weight: 800; color: var(--ts-foreground); }
.ts-results-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.ts-map-panel { position: sticky; top: 98px; height: 500px; background: linear-gradient(90deg, rgba(45,138,158,.08) 1px, transparent 1px), linear-gradient(rgba(45,138,158,.08) 1px, transparent 1px), #e8f7f9; background-size: 36px 36px; display: flex; flex-direction: column; justify-content: end; }
.ts-map-dots { position: relative; flex: 1; }
.ts-map-price { position: absolute; border-radius: 999px; background: var(--ts-foreground); color: #fff; padding: 8px 12px; font-size: 13px; font-weight: 900; box-shadow: var(--ts-shadow-tile); }
.ts-map-bottom { background: #fff; border-radius: 20px; padding: 14px; display: flex; justify-content: space-between; align-items: center; }
.ts-detail-grid { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 34px; align-items: start; padding-bottom: 80px; }
.ts-gallery { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; margin: 22px 0 34px; }
.ts-gallery img { width: 100%; height: 260px; object-fit: cover; border-radius: 26px; box-shadow: var(--ts-shadow-tile); }
.ts-gallery img:first-child { height: 536px; }
.ts-enquiry-card { position: sticky; top: 98px; }
.ts-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.ts-field label { display: block; font-size: 13px; font-weight: 900; color: var(--ts-foreground); margin-bottom: 8px; }
.ts-input, .ts-textarea, .ts-field input, .ts-field select, .ts-field textarea { width: 100%; border: 1px solid var(--ts-border); border-radius: 16px; min-height: 48px; padding: 12px 14px; background: #fff; color: var(--ts-foreground); }
.ts-textarea, .ts-field textarea { min-height: 130px; resize: vertical; }
.ts-admin-like-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
@media (max-width: 1180px) {
  .ts-hero-grid, .ts-planner, .ts-detail-grid { grid-template-columns: 1fr; }
  .ts-listing-layout { grid-template-columns: 260px 1fr; }
  .ts-map-panel { display: none; }
  .ts-bento, .ts-place-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ts-route-grid, .ts-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ts-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 860px) {
  :root { --ts-container: min(100% - 32px, 760px); }
  .ts-header-inner { height: auto; min-height: 68px; flex-wrap: wrap; padding: 12px 0; }
  .ts-mobile-toggle { display: inline-grid; place-items: center; }
  .ts-main-nav { order: 4; flex-basis: 100%; display: none; align-items: stretch; flex-direction: column; background: #fff; border: 1px solid var(--ts-border); border-radius: 22px; padding: 10px; }
  .ts-main-nav.is-open { display: flex; }
  .ts-nav-link { width: 100%; justify-content: space-between; }
  .ts-dropdown { position: static; transform: none; opacity: 1; visibility: visible; pointer-events: auto; box-shadow: none; min-width: 0; display: none; margin: 4px 0 8px; }
  .ts-nav-item:hover .ts-dropdown, .ts-nav-item:focus-within .ts-dropdown { transform: none; display: block; }
  .ts-header-actions .ts-btn:not(.ts-btn--primary) { display: none; }
  .ts-hero { padding: 58px 0; }
  .ts-search-bar { grid-template-columns: 1fr; border-radius: 28px; }
  .ts-search-field { border-right: 0; border-bottom: 1px solid var(--ts-border); padding-bottom: 12px; }
  .ts-hero-art { grid-template-columns: 1fr; }
  .ts-bento, .ts-place-grid, .ts-route-grid, .ts-trust-grid, .ts-results-grid, .ts-listing-layout, .ts-admin-like-grid, .ts-form-grid { grid-template-columns: 1fr; }
  .ts-section { padding: 56px 0; }
  .ts-section-head { display: block; }
  .ts-owner-cta { padding: 34px; display: block; }
  .ts-footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .ts-footer-bottom { display: block; }
  .ts-gallery { grid-template-columns: 1fr; }
  .ts-gallery img, .ts-gallery img:first-child { height: 280px; }
}

/* TuSpot EU v0.2 refinements */
body.tuspot-platform { background: var(--ts-page-bg, var(--ts-background)); }
.ts-search-text { border: 0 !important; background: transparent !important; outline: 0 !important; width: 100%; padding: 0; min-height: auto; }
.ts-link { color: var(--ts-accent); font-weight: 900; }
.ts-link:hover { color: var(--ts-primary); }
.ts-success { border-color: rgba(45, 138, 158, .28); background: linear-gradient(180deg, #fff, var(--ts-accent-soft)); }
.ts-dashboard-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.ts-dashboard-hero h2 { font: 900 clamp(34px, 4vw, 58px)/.98 var(--ts-font-display); letter-spacing: -.04em; margin: 12px 0; }
.ts-package-price { font-size: 22px; color: var(--ts-foreground); }
.ts-clean-list { list-style: none; padding: 0; margin: 18px 0 24px; display: grid; gap: 10px; color: var(--ts-muted); font-weight: 700; }
.ts-add-place-form .ts-section-head { align-items: start; }
.ts-entry-card__image img { width: 100%; height: 240px; object-fit: cover; border-radius: 22px 22px 0 0; }
.ts-entry-card__body { padding: 22px; }
.ts-entry-card__title { font-family: var(--ts-font-display); margin: 0 0 8px; }
.ts-grid { display: grid; gap: 24px; }
.ts-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ts-empty-state { max-width: 720px; margin: 0 auto; text-align: center; }
.ts-pagination { margin: 36px 0; }
.ts-legal-card h2 { font-family: var(--ts-font-display); letter-spacing: -.03em; }
.ts-legal-card p, .ts-legal-card li { color: var(--ts-muted); line-height: 1.7; }
.ts-feature-band { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: center; }
.ts-feature-band img { width: 100%; height: 360px; object-fit: cover; border-radius: var(--ts-card-radius); box-shadow: var(--ts-shadow-tile); }
.ts-mini-metrics { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; margin-top: 20px; }
.ts-mini-metric { background: var(--ts-surface); border: 1px solid var(--ts-border); border-radius: 18px; padding: 16px; }
.ts-mini-metric strong { display: block; font: 900 24px var(--ts-font-display); }
.ts-mini-metric span { color: var(--ts-muted); font-size: 13px; font-weight: 700; }
@media (max-width: 1280px) {
  .ts-main-nav { gap: 2px; }
  .ts-nav-link { padding: 0 10px; }
  .ts-header-actions .ts-currency-pill { display: none; }
}
@media (max-width: 860px) {
  .ts-dashboard-hero, .ts-feature-band { display: block; }
  .ts-feature-band img { height: 260px; margin-top: 22px; }
  .ts-mini-metrics, .ts-grid-3 { grid-template-columns: 1fr; }
  .ts-header-actions { gap: 6px; }
  .ts-header-actions .ts-btn:not(.ts-btn--primary) { display: none; }
}
.ts-verified { position: absolute; right: 14px; top: 14px; border-radius: 999px; background: rgba(255,255,255,.92); color: var(--ts-primary); padding: 7px 11px; font-size: 12px; font-weight: 900; box-shadow: var(--ts-shadow-tile); }

/* TuSpot EU v0.3 platform refinements */
.ts-btn { border-radius: var(--ts-button-radius, 999px); }
.ts-filter-form { display: grid; gap: 12px; }
.ts-check { display: flex !important; align-items: center; gap: 8px; color: var(--ts-foreground) !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; }
.ts-card-intro { color: var(--ts-muted); font-size: 14px; line-height: 1.45; margin: 10px 0 0; }
.ts-mini-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.ts-mini-tags span { border-radius: 999px; background: var(--ts-surface); color: var(--ts-accent); padding: 6px 9px; font-size: 12px; font-weight: 900; }
.ts-promoted { position: absolute; left: 14px; bottom: 14px; border-radius: 999px; background: #fff; color: var(--ts-primary); padding: 8px 11px; font-size: 12px; font-weight: 900; box-shadow: var(--ts-shadow-tile); }
.ts-detail-head { display: flex; justify-content: space-between; gap: 22px; align-items: start; margin-bottom: 14px; }
.ts-price-large { display: inline-flex; border-radius: 999px; background: var(--ts-surface); color: var(--ts-primary); padding: 10px 14px; white-space: nowrap; }
.ts-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.ts-info-grid > div { background: var(--ts-surface); border: 1px solid var(--ts-border); border-radius: 18px; padding: 16px; }
.ts-info-grid strong { display: block; margin-bottom: 6px; color: var(--ts-foreground); }
.ts-info-grid span { color: var(--ts-muted); line-height: 1.45; }
.ts-readiness { display: grid; gap: 10px; margin: 14px 0; }
.ts-readiness > div:first-child { display: flex; justify-content: space-between; gap: 16px; color: var(--ts-foreground); }
.ts-readiness span { color: var(--ts-muted); font-size: 13px; font-weight: 800; }
.ts-progress { height: 12px; border-radius: 999px; background: var(--ts-surface); overflow: hidden; border: 1px solid var(--ts-border); }
.ts-progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--ts-accent), var(--ts-primary)); border-radius: inherit; }
.ts-dashboard-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 22px; }
.ts-dashboard-grid h3 { font: 900 24px var(--ts-font-display); letter-spacing: -.03em; margin: 12px 0; }
.ts-action-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 24px; }
.ts-field select { appearance: none; }
.ts-form-grid .ts-field { margin: 0; }
.ts-empty-state { margin-top: 28px; }
.ts-muted { color: var(--ts-muted); }
@media (max-width: 1180px) { .ts-dashboard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 860px) { .ts-detail-head, .ts-info-grid, .ts-dashboard-grid { grid-template-columns: 1fr; display: grid; } .ts-price-large { justify-self: start; } }
.ts-account-menu .ts-dropdown { right: 0; left: auto; transform: translateY(8px); }
.ts-account-menu:hover .ts-dropdown, .ts-account-menu:focus-within .ts-dropdown { transform: translateY(0); }

/* TuSpot EU v0.4 controls and listing refinements */
.ts-results-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.ts-view-switch { display: inline-flex; align-items: center; padding: 4px; border-radius: 999px; background: #fff; border: 1px solid var(--ts-border); box-shadow: var(--ts-shadow-tile); }
.ts-view-switch a { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 0 12px; font-weight: 900; color: var(--ts-muted); font-size: 13px; }
.ts-view-switch a.is-active { background: var(--ts-primary); color: #fff; }
.ts-sort-form { margin: 0; }
.ts-range-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ts-results-grid--list { grid-template-columns: 1fr; }
.ts-results-grid--list .ts-place-card a { display: grid; grid-template-columns: 280px minmax(0,1fr); min-height: 220px; }
.ts-results-grid--list .ts-place-media { aspect-ratio: auto; min-height: 220px; }
.ts-results-grid--compact { grid-template-columns: 1fr; }
.ts-concierge-card h2 { font: 900 clamp(30px, 4vw, 52px)/.98 var(--ts-font-display); letter-spacing: -.04em; margin: 12px 0; }
.ts-concierge-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.ts-concierge-grid > div { border: 1px solid var(--ts-border); background: var(--ts-surface); border-radius: 18px; padding: 16px; }
.ts-concierge-grid strong { display: block; color: var(--ts-foreground); margin-bottom: 6px; }
.ts-concierge-grid span { color: var(--ts-muted); line-height: 1.45; }
@media (max-width: 860px) {
  .ts-results-head { display: block; }
  .ts-results-actions { justify-content: flex-start; margin-top: 16px; }
  .ts-results-grid--list .ts-place-card a { display: block; }
  .ts-results-grid--list .ts-place-media { aspect-ratio: var(--ts-card-image-ratio); min-height: 0; }
  .ts-concierge-grid, .ts-range-row { grid-template-columns: 1fr; }
}

/* TuSpot EU v0.5 accessibility, mobile and content refinements */
html, body { overflow-x: hidden; }
.ts-skip-link { position:absolute; left:24px; top:12px; z-index:999; transform:translateY(-140%); background:#fff; color:var(--ts-foreground); border:2px solid var(--ts-accent); border-radius:999px; padding:10px 16px; font-weight:900; box-shadow:var(--ts-shadow-elevated); }
.ts-skip-link:focus { transform:translateY(0); outline:0; }
:where(a, button, input, select, textarea):focus-visible { outline:3px solid rgba(45,138,158,.35); outline-offset:3px; }
.ts-nav-link span { font-size:12px; color:var(--ts-accent); }
.ts-content-hub h2 { font:900 clamp(34px,4vw,58px)/.98 var(--ts-font-display); letter-spacing:-.04em; margin:12px 0 14px; }
.ts-content-hub > p { color:var(--ts-muted); font-size:18px; line-height:1.65; max-width:850px; }
.ts-content-hub-grid { margin-top:24px; }
.ts-mini-card { background:var(--ts-surface); border:1px solid var(--ts-border); border-radius:18px; padding:18px; }
.ts-mini-card strong { display:block; color:var(--ts-foreground); margin-bottom:7px; }
.ts-mini-card span { color:var(--ts-muted); font-size:13px; line-height:1.45; }
.ts-currency-pill { white-space:nowrap; }
@media (max-width: 1320px) {
  .ts-main-nav { gap:0; }
  .ts-nav-link { font-size:14px; padding-inline:9px; }
  .ts-header-inner { gap:14px; }
}
@media (max-width: 1040px) {
  .ts-header-actions .ts-currency-pill { display:none; }
  .ts-nav-link { font-size:13px; padding-inline:7px; }
}
@media (max-width: 860px) {
  .ts-header-inner { align-items:center; }
  .ts-main-nav { max-height:calc(100vh - 92px); overflow:auto; }
  .ts-nav-item { width:100%; }
  .ts-dropdown { border-radius:18px; background:var(--ts-surface); }
  .ts-dropdown a { padding:10px 12px; }
  .ts-account-menu { width:auto; }
  .ts-account-menu .ts-dropdown { position:absolute; right:0; min-width:220px; background:#fff; box-shadow:var(--ts-shadow-elevated); }
  .ts-header-actions .ts-btn--primary { padding-inline:14px; }
  .ts-hero h1 { font-size:clamp(46px,14vw,68px); }
  .ts-results-head h1 { font-size:30px; }
}
@media (max-width: 540px) {
  :root { --ts-container:min(100% - 24px, 520px); }
  .ts-header-actions .ts-account-menu .ts-btn { display:none; }
  .ts-header-actions .ts-btn--primary { min-height:40px; padding-inline:12px; font-size:13px; }
  .ts-logo-text { font-size:21px; }
  .ts-logo-mark { width:38px; height:38px; }
  .ts-section { padding:44px 0; }
  .ts-filter-panel, .ts-map-panel, .ts-white-card { border-radius:22px; padding:20px; }
  .ts-owner-cta { border-radius:26px; }
  .ts-page-hero { padding-top:44px; }
}


/* TuSpot EU v0.6 frontend refinements */
.ts-destination-index, .ts-owner-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ts-owner-benefits { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ts-pill-cloud { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.ts-pill-cloud a, .ts-pill-cloud span { display:inline-flex; align-items:center; min-height:34px; padding:0 12px; border-radius:999px; background:var(--ts-surface); border:1px solid var(--ts-border); color:var(--ts-primary); font-weight:800; font-size:14px; }
.ts-pill-cloud a:hover { background:#fff; box-shadow:var(--ts-shadow-tile); }
.ts-mobile-owner-cta { display:none; position:fixed; left:16px; right:16px; bottom:16px; z-index:60; justify-content:center; box-shadow:var(--ts-shadow-elevated); }
.admin-bar .ts-mobile-owner-cta { bottom:24px; }
.wp-block-group.ts-container { width:var(--ts-container) !important; max-width:none !important; margin-inline:auto; }
@media (max-width: 1180px){ .ts-destination-index, .ts-owner-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px){ .ts-section { padding: var(--ts-mobile-section-spacing) 0; } .ts-destination-index, .ts-owner-benefits { grid-template-columns:1fr; } .ts-mobile-owner-cta { display:flex; } body { padding-bottom:74px; } }

/* TuSpot EU v0.7 editable content, saved board and mobile experience */
.ts-place-card { position: relative; }
.ts-fav { position:absolute; right:14px; top:62px; z-index:4; width:42px; height:42px; border:0; border-radius:999px; background:rgba(255,255,255,.94); color:var(--ts-primary); font-size:20px; font-weight:900; box-shadow:var(--ts-shadow-tile); cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.ts-fav:hover, .ts-fav.is-saved { background:var(--ts-primary); color:#fff; }
.ts-saved-board { display:grid; gap:24px; }
.ts-saved-board-head { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.ts-saved-board-head h2 { font:900 clamp(30px,4vw,52px)/.98 var(--ts-font-display); letter-spacing:-.04em; margin:8px 0 12px; }
.ts-saved-board-head p { color:var(--ts-muted); font-size:17px; line-height:1.6; max-width:760px; margin:0; }
.ts-saved-board-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ts-saved-empty { grid-column:1/-1; text-align:left; }
.ts-saved-empty h3 { font:900 28px/1.05 var(--ts-font-display); margin:14px 0 10px; color:var(--ts-foreground); }
.ts-saved-empty p { color:var(--ts-muted); max-width:720px; line-height:1.6; }
.ts-saved-item { overflow:visible; }
.ts-remove-saved { margin:12px 18px 18px; width:calc(100% - 36px); justify-content:center; }
.ts-trust-panel { margin-top:24px; }
.ts-trust-panel .ts-section-head { margin-bottom:18px; }
.ts-mobile-bottom-nav { display:none; position:fixed; left:12px; right:12px; bottom:12px; z-index:70; grid-template-columns:repeat(5,1fr); gap:4px; background:rgba(255,255,255,.94); border:1px solid var(--ts-border); border-radius:24px; box-shadow:var(--ts-shadow-elevated); padding:8px; backdrop-filter:blur(18px); }
.ts-mobile-bottom-nav a { min-height:52px; border-radius:17px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; color:var(--ts-muted); font-size:11px; font-weight:900; text-decoration:none; }
.ts-mobile-bottom-nav a span { display:block; color:var(--ts-primary); font-size:17px; line-height:1; }
.ts-mobile-bottom-nav a:hover, .ts-mobile-bottom-nav a:focus-visible { background:var(--ts-surface); color:var(--ts-primary); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }
@media (max-width: 980px) { .ts-saved-board-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px) {
  .ts-saved-board-head { display:grid; }
  .ts-saved-board-grid { grid-template-columns:1fr; }
  .ts-mobile-bottom-nav { display:grid; }
  body { padding-bottom:96px; }
  .ts-mobile-owner-cta { bottom:86px; }
}

/* TuSpot EU v0.8 navigation stability */
@media (min-width: 861px) {
  .ts-nav-item { isolation: isolate; }
  .ts-nav-item::after {
    content: "";
    position: absolute;
    left: -24px;
    right: -24px;
    top: 100%;
    height: 22px;
    display: block;
    z-index: 1;
  }
  .ts-dropdown { z-index: 5; }
  .ts-nav-item.is-dropdown-open .ts-dropdown,
  .ts-nav-item:hover .ts-dropdown,
  .ts-nav-item:focus-within .ts-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
  }
  .ts-account-menu.is-dropdown-open .ts-dropdown,
  .ts-account-menu:hover .ts-dropdown,
  .ts-account-menu:focus-within .ts-dropdown {
    transform: translateY(0);
  }
  .ts-account-dropdown { min-width: 280px; }
}

/* TuSpot EU v0.9 static page visual templates */
.ts-page-hero--visual { padding: 70px 0 46px; }
.ts-page-hero-copy { margin-bottom: 32px; }
.ts-page-hero-copy h1 { max-width: 980px; }
.ts-page-bento { display:grid; gap:24px; min-height:420px; }
.ts-page-bento-item { position:relative; overflow:hidden; border-radius:var(--ts-card-radius); border:1px solid var(--ts-border); box-shadow:var(--ts-shadow-tile); background-color:#a7b3ba; background-size:cover; background-position:center; min-height:180px; }
.ts-page-bento-main { display:flex; align-items:flex-end; min-height:420px; }
.ts-page-bento-main > div { padding:34px; color:#fff; max-width:720px; text-shadow:0 8px 30px rgba(0,0,0,.28); }
.ts-page-bento-main span { display:block; font-size:12px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; opacity:.84; margin-bottom:10px; }
.ts-page-bento-main strong { display:block; font-family:var(--ts-font-display); font-size:clamp(34px,4.2vw,62px); line-height:.98; letter-spacing:-.045em; }
.ts-page-bento-main em { display:block; margin-top:12px; max-width:680px; font-style:normal; color:rgba(255,255,255,.82); font-weight:700; line-height:1.45; }
.ts-page-hero--template-1 .ts-page-bento { grid-template-columns:2fr 1fr 1fr; grid-template-rows:210px 210px 180px; }
.ts-page-hero--template-1 .ts-page-bento-main { grid-column:1 / span 2; grid-row:1 / span 2; }
.ts-page-hero--template-1 .ts-page-bento-tile-1 { grid-column:3; grid-row:1; }
.ts-page-hero--template-1 .ts-page-bento-tile-2 { grid-column:3; grid-row:2; }
.ts-page-hero--template-1 .ts-page-bento-tile-3 { grid-column:1; grid-row:3; }
.ts-page-hero--template-1 .ts-page-bento-tile-4 { grid-column:2; grid-row:3; }
.ts-page-hero--template-1 .ts-page-bento-tile-5 { grid-column:3; grid-row:3; }
.ts-page-hero--template-2 .ts-page-bento { grid-template-columns:2fr 1fr; grid-template-rows:190px 190px 190px; }
.ts-page-hero--template-2 .ts-page-bento-main { grid-column:1; grid-row:1 / span 3; min-height:610px; }
.ts-page-hero--template-2 .ts-page-bento-tile-1 { grid-column:2; grid-row:1; }
.ts-page-hero--template-2 .ts-page-bento-tile-2 { grid-column:2; grid-row:2; }
.ts-page-hero--template-2 .ts-page-bento-tile-3 { grid-column:2; grid-row:3; }
.ts-page-hero--template-2 .ts-page-bento-tile-4, .ts-page-hero--template-2 .ts-page-bento-tile-5 { display:none; }
.ts-page-hero--template-3 .ts-page-bento { grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:380px 190px; }
.ts-page-hero--template-3 .ts-page-bento-main { grid-column:1 / -1; grid-row:1; min-height:380px; }
.ts-page-hero--template-3 .ts-page-bento-tile-1 { grid-column:1; grid-row:2; }
.ts-page-hero--template-3 .ts-page-bento-tile-2 { grid-column:2; grid-row:2; }
.ts-page-hero--template-3 .ts-page-bento-tile-3 { grid-column:3; grid-row:2; }
.ts-page-hero--template-3 .ts-page-bento-tile-4, .ts-page-hero--template-3 .ts-page-bento-tile-5 { display:none; }
@media (max-width: 980px) {
  .ts-page-bento, .ts-page-hero--template-1 .ts-page-bento, .ts-page-hero--template-2 .ts-page-bento, .ts-page-hero--template-3 .ts-page-bento { grid-template-columns:1fr; grid-template-rows:auto; min-height:0; }
  .ts-page-bento-main, .ts-page-hero--template-1 .ts-page-bento-main, .ts-page-hero--template-2 .ts-page-bento-main, .ts-page-hero--template-3 .ts-page-bento-main { grid-column:auto; grid-row:auto; min-height:340px; }
  .ts-page-bento-item, .ts-page-hero--template-1 .ts-page-bento-tile-1, .ts-page-hero--template-1 .ts-page-bento-tile-2, .ts-page-hero--template-1 .ts-page-bento-tile-3, .ts-page-hero--template-1 .ts-page-bento-tile-4, .ts-page-hero--template-1 .ts-page-bento-tile-5, .ts-page-hero--template-2 .ts-page-bento-tile-1, .ts-page-hero--template-2 .ts-page-bento-tile-2, .ts-page-hero--template-2 .ts-page-bento-tile-3, .ts-page-hero--template-3 .ts-page-bento-tile-1, .ts-page-hero--template-3 .ts-page-bento-tile-2, .ts-page-hero--template-3 .ts-page-bento-tile-3 { grid-column:auto; grid-row:auto; display:block; min-height:180px; }
  .ts-page-hero--template-2 .ts-page-bento-tile-4, .ts-page-hero--template-2 .ts-page-bento-tile-5, .ts-page-hero--template-3 .ts-page-bento-tile-4, .ts-page-hero--template-3 .ts-page-bento-tile-5 { display:none; }
}
@media (max-width: 640px) {
  .ts-page-hero--visual { padding-top:42px; }
  .ts-page-bento { gap:14px; }
  .ts-page-bento-main { min-height:300px; }
  .ts-page-bento-main > div { padding:24px; }
  .ts-page-bento-main em { display:none; }
}


/* TuSpot EU v1.0 static page hero refinements */
.ts-page-hero--no-copy { padding-top:46px; }
.ts-page-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.ts-page-bento-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.ts-page-bento-actions b { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 14px; border-radius:999px; background:rgba(255,255,255,.94); color:var(--ts-primary); font-size:13px; font-weight:900; text-shadow:none; }
.ts-page-bento-actions b + b { background:rgba(255,255,255,.16); color:#fff; border:1px solid rgba(255,255,255,.32); }
.ts-page-hero--visual + .ts-container.ts-white-card { margin-top: 10px; }
@media (max-width: 640px) { .ts-page-hero-actions { gap:8px; } .ts-page-hero-actions .ts-btn { width:100%; justify-content:center; } .ts-page-bento-actions { display:none; } }

/* TuSpot v1.1 static page content blocks */
.ts-page-blocks-section { margin-top: 18px; margin-bottom: 34px; }
.ts-page-blocks-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ts-page-info-card { display: block; background: #fff; border: 1px solid var(--ts-border); border-radius: 28px; padding: 28px; box-shadow: var(--ts-shadow-tile); color: var(--ts-foreground); transition: transform .2s ease, box-shadow .2s ease; }
a.ts-page-info-card:hover { transform: translateY(-3px); box-shadow: var(--ts-shadow-elevated); text-decoration: none; }
.ts-page-info-card h2 { font: 900 27px/1.1 var(--ts-font-display); letter-spacing: -.04em; margin: 14px 0 12px; color: var(--ts-foreground); }
.ts-page-info-card p { color: var(--ts-muted); line-height: 1.65; margin: 0 0 18px; }
.ts-page-info-card strong { color: var(--ts-accent); font-weight: 900; }
.ts-page-content-card { margin-bottom:80px; }
@media (max-width: 1100px) { .ts-page-blocks-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .ts-page-blocks-grid { grid-template-columns: 1fr; } .ts-page-info-card { padding: 22px; border-radius: 22px; } }

/* TuSpot EU v1.3 laptop navigation and extra static page templates */
.ts-nav-more { display: none; }
.ts-dropdown-group-label { display:block; padding:10px 12px 4px; color:var(--ts-foreground); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.12em; opacity:.68; }
.ts-page-hero--template-4 .ts-page-bento { grid-template-columns:1fr; grid-template-rows:460px; min-height:0; }
.ts-page-hero--template-4 .ts-page-bento-main { grid-column:1; grid-row:1; min-height:460px; }
.ts-page-hero--template-4 .ts-page-bento-tile-1,
.ts-page-hero--template-4 .ts-page-bento-tile-2,
.ts-page-hero--template-4 .ts-page-bento-tile-3,
.ts-page-hero--template-4 .ts-page-bento-tile-4,
.ts-page-hero--template-4 .ts-page-bento-tile-5 { display:none; }
.ts-page-hero--template-5 { padding-bottom:32px; }
.ts-page-hero--template-5 .ts-page-hero-copy { max-width:980px; margin-bottom:0; }
.ts-page-hero--template-5 .ts-page-hero-copy p { max-width:760px; }
@media (min-width:861px) and (max-width:1380px) {
  .ts-site-header--laptop-compact .ts-container.ts-header-inner { width: min(1480px, calc(100vw - 28px)) !important; }
  .ts-site-header--laptop-compact .ts-header-inner { gap:12px; }
  .ts-site-header--laptop-compact .ts-logo-mark { width:36px; height:36px; }
  .ts-site-header--laptop-compact .ts-logo-text { font-size:20px; }
  .ts-site-header--laptop-compact .ts-main-nav { gap:1px; }
  .ts-site-header--laptop-compact .ts-nav-link { min-height:38px; padding:0 9px; font-size:14px; }
  .ts-site-header--laptop-compact .ts-header-actions { gap:6px; }
  .ts-site-header--laptop-compact .ts-header-actions .ts-currency-pill { display:none; }
  .ts-site-header--laptop-compact .ts-header-actions .ts-btn { min-height:40px; padding-inline:14px; font-size:14px; }
}
@media (min-width:861px) and (max-width:1260px) {
  .ts-site-header--laptop-compact .ts-nav-item--transport,
  .ts-site-header--laptop-compact .ts-nav-item--packages { display:none; }
  .ts-site-header--laptop-compact .ts-nav-more { display:block; }
}
@media (min-width:861px) and (max-width:1120px) {
  .ts-site-header--laptop-compact .ts-logo-text small { display:none; }
  .ts-site-header--laptop-compact .ts-account-menu > .ts-btn { display:none; }
  .ts-site-header--laptop-compact .ts-nav-link { padding-inline:7px; font-size:13px; }
  .ts-site-header--laptop-compact .ts-header-actions .ts-btn--primary { padding-inline:12px; }
}
@media (max-width:860px) {
  .ts-nav-more { display:block; }
  .ts-dropdown-group-label { padding:10px 12px 2px; }
  .ts-page-hero--template-4 .ts-page-bento { grid-template-columns:1fr; grid-template-rows:auto; }
  .ts-page-hero--template-4 .ts-page-bento-main { min-height:340px; }
}
/* Keep mobile menu simple: full list is visible inside the hamburger, so the laptop More group is hidden on phones. */
@media (max-width:860px) { .ts-site-header--laptop-compact .ts-nav-more { display:none; } }

/* TuSpot EU v1.4 — richer static page content blocks */
.ts-page-info-card { overflow: hidden; }
.ts-page-info-card-body { padding: 0; }
.ts-page-info-card--has-image { padding: 0; }
.ts-page-info-card--has-image .ts-page-info-card-body { padding: 24px 26px 26px; }
.ts-page-info-card-image { min-height: 185px; background-size: cover; background-position: center; border-bottom: 1px solid var(--ts-border); }
.ts-page-info-card--image .ts-page-info-card-image { min-height: 230px; }
.ts-page-info-card--highlight { background: linear-gradient(135deg, var(--ts-primary), #0e7f93); color: #fff; border-color: rgba(255,255,255,.16); }
.ts-page-info-card--highlight h2,
.ts-page-info-card--highlight p,
.ts-page-info-card--highlight strong { color: #fff; }
.ts-page-info-card--highlight .ts-kicker { background: rgba(255,255,255,.16); color: #fff; }
.ts-page-info-card--checklist { position: relative; padding-left: 72px; }
.ts-page-info-card--checklist::before { content: '✓'; position: absolute; left: 26px; top: 28px; width: 30px; height: 30px; border-radius: 999px; display: grid; place-items: center; background: var(--ts-accent-soft); color: var(--ts-accent); font-weight: 900; }
.ts-page-info-card--cta { background: linear-gradient(135deg, #ffffff 0%, var(--ts-accent-soft) 100%); border-color: rgba(45,138,158,.25); }
.ts-page-info-card--cta strong { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 18px; border-radius: var(--ts-button-radius); background: var(--ts-primary); color: #fff; }
@media (max-width: 720px) {
  .ts-page-info-card--checklist { padding-left: 58px; }
  .ts-page-info-card--checklist::before { left: 18px; top: 22px; }
  .ts-page-info-card-image { min-height: 160px; }
}

/* TuSpot EU Theme v1.5 — smart lower page sections */
.ts-page-smart-sections { padding: 0 0 var(--ts-section-spacing); }
.ts-page-related-section,
.ts-page-concierge-section,
.ts-page-owner-cta-section { margin-top: 28px; }
.ts-section-headline { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.ts-section-headline h2 { margin:8px 0 8px; font-size:clamp(28px,3vw,44px); line-height:.98; letter-spacing:-.04em; }
.ts-section-headline p { margin:0; color:var(--ts-muted); max-width:720px; font-size:16px; line-height:1.55; }
.ts-pill-link { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 18px; border-radius:999px; background:#fff; border:1px solid var(--ts-border); color:var(--ts-primary); font-weight:900; text-decoration:none; box-shadow:0 12px 30px rgba(15,47,70,.06); white-space:nowrap; }
.ts-cards-grid--compact { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-page-owner-cta-section { margin-top:42px; }
.ts-owner-cta-card { background:linear-gradient(135deg,var(--ts-primary),var(--ts-accent)); color:#fff; border-radius:34px; min-height:220px; padding:clamp(28px,4vw,58px); display:flex; align-items:center; justify-content:space-between; gap:36px; box-shadow:0 24px 50px rgba(15,47,70,.18); }
.ts-owner-cta-card h2 { margin:10px 0 12px; color:#fff; font-size:clamp(30px,4vw,58px); line-height:1; letter-spacing:-.05em; max-width:760px; }
.ts-owner-cta-card p { color:rgba(255,255,255,.82); max-width:760px; font-size:17px; line-height:1.6; margin:0; }
.ts-owner-cta-card .ts-kicker { background:rgba(255,255,255,.15); color:#fff; }
.ts-page-owner-actions { display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end; }
.ts-btn--light { background:#fff; color:var(--ts-primary); }
.ts-btn--outline-light { background:transparent; color:#fff; border:1px solid rgba(255,255,255,.34); }
@media (max-width: 980px) {
  .ts-section-headline, .ts-owner-cta-card { display:grid; }
  .ts-cards-grid--compact { grid-template-columns:1fr; }
  .ts-page-owner-actions { justify-content:flex-start; }
}

/* TuSpot EU Theme v1.7 — static page section builder */
.ts-page-builder-sections { padding: 0 0 28px; display: grid; gap: 28px; }
.ts-page-builder-section { background: #fff; border: 1px solid var(--ts-border); border-radius: 34px; padding: clamp(26px, 4vw, 54px); box-shadow: var(--ts-shadow-tile); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(260px, .75fr); gap: clamp(22px, 4vw, 54px); align-items: center; }
.ts-page-builder-copy h2 { margin: 12px 0 14px; font: 900 clamp(30px, 4vw, 56px)/.98 var(--ts-font-display); letter-spacing: -.055em; color: var(--ts-foreground); max-width: 780px; }
.ts-page-builder-copy p { color: var(--ts-muted); line-height: 1.68; font-size: 17px; max-width: 760px; margin: 0 0 22px; }
.ts-page-builder-image { min-height: 320px; border-radius: 28px; background-size: cover; background-position: center; box-shadow: 0 18px 42px rgba(15,47,70,.12); }
.ts-page-builder-icon { min-height: 260px; border-radius: 30px; background: linear-gradient(135deg, var(--ts-accent-soft), #fff); border: 1px solid var(--ts-border); display: grid; place-items: center; color: var(--ts-accent); font-size: 74px; font-weight: 900; }
.ts-page-builder-section--wide { grid-template-columns: 1fr; }
.ts-page-builder-section--wide .ts-page-builder-image, .ts-page-builder-section--wide .ts-page-builder-icon { min-height: 260px; order: -1; }
.ts-page-builder-section--cards { grid-template-columns: 1fr; }
.ts-page-builder-section--compact { grid-template-columns: minmax(0, 1fr) 220px; padding: 32px; }
.ts-page-builder-section--spotlight { background: linear-gradient(135deg, var(--ts-primary), var(--ts-accent)); color: #fff; border-color: transparent; }
.ts-page-builder-section--spotlight .ts-kicker { background: rgba(255,255,255,.16); color: #fff; }
.ts-page-builder-section--spotlight h2, .ts-page-builder-section--spotlight p { color: #fff; }
.ts-page-builder-section--spotlight .ts-page-builder-icon { background: rgba(255,255,255,.14); color: #fff; border-color: rgba(255,255,255,.2); }
.ts-builder-mini-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 22px 0; }
.ts-builder-mini-grid span { background: var(--ts-accent-soft); border: 1px solid var(--ts-border); border-radius: 18px; padding: 14px; color: var(--ts-foreground); font-weight: 800; }
.ts-builder-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 24px 0; }
.ts-builder-stats span { background: var(--ts-accent-soft); border-radius: 20px; padding: 18px; }
.ts-builder-stats b { display:block; font: 900 34px/1 var(--ts-font-display); color: var(--ts-foreground); }
.ts-builder-stats small { color: var(--ts-muted); font-weight: 800; }
.ts-builder-faq-list { display:grid; gap:10px; margin: 20px 0; }
.ts-builder-faq-list details { border:1px solid var(--ts-border); background: var(--ts-accent-soft); border-radius:18px; padding:14px 16px; }
.ts-builder-faq-list summary { cursor:pointer; font-weight:900; color:var(--ts-foreground); }
.ts-builder-faq-list p { margin:10px 0 0; font-size:15px; }
@media (max-width: 980px) {
  .ts-page-builder-section, .ts-page-builder-section--compact { grid-template-columns: 1fr; }
  .ts-page-builder-image, .ts-page-builder-icon { min-height: 220px; }
  .ts-builder-mini-grid, .ts-builder-stats { grid-template-columns: 1fr; }
}


/* TuSpot EU Theme v1.8 — extra builder section types */
.ts-builder-comparison { margin: 22px 0; display:grid; gap:8px; }
.ts-builder-comparison span { display:grid; grid-template-columns: .8fr 1fr 1.4fr; gap:10px; align-items:center; padding:12px 14px; border-radius:16px; background: var(--ts-accent-soft); border:1px solid var(--ts-border); color:var(--ts-muted); font-weight:700; }
.ts-builder-comparison span:first-child { background: #fff; color:var(--ts-foreground); font-weight:900; }
.ts-builder-comparison b, .ts-builder-comparison em { font-style:normal; }
.ts-builder-timeline { margin: 24px 0; display:grid; gap:12px; }
.ts-builder-timeline span { display:flex; align-items:center; gap:14px; background: var(--ts-accent-soft); border:1px solid var(--ts-border); border-radius:18px; padding:14px; }
.ts-builder-timeline b { width:36px; height:36px; border-radius:50%; background:var(--ts-accent); color:#fff; display:grid; place-items:center; font-weight:900; }
.ts-builder-timeline em { font-style:normal; color:var(--ts-foreground); font-weight:850; }
.ts-builder-gallery-strip { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:12px; margin:24px 0; }
.ts-builder-gallery-strip span { min-height:120px; border-radius:20px; background: linear-gradient(135deg,var(--ts-accent-soft),#fff); border:1px solid var(--ts-border); box-shadow:0 12px 30px rgba(15,47,70,.08); }
.ts-page-builder-section--comparison-table .ts-page-builder-icon,
.ts-page-builder-section--timeline .ts-page-builder-icon,
.ts-page-builder-section--gallery-strip .ts-page-builder-icon { background:linear-gradient(135deg,#fff,var(--ts-accent-soft)); }
@media (max-width: 720px) {
  .ts-builder-comparison span { grid-template-columns: 1fr; }
  .ts-builder-gallery-strip { grid-template-columns: 1fr; }
}

/* TuSpot EU v2.1 — owner-selected place profile banners */
.ts-place-profile-banner {
  position: relative;
  display: grid;
  gap: 18px;
  margin-top: 54px;
  margin-bottom: 34px;
  min-height: 430px;
  border-radius: 34px;
  overflow: hidden;
  background-image: linear-gradient(90deg, rgba(11,43,76,.16), rgba(11,43,76,.02)), var(--ts-place-banner-image);
  background-size: cover;
  background-position: center;
  box-shadow: var(--ts-shadow-card);
  isolation: isolate;
}
.ts-place-profile-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(234,248,254,.78), rgba(234,248,254,.08) 58%, rgba(11,43,76,.08));
  z-index: -1;
}
.ts-place-banner-panel {
  align-self: center;
  margin: 54px;
  width: min(650px, calc(100% - 48px));
  border: 1px solid rgba(255,255,255,.74);
  border-radius: 34px;
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(11,43,76,.16);
  padding: clamp(28px, 4vw, 56px);
}
.ts-place-banner-panel h1 {
  font: 900 clamp(42px, 6vw, 82px)/.92 var(--ts-font-display);
  letter-spacing: -.06em;
  color: var(--ts-foreground);
  margin: 12px 0 18px;
}
.ts-place-banner-panel p {
  color: var(--ts-muted);
  font-weight: 700;
  font-size: clamp(16px, 1.4vw, 20px);
  line-height: 1.5;
  max-width: 720px;
}
.ts-place-banner-actions,
.ts-search-row-lite {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.ts-search-row-lite {
  align-items: center;
  border-radius: 22px;
  background: #fff;
  border: 1px solid var(--ts-border);
  padding: 10px;
  box-shadow: var(--ts-shadow-tile);
}
.ts-search-row-lite span,
.ts-search-row-lite a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  border-radius: 999px;
  padding: 0 16px;
  font-weight: 900;
  color: var(--ts-foreground);
}
.ts-search-row-lite a {
  background: var(--ts-accent);
  color: #fff;
  margin-left: auto;
}
.ts-place-profile-banner--active {
  grid-template-columns: minmax(0, 1.55fr) minmax(320px, .9fr);
  background-image: none;
  background: #fff;
  padding: 16px;
}
.ts-place-profile-banner--active::before { display: none; }
.ts-place-profile-banner--active .ts-place-banner-main {
  min-height: 520px;
  border-radius: 28px;
  background-image: linear-gradient(90deg, rgba(234,248,254,.72), rgba(11,43,76,.04)), var(--ts-place-banner-image);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.ts-place-profile-banner--active .ts-place-banner-panel {
  margin: 54px 42px;
  max-width: 560px;
}
.ts-place-banner-side {
  display: grid;
  gap: 14px;
}
.ts-place-banner-side article,
.ts-place-banner-bottom article {
  position: relative;
  min-height: 150px;
  border-radius: 24px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  padding: 22px;
  display: flex;
  flex-direction: column;
  justify-content: end;
  color: #fff;
  box-shadow: var(--ts-shadow-tile);
}
.ts-place-banner-side article::before,
.ts-place-banner-bottom article::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, rgba(3,22,38,.72));
}
.ts-place-banner-side article > *,
.ts-place-banner-bottom article > * { position: relative; z-index: 1; }
.ts-place-banner-side strong,
.ts-place-banner-bottom strong { font: 900 24px var(--ts-font-display); }
.ts-place-banner-side span,
.ts-place-banner-bottom span { opacity: .9; font-weight: 800; }
.ts-place-profile-banner--pro {
  min-height: 720px;
  align-content: space-between;
  padding: 28px;
}
.ts-place-profile-banner--pro .ts-place-banner-panel {
  margin: 0;
  width: min(760px, 100%);
}
.ts-place-banner-bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
}
.ts-place-banner-bottom article { min-height: 190px; border: 1px solid rgba(255,255,255,.45); }
@media (max-width: 1180px) {
  .ts-place-profile-banner--active { grid-template-columns: 1fr; }
  .ts-place-banner-side { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ts-place-banner-side article { min-height: 170px; }
}
@media (max-width: 860px) {
  .ts-place-profile-banner { min-height: 0; margin-top: 28px; border-radius: 26px; }
  .ts-place-banner-panel { margin: 20px; width: auto; padding: 26px; border-radius: 24px; }
  .ts-place-profile-banner--active { padding: 10px; }
  .ts-place-profile-banner--active .ts-place-banner-main { min-height: 440px; }
  .ts-place-profile-banner--active .ts-place-banner-panel { margin: 20px; }
  .ts-place-banner-side,
  .ts-place-banner-bottom { grid-template-columns: 1fr; }
  .ts-place-profile-banner--pro { min-height: 0; padding: 12px; }
  .ts-search-row-lite { align-items: stretch; }
  .ts-search-row-lite span,
  .ts-search-row-lite a { width: 100%; justify-content: center; margin-left: 0; }
}

/* Frontend owner banner picker inside Add Place */
.ts-add-place-form .tuspot-owner-banner-picker {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.ts-add-place-form .tuspot-owner-banner-choice {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 2px solid var(--ts-border);
  border-radius: 24px;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  box-shadow: var(--ts-shadow-tile);
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.ts-add-place-form .tuspot-owner-banner-choice input { position: absolute; opacity: 0; pointer-events: none; }
.ts-add-place-form .tuspot-owner-banner-choice:hover,
.ts-add-place-form .tuspot-owner-banner-choice.is-selected,
.ts-add-place-form .tuspot-owner-banner-choice:has(input:checked) {
  border-color: var(--ts-accent);
  transform: translateY(-2px);
  box-shadow: var(--ts-shadow-card);
}
.ts-add-place-form .tuspot-owner-banner-image { display:block; aspect-ratio:16/9; background:var(--ts-surface); }
.ts-add-place-form .tuspot-owner-banner-image img { width:100%; height:100%; object-fit:cover; display:block; }
.ts-add-place-form .tuspot-owner-banner-copy { display:grid; gap:6px; padding:16px; }
.ts-add-place-form .tuspot-owner-banner-copy strong { color:var(--ts-foreground); font-size:15px; }
.ts-add-place-form .tuspot-owner-banner-copy em { font-style:normal; font-weight:900; color:var(--ts-foreground); }
.ts-add-place-form .tuspot-owner-banner-copy small { color:var(--ts-muted); line-height:1.45; }
.ts-add-place-form .tuspot-owner-banner-copy b { justify-self:start; border-radius:999px; background:var(--ts-accent-soft); color:var(--ts-accent); padding:6px 10px; font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
.ts-field-help { margin: 0 0 12px; color: var(--ts-muted); }
@media (max-width: 980px) {
  .ts-add-place-form .tuspot-owner-banner-picker { grid-template-columns: 1fr; }
}
.ts-dashboard-banner-options { margin-top: 24px; }
.ts-dashboard-banner-options .tuspot-owner-banner-picker {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.ts-dashboard-banner-options .tuspot-owner-banner-choice {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 2px solid var(--ts-border);
  border-radius: 24px;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  box-shadow: var(--ts-shadow-tile);
}
.ts-dashboard-banner-options .tuspot-owner-banner-choice input { position:absolute; opacity:0; pointer-events:none; }
.ts-dashboard-banner-options .tuspot-owner-banner-choice.is-selected,
.ts-dashboard-banner-options .tuspot-owner-banner-choice:has(input:checked) { border-color: var(--ts-accent); }
.ts-dashboard-banner-options .tuspot-owner-banner-image { display:block; aspect-ratio:16/9; }
.ts-dashboard-banner-options .tuspot-owner-banner-image img { width:100%; height:100%; object-fit:cover; display:block; }
.ts-dashboard-banner-options .tuspot-owner-banner-copy { display:grid; gap:6px; padding:16px; }
.ts-dashboard-banner-options .tuspot-owner-banner-copy strong { color:var(--ts-foreground); }
.ts-dashboard-banner-options .tuspot-owner-banner-copy em { font-style:normal; font-weight:900; }
.ts-dashboard-banner-options .tuspot-owner-banner-copy small { color:var(--ts-muted); line-height:1.45; }
.ts-dashboard-banner-options .tuspot-owner-banner-copy b { justify-self:start; border-radius:999px; background:var(--ts-accent-soft); color:var(--ts-accent); padding:6px 10px; font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
@media (max-width: 980px) { .ts-dashboard-banner-options .tuspot-owner-banner-picker { grid-template-columns: 1fr; } }


/* TuSpot EU v2.4 — package-aware owner onboarding */
.ts-owner-flow-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 22px 0;
}
.ts-owner-flow-steps span,
.ts-owner-onboarding-note,
.ts-owner-mini-checklist article,
.tuspot-owner-package-choice {
  border: 1px solid var(--ts-border);
  background: #fff;
  border-radius: 20px;
  box-shadow: var(--ts-shadow-tile);
}
.ts-owner-flow-steps span {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  color: var(--ts-muted);
  font-weight: 900;
}
.ts-owner-flow-steps b {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--ts-accent-soft);
  color: var(--ts-accent);
  font-size: 12px;
}
.ts-owner-flow-steps .is-active { color: var(--ts-foreground); border-color: rgba(45,138,158,.34); }
.ts-owner-onboarding-note { padding: 18px 20px; margin-bottom: 22px; background: linear-gradient(135deg, #fff, var(--ts-accent-soft)); }
.ts-owner-onboarding-note strong { display: block; color: var(--ts-foreground); font: 900 18px var(--ts-font-display); margin-bottom: 6px; }
.ts-owner-onboarding-note p { color: var(--ts-muted); margin: 0; font-weight: 700; }
.tuspot-owner-package-selector {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.tuspot-owner-package-choice {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 18px;
  cursor: pointer;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.tuspot-owner-package-choice input { position: absolute; opacity: 0; pointer-events: none; }
.tuspot-owner-package-choice:hover,
.tuspot-owner-package-choice.is-selected,
.tuspot-owner-package-choice:has(input:checked) { border-color: var(--ts-accent); transform: translateY(-2px); box-shadow: var(--ts-shadow-card); }
.tuspot-owner-package-choice span { color: var(--ts-accent); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.tuspot-owner-package-choice strong { color: var(--ts-foreground); font: 900 22px var(--ts-font-display); }
.tuspot-owner-package-choice em { font-style: normal; color: var(--ts-foreground); font-weight: 900; }
.tuspot-owner-package-choice small { color: var(--ts-muted); line-height: 1.45; }
.tuspot-owner-banner-choice { position: relative; }
.tuspot-owner-banner-choice.is-locked { opacity: .64; }
.tuspot-owner-banner-choice.is-locked::after {
  content: "Locked";
  position: absolute;
  top: 12px;
  right: 12px;
  border-radius: 999px;
  padding: 7px 10px;
  background: rgba(11,43,76,.92);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.tuspot-owner-banner-lock {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 12px;
  text-align: center;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: var(--ts-foreground);
  font-size: 12px;
  font-weight: 900;
  box-shadow: var(--ts-shadow-tile);
}
.ts-owner-mini-checklist {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
}
.ts-owner-mini-checklist article { padding: 18px; display: grid; gap: 6px; }
.ts-owner-mini-checklist strong { color: var(--ts-foreground); font-weight: 900; }
.ts-owner-mini-checklist span { color: var(--ts-muted); line-height: 1.45; }
.ts-owner-dashboard-onboarding { margin-top: 24px; }
@media (max-width: 980px) {
  .ts-owner-flow-steps,
  .tuspot-owner-package-selector,
  .ts-owner-mini-checklist { grid-template-columns: 1fr; }
}

/* TuSpot EU v2.5 — owner enquiry workflow */
.ts-enquiry-form .ts-field label span{ color:var(--ts-muted); font-weight:700; font-size:12px; }
.ts-enquiry-success{ display:grid; gap:6px; border-color:rgba(45,138,158,.25); background:linear-gradient(135deg,#fff,var(--ts-accent-soft)); }
.ts-enquiry-success span{ color:var(--ts-muted); font-weight:700; }
.ts-owner-inbox-panel{ margin-top:24px; }
.ts-owner-inbox-list{ display:grid; gap:12px; margin-top:18px; }
.ts-owner-inbox-list article{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:1px solid var(--ts-border);
  border-radius:20px;
  background:#fff;
  padding:14px 16px;
}
.ts-owner-inbox-list article div{ display:grid; gap:4px; }
.ts-owner-inbox-list strong{ color:var(--ts-foreground); font-weight:900; }
.ts-owner-inbox-list span{ color:var(--ts-muted); font-weight:700; }
.ts-owner-inbox-list em,
.ts-owner-inbox-empty{
  border-radius:999px;
  background:var(--ts-accent-soft);
  color:var(--ts-accent);
  padding:7px 11px;
  font-style:normal;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}
.ts-owner-inbox-list em.is-reviewing{ background:#fff5df; color:#936600; }
.ts-owner-inbox-list em.is-replied{ background:#e9fbef; color:#177245; }
.ts-owner-inbox-list em.is-follow-up{ background:#fff0f3; color:#aa3153; }
.ts-owner-inbox-list em.is-closed{ background:#edf2f7; color:#526372; }
.ts-owner-inbox-empty{ display:grid; gap:6px; border-radius:22px; text-transform:none; letter-spacing:0; }
.ts-owner-inbox-empty span{ color:var(--ts-muted); font-weight:700; }
@media (max-width: 720px){ .ts-owner-inbox-list article{ align-items:flex-start; flex-direction:column; } }


/* v2.6 owner place readiness */
.ts-owner-readiness-board { display: grid; gap: 20px; margin: 24px 0; }
.ts-readiness-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ts-place-readiness-card { display: grid; gap: 16px; }
.ts-readiness-score { display: inline-flex; align-items: center; justify-content: center; min-width: 72px; height: 72px; border-radius: 24px; background: var(--ts-accent-soft); color: var(--ts-accent); font-size: 22px; }
.ts-progress--readiness { height: 10px; background: var(--ts-surface); border-radius: 999px; overflow: hidden; }
.ts-progress--readiness span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--ts-accent), var(--ts-deep-teal)); }
.ts-readiness-checklist { display: grid; gap: 10px; }
.ts-readiness-checklist > div { display: grid; grid-template-columns: 28px 1fr; gap: 10px; align-items: start; padding: 10px; border-radius: 16px; background: var(--ts-surface); }
.ts-readiness-checklist b { width: 28px; height: 28px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font-weight: 900; }
.ts-readiness-checklist .is-ready b { background: rgba(35,187,231,.18); color: var(--ts-accent); }
.ts-readiness-checklist .is-missing b { background: #fff; color: var(--ts-muted); border: 1px solid var(--ts-border); }
.ts-readiness-checklist strong { display: block; color: var(--ts-foreground); font-size: 14px; }
.ts-readiness-checklist small { display: block; color: var(--ts-muted); line-height: 1.35; margin-top: 2px; }
.ts-action-row--compact { gap: 10px; flex-wrap: wrap; }
@media (max-width: 1100px) { .ts-readiness-grid { grid-template-columns: 1fr; } }


/* TuSpot EU v2.7 — compact visual proof gallery */
.ts-visual-proof-section { margin-top: 24px; display: grid; gap: 18px; }
.ts-visual-proof-section .ts-detail-head p { margin: 6px 0 0; color: var(--ts-muted); max-width: 680px; }
.ts-visual-proof-section .ts-detail-head > strong { border-radius: 999px; background: var(--ts-accent-soft); color: var(--ts-accent); padding: 9px 13px; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.ts-visual-proof-strip { display: grid; grid-template-columns: 1.4fr repeat(2, minmax(0, .8fr)); grid-auto-rows: 142px; gap: 12px; }
.ts-visual-proof-strip a { display: block; min-height: 120px; border-radius: 22px; background-size: cover; background-position: center; box-shadow: var(--ts-shadow-tile); border: 1px solid rgba(255,255,255,.58); transition: transform .18s ease, box-shadow .18s ease; }
.ts-visual-proof-strip a:hover { transform: translateY(-2px); box-shadow: var(--ts-shadow-card); }
.ts-visual-proof-strip .is-large { grid-row: span 2; }
@media (max-width: 760px) {
  .ts-visual-proof-strip { grid-template-columns: 1fr 1fr; grid-auto-rows: 120px; }
  .ts-visual-proof-strip .is-large { grid-column: 1 / -1; grid-row: auto; min-height: 190px; }
}

/* TuSpot EU v2.8 — booking path clarity */
.ts-place-sidebar{ position: sticky; top: 96px; align-self: start; display: grid; gap: 18px; }
.ts-booking-path-card{ display: grid; gap: 14px; }
.ts-booking-path-card h2{ margin: 0; }
.ts-booking-path-card p{ margin: 0; color: var(--ts-muted); line-height: 1.65; }
.ts-booking-clarity-list{ display: grid; gap: 10px; }
.ts-booking-clarity-list div{ display: grid; gap: 3px; padding: 12px 14px; border: 1px solid rgba(11,43,76,.09); background: rgba(234,248,254,.55); border-radius: 18px; }
.ts-booking-clarity-list strong{ color: var(--ts-primary); font-size: .88rem; }
.ts-booking-clarity-list span{ color: var(--ts-muted); font-size: .92rem; line-height: 1.45; }
.ts-booking-links{ display: flex; flex-wrap: wrap; gap: 10px; }
.ts-booking-links .ts-btn{ font-size: .9rem; padding: 10px 14px; }
@media (max-width: 960px){ .ts-place-sidebar{ position: static; } }

/* TuSpot EU v2.9 — availability and seasonal rates */
.ts-availability-rates-card{ display:grid; gap:14px; }
.ts-availability-rates-card h2{ margin:0; }
.ts-availability-rates-card p{ margin:0; color:var(--ts-muted); line-height:1.65; }
.ts-availability-rates-card small{ color:var(--ts-muted); font-weight:700; }
.ts-availability-status-row{ display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.ts-availability-status-row strong{ border-radius:999px; background:var(--ts-accent-soft); color:var(--ts-accent); padding:8px 12px; white-space:nowrap; font-size:.9rem; }
.ts-availability-facts{ display:grid; gap:10px; }
.ts-availability-facts div{ display:grid; gap:3px; padding:12px 14px; border:1px solid rgba(11,43,76,.09); background:rgba(234,248,254,.55); border-radius:18px; }
.ts-availability-facts strong{ color:var(--ts-primary); font-size:.88rem; }
.ts-availability-facts span{ color:var(--ts-muted); font-size:.92rem; line-height:1.45; }
.ts-seasonal-rate-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.ts-seasonal-rate-grid div{ border:1px solid var(--ts-border); border-radius:18px; padding:12px 14px; background:#fff; }
.ts-seasonal-rate-grid b{ display:block; color:var(--ts-primary); font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:3px; }
.ts-seasonal-rate-grid span{ color:var(--ts-muted); font-weight:700; font-size:.92rem; }
@media (max-width:720px){ .ts-availability-status-row{ flex-direction:column; } .ts-seasonal-rate-grid{ grid-template-columns:1fr; } }

/* TuSpot EU v3.0 — breadcrumbs and SEO link hub */
.ts-breadcrumb-wrap{ margin-top: 18px; margin-bottom: 0; }
.ts-breadcrumbs{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; color:var(--ts-muted); font-size:.92rem; font-weight:800; }
.ts-breadcrumbs a{ color:var(--ts-accent); text-decoration:none; }
.ts-breadcrumbs a:hover{ text-decoration:underline; }
.ts-breadcrumbs [aria-current="page"]{ color:var(--ts-primary); }
.ts-breadcrumb-separator{ color:rgba(11,43,76,.35); }
.ts-seo-link-hub{ margin-top:24px; display:grid; gap:16px; }
.ts-seo-link-hub h2{ margin:0; }
.ts-seo-link-grid{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.ts-seo-link-grid a{ display:grid; gap:5px; padding:14px; border:1px solid var(--ts-border); border-radius:18px; background:rgba(234,248,254,.46); color:var(--ts-primary); text-decoration:none; }
.ts-seo-link-grid a:hover{ border-color:var(--ts-accent); transform:translateY(-1px); }
.ts-seo-link-grid span{ color:var(--ts-muted); font-size:.88rem; line-height:1.4; }
@media (max-width:1100px){ .ts-seo-link-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px){ .ts-breadcrumb-wrap{ margin-top:10px; } .ts-seo-link-grid{ grid-template-columns:1fr; } }

/* TuSpot v3.3 — SVG/raster logo support */
.ts-logo-img--svg,
.ts-logo-img--raster { max-height: 42px; width: auto; display: block; }
.ts-logo-mark-img { width: 42px; height: 42px; object-fit: contain; display: block; }
.ts-site-footer .ts-logo-img { max-height: 48px; }
.ts-site-footer .ts-logo-mark-img { width: 44px; height: 44px; }
@media (max-width: 760px) {
  .ts-logo-img--svg,
  .ts-logo-img--raster { max-height: 38px; }
  .ts-logo-mark-img { width: 38px; height: 38px; }
}


/* TuSpot EU v3.6 — package access matrix */
.ts-package-grid--enhanced{align-items:stretch;margin-bottom:28px}
.ts-package-card{position:relative;overflow:hidden;display:grid;gap:14px}
.ts-package-card--active{border-color:rgba(35,187,231,.42);box-shadow:0 24px 70px rgba(35,187,231,.16)}
.ts-package-recommended{position:absolute;top:18px;right:18px;border-radius:999px;background:var(--ts-accent);color:#fff;padding:7px 11px;font-size:.75rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.ts-package-access-matrix{margin-top:32px;overflow:hidden}
.ts-package-matrix-scroll{overflow:auto;border-radius:24px;border:1px solid var(--ts-border);background:#fff}
.ts-package-matrix-table{width:100%;border-collapse:collapse;min-width:760px}
.ts-package-matrix-table th,.ts-package-matrix-table td{padding:16px 18px;text-align:left;border-bottom:1px solid rgba(11,43,76,.08);vertical-align:top}
.ts-package-matrix-table thead th{background:linear-gradient(180deg,#f6fbfe,#eef9fd);color:var(--ts-primary);font-weight:900;position:sticky;top:0;z-index:1}
.ts-package-matrix-table tbody th{width:36%;color:var(--ts-primary)}
.ts-package-matrix-table tbody th span{display:block;margin-top:4px;color:var(--ts-muted);font-weight:700;font-size:.9rem;line-height:1.45}
.ts-package-matrix-table td{color:var(--ts-muted);font-weight:800}
.ts-package-matrix-table tr:last-child th,.ts-package-matrix-table tr:last-child td{border-bottom:0}
@media(max-width:760px){.ts-package-access-matrix{margin-top:22px}.ts-package-matrix-scroll{border-radius:18px}.ts-package-matrix-table th,.ts-package-matrix-table td{padding:13px 14px}}

/* TuSpot EU v3.7 — owner insights board */
.ts-owner-insights-board{display:grid;gap:18px;margin-top:22px}
.ts-owner-insights-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ts-owner-insights-metrics article{border:1px solid var(--ts-border);border-radius:20px;background:linear-gradient(180deg,#fff,#f4fcff);padding:16px;box-shadow:0 12px 30px rgba(9,52,64,.06)}
.ts-owner-insights-metrics strong{display:block;color:var(--ts-primary);font-family:Outfit,system-ui,sans-serif;font-size:1.65rem;line-height:1;margin-bottom:6px}
.ts-owner-insights-metrics span{color:var(--ts-muted);font-size:.88rem;font-weight:800}
.ts-owner-insights-table-card{overflow:auto;border:1px solid var(--ts-border);border-radius:22px;background:#fff}
.ts-owner-insights-table{width:100%;border-collapse:collapse;min-width:760px}
.ts-owner-insights-table th,.ts-owner-insights-table td{padding:14px 16px;border-bottom:1px solid rgba(11,43,76,.08);text-align:left;vertical-align:top}
.ts-owner-insights-table thead th{background:linear-gradient(180deg,#f6fbfe,#eef9fd);color:var(--ts-primary);font-weight:900}
.ts-owner-insights-table td strong{display:block;color:var(--ts-primary);margin-bottom:4px}
.ts-owner-insights-table td span{display:block;color:var(--ts-muted);font-size:.84rem;font-weight:700;line-height:1.45}
.ts-owner-insight-score{display:inline-flex;border-radius:999px;background:var(--ts-accent-soft);color:var(--ts-accent);padding:7px 10px;font-size:.78rem;font-weight:900;margin-bottom:5px}
@media(max-width:900px){.ts-owner-insights-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-owner-insights-board{gap:14px}}
@media(max-width:560px){.ts-owner-insights-metrics{grid-template-columns:1fr}.ts-owner-insights-table{min-width:680px}}


.ts-owner-help-center{margin-top:28px}.ts-owner-help-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.ts-owner-help-card{background:linear-gradient(180deg,#fff,#f7fcff);border:1px solid rgba(11,43,76,.08);border-radius:22px;padding:16px;box-shadow:0 14px 34px rgba(11,43,76,.06)}.ts-owner-help-card>span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf8fe;color:#0b2b4c;font-weight:800;font-size:12px}.ts-owner-help-card p{font-size:13px;color:#5d7187;min-height:58px}.ts-owner-help-card textarea{width:100%;height:138px;border:1px solid rgba(11,43,76,.12);border-radius:16px;padding:12px;background:#fff;color:#12344d;font-size:13px;resize:vertical}.ts-owner-support-note{margin:16px 0 0;padding:14px 16px;border-radius:18px;background:#eaf8fe;color:#0b2b4c}@media(max-width:1180px){.ts-owner-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.ts-owner-help-grid{grid-template-columns:1fr}.ts-owner-help-card p{min-height:0}}


/* TuSpot EU v3.9 — owner dashboard, add-place flow, single-place polish and release QA */
.ts-v39-owner-flow-header,.ts-owner-command-hero,.ts-release-qa-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden}
.ts-v39-owner-flow-header h2,.ts-owner-command-hero h2,.ts-release-qa-hero h2{font-family:var(--ts-font-display);font-size:clamp(34px,4vw,58px);line-height:.98;letter-spacing:-.045em;margin:12px 0;color:var(--ts-foreground)}
.ts-v39-owner-flow-header p,.ts-owner-command-hero p,.ts-release-qa-hero p{color:var(--ts-muted);font-size:17px;line-height:1.6;max-width:740px;margin:0}.ts-v39-owner-flow-actions,.ts-owner-command-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.ts-owner-flow-steps--v39{grid-template-columns:repeat(5,minmax(0,1fr));margin:24px 0}.ts-add-place-v39-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.ts-form-grid--v39{display:grid;grid-template-columns:1fr;gap:18px}.ts-form-grid--inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ts-v39-form-section{border:1px solid var(--ts-border);border-radius:26px;background:linear-gradient(180deg,#fff,#f8fdff);padding:22px;box-shadow:0 14px 36px rgba(8,33,61,.05)}.ts-v39-form-section-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}.ts-v39-form-section-head>span{width:42px;height:42px;border-radius:16px;background:var(--ts-accent-soft);color:var(--ts-accent);display:inline-flex;align-items:center;justify-content:center;font-weight:900}.ts-v39-form-section h3{font-family:var(--ts-font-display);font-size:26px;line-height:1;margin:0 0 6px;color:var(--ts-foreground);letter-spacing:-.03em}.ts-v39-form-section p{margin-top:0}.ts-v39-submit-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ts-v39-submit-row span{color:var(--ts-muted);font-size:13px;font-weight:700}.ts-add-place-v39-aside{display:grid;gap:18px;position:sticky;top:94px}.ts-v39-preview-card,.ts-v39-package-help{padding:22px}.ts-v39-notice{display:grid;gap:8px;margin-bottom:18px;border-radius:22px}.ts-v39-notice strong{color:var(--ts-foreground);font-size:18px}.ts-v39-notice span{color:var(--ts-muted);font-weight:700}.ts-v39-notice.is-success{border-color:rgba(35,187,231,.35);background:linear-gradient(135deg,#fff,#eaf8fe)}.ts-v39-notice.is-warning{border-color:#f4d48a;background:#fffaf0}.ts-v39-notice.is-error{border-color:#f2b7b7;background:#fff7f7}.ts-owner-command-center{display:grid;gap:24px}.ts-owner-command-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ts-owner-command-metrics article{padding:22px;background:linear-gradient(180deg,#fff,#f6fcff)}.ts-owner-command-metrics span{display:block;color:var(--ts-muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ts-owner-command-metrics strong{display:block;font-family:var(--ts-font-display);font-size:42px;line-height:.95;letter-spacing:-.04em;color:var(--ts-primary);margin:8px 0}.ts-owner-command-metrics em{font-style:normal;color:var(--ts-muted);font-weight:800}.ts-owner-command-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:20px}.ts-owner-priority-card,.ts-owner-package-card{padding:24px}.ts-owner-action-list{display:grid;gap:10px;margin-top:18px}.ts-owner-action-list a,.ts-v39-quick-grid a{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--ts-border);border-radius:18px;background:#fff;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.ts-owner-action-list a:hover,.ts-v39-quick-grid a:hover{transform:translateY(-1px);box-shadow:var(--ts-shadow-tile)}.ts-owner-action-list strong,.ts-v39-quick-grid strong{color:var(--ts-foreground);font-weight:900}.ts-owner-action-list span,.ts-v39-quick-grid span{color:var(--ts-muted);font-size:13px;line-height:1.45;font-weight:700}.ts-v39-feature-pills{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.ts-v39-feature-pills span{border-radius:999px;background:var(--ts-accent-soft);color:var(--ts-accent);padding:8px 11px;font-size:12px;font-weight:900}.ts-v39-soft-note{background:var(--ts-surface);border-radius:18px;padding:14px;color:var(--ts-foreground)!important;font-weight:800}.ts-owner-pipeline-card{padding:24px}.ts-owner-pipeline-list{display:grid;gap:10px}.ts-owner-pipeline-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--ts-border);border-radius:18px;background:#fff}.ts-owner-pipeline-list strong{display:block;color:var(--ts-foreground);font-weight:900}.ts-owner-pipeline-list span{display:block;color:var(--ts-muted);font-size:13px;font-weight:700}.ts-owner-pipeline-list em{font-style:normal;border-radius:999px;background:var(--ts-accent-soft);color:var(--ts-accent);padding:7px 10px;font-size:12px;font-weight:900;white-space:nowrap}.ts-owner-empty-state{display:grid;gap:8px;padding:22px;border:1px dashed var(--ts-border);border-radius:20px;background:var(--ts-surface)}.ts-v39-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.ts-package-grid--v39{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:24px}.ts-package-grid--v39 .ts-package-card{padding:28px}.ts-package-grid--v39 .ts-package-card h2{font-family:var(--ts-font-display);font-size:42px;letter-spacing:-.04em;margin:4px 0;color:var(--ts-primary)}.ts-v39-package-note{margin:24px 0;padding:28px}.ts-place-decision-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;margin-bottom:24px}.ts-place-decision-strip article{border:1px solid var(--ts-border);border-radius:22px;background:rgba(255,255,255,.88);box-shadow:var(--ts-shadow-tile);padding:16px}.ts-place-decision-strip span{display:block;color:var(--ts-muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ts-place-decision-strip strong{display:block;color:var(--ts-foreground);font-size:17px;margin:5px 0;font-weight:900}.ts-place-decision-strip em{display:block;color:var(--ts-muted);font-style:normal;font-size:13px;line-height:1.35;font-weight:700}.ts-place-sidebar-summary{margin-bottom:18px}.ts-place-sidebar-score{display:flex;align-items:center;gap:14px;margin:14px 0;padding:14px;border-radius:18px;background:var(--ts-surface)}.ts-place-sidebar-score strong{font-family:var(--ts-font-display);font-size:36px;line-height:1;color:var(--ts-accent)}.ts-place-sidebar-score span{color:var(--ts-muted);font-weight:800}.ts-place-sidebar-summary ul{margin:14px 0 0;padding-left:18px;color:var(--ts-muted);font-weight:700;line-height:1.55}.ts-place-mobile-cta{display:none}.ts-release-qa-board{display:grid;gap:18px}.ts-release-qa-hero{padding:28px}.ts-release-qa-hero>strong{width:104px;height:104px;border-radius:32px;background:linear-gradient(135deg,var(--ts-primary),var(--ts-accent));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--ts-font-display);font-size:32px;letter-spacing:-.04em;box-shadow:var(--ts-shadow-elevated)}.ts-release-qa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ts-release-qa-grid article{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:16px}.ts-release-qa-grid b{width:38px;height:38px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--ts-muted);border:1px solid var(--ts-border)}.ts-release-qa-grid .is-ready b{background:#eaf8fe;color:var(--ts-accent);border-color:rgba(35,187,231,.28)}.ts-release-qa-grid .is-missing{border-color:#f2d2a2;background:#fffaf1}.ts-release-qa-grid strong{display:block;color:var(--ts-foreground);font-weight:900}.ts-release-qa-grid span{display:block;color:var(--ts-muted);font-size:13px;line-height:1.4;font-weight:700}.ts-release-qa-actions{padding:24px}
@media(max-width:1180px){.ts-add-place-v39-grid,.ts-owner-command-grid{grid-template-columns:1fr}.ts-add-place-v39-aside{position:static}.ts-owner-command-metrics,.ts-place-decision-strip,.ts-v39-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-package-grid--v39,.ts-release-qa-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ts-v39-owner-flow-header,.ts-owner-command-hero,.ts-release-qa-hero{align-items:flex-start;flex-direction:column}.ts-owner-flow-steps--v39,.ts-form-grid--inner,.ts-owner-command-metrics,.ts-place-decision-strip,.ts-v39-quick-grid,.ts-package-grid--v39,.ts-release-qa-grid{grid-template-columns:1fr}.ts-v39-form-section{padding:16px;border-radius:20px}.ts-owner-pipeline-list article{grid-template-columns:1fr}.ts-place-mobile-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border:1px solid var(--ts-border);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 18px 60px rgba(8,33,61,.2);backdrop-filter:blur(14px)}.ts-place-mobile-cta strong{display:block;color:var(--ts-foreground);font-weight:900}.ts-place-mobile-cta span{display:block;color:var(--ts-muted);font-size:12px;font-weight:800}.ts-place-mobile-cta .ts-btn{min-height:40px;padding:0 14px}.ts-site-footer{padding-bottom:96px}}

/* TuSpot EU v4.0 launch hardening */
.ts-containerless-block{width:100%}
.ts-owner-dashboard--v40 .ts-container{display:grid;gap:28px}
.ts-v40-launch-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:center;padding:34px;background:linear-gradient(135deg,#fff 0%,#eefaff 100%)}
.ts-v40-launch-hero h2{margin:.25rem 0 .65rem;font-size:clamp(30px,3.2vw,54px);line-height:.98;color:#071f35;letter-spacing:-.05em;max-width:850px}
.ts-v40-launch-hero p{max-width:760px;color:#526879;font-size:1.04rem;line-height:1.7;margin:0 0 18px}
.ts-v40-launch-hero aside{min-height:190px;border-radius:28px;background:#071f35;color:#fff;display:grid;place-items:center;text-align:center;padding:24px;box-shadow:0 24px 60px rgba(7,31,53,.18)}
.ts-v40-launch-hero aside strong{font-size:58px;line-height:1;letter-spacing:-.06em}
.ts-v40-launch-hero aside span{font-weight:800;color:#bceefb}
.ts-v40-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}
.ts-v40-metric-grid article{padding:22px}
.ts-v40-metric-grid span,.ts-v40-metric-grid small{display:block;color:#607487;font-weight:700}
.ts-v40-metric-grid strong{display:block;color:#071f35;font-size:36px;letter-spacing:-.05em;margin:6px 0}
.ts-v40-owner-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:22px;margin-top:22px;align-items:start}
.ts-v40-owner-main,.ts-v40-owner-side,.ts-v40-dashboard-tail{display:grid;gap:22px}
.ts-v40-action-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ts-v40-action-list a{display:block;padding:18px;border-radius:22px;background:#f3fbfe;border:1px solid rgba(35,187,231,.18);text-decoration:none;color:#071f35;transition:.2s ease}
.ts-v40-action-list a:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(7,31,53,.08)}
.ts-v40-action-list strong,.ts-v40-action-list span{display:block}.ts-v40-action-list span{margin-top:6px;color:#64798a;line-height:1.55}
.ts-v40-place-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ts-v40-place-health-card{padding:24px}.ts-v40-card-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.ts-v40-card-top h3{margin:.2rem 0 0;color:#071f35}.ts-v40-card-top>strong{font-size:32px;color:#23bbe7;letter-spacing:-.04em}.ts-v40-group-bars{display:grid;gap:11px;margin:16px 0}.ts-v40-group-bars div{position:relative;border-radius:999px;background:#eef8fc;padding:10px 13px;overflow:hidden;display:flex;justify-content:space-between;gap:12px;color:#071f35;font-weight:800}.ts-v40-group-bars em{position:absolute;left:0;bottom:0;height:3px;background:#23bbe7;border-radius:999px}.ts-v40-empty-owner-state{padding:34px;grid-column:1/-1}.ts-v40-check-list{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:12px}.ts-v40-check-list li{padding:12px 14px;border-radius:16px;background:#f4fbfe;color:#375064;font-weight:700}.ts-v40-package-rules{padding:28px}.ts-v40-package-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ts-v40-package-rule-grid article{border:1px solid rgba(9,52,64,.1);border-radius:26px;padding:22px;background:#fff}.ts-v40-package-rule-grid article.is-highlighted{background:linear-gradient(180deg,#f0fbff,#fff);border-color:rgba(35,187,231,.45);box-shadow:0 20px 52px rgba(35,187,231,.13)}.ts-v40-package-rule-grid span{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf8fe;color:#093440;font-weight:900}.ts-v40-package-rule-grid h3{font-size:30px;margin:14px 0 8px;color:#071f35;letter-spacing:-.04em}.ts-v40-package-rule-grid p{color:#617485;line-height:1.6}.ts-v40-package-rule-grid strong{display:block;margin-top:14px;color:#071f35}.ts-v40-package-rule-grid ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:8px}.ts-v40-package-rule-grid li{position:relative;padding-left:22px;color:#405668;line-height:1.45}.ts-v40-package-rule-grid li:before{content:'✓';position:absolute;left:0;color:#23bbe7;font-weight:900}.ts-v40-package-rule-grid .is-muted li{color:#7e8f9d}.ts-v40-package-rule-grid .is-muted li:before{content:'+'}.ts-add-place-v40>.ts-container{display:grid;gap:24px}.ts-v40-add-place-guidance{padding:28px;background:linear-gradient(135deg,#fff,#f0fbff)}.ts-v40-guidance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.ts-v40-guidance-grid div{border-radius:20px;background:#fff;border:1px solid rgba(35,187,231,.18);padding:18px}.ts-v40-guidance-grid strong,.ts-v40-guidance-grid span{display:block}.ts-v40-guidance-grid span{margin-top:6px;color:#607487;line-height:1.55}.ts-v40-guest-confidence{margin-bottom:24px;padding:24px}.ts-v40-confidence-score{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:16px 0;padding:18px;border-radius:22px;background:#071f35;color:#fff}.ts-v40-confidence-score strong{font-size:40px;letter-spacing:-.05em}.ts-v40-confidence-score span{color:#bceefb;font-weight:800;text-align:right}.ts-v40-confidence-list{display:grid;gap:11px}.ts-v40-confidence-list div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border-radius:16px;background:#f5fbfe}.ts-v40-confidence-list b{width:28px;height:28px;border-radius:999px;background:#e0f7fd;color:#093440;display:grid;place-items:center}.ts-v40-confidence-list strong,.ts-v40-confidence-list small{display:block}.ts-v40-confidence-list small{color:#637788;line-height:1.45;margin-top:3px}.ts-release-qa-board--v40 .ts-release-qa-hero{background:linear-gradient(135deg,#fff,#effbff)}
@media (max-width:1100px){.ts-v40-launch-hero,.ts-v40-owner-layout{grid-template-columns:1fr}.ts-v40-metric-grid,.ts-v40-guidance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-v40-owner-side{grid-template-columns:1fr}}
@media (max-width:760px){.ts-v40-launch-hero{padding:24px}.ts-v40-launch-hero aside{min-height:150px}.ts-v40-metric-grid,.ts-v40-action-list,.ts-v40-place-health-grid,.ts-v40-package-rule-grid,.ts-v40-guidance-grid{grid-template-columns:1fr}.ts-v40-package-rules,.ts-v40-add-place-guidance{padding:22px}.ts-v40-launch-hero h2{font-size:34px}.ts-v40-launch-hero aside strong{font-size:44px}}

/* TuSpot EU v4.1 — conversion and trust polish */
.ts-owner-dashboard--v41 .ts-container,
.ts-add-place-v41 .ts-container,
.ts-packages--v41 .ts-container {
    width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.ts-v41-conversion-queue,
.ts-v41-message-quality,
.ts-v41-add-place-conversion,
.ts-v41-package-conversion,
.ts-v41-guest-fit,
.ts-v41-sidebar-conversion {
    border: 1px solid rgba(35,187,231,.18);
    box-shadow: 0 22px 70px rgba(9,52,64,.08);
}
.ts-v41-conversion-queue { margin: 28px 0; }
.ts-v41-queue-list { display: grid; gap: 14px; }
.ts-v41-queue-list article {
    display: grid;
    grid-template-columns: 150px minmax(0,1fr) auto;
    gap: 20px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(9,52,64,.08);
    border-radius: 24px;
    background: linear-gradient(135deg,#fff,#f6fbfe);
}
.ts-v41-queue-score {
    min-height: 116px;
    border-radius: 22px;
    background: linear-gradient(135deg,rgba(35,187,231,.16),rgba(255,255,255,.9));
    display: grid;
    place-items: center;
    text-align: center;
    padding: 14px;
}
.ts-v41-queue-score strong { display: block; font-size: 34px; color: var(--ts-primary,#23BBE7); line-height: 1; }
.ts-v41-queue-score span { display: block; margin-top: 8px; font-size: 12px; color: var(--ts-text-muted,#64748b); font-weight: 800; }
.ts-v41-queue-body h3 { margin: 4px 0 10px; }
.ts-v41-queue-body ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ts-v41-queue-body li { display: grid; gap: 2px; padding-left: 16px; position: relative; }
.ts-v41-queue-body li:before { content: ''; position: absolute; left: 0; top: .65em; width: 7px; height: 7px; border-radius: 50%; background: var(--ts-primary,#23BBE7); }
.ts-v41-queue-body li span { color: var(--ts-text-muted,#64748b); font-size: 13px; }
.ts-v41-queue-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ts-v41-message-quality { display: grid; grid-template-columns: .85fr 1.15fr; gap: 24px; margin: 28px 0; align-items: center; }
.ts-v41-message-grid,
.ts-v41-add-steps,
.ts-v41-package-conversion-grid,
.ts-v41-guest-fit-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.ts-v41-message-grid article,
.ts-v41-add-steps article,
.ts-v41-package-conversion-grid article,
.ts-v41-guest-fit-grid article {
    border: 1px solid rgba(9,52,64,.08);
    border-radius: 22px;
    padding: 18px;
    background: #fff;
}
.ts-v41-message-grid strong,
.ts-v41-add-steps strong,
.ts-v41-package-conversion-grid h3,
.ts-v41-guest-fit-grid strong { display: block; color: var(--ts-deep,#093440); }
.ts-v41-message-grid span,
.ts-v41-add-steps span,
.ts-v41-package-conversion-grid p,
.ts-v41-guest-fit-grid small { display: block; margin-top: 8px; color: var(--ts-text-muted,#64748b); line-height: 1.55; }
.ts-v41-add-place-conversion { margin-bottom: 24px; }
.ts-v41-add-steps article b {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(35,187,231,.12);
    color: var(--ts-primary,#23BBE7);
    margin-bottom: 16px;
}
.ts-v41-package-conversion { margin: 0 0 24px; }
.ts-v41-package-conversion-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.ts-v41-package-conversion-grid article.is-highlighted { border-color: rgba(35,187,231,.45); box-shadow: 0 24px 65px rgba(35,187,231,.14); transform: translateY(-4px); }
.ts-v41-package-conversion-grid article > span { display: inline-flex; padding: 7px 11px; border-radius: 999px; background: rgba(35,187,231,.12); color: var(--ts-primary,#23BBE7); font-size: 12px; font-weight: 900; }
.ts-v41-package-conversion-grid ul { margin: 14px 0 18px; padding: 0; list-style: none; display: grid; gap: 8px; }
.ts-v41-package-conversion-grid li { position: relative; padding-left: 18px; color: var(--ts-deep,#093440); font-weight: 700; }
.ts-v41-package-conversion-grid li:before { content: '✓'; position: absolute; left: 0; color: var(--ts-primary,#23BBE7); }
.ts-v41-place-conversion-strip {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 14px;
    margin-top: 18px;
    margin-bottom: 24px;
}
.ts-v41-place-conversion-strip article {
    padding: 18px;
    border-radius: 24px;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(35,187,231,.2);
    box-shadow: 0 18px 46px rgba(9,52,64,.07);
}
.ts-v41-place-conversion-strip span,
.ts-v41-guest-fit-grid span { display: block; color: var(--ts-text-muted,#64748b); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.ts-v41-place-conversion-strip strong { display: block; margin-top: 8px; color: var(--ts-deep,#093440); line-height: 1.35; }
.ts-v41-guest-fit { margin-top: 24px; }
.ts-v41-guest-fit .ts-detail-head > strong { padding: 9px 12px; border-radius: 999px; background: rgba(35,187,231,.12); color: var(--ts-primary,#23BBE7); }
.ts-v41-sidebar-conversion { margin-bottom: 18px; }
.ts-v41-sidebar-conversion ul { margin: 14px 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.ts-v41-sidebar-conversion li { padding: 12px; border-radius: 16px; background: #f6fbfe; color: var(--ts-deep,#093440); }
.ts-v41-sidebar-conversion p { color: var(--ts-text-muted,#64748b); line-height: 1.55; }
.ts-v41-dashboard-tail { display: grid; gap: 24px; margin-top: 28px; }
.ts-v41-empty-state { padding: 22px; border-radius: 22px; background: #f6fbfe; }
@media (max-width: 1100px) {
    .ts-v41-queue-list article { grid-template-columns: 120px 1fr; }
    .ts-v41-queue-actions { grid-column: 1 / -1; justify-content: flex-start; }
    .ts-v41-message-quality { grid-template-columns: 1fr; }
    .ts-v41-message-grid,
    .ts-v41-add-steps,
    .ts-v41-place-conversion-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ts-v41-package-conversion-grid,
    .ts-v41-guest-fit-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
    .ts-owner-dashboard--v41 .ts-container,
    .ts-add-place-v41 .ts-container,
    .ts-packages--v41 .ts-container { width: calc(100vw - 28px) !important; }
    .ts-v41-queue-list article,
    .ts-v41-message-grid,
    .ts-v41-add-steps,
    .ts-v41-place-conversion-strip { grid-template-columns: 1fr; }
    .ts-v41-queue-score { min-height: 92px; place-items: start; text-align: left; }
    .ts-v41-place-conversion-strip { margin-top: 12px; }
}

/* TuSpot EU v4.2 — Monetization & Listing Quality */
.ts-v42-monetization-center,
.ts-v42-quality-lab,
.ts-v42-upgrade-advisor,
.ts-v42-add-quality,
.ts-v42-package-revenue,
.ts-v42-guest-confidence,
.ts-v42-sidebar-quality {
    border: 1px solid rgba(9,52,64,.08);
    box-shadow: 0 24px 70px rgba(9,52,64,.08);
}
.ts-v42-monetization-center { margin: 28px 0; }
.ts-v42-metrics-grid {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 14px;
    margin-top: 22px;
}
.ts-v42-metrics-grid article {
    padding: 20px;
    border-radius: 22px;
    background: linear-gradient(180deg,#fff,#f6fbfe);
    border: 1px solid rgba(35,187,231,.15);
}
.ts-v42-metrics-grid strong {
    display: block;
    font-size: clamp(28px,3vw,42px);
    line-height: 1;
    letter-spacing: -.04em;
    color: var(--ts-primary,#23BBE7);
}
.ts-v42-metrics-grid span { display: block; margin-top: 8px; color: var(--ts-text-muted,#64748b); font-weight: 800; font-size: 13px; }
.ts-v42-quality-lab,
.ts-v42-upgrade-advisor { margin: 28px 0; }
.ts-v42-quality-list { display: grid; gap: 14px; }
.ts-v42-quality-list article {
    display: grid;
    grid-template-columns: 125px 1fr minmax(190px,240px);
    gap: 18px;
    align-items: center;
    padding: 18px;
    border-radius: 24px;
    background: #f6fbfe;
    border: 1px solid rgba(35,187,231,.14);
}
.ts-v42-quality-score {
    min-height: 100px;
    display: grid;
    place-items: center;
    text-align: center;
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(9,52,64,.07);
}
.ts-v42-quality-score strong { display: block; font-size: 36px; line-height: 1; color: var(--ts-primary,#23BBE7); }
.ts-v42-quality-score span { display: block; max-width: 90px; margin-top: 8px; color: var(--ts-text-muted,#64748b); font-size: 12px; font-weight: 900; }
.ts-v42-quality-main h3 { margin: 5px 0 8px; color: var(--ts-deep,#093440); }
.ts-v42-quality-main p { margin: 0 0 12px; color: var(--ts-text-muted,#64748b); }
.ts-v42-missing-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ts-v42-missing-chips span {
    display: inline-flex;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(35,187,231,.12);
    color: var(--ts-deep,#093440);
    font-size: 12px;
    font-weight: 900;
}
.ts-v42-quality-advice { display: grid; gap: 8px; justify-items: stretch; }
.ts-v42-quality-advice span { color: var(--ts-text-muted,#64748b); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.ts-v42-quality-advice strong { color: var(--ts-deep,#093440); }
.ts-v42-advisor-grid,
.ts-v42-add-quality-grid,
.ts-v42-package-path,
.ts-v42-confidence-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 14px;
    margin-top: 22px;
}
.ts-v42-add-quality-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.ts-v42-advisor-grid article,
.ts-v42-add-quality-grid article,
.ts-v42-package-path article,
.ts-v42-confidence-grid article {
    padding: 20px;
    border-radius: 22px;
    background: #f6fbfe;
    border: 1px solid rgba(35,187,231,.14);
}
.ts-v42-advisor-grid article > span,
.ts-v42-package-path article > span {
    display: inline-flex;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(35,187,231,.13);
    color: var(--ts-primary,#23BBE7);
    font-size: 12px;
    font-weight: 900;
}
.ts-v42-advisor-grid h3,
.ts-v42-package-path h3 { margin: 12px 0 8px; color: var(--ts-deep,#093440); }
.ts-v42-advisor-grid p,
.ts-v42-package-path p,
.ts-v42-add-quality-grid span,
.ts-v42-confidence-grid span { color: var(--ts-text-muted,#64748b); line-height: 1.55; }
.ts-v42-advisor-grid small,
.ts-v42-package-path small { display: block; margin: 12px 0 18px; color: var(--ts-text-muted,#64748b); line-height: 1.55; }
.ts-v42-package-path article b {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--ts-deep,#093440);
    color: #fff;
    margin-bottom: 14px;
}
.ts-v42-add-quality { margin-bottom: 24px; }
.ts-v42-add-quality-grid strong { display: block; color: var(--ts-deep,#093440); margin-bottom: 8px; }
.ts-v42-place-quality-strip {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 12px;
    margin-top: 14px;
}
.ts-v42-place-quality-strip article {
    padding: 18px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(35,187,231,.18);
    box-shadow: 0 16px 50px rgba(9,52,64,.06);
}
.ts-v42-place-quality-strip span,
.ts-v42-confidence-grid strong {
    display: block;
    color: var(--ts-text-muted,#64748b);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.ts-v42-place-quality-strip strong { display: block; margin-top: 8px; color: var(--ts-deep,#093440); line-height: 1.35; }
.ts-v42-guest-confidence { margin-top: 24px; }
.ts-v42-guest-confidence .ts-detail-head > strong {
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(35,187,231,.12);
    color: var(--ts-primary,#23BBE7);
}
.ts-v42-confidence-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.ts-v42-confidence-grid article { display: grid; grid-template-columns: 34px 1fr; gap: 12px; }
.ts-v42-confidence-grid article b {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(35,187,231,.14);
    color: var(--ts-primary,#23BBE7);
}
.ts-v42-confidence-grid article.is-missing b { background: rgba(9,52,64,.08); color: var(--ts-deep,#093440); }
.ts-v42-confidence-grid article div strong { color: var(--ts-deep,#093440); text-transform: none; letter-spacing: 0; font-size: 15px; }
.ts-v42-sidebar-quality { margin-bottom: 18px; }
.ts-v42-sidebar-quality h2 { margin: 8px 0; color: var(--ts-deep,#093440); }
.ts-v42-sidebar-quality p { color: var(--ts-text-muted,#64748b); line-height: 1.55; }
.ts-v42-sidebar-quality ul { margin: 14px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.ts-v42-sidebar-quality li { padding: 11px 12px; border-radius: 15px; background: #f6fbfe; color: var(--ts-deep,#093440); font-weight: 800; }
.ts-v42-empty-state { padding: 22px; border-radius: 22px; background: #f6fbfe; }

@media (max-width: 1100px) {
    .ts-v42-metrics-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .ts-v42-quality-list article { grid-template-columns: 125px 1fr; }
    .ts-v42-quality-advice { grid-column: 1 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: center; }
    .ts-v42-advisor-grid,
    .ts-v42-package-path { grid-template-columns: 1fr; }
    .ts-v42-add-quality-grid,
    .ts-v42-place-quality-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .ts-v42-metrics-grid,
    .ts-v42-quality-list article,
    .ts-v42-quality-advice,
    .ts-v42-add-quality-grid,
    .ts-v42-place-quality-strip,
    .ts-v42-confidence-grid { grid-template-columns: 1fr; }
    .ts-v42-quality-score { min-height: 90px; place-items: start; text-align: left; padding: 18px; }
    .ts-v42-place-quality-strip { margin-top: 12px; }
}

/* TuSpot EU v4.3 — Owner Onboarding & Launch Readiness */
.ts-owner-dashboard--v43 .ts-white-card,
.ts-add-place-v43 .ts-white-card,
.ts-packages--v43 .ts-white-card { margin-bottom: 24px; }
.ts-v43-onboarding-center,
.ts-v43-launch-readiness,
.ts-v43-first-week,
.ts-v43-package-setup,
.ts-v43-add-launch-guide { position: relative; overflow: hidden; }
.ts-v43-onboarding-center:before,
.ts-v43-launch-readiness:before,
.ts-v43-package-setup:before { content:""; position:absolute; inset:0 0 auto auto; width:260px; height:260px; border-radius:999px; background:rgba(35,187,231,.13); transform:translate(38%,-48%); pointer-events:none; }
.ts-v43-launch-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:22px; }
.ts-v43-launch-metrics article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.78); }
.ts-v43-launch-metrics strong { display:block; font-family:var(--ts-font-display); font-size:clamp(28px,3vw,44px); letter-spacing:-.04em; color:var(--ts-primary); line-height:1; }
.ts-v43-launch-metrics span { display:block; margin-top:6px; color:var(--ts-muted); font-weight:800; }
.ts-v43-onboarding-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:18px; }
.ts-v43-onboarding-steps article { display:flex; gap:14px; align-items:flex-start; padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v43-onboarding-steps b { width:32px; height:32px; flex:0 0 32px; display:grid; place-items:center; border-radius:999px; background:rgba(35,187,231,.13); color:var(--ts-primary); }
.ts-v43-onboarding-steps article.is-ready b { background:var(--ts-primary); color:#fff; }
.ts-v43-onboarding-steps strong,
.ts-v43-week-grid strong,
.ts-v43-package-setup-grid h3 { display:block; color:var(--ts-navy); }
.ts-v43-onboarding-steps span,
.ts-v43-week-grid p,
.ts-v43-package-setup-grid p,
.ts-v43-package-setup-grid small { color:var(--ts-muted); }
.ts-v43-readiness-list { display:grid; gap:14px; margin-top:22px; }
.ts-v43-readiness-list article { display:grid; grid-template-columns:132px 1fr auto; gap:18px; align-items:center; padding:18px; border:1px solid var(--ts-border); border-radius:26px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v43-score-ring { min-height:104px; display:grid; place-items:center; text-align:center; border-radius:24px; background:linear-gradient(145deg, rgba(35,187,231,.16), rgba(255,255,255,.9)); border:1px solid rgba(35,187,231,.22); }
.ts-v43-score-ring strong { font-family:var(--ts-font-display); font-size:34px; letter-spacing:-.04em; color:var(--ts-primary); line-height:1; }
.ts-v43-score-ring span { font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v43-readiness-main h3 { margin:4px 0 6px; font-size:22px; }
.ts-v43-readiness-main p { margin:0; color:var(--ts-muted); }
.ts-v43-check-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ts-v43-check-chips span { display:inline-flex; align-items:center; gap:4px; padding:7px 10px; border-radius:999px; font-size:12px; font-weight:900; border:1px solid var(--ts-border); background:rgba(246,251,254,.9); color:var(--ts-muted); }
.ts-v43-check-chips .is-ready { color:var(--ts-primary); border-color:rgba(35,187,231,.28); background:rgba(35,187,231,.1); }
.ts-v43-check-chips .is-missing { color:#9a3412; border-color:#fed7aa; background:#fff7ed; }
.ts-v43-readiness-actions { display:grid; gap:10px; min-width:138px; }
.ts-v43-week-grid,
.ts-v43-package-setup-grid,
.ts-v43-add-guide-grid,
.ts-v43-pre-enquiry-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:20px; }
.ts-v43-week-grid article,
.ts-v43-package-setup-grid article,
.ts-v43-add-guide-grid article,
.ts-v43-pre-enquiry-grid article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.76); }
.ts-v43-week-grid article span,
.ts-v43-package-setup-grid article span,
.ts-v43-pre-enquiry-grid article span { display:inline-flex; margin-bottom:9px; padding:6px 10px; border-radius:999px; background:rgba(35,187,231,.12); color:var(--ts-primary); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ts-v43-add-guide-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ts-v43-add-guide-grid strong { display:block; margin-bottom:6px; color:var(--ts-navy); }
.ts-v43-add-guide-grid span { color:var(--ts-muted); }
.ts-v43-place-launch-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; margin-bottom:18px; }
.ts-v43-place-launch-strip article { padding:16px 18px; border-radius:22px; background:#fff; border:1px solid var(--ts-border); box-shadow:var(--ts-shadow-soft); }
.ts-v43-place-launch-strip span { display:block; font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v43-place-launch-strip strong { display:block; margin-top:5px; color:var(--ts-navy); }
.ts-v43-pre-enquiry { margin-top:24px; }
.ts-v43-pre-enquiry-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ts-v43-pre-enquiry-grid strong { display:block; color:var(--ts-navy); line-height:1.35; }
.ts-v43-sidebar-launch { display:grid; gap:10px; }
.ts-v43-sidebar-launch p { margin:0; color:var(--ts-muted); }
.ts-v43-empty { padding:22px; border:1px dashed rgba(35,187,231,.35); border-radius:24px; background:rgba(35,187,231,.08); }
.ts-v43-empty h3 { margin-top:0; }
@media (max-width: 1100px) {
    .ts-v43-launch-metrics,
    .ts-v43-onboarding-steps,
    .ts-v43-week-grid,
    .ts-v43-package-setup-grid,
    .ts-v43-add-guide-grid,
    .ts-v43-place-launch-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ts-v43-readiness-list article { grid-template-columns:120px 1fr; }
    .ts-v43-readiness-actions { grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .ts-v43-launch-metrics,
    .ts-v43-onboarding-steps,
    .ts-v43-readiness-list article,
    .ts-v43-readiness-actions,
    .ts-v43-week-grid,
    .ts-v43-package-setup-grid,
    .ts-v43-add-guide-grid,
    .ts-v43-place-launch-strip,
    .ts-v43-pre-enquiry-grid { grid-template-columns:1fr; }
    .ts-v43-score-ring { min-height:86px; place-items:start; text-align:left; padding:18px; }
    .ts-v43-place-launch-strip { margin-top:12px; }
}

/* TuSpot EU v4.4 — Guest Journey & Enquiry Conversion */
.ts-owner-dashboard--v44 .ts-white-card,
.ts-add-place-v44 .ts-white-card,
.ts-packages--v44 .ts-white-card { margin-bottom: 24px; }
.ts-v44-guest-journey-center,
.ts-v44-journey-fix-queue,
.ts-v44-enquiry-playbook,
.ts-v44-add-journey-guide,
.ts-v44-package-journey { position: relative; overflow: hidden; }
.ts-v44-guest-journey-center:before,
.ts-v44-journey-fix-queue:before,
.ts-v44-package-journey:before { content:""; position:absolute; inset:0 0 auto auto; width:280px; height:280px; border-radius:999px; background:rgba(35,187,231,.12); transform:translate(42%,-46%); pointer-events:none; }
.ts-v44-journey-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:22px; }
.ts-v44-journey-metrics article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.78); }
.ts-v44-journey-metrics strong { display:block; font-family:var(--ts-font-display); font-size:clamp(28px,3vw,44px); letter-spacing:-.04em; line-height:1; color:var(--ts-primary); }
.ts-v44-journey-metrics span { display:block; margin-top:6px; color:var(--ts-muted); font-weight:800; }
.ts-v44-journey-actions,
.ts-v44-playbook-grid,
.ts-v44-add-journey-grid,
.ts-v44-package-journey-grid,
.ts-v44-decision-grid,
.ts-v44-message-grid { display:grid; gap:14px; margin-top:20px; }
.ts-v44-journey-actions { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v44-playbook-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v44-add-journey-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ts-v44-package-journey-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v44-decision-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v44-message-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ts-v44-journey-actions article,
.ts-v44-playbook-grid article,
.ts-v44-add-journey-grid article,
.ts-v44-package-journey-grid article,
.ts-v44-decision-grid article,
.ts-v44-message-grid article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.76); }
.ts-v44-journey-actions article { display:flex; gap:14px; align-items:flex-start; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v44-journey-actions b { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:999px; background:rgba(35,187,231,.13); color:var(--ts-primary); font-weight:900; }
.ts-v44-journey-actions strong,
.ts-v44-playbook-grid strong,
.ts-v44-add-journey-grid strong,
.ts-v44-package-journey-grid h3,
.ts-v44-decision-grid strong,
.ts-v44-message-grid strong { display:block; color:var(--ts-navy); line-height:1.25; }
.ts-v44-journey-actions span,
.ts-v44-playbook-grid p,
.ts-v44-add-journey-grid span,
.ts-v44-package-journey-grid p,
.ts-v44-message-grid p { color:var(--ts-muted); }
.ts-v44-playbook-grid article > span,
.ts-v44-package-journey-grid article > span,
.ts-v44-decision-grid article > span,
.ts-v44-message-grid article > span { display:inline-flex; margin-bottom:9px; padding:6px 10px; border-radius:999px; background:rgba(35,187,231,.12); color:var(--ts-primary); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ts-v44-fix-list { display:grid; gap:14px; margin-top:22px; }
.ts-v44-fix-list > article { display:grid; grid-template-columns:132px minmax(0,1fr) auto; gap:18px; align-items:center; padding:18px; border:1px solid var(--ts-border); border-radius:26px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v44-journey-score { min-height:104px; display:grid; place-items:center; text-align:center; border-radius:24px; border:1px solid rgba(35,187,231,.24); background:linear-gradient(145deg, rgba(35,187,231,.16), rgba(255,255,255,.9)); }
.ts-v44-journey-score strong { font-family:var(--ts-font-display); font-size:34px; letter-spacing:-.04em; color:var(--ts-primary); line-height:1; }
.ts-v44-journey-score span { font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v44-fix-list h3 { margin:4px 0 6px; font-size:22px; }
.ts-v44-fix-list p { margin:0; color:var(--ts-muted); }
.ts-v44-check-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ts-v44-check-row span { display:inline-flex; align-items:center; gap:4px; padding:7px 10px; border-radius:999px; border:1px solid var(--ts-border); background:rgba(246,251,254,.9); color:var(--ts-muted); font-size:12px; font-weight:900; }
.ts-v44-check-row .is-ready { color:var(--ts-primary); border-color:rgba(35,187,231,.28); background:rgba(35,187,231,.1); }
.ts-v44-check-row .is-missing { color:#9a3412; border-color:#fed7aa; background:#fff7ed; }
.ts-v44-fix-actions { display:grid; gap:10px; min-width:138px; }
.ts-v44-place-journey-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; margin-bottom:18px; }
.ts-v44-place-journey-strip article { padding:16px 18px; border-radius:22px; background:#fff; border:1px solid var(--ts-border); box-shadow:var(--ts-shadow-soft); }
.ts-v44-place-journey-strip span { display:block; font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v44-place-journey-strip strong { display:block; margin-top:5px; color:var(--ts-navy); }
.ts-v44-decision-map,
.ts-v44-message-helper { margin-top:24px; }
.ts-v44-sample-message { margin-top:16px; padding:18px; border-radius:22px; border:1px solid rgba(35,187,231,.24); background:linear-gradient(135deg, rgba(35,187,231,.12), rgba(255,255,255,.9)); }
.ts-v44-sample-message strong { display:block; color:var(--ts-navy); margin-bottom:6px; }
.ts-v44-sample-message p { margin:0; color:var(--ts-muted); }
.ts-v44-sidebar-journey { display:grid; gap:10px; }
.ts-v44-sidebar-journey p { margin:0; color:var(--ts-muted); }
.ts-v44-sidebar-journey strong { color:var(--ts-navy); }
.ts-v44-mobile-enquiry-prompt { display:none; }
@media (max-width: 1180px) {
    .ts-v44-journey-metrics,
    .ts-v44-journey-actions,
    .ts-v44-playbook-grid,
    .ts-v44-add-journey-grid,
    .ts-v44-package-journey-grid,
    .ts-v44-decision-grid,
    .ts-v44-message-grid,
    .ts-v44-place-journey-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ts-v44-fix-list > article { grid-template-columns:120px 1fr; }
    .ts-v44-fix-actions { grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
    .ts-v44-journey-metrics,
    .ts-v44-journey-actions,
    .ts-v44-playbook-grid,
    .ts-v44-add-journey-grid,
    .ts-v44-package-journey-grid,
    .ts-v44-decision-grid,
    .ts-v44-message-grid,
    .ts-v44-place-journey-strip,
    .ts-v44-fix-list > article,
    .ts-v44-fix-actions { grid-template-columns:1fr; }
    .ts-v44-mobile-enquiry-prompt { display:block; position:sticky; bottom:78px; z-index:45; width:min(calc(100vw - 28px), 720px); margin:18px auto; }
    .ts-v44-mobile-enquiry-prompt a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 15px; border-radius:999px; background:var(--ts-navy); color:#fff; text-decoration:none; box-shadow:0 18px 44px rgba(9,52,64,.22); }
    .ts-v44-mobile-enquiry-prompt span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:rgba(255,255,255,.76); font-size:12px; font-weight:800; }
    .ts-v44-mobile-enquiry-prompt strong { white-space:nowrap; color:#fff; font-size:13px; }
}

/* TuSpot EU v4.5 — Marketplace readiness and search quality */
.ts-owner-dashboard--v45 .ts-white-card,
.ts-add-place-v45 .ts-white-card,
.ts-packages--v45 .ts-white-card { margin-bottom:24px; }
.ts-v45-marketplace-center,
.ts-v45-search-quality-board,
.ts-v45-public-audit,
.ts-v45-release-plan,
.ts-v45-add-marketplace-guide,
.ts-v45-package-marketplace { position:relative; overflow:hidden; }
.ts-v45-marketplace-center:before,
.ts-v45-search-quality-board:before,
.ts-v45-package-marketplace:before { content:""; position:absolute; inset:0 0 auto auto; width:310px; height:310px; border-radius:999px; background:rgba(35,187,231,.12); transform:translate(42%,-48%); pointer-events:none; }
.ts-v45-market-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:22px; }
.ts-v45-market-metrics article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.78); }
.ts-v45-market-metrics strong { display:block; font-family:var(--ts-font-display); font-size:clamp(28px,3vw,44px); letter-spacing:-.04em; line-height:1; color:var(--ts-primary); }
.ts-v45-market-metrics span { display:block; margin-top:6px; color:var(--ts-muted); font-weight:800; }
.ts-v45-market-principles,
.ts-v45-audit-grid,
.ts-v45-release-steps,
.ts-v45-add-grid,
.ts-v45-package-grid,
.ts-v45-match-grid { display:grid; gap:14px; margin-top:20px; }
.ts-v45-market-principles { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v45-audit-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v45-release-steps { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ts-v45-add-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ts-v45-package-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v45-match-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v45-market-principles article,
.ts-v45-audit-grid article,
.ts-v45-release-steps article,
.ts-v45-add-grid article,
.ts-v45-package-grid article,
.ts-v45-match-grid article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.76); }
.ts-v45-market-principles article,
.ts-v45-release-steps article { display:flex; gap:14px; align-items:flex-start; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v45-market-principles b,
.ts-v45-release-steps b { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:999px; background:rgba(35,187,231,.13); color:var(--ts-primary); font-weight:900; }
.ts-v45-market-principles strong,
.ts-v45-audit-grid strong,
.ts-v45-release-steps strong,
.ts-v45-add-grid strong,
.ts-v45-package-grid h3,
.ts-v45-match-grid strong { display:block; color:var(--ts-navy); line-height:1.25; }
.ts-v45-market-principles span,
.ts-v45-audit-grid p,
.ts-v45-release-steps span,
.ts-v45-add-grid span,
.ts-v45-package-grid p { color:var(--ts-muted); }
.ts-v45-audit-grid article > span,
.ts-v45-package-grid article > span,
.ts-v45-match-grid article > span { display:inline-flex; margin-bottom:9px; padding:6px 10px; border-radius:999px; background:rgba(35,187,231,.12); color:var(--ts-primary); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ts-v45-quality-list { display:grid; gap:14px; margin-top:22px; }
.ts-v45-quality-list > article { display:grid; grid-template-columns:132px minmax(0,1fr) auto; gap:18px; align-items:center; padding:18px; border:1px solid var(--ts-border); border-radius:26px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v45-quality-score { min-height:104px; display:grid; place-items:center; text-align:center; border-radius:24px; border:1px solid rgba(35,187,231,.24); background:linear-gradient(145deg, rgba(35,187,231,.16), rgba(255,255,255,.9)); }
.ts-v45-quality-score strong { font-family:var(--ts-font-display); font-size:34px; letter-spacing:-.04em; color:var(--ts-primary); line-height:1; }
.ts-v45-quality-score span { font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v45-quality-list h3 { margin:4px 0 6px; font-size:22px; }
.ts-v45-quality-list p { margin:0; color:var(--ts-muted); }
.ts-v45-check-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ts-v45-check-row span,
.ts-v45-mini-checks span { display:inline-flex; align-items:center; gap:4px; padding:7px 10px; border-radius:999px; border:1px solid var(--ts-border); background:rgba(246,251,254,.9); color:var(--ts-muted); font-size:12px; font-weight:900; }
.ts-v45-check-row .is-ready,
.ts-v45-mini-checks .is-ready { color:var(--ts-primary); border-color:rgba(35,187,231,.28); background:rgba(35,187,231,.1); }
.ts-v45-check-row .is-missing,
.ts-v45-mini-checks .is-missing { color:#9a3412; border-color:#fed7aa; background:#fff7ed; }
.ts-v45-quality-actions { display:grid; gap:10px; min-width:138px; }
.ts-v45-marketplace-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; margin-bottom:18px; }
.ts-v45-marketplace-strip article { padding:16px 18px; border-radius:22px; background:#fff; border:1px solid var(--ts-border); box-shadow:var(--ts-shadow-soft); }
.ts-v45-marketplace-strip span { display:block; font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v45-marketplace-strip strong { display:block; margin-top:5px; color:var(--ts-navy); }
.ts-v45-search-match { margin-top:24px; }
.ts-v45-sidebar-search-fit { display:grid; gap:10px; }
.ts-v45-sidebar-search-fit p { margin:0; color:var(--ts-muted); }
.ts-v45-mini-checks { display:flex; flex-wrap:wrap; gap:8px; }
@media (max-width:1180px) {
    .ts-v45-market-metrics,
    .ts-v45-market-principles,
    .ts-v45-audit-grid,
    .ts-v45-release-steps,
    .ts-v45-add-grid,
    .ts-v45-package-grid,
    .ts-v45-match-grid,
    .ts-v45-marketplace-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ts-v45-quality-list > article { grid-template-columns:120px 1fr; }
    .ts-v45-quality-actions { grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
    .ts-v45-market-metrics,
    .ts-v45-market-principles,
    .ts-v45-audit-grid,
    .ts-v45-release-steps,
    .ts-v45-add-grid,
    .ts-v45-package-grid,
    .ts-v45-match-grid,
    .ts-v45-marketplace-strip,
    .ts-v45-quality-list > article,
    .ts-v45-quality-actions { grid-template-columns:1fr; }
}

/* TuSpot EU v4.6 — Controlled beta readiness */
.ts-owner-dashboard--v46 .ts-white-card,
.ts-add-place-v46 .ts-white-card,
.ts-packages--v46 .ts-white-card { margin-bottom:24px; }
.ts-v46-beta-center,
.ts-v46-owner-beta-checklist,
.ts-v46-beta-test-plan,
.ts-v46-issue-triage,
.ts-v46-add-beta-guardrails,
.ts-v46-package-beta-policy { position:relative; overflow:hidden; }
.ts-v46-beta-center:before,
.ts-v46-owner-beta-checklist:before,
.ts-v46-package-beta-policy:before { content:""; position:absolute; inset:0 0 auto auto; width:330px; height:330px; border-radius:999px; background:rgba(35,187,231,.12); transform:translate(42%,-50%); pointer-events:none; }
.ts-v46-beta-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:22px; }
.ts-v46-beta-metrics article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.78); }
.ts-v46-beta-metrics strong { display:block; font-family:var(--ts-font-display); font-size:clamp(28px,3vw,44px); letter-spacing:-.04em; line-height:1; color:var(--ts-primary); }
.ts-v46-beta-metrics span { display:block; margin-top:6px; color:var(--ts-muted); font-weight:800; }
.ts-v46-beta-principles,
.ts-v46-test-steps,
.ts-v46-triage-grid,
.ts-v46-guardrail-grid,
.ts-v46-package-policy-grid,
.ts-v46-assurance-grid { display:grid; gap:14px; margin-top:20px; }
.ts-v46-beta-principles { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v46-test-steps { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ts-v46-triage-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ts-v46-guardrail-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ts-v46-package-policy-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v46-assurance-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ts-v46-beta-principles article,
.ts-v46-test-steps article { display:flex; gap:14px; align-items:flex-start; padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v46-beta-principles b,
.ts-v46-test-steps b { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:999px; background:rgba(35,187,231,.13); color:var(--ts-primary); font-weight:900; }
.ts-v46-triage-grid article,
.ts-v46-guardrail-grid article,
.ts-v46-package-policy-grid article,
.ts-v46-assurance-grid article { padding:18px; border:1px solid var(--ts-border); border-radius:22px; background:rgba(246,251,254,.76); }
.ts-v46-beta-principles strong,
.ts-v46-test-steps strong,
.ts-v46-guardrail-grid strong,
.ts-v46-assurance-grid strong,
.ts-v46-package-policy-grid h3 { display:block; color:var(--ts-navy); line-height:1.25; }
.ts-v46-beta-principles span,
.ts-v46-test-steps span,
.ts-v46-guardrail-grid span,
.ts-v46-package-policy-grid p,
.ts-v46-assurance-grid span { color:var(--ts-muted); }
.ts-v46-triage-grid article > span,
.ts-v46-package-policy-grid article > span { display:inline-flex; margin-bottom:9px; padding:6px 10px; border-radius:999px; background:rgba(35,187,231,.12); color:var(--ts-primary); font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ts-v46-triage-grid p { margin:0; color:var(--ts-muted); }
.ts-v46-beta-list { display:grid; gap:14px; margin-top:22px; }
.ts-v46-beta-list > article { display:grid; grid-template-columns:132px minmax(0,1fr) auto; gap:18px; align-items:center; padding:18px; border:1px solid var(--ts-border); border-radius:26px; background:#fff; box-shadow:var(--ts-shadow-soft); }
.ts-v46-beta-score { min-height:104px; display:grid; place-items:center; text-align:center; border-radius:24px; border:1px solid rgba(35,187,231,.24); background:linear-gradient(145deg, rgba(35,187,231,.16), rgba(255,255,255,.9)); }
.ts-v46-beta-score strong { font-family:var(--ts-font-display); font-size:34px; letter-spacing:-.04em; color:var(--ts-primary); line-height:1; }
.ts-v46-beta-score span { font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v46-beta-list h3 { margin:4px 0 6px; font-size:22px; }
.ts-v46-beta-list p { margin:0; color:var(--ts-muted); }
.ts-v46-check-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ts-v46-check-row span,
.ts-v46-mini-checks span { display:inline-flex; align-items:center; gap:4px; padding:7px 10px; border-radius:999px; border:1px solid var(--ts-border); background:rgba(246,251,254,.9); color:var(--ts-muted); font-size:12px; font-weight:900; }
.ts-v46-check-row .is-ready,
.ts-v46-mini-checks .is-ready { color:var(--ts-primary); border-color:rgba(35,187,231,.28); background:rgba(35,187,231,.1); }
.ts-v46-check-row .is-missing,
.ts-v46-mini-checks .is-missing { color:#9a3412; border-color:#fed7aa; background:#fff7ed; }
.ts-v46-beta-actions { display:grid; gap:10px; min-width:138px; }
.ts-v46-beta-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; margin-bottom:18px; }
.ts-v46-beta-strip article { padding:16px 18px; border-radius:22px; background:#fff; border:1px solid var(--ts-border); box-shadow:var(--ts-shadow-soft); }
.ts-v46-beta-strip span { display:block; font-size:12px; font-weight:900; color:var(--ts-muted); text-transform:uppercase; letter-spacing:.06em; }
.ts-v46-beta-strip strong { display:block; margin-top:5px; color:var(--ts-navy); }
.ts-v46-guest-assurance { margin-top:24px; }
.ts-v46-beta-note { margin-top:16px; padding:14px 16px; border-radius:18px; border:1px solid rgba(35,187,231,.24); background:rgba(35,187,231,.1); color:var(--ts-muted); }
.ts-v46-beta-note strong { color:var(--ts-navy); }
.ts-v46-sidebar-beta { display:grid; gap:10px; }
.ts-v46-sidebar-beta p { margin:0; color:var(--ts-muted); }
.ts-v46-mini-checks { display:flex; flex-wrap:wrap; gap:8px; }
.ts-v46-mobile-beta-prompt { display:none; }
@media (max-width:1180px) {
    .ts-v46-beta-metrics,
    .ts-v46-beta-principles,
    .ts-v46-test-steps,
    .ts-v46-triage-grid,
    .ts-v46-guardrail-grid,
    .ts-v46-package-policy-grid,
    .ts-v46-assurance-grid,
    .ts-v46-beta-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ts-v46-beta-list > article { grid-template-columns:120px 1fr; }
    .ts-v46-beta-actions { grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:720px) {
    .ts-v46-beta-metrics,
    .ts-v46-beta-principles,
    .ts-v46-test-steps,
    .ts-v46-triage-grid,
    .ts-v46-guardrail-grid,
    .ts-v46-package-policy-grid,
    .ts-v46-assurance-grid,
    .ts-v46-beta-strip,
    .ts-v46-beta-list > article,
    .ts-v46-beta-actions { grid-template-columns:1fr; }
    .ts-v46-mobile-beta-prompt { display:block; position:sticky; bottom:132px; z-index:44; width:min(calc(100vw - 28px), 720px); margin:10px auto 0; }
    .ts-v46-mobile-beta-prompt a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 15px; border-radius:999px; background:#fff; color:var(--ts-navy); text-decoration:none; border:1px solid rgba(35,187,231,.22); box-shadow:0 18px 44px rgba(9,52,64,.16); }
    .ts-v46-mobile-beta-prompt span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ts-muted); font-size:12px; font-weight:800; }
    .ts-v46-mobile-beta-prompt strong { white-space:nowrap; color:var(--ts-primary); font-size:13px; }
}

/* TuSpot EU v4.7 — final mobile, UX and copy polish */
.ts-v47-final-polish-center,
.ts-v47-mobile-checklist,
.ts-v47-empty-state-library,
.ts-v47-freeze-notes,
.ts-v47-polish-queue,
.ts-v47-add-polish,
.ts-v47-package-freeze,
.ts-v47-guest-quick-check,
.ts-v47-sidebar-polish {
  border: 1px solid rgba(35,187,231,.16);
  box-shadow: 0 22px 70px rgba(9,52,64,.08);
}
.ts-v47-polish-metrics,
.ts-v47-polish-principles,
.ts-v47-checklist-grid,
.ts-v47-empty-grid,
.ts-v47-freeze-grid,
.ts-v47-add-grid,
.ts-v47-package-grid,
.ts-v47-quick-check-grid {
  display: grid;
  gap: 16px;
}
.ts-v47-polish-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 22px; }
.ts-v47-polish-metrics article,
.ts-v47-polish-principles article,
.ts-v47-checklist-grid article,
.ts-v47-empty-grid article,
.ts-v47-freeze-grid article,
.ts-v47-add-grid article,
.ts-v47-package-grid article,
.ts-v47-quick-check-grid article {
  background: linear-gradient(180deg, #ffffff, #f6fbfe);
  border: 1px solid rgba(35,187,231,.14);
  border-radius: 22px;
  padding: 18px;
}
.ts-v47-polish-metrics strong { display:block; font-size: clamp(28px, 3vw, 44px); line-height: 1; color: var(--ts-deep, #093440); }
.ts-v47-polish-metrics span,
.ts-v47-polish-principles span,
.ts-v47-checklist-grid span,
.ts-v47-empty-grid p,
.ts-v47-freeze-grid span,
.ts-v47-add-grid span,
.ts-v47-package-grid p,
.ts-v47-quick-check-grid span { color: rgba(9,52,64,.68); }
.ts-v47-polish-principles { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 16px; }
.ts-v47-polish-principles article,
.ts-v47-checklist-grid article { display:flex; gap: 14px; align-items:flex-start; }
.ts-v47-polish-principles b,
.ts-v47-checklist-grid b {
  width: 38px; height: 38px; border-radius: 14px; display:grid; place-items:center;
  background: rgba(35,187,231,.13); color: #093440; flex: 0 0 auto;
}
.ts-v47-checklist-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
.ts-v47-empty-grid,
.ts-v47-freeze-grid,
.ts-v47-add-grid,
.ts-v47-package-grid,
.ts-v47-quick-check-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 18px; }
.ts-v47-empty-grid article span,
.ts-v47-package-grid article span { display:inline-flex; padding: 6px 10px; border-radius: 999px; background: rgba(35,187,231,.12); color:#093440; font-weight: 800; font-size: 12px; }
.ts-v47-empty-grid article strong { color:#23bbe7; }
.ts-v47-polish-list { display:grid; gap: 12px; margin-top: 18px; }
.ts-v47-polish-list article {
  display:grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 18px; align-items:center;
  padding: 18px; border-radius: 22px; background:#fff; border:1px solid rgba(9,52,64,.09);
}
.ts-v47-polish-list h3 { margin: 4px 0; }
.ts-v47-polish-list span { color:#23bbe7; font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.ts-v47-polish-list p { margin:0; color:rgba(9,52,64,.65); }
.ts-v47-polish-list > article > strong { font-size:28px; color:#093440; }
.ts-v47-polish-actions { display:flex; gap:8px; flex-wrap:wrap; }
.ts-v47-polish-actions a,
.ts-v47-empty-inline {
  border-radius: 999px; border:1px solid rgba(35,187,231,.2); padding: 10px 14px; text-decoration:none; color:#093440; font-weight:800; background:#f6fbfe;
}
.ts-v47-empty-inline { display:flex; justify-content:space-between; gap: 12px; border-radius: 20px; }
.ts-v47-polish-strip {
  display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 14px; margin-bottom: 18px;
}
.ts-v47-polish-strip article {
  background: rgba(255,255,255,.94); border:1px solid rgba(35,187,231,.17); border-radius: 20px; padding: 16px;
  box-shadow: 0 14px 38px rgba(9,52,64,.07);
}
.ts-v47-polish-strip span { display:block; color:rgba(9,52,64,.62); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.ts-v47-polish-strip strong { display:block; color:#093440; margin-top: 6px; }
.ts-v47-confirm-box { margin-top: 16px; padding: 14px 16px; border-radius: 18px; background: rgba(35,187,231,.1); color:#093440; }
.ts-v47-mini-list { display:grid; gap: 8px; margin: 14px 0; }
.ts-v47-mini-list span { display:block; padding: 9px 10px; border-radius: 14px; background:#f6fbfe; font-weight:700; color:#093440; }
.ts-v47-mini-list .is-missing { background: #fff7ed; color:#9a3412; }
.ts-v47-mobile-polish-prompt {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 90; display:none;
}
.ts-v47-mobile-polish-prompt a {
  display:flex; justify-content:space-between; align-items:center; gap: 14px; border-radius: 22px; padding: 14px 16px;
  background:#093440; color:#fff; text-decoration:none; box-shadow: 0 18px 50px rgba(9,52,64,.28);
}
.ts-v47-mobile-polish-prompt span { color: rgba(255,255,255,.78); font-size: 12px; }
.ts-v47-mobile-polish-prompt strong { color:#fff; }
.ts-release-qa-board--v47 .ts-release-qa-hero strong { color:#23bbe7; }
@media (max-width: 920px) {
  .ts-v47-polish-metrics,
  .ts-v47-polish-principles,
  .ts-v47-checklist-grid,
  .ts-v47-empty-grid,
  .ts-v47-freeze-grid,
  .ts-v47-add-grid,
  .ts-v47-package-grid,
  .ts-v47-quick-check-grid,
  .ts-v47-polish-strip { grid-template-columns: 1fr; }
  .ts-v47-polish-list article { grid-template-columns: 1fr; align-items:start; }
  .ts-v47-mobile-polish-prompt { display:block; }
  body { padding-bottom: 86px; }
}

/* TuSpot EU v4.8 — Beta Freeze & Smoke Tests */
.ts-v48-freeze-center,
.ts-v48-smoke-matrix,
.ts-v48-freeze-queue,
.ts-v48-issue-guide,
.ts-v48-signoff-panel,
.ts-v48-add-freeze,
.ts-v48-package-freeze-rules,
.ts-v48-guest-smoke-note,
.ts-v48-sidebar-freeze {
    border: 1px solid rgba(35,187,231,.14);
    box-shadow: 0 18px 48px rgba(9,52,64,.08);
}
.ts-v48-freeze-metrics,
.ts-v48-signoff-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 22px;
}
.ts-v48-freeze-metrics article,
.ts-v48-signoff-grid article {
    border-radius: 22px;
    padding: 18px;
    background: linear-gradient(180deg, #f6fbfe, #fff);
    border: 1px solid rgba(9,52,64,.08);
}
.ts-v48-freeze-metrics strong,
.ts-v48-signoff-grid strong {
    display: block;
    font-size: clamp(26px, 3vw, 42px);
    line-height: 1;
    color: var(--ts-primary);
}
.ts-v48-freeze-metrics span,
.ts-v48-signoff-grid span {
    display: block;
    margin-top: 8px;
    color: rgba(9,52,64,.68);
    font-weight: 700;
}
.ts-v48-freeze-rules,
.ts-v48-smoke-grid,
.ts-v48-issue-grid,
.ts-v48-add-steps,
.ts-v48-package-rule-grid,
.ts-v48-guest-check-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}
.ts-v48-smoke-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ts-v48-guest-check-grid,
.ts-v48-add-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ts-v48-freeze-rules article,
.ts-v48-smoke-grid article,
.ts-v48-issue-grid article,
.ts-v48-add-steps article,
.ts-v48-package-rule-grid article,
.ts-v48-guest-check-grid article {
    border-radius: 22px;
    padding: 18px;
    background: #fff;
    border: 1px solid rgba(9,52,64,.08);
}
.ts-v48-freeze-rules b,
.ts-v48-smoke-grid b {
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--ts-accent-soft);
    color: var(--ts-accent);
    margin-bottom: 14px;
}
.ts-v48-freeze-rules strong,
.ts-v48-smoke-grid strong,
.ts-v48-issue-grid strong,
.ts-v48-add-steps strong,
.ts-v48-package-rule-grid h3,
.ts-v48-guest-check-grid strong {
    display: block;
    color: var(--ts-primary);
    font-size: 1rem;
}
.ts-v48-freeze-rules span,
.ts-v48-smoke-grid span,
.ts-v48-issue-grid span,
.ts-v48-add-steps span,
.ts-v48-package-rule-grid p,
.ts-v48-guest-check-grid span {
    display: block;
    margin-top: 8px;
    color: rgba(9,52,64,.68);
    line-height: 1.55;
}
.ts-v48-smoke-grid em {
    display: inline-flex;
    margin-top: 14px;
    border-radius: 999px;
    padding: 6px 10px;
    background: rgba(35,187,231,.12);
    color: var(--ts-accent);
    font-style: normal;
    font-weight: 800;
    font-size: .82rem;
}
.ts-v48-freeze-list {
    display: grid;
    gap: 14px;
    margin-top: 22px;
}
.ts-v48-freeze-list article {
    display: grid;
    grid-template-columns: 128px minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(9,52,64,.08);
    background: linear-gradient(180deg, #fff, #f8fcfe);
}
.ts-v48-freeze-score strong {
    display: block;
    font-size: 32px;
    color: var(--ts-primary);
}
.ts-v48-freeze-score span,
.ts-v48-freeze-main p {
    color: rgba(9,52,64,.64);
    font-weight: 700;
}
.ts-v48-freeze-main h3 { margin: 0 0 6px; color: var(--ts-primary); }
.ts-v48-missing-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.ts-v48-missing-row span,
.ts-v48-mini-list span {
    border-radius: 999px;
    padding: 6px 10px;
    font-size: .82rem;
    font-weight: 800;
    background: #fff4e5;
    color: #8a4b00;
}
.ts-v48-freeze-actions { display: flex; gap: 8px; }
.ts-v48-freeze-actions a {
    border-radius: 999px;
    padding: 9px 13px;
    background: var(--ts-primary);
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}
.ts-v48-signoff-panel.is-ship { border-color: rgba(37,163,97,.22); }
.ts-v48-signoff-panel.is-hold { border-color: rgba(255,164,28,.28); }
.ts-v48-signoff-panel .ts-section-head > strong {
    border-radius: 999px;
    padding: 10px 14px;
    background: var(--ts-primary);
    color: #fff;
    white-space: nowrap;
}
.ts-v48-package-rule-grid article span {
    display: inline-flex;
    border-radius: 999px;
    padding: 6px 10px;
    background: var(--ts-accent-soft);
    color: var(--ts-accent);
    font-weight: 900;
    margin-bottom: 10px;
}
.ts-v48-freeze-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}
.ts-v48-freeze-strip article {
    border-radius: 24px;
    padding: 18px;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(9,52,64,.08);
    box-shadow: 0 14px 32px rgba(9,52,64,.07);
}
.ts-v48-freeze-strip span { display: block; color: rgba(9,52,64,.58); font-weight: 800; font-size: .82rem; text-transform: uppercase; letter-spacing: .06em; }
.ts-v48-freeze-strip strong { display: block; margin-top: 6px; color: var(--ts-primary); font-size: 1.05rem; }
.ts-v48-confirm-box {
    margin-top: 18px;
    border-radius: 18px;
    padding: 14px 16px;
    background: #fff9ec;
    color: #7a4b00;
    border: 1px solid rgba(255,164,28,.22);
}
.ts-v48-mini-list {
    display: grid;
    gap: 8px;
    margin: 16px 0;
}
.ts-v48-mini-list span.is-ready { background: rgba(37,163,97,.12); color: #157344; }
.ts-v48-mini-list span.is-missing { background: #fff4e5; color: #8a4b00; }
.ts-v48-mobile-freeze-prompt {
    display: none;
    position: fixed;
    left: 14px;
    right: 14px;
    bottom: 14px;
    z-index: 90;
}
.ts-v48-mobile-freeze-prompt a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 999px;
    background: var(--ts-primary);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 18px 42px rgba(9,52,64,.22);
}
.ts-v48-mobile-freeze-prompt span { opacity: .86; font-weight: 700; }
.ts-v48-mobile-freeze-prompt strong { font-weight: 900; }
.tuspot-v48-admin-freeze .ts-white-card { max-width: none; }
@media (max-width: 900px) {
    .ts-v48-freeze-metrics,
    .ts-v48-signoff-grid,
    .ts-v48-freeze-rules,
    .ts-v48-smoke-grid,
    .ts-v48-issue-grid,
    .ts-v48-add-steps,
    .ts-v48-package-rule-grid,
    .ts-v48-guest-check-grid,
    .ts-v48-freeze-strip {
        grid-template-columns: 1fr;
    }
    .ts-v48-freeze-list article {
        grid-template-columns: 1fr;
    }
    .ts-v48-freeze-actions { justify-content: flex-start; flex-wrap: wrap; }
    .ts-v48-mobile-freeze-prompt { display: block; }
    body { padding-bottom: 76px; }
}


/* TuSpot EU v5.0 Beta — First Beta Release */
.ts-v50-beta-release-center,
.ts-v50-beta-launch-checklist,
.ts-v50-owner-pilot-board,
.ts-v50-known-issue-guide,
.ts-v50-release-notes,
.ts-v50-add-beta-notice,
.ts-v50-package-beta-panel,
.ts-v50-guest-beta-note,
.ts-v50-sidebar-beta-card {
    border: 1px solid rgba(35,187,231,.14);
    box-shadow: 0 22px 60px rgba(9,52,64,.08);
}
.ts-v50-beta-badge {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 12px 16px;
    border-radius: 999px;
    background: linear-gradient(135deg, #23bbe7, #13677f);
    color: #fff;
    font-size: .82rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}
.ts-v50-beta-metrics,
.ts-v50-beta-rules,
.ts-v50-checklist-grid,
.ts-v50-issue-grid,
.ts-v50-add-rules,
.ts-v50-package-grid,
.ts-v50-guest-grid {
    display:grid;
    gap: 14px;
    margin-top: 18px;
}
.ts-v50-beta-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ts-v50-beta-rules,
.ts-v50-add-rules,
.ts-v50-package-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ts-v50-checklist-grid,
.ts-v50-issue-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ts-v50-guest-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ts-v50-beta-metrics article,
.ts-v50-beta-rules article,
.ts-v50-checklist-grid article,
.ts-v50-issue-grid article,
.ts-v50-add-rules article,
.ts-v50-package-grid article,
.ts-v50-guest-grid article {
    border: 1px solid rgba(9,52,64,.08);
    border-radius: 22px;
    background: #f6fbfe;
    padding: 16px;
}
.ts-v50-beta-metrics strong {
    display:block;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1;
    color: #093440;
}
.ts-v50-beta-metrics span,
.ts-v50-beta-rules span,
.ts-v50-checklist-grid span,
.ts-v50-issue-grid span,
.ts-v50-add-rules span,
.ts-v50-package-grid p,
.ts-v50-guest-grid span,
.ts-v50-note-list,
.ts-v50-empty span,
.ts-v50-pilot-main p {
    color: rgba(9,52,64,.68);
}
.ts-v50-beta-rules article,
.ts-v50-checklist-grid article { display:flex; gap: 14px; align-items:flex-start; }
.ts-v50-beta-rules b,
.ts-v50-checklist-grid b {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background: rgba(35,187,231,.14);
    color: #093440;
    flex: 0 0 auto;
}
.ts-v50-package-grid article span {
    display:inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(35,187,231,.12);
    color:#093440;
    font-weight: 900;
    font-size: .78rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.ts-v50-package-grid h3 { margin: 12px 0 8px; color:#093440; }
.ts-v50-pilot-list { display:grid; gap: 12px; margin-top: 18px; }
.ts-v50-pilot-list article {
    display:grid;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    gap: 16px;
    align-items:center;
    padding: 16px;
    border-radius: 24px;
    border: 1px solid rgba(9,52,64,.08);
    background: #f6fbfe;
}
.ts-v50-pilot-score strong { display:block; font-size: 28px; color:#093440; }
.ts-v50-pilot-score span,
.ts-v50-pilot-main span { color:#23bbe7; font-weight: 900; font-size: .78rem; text-transform: uppercase; letter-spacing:.06em; }
.ts-v50-pilot-main h3 { margin: 4px 0; color:#093440; }
.ts-v50-pilot-actions { display:flex; gap: 8px; flex-wrap:wrap; justify-content:flex-end; }
.ts-v50-pilot-actions a {
    text-decoration:none;
    color:#093440;
    border:1px solid rgba(9,52,64,.12);
    border-radius:999px;
    padding:9px 12px;
    font-weight:800;
    background:#fff;
}
.ts-v50-empty {
    margin-top: 18px;
    padding: 18px;
    border-radius: 22px;
    background: #f6fbfe;
    border: 1px dashed rgba(35,187,231,.34);
}
.ts-v50-empty strong,
.ts-v50-empty span { display:block; }
.ts-v50-note-list { margin: 16px 0 0; padding-left: 20px; display:grid; gap: 8px; }
.ts-v50-beta-strip {
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}
.ts-v50-beta-strip article {
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(35,187,231,.16);
    padding: 16px;
    box-shadow: 0 14px 38px rgba(9,52,64,.07);
}
.ts-v50-beta-strip span { display:block; color: rgba(9,52,64,.58); font-weight: 900; font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; }
.ts-v50-beta-strip strong { display:block; margin-top: 6px; color:#23bbe7; }
.ts-v50-guest-grid article.is-ready { background: rgba(37,163,97,.10); border-color: rgba(37,163,97,.18); }
.ts-v50-guest-grid article.is-missing { background: #fff4e5; border-color: rgba(255,164,28,.24); }
.ts-v50-confirm-box { margin-top: 16px; padding: 14px 16px; border-radius: 18px; background: rgba(35,187,231,.1); color:#093440; }
.ts-v50-mini-list { display:grid; gap: 8px; margin: 14px 0; }
.ts-v50-mini-list span { display:block; padding: 9px 10px; border-radius: 14px; background:#f6fbfe; font-weight:800; color:#093440; }
.ts-v50-mini-list span.is-ready { background: rgba(37,163,97,.12); color: #157344; }
.ts-v50-mini-list span.is-missing { background: #fff4e5; color: #8a4b00; }
.ts-v50-mobile-beta-prompt { display:none; position:fixed; left:16px; right:16px; bottom:82px; z-index:80; }
.ts-v50-mobile-beta-prompt a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 999px;
    text-decoration:none;
    background: linear-gradient(135deg, #093440, #13677f);
    color:#fff;
    box-shadow: 0 18px 45px rgba(9,52,64,.24);
}
.ts-v50-mobile-beta-prompt span { opacity:.86; font-weight:700; }
.ts-v50-mobile-beta-prompt strong { font-weight:900; }
.tuspot-v50-admin-beta .ts-white-card { max-width: none; }
.ts-release-qa-board--v50 .ts-release-qa-hero strong { color:#23bbe7; }
@media (max-width: 900px) {
    .ts-v50-beta-metrics,
    .ts-v50-beta-rules,
    .ts-v50-checklist-grid,
    .ts-v50-issue-grid,
    .ts-v50-add-rules,
    .ts-v50-package-grid,
    .ts-v50-guest-grid,
    .ts-v50-beta-strip { grid-template-columns: 1fr; }
    .ts-v50-pilot-list article { grid-template-columns: 1fr; }
    .ts-v50-pilot-actions { justify-content:flex-start; }
    .ts-v50-mobile-beta-prompt { display:block; }
}

/* v5.0 beta.2 — add place live preview and category builder */
.ts-add-place-form--v50b2 { overflow: visible; }
.ts-add-place-v50b2-grid { align-items: start; }
.ts-v50b2-package-section .ts-v39-form-section-head p { max-width: 760px; }
.ts-v50b2-package-explain {
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 18px;
}
.ts-v50b2-package-explain article {
    border: 1px solid rgba(35,187,231,.18);
    border-radius: 18px;
    background: #f6fbfe;
    padding: 14px;
}
.ts-v50b2-package-explain strong,
.ts-v50b2-package-explain span { display:block; }
.ts-v50b2-package-explain strong { color:#093440; font-size: 1rem; }
.ts-v50b2-package-explain span { color: rgba(9,52,64,.68); margin-top: 5px; font-weight: 700; line-height: 1.45; }
.ts-v50b2-aside { position: sticky; top: 92px; }
.ts-v50b2-live-card-wrap { padding: 18px; }
.ts-v50b2-place-card {
    overflow:hidden;
    border: 1px solid rgba(35,187,231,.16);
    border-radius: 28px;
    background:#fff;
    box-shadow: 0 22px 60px rgba(9,52,64,.12);
    margin-top: 12px;
}
.ts-v50b2-place-image {
    min-height: 190px;
    display:flex;
    align-items:flex-start;
    justify-content:flex-end;
    padding: 16px;
    background:
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.95), rgba(255,255,255,0) 30%),
        linear-gradient(135deg, rgba(35,187,231,.25), rgba(19,103,127,.2)),
        linear-gradient(135deg, #eaf8fe, #ffffff);
}
.ts-v50b2-place-image span {
    border-radius: 999px;
    background:#fff;
    color:#093440;
    padding: 8px 12px;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(9,52,64,.12);
}
.ts-v50b2-place-body { padding: 18px; }
.ts-v50b2-card-top,
.ts-v50b2-card-meta,
.ts-v50b2-card-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 10px;
}
.ts-v50b2-card-top span {
    display:inline-flex;
    border-radius: 999px;
    background: rgba(35,187,231,.12);
    color:#13677f;
    padding: 7px 10px;
    font-size:.78rem;
    font-weight: 900;
}
.ts-v50b2-card-top em { color: rgba(9,52,64,.58); font-style: normal; font-weight: 800; font-size:.82rem; }
.ts-v50b2-place-body h3 { margin: 14px 0 8px; color:#093440; font-size: 1.35rem; line-height:1.15; }
.ts-v50b2-place-body p { margin: 0 0 14px; color: rgba(9,52,64,.72); line-height: 1.55; }
.ts-v50b2-card-meta span { color: rgba(9,52,64,.7); font-weight: 800; font-size:.86rem; }
.ts-v50b2-card-bottom { border-top:1px solid rgba(35,187,231,.14); margin-top: 14px; padding-top: 14px; }
.ts-v50b2-card-bottom strong { color:#093440; }
.ts-v50b2-card-bottom a { color:#23bbe7; font-weight: 900; text-decoration:none; }
.ts-v50b2-one-col-checklist { display:grid !important; grid-template-columns: 1fr !important; gap: 10px !important; }
.ts-v50b2-one-col-checklist article {
    display:block;
    padding: 13px 14px;
    border-radius: 16px;
    background:#f6fbfe;
    border:1px solid rgba(35,187,231,.16);
}
.ts-v50b2-one-col-checklist strong,
.ts-v50b2-one-col-checklist span { display:block; }
.ts-v50b2-one-col-checklist span { margin-top:4px; color: rgba(9,52,64,.68); line-height:1.45; }
.ts-v50b2-category-builder {
    display:grid;
    gap: 16px;
}
.ts-v50b2-category-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap: 18px;
    padding: 16px;
    border-radius: 22px;
    background:#f6fbfe;
    border:1px solid rgba(35,187,231,.16);
}
.ts-v50b2-category-head h3 { margin:4px 0 6px; color:#093440; }
.ts-v50b2-category-head p { margin:0; color:rgba(9,52,64,.7); line-height:1.55; }
.ts-v50b2-category-limit {
    min-width: 120px;
    text-align:center;
    border-radius: 20px;
    background:#fff;
    border:1px solid rgba(35,187,231,.18);
    padding: 13px;
    box-shadow: 0 12px 30px rgba(9,52,64,.07);
}
.ts-v50b2-category-limit strong { display:block; color:#23bbe7; font-size:2rem; line-height:1; }
.ts-v50b2-category-limit span { display:block; margin-top:5px; color:rgba(9,52,64,.62); font-weight:900; font-size:.75rem; text-transform:uppercase; letter-spacing:.06em; }
.ts-v50b2-main-cats {
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.ts-v50b2-main-cat {
    cursor:pointer;
    border:1px solid rgba(35,187,231,.18);
    border-radius: 18px;
    background:#fff;
    padding: 13px;
    transition: .18s ease;
}
.ts-v50b2-main-cat input { position:absolute; opacity:0; pointer-events:none; }
.ts-v50b2-main-cat strong,
.ts-v50b2-main-cat span { display:block; }
.ts-v50b2-main-cat strong { color:#093440; }
.ts-v50b2-main-cat span { margin-top:4px; color:rgba(9,52,64,.58); font-weight:800; font-size:.82rem; }
.ts-v50b2-main-cat.is-selected,
.ts-v50b2-main-cat:hover {
    border-color: rgba(35,187,231,.58);
    box-shadow: 0 14px 34px rgba(35,187,231,.12);
    transform: translateY(-1px);
}
.ts-v50b2-subcat-panel { display:none; }
.ts-v50b2-subcat-panel.is-active { display:block; }
.ts-v50b2-subcat-grid {
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.ts-v50b2-subcat-choice {
    display:flex;
    flex-direction:column;
    gap: 10px;
    min-height: 104px;
    cursor:pointer;
    border:1px solid rgba(35,187,231,.16);
    border-radius: 18px;
    background:#fff;
    padding: 13px;
}
.ts-v50b2-subcat-choice:has(input[type="checkbox"]:checked) {
    border-color: rgba(35,187,231,.65);
    background: rgba(35,187,231,.08);
}
.ts-v50b2-subcat-choice input[type="checkbox"] { width: 18px; height: 18px; }
.ts-v50b2-subcat-choice span { color:#093440; font-weight:900; }
.ts-v50b2-subcat-choice em {
    display:flex;
    align-items:center;
    gap: 6px;
    margin-top:auto;
    font-style:normal;
    color:rgba(9,52,64,.64);
    font-weight:800;
    font-size:.82rem;
}
.ts-v50b2-category-note {
    margin:0;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(35,187,231,.10);
    color:#13677f;
    font-weight: 800;
}
@media (max-width: 1100px) {
    .ts-v50b2-main-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ts-v50b2-subcat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ts-v50b2-package-explain { grid-template-columns: 1fr; }
    .ts-v50b2-aside { position: static; }
}
@media (max-width: 720px) {
    .ts-v50b2-category-head { flex-direction:column; }
    .ts-v50b2-category-limit { width: 100%; }
    .ts-v50b2-main-cats,
    .ts-v50b2-subcat-grid { grid-template-columns: 1fr; }
    .ts-v50b2-card-top,
    .ts-v50b2-card-meta,
    .ts-v50b2-card-bottom { align-items:flex-start; flex-direction:column; }
}

/* TuSpot EU v5.0 beta.3 — Location & Map beta fix */
.ts-add-place-form--v50b3 .ts-v39-form-section-head p { max-width: 820px; }
.ts-v50b3-location-builder {
    border: 1px solid rgba(35,187,231,.18);
    border-radius: 28px;
    background: linear-gradient(180deg, #f6fbfe 0%, #ffffff 100%);
    padding: 20px;
    box-shadow: 0 18px 45px rgba(9,52,64,.07);
}
.ts-v50b3-location-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}
.ts-v50b3-location-head h3 { margin: 5px 0 7px; color: #093440; font-size: 1.15rem; }
.ts-v50b3-location-head p { margin: 0; color: rgba(9,52,64,.72); line-height: 1.55; }
.ts-v50b3-location-badge {
    min-width: 132px;
    border-radius: 22px;
    padding: 16px;
    text-align: center;
    background: #ffffff;
    border: 1px solid rgba(35,187,231,.2);
    box-shadow: 0 12px 28px rgba(9,52,64,.06);
}
.ts-v50b3-location-badge strong { display:block; color:#23bbe7; font-size:2rem; line-height:1; }
.ts-v50b3-location-badge span { display:block; margin-top:5px; color:rgba(9,52,64,.62); font-weight:900; font-size:.75rem; text-transform:uppercase; letter-spacing:.06em; }
.ts-v50b3-address-grid { margin-bottom: 14px; }
.ts-v50b3-address-grid select,
.ts-v50b3-address-grid input { width: 100%; }
.ts-v50b3-map-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 10px 0 14px;
}
.ts-v50b3-map-actions span {
    flex: 1 1 260px;
    min-width: 220px;
    color: rgba(9,52,64,.68);
    font-weight: 800;
    line-height: 1.45;
    background: rgba(35,187,231,.08);
    border: 1px solid rgba(35,187,231,.14);
    border-radius: 16px;
    padding: 11px 12px;
}
.ts-v50b3-map-actions span[data-status-type="success"] { background: rgba(35,187,231,.12); color:#093440; }
.ts-v50b3-map-actions span[data-status-type="error"] { background: rgba(255,108,92,.1); color:#a33428; border-color: rgba(255,108,92,.2); }
.ts-v50b3-map-actions span[data-status-type="warning"] { background: rgba(255,192,86,.14); color:#805000; border-color: rgba(255,192,86,.25); }
.ts-v50b3-map-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 240px;
    gap: 14px;
    align-items: stretch;
}
.ts-v50b3-map {
    min-height: 360px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(9,52,64,.1);
    background: #dff4fb;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.75);
}
.ts-v50b3-map .leaflet-control-attribution { font-size: 10px; }
.ts-v50b3-coords-card {
    border-radius: 24px;
    border: 1px solid rgba(35,187,231,.16);
    background: #ffffff;
    padding: 18px;
    box-shadow: 0 12px 28px rgba(9,52,64,.06);
}
.ts-v50b3-coords-card strong,
.ts-v50b3-coords-card span { display: block; }
.ts-v50b3-coords-card strong { color:#093440; font-size: .98rem; }
.ts-v50b3-coords-card span { margin-top: 8px; color: rgba(9,52,64,.68); line-height: 1.45; font-weight: 800; overflow-wrap: anywhere; }
.ts-v50b3-location-note {
    margin: 14px 0 0;
    padding: 12px 14px;
    border-radius: 18px;
    background: rgba(9,52,64,.04);
    color: rgba(9,52,64,.7);
    font-weight: 800;
    line-height: 1.45;
}
.ts-v50b3-aside .ts-v39-package-help p { color: rgba(9,52,64,.7); line-height: 1.5; }
@media (max-width: 980px) {
    .ts-v50b3-location-head { flex-direction: column; }
    .ts-v50b3-location-badge { width: 100%; }
    .ts-v50b3-map-wrap { grid-template-columns: 1fr; }
    .ts-v50b3-map { min-height: 320px; }
}
@media (max-width: 640px) {
    .ts-v50b3-location-builder { padding: 14px; border-radius: 22px; }
    .ts-v50b3-map-actions { align-items: stretch; flex-direction: column; }
    .ts-v50b3-map-actions .ts-btn { width: 100%; justify-content: center; }
    .ts-v50b3-map-actions span { width: 100%; min-width: 0; }
    .ts-v50b3-map { min-height: 280px; border-radius: 18px; }
}


/* TuSpot EU v5.0 beta.4 — Add Place taxonomy, purpose, seasonality and region UX polish */
.ts-add-place-form--v50b4 .ts-owner-flow-steps--v50b4 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.ts-add-place-form--v50b4 .ts-v50b4-package-section { background: linear-gradient(180deg, #f7fcff 0%, #fff 100%); }
.ts-v50b4-package-stack {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 0 0 18px;
}
.ts-v50b4-package-stack article {
    display: grid;
    grid-template-columns: 96px minmax(110px, 160px) minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 22px;
    border: 1px solid rgba(35,187,231,.18);
    background: #fff;
    box-shadow: 0 12px 30px rgba(9,52,64,.055);
}
.ts-v50b4-package-stack b {
    color: #23bbe7;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: .78rem;
    font-weight: 950;
}
.ts-v50b4-package-stack strong { color:#093440; font-weight:950; font-size:1.05rem; }
.ts-v50b4-package-stack span { color:rgba(9,52,64,.72); font-weight:800; line-height:1.45; }
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 > label {
    display: block;
    margin: 16px 0 10px;
    color: #093440;
    font-size: 1rem;
    font-weight: 950;
    letter-spacing: -.01em;
}
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-selector {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    grid-template-areas: "label headline price" "label copy price";
    align-items: center;
    gap: 5px 16px;
    min-height: 96px;
    padding: 22px 24px;
    border-radius: 28px;
    background: linear-gradient(135deg, #fff 0%, #f6fcff 100%);
}
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice span { grid-area: label; font-size:.82rem; }
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice strong { grid-area: headline; font-size:1.55rem; line-height:1.05; letter-spacing:-.04em; }
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice em { grid-area: price; font-size:1.1rem; white-space:nowrap; }
.ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice small { grid-area: copy; font-size:.9rem; max-width:620px; }
.ts-v50b4-category-builder .ts-v50b2-subcat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ts-v50b4-limited-builder {
    border: 1px solid rgba(35,187,231,.18);
    border-radius: 28px;
    padding: 20px;
    background: linear-gradient(180deg, #f6fbfe 0%, #fff 100%);
    box-shadow: 0 18px 45px rgba(9,52,64,.06);
}
.ts-v50b4-limited-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:16px;
}
.ts-v50b4-limited-head h3 { margin:5px 0 7px; color:#093440; font-size:1.18rem; }
.ts-v50b4-limited-head p { margin:0; color:rgba(9,52,64,.72); font-weight:750; line-height:1.55; }
.ts-v50b4-limited-badge {
    min-width:128px;
    text-align:center;
    border-radius:22px;
    padding:15px;
    background:#fff;
    border:1px solid rgba(35,187,231,.2);
    box-shadow:0 12px 28px rgba(9,52,64,.06);
}
.ts-v50b4-limited-badge strong { display:block; color:#23bbe7; font-size:2rem; line-height:1; }
.ts-v50b4-limited-badge span { display:block; margin-top:5px; color:rgba(9,52,64,.62); font-weight:900; font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.ts-v50b4-choice-grid {
    display:grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap:12px;
}
.ts-v50b4-choice-card {
    position:relative;
    display:grid;
    gap:6px;
    padding:16px 16px 14px;
    border-radius:20px;
    border:1px solid rgba(9,52,64,.1);
    background:#fff;
    cursor:pointer;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ts-v50b4-choice-card:hover,
.ts-v50b4-choice-card:has(input[type="checkbox"]:checked) {
    transform: translateY(-1px);
    border-color: rgba(35,187,231,.6);
    box-shadow: 0 14px 34px rgba(9,52,64,.09);
}
.ts-v50b4-choice-card input[type="checkbox"] { position:absolute; top:14px; right:14px; }
.ts-v50b4-choice-card span { color:#093440; font-weight:950; padding-right:28px; }
.ts-v50b4-choice-card small { color:rgba(9,52,64,.68); font-weight:760; line-height:1.4; }
.ts-v50b4-choice-card em { margin-top:4px; color:#13677f; font-style:normal; font-weight:900; font-size:.82rem; }
.ts-v50b4-choice-card em input { margin-right:5px; }
.ts-v50b4-limited-note {
    margin:14px 0 0;
    padding:12px 14px;
    border-radius:16px;
    background:rgba(35,187,231,.10);
    color:#13677f;
    font-weight:850;
}
.ts-v50b4-region-field select,
.ts-v50b4-region-field input { width:100%; }
.ts-v50b4-region-field input[data-region-custom] { margin-top:8px; }
.ts-v50b4-card-tags {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:12px 0 0;
}
.ts-v50b4-card-tags span {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    background:rgba(35,187,231,.12);
    color:#13677f;
    padding:7px 10px;
    font-size:.76rem;
    font-weight:950;
}
.ts-v50b4-checklist-card .ts-owner-mini-checklist { grid-template-columns:1fr !important; }
.ts-v50b4-checklist-card .ts-owner-mini-checklist article {
    border:1px solid rgba(35,187,231,.14);
    background:#fff;
    border-radius:16px;
    padding:12px 14px;
}
@media (max-width: 1100px) {
    .ts-v50b4-category-builder .ts-v50b2-subcat-grid,
    .ts-v50b4-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .ts-add-place-form--v50b4 .ts-owner-flow-steps--v50b4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ts-v50b4-package-stack article,
    .ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice {
        grid-template-columns: 1fr;
        grid-template-areas: none;
    }
    .ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice span,
    .ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice strong,
    .ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice em,
    .ts-add-place-form--v50b4 .ts-owner-package-field--v50b4 .tuspot-owner-package-choice small { grid-area:auto; }
    .ts-v50b4-limited-head { flex-direction:column; }
    .ts-v50b4-limited-badge { width:100%; }
    .ts-v50b4-category-builder .ts-v50b2-subcat-grid,
    .ts-v50b4-choice-grid { grid-template-columns: 1fr; }
}

/* v5.0 beta.5 — Transport & Amenities UX */
.ts-add-place-form--v50b5 .ts-v50b5-package-stack article{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px 14px;padding:18px 20px;border:1px solid rgba(35,187,231,.26);border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(9,52,64,.07)}
.ts-add-place-form--v50b5 .ts-v50b5-package-stack article b{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ts-accent,#23bbe7)}
.ts-add-place-form--v50b5 .ts-v50b5-package-stack article strong{font-size:1.1rem;color:var(--ts-primary,#0B2B4C);white-space:nowrap}
.ts-add-place-form--v50b5 .ts-v50b5-package-stack article span{grid-column:1/-1;color:#526879;font-weight:650;line-height:1.45}
.ts-v50b5-builder-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.ts-v50b5-builder-head h3{margin:.15rem 0 .35rem;color:var(--ts-primary,#0B2B4C);font-size:1.35rem}.ts-v50b5-builder-head p{margin:0;color:#526879;line-height:1.55}.ts-v50b5-limit-badge,.ts-v50b5-builder-head .ts-btn{flex:0 0 auto}.ts-v50b5-limit-badge{min-width:104px;text-align:center;background:#eaf8fe;border:1px solid rgba(35,187,231,.25);border-radius:20px;padding:14px}.ts-v50b5-limit-badge strong{display:block;font-size:1.8rem;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-limit-badge span{font-size:.78rem;font-weight:800;color:#526879;text-transform:uppercase;letter-spacing:.07em}
.ts-v50b5-transport-status{padding:12px 14px;background:#f6fbfe;border:1px solid rgba(35,187,231,.2);border-radius:16px;color:#526879;font-weight:700;margin-bottom:16px}.ts-v50b5-transport-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ts-v50b5-transport-card{border:1px solid rgba(9,52,64,.12);border-radius:20px;padding:16px;background:#fff}.ts-v50b5-card-title{display:flex;align-items:center;gap:10px;color:var(--ts-primary,#0B2B4C);font-weight:900}.ts-v50b5-transport-card p{margin:.45rem 0 .75rem;color:#526879;line-height:1.45}.ts-v50b5-options{display:grid;gap:8px}.ts-v50b5-options>span,.ts-v50b5-muted{display:block;color:#6f8492;font-weight:650;background:#f6fbfe;border-radius:14px;padding:11px 12px}.ts-v50b5-check-option,.ts-v50b5-amenity-option{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid rgba(35,187,231,.22);border-radius:16px;background:#fff;cursor:pointer}.ts-v50b5-check-option input,.ts-v50b5-amenity-option input{margin-top:3px}.ts-v50b5-check-option strong{display:block;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-check-option small{display:block;color:#647988;line-height:1.35}.ts-v50b5-amenity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ts-v50b5-amenity-option{align-items:center;font-weight:800;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-amenity-option:has(input:checked),.ts-v50b5-check-option:has(input:checked){border-color:var(--ts-accent,#23bbe7);box-shadow:0 12px 28px rgba(35,187,231,.14);background:#f6fbfe}.ts-v50b5-limited-note{margin:12px 0 0;color:#526879;font-weight:750}.ts-v50b5-card-icons{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.ts-v50b5-card-icons span{background:#eaf8fe;border:1px solid rgba(35,187,231,.22);border-radius:999px;padding:7px 10px;font-weight:850;color:var(--ts-primary,#0B2B4C);font-size:.83rem}.ts-line-icon{width:20px;height:20px;flex:0 0 20px;color:var(--ts-accent,#23bbe7)}
.ts-v50b5-front-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.ts-v50b5-front-item{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid rgba(35,187,231,.22);border-radius:20px;background:#f6fbfe}.ts-v50b5-front-item strong{display:block;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-front-item span{display:block;color:#526879;line-height:1.4}.ts-v50b5-amenity-front-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.ts-v50b5-amenity-chip{display:flex;align-items:center;gap:9px;border:1px solid rgba(35,187,231,.22);background:#fff;border-radius:18px;padding:12px 14px;color:var(--ts-primary,#0B2B4C);font-weight:850}.ts-v50b5-sidebar-card .ts-v50b5-side-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.ts-v50b5-side-stats span{display:grid;gap:4px;place-items:center;background:#f6fbfe;border:1px solid rgba(35,187,231,.22);border-radius:18px;padding:14px}.ts-v50b5-side-stats strong{font-size:1.7rem;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-side-stats em{font-style:normal;color:#526879;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ts-v50b5-card-amenities{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.ts-v50b5-card-amenities span{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(35,187,231,.2);background:#f6fbfe;border-radius:999px;padding:6px 8px;font-size:.78rem;font-weight:800;color:var(--ts-primary,#0B2B4C)}.ts-v50b5-card-amenities .ts-line-icon{width:15px;height:15px;flex-basis:15px}
@media (max-width: 980px){.ts-v50b5-builder-head{display:grid}.ts-v50b5-transport-grid,.ts-v50b5-amenity-grid,.ts-v50b5-front-grid,.ts-v50b5-amenity-front-grid{grid-template-columns:1fr}.ts-add-place-form--v50b5 .ts-v50b5-package-stack article{grid-template-columns:1fr}.ts-add-place-form--v50b5 .ts-v50b5-package-stack article strong{white-space:normal}}

/* v5.0 beta.6 — Add Place Wizard, Media, Contact & Booking Gates */
.ts-add-place-form--v50b6 .ts-v50b6-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 26px}.ts-v50b6-progress button{border:1px solid rgba(35,187,231,.25);background:#fff;border-radius:18px;padding:13px 14px;color:#526879;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(9,52,64,.05)}.ts-v50b6-progress button.is-active{background:#093440;color:#fff;border-color:#093440}.ts-v50b6-wizard-form{display:block}.ts-v50b6-step-panel{display:none;grid-column:1/-1}.ts-v50b6-step-panel.is-active{display:grid;gap:18px}.ts-v50b6-step-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.ts-v50b6-package-stack{display:grid!important;grid-template-columns:1fr!important;gap:12px;margin-bottom:18px}.ts-add-place-form--v50b6 .ts-v50b6-package-stack article{grid-template-columns:120px 150px 1fr!important;padding:22px 24px}.ts-add-place-form--v50b6 .ts-v50b6-package-stack article span{grid-column:auto!important}.ts-v50b6-package-section .ts-owner-package-field .tuspot-owner-package-grid,.ts-v50b6-package-section .ts-owner-package-field .tuspot-owner-package-options{display:grid!important;grid-template-columns:1fr!important;gap:12px}.ts-v50b6-package-section .ts-owner-package-field .tuspot-owner-package-choice{min-height:unset!important;padding:20px!important;border-radius:22px!important}.ts-v50b6-location-builder [data-postal-hint],.ts-v50b6-gated-note,.ts-v50b6-upload-card small{display:block;margin-top:7px;color:#647988;font-weight:750;font-size:.85rem}.ts-v50b6-manual-transport{margin-top:10px;padding-top:10px;border-top:1px dashed rgba(35,187,231,.28)}.ts-link-button{border:0;background:transparent;color:#13677f;font-weight:950;text-decoration:underline;cursor:pointer;padding:0}.ts-v50b6-manual-fields{display:grid;gap:8px;margin-top:10px}.ts-v50b6-manual-fields[hidden]{display:none}.ts-v50b6-manual-fields input{width:100%;border:1px solid rgba(9,52,64,.13);border-radius:14px;padding:11px 12px}.ts-v50b6-photo-note{padding:18px;border-radius:22px;background:#f6fbfe;border:1px solid rgba(35,187,231,.2);margin-bottom:18px}.ts-v50b6-photo-note h3{margin:.2rem 0 .5rem;color:#093440}.ts-v50b6-photo-note p{margin:.45rem 0;color:#526879;line-height:1.55}.ts-v50b6-upload-card{display:grid;gap:8px;padding:18px;border:1px solid rgba(35,187,231,.22);border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(9,52,64,.05)}.ts-v50b6-upload-card strong{color:#093440;font-size:1.02rem}.ts-v50b6-upload-card span{color:#526879;line-height:1.45}.ts-upload-drop{display:flex;align-items:center;justify-content:center;min-height:72px;border:1px dashed rgba(35,187,231,.55);border-radius:18px;background:#f6fbfe;color:#13677f;font-weight:950;cursor:pointer}.ts-upload-drop input{display:block;margin-top:8px;max-width:100%;font-size:.82rem}.ts-v50b6-video-row,.ts-v50b6-socials,.ts-v50b6-booking-links{margin-top:18px;padding:18px;border:1px solid rgba(35,187,231,.2);border-radius:22px;background:#fff}.ts-v50b6-subhead h3{margin:.15rem 0 .35rem;color:#093440}.ts-v50b6-subhead p{margin:0 0 14px;color:#526879}.ts-v50b6-check{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid rgba(35,187,231,.2);border-radius:16px;background:#fff;font-weight:850;color:#093440}.ts-add-place-form--v50b6 [data-package-gated].is-locked,.ts-add-place-form--v50b6 [data-pro-only].is-locked{opacity:.48;filter:grayscale(.2);position:relative}.ts-add-place-form--v50b6 [data-package-gated].is-locked:after{content:'Available from Active or Pro';display:block;margin-top:8px;color:#13677f;font-weight:900}.ts-add-place-form--v50b6 [data-pro-only].is-locked:after{content:'Pro only';display:block;margin-top:6px;color:#13677f;font-weight:900}.ts-v50b6-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.ts-v50b6-contact-grid span,.ts-v50b6-logo-row,.ts-v50b6-login-note{display:block;padding:14px;border:1px solid rgba(35,187,231,.2);border-radius:18px;background:#f6fbfe;color:#526879;font-weight:750}.ts-v50b6-contact-grid strong{display:block;color:#093440;margin-bottom:4px}.ts-v50b6-logo-row{display:flex;align-items:center;gap:12px}.ts-v50b6-logo-row img,.ts-v50b6-sidebar-logo{width:58px;height:58px;object-fit:cover;border-radius:18px;border:1px solid rgba(35,187,231,.22);background:#fff}.ts-v50b6-social-front,.ts-v50b6-booking-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.ts-v50b6-social-front a{display:inline-flex;border:1px solid rgba(35,187,231,.24);border-radius:999px;padding:9px 12px;color:#093440;background:#fff;font-weight:900;text-decoration:none}.ts-v50b6-sidebar-contact{text-align:left}.ts-v50b6-sidebar-logo{display:block;margin:12px 0}.ts-v50b6-card-logo{position:absolute;right:12px;bottom:12px;width:48px;height:48px;border-radius:16px;background:#fff;border:1px solid rgba(35,187,231,.2);box-shadow:0 12px 24px rgba(9,52,64,.16);display:grid;place-items:center;overflow:hidden}.ts-v50b6-card-logo img{width:100%;height:100%;object-fit:cover}.ts-place-media{position:relative}.ts-v50b6-aside{position:sticky;top:112px;align-self:start}
@media (max-width: 1100px){.ts-add-place-form--v50b6 .ts-v50b6-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-add-place-form--v50b6 .ts-v50b6-package-stack article{grid-template-columns:1fr!important}.ts-v50b6-contact-grid{grid-template-columns:1fr}.ts-v50b6-aside{position:static}}
@media (max-width: 720px){.ts-add-place-form--v50b6 .ts-v50b6-progress{grid-template-columns:1fr}.ts-v50b6-step-actions{display:grid}.ts-v50b6-logo-row{align-items:flex-start}.ts-v50b6-photo-note,.ts-v50b6-upload-card{padding:15px}.ts-v50b6-manual-fields{grid-template-columns:1fr}}

/* TuSpot EU v5.0 beta.7: final confirmation, hours, menu and room/unit builders */
.ts-add-place-form--v50b7 .ts-v50b7-section-note {
  padding: 18px;
  border: 1px solid rgba(35, 187, 231, .22);
  background: linear-gradient(135deg, #f6fbfe, #ffffff);
  border-radius: 22px;
  margin-bottom: 18px;
}
.ts-add-place-form--v50b7 .ts-v50b7-section-note h3 { margin: 6px 0 8px; color: #062b3a; font-size: 1.24rem; }
.ts-add-place-form--v50b7 .ts-v50b7-section-note p { margin: 0; color: #456274; line-height: 1.55; }
.ts-v50b7-hours-list { display: grid; gap: 12px; }
.ts-v50b7-day-row { display: grid; grid-template-columns: 130px 1fr 1fr; gap: 12px; align-items: end; padding: 14px; border: 1px solid #d9eaf1; border-radius: 18px; background: #fff; }
.ts-v50b7-day-row strong { color: #093440; align-self: center; }
.ts-v50b7-day-row label { display: grid; gap: 6px; color: #476171; font-weight: 700; font-size: .88rem; }
.ts-v50b7-day-row select, .ts-v50b7-day-row input { width: 100%; border: 1px solid #d9eaf1; border-radius: 12px; padding: 10px 12px; background: #f8fdff; }
.ts-v50b7-day-modes { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px 16px; }
.ts-v50b7-day-modes label { display: inline-flex; align-items: center; gap: 7px; font-weight: 800; color: #123a4a; }
.ts-v50b7-status-card { display: grid; gap: 6px; padding: 16px; border-radius: 18px; background: #eef8fc; color: #093440; border: 1px solid rgba(35, 187, 231, .25); margin-bottom: 14px; }
.ts-v50b7-code-box { display: grid; gap: 8px; padding: 14px; border-radius: 16px; background: #082f3d; color: #fff; overflow: auto; }
.ts-v50b7-code-box code { color: #e7fbff; white-space: pre-wrap; font-size: .85rem; }
.ts-v50b7-muted, .ts-v50b7-backlink-builder .ts-v50b7-muted { color: #60798a; margin: 10px 0 0; }
.ts-v50b7-conditional.is-hidden, .ts-v50b7-conditional-wrap.is-hidden { display: none !important; }
.ts-v50b7-menu-inputs { margin-bottom: 12px; }
.ts-v50b7-menu-board { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 16px; }
.ts-v50b7-menu-board article { border: 1px solid #d9eaf1; background: #fff; border-radius: 18px; padding: 14px; min-height: 92px; }
.ts-v50b7-menu-board article > strong { display: block; color: #093440; margin-bottom: 8px; }
.ts-v50b7-menu-board article > span { color: #78909d; font-size: .9rem; }
.ts-v50b7-menu-row { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 10px; align-items: center; padding: 9px 0; border-top: 1px solid #eef5f8; }
.ts-v50b7-menu-row b { display: block; color: #082f3d; }
.ts-v50b7-menu-row small { display: block; color: #5f7786; }
.ts-v50b7-menu-row em { color: #093440; font-weight: 900; font-style: normal; white-space: nowrap; }
.ts-v50b7-menu-row button { width: 26px; height: 26px; border: 0; border-radius: 50%; background: #eef8fc; color: #0e5268; cursor: pointer; }
.ts-v50b7-room-list { display: grid; gap: 16px; }
.ts-v50b7-room-item { padding: 16px; border: 1px solid #d9eaf1; background: #fff; border-radius: 22px; box-shadow: 0 12px 28px rgba(9, 52, 64, .06); }
.ts-v50b7-room-top { display: grid; grid-template-columns: 240px 1fr; gap: 18px; align-items: start; }
.ts-v50b7-room-photo { min-height: 170px; display: grid; place-items: center; text-align: center; border-radius: 18px; border: 1px dashed rgba(35,187,231,.45); background: #f6fbfe; padding: 18px; }
.ts-v50b7-room-photo label { font-weight: 900; color: #093440; display: grid; gap: 10px; }
.ts-v50b7-room-photo small { color: #6d8797; }
.ts-v50b7-room-icons-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.ts-v50b7-room-feature-grid { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.ts-v50b7-room-feature-grid label { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border-radius: 999px; background: #eef8fc; color: #093440; font-weight: 800; }
.ts-v50b7-confirmation-builder { border: 1px solid rgba(35,187,231,.35); background: #f6fbfe; border-radius: 24px; padding: 18px; }
.ts-v50b7-confirmation-check { display: flex; gap: 12px; align-items: flex-start; padding: 16px; background: #fff; border-radius: 18px; border: 1px solid #d9eaf1; color: #093440; font-weight: 800; line-height: 1.55; }
.ts-v50b7-confirmation-check input { margin-top: 5px; min-width: 18px; min-height: 18px; }
.ts-v50b7-hours-front { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.ts-v50b7-hours-front div { display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; border: 1px solid #d9eaf1; border-radius: 16px; background: #f8fdff; }
.ts-v50b7-hours-front strong { color: #093440; }
.ts-v50b7-hours-front span { color: #486575; font-weight: 800; }
.ts-v50b7-menu-front-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.ts-v50b7-menu-front-grid article { padding: 16px; border: 1px solid #d9eaf1; border-radius: 20px; background: #fff; }
.ts-v50b7-menu-front-grid h3 { margin: 0 0 10px; color: #093440; }
.ts-v50b7-menu-line { display: flex; justify-content: space-between; gap: 16px; padding: 11px 0; border-top: 1px solid #eef5f8; }
.ts-v50b7-menu-line strong { color: #082f3d; }
.ts-v50b7-menu-line span { display: block; margin-top: 3px; color: #5c7483; }
.ts-v50b7-menu-line em { font-style: normal; font-weight: 900; color: #093440; white-space: nowrap; }
.ts-v50b7-room-accordion { display: grid; gap: 14px; }
.ts-v50b7-room-accordion details { border: 1px solid #d9eaf1; border-radius: 20px; background: #fff; overflow: hidden; }
.ts-v50b7-room-accordion summary { cursor: pointer; padding: 16px 18px; font-weight: 900; color: #093440; display: flex; justify-content: space-between; gap: 14px; }
.ts-v50b7-room-accordion summary span { color: #13677f; }
.ts-v50b7-room-front-body { padding: 0 18px 18px; display: grid; grid-template-columns: 220px 1fr; gap: 18px; }
.ts-v50b7-room-front-image { min-height: 150px; border-radius: 18px; overflow: hidden; background: #eef8fc; display: grid; place-items: center; color: #78909d; }
.ts-v50b7-room-front-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ts-v50b7-room-front-info h3 { margin: 0 0 10px; color: #093440; }
.ts-v50b7-room-icons { display: flex; flex-wrap: wrap; gap: 8px; }
.ts-v50b7-room-icons span { display: inline-grid; grid-template-columns: 18px auto; gap: 5px 7px; align-items: center; padding: 8px 10px; background: #f6fbfe; border: 1px solid #d9eaf1; border-radius: 14px; color: #405b6a; }
.ts-v50b7-room-icons svg { width: 16px; height: 16px; }
.ts-v50b7-room-icons strong { color: #093440; }
.ts-v50b7-room-description { grid-column: 1 / -1; margin: 0; color: #4f6b7b; line-height: 1.6; }
.ts-v50b7-sidebar-backlink a { color: #13677f; font-weight: 900; }
@media (max-width: 820px) {
  .ts-v50b7-day-row, .ts-v50b7-room-top, .ts-v50b7-room-front-body { grid-template-columns: 1fr; }
  .ts-v50b7-menu-board, .ts-v50b7-menu-front-grid, .ts-v50b7-hours-front { grid-template-columns: 1fr; }
  .ts-v50b7-room-icons-grid { grid-template-columns: 1fr; }
  .ts-v50b7-hours-front div, .ts-v50b7-menu-line, .ts-v50b7-room-accordion summary { flex-direction: column; align-items: flex-start; }
}


/* TuSpot EU v5.0 beta.8 — add-place essentials polish */
.ts-add-place-form--v50b8 .ts-v50b8-package-section .ts-owner-package-field{margin-top:0}
.ts-add-place-form--v50b8 .ts-v50b8-package-section .ts-owner-package-field>label{display:block;font-size:14px;font-weight:950;color:#093440;margin-bottom:12px}
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-selector,
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-grid,
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-options{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-choice{display:grid!important;grid-template-columns:110px minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;padding:24px 28px!important;border-radius:24px!important;background:linear-gradient(180deg,#fff,#f6fbfe)!important}
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-choice strong{font-size:1.7rem!important;line-height:1!important}
.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-choice small{font-size:.95rem!important;max-width:720px!important}
.ts-v50b8-public-essentials textarea{min-height:124px;resize:vertical}
.ts-v50b8-category-details{display:grid;gap:14px}
.ts-v50b8-detail-block{display:none;border:1px solid rgba(35,187,231,.22);border-radius:22px;background:#fff;padding:18px}
.ts-v50b8-detail-block.is-active{display:grid;gap:16px}
.ts-v50b8-detail-note{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:14px;border-radius:18px;background:#f6fbfe;border:1px solid rgba(35,187,231,.18)}
.ts-v50b8-detail-note strong{color:#093440;font-weight:950}
.ts-v50b8-detail-note span{color:#526879;font-weight:750;line-height:1.45;max-width:620px}
.ts-v50b2-card-meta.is-hidden{display:none!important}
.ts-v50b8-category-front .ts-info-grid div{background:#f6fbfe;border-color:rgba(35,187,231,.2)}
.ts-v50b8-overview-pills{margin-top:16px}
@media (max-width: 760px){.ts-add-place-form--v50b8 .ts-v50b8-package-section .tuspot-owner-package-choice{grid-template-columns:1fr!important}.ts-v50b8-detail-note{display:grid}.ts-v50b8-public-essentials .ts-form-grid--inner,.ts-v50b8-category-details .ts-form-grid--inner{grid-template-columns:1fr}}

/* TuSpot EU v5.0 beta.9 — Add Place wizard UX polish */
.ts-add-place-form--v50b9 .ts-v50b4-package-stack,
.ts-add-place-form--v50b9 .ts-v50b5-package-stack,
.ts-add-place-form--v50b9 .ts-v50b6-package-stack { display: none !important; }
.ts-add-place-form--v50b9 .ts-v50b8-package-section { background: linear-gradient(180deg, #f8fdff 0%, #ffffff 100%); }
.ts-add-place-form--v50b9 .ts-v50b8-package-section .tuspot-owner-package-choice { position: relative; overflow: hidden; }
.ts-add-place-form--v50b9 .ts-v50b8-package-section .tuspot-owner-package-choice:before { content: ''; position: absolute; inset: 0 auto 0 0; width: 5px; background: linear-gradient(180deg, #23bbe7, #13677f); opacity: 0; transition: opacity .2s ease; }
.ts-add-place-form--v50b9 .ts-v50b8-package-section .tuspot-owner-package-choice:has(input:checked):before,
.ts-add-place-form--v50b9 .ts-v50b8-package-section .tuspot-owner-package-choice.is-selected:before { opacity: 1; }

.ts-add-place-form--v50b9 .ts-v50b9-hours-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0 18px; padding: 14px; border: 1px solid rgba(35,187,231,.18); border-radius: 20px; background: #f8fdff; }
.ts-add-place-form--v50b9 .ts-v50b9-opening-builder .ts-v50b7-hours-list { gap: 10px; }
.ts-add-place-form--v50b9 .ts-v50b9-opening-builder .ts-v50b7-day-row,
.ts-add-place-form--v50b9 .ts-v50b7-opening-builder .ts-v50b7-day-row { grid-template-columns: 120px minmax(120px, 160px) minmax(120px, 160px) minmax(260px, 1fr); align-items: center; padding: 12px; background: linear-gradient(180deg, #fff 0%, #f8fdff 100%); border-color: rgba(35,187,231,.22); box-shadow: 0 8px 18px rgba(9,52,64,.04); }
.ts-add-place-form--v50b9 .ts-v50b7-day-row > strong { font-size: 1rem; }
.ts-add-place-form--v50b9 .ts-v50b7-day-modes { grid-column: auto; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
.ts-add-place-form--v50b9 .ts-v50b7-day-modes label { justify-content: center; padding: 9px 10px; border-radius: 999px; border: 1px solid rgba(35,187,231,.22); background: #fff; color: #174b5b; font-size: .78rem; line-height: 1.1; text-align: center; }
.ts-add-place-form--v50b9 .ts-v50b7-day-modes label:has(input:checked) { background: #093440; border-color: #093440; color: #fff; }
.ts-add-place-form--v50b9 .ts-v50b7-day-row[data-opening-mode="closed"] { background: #f6fbfe; opacity: .86; }
.ts-add-place-form--v50b9 .ts-v50b7-day-row[data-opening-mode="24h"] { border-color: rgba(35,187,231,.45); }
.ts-add-place-form--v50b9 .ts-v50b7-day-row select:disabled { background: #eef8fc; color: #8aa0ad; cursor: not-allowed; }

.ts-add-place-form--v50b9 .ts-v50b6-photo-note { border-radius: 26px; padding: 22px; background: linear-gradient(135deg, #f6fbfe 0%, #fff 100%); }
.ts-add-place-form--v50b9 .ts-v50b6-upload-card { border-radius: 26px; padding: 20px; background: linear-gradient(180deg, #fff 0%, #f8fdff 100%); }
.ts-add-place-form--v50b9 .ts-v50b6-upload-card strong { font-size: 1.08rem; }
.ts-add-place-form--v50b9 .ts-upload-drop,
.ts-add-place-form--v50b9 .ts-v50b7-room-photo label { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr); gap: 10px 14px; align-items: center; justify-content: start; min-height: 86px; padding: 16px 18px; border-radius: 22px; background: linear-gradient(135deg, #eef8fc 0%, #ffffff 100%); text-align: left; overflow: hidden; }
.ts-add-place-form--v50b9 .ts-upload-drop:before,
.ts-add-place-form--v50b9 .ts-v50b7-room-photo label:before { content: '+'; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 15px; background: #23bbe7; color: #fff; font-weight: 950; font-size: 1.4rem; box-shadow: 0 10px 22px rgba(35,187,231,.22); }
.ts-add-place-form--v50b9 .ts-upload-drop input[type="file"],
.ts-add-place-form--v50b9 .ts-v50b7-room-photo input[type="file"] { grid-column: 2; width: 100%; margin: 0; color: #5c7483; font-size: .86rem; }
.ts-add-place-form--v50b9 .ts-upload-drop input[type="file"]::file-selector-button,
.ts-add-place-form--v50b9 .ts-v50b7-room-photo input[type="file"]::file-selector-button { border: 0; border-radius: 999px; background: #093440; color: #fff; font-weight: 900; padding: 9px 13px; margin-right: 10px; cursor: pointer; }
.ts-add-place-form--v50b9 .ts-upload-drop.has-file,
.ts-add-place-form--v50b9 .ts-v50b7-room-photo label.has-file { border-color: rgba(35,187,231,.7); background: #eef8fc; }
.ts-add-place-form--v50b9 .ts-v50b9-file-name { grid-column: 2; color: #13677f; font-weight: 850; font-size: .84rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ts-add-place-form--v50b9 .ts-v50b6-upload-card small { padding-left: 2px; }
.ts-add-place-form--v50b9 .ts-v50b6-upload-card .ts-upload-drop { margin-top: 4px; }

.ts-add-place-form--v50b9 .ts-v50b9-room-eligibility-note { margin: 0 0 14px; padding: 13px 15px; border-radius: 18px; background: #eef8fc; color: #315a69; font-weight: 800; border: 1px solid rgba(35,187,231,.22); }
.ts-add-place-form--v50b9 .ts-v50b7-room-item { border-radius: 26px; background: linear-gradient(180deg, #fff 0%, #f8fdff 100%); }
.ts-add-place-form--v50b9 .ts-v50b7-room-photo { border: 0; padding: 0; background: transparent; min-height: unset; }
.ts-add-place-form--v50b9 .ts-v50b7-room-photo small { margin-top: 8px; }
.ts-add-place-form--v50b9 .ts-v50b7-room-feature-grid label { border: 1px solid rgba(35,187,231,.22); background: #fff; }

@media (max-width: 1100px) {
  .ts-add-place-form--v50b9 .ts-v50b9-opening-builder .ts-v50b7-day-row,
  .ts-add-place-form--v50b9 .ts-v50b7-opening-builder .ts-v50b7-day-row { grid-template-columns: 1fr 1fr; }
  .ts-add-place-form--v50b9 .ts-v50b7-day-row > strong,
  .ts-add-place-form--v50b9 .ts-v50b7-day-modes { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .ts-add-place-form--v50b9 .ts-v50b7-day-row { grid-template-columns: 1fr !important; }
  .ts-add-place-form--v50b9 .ts-v50b7-day-modes { grid-template-columns: 1fr; }
  .ts-add-place-form--v50b9 .ts-upload-drop,
  .ts-add-place-form--v50b9 .ts-v50b7-room-photo label { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .ts-add-place-form--v50b9 .ts-upload-drop input[type="file"],
  .ts-add-place-form--v50b9 .ts-v50b7-room-photo input[type="file"],
  .ts-add-place-form--v50b9 .ts-v50b9-file-name { grid-column: auto; }
}

/* TuSpot EU v5.0 beta.10 — Reviews and nearby planning */
.ts-v50b10-reviews,
.ts-v50b10-nearby { margin-top: 24px; overflow: hidden; }
.ts-v50b10-section-head,
.ts-v50b10-nearby-hero { padding: 4px 0 18px; }
.ts-v50b10-section-head h2,
.ts-v50b10-nearby-hero h2 { margin: .15rem 0 .45rem; color: #093440; font-size: clamp(2.15rem, 5vw, 4.5rem); line-height: .95; letter-spacing: -.05em; }
.ts-v50b10-section-head p,
.ts-v50b10-nearby-hero p { max-width: 760px; color: #526879; font-size: 1.05rem; line-height: 1.45; font-weight: 750; }
.ts-v50b10-review-summary { display: grid; grid-template-columns: minmax(220px, 300px) minmax(0, 1fr); gap: 38px; align-items: center; padding: 24px 0; border-top: 1px solid #d9eaf1; border-bottom: 1px solid #d9eaf1; }
.ts-v50b10-review-score strong { display: block; font-size: clamp(4rem, 9vw, 5.4rem); line-height: .9; color: #19232a; letter-spacing: -.06em; }
.ts-v50b10-review-score > span { display: block; margin: 8px 0 12px; color: #093440; font-weight: 950; font-size: 1.25rem; }
.ts-v50b10-review-score a { display: inline-block; margin-top: 8px; color: #13677f; font-weight: 950; text-decoration: none; }
.ts-v50b10-stars { display: inline-flex; gap: 4px; color: #d8dde6; font-size: 1.7rem; line-height: 1; }
.ts-v50b10-stars span { display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 2px; background: #d8dde6; color: #fff; }
.ts-v50b10-stars .is-filled { background: #00ba88; color: #fff; }
.ts-v50b10-stars--small { font-size: 1rem; gap: 2px; }
.ts-v50b10-stars--small span { width: 20px; height: 20px; }
.ts-v50b10-rating-bars { display: grid; gap: 12px; }
.ts-v50b10-bar-row { display: grid; grid-template-columns: 120px minmax(0, 1fr) 38px; gap: 16px; align-items: center; color: #19232a; font-weight: 900; }
.ts-v50b10-bar-row span { display: block; height: 14px; border-radius: 999px; background: #d1d7dd; overflow: hidden; }
.ts-v50b10-bar-row i { display: block; height: 100%; border-radius: 999px; background: #00ba88; }
.ts-v50b10-bar-row em { font-style: normal; color: #526879; text-align: right; }
.ts-v50b10-criteria-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 22px 0; }
.ts-v50b10-criteria-grid div { display: grid; gap: 8px; padding: 14px; border: 1px solid rgba(35,187,231,.2); border-radius: 18px; background: #f6fbfe; }
.ts-v50b10-criteria-grid strong { color: #093440; font-weight: 950; }
.ts-v50b10-criteria-grid span:last-child { color: #526879; font-weight: 800; }
.ts-v50b10-review-list { display: grid; gap: 12px; margin-bottom: 22px; }
.ts-v50b10-review-list article { padding: 18px; border: 1px solid rgba(35,187,231,.2); border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(9,52,64,.05); }
.ts-v50b10-review-list article > div:first-child { display: flex; justify-content: space-between; gap: 14px; margin-bottom: 10px; }
.ts-v50b10-review-list strong { color: #093440; font-weight: 950; }
.ts-v50b10-review-list span { color: #6a7f8d; font-weight: 800; }
.ts-v50b10-review-list p { margin: 12px 0 0; color: #4f6b7b; line-height: 1.55; }
.ts-v50b10-empty-reviews,
.ts-v50b10-review-login,
.ts-v50b10-nearby-placeholder,
.ts-v50b10-nearby-empty { display: grid; gap: 6px; padding: 18px; border: 1px solid rgba(35,187,231,.2); border-radius: 22px; background: #f6fbfe; color: #526879; font-weight: 750; }
.ts-v50b10-empty-reviews strong,
.ts-v50b10-review-login strong,
.ts-v50b10-nearby-placeholder strong { color: #093440; font-weight: 950; }
.ts-v50b10-review-login { grid-template-columns: minmax(0,1fr) auto; align-items: center; margin-top: 18px; }
.ts-v50b10-review-login strong,
.ts-v50b10-review-login span { grid-column: 1; }
.ts-v50b10-review-login a { grid-row: 1 / span 2; grid-column: 2; }
.ts-v50b10-review-form { margin-top: 24px; padding: 22px; border: 1px solid rgba(35,187,231,.24); border-radius: 26px; background: linear-gradient(180deg, #fff 0%, #f6fbfe 100%); }
.ts-v50b10-review-form-head h3 { margin: .15rem 0 .4rem; color: #093440; font-size: 1.8rem; }
.ts-v50b10-review-form-head p { margin: 0 0 18px; color: #526879; font-weight: 750; }
.ts-v50b10-review-rows { display: grid; gap: 10px; margin-bottom: 16px; }
.ts-v50b10-review-row { display: grid; grid-template-columns: 180px auto 52px; gap: 12px; align-items: center; }
.ts-v50b10-review-row strong { color: #093440; }
.ts-v50b10-review-row > span { color: #00a375; font-weight: 950; }
.ts-v50b10-rating-picker { display: inline-flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; }
.ts-v50b10-rating-picker input { position: absolute; opacity: 0; pointer-events: none; }
.ts-v50b10-rating-picker label { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 2px; background: #d8dde6; color: #fff; font-size: 1.2rem; cursor: pointer; transition: transform .15s ease, background .15s ease; }
.ts-v50b10-rating-picker label:hover,
.ts-v50b10-rating-picker label:hover ~ label,
.ts-v50b10-rating-picker input:checked ~ label { background: #00ba88; transform: translateY(-1px); }
.ts-v50b10-review-text { display: grid; gap: 8px; margin-bottom: 14px; }
.ts-v50b10-review-text span { color: #00a375; font-weight: 950; }
.ts-v50b10-review-text textarea { width: 100%; min-height: 140px; border: 1px solid #d9eaf1; border-radius: 18px; padding: 16px; font: inherit; resize: vertical; }
.ts-v50b10-review-note { color: #6b8190; font-weight: 750; margin: 10px 0 0; }

.ts-v50b10-nearby { padding: 0 !important; }
.ts-v50b10-nearby-hero { padding: 34px 34px 28px; background: linear-gradient(180deg, #f6fbfe, #eaf8fe); border-bottom: 1px solid #d9eaf1; }
.ts-v50b10-nearby-controls { padding: 22px 34px; border-bottom: 1px solid #d9eaf1; background: #fff; }
.ts-v50b10-nearby-tabs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.ts-v50b10-nearby-tabs button,
.ts-v50b10-radius-tabs button { border: 1px solid rgba(35,187,231,.32); border-radius: 999px; background: #f8fdff; color: #093440; font-weight: 950; padding: 13px 16px; cursor: pointer; }
.ts-v50b10-nearby-tabs button.is-active,
.ts-v50b10-radius-tabs button.is-active { background: #eaf8fe; border-color: #23bbe7; box-shadow: inset 0 0 0 1px rgba(35,187,231,.2); }
.ts-v50b10-radius-tabs { display: grid; grid-template-columns: 90px repeat(4, minmax(0, 1fr)); gap: 10px; padding: 10px; border: 1px solid rgba(35,187,231,.2); border-radius: 20px; background: #f6fbfe; align-items: center; }
.ts-v50b10-radius-tabs strong { padding-left: 12px; color: #093440; font-weight: 950; }
.ts-v50b10-nearby-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 24px 34px; }
.ts-v50b10-nearby-card { border: 1px solid rgba(35,187,231,.22); border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 14px 32px rgba(9,52,64,.06); }
.ts-v50b10-nearby-card[hidden] { display: none !important; }
.ts-v50b10-nearby-card a { display: grid; text-decoration: none; color: inherit; }
.ts-v50b10-nearby-image { min-height: 140px; background: linear-gradient(135deg, #eaf8fe, #bdeaf6); background-size: cover; background-position: center; position: relative; }
.ts-v50b10-nearby-image span { position: absolute; left: 12px; top: 12px; background: #fff; border: 1px solid rgba(35,187,231,.25); border-radius: 999px; padding: 7px 10px; color: #13677f; font-weight: 950; font-size: .78rem; }
.ts-v50b10-nearby-body { padding: 16px; }
.ts-v50b10-nearby-body h3 { margin: 0 0 7px; color: #093440; font-size: 1.1rem; }
.ts-v50b10-nearby-body p { margin: 0 0 10px; color: #526879; }
.ts-v50b10-nearby-body strong { color: #13677f; }
.ts-v50b10-nearby-empty { margin: 24px 34px; }
.ts-v50b10-nearby-actions { display: flex; justify-content: center; gap: 18px; padding: 28px 34px 34px; border-top: 1px solid #d9eaf1; }
.ts-v50b10-sidebar-review h3 { margin: .3rem 0 .45rem; font-size: 2.2rem; color: #093440; }
.ts-v50b10-sidebar-review p { color: #526879; font-weight: 750; }
.ts-v50b10-sidebar-review a { color: #13677f; font-weight: 950; text-decoration: none; }
@media (max-width: 1100px) { .ts-v50b10-nearby-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ts-v50b10-nearby-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ts-v50b10-criteria-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .ts-v50b10-section-head h2, .ts-v50b10-nearby-hero h2 { font-size: 2.3rem; }
  .ts-v50b10-review-summary, .ts-v50b10-review-login { grid-template-columns: 1fr; }
  .ts-v50b10-review-login a { grid-row: auto; grid-column: auto; width: fit-content; }
  .ts-v50b10-review-row { grid-template-columns: 1fr; align-items: start; padding: 12px; border: 1px solid #d9eaf1; border-radius: 18px; background: #fff; }
  .ts-v50b10-criteria-grid, .ts-v50b10-nearby-tabs, .ts-v50b10-radius-tabs, .ts-v50b10-nearby-grid { grid-template-columns: 1fr; }
  .ts-v50b10-nearby-hero, .ts-v50b10-nearby-controls, .ts-v50b10-nearby-grid, .ts-v50b10-nearby-actions { padding-left: 20px; padding-right: 20px; }
  .ts-v50b10-nearby-actions { flex-direction: column; }
}

/* TuSpot EU v5.0 beta.11 — Guest save, share and trip tools */
.ts-v50b11-action-bar { margin-top: 18px; margin-bottom: 22px; padding: 18px 20px; border: 1px solid rgba(35,187,231,.24); border-radius: 28px; background: rgba(255,255,255,.92); box-shadow: 0 18px 42px rgba(9,52,64,.07); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; align-items: center; }
.ts-v50b11-action-main { display: grid; gap: 4px; }
.ts-v50b11-action-main strong { color: #093440; font-size: 1.05rem; }
.ts-v50b11-action-buttons { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.ts-v50b11-action-note { grid-column: 1 / -1; margin: 0; padding: 10px 12px; border-radius: 16px; background: #eaf8fe; color: #13677f; font-weight: 850; }
.ts-v50b11-action-buttons .is-saved,
.ts-v50b11-sidebar-actions .is-saved { background: #093440 !important; color: #fff !important; border-color: #093440 !important; }
.ts-v50b11-plan { margin-top: 24px; }
.ts-v50b11-plan-head h2 { margin: .15rem 0 .45rem; color: #093440; font-size: clamp(2rem, 4.2vw, 3.8rem); line-height: .98; letter-spacing: -.05em; }
.ts-v50b11-plan-head p { max-width: 760px; color: #526879; font-weight: 750; line-height: 1.5; }
.ts-v50b11-plan-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin: 22px 0; }
.ts-v50b11-plan-grid article { padding: 16px; border: 1px solid rgba(35,187,231,.22); border-radius: 22px; background: linear-gradient(180deg, #fff, #f6fbfe); }
.ts-v50b11-plan-grid span { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-bottom: 12px; border-radius: 14px; background: #eaf8fe; color: #13677f; font-weight: 950; }
.ts-v50b11-plan-grid strong { display: block; color: #093440; font-size: 1.05rem; margin-bottom: 6px; }
.ts-v50b11-plan-grid p { margin: 0; color: #526879; line-height: 1.45; font-weight: 730; }
.ts-v50b11-plan-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.ts-v50b11-sidebar-tools h3 { color: #093440; margin: .2rem 0 .45rem; font-size: 1.35rem; }
.ts-v50b11-sidebar-tools p { color: #526879; font-weight: 750; }
.ts-v50b11-sidebar-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 14px 0; }
.ts-v50b11-sidebar-actions button { border: 1px solid rgba(35,187,231,.28); border-radius: 999px; background: #f6fbfe; color: #093440; padding: 11px 14px; font-weight: 950; cursor: pointer; }
.ts-v50b11-sidebar-tools a { color: #13677f; font-weight: 950; text-decoration: none; }
.ts-v50b11-trip-board { width: var(--ts-container); max-width: calc(100vw - 48px); margin: 42px auto; display: grid; gap: 18px; }
.ts-v50b11-trip-board-hero { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 22px; align-items: center; }
.ts-v50b11-trip-board-hero h2 { margin: .15rem 0 .45rem; color: #093440; font-size: clamp(2.3rem, 5vw, 4.6rem); line-height: .95; letter-spacing: -.055em; }
.ts-v50b11-trip-board-hero p { max-width: 760px; color: #526879; font-weight: 760; line-height: 1.5; }
.ts-v50b11-trip-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.ts-v50b11-trip-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; background: linear-gradient(180deg,#fff,#f6fbfe); }
.ts-v50b11-trip-summary strong { color: #093440; font-size: 1.3rem; }
.ts-v50b11-trip-summary span { color: #526879; font-weight: 750; }
.ts-v50b11-trip-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.ts-v50b11-trip-card { overflow: hidden; padding: 0 !important; }
.ts-v50b11-trip-card-media { min-height: 170px; background: linear-gradient(135deg,#eaf8fe,#bdeaf6); background-position: center; background-size: cover; position: relative; }
.ts-v50b11-trip-card-media span { position: absolute; left: 14px; top: 14px; background: #fff; border: 1px solid rgba(35,187,231,.25); border-radius: 999px; padding: 7px 10px; color: #13677f; font-weight: 950; font-size: .8rem; }
.ts-v50b11-trip-card-body { padding: 18px; display: grid; gap: 8px; }
.ts-v50b11-trip-card-body h3 { margin: 0; color: #093440; }
.ts-v50b11-trip-card-body p { margin: 0; color: #526879; }
.ts-v50b11-trip-card-body strong { color: #13677f; }
.ts-v50b11-trip-card-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.ts-v50b11-trip-card-actions a,
.ts-v50b11-trip-card-actions button { border: 1px solid rgba(35,187,231,.28); border-radius: 999px; background: #f6fbfe; color: #093440; padding: 9px 12px; font-weight: 900; text-decoration: none; cursor: pointer; }
.ts-v50b11-trip-empty { text-align: center; min-height: 220px; display: grid; place-items: center; align-content: center; }
.ts-v50b11-trip-empty span { font-size: 2.4rem; color: #23bbe7; }
.ts-v50b11-trip-empty h3 { color: #093440; margin: 0; }
.ts-v50b11-trip-empty p { color: #526879; max-width: 420px; margin: 0 auto; }
.ts-v50b11-compare { overflow: hidden; }
.ts-v50b11-compare-head h3 { margin: .2rem 0 1rem; color: #093440; font-size: 1.6rem; }
.ts-v50b11-compare-table { display: grid; gap: 8px; }
.ts-v50b11-compare-row { display: grid; grid-template-columns: 160px repeat(3, minmax(0,1fr)); gap: 8px; align-items: stretch; }
.ts-v50b11-compare-row > * { padding: 12px; border-radius: 16px; background: #f6fbfe; color: #093440; font-weight: 850; }
.ts-v50b11-compare-row b { background: #eaf8fe; color: #13677f; }
@media (max-width: 1100px) { .ts-v50b11-plan-grid, .ts-v50b11-trip-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } .ts-v50b11-action-bar, .ts-v50b11-trip-board-hero { grid-template-columns: 1fr; } .ts-v50b11-action-buttons, .ts-v50b11-trip-actions { justify-content: flex-start; } }
@media (max-width: 760px) { .ts-v50b11-action-bar { max-width: calc(100vw - 28px); } .ts-v50b11-action-buttons, .ts-v50b11-plan-actions { display: grid; grid-template-columns: 1fr; } .ts-v50b11-plan-grid, .ts-v50b11-trip-grid { grid-template-columns: 1fr; } .ts-v50b11-trip-board { max-width: calc(100vw - 28px); } .ts-v50b11-trip-summary { display: grid; } .ts-v50b11-compare-row { grid-template-columns: 1fr; } }

/* TuSpot EU v5.0 beta.12 — Public profile polish and backlink badge */
.ts-v50b12-hero-summary { margin-top: 28px; margin-bottom: 24px; padding: 0; }
.ts-v50b12-hero-summary .ts-v50b12-summary-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; padding: 26px 28px 20px; border: 1px solid rgba(35,187,231,.24); border-bottom: 0; border-radius: 30px 30px 0 0; background: linear-gradient(135deg, rgba(234,248,254,.96), rgba(255,255,255,.98)); box-shadow: 0 18px 44px rgba(9,52,64,.06); }
.ts-v50b12-hero-summary h2 { margin: 6px 0 0; font-family: var(--ts-font-display); font-size: clamp(28px, 3vw, 46px); line-height: .95; letter-spacing: -.045em; color: var(--ts-primary); }
.ts-v50b12-package-pill { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 10px 16px; border: 1px solid rgba(35,187,231,.32); border-radius: 999px; background: #fff; color: #13677f; font-weight: 950; white-space: nowrap; box-shadow: 0 10px 24px rgba(9,52,64,.06); }
.ts-v50b12-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 22px 28px 24px; border-left: 1px solid rgba(35,187,231,.24); border-right: 1px solid rgba(35,187,231,.24); background: rgba(255,255,255,.94); }
.ts-v50b12-summary-grid article { min-height: 126px; padding: 18px; border: 1px solid rgba(35,187,231,.20); border-radius: 22px; background: linear-gradient(180deg, #fff, #f8fdff); box-shadow: 0 12px 30px rgba(9,52,64,.045); }
.ts-v50b12-summary-grid span { display: block; color: #647988; font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .12em; }
.ts-v50b12-summary-grid strong { display: block; margin: 8px 0 6px; color: #093440; font-size: clamp(17px, 1.4vw, 22px); line-height: 1.12; font-weight: 950; }
.ts-v50b12-summary-grid em { display: block; color: #526879; font-style: normal; font-weight: 750; line-height: 1.42; }
.ts-v50b12-summary-actions { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 28px 26px; border: 1px solid rgba(35,187,231,.24); border-top: 0; border-radius: 0 0 30px 30px; background: #fff; box-shadow: 0 20px 52px rgba(9,52,64,.07); }
.ts-detail-grid--v50b12 { align-items: start; }
.ts-detail-grid--v50b12 .ts-place-main-content { display: grid; gap: 24px; }
.ts-detail-grid--v50b12 .ts-place-main-content > .ts-white-card { margin-top: 0 !important; }
.ts-place-sidebar--v50b12 { gap: 16px; }
.ts-place-sidebar--v50b12 .ts-white-card { margin-bottom: 0; }
.ts-v50b12-sidebar-snapshot h3 { margin: 6px 0 14px; font-family: var(--ts-font-display); font-size: 30px; line-height: 1; letter-spacing: -.035em; color: #093440; }
.ts-v50b12-sidebar-list { display: grid; gap: 10px; margin: 14px 0 16px; }
.ts-v50b12-sidebar-list div { padding: 13px 14px; border: 1px solid rgba(35,187,231,.22); border-radius: 16px; background: #f6fbfe; }
.ts-v50b12-sidebar-list strong { display: block; color: #093440; font-weight: 950; line-height: 1.25; }
.ts-v50b12-sidebar-list span { display: block; margin-top: 3px; color: #526879; font-weight: 750; font-size: .9rem; line-height: 1.35; }
.ts-v50b12-sidebar-snapshot .ts-btn { width: 100%; justify-content: center; }
.ts-v50b12-sidebar-backlink a { color: #13677f; font-weight: 950; }
.ts-v50b12-code-box { background: linear-gradient(135deg, #082f3d, #093440) !important; border: 1px solid rgba(35,187,231,.25); box-shadow: 0 16px 34px rgba(8,47,61,.14); }
.ts-v50b12-code-box textarea { width: 100%; min-height: 132px; resize: vertical; border: 1px solid rgba(190,235,250,.28); border-radius: 16px; background: rgba(255,255,255,.08); color: #e7fbff; padding: 14px; font: 800 13px/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; white-space: pre-wrap; }
.ts-v50b12-code-box textarea:focus { outline: 2px solid rgba(35,187,231,.5); outline-offset: 2px; }
.ts-add-place-form--v50b12 .ts-v50b7-backlink-builder { border: 1px solid rgba(35,187,231,.22); border-radius: 24px; padding: 20px; background: linear-gradient(180deg, #fff, #f8fdff); }
.ts-add-place-form--v50b12 .ts-v50b7-status-card { display: grid; gap: 4px; padding: 14px 16px; border: 1px solid rgba(35,187,231,.22); border-radius: 18px; background: #eaf8fe; color: #093440; margin: 14px 0; }
.ts-add-place-form--v50b12 .ts-v50b7-status-card span { color: #526879; font-weight: 750; }
@media (max-width: 1120px) { .ts-v50b12-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .ts-v50b12-hero-summary { margin-top: 18px; }
  .ts-v50b12-hero-summary .ts-v50b12-summary-head { display: grid; padding: 22px 20px 16px; }
  .ts-v50b12-summary-grid { grid-template-columns: 1fr; padding: 16px 20px 18px; }
  .ts-v50b12-summary-actions { padding: 0 20px 22px; }
  .ts-v50b12-summary-actions .ts-btn { width: 100%; justify-content: center; }
}

/* TuSpot EU v5.0 beta.13 — full-width map view polish */
.ts-places-map-page {
  display: grid;
  gap: 22px;
  padding-bottom: 82px;
}
.ts-places-map-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 26px 30px;
}
.ts-places-map-head h1 {
  margin: 4px 0 6px;
  font: 900 clamp(2.2rem, 5vw, 4.6rem)/.92 var(--ts-font-display);
  letter-spacing: -.055em;
  color: #093440;
}
.ts-places-map-head p { max-width: 760px; margin: 0; color: #526879; font-weight: 750; }
.ts-map-filter-bar {
  display: grid;
  grid-template-columns: minmax(180px, 1.35fr) minmax(150px, 1fr) repeat(5, minmax(130px, .85fr)) minmax(210px, 1.2fr) auto auto;
  gap: 12px;
  align-items: end;
  padding: 18px;
  position: relative;
  z-index: 5;
}
.ts-map-filter-bar .ts-filter-group { margin: 0; min-width: 0; }
.ts-map-filter-bar .ts-filter-group label,
.ts-map-promoted { font-size: 11px; font-weight: 950; color: #526879; text-transform: uppercase; letter-spacing: .09em; }
.ts-map-filter-bar .ts-input,
.ts-map-filter-bar .ts-select {
  min-height: 48px;
  border-radius: 18px;
  background: #f6fbfe;
  border-color: #c9edf7;
  font-weight: 850;
}
.ts-map-filter-bar .ts-range-row { gap: 8px; }
.ts-map-promoted {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #c9edf7;
  border-radius: 18px;
  background: #f6fbfe;
  padding: 0 14px;
  white-space: nowrap;
}
.ts-map-filter-actions { display: flex; gap: 10px; align-items: center; }
.ts-map-filter-actions .ts-btn { min-height: 48px; white-space: nowrap; }
.ts-map-stage {
  padding: 0 !important;
  overflow: hidden;
  position: relative;
  border-radius: 34px;
}
.ts-places-full-map {
  width: 100%;
  min-height: 720px;
  height: min(78vh, 860px);
  background: linear-gradient(135deg, #eaf8fe, #c9edf7);
  position: relative;
  z-index: 1;
}
.ts-places-full-map .leaflet-popup-content-wrapper {
  border-radius: 24px;
  box-shadow: 0 18px 48px rgba(9,52,64,.18);
  overflow: hidden;
}
.ts-places-full-map .leaflet-popup-content { margin: 0; width: 288px !important; }
.ts-map-popup-card { display: grid; background: #fff; color: #093440; }
.ts-map-popup-card img { width: 100%; height: 150px; object-fit: cover; display: block; }
.ts-map-popup-card div { padding: 16px; display: grid; gap: 6px; }
.ts-map-popup-card strong { font: 950 1.05rem/1.15 var(--ts-font-display); letter-spacing: -.02em; }
.ts-map-popup-card span { color: #526879; font-weight: 750; }
.ts-map-popup-card b { color: #093440; font-weight: 950; }
.ts-map-popup-card a { justify-self: start; margin-top: 6px; border-radius: 999px; padding: 10px 14px; background: #23bbe7; color: #fff; font-weight: 950; text-decoration: none; }
.ts-map-pin-icon { background: transparent !important; border: 0 !important; }
.ts-map-pin-icon span {
  width: 38px; height: 38px; border-radius: 999px;
  display: grid; place-items: center;
  background: #23bbe7; color: #fff;
  border: 5px solid rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(9,52,64,.22);
  font-weight: 950;
}
.ts-map-empty {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  z-index: 3; display: grid; gap: 6px; text-align: center;
  background: #fff; border: 1px solid #d9eaf1; border-radius: 24px;
  padding: 22px; box-shadow: 0 18px 48px rgba(9,52,64,.14);
}
.ts-map-empty strong { font: 950 1.3rem var(--ts-font-display); color: #093440; }
.ts-map-empty span { color: #526879; font-weight: 750; }
.ts-map-results-section { display: grid; gap: 14px; }
.ts-map-results-section .ts-results-head {
  background: #fff;
  border: 1px solid #d9eaf1;
  border-radius: 28px;
  padding: 20px 24px;
  margin: 0;
  box-shadow: 0 12px 30px rgba(9,52,64,.05);
}
.ts-map-results-section .ts-results-head h2 { margin: 2px 0 4px; font: 950 2.2rem/1 var(--ts-font-display); color: #093440; letter-spacing: -.04em; }
.ts-results-grid--map-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1380px) {
  .ts-map-filter-bar { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ts-map-filter-actions { grid-column: span 2; }
}
@media (max-width: 1100px) {
  .ts-places-map-head { display: grid; }
  .ts-results-grid--map-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ts-places-full-map { min-height: 620px; height: 70vh; }
}
@media (max-width: 760px) {
  .ts-map-filter-bar { grid-template-columns: 1fr; }
  .ts-map-filter-actions { grid-column: auto; flex-direction: column; align-items: stretch; }
  .ts-places-full-map { min-height: 520px; height: 64vh; }
  .ts-results-grid--map-cards { grid-template-columns: 1fr; }
  .ts-places-map-head, .ts-map-filter-bar { padding: 18px; }
}

/* TuSpot EU v5.0 beta.14 — full-screen map/list workspace polish */
.ts-places-workspace {
  width: min(1920px, calc(100vw - 36px));
  max-width: none;
  margin: 0 auto 90px;
  display: grid;
  gap: 22px;
}
.ts-places-workspace--map,
.ts-places-workspace--catalog {
  --ts-workspace-pad: clamp(18px, 2vw, 32px);
}
.ts-places-workspace-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 24px var(--ts-workspace-pad);
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,251,254,.96));
}
.ts-places-title-block h1 {
  margin: 4px 0 8px;
  font: 950 clamp(2.25rem, 4.4vw, 5.4rem)/.9 var(--ts-font-display);
  letter-spacing: -.06em;
  color: #093440;
}
.ts-places-title-block p {
  max-width: 780px;
  margin: 0;
  color: #526879;
  font-size: clamp(1rem, 1.1vw, 1.18rem);
  line-height: 1.48;
  font-weight: 760;
}
.ts-places-top-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}
.ts-view-switch--workspace {
  background: #eff9fd;
  border-color: rgba(35,187,231,.32);
  padding: 6px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.8), 0 12px 28px rgba(9,52,64,.06);
}
.ts-view-switch--workspace a {
  min-height: 42px;
  padding: 0 18px;
  color: #13677f;
}
.ts-view-switch--workspace a.is-active {
  background: #093440;
  color: #fff;
}
.ts-sort-form--workspace .ts-select {
  min-height: 54px;
  border-color: rgba(35,187,231,.28);
  background: #fff;
  box-shadow: 0 10px 24px rgba(9,52,64,.04);
}
.ts-places-filter-dock {
  padding: 0 !important;
  overflow: hidden;
  border-radius: 34px;
  position: relative;
  z-index: 8;
}
.ts-filter-dock-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px var(--ts-workspace-pad) 14px;
  border-bottom: 1px solid rgba(35,187,231,.18);
  background: linear-gradient(135deg, #ffffff, #f4fbfe);
}
.ts-filter-dock-head strong {
  display: block;
  margin-top: 3px;
  color: #093440;
  font: 950 1.08rem/1.15 var(--ts-font-display);
  letter-spacing: -.02em;
}
.ts-filter-dock-pills {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.ts-filter-dock-pills a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(35,187,231,.28);
  background: #fff;
  color: #13677f;
  font-size: .86rem;
  font-weight: 950;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(9,52,64,.04);
}
.ts-filter-dock-pills a:hover { background: #eaf8fe; color: #093440; }
.ts-places-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(180px, 1.05fr) repeat(5, minmax(150px, .9fr)) minmax(220px, 1.12fr) minmax(170px, .8fr) auto;
  gap: 12px;
  align-items: end;
  padding: 18px var(--ts-workspace-pad) var(--ts-workspace-pad);
}
.ts-places-filter-grid .ts-filter-group { margin: 0; min-width: 0; }
.ts-places-filter-grid .ts-filter-group label,
.ts-places-filter-grid .ts-map-promoted {
  display: block;
  margin: 0 0 8px;
  color: #647988;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .11em;
}
.ts-places-filter-grid .ts-input,
.ts-places-filter-grid .ts-select {
  min-height: 54px;
  border-radius: 18px;
  border-color: rgba(35,187,231,.30);
  background: #f8fdff;
  color: #093440;
  font-weight: 850;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}
.ts-places-filter-grid .ts-input:focus,
.ts-places-filter-grid .ts-select:focus {
  background: #fff;
  border-color: #23bbe7;
  box-shadow: 0 0 0 4px rgba(35,187,231,.14);
}
.ts-places-filter-grid .ts-range-row { gap: 8px; }
.ts-places-filter-grid .ts-map-promoted {
  margin: 0;
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 16px;
  border-radius: 18px;
  border: 1px solid rgba(35,187,231,.30);
  background: #f8fdff;
  white-space: nowrap;
}
.ts-places-filter-grid .ts-map-promoted input { width: 18px; height: 18px; accent-color: #23bbe7; }
.ts-places-filter-grid .ts-map-filter-actions {
  display: grid;
  grid-template-columns: minmax(140px, auto) minmax(96px, auto);
  gap: 10px;
}
.ts-places-filter-grid .ts-map-filter-actions .ts-btn {
  min-height: 54px;
  border-radius: 18px;
  white-space: nowrap;
  padding-left: 18px;
  padding-right: 18px;
}
.ts-places-workspace--map .ts-map-stage {
  border-radius: 34px;
  padding: 0 !important;
  overflow: hidden;
  box-shadow: 0 24px 62px rgba(9,52,64,.12);
}
.ts-places-workspace--map .ts-places-full-map {
  height: min(82vh, 920px);
  min-height: 760px;
}
.ts-places-workspace--map .leaflet-control-zoom a {
  width: 42px;
  height: 42px;
  line-height: 42px;
  border: 0 !important;
  color: #093440;
  font-weight: 950;
}
.ts-places-workspace--map .leaflet-control-zoom {
  border: 1px solid rgba(35,187,231,.20) !important;
  border-radius: 18px !important;
  overflow: hidden;
  box-shadow: 0 14px 30px rgba(9,52,64,.12);
}
.ts-map-results-section,
.ts-wide-results-panel { display: grid; gap: 18px; }
.ts-results-head--wide,
.ts-map-results-section .ts-results-head {
  background: #fff;
  border: 1px solid rgba(35,187,231,.20);
  border-radius: 28px;
  padding: 22px var(--ts-workspace-pad);
  margin: 0;
  box-shadow: 0 12px 30px rgba(9,52,64,.05);
}
.ts-results-head--wide h2,
.ts-map-results-section .ts-results-head h2 {
  margin: 2px 0 4px;
  font: 950 clamp(2rem, 3vw, 3.6rem)/.95 var(--ts-font-display);
  letter-spacing: -.05em;
  color: #093440;
}
.ts-results-grid--map-cards,
.ts-results-grid--wide-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.ts-results-grid--wide-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
.ts-results-grid--wide-list .ts-place-card a {
  display: grid;
  grid-template-columns: minmax(260px, 38%) minmax(0, 1fr);
  min-height: 260px;
}
.ts-results-grid--wide-list .ts-place-media {
  aspect-ratio: auto;
  min-height: 260px;
}
.ts-results-grid--wide-list .ts-place-body { align-content: start; }
@media (min-width: 1680px) {
  .ts-places-workspace { width: calc(100vw - 56px); }
  .ts-results-grid--map-cards,
  .ts-results-grid--wide-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1480px) {
  .ts-places-filter-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ts-filter-group--search { grid-column: span 2; }
  .ts-places-filter-grid .ts-map-filter-actions { grid-column: span 2; }
}
@media (max-width: 1180px) {
  .ts-places-workspace-top { grid-template-columns: 1fr; }
  .ts-places-top-actions { justify-content: flex-start; }
  .ts-places-workspace--map .ts-places-full-map { min-height: 640px; height: 72vh; }
  .ts-results-grid--map-cards,
  .ts-results-grid--wide-cards,
  .ts-results-grid--wide-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ts-results-grid--wide-list .ts-place-card a { display: block; }
  .ts-results-grid--wide-list .ts-place-media { aspect-ratio: var(--ts-card-image-ratio); min-height: 0; }
}
@media (max-width: 860px) {
  .ts-places-workspace { width: min(100% - 24px, 760px); margin-bottom: 64px; gap: 16px; }
  .ts-filter-dock-head { display: grid; }
  .ts-filter-dock-pills { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 2px; }
  .ts-filter-dock-pills a { white-space: nowrap; }
  .ts-places-filter-grid { grid-template-columns: 1fr; }
  .ts-filter-group--search,
  .ts-places-filter-grid .ts-map-filter-actions { grid-column: auto; }
  .ts-places-filter-grid .ts-map-filter-actions { grid-template-columns: 1fr; }
  .ts-places-workspace--map .ts-places-full-map { min-height: 540px; height: 66vh; }
  .ts-results-grid--map-cards,
  .ts-results-grid--wide-cards,
  .ts-results-grid--wide-list { grid-template-columns: 1fr; }
  .ts-places-title-block h1 { font-size: clamp(2.1rem, 12vw, 3.7rem); }
}

/* TuSpot EU v5.0 beta.15 — centered map/list split and premium filter dock */
.ts-places-workspace {
  width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.ts-places-workspace--map .ts-places-workspace-top,
.ts-places-workspace--catalog .ts-places-workspace-top {
  border-radius: 30px;
  box-shadow: 0 16px 42px rgba(9,52,64,.06);
}
.ts-places-filter-dock--map {
  padding: 16px !important;
  border-radius: 32px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(236,249,254,.92));
  border: 1px solid rgba(35,187,231,.24);
  box-shadow: 0 18px 48px rgba(9,52,64,.07);
}
.ts-places-filter-dock--map .ts-filter-dock-head {
  padding: 0 0 14px;
  border-bottom: 0;
  background: transparent;
}
.ts-filter-dock-title {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 280px;
}
.ts-filter-icon {
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: #093440;
  color: #fff;
  font-size: 1.15rem;
  box-shadow: 0 14px 28px rgba(9,52,64,.16);
}
.ts-places-filter-dock--map .ts-filter-dock-pills a {
  min-height: 42px;
  padding: 9px 16px;
  border-color: rgba(35,187,231,.35);
  background: #fff;
}
.ts-places-filter-dock--map .ts-filter-dock-pills a:first-child {
  background: #eaf8fe;
  color: #093440;
}
.ts-places-filter-grid--primary {
  padding: 0 !important;
  grid-template-columns: minmax(260px, 1.35fr) minmax(190px, 1fr) minmax(175px, .95fr) minmax(165px, .88fr) minmax(220px, 1fr) minmax(150px, auto) !important;
  gap: 12px;
  align-items: end;
}
.ts-places-filter-grid--advanced {
  padding: 14px 0 0 !important;
  grid-template-columns: repeat(4, minmax(170px, 1fr)) minmax(170px, auto) minmax(150px, auto) !important;
  border-top: 1px solid rgba(35,187,231,.16);
  margin-top: 14px;
}
.ts-places-filter-dock--map .ts-input,
.ts-places-filter-dock--map .ts-select {
  background: #fff;
  border-radius: 18px;
  min-height: 52px;
  box-shadow: 0 10px 22px rgba(9,52,64,.04), inset 0 1px 0 rgba(255,255,255,.9);
}
.ts-filter-more {
  margin-top: 14px;
}
.ts-filter-more summary {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(35,187,231,.30);
  background: #fff;
  color: #13677f;
  font-weight: 950;
  list-style: none;
  box-shadow: 0 8px 20px rgba(9,52,64,.04);
}
.ts-filter-more summary::-webkit-details-marker { display: none; }
.ts-filter-more summary::after {
  content: '+';
  width: 22px;
  height: 22px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #eaf8fe;
  color: #093440;
}
.ts-filter-more[open] summary::after { content: '–'; }
.ts-map-split-workspace {
  display: grid;
  grid-template-columns: minmax(440px, .95fr) minmax(620px, 1.05fr);
  gap: 22px;
  align-items: start;
}
.ts-map-split-workspace .ts-map-stage {
  position: sticky;
  top: 96px;
  border-radius: 32px;
  padding: 0 !important;
  overflow: hidden;
  min-width: 0;
  box-shadow: 0 22px 58px rgba(9,52,64,.12);
}
.ts-map-stage-label {
  position: absolute;
  z-index: 550;
  top: 18px;
  left: 18px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: calc(100% - 36px);
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(35,187,231,.26);
  color: #526879;
  font-weight: 850;
  box-shadow: 0 14px 30px rgba(9,52,64,.12);
}
.ts-map-stage-label span {
  color: #093440;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .72rem;
}
.ts-map-stage-label strong {
  font-size: .9rem;
  color: #526879;
}
.ts-map-split-workspace .ts-places-full-map {
  min-height: 680px !important;
  height: min(74vh, 780px) !important;
}
.ts-map-split-workspace .ts-map-results-section {
  padding: 20px;
  border-radius: 32px;
  min-width: 0;
  max-height: min(74vh, 780px);
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(35,187,231,.46) rgba(234,248,254,.75);
}
.ts-map-split-workspace .ts-results-head {
  padding: 0 0 16px;
  border: 0;
  background: transparent;
  box-shadow: none;
  margin: 0;
}
.ts-map-split-workspace .ts-results-head h2 {
  font-size: clamp(1.7rem, 2vw, 2.7rem);
}
.ts-map-split-workspace .ts-results-grid--map-cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.ts-map-split-workspace .ts-place-card {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ts-map-split-workspace .ts-place-card.is-map-active {
  border-color: rgba(35,187,231,.88);
  box-shadow: 0 18px 42px rgba(35,187,231,.18), 0 0 0 3px rgba(35,187,231,.14);
  transform: translateY(-3px);
}
.ts-map-pin-icon span {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #23bbe7;
  color: #fff;
  border: 3px solid #fff;
  box-shadow: 0 12px 28px rgba(9,52,64,.22);
  font-weight: 950;
  transition: transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.ts-map-pin-icon.is-map-active span,
.ts-map-pin-icon:hover span {
  transform: scale(1.16);
  background: #093440;
  box-shadow: 0 18px 34px rgba(9,52,64,.28), 0 0 0 8px rgba(35,187,231,.18);
}
@media (min-width: 1680px) {
  .ts-map-split-workspace { grid-template-columns: minmax(520px, .86fr) minmax(880px, 1.14fr); }
  .ts-map-split-workspace .ts-results-grid--map-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1480px) {
  .ts-places-filter-grid--primary { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ts-places-filter-grid--advanced { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ts-places-filter-grid--primary .ts-filter-group--search { grid-column: span 2; }
}
@media (max-width: 1220px) {
  .ts-map-split-workspace { grid-template-columns: 1fr; }
  .ts-map-split-workspace .ts-map-stage { position: relative; top: auto; }
  .ts-map-split-workspace .ts-map-results-section { max-height: none; overflow: visible; }
  .ts-map-split-workspace .ts-results-grid--map-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .ts-places-workspace { width: min(100% - 24px, 760px) !important; }
  .ts-places-filter-dock--map { padding: 14px !important; border-radius: 26px; }
  .ts-filter-dock-head--map { display: grid; }
  .ts-places-filter-grid--primary,
  .ts-places-filter-grid--advanced { grid-template-columns: 1fr !important; }
  .ts-places-filter-grid--primary .ts-filter-group--search { grid-column: auto; }
  .ts-map-split-workspace .ts-places-full-map { min-height: 520px !important; height: 64vh !important; }
  .ts-map-split-workspace .ts-results-grid--map-cards { grid-template-columns: 1fr; }
  .ts-map-stage-label strong { display: none; }
}

/* TuSpot EU v5.0 beta.16 — catalog workspace and homepage hero polish */
.ts-places-workspace--map,
.ts-places-workspace--list,
.ts-places-workspace--cards {
  width: var(--ts-container) !important;
  max-width: none !important;
  margin: 0 auto !important;
}
.ts-places-top-actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  min-width: min(100%, 360px);
}
.ts-places-top-actions .ts-view-switch,
.ts-places-top-actions .ts-sort-form { width: 100%; }
.ts-places-top-actions .ts-sort-form .ts-select { width: 100%; }
.ts-filter-tabs-shell {
  display: grid;
  gap: 14px;
  padding: 16px !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(234,248,254,.82)) !important;
  border: 1px solid rgba(35,187,231,.24) !important;
  box-shadow: 0 18px 48px rgba(9,52,64,.07) !important;
}
.ts-filter-tab-row {
  display: grid;
  grid-template-columns: 142px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}
.ts-filter-tab-row > span {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .72rem;
  font-weight: 950;
  color: #13677f;
}
.ts-filter-tab-row > div {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: thin;
}
.ts-filter-tab {
  min-width: max-content;
  min-height: 50px;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  padding: 8px 18px;
  border-radius: 999px;
  border: 1px solid rgba(35,187,231,.28);
  background: rgba(255,255,255,.92);
  color: #093440;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(9,52,64,.045);
}
.ts-filter-tab strong { font-size: .94rem; line-height: 1; }
.ts-filter-tab span { font-size: .68rem; line-height: 1.1; color: #607585; font-weight: 850; }
.ts-filter-tab.is-active {
  background: #093440;
  color: #fff;
  border-color: #093440;
  box-shadow: 0 16px 34px rgba(9,52,64,.18);
}
.ts-filter-tab.is-active span { color: rgba(255,255,255,.76); }
.ts-places-filter-dock--premium {
  padding: 18px !important;
  border-radius: 32px !important;
  background: #fff !important;
  box-shadow: 0 18px 48px rgba(9,52,64,.08) !important;
  border: 1px solid rgba(35,187,231,.22) !important;
}
.ts-filter-dock-head--premium {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.ts-filter-dock-title { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ts-filter-icon {
  width: 54px;
  height: 54px;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #eaf8fe;
  color: #13677f;
  font-size: 1.3rem;
  font-weight: 950;
}
.ts-places-filter-dock--premium .ts-filter-dock-pills { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ts-places-filter-dock--premium .ts-filter-dock-pills a {
  min-height: 40px;
  padding: 0 15px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(35,187,231,.28);
  color: #13677f;
  text-decoration: none;
  font-weight: 950;
  background: #f8fdff;
}
.ts-places-filter-grid--premium {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.4fr) minmax(210px, 1fr) minmax(190px, .9fr) minmax(230px, 1fr) auto !important;
  gap: 12px !important;
  align-items: end !important;
  padding: 0 !important;
}
.ts-places-filter-grid--premium .ts-input,
.ts-card-filter-sidebar .ts-input,
.ts-card-filter-sidebar .ts-select {
  min-height: 54px;
  border-radius: 18px;
  background: #fbfdff;
  border-color: rgba(35,187,231,.22);
}
.ts-map-full-workspace { display: grid; gap: 22px; }
.ts-map-stage--full {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  border-radius: 34px !important;
  box-shadow: 0 24px 70px rgba(9,52,64,.12) !important;
}
.ts-map-stage--full .ts-places-full-map {
  min-height: 720px !important;
  height: min(76vh, 860px) !important;
}
.ts-results-head--map-below {
  margin: 4px 0 0;
  padding: 22px 24px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(35,187,231,.18);
  box-shadow: 0 14px 36px rgba(9,52,64,.06);
}
.ts-results-grid--map-below {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ts-list-map-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}
.ts-list-results-column {
  padding: 22px !important;
  border-radius: 34px !important;
  min-width: 0;
}
.ts-list-map-column {
  position: sticky;
  top: 96px;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 34px !important;
  min-width: 0;
  box-shadow: 0 24px 70px rgba(9,52,64,.12) !important;
}
.ts-list-map-column .ts-places-full-map {
  min-height: 720px !important;
  height: min(76vh, 860px) !important;
}
.ts-results-grid--list-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.ts-cards-catalog-layout {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(0, 4fr);
  gap: 24px;
  align-items: start;
}
.ts-card-filter-sidebar {
  position: sticky;
  top: 96px;
  padding: 22px !important;
  border-radius: 32px !important;
}
.ts-card-filter-sidebar form { display: grid; gap: 14px; }
.ts-card-filter-sidebar .ts-filter-group { display: grid; gap: 7px; }
.ts-card-filter-sidebar .ts-btn { width: 100%; justify-content: center; }
.ts-catalog-results-column { min-width: 0; }
.ts-results-grid--catalog-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.ts-list-map-split .ts-place-card,
.ts-results-grid--map-below .ts-place-card,
.ts-results-grid--catalog-cards .ts-place-card {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ts-list-map-split .ts-place-card.is-map-active,
.ts-results-grid--map-below .ts-place-card.is-map-active {
  border-color: rgba(35,187,231,.88);
  box-shadow: 0 18px 42px rgba(35,187,231,.18), 0 0 0 3px rgba(35,187,231,.14);
  transform: translateY(-3px);
}
.ts-hero--featured-strip .ts-hero-grid { align-items: stretch; }
.ts-hero-featured-panel {
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(35,187,231,.22);
  border-radius: 36px;
  padding: 18px;
  box-shadow: var(--ts-shadow-elevated);
  backdrop-filter: blur(10px);
}
.ts-hero-featured-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 16px; }
.ts-hero-featured-list { display: grid; gap: 14px; }
.ts-hero-feature-card {
  position: relative;
  min-height: 150px;
  border-radius: 28px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 18px;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 16px 36px rgba(9,52,64,.16);
}
.ts-hero-feature-card.is-large { min-height: 270px; }
.ts-hero-feature-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.ts-hero-feature-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9,52,64,.02), rgba(9,52,64,.72)); z-index: 1; }
.ts-hero-feature-card span,
.ts-hero-feature-card strong,
.ts-hero-feature-card small { position: relative; z-index: 2; }
.ts-hero-feature-card span { align-self: flex-start; margin-bottom: auto; border-radius: 999px; background: rgba(255,255,255,.88); color: #093440; padding: 7px 11px; font-weight: 950; font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.ts-hero-feature-card strong { font-size: 1.35rem; line-height: 1.05; }
.ts-hero-feature-card small { color: rgba(255,255,255,.84); font-weight: 850; }
.ts-hero--full-banner {
  width: var(--ts-container);
  margin: 28px auto;
  border-radius: 42px;
  overflow: hidden;
  background-image: linear-gradient(90deg, rgba(246,251,254,.96) 0%, rgba(246,251,254,.84) 44%, rgba(246,251,254,.28) 100%), var(--ts-hero-banner);
  background-size: cover;
  background-position: center;
  box-shadow: 0 24px 70px rgba(9,52,64,.14);
}
.ts-hero--full-banner .ts-hero-grid { grid-template-columns: minmax(0, 780px) minmax(240px, 1fr); }
.ts-hero-banner-note {
  align-self: end;
  justify-self: end;
  max-width: 330px;
  border-radius: 28px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(35,187,231,.22);
  padding: 18px;
  box-shadow: var(--ts-shadow);
}
.ts-hero-banner-note strong,
.ts-hero-banner-note span { display: block; }
.ts-hero-banner-note span { margin-top: 6px; color: #526879; font-weight: 750; }
@media (min-width: 1680px) {
  .ts-results-grid--catalog-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ts-results-grid--list-split { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1380px) {
  .ts-places-filter-grid--premium { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ts-places-filter-grid--premium .ts-filter-group--search { grid-column: span 2; }
  .ts-results-grid--catalog-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1180px) {
  .ts-list-map-split,
  .ts-cards-catalog-layout { grid-template-columns: 1fr; }
  .ts-list-map-column,
  .ts-card-filter-sidebar { position: relative; top: auto; }
  .ts-results-grid--map-below { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .ts-filter-dock-head--premium { display: grid; }
  .ts-places-filter-dock--premium .ts-filter-dock-pills { justify-content: flex-start; }
  .ts-places-filter-grid--premium { grid-template-columns: 1fr !important; }
  .ts-places-filter-grid--premium .ts-filter-group--search { grid-column: auto; }
  .ts-filter-tab-row { grid-template-columns: 1fr; }
  .ts-map-stage--full .ts-places-full-map,
  .ts-list-map-column .ts-places-full-map { min-height: 520px !important; height: 64vh !important; }
  .ts-results-grid--map-below,
  .ts-results-grid--list-split,
  .ts-results-grid--catalog-cards { grid-template-columns: 1fr; }
  .ts-hero--full-banner { width: min(100% - 24px, 760px); border-radius: 30px; }
  .ts-hero--full-banner .ts-hero-grid { grid-template-columns: 1fr; }
}

/* TuSpot EU v5.0 beta.17 — places page experience polish */
.ts-places-workspace {
  width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
  max-width: none !important;
  gap: 26px !important;
}
.ts-places-workspace-top.ts-white-card {
  padding: clamp(30px, 3vw, 46px) !important;
  border-radius: 36px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f2fbfe 100%) !important;
}
.ts-places-title-block h1 { max-width: 860px; }
.ts-places-top-actions {
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  min-width: min(100%, 390px) !important;
}
.ts-places-top-actions .ts-view-switch,
.ts-places-top-actions .ts-sort-form,
.ts-places-top-actions .ts-select { width: 100% !important; }

.ts-filter-tabs-shell--purpose {
  padding: clamp(24px, 2.4vw, 34px) !important;
  display: grid !important;
  grid-template-columns: minmax(250px, .72fr) minmax(0, 1.6fr) !important;
  align-items: end;
  gap: 24px !important;
  border-radius: 36px !important;
  background: linear-gradient(135deg, #ffffff 0%, #ecfaff 100%) !important;
  overflow: hidden;
  position: relative;
}
.ts-filter-tabs-shell--purpose::after,
.ts-seasonality-stage::after,
.ts-quick-choice-stage::after,
.ts-smart-match-stage::after {
  content: '';
  position: absolute;
  right: -42px;
  top: -42px;
  width: 148px;
  height: 148px;
  border-radius: 50%;
  background: rgba(35,187,231,.10);
  pointer-events: none;
}
.ts-filter-tabs-intro { position: relative; z-index: 1; }
.ts-filter-tabs-intro strong {
  display: block;
  margin: 8px 0 8px;
  font: 950 clamp(1.85rem, 2.6vw, 3.25rem)/.92 var(--ts-font-display);
  letter-spacing: -.055em;
  color: #093440;
}
.ts-filter-tabs-intro p {
  margin: 0;
  color: #526879;
  font-weight: 760;
  line-height: 1.45;
}
.ts-filter-tab-row--purpose {
  display: block !important;
  grid-template-columns: 1fr !important;
  position: relative;
  z-index: 1;
}
.ts-filter-tab-row--purpose > div {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px !important;
  overflow: visible !important;
}
.ts-filter-tab--purpose {
  min-height: 118px !important;
  border-radius: 24px !important;
  padding: 16px !important;
  align-items: flex-start !important;
  background: rgba(255,255,255,.90) !important;
  box-shadow: 0 14px 34px rgba(9,52,64,.055) !important;
}
.ts-filter-tab--purpose i {
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e7f8fd;
  color: #13677f;
  font-style: normal;
  font-weight: 950;
  margin-bottom: 10px;
}
.ts-filter-tab--purpose strong { font-size: 1.05rem !important; }
.ts-filter-tab--purpose span { font-size: .78rem !important; line-height: 1.25 !important; }
.ts-filter-tab--purpose.is-active {
  background: #093440 !important;
  border-color: #093440 !important;
  transform: translateY(-2px);
}
.ts-filter-tab--purpose.is-active i { background: rgba(255,255,255,.18); color: #fff; }

.ts-seasonality-stage {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 2.4vw, 36px) !important;
  border-radius: 36px !important;
  display: grid;
  gap: 22px;
  background: radial-gradient(circle at 8% 20%, rgba(35,187,231,.15), transparent 30%), linear-gradient(135deg, #ffffff, #f4fcff) !important;
}
.ts-seasonality-stage-head {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.35fr);
  gap: 22px;
  align-items: end;
  position: relative;
  z-index: 1;
}
.ts-seasonality-stage-head h2 {
  margin: 6px 0 0;
  font: 950 clamp(1.9rem, 2.6vw, 3.4rem)/.92 var(--ts-font-display);
  letter-spacing: -.055em;
  color: #093440;
}
.ts-seasonality-stage-head p {
  margin: 0;
  color: #526879;
  font-weight: 760;
  line-height: 1.5;
}
.ts-seasonality-cards {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  position: relative;
  z-index: 1;
}
.ts-season-card {
  min-height: 170px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  padding: 17px;
  border-radius: 26px;
  border: 1px solid rgba(35,187,231,.24);
  background: rgba(255,255,255,.86);
  text-decoration: none;
  color: #093440;
  box-shadow: 0 12px 30px rgba(9,52,64,.05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ts-season-card:hover,
.ts-season-card.is-active {
  transform: translateY(-3px);
  border-color: rgba(35,187,231,.86);
  box-shadow: 0 18px 44px rgba(35,187,231,.14);
}
.ts-season-card.is-active { background: #093440; color: #fff; }
.ts-season-card i {
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  background: #e7f8fd;
  color: #13677f;
  font-weight: 950;
}
.ts-season-card.is-active i { background: rgba(255,255,255,.16); color: #fff; }
.ts-season-card strong { font-size: 1.02rem; line-height: 1.05; }
.ts-season-card span { color: #13677f; font-size: .77rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 950; }
.ts-season-card.is-active span { color: rgba(255,255,255,.78); }
.ts-season-card small { color: #607585; font-weight: 760; line-height: 1.3; }
.ts-season-card.is-active small { color: rgba(255,255,255,.76); }

.ts-places-filter-dock--premium {
  padding: clamp(24px, 2.2vw, 34px) !important;
  border-radius: 36px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f5fcff 100%) !important;
}
.ts-filter-dock-head--premium {
  padding: 0 !important;
  margin-bottom: 18px !important;
  background: transparent !important;
  border-bottom: 0 !important;
}
.ts-filter-dock-title strong {
  font: 950 1.35rem/1.05 var(--ts-font-display) !important;
  letter-spacing: -.035em;
}
.ts-places-filter-grid--premium {
  grid-template-columns: minmax(260px, 1.25fr) minmax(210px, 1fr) minmax(210px, .95fr) minmax(230px, .95fr) minmax(230px, auto) !important;
  gap: 14px !important;
}
.ts-map-filter-actions { align-self: end; }

.ts-places-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 30px !important;
}
.ts-places-trust-strip article {
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 24px 28px;
  border-right: 1px solid rgba(35,187,231,.16);
}
.ts-places-trust-strip article:last-child { border-right: 0; }
.ts-places-trust-strip i {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f0fbff;
  color: #13677f;
  font-style: normal;
  font-weight: 950;
  flex: 0 0 auto;
}
.ts-places-trust-strip strong,
.ts-places-trust-strip span { display: block; }
.ts-places-trust-strip strong { color: #093440; font-size: 1.02rem; }
.ts-places-trust-strip span { color: #607585; font-weight: 730; margin-top: 4px; line-height: 1.32; }

.ts-quick-choice-stage,
.ts-smart-match-stage,
.ts-transport-planning-stage {
  position: relative;
  overflow: hidden;
  padding: clamp(26px, 2.5vw, 40px) !important;
  border-radius: 38px !important;
}
.ts-quick-choice-stage {
  display: grid;
  grid-template-columns: minmax(290px, .78fr) minmax(0, 1.7fr);
  gap: 28px;
  align-items: end;
  background: linear-gradient(135deg, #ffffff 0%, #eaf8fe 100%) !important;
}
.ts-quick-choice-copy,
.ts-smart-match-copy,
.ts-transport-planning-stage > div:first-child { position: relative; z-index: 1; }
.ts-quick-choice-copy h2,
.ts-smart-match-copy h2,
.ts-transport-planning-stage h2 {
  margin: 8px 0 10px;
  font: 950 clamp(2rem, 3vw, 4rem)/.9 var(--ts-font-display);
  letter-spacing: -.06em;
  color: #093440;
}
.ts-quick-choice-copy p,
.ts-smart-match-copy p,
.ts-transport-planning-stage p { margin: 0; color: #526879; font-weight: 760; line-height: 1.5; }
.ts-quick-choice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  position: relative;
  z-index: 1;
}
.ts-quick-choice-grid a,
.ts-transport-planning-grid a {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px;
  border-radius: 26px;
  border: 1px solid rgba(35,187,231,.24);
  background: rgba(255,255,255,.88);
  color: #093440;
  text-decoration: none;
  box-shadow: 0 12px 30px rgba(9,52,64,.045);
}
.ts-quick-choice-grid i,
.ts-transport-planning-grid i {
  width: 42px;
  height: 42px;
  border-radius: 16px;
  background: #e7f8fd;
  color: #13677f;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-weight: 950;
}
.ts-quick-choice-grid strong,
.ts-transport-planning-grid strong { font-size: 1.08rem; line-height: 1.05; }
.ts-quick-choice-grid span,
.ts-transport-planning-grid span { color: #526879; font-size: .88rem; line-height: 1.32; font-weight: 760; }
.ts-quick-choice-grid a:hover,
.ts-transport-planning-grid a:hover { transform: translateY(-3px); border-color: rgba(35,187,231,.8); }

.ts-smart-match-stage {
  display: grid;
  grid-template-columns: minmax(280px, .9fr) minmax(0, 1.2fr) minmax(230px, .42fr);
  gap: 22px;
  align-items: stretch;
  background: linear-gradient(135deg, #f7fdff, #ffffff) !important;
}
.ts-smart-match-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; position: relative; z-index: 1; }
.ts-smart-match-cards article {
  padding: 20px;
  border-radius: 26px;
  border: 1px solid rgba(35,187,231,.22);
  background: #fff;
  box-shadow: 0 12px 30px rgba(9,52,64,.04);
}
.ts-smart-match-cards span { color: #0eaed8; font-weight: 950; font-size: .75rem; text-transform: uppercase; letter-spacing: .1em; }
.ts-smart-match-cards strong { display: block; margin: 8px 0; color: #093440; font: 950 1.25rem/1.05 var(--ts-font-display); }
.ts-smart-match-cards p { margin: 0; color: #607585; font-weight: 730; line-height: 1.38; }
.ts-smart-match-actions { display: grid; gap: 12px; align-content: start; position: relative; z-index: 1; }
.ts-smart-match-actions .ts-btn { min-height: 58px; border-radius: 20px; justify-content: center; }

.ts-transport-planning-stage {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.5fr);
  gap: 24px;
  align-items: center;
  background: linear-gradient(135deg, #ffffff 0%, #f1fbff 100%) !important;
}
.ts-transport-planning-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }

.ts-cards-catalog-layout {
  grid-template-columns: minmax(220px, .9fr) minmax(0, 4.1fr) !important;
  gap: 26px !important;
}
.ts-catalog-results-column {
  min-width: 0;
  padding: clamp(24px, 2vw, 34px) !important;
  border-radius: 36px;
  border: 1px solid rgba(35,187,231,.20);
  background: rgba(255,255,255,.72);
  box-shadow: 0 18px 46px rgba(9,52,64,.06);
}
.ts-results-grid--catalog-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
}
.ts-list-map-split {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 26px !important;
}
.ts-list-results-column.ts-white-card {
  padding: clamp(24px, 2vw, 34px) !important;
  border-radius: 36px !important;
}
.ts-results-grid--list-split {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}
.ts-list-map-column.ts-white-card {
  position: sticky !important;
  top: 92px !important;
  align-self: start !important;
}
.ts-list-map-column .ts-places-full-map { min-height: 760px !important; height: calc(100vh - 130px) !important; }
.ts-map-stage--full .ts-places-full-map { min-height: 760px !important; height: min(78vh, 880px) !important; }
.ts-results-grid--map-below { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 24px !important; }

@media (min-width: 1680px) {
  .ts-results-grid--catalog-cards,
  .ts-results-grid--map-below { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .ts-results-grid--list-split { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 1420px) {
  .ts-filter-tabs-shell--purpose,
  .ts-quick-choice-stage,
  .ts-smart-match-stage,
  .ts-transport-planning-stage { grid-template-columns: 1fr; }
  .ts-filter-tab-row--purpose > div,
  .ts-seasonality-cards,
  .ts-transport-planning-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ts-cards-catalog-layout { grid-template-columns: minmax(205px, .72fr) minmax(0, 3.4fr) !important; }
  .ts-results-grid--catalog-cards { gap: 18px !important; }
}
@media (max-width: 1180px) {
  .ts-cards-catalog-layout,
  .ts-list-map-split { grid-template-columns: 1fr !important; }
  .ts-list-map-column.ts-white-card,
  .ts-card-filter-sidebar { position: relative !important; top: auto !important; }
  .ts-results-grid--catalog-cards,
  .ts-results-grid--map-below { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .ts-places-trust-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ts-smart-match-cards { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .ts-places-workspace { width: min(100% - 24px, 760px) !important; }
  .ts-places-workspace-top.ts-white-card,
  .ts-seasonality-stage,
  .ts-quick-choice-stage,
  .ts-smart-match-stage,
  .ts-transport-planning-stage,
  .ts-places-filter-dock--premium,
  .ts-catalog-results-column { padding: 20px !important; border-radius: 28px !important; }
  .ts-filter-tab-row--purpose > div,
  .ts-seasonality-cards,
  .ts-quick-choice-grid,
  .ts-transport-planning-grid,
  .ts-results-grid--catalog-cards,
  .ts-results-grid--map-below,
  .ts-results-grid--list-split,
  .ts-places-trust-strip { grid-template-columns: 1fr !important; }
  .ts-seasonality-stage-head { grid-template-columns: 1fr; }
  .ts-places-filter-grid--premium { grid-template-columns: 1fr !important; }
  .ts-places-trust-strip article { border-right: 0; border-bottom: 1px solid rgba(35,187,231,.14); }
  .ts-places-trust-strip article:last-child { border-bottom: 0; }
  .ts-map-stage--full .ts-places-full-map,
  .ts-list-map-column .ts-places-full-map { min-height: 520px !important; height: 64vh !important; }
}

/* TuSpot EU v5.0 beta.18 — places stack polish */
.ts-places-workspace--list .ts-places-trust-strip,
.ts-places-workspace--list .ts-quick-choice-stage,
.ts-places-workspace--list .ts-smart-match-stage,
.ts-places-workspace--list .ts-transport-planning-stage,
.ts-places-workspace--map .ts-places-trust-strip,
.ts-places-workspace--map .ts-quick-choice-stage,
.ts-places-workspace--map .ts-smart-match-stage,
.ts-places-workspace--map .ts-transport-planning-stage,
.ts-places-workspace--cards .ts-places-trust-strip,
.ts-places-workspace--cards .ts-quick-choice-stage,
.ts-places-workspace--cards .ts-smart-match-stage,
.ts-places-workspace--cards .ts-transport-planning-stage {
  margin-top: 0 !important;
}

.ts-list-map-split + .ts-places-trust-strip,
.ts-map-full-workspace + .ts-places-trust-strip,
.ts-cards-catalog-layout + .ts-places-trust-strip {
  margin-top: clamp(10px, 1.5vw, 20px) !important;
}

.ts-list-map-column.ts-white-card {
  position: sticky !important;
  top: calc(var(--ts-header-height, 72px) + 18px) !important;
  align-self: start !important;
  height: fit-content !important;
  z-index: 3;
}

body.admin-bar .ts-list-map-column.ts-white-card {
  top: calc(var(--ts-header-height, 72px) + 50px) !important;
}

.ts-list-map-column.ts-white-card .ts-map-stage-label {
  top: 16px !important;
  left: 16px !important;
}

.ts-list-map-column .ts-places-full-map {
  min-height: 740px !important;
  height: min(78vh, 860px) !important;
}

.ts-list-map-split {
  margin-bottom: 0 !important;
}

@media (max-width: 1180px) {
  .ts-list-map-column.ts-white-card,
  body.admin-bar .ts-list-map-column.ts-white-card {
    position: relative !important;
    top: auto !important;
  }
}

/* TuSpot EU v5.0 beta.19 — places contrast, sticky map and copy polish */
.ts-site-footer {
  margin-top: 45px !important;
}

.ts-places-workspace {
  width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
  max-width: none !important;
  overflow: visible !important;
}

.ts-places-workspace-top.ts-white-card {
  padding: clamp(30px, 2.4vw, 46px) !important;
  align-items: flex-start !important;
}

.ts-places-title-block h1 {
  margin-bottom: 0 !important;
}

.ts-places-title-block p,
.ts-results-head--wide p {
  display: none !important;
}

.ts-filter-tabs-shell--purpose {
  align-items: flex-start !important;
}

.ts-filter-tabs-intro {
  align-self: flex-start !important;
  margin-top: -10px !important;
  padding-top: 0 !important;
}

.ts-filter-tabs-intro strong {
  margin-top: 4px !important;
}

.ts-places-trust-strip {
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(246,251,254,.92)) !important;
}

.ts-places-trust-strip article {
  min-height: 112px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(234,248,254,.50));
}

.ts-places-trust-strip article:nth-child(even) {
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(236,252,246,.55));
}

.ts-places-trust-strip i {
  background: linear-gradient(135deg, #e0f7ff, #ffffff) !important;
  box-shadow: inset 0 0 0 1px rgba(35,187,231,.22), 0 12px 24px rgba(9,52,64,.08);
}

.ts-places-trust-strip i svg {
  width: 25px;
  height: 25px;
  display: block;
  stroke: #0b6b82;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ts-quick-choice-stage {
  background: linear-gradient(135deg, #ffffff 0%, #eaf8fe 65%, #f7fdff 100%) !important;
  border-color: rgba(35,187,231,.26) !important;
}

.ts-smart-match-stage {
  background: linear-gradient(135deg, #ffffff 0%, #f2fbff 55%, #eefaf5 100%) !important;
  border-color: rgba(19,103,127,.18) !important;
}

.ts-transport-planning-stage {
  background:
    radial-gradient(circle at 92% 0%, rgba(255,255,255,.22) 0 0, transparent 34%),
    linear-gradient(135deg, #093440 0%, #13677f 54%, #23bbe7 100%) !important;
  border-color: rgba(255,255,255,.18) !important;
  color: #ffffff !important;
  box-shadow: 0 28px 78px rgba(9,52,64,.22) !important;
}

.ts-transport-planning-stage .ts-kicker {
  background: rgba(255,255,255,.16) !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.22) !important;
}

.ts-transport-planning-stage h2,
.ts-transport-planning-stage p,
.ts-transport-planning-stage .ts-transport-planning-grid strong,
.ts-transport-planning-stage .ts-transport-planning-grid span {
  color: #ffffff !important;
}

.ts-transport-planning-stage p,
.ts-transport-planning-stage .ts-transport-planning-grid span {
  opacity: .88;
}

.ts-transport-planning-stage .ts-transport-planning-grid a {
  background: rgba(255,255,255,.13) !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.12) !important;
  backdrop-filter: blur(12px);
}

.ts-transport-planning-stage .ts-transport-planning-grid a:hover {
  background: rgba(255,255,255,.20) !important;
  border-color: rgba(255,255,255,.45) !important;
}

.ts-transport-planning-stage .ts-transport-planning-grid i {
  background: rgba(255,255,255,.18) !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.22);
}

.ts-list-map-split {
  align-items: flex-start !important;
  overflow: visible !important;
  position: relative;
}

.ts-list-map-column.ts-white-card {
  position: sticky !important;
  top: calc(var(--ts-header-height, 72px) + 18px) !important;
  align-self: flex-start !important;
  height: auto !important;
  max-height: calc(100vh - var(--ts-header-height, 72px) - 32px) !important;
  overflow: hidden !important;
  z-index: 8 !important;
}

body.admin-bar .ts-list-map-column.ts-white-card {
  top: calc(var(--ts-header-height, 72px) + 50px) !important;
  max-height: calc(100vh - var(--ts-header-height, 72px) - 64px) !important;
}

.ts-list-map-column .ts-places-full-map {
  min-height: 700px !important;
  height: min(78vh, 820px) !important;
}

@media (max-width: 1180px) {
  .ts-list-map-column.ts-white-card,
  body.admin-bar .ts-list-map-column.ts-white-card {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
  }
}

@media (max-width: 860px) {
  .ts-places-workspace {
    width: min(100% - 24px, 760px) !important;
  }
  .ts-places-workspace-top.ts-white-card {
    padding: 22px !important;
  }
  .ts-filter-tabs-intro {
    margin-top: 0 !important;
  }
}

/* TuSpot EU v5.0 beta.20 — sticky list map reinforcement */
.ts-places-workspace--list,
.ts-places-workspace--list .ts-list-map-split,
.ts-places-workspace--list .ts-list-map-column-wrap {
  overflow: visible !important;
}
.ts-places-workspace--list .ts-list-map-column.ts-white-card {
  position: sticky !important;
  top: calc(var(--ts-header-height, 72px) + 18px) !important;
  align-self: start !important;
  max-height: calc(100vh - var(--ts-header-height, 72px) - 32px) !important;
  overflow: hidden !important;
}
body.admin-bar .ts-places-workspace--list .ts-list-map-column.ts-white-card {
  top: calc(var(--ts-header-height, 72px) + 50px) !important;
  max-height: calc(100vh - var(--ts-header-height, 72px) - 64px) !important;
}
.ts-places-workspace--list .ts-list-map-column .ts-places-full-map {
  height: min(76vh, 820px) !important;
  min-height: 680px !important;
}
@media (max-width: 1180px) {
  .ts-places-workspace--list .ts-list-map-column.ts-white-card,
  body.admin-bar .ts-places-workspace--list .ts-list-map-column.ts-white-card {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
  }
}

/* TuSpot EU v5.0 beta.21 — places stack order and reliable sticky list map */
.ts-places-workspace--list .ts-transport-planning-stage {
  margin-top: 0 !important;
}

.ts-places-workspace--list .ts-list-map-column.ts-white-card,
.ts-places-workspace--list .ts-list-map-split,
.ts-places-workspace--list .ts-list-results-column.ts-white-card {
  overflow: visible !important;
}

.ts-places-workspace--list .ts-list-map-column.ts-white-card {
  position: sticky !important;
  top: calc(var(--ts-header-height, 72px) + 18px) !important;
  align-self: start !important;
  height: fit-content !important;
  z-index: 10 !important;
  padding: 0 !important;
}

body.admin-bar .ts-places-workspace--list .ts-list-map-column.ts-white-card {
  top: calc(var(--ts-header-height, 72px) + 50px) !important;
}

.ts-places-workspace--list .ts-list-map-column.ts-white-card.has-js-sticky {
  position: relative !important;
  top: auto !important;
  overflow: visible !important;
  z-index: 10 !important;
}

.ts-list-map-sticky-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 34px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(9,52,64,.12);
  will-change: transform;
}

.ts-list-map-sticky-inner.is-fixed {
  position: fixed !important;
  top: var(--ts-sticky-map-top, 96px) !important;
  left: var(--ts-sticky-map-left, 0px) !important;
  width: var(--ts-sticky-map-width, auto) !important;
  z-index: 80 !important;
}

.ts-list-map-sticky-inner.is-bottom {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: 100% !important;
  z-index: 30 !important;
}

.ts-list-map-sticky-inner .ts-places-full-map {
  display: block;
  height: min(76vh, 820px) !important;
  min-height: 680px !important;
}

@media (max-width: 1180px) {
  .ts-places-workspace--list .ts-list-map-column.ts-white-card,
  .ts-places-workspace--list .ts-list-map-column.ts-white-card.has-js-sticky {
    position: relative !important;
    top: auto !important;
    min-height: 0 !important;
  }
  .ts-list-map-sticky-inner,
  .ts-list-map-sticky-inner.is-fixed,
  .ts-list-map-sticky-inner.is-bottom {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
  }
}


/* TuSpot EU v5.0 beta.22 — full banner hero spacing polish */
.ts-hero.ts-hero--full-banner {
  padding: clamp(64px, 7vw, 124px) clamp(28px, 5vw, 88px) !important;
  min-height: clamp(620px, 72vh, 860px) !important;
  display: flex !important;
  align-items: center !important;
}
.ts-hero--full-banner .ts-hero-grid {
  width: 100% !important;
  grid-template-columns: minmax(0, 820px) !important;
  align-items: center !important;
}
.ts-hero--full-banner .ts-hero-copy-wrap {
  max-width: 820px !important;
}
.ts-hero--full-banner .ts-search-bar,
.ts-hero--full-banner .tuspot-search-bar,
.ts-hero--full-banner form[class*="search"] {
  margin-top: clamp(22px, 3vw, 42px) !important;
}
.ts-hero-banner-note {
  display: none !important;
}
@media (max-width: 860px) {
  .ts-hero.ts-hero--full-banner {
    padding: 54px 22px !important;
    min-height: 640px !important;
  }
}

/* TuSpot EU v5.0 beta.23 — owner CTA and laptop header polish */
.ts-owner-cta-section {
  padding-top: clamp(54px, 6vw, 92px);
}
.ts-owner-cta {
  position: relative;
  overflow: hidden;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 330px) !important;
  align-items: center !important;
  gap: clamp(28px, 5vw, 72px) !important;
  padding: clamp(42px, 5vw, 74px) !important;
  border-radius: clamp(30px, 4vw, 44px) !important;
  background:
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.20), transparent 34%),
    linear-gradient(135deg, #073655 0%, #0d7787 58%, #16a9c6 100%) !important;
  box-shadow: 0 34px 90px rgba(7,54,85,.20) !important;
}
.ts-owner-cta::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: inherit;
  pointer-events: none;
}
.ts-owner-cta__content {
  position: relative;
  z-index: 1;
  max-width: 860px;
}
.ts-owner-cta .ts-kicker {
  background: rgba(255,255,255,.92) !important;
  color: #0b7286 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.08);
}
.ts-owner-cta h2 {
  max-width: 860px !important;
  color: #fff !important;
  font-size: clamp(38px, 4.6vw, 68px) !important;
  line-height: .98 !important;
  margin-top: 18px !important;
}
.ts-owner-cta p {
  max-width: 760px !important;
  color: rgba(255,255,255,.86) !important;
  font-size: clamp(17px, 1.2vw, 20px) !important;
}
.ts-owner-cta__actions {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 13px;
  padding: 20px;
  border-radius: 30px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.22);
  backdrop-filter: blur(12px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
}
.ts-owner-cta__actions .ts-btn {
  width: 100%;
  min-height: 54px;
  padding-inline: 24px;
  font-size: 16px;
  font-weight: 950;
}
.ts-owner-cta__primary {
  background: #fff !important;
  border-color: #fff !important;
  color: #08213d !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.14);
}
.ts-owner-cta__secondary {
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.62) !important;
  color: #fff !important;
}
.ts-owner-cta__secondary:hover {
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
}

@media (min-width: 861px) {
  .ts-site-header .ts-nav-more { display: block !important; }
  .ts-site-header .ts-main-nav { flex: 1 1 auto; min-width: 0; justify-content: center; gap: 4px; }
  .ts-site-header .ts-nav-link { padding-inline: clamp(8px, .7vw, 14px); font-size: clamp(13px, .82vw, 15px); }
  .ts-site-header .ts-header-actions { flex: 0 0 auto; gap: 8px; }
  .ts-site-header .ts-header-actions .ts-btn { min-height: 42px; padding-inline: clamp(13px, .95vw, 20px); }
}
@media (min-width: 861px) and (max-width: 1240px) {
  .ts-site-header .ts-container.ts-header-inner { width: min(1540px, calc(100vw - 24px)) !important; }
  .ts-site-header .ts-header-inner { gap: 10px; }
  .ts-site-header .ts-logo-img { max-height: 38px; }
  .ts-site-header .ts-header-actions .ts-currency-pill { display: none !important; }
  .ts-site-header .ts-account-menu > .ts-btn { display: none !important; }
  .ts-site-header .ts-nav-link { font-size: 13px; padding-inline: 8px; }
  .ts-site-header .ts-header-actions .ts-btn--primary { min-height: 40px; padding-inline: 15px; }
}
@media (max-width: 980px) {
  .ts-owner-cta {
    grid-template-columns: 1fr !important;
    padding: 34px !important;
  }
  .ts-owner-cta__actions {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 620px) {
  .ts-owner-cta__actions {
    grid-template-columns: 1fr;
    padding: 14px;
  }
  .ts-owner-cta h2 { font-size: clamp(34px, 10vw, 48px) !important; }
}
@media (max-width: 860px) {
  .ts-site-header--laptop-compact .ts-nav-more,
  .ts-site-header .ts-nav-more {
    display: block !important;
  }
}

/* v5.0 beta.24 — frontend account, add-place spacing and opening hours polish */
.ts-v50-add-beta-notice.ts-white-card,
.ts-v50-add-beta-notice { margin-bottom: 45px !important; }
.tuspot-owner-package-choice { margin-bottom: 45px !important; }
.ts-add-place-form--v50b24 .tuspot-owner-package-choice:last-child { margin-bottom: 0 !important; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish { padding: 18px; border: 1px solid rgba(35,187,231,.2); border-radius: 28px; background: linear-gradient(135deg, #ffffff 0%, #f6fbfe 100%); box-shadow: 0 16px 34px rgba(9,52,64,.05); }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-section-note { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 18px; border-radius: 22px; background: #eaf8fe; border: 1px solid rgba(35,187,231,.22); margin-bottom: 16px; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-section-note .ts-kicker { justify-self: start; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-section-note h3 { margin: .2rem 0 .35rem; color: #093440; letter-spacing: -.025em; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-section-note p { margin: 0; color: #526879; max-width: 760px; line-height: 1.55; }
.ts-add-place-form--v50b24 .ts-v50b9-hours-actions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0 0 16px; padding: 10px; border-radius: 22px; background: rgba(255,255,255,.72); border: 1px solid rgba(35,187,231,.18); }
.ts-add-place-form--v50b24 .ts-v50b9-hours-actions .ts-btn { width: 100%; justify-content: center; min-height: 46px; border-radius: 16px; background: #fff; border-color: rgba(35,187,231,.26); color: #093440; box-shadow: 0 8px 18px rgba(9,52,64,.04); }
.ts-add-place-form--v50b24 .ts-v50b9-hours-actions .ts-btn:hover { transform: translateY(-1px); border-color: #23bbe7; box-shadow: 0 14px 28px rgba(9,52,64,.08); }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-hours-list { display: grid; gap: 12px; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row,
.ts-add-place-form--v50b24 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row { display: grid !important; grid-template-columns: minmax(125px, .7fr) minmax(120px, .55fr) minmax(120px, .55fr) minmax(300px, 1.35fr) !important; align-items: center !important; gap: 12px !important; padding: 16px !important; border-radius: 22px !important; border: 1px solid rgba(35,187,231,.22) !important; background: rgba(255,255,255,.92) !important; box-shadow: 0 12px 24px rgba(9,52,64,.045) !important; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row > strong { display: inline-flex; align-items: center; gap: 10px; font: 900 1rem var(--ts-font-display); color: #093440; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row > strong:before { content: '◷'; display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; background: #eaf8fe; color: #13677f; font-size: 1.05rem; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row label { margin: 0; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row select { height: 46px; border-radius: 15px; background: #fff; font-weight: 800; color: #093440; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-modes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; align-items: center; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-modes label { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 9px 10px; border-radius: 15px; border: 1px solid rgba(35,187,231,.22); background: #f6fbfe; color: #093440; font-weight: 900; font-size: .84rem; text-align: center; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-modes input { width: auto; accent-color: #23bbe7; margin: 0; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row[data-opening-mode="24h"] { background: linear-gradient(135deg, #f0fcff 0%, #ffffff 100%) !important; border-color: rgba(35,187,231,.52) !important; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row[data-opening-mode="closed"] { background: #f6fbfe !important; opacity: .9; }
.ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row select:disabled { background: #eef8fc; color: #96a9b4; border-color: rgba(9,52,64,.06); }
.ts-v50b24-account-page { margin-top: 34px; margin-bottom: 70px; }
.ts-v50b24-account-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: clamp(26px, 3vw, 44px); margin-bottom: 22px; }
.ts-v50b24-account-hero h1 { margin: .15rem 0 .5rem; font: 900 clamp(2.2rem, 4vw, 4.2rem)/.9 var(--ts-font-display); color: #093440; letter-spacing: -.06em; }
.ts-v50b24-account-hero p { margin: 0; color: #526879; max-width: 760px; font-size: 1.05rem; line-height: 1.6; }
.ts-v50b24-account-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.ts-v50b24-account-grid a { display: grid; gap: 8px; text-decoration: none; padding: 24px; transition: transform .2s ease, box-shadow .2s ease; }
.ts-v50b24-account-grid a:hover { transform: translateY(-2px); box-shadow: var(--ts-shadow-card); }
.ts-v50b24-account-grid span { color: #13677f; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; }
.ts-v50b24-account-grid strong { color: #093440; font: 900 1.65rem var(--ts-font-display); }
.ts-v50b24-account-grid em { font-style: normal; color: #526879; }
.ts-v50b24-settings-form { padding: clamp(22px, 3vw, 34px); }
.ts-v50b24-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.ts-v50b24-enquiry-list { display: grid; gap: 16px; }
.ts-v50b24-enquiry-card { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr); gap: 22px; padding: 24px; }
.ts-v50b24-enquiry-main h2 { margin: .2rem 0 .5rem; color: #093440; font: 900 1.8rem var(--ts-font-display); }
.ts-v50b24-enquiry-main p { color: #526879; margin: .45rem 0; line-height: 1.55; }
.ts-v50b24-enquiry-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.ts-v50b24-enquiry-side { display: grid; align-content: start; gap: 12px; padding: 16px; border-radius: 20px; background: #f6fbfe; border: 1px solid rgba(35,187,231,.18); }
.ts-v50b24-empty, .ts-v50b24-login-card { padding: 30px; }
@media (max-width: 980px) {
  .ts-add-place-form--v50b24 .ts-v50b9-hours-actions { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row,
  .ts-add-place-form--v50b24 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row { grid-template-columns: 1fr 1fr !important; }
  .ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row > strong,
  .ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-modes { grid-column: 1 / -1; }
  .ts-v50b24-account-hero, .ts-v50b24-enquiry-card { grid-template-columns: 1fr; display: grid; }
  .ts-v50b24-account-grid, .ts-v50b24-form-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ts-add-place-form--v50b24 .ts-v50b9-hours-actions,
  .ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-modes,
  .ts-add-place-form--v50b24 .ts-v50b24-opening-polish .ts-v50b7-day-row,
  .ts-add-place-form--v50b24 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row { grid-template-columns: 1fr !important; }
}

/* v5.0 beta.25 — transparency, enquiry and add-place polish */
.ts-add-place-form--v50b25 .ts-v50-add-rules article,
.ts-v50b25-stacked-rule { display: grid !important; grid-template-columns: 1fr !important; gap: 7px !important; align-content: start; }
.ts-add-place-form--v50b25 .ts-v50-add-rules article strong { display: block; line-height: 1.15; }
.ts-add-place-form--v50b25 .ts-v50-add-rules article span { display: block; line-height: 1.45; }
.ts-add-place-form--v50b25 .ts-v50b7-room-icons-grid { margin-top: 24px !important; }
.ts-add-place-form--v50b25 .ts-v50b7-menu-inputs { margin-top: 20px !important; }
.ts-add-place-form--v50b25 .ts-v50b25-add-menu-btn,
.ts-add-place-form--v50b25 [data-add-menu-item].ts-v50b25-add-menu-btn { margin-top: 10px; min-height: 52px; padding-inline: 28px; background: linear-gradient(135deg, #23bbe7, #13677f) !important; color: #fff !important; border: 0 !important; box-shadow: 0 18px 34px rgba(35,187,231,.22); }
.ts-add-place-form--v50b25 .ts-v50b25-add-menu-btn:hover { transform: translateY(-1px); box-shadow: 0 24px 44px rgba(35,187,231,.28); }
.ts-add-place-form--v50b25 .ts-v50b25-accommodation-only.is-hidden { display: none !important; }
.ts-add-place-form--v50b25 .ts-v50b24-opening-polish { padding: clamp(18px, 2.4vw, 28px) !important; }
.ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-row,
.ts-add-place-form--v50b25 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row { grid-template-columns: minmax(150px,.75fr) minmax(132px,.55fr) minmax(132px,.55fr) minmax(330px,1.25fr) !important; align-items: center !important; }
.ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-modes { display: grid !important; grid-template-columns: repeat(3, minmax(96px, 1fr)) !important; gap: 8px !important; }
.ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-modes label { min-height: 42px !important; padding: 8px 10px !important; border-radius: 999px !important; font-size: .78rem !important; white-space: nowrap; line-height: 1.1; }
.ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-modes input { flex: 0 0 auto; }
.ts-v50b25-trust-builder { display: grid; gap: 18px; }
.ts-v50b25-trust-intro { padding: 18px; border-radius: 22px; background: linear-gradient(135deg, #eaf8fe, #ffffff); border: 1px solid rgba(35,187,231,.22); }
.ts-v50b25-trust-intro h3 { margin: .25rem 0 .35rem; font: 900 1.45rem var(--ts-font-display); color: #093440; letter-spacing: -.025em; }
.ts-v50b25-trust-intro p { margin: 0; color: #526879; line-height: 1.55; }
.ts-v50b25-trust-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.ts-v50b25-trust-grid label { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 4px 12px; align-items: start; padding: 16px; border-radius: 20px; background: #fff; border: 1px solid rgba(35,187,231,.22); box-shadow: 0 10px 22px rgba(9,52,64,.04); cursor: pointer; }
.ts-v50b25-trust-grid input { grid-row: span 2; margin-top: 4px; accent-color: #23bbe7; }
.ts-v50b25-trust-grid strong { color: #093440; font-weight: 950; }
.ts-v50b25-trust-grid span { color: #526879; line-height: 1.45; }
.ts-v50b25-trust-note { display: grid; gap: 4px; padding: 16px 18px; border-radius: 20px; background: #093440; color: #fff; box-shadow: 0 18px 40px rgba(9,52,64,.16); }
.ts-v50b25-trust-note span { color: rgba(255,255,255,.78); line-height: 1.5; }
.ts-v50b25-transparency-front .ts-detail-head strong { display: inline-grid; place-items: center; width: 72px; height: 72px; border-radius: 24px; background: #eaf8fe; color: #13677f; font: 950 1.6rem var(--ts-font-display); }
.ts-v50b25-trust-front-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 12px; margin-top: 18px; }
.ts-v50b25-trust-front-grid article { display: grid; gap: 8px; padding: 16px; border-radius: 20px; border: 1px solid rgba(35,187,231,.18); background: #fff; }
.ts-v50b25-trust-front-grid article span { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 999px; background: #eef8fc; color: #13677f; font-weight: 950; }
.ts-v50b25-trust-front-grid article.is-confirmed span { background: #dff8ef; color: #00865e; }
.ts-v50b25-trust-front-grid strong { color: #093440; font-weight: 950; }
.ts-v50b25-trust-front-grid em { font-style: normal; color: #526879; line-height: 1.45; font-size: .92rem; }
.ts-v50b25-trust-disclaimer { margin: 16px 0 0; color: #526879; line-height: 1.55; }
.ts-v50b25-enquiry-form { display: grid; gap: 12px; }
.ts-v50b25-enquiry-heading { padding: 16px; border-radius: 20px; background: #f6fbfe; border: 1px solid rgba(35,187,231,.18); margin-bottom: 4px; }
.ts-v50b25-enquiry-heading h3 { margin: .25rem 0 .35rem; color: #093440; font: 900 1.45rem var(--ts-font-display); letter-spacing: -.025em; }
.ts-v50b25-enquiry-heading p { margin: 0; color: #526879; line-height: 1.5; }
.ts-v50b25-estimate { display: grid; gap: 5px; padding: 15px; border-radius: 18px; border: 1px solid rgba(35,187,231,.22); background: linear-gradient(135deg, #eaf8fe, #ffffff); }
.ts-v50b25-estimate strong { color: #093440; }
.ts-v50b25-estimate span { color: #526879; line-height: 1.45; }
@media (max-width: 1100px) {
  .ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-row,
  .ts-add-place-form--v50b25 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row { grid-template-columns: 1fr 1fr !important; }
  .ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-row > strong,
  .ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-modes { grid-column: 1 / -1; }
  .ts-v50b25-trust-front-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .ts-v50b25-trust-grid, .ts-v50b25-trust-front-grid { grid-template-columns: 1fr; }
  .ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-row,
  .ts-add-place-form--v50b25 .ts-v50b9-opening-builder .ts-v50b24-opening-polish .ts-v50b7-day-row,
  .ts-add-place-form--v50b25 .ts-v50b24-opening-polish .ts-v50b7-day-modes { grid-template-columns: 1fr !important; }
}

/* TuSpot EU v5.0 beta.26 — public pages, support modal, currency and package polish */
.ts-currency-switcher { position: relative; display: inline-flex; }
.ts-currency-switcher .ts-currency-pill { cursor: pointer; min-width: 118px; justify-content: center; }
.ts-currency-menu { position: absolute; top: calc(100% + 10px); right: 0; z-index: 120; width: 250px; max-height: min(60vh, 460px); overflow: auto; padding: 10px; border: 1px solid var(--ts-border); border-radius: 22px; background: rgba(255,255,255,.98); box-shadow: 0 24px 70px rgba(8,33,61,.18); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: .18s ease; }
.ts-currency-switcher.is-open .ts-currency-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.ts-currency-menu a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border-radius: 14px; color: var(--ts-foreground); text-decoration: none; font-weight: 900; }
.ts-currency-menu a span { color: var(--ts-muted); font-size: 12px; font-weight: 800; }
.ts-currency-menu a:hover, .ts-currency-menu a.is-active { background: var(--ts-soft); color: var(--ts-primary-dark); }

.ts-v50b26-packages-hero { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: center; margin-bottom: 30px !important; padding: clamp(28px, 3vw, 46px) !important; }
.ts-v50b26-packages-hero .ts-kicker { justify-self: start; align-self: start; }
.ts-v50b26-packages-hero h1 { margin: 0 0 10px; max-width: 820px; }
.ts-v50b26-packages-hero p { margin: 0; max-width: 850px; color: var(--ts-muted); font-weight: 750; font-size: clamp(16px, 1.1vw, 19px); }
.ts-packages--v50b26 .ts-v50b26-package-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-bottom: 30px; }
.ts-v50b26-package-plan-grid .ts-package-card { padding: 24px; border: 1px solid var(--ts-border); border-radius: 24px; background: #fff; box-shadow: 0 16px 42px rgba(8,33,61,.07); }
.ts-v50b26-package-plan-grid .ts-package-card > span { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: var(--ts-soft); color: var(--ts-primary-dark); font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .06em; }
.ts-v50b26-package-plan-grid .ts-package-card h3 { margin: 18px 0 8px; }
.ts-v50b26-package-plan-grid .ts-package-card strong { display: block; color: var(--ts-foreground); font-size: 24px; margin-bottom: 12px; }
.ts-v50b26-package-plan-grid .ts-package-card p { color: var(--ts-muted); min-height: 72px; }
.ts-packages--v50b26 .ts-v50-package-beta-panel,
.ts-packages--v50b26 .ts-v48-package-freeze-rules,
.ts-packages--v50b26 .ts-v47-package-freeze-policy,
.ts-packages--v50b26 .ts-v46-package-beta-policy,
.ts-packages--v50b26 .ts-package-access-matrix,
.ts-packages--v50b26 .ts-white-card { margin-top: 0; margin-bottom: 30px !important; }
.ts-packages--v50b26 .ts-section-head { gap: 24px; align-items: flex-start; }
.ts-packages--v50b26 .ts-section-head--center { text-align: left; align-items: flex-start; }

.ts-v50b26-info-page { margin: 0 auto 32px; width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important; padding: clamp(30px, 4vw, 58px) !important; overflow: hidden; position: relative; }
.ts-v50b26-info-page:after { content: ""; position: absolute; right: -120px; top: -140px; width: 360px; height: 360px; border-radius: 999px; background: rgba(35,187,231,.14); pointer-events: none; }
.ts-v50b26-info-hero { max-width: 980px; position: relative; z-index: 1; }
.ts-v50b26-info-hero h2 { font-size: clamp(36px, 4vw, 72px); line-height: .95; margin: 16px 0; letter-spacing: -.05em; }
.ts-v50b26-info-hero p { max-width: 850px; color: var(--ts-muted); font-weight: 750; font-size: clamp(16px, 1.2vw, 20px); }
.ts-v50b26-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 30px; position: relative; z-index: 1; }
.ts-v50b26-info-grid article { padding: 22px; border: 1px solid var(--ts-border); border-radius: 24px; background: rgba(255,255,255,.82); box-shadow: 0 14px 42px rgba(8,33,61,.06); }
.ts-v50b26-info-grid strong { display: block; font-size: 18px; margin-bottom: 10px; }
.ts-v50b26-info-grid span { display: block; color: var(--ts-muted); font-weight: 700; line-height: 1.55; }
.ts-v50b26-info-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; position: relative; z-index: 1; }

.ts-v50b26-contact-card { margin: 0 auto 34px; width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important; padding: clamp(26px, 3vw, 44px) !important; }
.ts-v50b26-contact-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 22px; }
.ts-v50b26-contact-form p { margin: 0; }
.ts-v50b26-contact-form label { display: block; margin-bottom: 7px; font-weight: 900; color: var(--ts-foreground); }
.ts-v50b26-contact-form input, .ts-v50b26-contact-form select, .ts-v50b26-contact-form textarea { width: 100%; min-height: 48px; border: 1px solid var(--ts-border); border-radius: 16px; padding: 12px 14px; background: #fff; color: var(--ts-foreground); font-weight: 750; }
.ts-v50b26-contact-form textarea { min-height: 140px; resize: vertical; }
.ts-v50b26-contact-form p:has(textarea), .ts-v50b26-contact-form button, .ts-v50b26-contact-form small { grid-column: 1/-1; }
.ts-v50b26-form-note { margin: 16px 0 0; padding: 12px 14px; border-radius: 16px; font-weight: 850; }
.ts-v50b26-form-note.is-success { background: #e7fbf0; color: #08603b; }
.ts-v50b26-form-note.is-error { background: #fff3f0; color: #942c14; }

.ts-help-modal[hidden] { display: none !important; }
.ts-help-modal { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 22px; }
.ts-help-modal__backdrop { position: absolute; inset: 0; background: rgba(5, 24, 36, .48); backdrop-filter: blur(8px); }
.ts-help-modal__dialog { position: relative; width: min(620px, calc(100vw - 28px)); max-height: min(84vh, 820px); overflow: auto; padding: clamp(24px, 3vw, 40px); border: 1px solid var(--ts-border); border-radius: 30px; background: #fff; box-shadow: 0 34px 110px rgba(6,31,47,.28); }
.ts-help-modal__dialog h2 { margin: 10px 0 8px; }
.ts-help-modal__close { position: absolute; right: 18px; top: 18px; width: 42px; height: 42px; border: 1px solid var(--ts-border); border-radius: 999px; background: var(--ts-soft); color: var(--ts-foreground); font-size: 24px; font-weight: 900; cursor: pointer; }
.ts-help-modal .ts-v50b26-contact-form { grid-template-columns: 1fr; }
.ts-help-modal .ts-v50b26-contact-form p:has(textarea), .ts-help-modal .ts-v50b26-contact-form button, .ts-help-modal .ts-v50b26-contact-form small { grid-column: auto; }

.ts-footer-col h4 a { color: inherit; text-decoration: none; }
.ts-footer-col h4 a:hover { color: var(--ts-primary-dark); }

@media (max-width: 980px) {
  .ts-v50b26-packages-hero, .ts-packages--v50b26 .ts-v50b26-package-plan-grid, .ts-v50b26-info-grid, .ts-v50b26-contact-form { grid-template-columns: 1fr; }
  .ts-currency-menu { left: 0; right: auto; }
}
.ts-header-actions .ts-currency-switcher .ts-currency-pill { display: inline-flex !important; }
@media (max-width: 1180px) { .ts-header-actions .ts-currency-switcher { display: none !important; } }

/* TuSpot EU v5.0 beta.27 — enquiry, currency, packages, handbook and promotions polish */
.ts-currency-menu { scrollbar-width: thin; scrollbar-color: rgba(35,187,231,.58) rgba(234,248,254,.82); }
.ts-currency-menu::-webkit-scrollbar { width: 10px; }
.ts-currency-menu::-webkit-scrollbar-track { background: rgba(234,248,254,.9); border-radius: 999px; margin: 12px 0; }
.ts-currency-menu::-webkit-scrollbar-thumb { background: linear-gradient(180deg,#23bbe7,#13677f); border-radius: 999px; border: 2px solid rgba(255,255,255,.92); }
.ts-currency-menu::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg,#22bae5,#093440); }
.ts-currency-menu a { min-height: 44px; }
.ts-currency-menu a.is-active { box-shadow: inset 0 0 0 1px rgba(35,187,231,.22); }

.ts-package-matrix-table tbody tr:nth-child(even) th,
.ts-package-matrix-table tbody tr:nth-child(even) td { background: rgba(234,248,254,.45); }
.ts-package-matrix-table tbody tr:nth-child(odd) td:nth-child(3),
.ts-package-matrix-table tbody tr:nth-child(even) td:nth-child(3) { background: linear-gradient(180deg,rgba(234,248,254,.96),rgba(246,251,254,.96)); color: #093440; box-shadow: inset 1px 0 rgba(35,187,231,.14), inset -1px 0 rgba(35,187,231,.14); }
.ts-package-matrix-table thead th:nth-child(3) { background: linear-gradient(180deg,#dff7fd,#c9f1fb); color: #093440; }
.ts-package-matrix-table tbody td { font-weight: 900; }
.ts-package-matrix-table tbody tr:hover th,
.ts-package-matrix-table tbody tr:hover td { background: rgba(35,187,231,.08); }
.ts-package-access-matrix .ts-section-head { align-items: center; }

.ts-v50b25-enquiry-form.ts-v50b27-enquiry-form { gap: 9px; }
.ts-v50b27-enquiry-form .ts-field { margin: 0; }
.ts-v50b27-enquiry-form .ts-field input,
.ts-v50b27-enquiry-form .ts-field select,
.ts-v50b27-enquiry-form .ts-field textarea { min-height: 46px; }
.ts-v50b27-enquiry-form .ts-field textarea { min-height: 92px; }
.ts-v50b27-enquiry-form .ts-v50b25-enquiry-heading { padding: 14px 15px; margin-bottom: 2px; }
.ts-v50b27-enquiry-form .ts-v50b25-estimate { margin: 4px 0; padding: 13px 14px; border-radius: 18px; background: rgba(234,248,254,.8); border: 1px solid rgba(35,187,231,.18); }
.ts-v50b27-date-range { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
@media (max-width:640px) { .ts-v50b27-date-range { grid-template-columns: 1fr; } }

.ts-v50b27-owner-handbook,
.ts-v50b27-promoted-page { display: grid; gap: 28px; padding-block: 42px; }
.ts-v50b27-handbook-hero,
.ts-v50b27-promo-hero { padding: clamp(30px,4vw,58px); background: radial-gradient(circle at 85% 10%,rgba(35,187,231,.18),transparent 34%), linear-gradient(135deg,#fff,#f3fbfe); }
.ts-v50b27-handbook-hero h1,
.ts-v50b27-promo-hero h1 { max-width: 980px; font-family: var(--ts-font-display); font-size: clamp(42px,6vw,86px); line-height: .9; letter-spacing: -.055em; color: var(--ts-foreground); margin: 12px 0 18px; }
.ts-v50b27-handbook-hero p,
.ts-v50b27-promo-hero p { max-width: 760px; color: var(--ts-muted); font-size: 18px; line-height: 1.65; }
.ts-v50b27-handbook-actions,
.ts-v50b27-promo-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.ts-v50b27-handbook-steps { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.ts-v50b27-handbook-steps article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 24px; }
.ts-v50b27-handbook-steps b { width: 50px; height: 50px; border-radius: 18px; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg,#23bbe7,#13677f); color: #fff; font-weight: 950; }
.ts-v50b27-handbook-steps h2 { margin: 0 0 8px; color: var(--ts-foreground); font-size: 24px; }
.ts-v50b27-handbook-steps p { margin: 0; color: var(--ts-muted); line-height: 1.6; }
.ts-v50b27-handbook-grid-card { padding: 30px; }
.ts-v50b27-handbook-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.ts-v50b27-handbook-grid article,
.ts-v50b27-promo-rule-grid article { border: 1px solid var(--ts-border); border-radius: 22px; padding: 18px; background: #fff; }
.ts-v50b27-handbook-grid strong,
.ts-v50b27-promo-rule-grid strong { display:block; color: var(--ts-foreground); margin-bottom: 7px; }
.ts-v50b27-handbook-grid span,
.ts-v50b27-promo-rule-grid span { color: var(--ts-muted); font-weight: 700; line-height: 1.5; }
.ts-v50b27-promo-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 15px; }
.ts-v50b27-promo-grid article { padding: 22px; }
.ts-v50b27-promo-grid article > span { display: inline-flex; border-radius: 999px; padding: 7px 11px; background: var(--ts-soft); color: var(--ts-primary-dark); font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.ts-v50b27-promo-grid h2 { margin: 16px 0 10px; color: var(--ts-foreground); font-size: 24px; }
.ts-v50b27-promo-grid p { color: var(--ts-muted); line-height: 1.55; min-height: 105px; }
.ts-v50b27-promo-grid strong { display: block; color: #093440; background: rgba(234,248,254,.82); border-radius: 18px; padding: 13px; line-height: 1.45; }
.ts-v50b27-promo-grid .is-campaign { background: linear-gradient(135deg,#093440,#13677f); color: #fff; border-color: rgba(35,187,231,.35); }
.ts-v50b27-promo-grid .is-campaign h2,
.ts-v50b27-promo-grid .is-campaign p { color: #fff; }
.ts-v50b27-promo-grid .is-campaign > span { background: rgba(255,255,255,.16); color:#fff; }
.ts-v50b27-promo-grid .is-campaign strong { background: rgba(255,255,255,.12); color:#fff; }
.ts-v50b27-promo-rules { padding: 30px; }
.ts-v50b27-promo-rule-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.ts-promoted--sponsored { background: linear-gradient(135deg,#ffb84d,#ff8a00) !important; color: #11243f !important; box-shadow: 0 10px 26px rgba(255,138,0,.28); }
@media (max-width:1180px) { .ts-v50b27-promo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .ts-v50b27-handbook-grid,.ts-v50b27-promo-rule-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .ts-v50b27-handbook-steps,.ts-v50b27-promo-grid,.ts-v50b27-handbook-grid,.ts-v50b27-promo-rule-grid { grid-template-columns: 1fr; } .ts-v50b27-handbook-steps article { grid-template-columns: 1fr; } }

/* v5.0 beta.28 — WooCommerce commerce, discounts and owner subscription polish */
.ts-v50b28-home-offer { margin-top: 34px; }
.ts-early-offer { display:grid; grid-template-columns: minmax(0,1fr) 320px auto; gap: 24px; align-items:center; padding: clamp(26px,3vw,42px); margin: 30px 0; background: radial-gradient(circle at 85% 20%, rgba(35,187,231,.22), transparent 34%), linear-gradient(135deg,#ffffff,#f1fbff); }
.ts-early-offer h2 { margin: 8px 0 10px; color: var(--ts-foreground); font-size: clamp(28px,4vw,54px); line-height: .95; letter-spacing: -.045em; }
.ts-early-offer p { margin:0; color: var(--ts-muted); line-height:1.65; max-width: 760px; }
.ts-early-offer__meter { position:relative; overflow:hidden; border:1px solid var(--ts-border); background:#fff; border-radius: 28px; padding: 20px; display:grid; gap:6px; box-shadow: var(--ts-shadow-soft); }
.ts-early-offer__meter strong { font-size: 48px; color: var(--ts-accent); line-height:1; }
.ts-early-offer__meter span, .ts-early-offer__meter em { color: var(--ts-muted); font-weight: 850; font-style: normal; }
.ts-early-offer__meter i { display:block; height:8px; background: linear-gradient(90deg,var(--ts-accent),#093440); border-radius:999px; width: var(--ts-offer-progress,0%); margin-top:8px; }
.ts-early-offer__actions { display:grid; gap:10px; min-width: 190px; }
.ts-v50b28-product-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin: 30px 0; }
.ts-v50b28-promo-products { grid-template-columns: repeat(5,minmax(0,1fr)); }
.ts-v50b28-product-card { border:1px solid var(--ts-border); border-radius: 30px; padding: 26px; background:#fff; box-shadow: var(--ts-shadow-soft); display:flex; flex-direction:column; gap:14px; min-height: 100%; }
.ts-v50b28-product-card.is-featured { background: radial-gradient(circle at 100% 0, rgba(35,187,231,.22), transparent 32%), linear-gradient(135deg,#fff,#f2fbff); border-color: rgba(35,187,231,.55); box-shadow: 0 20px 55px rgba(35,187,231,.16); }
.ts-v50b28-product-card > span { align-self:flex-start; display:inline-flex; border-radius:999px; padding:7px 12px; background: var(--ts-soft); color: var(--ts-primary-dark); font-size:12px; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.ts-v50b28-product-card h3 { margin: 0; color: var(--ts-foreground); font-size: clamp(24px,2vw,34px); letter-spacing:-.035em; }
.ts-v50b28-product-card p { color: var(--ts-muted); line-height:1.55; margin:0; }
.ts-v50b28-product-card ul { margin: 0; padding-left: 18px; color: var(--ts-muted); font-weight: 750; line-height: 1.5; }
.ts-v50b28-product-card .ts-btn { margin-top:auto; justify-content:center; }
.ts-v50b28-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:9px; min-height: 40px; }
.ts-v50b28-price strong { color: var(--ts-foreground); font-size: 28px; }
.ts-v50b28-price del { color:#94a3b8; font-weight:800; }
.ts-v50b28-price em { color:#0f7c93; background: rgba(35,187,231,.12); border-radius:999px; padding:6px 10px; font-size:12px; font-style:normal; font-weight:950; }
.ts-packages--v50b28 .ts-white-card, .ts-promoted-packages .ts-white-card { margin-bottom: 30px; }
.ts-v50b26-packages-hero { display:grid; grid-template-columns: auto minmax(0,1fr) auto; align-items:center; gap: 28px; padding: clamp(26px,3vw,42px); }
.ts-v50b26-packages-hero h1 { margin:0 0 8px; font-size: clamp(32px,4vw,58px); line-height:.95; letter-spacing:-.045em; color: var(--ts-foreground); }
.ts-v50b26-packages-hero p { margin:0; max-width: 820px; color: var(--ts-muted); line-height:1.6; }
.ts-package-access-table, .ts-v50b28-package-table { overflow:hidden; border-radius: 22px; }
.ts-package-access-table tbody tr:nth-child(even) td { background: rgba(234,248,254,.42); }
.ts-package-access-table tbody td:nth-child(3), .ts-package-access-table thead th:nth-child(3) { background: rgba(35,187,231,.10); }
.ts-package-access-table tbody tr:hover td { background: rgba(35,187,231,.16); }
.ts-promoted-hero { padding: clamp(34px,4vw,62px); background: linear-gradient(135deg,#093440,#13677f); color:#fff; }
.ts-promoted-hero h1 { color:#fff; margin: 10px 0 12px; font-size: clamp(42px,6vw,78px); line-height:.9; letter-spacing:-.055em; }
.ts-promoted-hero p { color: rgba(255,255,255,.82); max-width: 850px; font-size: 18px; line-height:1.65; }
.ts-v50b28-terms { padding: clamp(34px,4vw,62px); max-width: 1040px; margin: 40px auto; }
.ts-v50b28-terms h1 { color: var(--ts-foreground); font-size: clamp(42px,6vw,78px); line-height:.9; letter-spacing:-.055em; margin: 10px 0 24px; }
.ts-v50b28-terms h2 { color: var(--ts-foreground); margin: 32px 0 10px; font-size: 24px; }
.ts-v50b28-terms p { color: var(--ts-muted); line-height:1.75; font-size: 17px; }
.woocommerce .ts-container, .woocommerce-page .ts-container { width: var(--ts-container) !important; max-width: none; margin-inline:auto; }
.woocommerce-cart .entry-content, .woocommerce-checkout .entry-content, .woocommerce-account .entry-content { width: var(--ts-container) !important; margin: 40px auto; }
.woocommerce table.shop_table, .woocommerce form.checkout, .woocommerce .woocommerce-MyAccount-navigation, .woocommerce .woocommerce-MyAccount-content, .woocommerce .cart_totals, .woocommerce .woocommerce-order { border:1px solid var(--ts-border) !important; border-radius: 28px !important; background:#fff; box-shadow: var(--ts-shadow-soft); padding: 24px; }
.woocommerce table.shop_table th { background: var(--ts-soft); color: var(--ts-foreground); }
.woocommerce table.shop_table td { border-top:1px solid rgba(217,234,241,.9) !important; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce .button.alt { border-radius:999px !important; background: var(--ts-accent) !important; color:#fff !important; border:0 !important; padding: 14px 24px !important; font-weight:950 !important; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce .button.alt:hover { background: var(--ts-primary-dark) !important; color:#fff !important; }
.woocommerce input.input-text, .woocommerce textarea, .woocommerce select { border:1px solid var(--ts-border) !important; border-radius: 16px !important; padding: 13px 15px !important; background:#fbfdff; }
.woocommerce .col2-set { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.woocommerce .woocommerce-info, .woocommerce .woocommerce-message, .woocommerce .woocommerce-error { border-radius: 22px; border-top:0; background: var(--ts-soft); color: var(--ts-foreground); }
.ts-currency-menu, .ts-currency-dropdown { scrollbar-width: thin; scrollbar-color: var(--ts-accent) rgba(234,248,254,.9); }
.ts-currency-menu::-webkit-scrollbar, .ts-currency-dropdown::-webkit-scrollbar { width: 8px; }
.ts-currency-menu::-webkit-scrollbar-track, .ts-currency-dropdown::-webkit-scrollbar-track { background: rgba(234,248,254,.9); border-radius:999px; }
.ts-currency-menu::-webkit-scrollbar-thumb, .ts-currency-dropdown::-webkit-scrollbar-thumb { background: linear-gradient(180deg,var(--ts-accent),#13677f); border-radius:999px; }
@media (max-width:1180px) { .ts-v50b28-promo-products { grid-template-columns: repeat(2,minmax(0,1fr)); } .ts-early-offer, .ts-v50b26-packages-hero { grid-template-columns: 1fr; } }
@media (max-width:860px) { .ts-v50b28-product-grid, .ts-v50b28-promo-products { grid-template-columns: 1fr; } .woocommerce .col2-set { grid-template-columns:1fr; } }
.ts-woocommerce-page { padding: 48px 0 80px; }
.ts-page-hero--commerce { margin-bottom: 28px; }
.ts-woocommerce-shell { padding: clamp(22px,3vw,38px); }

/* TuSpot EU v5.0 beta.29 — single place public profile and catalog card polish */
.ts-place-profile-banner--v50b29 {
  min-height: clamp(420px, 42vw, 620px);
  margin-top: 30px;
  margin-bottom: 28px;
  border-radius: 34px;
  background-image: linear-gradient(90deg, rgba(3,22,38,.68), rgba(3,22,38,.18) 52%, rgba(3,22,38,.34)), var(--ts-place-banner-image) !important;
  background-size: cover !important;
  background-position: center !important;
  display: block !important;
  overflow: hidden;
}
.ts-place-profile-banner--v50b29::before { display: none !important; }
.ts-v50b29-hero-layer { position: relative; min-height: inherit; padding: clamp(28px, 4vw, 58px); display: grid; align-items: end; color: #fff; }
.ts-v50b29-hero-actions { position: absolute; top: 28px; right: 28px; display: flex; gap: 10px; z-index: 2; }
.ts-v50b29-action,.ts-v50b29-circle { border: 0; border-radius: 999px; background: rgba(255,255,255,.94); color: #093440; box-shadow: 0 14px 34px rgba(3,22,38,.18); font-weight: 950; }
.ts-v50b29-action { min-height: 46px; padding: 0 18px; }
.ts-v50b29-circle { width: 52px; height: 52px; display: grid; place-items: center; font-size: 24px; }
.ts-v50b29-hero-content { max-width: 820px; }
.ts-v50b29-crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 22px; font-size: 13px; font-weight: 900; color: rgba(255,255,255,.84); }
.ts-v50b29-crumbs a { color: #fff; text-decoration: none; }
.ts-v50b29-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.ts-v50b29-badges span { display: inline-flex; align-items: center; min-height: 34px; padding: 7px 13px; border-radius: 999px; background: rgba(255,255,255,.88); color: #093440; font-weight: 950; box-shadow: 0 10px 22px rgba(3,22,38,.14); }
.ts-v50b29-badges .is-featured { background: linear-gradient(135deg, #33bf8a, #19a86f); color: #fff; }
.ts-v50b29-hero-content h1 { color: #fff; font-family: var(--ts-font-display); font-size: clamp(46px, 6vw, 88px); line-height: .88; letter-spacing: -.06em; margin: 0 0 18px; text-shadow: 0 16px 40px rgba(0,0,0,.22); max-width: 900px; }
.ts-v50b29-hero-content p { max-width: 740px; color: rgba(255,255,255,.92); font-weight: 800; font-size: clamp(17px, 1.35vw, 22px); line-height: 1.52; text-shadow: 0 12px 34px rgba(0,0,0,.24); }
.ts-v50b29-hero-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.ts-v50b29-place-logo { position: absolute; right: clamp(28px, 4vw, 58px); bottom: clamp(28px, 4vw, 58px); width: 118px; height: 118px; border-radius: 28px; background: #fff; box-shadow: 0 18px 44px rgba(3,22,38,.24); display: grid; place-items: center; padding: 14px; }
.ts-v50b29-place-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.ts-detail-grid--v50b29 { grid-template-columns: minmax(0, 1fr) minmax(330px, 390px); gap: 28px; align-items: start; }
.ts-place-main-content--v50b29 { display: grid; gap: 24px; min-width: 0; }
.ts-place-sidebar--v50b29 { position: sticky; top: calc(var(--ts-sticky-offset, 96px)); align-self: start; display: grid; gap: 18px; z-index: 5; }
.admin-bar .ts-place-sidebar--v50b29 { top: 126px; }
.ts-v50b29-featured-notice { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border: 1px solid rgba(55,190,126,.28); border-radius: 20px; background: linear-gradient(135deg, #f3fff7, #fff); box-shadow: 0 12px 28px rgba(47,157,100,.06); color: #22553b; font-weight: 900; }
.ts-v50b29-featured-notice span { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 999px; background: #31b87a; color: #fff; text-transform: uppercase; letter-spacing: .08em; font-size: 12px; }
.ts-v50b29-signals { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.2fr); gap: 24px; padding: 30px; background: linear-gradient(135deg, #eaf8fe, #f9fdff) !important; }
.ts-v50b29-signals h2,.ts-v50b29-description h2,.ts-v50b29-section-head h2 { margin: 4px 0 8px; font-family: var(--ts-font-display); color: #093440; letter-spacing: -.04em; }
.ts-v50b29-signals p { color: #587184; font-weight: 750; line-height: 1.55; margin: 0; }
.ts-v50b29-signal-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.ts-v50b29-signal-grid article { padding: 16px; border-radius: 18px; background: #fff; border: 1px solid rgba(35,187,231,.20); box-shadow: 0 12px 28px rgba(9,52,64,.05); }
.ts-v50b29-signal-grid b { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: #23bbe7; color: #fff; margin-bottom: 12px; }
.ts-v50b29-signal-grid strong { display: block; color: #093440; font-weight: 950; }
.ts-v50b29-signal-grid span { display: block; color: #5d7485; font-weight: 750; line-height: 1.35; font-size: .92rem; margin-top: 3px; }
.ts-v50b29-intro-stack { display: grid; gap: 14px; }
.ts-v50b29-chip-row,.ts-v50b29-status-row,.ts-v50b29-card-chips { display: flex; flex-wrap: wrap; gap: 9px; }
.ts-v50b29-chip-row span,.ts-v50b29-card-chips span { display: inline-flex; align-items: center; padding: 9px 14px; border-radius: 999px; background: #eaf8fe; border: 1px solid rgba(35,187,231,.22); color: #13677f; font-weight: 950; }
.ts-v50b29-rating-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-weight: 900; color: #6a7c87; }
.ts-v50b29-rating-line > span { color: #83ddb9; letter-spacing: 2px; }
.ts-v50b29-rating-line strong { color: #093440; }
.ts-v50b29-rating-line em { font-style: normal; }
.ts-v50b29-short-copy { color: #405d6f; font-weight: 750; line-height: 1.65; margin: 0; font-size: 17px; }
.ts-v50b29-location-bar { display: flex; align-items: center; gap: 12px; border-radius: 18px; background: linear-gradient(135deg,#eaf8fe,#fff); border: 1px solid rgba(35,187,231,.25); padding: 12px; }
.ts-v50b29-location-bar span { flex: 1; color: #517082; font-weight: 850; }
.ts-v50b29-location-bar a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 16px; border-radius: 999px; background: #fff; border: 1px solid rgba(35,187,231,.28); color: #093440; font-weight: 950; text-decoration: none; }
.ts-v50b29-location-bar a:last-child { background: #23bbe7; color: #fff; border-color: #23bbe7; }
.ts-v50b29-trust-center,.ts-v50b29-description,.ts-v50b29-gallery,.ts-v50b29-map { padding: 28px; }
.ts-v50b29-section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.ts-v50b29-section-head span,.ts-v50b29-section-head a { color: #13677f; font-weight: 900; text-decoration: none; }
.ts-v50b29-trust-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.ts-v50b29-trust-grid article { display: grid; grid-template-columns: 46px minmax(0,1fr); column-gap: 12px; align-items: center; padding: 14px; border-radius: 18px; border: 1px solid rgba(35,187,231,.18); background: #f8fdff; }
.ts-v50b29-trust-grid b { grid-row: span 2; width: 46px; height: 46px; border-radius: 16px; display: grid; place-items: center; background: #eaf8fe; color: #0b758d; }
.ts-v50b29-trust-grid strong { color: #093440; font-weight: 950; }
.ts-v50b29-trust-grid span { color: #5a7182; font-weight: 750; font-size: .9rem; }
.ts-v50b29-rich-copy { color: #516c7d; font-weight: 700; line-height: 1.72; max-width: 980px; }
.ts-v50b29-gallery-strip { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 14px; }
.ts-v50b29-gallery-strip img { width: 100%; height: 132px; object-fit: cover; border-radius: 18px; box-shadow: 0 14px 28px rgba(9,52,64,.08); }
.ts-v50b29-map iframe { width: 100%; min-height: 380px; border: 0; border-radius: 22px; overflow: hidden; display: block; }
.ts-v50b29-map-coords { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 12px; }
.ts-v50b29-map-coords span,.ts-v50b29-map-coords a { border-radius: 14px; background: #f6fbfe; border: 1px solid rgba(35,187,231,.18); min-height: 44px; display: flex; align-items: center; padding: 0 14px; color: #526d7d; font-weight: 850; text-decoration: none; }
.ts-v50b29-info-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.ts-v50b29-info-grid .ts-white-card { padding: 28px; }
.ts-v50b29-info-grid h3 { display: flex; gap: 12px; align-items: center; margin: 0 0 18px; color: #093440; font-family: var(--ts-font-display); font-size: 24px; letter-spacing: -.03em; }
.ts-v50b29-info-grid h3 span { width: 42px; height: 42px; border-radius: 15px; display: grid; place-items: center; background: #eaf8fe; color: #0b758d; }
.ts-v50b29-info-grid ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; color: #587184; font-weight: 800; }
.ts-v50b29-info-grid p { color: #587184; font-weight: 750; line-height: 1.55; }
.ts-v50b29-sidebar-booking { padding: 26px; background: linear-gradient(180deg,#fff,#f3fbff) !important; }
.ts-v50b29-sidebar-booking > strong { display: block; font-family: var(--ts-font-display); font-size: 44px; line-height: 1; color: #093440; letter-spacing: -.04em; margin: 8px 0; }
.ts-v50b29-sidebar-booking p { color: #587184; font-weight: 750; line-height: 1.55; }
.ts-v50b29-sidebar-actions { display: grid; gap: 10px; margin-top: 16px; }
.ts-v50b29-sidebar-actions .ts-btn { width: 100%; justify-content: center; }
.ts-btn--dark { background: #064aa6 !important; color: #fff !important; border-color: #064aa6 !important; }
.ts-enquiry-card--v50b29 { padding: 24px; }
.ts-enquiry-card--v50b29 h2 { margin: 6px 0 10px; font-family: var(--ts-font-display); font-size: 30px; line-height: 1; letter-spacing: -.035em; color: #093440; }
.ts-enquiry-card--v50b29 .ts-form-grid { gap: 10px; }
.ts-enquiry-card--v50b29 .ts-field { margin-bottom: 8px; }
.ts-enquiry-card--v50b29 .ts-input,.ts-enquiry-card--v50b29 input,.ts-enquiry-card--v50b29 textarea { min-height: 44px; }
.ts-v50b29-owner-profile-card { padding: 24px; }
.ts-v50b29-owner-profile-card h3 { margin: 6px 0 16px; color: #093440; font-family: var(--ts-font-display); font-size: 30px; line-height: 1; letter-spacing: -.035em; }
.ts-v50b29-owner-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.ts-v50b29-owner-stats span { border-radius: 16px; border: 1px solid rgba(35,187,231,.22); background: #eaf8fe; padding: 14px; color: #5a7182; text-transform: uppercase; letter-spacing: .04em; font-size: 11px; font-weight: 900; }
.ts-v50b29-owner-stats strong { display: block; font-size: 28px; color: #093440; letter-spacing: -.03em; }
.ts-v50b29-price-scale { margin-top: 14px; padding: 16px; border: 1px solid rgba(35,187,231,.2); border-radius: 18px; background: #f8fdff; }
.ts-v50b29-price-scale strong { color: #093440; display: block; }
.ts-v50b29-price-scale em { display: inline-flex; border-radius: 999px; background: #eaf8fe; padding: 5px 9px; color: #13677f; font-style: normal; font-weight: 900; margin: 8px 0; }
.ts-v50b29-price-scale div { display: grid; grid-template-columns: repeat(5,1fr); gap: 6px; }
.ts-v50b29-price-scale div span { height: 7px; border-radius: 999px; background: #d9eaf1; }
.ts-v50b29-price-scale div span.is-active { background: #f4bc43; }
.ts-v50b29-price-scale small { display: block; color: #6c7f8c; font-weight: 750; margin-top: 7px; }
.ts-place-card--v50b29 { border-radius: 34px; overflow: hidden; background: linear-gradient(180deg,#fff,#f8fff9); border: 1px solid rgba(35,187,231,.28); box-shadow: 0 22px 55px rgba(9,52,64,.08); }
.ts-place-card--v50b29.is-featured-place { border-color: rgba(43,190,127,.42); box-shadow: 0 22px 60px rgba(43,190,127,.12); }
.ts-v50b29-card-media { position: relative; min-height: 280px; overflow: hidden; border-radius: 30px 30px 0 0; }
.ts-v50b29-card-media img { width: 100%; height: 100%; min-height: 280px; object-fit: cover; display: block; transition: transform .35s ease; }
.ts-place-card--v50b29:hover .ts-v50b29-card-media img { transform: scale(1.035); }
.ts-v50b29-card-media::after { content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(3,22,38,.08), rgba(3,22,38,.05) 50%, rgba(3,22,38,.18)); pointer-events:none; }
.ts-v50b29-card-top { position: absolute; z-index: 2; top: 18px; left: 18px; right: 18px; display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.ts-v50b29-sponsored { display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; background: linear-gradient(135deg,#36bd82,#20a96d); color:#fff; padding: 11px 17px; font-weight: 950; text-transform: uppercase; letter-spacing: .06em; box-shadow: 0 12px 26px rgba(33,156,100,.24); }
.ts-v50b29-sponsored--soft { background: rgba(255,255,255,.92); color:#093440; }
.ts-v50b29-fav { position: static !important; width: 54px !important; height: 54px !important; font-size: 27px !important; background: #fff !important; color: #093440 !important; box-shadow: 0 12px 25px rgba(3,22,38,.15); }
.ts-v50b29-card-bottom-badges { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 20px; display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.ts-v50b29-card-bottom-badges span { display: inline-flex; align-items: center; min-height: 45px; border-radius: 999px; padding: 0 18px; background: #23bbe7; color: #fff; font-weight: 950; }
.ts-v50b29-card-bottom-badges span:last-child { margin-left: auto; background: rgba(255,255,255,.92); color: #093440; }
.ts-v50b29-card-body { padding: 24px; display: grid; gap: 14px; }
.ts-v50b29-card-body .ts-place-title a { color: inherit; text-decoration: none; }
.ts-v50b29-check { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #23bbe7; color: #fff; font-weight: 950; flex: 0 0 auto; }
.ts-v50b29-card-body .ts-location { margin: 0; font-weight: 850; font-size: 16px; }
.ts-v50b29-card-body .ts-card-intro { margin: 0; color: #587184; font-size: 16px; line-height: 1.5; }
.ts-v50b29-review-price { display: grid; gap: 4px; margin-top: 4px; }
.ts-v50b29-card-rating { color: #7bdfba; font-weight: 950; }
.ts-v50b29-review-price strong { color: #23bbe7; font-family: var(--ts-font-display); font-size: 32px; line-height: 1; letter-spacing: -.035em; }
.ts-v50b29-review-price em { font-style: normal; color: #687b88; font-weight: 850; }
.ts-v50b29-status-row span { border-radius: 999px; border: 1px solid rgba(244,172,54,.32); background: #fff8eb; color: #7b4d02; padding: 9px 12px; font-size: 13px; font-weight: 950; }
.ts-v50b29-status-row span:last-child { border-color: rgba(35,187,231,.24); background: #eaf8fe; color: #0b758d; }
.ts-v50b29-card-actions { display: grid; grid-template-columns: minmax(0,1fr) 58px; gap: 12px; margin-top: 10px; }
.ts-v50b29-card-actions .ts-btn { min-height: 58px; justify-content: center; }
.ts-v50b29-plan-btn { min-height: 58px; border-radius: 20px; border: 1px solid rgba(35,187,231,.28); background: #fff; color: #093440; font-weight: 950; font-size: 16px; }
@media (max-width: 1180px) {
  .ts-detail-grid--v50b29 { grid-template-columns: 1fr; }
  .ts-place-sidebar--v50b29 { position: static; }
  .ts-v50b29-place-logo { position: static; margin-top: 22px; }
  .ts-v50b29-trust-grid,.ts-v50b29-info-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .ts-v50b29-hero-layer { padding: 24px; }
  .ts-v50b29-hero-actions { position: static; justify-content: flex-end; margin-bottom: 80px; }
  .ts-v50b29-hero-content h1 { font-size: clamp(42px, 14vw, 64px); }
  .ts-v50b29-signals { grid-template-columns: 1fr; padding: 22px; }
  .ts-v50b29-signal-grid,.ts-v50b29-trust-grid,.ts-v50b29-info-grid,.ts-v50b29-map-coords { grid-template-columns: 1fr; }
  .ts-v50b29-gallery-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ts-v50b29-location-bar { display: grid; }
  .ts-v50b29-card-media,.ts-v50b29-card-media img { min-height: 230px; }
}


/* TuSpot EU v5.0 beta.30 — catalog card, compare tooltip and More dropdown polish */
.ts-results-grid.ts-results-grid--catalog-cards {
  margin-top: 45px !important;
}

.ts-place-card.ts-place-card--v50b29 {
  background: #ffffff !important;
}
.ts-place-card.ts-place-card--v50b29.is-featured-place,
.ts-place-card.ts-place-card--v50b29.is-sponsored-place,
.ts-place-card.ts-place-card--v50b29.is-promoted-place {
  background: linear-gradient(180deg, #ffffff 0%, #f2fbff 100%) !important;
  border-color: rgba(35,187,231,.42) !important;
  box-shadow: 0 24px 60px rgba(35,187,231,.12), 0 8px 24px rgba(9,52,64,.06) !important;
}
.ts-place-card.ts-place-card--v50b29:not(.is-featured-place):not(.is-sponsored-place):not(.is-promoted-place) {
  border-color: rgba(35,187,231,.22) !important;
  box-shadow: 0 18px 45px rgba(9,52,64,.065) !important;
}

.ts-v50b30-compare-btn {
  position: relative;
}
.ts-v50b30-compare-btn::after {
  content: attr(data-ts-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 10px);
  transform: translateX(-50%) translateY(4px);
  min-width: max-content;
  padding: 8px 11px;
  border-radius: 999px;
  background: #08213d;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  box-shadow: 0 12px 30px rgba(8,33,61,.22);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  z-index: 20;
}
.ts-v50b30-compare-btn::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(100% + 4px);
  transform: translateX(-50%) translateY(4px);
  border: 6px solid transparent;
  border-top-color: #08213d;
  opacity: 0;
  visibility: hidden;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  z-index: 19;
}
.ts-v50b30-compare-btn:hover::after,
.ts-v50b30-compare-btn:focus-visible::after,
.ts-v50b30-compare-btn:hover::before,
.ts-v50b30-compare-btn:focus-visible::before {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.ts-v50b30-plan-btn,
.ts-v50b29-plan-btn.ts-v50b30-plan-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #f7fcff !important;
  color: #093440 !important;
  border-color: rgba(35,187,231,.32) !important;
  font-size: 17px !important;
  letter-spacing: -.01em;
}
.ts-v50b30-plan-btn::before {
  content: "▣";
  font-size: 17px;
  color: #0b7c94;
  transform: translateY(-1px);
}
.ts-v50b30-plan-btn:hover,
.ts-v50b30-plan-btn:focus-visible {
  background: #eaf8fe !important;
  border-color: rgba(35,187,231,.58) !important;
  transform: translateY(-1px);
}

@media (min-width: 861px) {
  .ts-dropdown.ts-dropdown--more {
    min-width: 360px;
    padding: 18px;
    border-radius: 30px;
    background: rgba(255,255,255,.98);
    border: 1px solid rgba(35,187,231,.24);
    box-shadow: 0 24px 70px rgba(9,52,64,.16);
  }
  .ts-dropdown--more .ts-dropdown-group-label {
    display: block;
    margin: 12px 0 8px;
    padding: 12px 12px 7px;
    border-top: 1px solid rgba(35,187,231,.16);
    color: #08213d;
    font-size: 15px;
    line-height: 1;
    font-weight: 950;
    letter-spacing: .16em;
    text-transform: uppercase;
    opacity: 1;
  }
  .ts-dropdown--more .ts-dropdown-group-label:first-child {
    margin-top: 0;
    border-top: 0;
  }
  .ts-dropdown--more a {
    min-height: 44px;
    padding: 11px 14px;
    border-radius: 16px;
    color: #3e586b;
    font-size: 17px;
    line-height: 1.15;
    font-weight: 850;
    letter-spacing: -.018em;
  }
  .ts-dropdown--more a:hover,
  .ts-dropdown--more a:focus-visible {
    background: #eaf8fe;
    color: #093440;
    transform: translateX(2px);
  }
}

@media (max-width: 860px) {
  .ts-dropdown--more .ts-dropdown-group-label {
    color: #093440;
    opacity: 1;
    font-size: 13px;
    font-weight: 950;
  }
}


/* v5.0 beta.34: plan button text-only polish */
.ts-v50b29-plan-btn.ts-v50b30-plan-btn,
.ts-v50b30-plan-btn,
.ts-place-card .ts-v50b29-plan-btn,
.ts-place-card .ts-v50b30-plan-btn {
  width: 100% !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  padding: 16px 22px !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  letter-spacing: -.02em !important;
  color: #093440 !important;
  background: #f7fcff !important;
  border: 1px solid rgba(35,187,231,.34) !important;
  border-radius: 22px !important;
}
.ts-v50b30-plan-btn::before,
.ts-v50b29-plan-btn::before,
.ts-v50b29-plan-btn.ts-v50b30-plan-btn::before,
.ts-place-card .ts-v50b29-plan-btn::before,
.ts-place-card .ts-v50b30-plan-btn::before {
  content: none !important;
  display: none !important;
}
.ts-v50b29-plan-btn svg,
.ts-v50b30-plan-btn svg,
.ts-v50b29-plan-btn i,
.ts-v50b30-plan-btn i {
  display: none !important;
}
.ts-v50b29-plan-btn:hover,
.ts-v50b30-plan-btn:hover,
.ts-v50b29-plan-btn:focus-visible,
.ts-v50b30-plan-btn:focus-visible {
  background: #eaf8fe !important;
  border-color: rgba(35,187,231,.62) !important;
  transform: translateY(-1px);
}

/* v5.0 beta.35: planner button must remain text-only after save JS updates */
.ts-place-card .ts-v50b29-plan-btn,
.ts-place-card .ts-v50b30-plan-btn,
.ts-v50b29-plan-btn[data-ts-planner-button],
.ts-v50b30-plan-btn[data-ts-planner-button] {
  font-size: 17px !important;
  line-height: 1.1 !important;
  text-indent: 0 !important;
  overflow: visible !important;
  white-space: normal !important;
}
.ts-place-card .ts-v50b29-plan-btn::before,
.ts-place-card .ts-v50b30-plan-btn::before,
.ts-place-card .ts-v50b29-plan-btn::after,
.ts-place-card .ts-v50b30-plan-btn::after,
.ts-v50b29-plan-btn[data-ts-planner-button]::before,
.ts-v50b30-plan-btn[data-ts-planner-button]::before,
.ts-v50b29-plan-btn[data-ts-planner-button]::after,
.ts-v50b30-plan-btn[data-ts-planner-button]::after {
  content: none !important;
  display: none !important;
}

/* v5.0 beta.38: Add Place success modal */
.ts-v50b38-success-modal {
  position: fixed;
  inset: 0;
  z-index: 99990;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(7, 23, 38, .52);
  backdrop-filter: blur(8px);
}
.ts-v50b38-success-modal.is-visible { display: flex; }
.ts-v50b38-success-box {
  position: relative;
  width: min(720px, calc(100vw - 36px));
  border: 1px solid rgba(190, 235, 250, .95);
  border-radius: 34px;
  background: linear-gradient(135deg, #ffffff, #effbff);
  box-shadow: 0 30px 100px rgba(9, 52, 64, .24);
  padding: clamp(26px, 4vw, 48px);
  color: #093440;
}
.ts-v50b38-success-box h2 {
  margin: 14px 0 12px;
  font-size: clamp(30px, 4vw, 54px);
  line-height: .98;
  letter-spacing: -.05em;
  color: #092747;
}
.ts-v50b38-success-box p {
  margin: 0;
  max-width: 620px;
  color: #5f7483;
  font-size: 18px;
  line-height: 1.55;
}
.ts-v50b38-success-close {
  position: absolute;
  right: 18px;
  top: 18px;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(35, 187, 231, .28);
  background: #fff;
  color: #093440;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}
.ts-v50b38-success-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}
.ts-v50b38-success-actions .ts-btn {
  min-height: 54px;
  padding-inline: 24px;
}
.ts-v50b38-success-inline { margin-bottom: 28px !important; }
@media (max-width: 680px) {
  .ts-v50b38-success-actions { display: grid; }
  .ts-v50b38-success-actions .ts-btn { width: 100%; }
}

/* v5.0 beta.45: article archive, single article and social rail */
.ts-social-links{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--ts-primary)}
.ts-social-links a{color:inherit;text-decoration:none;border-radius:999px;transition:background .18s ease,color .18s ease,transform .18s ease}
.ts-social-links a:hover{color:var(--ts-accent);transform:translateY(-1px)}
.ts-social-title{font-weight:950;letter-spacing:.01em;color:var(--ts-primary)}
.ts-social-links--rail{position:fixed;right:28px;top:50%;z-index:60;transform:translateY(-50%) rotate(90deg);transform-origin:center;display:flex;gap:18px;align-items:center;font-size:13px;line-height:1;white-space:nowrap;color:#093440}
.ts-social-links--rail .ts-social-title::after{content:'—';margin-left:16px;color:#093440;opacity:.75}
.ts-social-links--footer{margin-top:18px;justify-content:flex-start;flex-wrap:wrap}
.ts-social-links--footer .ts-social-title{width:100%;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.78)}
.ts-site-footer .ts-social-links--footer a{background:rgba(255,255,255,.1);color:#fff;padding:7px 10px}
.ts-mobile-social-menu{display:none}
.ts-social-links--mobile{padding:14px 4px 4px;flex-wrap:wrap;border-top:1px solid rgba(9,52,64,.08);margin-top:8px}
.ts-social-links--mobile .ts-social-title{width:100%;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#607585}
.ts-social-links--mobile a{background:#eaf8fe;padding:8px 11px;color:#093440}
.ts-magazine-archive,.ts-article-single{padding:42px 0 80px;background:var(--ts-page-bg)}
.ts-mag-hero{min-height:300px;padding:64px clamp(28px,4vw,72px);display:flex;align-items:flex-end;justify-content:space-between;gap:28px;border-radius:34px!important;margin-bottom:24px;background:linear-gradient(135deg,#fff 0%,#f6fdff 62%,#eaf8fe 100%)}
.ts-breadcrumb-mini{display:flex;gap:10px;align-items:center;margin-bottom:18px;color:#7290a0;font-weight:900;font-size:13px}
.ts-breadcrumb-mini a{color:#7290a0;text-decoration:none}.ts-breadcrumb-mini a:hover{color:var(--ts-accent)}
.ts-mag-kicker,.ts-mag-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;background:#e2f8ff;color:#0b7792;padding:8px 13px;font-size:12px;line-height:1;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.ts-mag-hero h1{margin:18px 0 16px;max-width:780px;color:#093440;font-family:Outfit,Figtree,sans-serif;font-size:clamp(46px,5.4vw,88px);line-height:.9;letter-spacing:-.07em}
.ts-mag-hero p{max-width:720px;margin:0;color:#547081;font-size:20px;line-height:1.45;font-weight:800}
.ts-mag-search{padding:18px 20px!important;border-radius:28px!important;margin-bottom:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.ts-mag-search input[type="search"]{height:54px;border:1px solid #d9eaf1;border-radius:999px;padding:0 22px;font-size:15px;font-weight:700;color:#093440;background:#fff;outline:0}.ts-mag-search input[type="search"]:focus{border-color:var(--ts-accent);box-shadow:0 0 0 4px rgba(35,187,231,.12)}
.ts-mag-filter-pills{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}.ts-mag-filter-pills a{padding:8px 13px;border:1px solid #d9eaf1;border-radius:999px;background:#fff;color:#093440;text-decoration:none;font-size:12px;font-weight:950}.ts-mag-filter-pills a:hover{background:#eaf8fe;color:#0b7792}
.ts-mag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ts-mag-card{overflow:hidden;border:1px solid #d9eaf1;border-radius:28px;background:#fff;box-shadow:0 16px 45px rgba(9,52,64,.06)}
.ts-mag-card a{text-decoration:none}.ts-mag-card__media{position:relative;display:block;aspect-ratio:16/10;background:#eaf8fe;overflow:hidden}.ts-mag-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.ts-mag-card:hover .ts-mag-card__media img{transform:scale(1.035)}
.ts-mag-read{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-radius:999px;padding:8px 12px;color:#093440;font-size:12px;font-weight:950}.ts-mag-card__body{padding:24px}.ts-mag-card__body h2{margin:16px 0 12px;color:#093440;font-family:Outfit,Figtree,sans-serif;font-size:28px;line-height:1;letter-spacing:-.04em}.ts-mag-card__body h2 a{color:inherit}.ts-mag-card__body p{margin:0;color:#577184;font-size:15px;line-height:1.55;font-weight:700}.ts-mag-card__bottom{border-top:1px solid #e6f0f4;margin-top:20px;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.ts-mag-card__bottom time{color:#7890a0;font-weight:900;font-size:13px}.ts-btn--dark{background:#093440!important;color:#fff!important;border-color:#093440!important;padding:10px 15px!important;font-size:12px!important}.ts-mag-card--featured{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.ts-mag-card--featured .ts-mag-card__media{aspect-ratio:auto;height:100%;min-height:390px}.ts-mag-card--featured .ts-mag-card__body{padding:34px}.ts-mag-card--featured .ts-mag-card__body h2{font-size:clamp(38px,3.6vw,58px);letter-spacing:-.065em}.ts-mag-pagination{margin-top:28px}.ts-mag-pagination .nav-links{display:flex;justify-content:center;gap:8px}.ts-mag-pagination a,.ts-mag-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:999px;background:#fff;border:1px solid #d9eaf1;color:#093440;text-decoration:none;font-weight:900}.ts-mag-pagination .current{background:var(--ts-accent);color:#fff;border-color:var(--ts-accent)}
.ts-article-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:26px;margin-bottom:28px;align-items:stretch}.ts-article-hero-card{padding:56px clamp(28px,4vw,64px)!important;border-radius:34px!important;background:linear-gradient(135deg,#fff 0%,#f6fdff 70%,#dff6ff 100%)}.ts-article-meta-pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.ts-article-meta-pills span,.ts-article-meta-pills time{border:1px solid #d9eaf1;background:#fff;border-radius:999px;padding:9px 13px;color:#093440;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}.ts-article-hero-card h1{margin:0 0 28px;color:#093440;font-family:Outfit,Figtree,sans-serif;font-size:clamp(46px,5.2vw,82px);line-height:.92;letter-spacing:-.075em}.ts-article-author-row{border-top:1px solid #d9eaf1;padding-top:24px;display:flex;align-items:center;gap:14px;color:#093440}.ts-article-share{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}.ts-article-share a{border:1px solid #d9eaf1;border-radius:999px;padding:9px 13px;background:#fff;color:#093440;text-decoration:none;font-size:12px;font-weight:900}.ts-article-share a:hover{background:#eaf8fe;color:#0b7792}.ts-article-hero-image{margin:0;border-radius:34px;overflow:hidden;min-height:420px;box-shadow:0 20px 60px rgba(9,52,64,.08)}.ts-article-hero-image img{width:100%;height:100%;object-fit:cover;display:block}.ts-article-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.55fr);gap:28px;align-items:start}.ts-article-content{padding:clamp(36px,4vw,70px)!important;border-radius:34px!important;color:#293f4e}.ts-article-content>*{max-width:820px;margin-left:auto;margin-right:auto}.ts-article-content h2,.ts-article-content h3{color:#093440;font-family:Outfit,Figtree,sans-serif;letter-spacing:-.045em;line-height:1.05}.ts-article-content h2{font-size:clamp(34px,3vw,52px);margin-top:1.45em}.ts-article-content h3{font-size:clamp(26px,2.2vw,36px);margin-top:1.35em}.ts-article-content p,.ts-article-content li{font-size:18px;line-height:1.78;color:#334e5f;font-weight:600}.ts-article-content a{color:#0b7792;font-weight:900}.ts-article-content img{border-radius:24px}.ts-article-tags{margin-top:34px;padding-top:22px;border-top:1px solid #d9eaf1;display:flex;gap:8px;flex-wrap:wrap}.ts-article-tags a,.ts-article-tags span{border-radius:999px;background:#eaf8fe;padding:8px 12px;color:#093440;text-decoration:none;font-weight:900;font-size:12px}.ts-article-sidebar{position:sticky;top:108px;display:grid;gap:18px}.ts-article-side-tabs{display:grid;grid-template-columns:1fr 1fr;padding:7px!important;border-radius:999px!important}.ts-article-side-tabs a{display:flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 16px;color:#607585;text-decoration:none;font-weight:950}.ts-article-side-tabs a.is-active{background:var(--ts-accent);color:#fff}.ts-article-side-card{padding:24px!important;border-radius:28px!important}.ts-article-side-card h2{margin:0 0 18px;color:#093440;font-family:Outfit,Figtree,sans-serif;font-size:26px;letter-spacing:-.04em}.ts-side-article-list,.ts-side-place-list{display:grid;gap:12px}.ts-side-article-list a,.ts-side-place-list a{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;align-items:center;padding:10px;border:1px solid #d9eaf1;border-radius:20px;background:#fff;color:#093440;text-decoration:none}.ts-side-article-list img,.ts-side-place-list img{width:82px;height:72px;object-fit:cover;border-radius:14px}.ts-side-article-list span,.ts-side-place-list span{display:grid;gap:4px}.ts-side-article-list time,.ts-side-place-list small{color:#7890a0;font-size:12px;font-weight:900}.ts-side-article-list strong,.ts-side-place-list strong{font-size:14px;line-height:1.2}.ts-side-article-list em,.ts-side-place-list em{font-style:normal;color:#0b7792;font-size:12px;font-weight:950}.ts-side-more{width:100%;margin-top:16px!important;justify-content:center!important}.ts-article-places-card{background:linear-gradient(135deg,#fff,#f2fcff)!important}.ts-article-newsletter{padding:28px;border-radius:28px;background:#093440;color:#fff;box-shadow:0 20px 60px rgba(9,52,64,.13)}.ts-article-newsletter h2{margin:14px 0 10px;font-family:Outfit,Figtree,sans-serif;font-size:28px;letter-spacing:-.04em;color:#fff}.ts-article-newsletter p{color:rgba(255,255,255,.78);font-weight:700}.ts-article-newsletter form{display:grid;gap:10px}.ts-article-newsletter input{height:52px;border:0;border-radius:14px;background:rgba(255,255,255,.12);color:#fff;padding:0 16px;font-weight:800}.ts-article-newsletter input::placeholder{color:rgba(255,255,255,.55)}.ts-comments-card{margin-top:28px;padding:34px!important;border-radius:28px!important}.ts-container-narrow{max-width:900px;margin-left:0}.ts-page-links{display:flex;gap:8px;margin-top:24px}.ts-page-links a,.ts-page-links span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:999px;background:#eaf8fe;color:#093440;text-decoration:none;font-weight:900}
@media(max-width:1280px){.ts-social-links--rail{display:none}.ts-mag-card--featured{grid-column:span 1;display:block}.ts-mag-card--featured .ts-mag-card__media{min-height:0;aspect-ratio:16/10}.ts-mag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-article-hero-grid,.ts-article-layout{grid-template-columns:1fr}.ts-article-sidebar{position:relative;top:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.ts-article-side-tabs,.ts-article-newsletter{grid-column:1/-1}}
@media(max-width:860px){.ts-mobile-social-menu{display:block}.ts-magazine-archive,.ts-article-single{padding:24px 0 56px}.ts-mag-hero{min-height:0;padding:34px 24px;align-items:flex-start;flex-direction:column;border-radius:26px!important}.ts-mag-hero h1,.ts-article-hero-card h1{font-size:44px;letter-spacing:-.06em}.ts-mag-hero p{font-size:17px}.ts-mag-search{grid-template-columns:1fr}.ts-mag-search .ts-btn{width:100%;justify-content:center}.ts-mag-grid{grid-template-columns:1fr}.ts-article-hero-grid{gap:18px}.ts-article-hero-card{padding:32px 24px!important;border-radius:26px!important}.ts-article-hero-image{min-height:300px;border-radius:26px}.ts-article-author-row{align-items:flex-start;flex-direction:column}.ts-article-share{margin-left:0}.ts-article-content{padding:30px 22px!important;border-radius:26px!important}.ts-article-content>*{max-width:none}.ts-article-content p,.ts-article-content li{font-size:16px;line-height:1.72}.ts-article-sidebar{grid-template-columns:1fr}.ts-comments-card{padding:26px 20px!important}.ts-container-narrow{max-width:none}}


/* v5.0 beta.46: clean auth page and add-place page shells */
.ts-auth-page-shell{padding:clamp(34px,5vw,76px) 0 clamp(70px,7vw,110px)}
.ts-auth-page-shell .ts-v50b44-auth{margin-top:0;margin-bottom:0}
.ts-auth-page-shell .ts-container.ts-v50b44-auth{width:var(--ts-container);max-width:none}
.ts-add-place-page-shell{padding-bottom:80px}
.ts-page-hero--template-5 .ts-page-hero-copy{max-width:960px}
@media(max-width:860px){.ts-auth-page-shell{padding:22px 0 72px}.ts-add-place-page-shell{padding-bottom:64px}}

.ts-page-hero--no-bento{display:block}.ts-page-hero--no-bento .ts-page-hero-copy{max-width:980px}


/* v5.0 beta.47: auth page hardening and add-place hero removal fallback */
body.ts-login-page .ts-auth-page-shell{width:min(1040px,calc(100vw - 32px));max-width:1040px;margin-inline:auto;padding:clamp(28px,4vw,58px) 0 clamp(70px,7vw,110px);overflow:visible}
body.ts-login-page .ts-auth-page-shell .ts-container.ts-v50b44-auth{width:100%!important;max-width:100%!important;margin:0!important;display:block!important;overflow:visible!important}
body.ts-login-page .ts-v50b44-auth-card{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important;padding:clamp(22px,3vw,34px)!important}
body.ts-login-page .ts-v50b44-auth-side{display:none!important}
body.ts-login-page .ts-v50b44-panel,body.ts-login-page .ts-v50b44-panel *{min-width:0}
body.ts-login-page .ts-v50b44-panel.is-active{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:15px!important;width:100%!important;max-width:100%!important}
body.ts-login-page .ts-v50b44-panel h1{font-size:clamp(42px,6vw,76px)!important;line-height:.9!important;overflow-wrap:anywhere}
body.ts-login-page .ts-v50b44-auth-row,body.ts-login-page .ts-v50b44-selected-package{flex-wrap:wrap}
body.ts-login-page .ts-v50b44-account-type{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.ts-login-page .ts-v50b44-bottom-switch{flex-wrap:wrap;text-align:center}
body.ts-login-page .ts-v50b44-package-modal{max-width:100vw;overflow:auto}
body.ts-add-place-page .ts-breadcrumbs,body.ts-add-place-page .ts-page-hero{display:none!important}
body.ts-add-place-page .ts-add-place-page-shell{padding-top:clamp(28px,4vw,56px);padding-bottom:80px}
@media(max-width:760px){body.ts-login-page .ts-auth-page-shell{width:min(100% - 24px,760px);padding-top:20px}body.ts-login-page .ts-v50b44-auth-card{padding:18px!important;border-radius:24px!important}body.ts-login-page .ts-v50b44-panel h1{font-size:clamp(34px,13vw,52px)!important}body.ts-login-page .ts-v50b44-tabs{border-radius:18px;padding:6px}body.ts-login-page .ts-v50b44-tabs button{padding:12px 8px}body.ts-login-page .ts-v50b44-account-type{grid-template-columns:1fr!important}body.ts-login-page .ts-v50b44-selected-package{display:grid;grid-template-columns:1fr}body.ts-login-page .ts-v50b44-auth-row{align-items:flex-start}body.ts-add-place-page .ts-add-place-page-shell{padding-top:22px;padding-bottom:64px}}


/* v5.0 beta.49: login/register hard overflow recovery */
body.ts-login-page,body.ts-login-page-v49{overflow-x:hidden!important;background:var(--ts-page-bg,#F6FBFE)!important}
body.ts-login-page .site-main,body.ts-login-page-v49 .site-main{width:100%!important;max-width:none!important;overflow-x:hidden!important}
body.ts-login-page .ts-site-header .ts-container.ts-header-inner,body.ts-login-page-v49 .ts-site-header .ts-container.ts-header-inner{width:min(1120px,calc(100vw - 40px))!important;max-width:1120px!important;min-width:0!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
body.ts-login-page .ts-auth-page-shell,body.ts-login-page-v49 .ts-auth-page-shell,.ts-auth-page-shell--clean{width:min(760px,calc(100vw - 32px))!important;max-width:760px!important;min-width:0!important;margin:clamp(24px,4vw,56px) auto clamp(72px,7vw,110px)!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important}
body.ts-login-page .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-login-page-v49 .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--clean .ts-container.ts-v50b44-auth{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important}
body.ts-login-page .ts-v50b44-auth-side,body.ts-login-page-v49 .ts-v50b44-auth-side,.ts-auth-page-shell--clean .ts-v50b44-auth-side{display:none!important}
body.ts-login-page .ts-v50b44-auth-card,body.ts-login-page-v49 .ts-v50b44-auth-card,.ts-auth-page-shell--clean .ts-v50b44-auth-card{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important;border-radius:28px!important;padding:clamp(20px,3vw,34px)!important}
body.ts-login-page .ts-v50b44-auth-card *,body.ts-login-page-v49 .ts-v50b44-auth-card *,.ts-auth-page-shell--clean .ts-v50b44-auth-card *{box-sizing:border-box;max-width:100%;min-width:0}
body.ts-login-page .ts-v50b44-tabs,body.ts-login-page-v49 .ts-v50b44-tabs,.ts-auth-page-shell--clean .ts-v50b44-tabs{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;min-width:0!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-tabs button,body.ts-login-page-v49 .ts-v50b44-tabs button,.ts-auth-page-shell--clean .ts-v50b44-tabs button{min-width:0!important;max-width:100%!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.ts-login-page .ts-v50b44-panel,body.ts-login-page-v49 .ts-v50b44-panel,.ts-auth-page-shell--clean .ts-v50b44-panel{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-panel.is-active,body.ts-login-page-v49 .ts-v50b44-panel.is-active,.ts-auth-page-shell--clean .ts-v50b44-panel.is-active{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
body.ts-login-page .ts-v50b44-panel h1,body.ts-login-page-v49 .ts-v50b44-panel h1,.ts-auth-page-shell--clean .ts-v50b44-panel h1{font-size:clamp(34px,5.2vw,58px)!important;line-height:.95!important;letter-spacing:-.06em!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;margin:.08rem 0 .5rem!important}
body.ts-login-page .ts-v50b44-panel p,body.ts-login-page-v49 .ts-v50b44-panel p,.ts-auth-page-shell--clean .ts-v50b44-panel p{overflow-wrap:break-word!important}
body.ts-login-page .ts-v50b44-panel label,body.ts-login-page-v49 .ts-v50b44-panel label,.ts-auth-page-shell--clean .ts-v50b44-panel label{width:100%!important;max-width:100%!important}
body.ts-login-page .ts-v50b44-panel input,body.ts-login-page-v49 .ts-v50b44-panel input,.ts-auth-page-shell--clean .ts-v50b44-panel input{width:100%!important;max-width:100%!important;min-width:0!important}
body.ts-login-page .ts-v50b44-pass,body.ts-login-page-v49 .ts-v50b44-pass,.ts-auth-page-shell--clean .ts-v50b44-pass{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-google,body.ts-login-page-v49 .ts-v50b44-google,.ts-auth-page-shell--clean .ts-v50b44-google{width:100%!important;white-space:normal!important;text-align:center!important}
body.ts-login-page .ts-v50b44-account-type,body.ts-login-page-v49 .ts-v50b44-account-type,.ts-auth-page-shell--clean .ts-v50b44-account-type{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;max-width:100%!important}
body.ts-login-page .ts-v50b44-account-type label,body.ts-login-page-v49 .ts-v50b44-account-type label,.ts-auth-page-shell--clean .ts-v50b44-account-type label{width:100%!important;max-width:100%!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-selected-package,body.ts-login-page-v49 .ts-v50b44-selected-package,.ts-auth-page-shell--clean .ts-v50b44-selected-package{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:start!important;gap:10px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-selected-package button,body.ts-login-page-v49 .ts-v50b44-selected-package button,.ts-auth-page-shell--clean .ts-v50b44-selected-package button{width:100%!important;white-space:normal!important;text-align:center!important}
body.ts-login-page .ts-v50b44-auth-row,body.ts-login-page-v49 .ts-v50b44-auth-row,.ts-auth-page-shell--clean .ts-v50b44-auth-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:stretch!important;gap:10px!important;width:100%!important}
body.ts-login-page .ts-v50b44-auth-row a,body.ts-login-page-v49 .ts-v50b44-auth-row a,.ts-auth-page-shell--clean .ts-v50b44-auth-row a{justify-self:start!important;white-space:normal!important;overflow-wrap:anywhere!important}
body.ts-login-page .ts-v50b44-bottom-switch,body.ts-login-page-v49 .ts-v50b44-bottom-switch,.ts-auth-page-shell--clean .ts-v50b44-bottom-switch{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:center!important;text-align:center!important;width:100%!important}
@media(max-width:680px){body.ts-login-page .ts-auth-page-shell,body.ts-login-page-v49 .ts-auth-page-shell,.ts-auth-page-shell--clean{width:calc(100vw - 24px)!important}.ts-auth-page-shell--clean .ts-v50b44-auth-card,body.ts-login-page .ts-v50b44-auth-card,body.ts-login-page-v49 .ts-v50b44-auth-card{padding:18px!important;border-radius:24px!important}.ts-auth-page-shell--clean .ts-v50b44-panel h1,body.ts-login-page .ts-v50b44-panel h1,body.ts-login-page-v49 .ts-v50b44-panel h1{font-size:clamp(32px,10vw,44px)!important}}

/* v5.0 beta.51: final login/register laptop two-column fix */
body.ts-login-page,body.ts-login-page-v51,body.ts-auth-two-column{background:var(--ts-page-bg,#F6FBFE)!important;overflow-x:hidden!important}
body.ts-login-page .site-main,body.ts-login-page-v51 .site-main,body.ts-auth-two-column .site-main{width:100%!important;max-width:none!important;overflow:visible!important;padding:0!important}
body.ts-login-page .ts-site-header .ts-container.ts-header-inner,body.ts-login-page-v51 .ts-site-header .ts-container.ts-header-inner,body.ts-auth-two-column .ts-site-header .ts-container.ts-header-inner{width:min(1360px,calc(100vw - 48px))!important;max-width:1360px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
body.ts-login-page .ts-auth-page-shell,body.ts-login-page-v51 .ts-auth-page-shell,body.ts-auth-two-column .ts-auth-page-shell,.ts-auth-page-shell--split{width:min(1360px,calc(100vw - 48px))!important;max-width:1360px!important;margin:clamp(48px,5vw,92px) auto clamp(78px,7vw,124px)!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important}
body.ts-login-page .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-login-page-v51 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-two-column .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--split .ts-container.ts-v50b44-auth{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;gap:clamp(20px,2.4vw,42px)!important;align-items:stretch!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important}
body.ts-login-page .ts-v50b44-auth-card,body.ts-login-page-v51 .ts-v50b44-auth-card,body.ts-auth-two-column .ts-v50b44-auth-card,.ts-auth-page-shell--split .ts-v50b44-auth-card{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important;border-radius:30px!important;padding:clamp(24px,2.15vw,40px)!important;border-top:7px solid #23BBE7!important;background:#fff!important}
body.ts-login-page .ts-v50b44-auth-card *,body.ts-login-page-v51 .ts-v50b44-auth-card *,body.ts-auth-two-column .ts-v50b44-auth-card *,.ts-auth-page-shell--split .ts-v50b44-auth-card *{box-sizing:border-box;min-width:0;max-width:100%}
body.ts-login-page .ts-v50b44-auth-side,body.ts-login-page-v51 .ts-v50b44-auth-side,body.ts-auth-two-column .ts-v50b44-auth-side,.ts-auth-page-shell--split .ts-v50b44-auth-side{display:flex!important;flex-direction:column!important;justify-content:space-between!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:clamp(620px,51vw,820px)!important;border-radius:34px!important;padding:clamp(34px,4vw,70px)!important;overflow:hidden!important;background:linear-gradient(140deg,#08384A,#0B6D7D 52%,#23BBE7)!important;color:#fff!important}
body.ts-login-page .ts-v50b44-panel h1,body.ts-login-page-v51 .ts-v50b44-panel h1,body.ts-auth-two-column .ts-v50b44-panel h1,.ts-auth-page-shell--split .ts-v50b44-panel h1{font-size:clamp(38px,3.3vw,68px)!important;line-height:.92!important;letter-spacing:-.075em!important;overflow-wrap:normal!important;word-break:normal!important;color:#082747!important}
body.ts-login-page .ts-v50b44-account-type,body.ts-login-page-v51 .ts-v50b44-account-type,body.ts-auth-two-column .ts-v50b44-account-type,.ts-auth-page-shell--split .ts-v50b44-account-type{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:100%!important}
body.ts-login-page .ts-v50b44-selected-package,body.ts-login-page-v51 .ts-v50b44-selected-package,body.ts-auth-two-column .ts-v50b44-selected-package,.ts-auth-page-shell--split .ts-v50b44-selected-package{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
body.ts-login-page .ts-v50b44-auth-side h2,body.ts-login-page-v51 .ts-v50b44-auth-side h2,body.ts-auth-two-column .ts-v50b44-auth-side h2,.ts-auth-page-shell--split .ts-v50b44-auth-side h2{font-size:clamp(42px,4.35vw,86px)!important;line-height:.88!important;letter-spacing:-.085em!important;color:#fff!important}
@media(max-width:1180px){body.ts-login-page .ts-auth-page-shell,body.ts-login-page-v51 .ts-auth-page-shell,body.ts-auth-two-column .ts-auth-page-shell,.ts-auth-page-shell--split{width:calc(100vw - 40px)!important}body.ts-login-page .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-login-page-v51 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-two-column .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--split .ts-container.ts-v50b44-auth{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)!important;gap:22px!important}body.ts-login-page .ts-v50b44-panel h1,body.ts-login-page-v51 .ts-v50b44-panel h1,body.ts-auth-two-column .ts-v50b44-panel h1{font-size:clamp(36px,4.8vw,56px)!important}body.ts-login-page .ts-v50b44-auth-side h2,body.ts-login-page-v51 .ts-v50b44-auth-side h2,body.ts-auth-two-column .ts-v50b44-auth-side h2{font-size:clamp(38px,5vw,66px)!important}.ts-auth-page-shell--split .ts-v50b44-feature-grid{grid-template-columns:1fr!important}}
@media(max-width:940px){body.ts-login-page .ts-auth-page-shell,body.ts-login-page-v51 .ts-auth-page-shell,body.ts-auth-two-column .ts-auth-page-shell,.ts-auth-page-shell--split{width:min(760px,calc(100vw - 28px))!important;max-width:760px!important;margin-top:clamp(24px,5vw,48px)!important}body.ts-login-page .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-login-page-v51 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-two-column .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--split .ts-container.ts-v50b44-auth{display:block!important;width:100%!important;max-width:100%!important}body.ts-login-page .ts-v50b44-auth-side,body.ts-login-page-v51 .ts-v50b44-auth-side,body.ts-auth-two-column .ts-v50b44-auth-side,.ts-auth-page-shell--split .ts-v50b44-auth-side{display:none!important}body.ts-login-page .ts-v50b44-account-type,body.ts-login-page-v51 .ts-v50b44-account-type,body.ts-auth-two-column .ts-v50b44-account-type,.ts-auth-page-shell--split .ts-v50b44-account-type{grid-template-columns:1fr!important}body.ts-login-page .ts-v50b44-selected-package,body.ts-login-page-v51 .ts-v50b44-selected-package,body.ts-auth-two-column .ts-v50b44-selected-package,.ts-auth-page-shell--split .ts-v50b44-selected-package{grid-template-columns:minmax(0,1fr)!important}body.ts-login-page .ts-v50b44-selected-package button,body.ts-login-page-v51 .ts-v50b44-selected-package button,body.ts-auth-two-column .ts-v50b44-selected-package button,.ts-auth-page-shell--split .ts-v50b44-selected-package button{width:100%!important}body.ts-login-page .ts-v50b44-panel h1,body.ts-login-page-v51 .ts-v50b44-panel h1,body.ts-auth-two-column .ts-v50b44-panel h1,.ts-auth-page-shell--split .ts-v50b44-panel h1{font-size:clamp(34px,9vw,54px)!important}body.ts-login-page .ts-v50b44-auth-card,body.ts-login-page-v51 .ts-v50b44-auth-card,body.ts-auth-two-column .ts-v50b44-auth-card,.ts-auth-page-shell--split .ts-v50b44-auth-card{padding:18px!important;border-radius:24px!important}}

/* v5.0 beta.53 — final login/register viewport-centred two-column layout */
body.ts-login-page-v52,body.ts-auth-full-bleed{background:var(--ts-page-bg,#F6FBFE)!important;overflow-x:hidden!important}
body.ts-login-page-v52 .site-main,body.ts-auth-full-bleed .site-main{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;contain:none!important}
body.ts-login-page-v52 .ts-site-header .ts-container.ts-header-inner,body.ts-auth-full-bleed .ts-site-header .ts-container.ts-header-inner{width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
body.ts-login-page-v52 .ts-auth-page-shell,body.ts-login-page-v52 .ts-auth-page-shell--split,body.ts-auth-full-bleed .ts-auth-page-shell,body.ts-auth-full-bleed .ts-auth-page-shell--split,.ts-auth-page-shell--v52{position:relative!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;display:block!important;width:min(1280px,calc(100vw - 48px))!important;max-width:min(1280px,calc(100vw - 48px))!important;min-width:0!important;margin:clamp(58px,6vw,104px) 0 clamp(86px,7vw,126px)!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important;clear:both!important;contain:none!important}
body.ts-login-page-v52 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-full-bleed .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--v52 .ts-container.ts-v50b44-auth{display:grid!important;grid-template-columns:minmax(440px,.92fr) minmax(520px,1.08fr)!important;gap:clamp(26px,2.6vw,44px)!important;align-items:stretch!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important;float:none!important}
body.ts-login-page-v52 .ts-v50b44-auth-card,body.ts-auth-full-bleed .ts-v50b44-auth-card,.ts-auth-page-shell--v52 .ts-v50b44-auth-card{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;overflow:hidden!important;box-sizing:border-box!important;border-radius:32px!important;border:1px solid rgba(190,235,250,.95)!important;border-top:7px solid #23BBE7!important;background:#fff!important;padding:clamp(28px,2.45vw,42px)!important;box-shadow:0 26px 80px rgba(9,52,64,.09)!important;float:none!important;contain:none!important}
body.ts-login-page-v52 .ts-v50b44-auth-card *,body.ts-auth-full-bleed .ts-v50b44-auth-card *,.ts-auth-page-shell--v52 .ts-v50b44-auth-card *{box-sizing:border-box!important;min-width:0;max-width:100%}
body.ts-login-page-v52 .ts-v50b44-auth-side,body.ts-auth-full-bleed .ts-v50b44-auth-side,.ts-auth-page-shell--v52 .ts-v50b44-auth-side{display:flex!important;flex-direction:column!important;justify-content:space-between!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:clamp(640px,51vw,820px)!important;overflow:hidden!important;box-sizing:border-box!important;border-radius:34px!important;padding:clamp(42px,4vw,72px)!important;background:linear-gradient(140deg,#08384A,#0B6D7D 52%,#23BBE7)!important;color:#fff!important;box-shadow:0 28px 80px rgba(9,52,64,.16)!important;float:none!important;contain:none!important;opacity:1!important;visibility:visible!important;position:relative!important;transform:none!important}
body.ts-login-page-v52 .ts-v50b44-tabs,body.ts-auth-full-bleed .ts-v50b44-tabs,.ts-auth-page-shell--v52 .ts-v50b44-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:8px!important;padding:8px!important;border-radius:24px!important;overflow:hidden!important;background:#F6FBFE!important;border:1px solid #BEEBFA!important}
body.ts-login-page-v52 .ts-v50b44-tabs button,body.ts-auth-full-bleed .ts-v50b44-tabs button,.ts-auth-page-shell--v52 .ts-v50b44-tabs button{width:100%!important;max-width:none!important;min-width:0!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:15px 12px!important;border-radius:18px!important}
body.ts-login-page-v52 .ts-v50b44-panel,body.ts-auth-full-bleed .ts-v50b44-panel,.ts-auth-page-shell--v52 .ts-v50b44-panel{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}body.ts-login-page-v52 .ts-v50b44-panel.is-active,body.ts-auth-full-bleed .ts-v50b44-panel.is-active,.ts-auth-page-shell--v52 .ts-v50b44-panel.is-active{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
body.ts-login-page-v52 .ts-v50b44-panel h1,body.ts-auth-full-bleed .ts-v50b44-panel h1,.ts-auth-page-shell--v52 .ts-v50b44-panel h1{font-size:clamp(44px,3.55vw,68px)!important;line-height:.9!important;letter-spacing:-.078em!important;color:#082747!important;margin:.1rem 0 .55rem!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;max-width:100%!important}
body.ts-login-page-v52 .ts-v50b44-account-type,body.ts-auth-full-bleed .ts-v50b44-account-type,.ts-auth-page-shell--v52 .ts-v50b44-account-type{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:100%!important}
body.ts-login-page-v52 .ts-v50b44-selected-package,body.ts-auth-full-bleed .ts-v50b44-selected-package,.ts-auth-page-shell--v52 .ts-v50b44-selected-package{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
body.ts-login-page-v52 .ts-v50b44-auth-side h2,body.ts-auth-full-bleed .ts-v50b44-auth-side h2,.ts-auth-page-shell--v52 .ts-v50b44-auth-side h2{font-size:clamp(50px,4.8vw,88px)!important;line-height:.86!important;letter-spacing:-.085em!important;color:#fff!important;margin:30px 0 18px!important;max-width:920px!important;overflow-wrap:normal!important;word-break:normal!important}
body.ts-login-page-v52 .ts-v50b44-feature-grid,body.ts-auth-full-bleed .ts-v50b44-feature-grid,.ts-auth-page-shell--v52 .ts-v50b44-feature-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
@media(max-width:1180px){body.ts-login-page-v52 .ts-auth-page-shell,body.ts-auth-full-bleed .ts-auth-page-shell,.ts-auth-page-shell--v52{width:min(1120px,calc(100vw - 40px))!important;max-width:min(1120px,calc(100vw - 40px))!important}body.ts-login-page-v52 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-full-bleed .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--v52 .ts-container.ts-v50b44-auth{grid-template-columns:minmax(410px,.92fr) minmax(450px,1.08fr)!important;gap:24px!important}body.ts-login-page-v52 .ts-v50b44-auth-card,body.ts-auth-full-bleed .ts-v50b44-auth-card,.ts-auth-page-shell--v52 .ts-v50b44-auth-card{padding:24px!important}body.ts-login-page-v52 .ts-v50b44-panel h1,body.ts-auth-full-bleed .ts-v50b44-panel h1,.ts-auth-page-shell--v52 .ts-v50b44-panel h1{font-size:clamp(40px,4.4vw,58px)!important}.ts-auth-page-shell--v52 .ts-v50b44-feature-grid,body.ts-login-page-v52 .ts-v50b44-feature-grid,body.ts-auth-full-bleed .ts-v50b44-feature-grid{grid-template-columns:1fr!important}}
@media(max-width:900px){body.ts-login-page-v52 .ts-auth-page-shell,body.ts-auth-full-bleed .ts-auth-page-shell,.ts-auth-page-shell--v52{left:auto!important;transform:none!important;width:min(760px,calc(100vw - 28px))!important;max-width:760px!important;margin:clamp(26px,5vw,48px) auto clamp(72px,7vw,110px)!important}body.ts-login-page-v52 .ts-auth-page-shell .ts-container.ts-v50b44-auth,body.ts-auth-full-bleed .ts-auth-page-shell .ts-container.ts-v50b44-auth,.ts-auth-page-shell--v52 .ts-container.ts-v50b44-auth{display:block!important;width:100%!important;max-width:100%!important}body.ts-login-page-v52 .ts-v50b44-auth-side,body.ts-auth-full-bleed .ts-v50b44-auth-side,.ts-auth-page-shell--v52 .ts-v50b44-auth-side{display:none!important}body.ts-login-page-v52 .ts-v50b44-account-type,body.ts-auth-full-bleed .ts-v50b44-account-type,.ts-auth-page-shell--v52 .ts-v50b44-account-type{grid-template-columns:1fr!important}body.ts-login-page-v52 .ts-v50b44-selected-package,body.ts-auth-full-bleed .ts-v50b44-selected-package,.ts-auth-page-shell--v52 .ts-v50b44-selected-package{grid-template-columns:minmax(0,1fr)!important}body.ts-login-page-v52 .ts-v50b44-selected-package button,body.ts-auth-full-bleed .ts-v50b44-selected-package button,.ts-auth-page-shell--v52 .ts-v50b44-selected-package button{width:100%!important}body.ts-login-page-v52 .ts-v50b44-panel h1,body.ts-auth-full-bleed .ts-v50b44-panel h1,.ts-auth-page-shell--v52 .ts-v50b44-panel h1{font-size:clamp(36px,9vw,54px)!important}body.ts-login-page-v52 .ts-v50b44-auth-card,body.ts-auth-full-bleed .ts-v50b44-auth-card,.ts-auth-page-shell--v52 .ts-v50b44-auth-card{padding:20px!important;border-radius:24px!important}}


/* v5.0 beta.53: final login/register full TuSpot width override */

html body.ts-login-page,
html body.ts-login-page-v53,
html body.ts-auth-route-final {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: hidden !important;
  background: var(--ts-page-bg, #F6FBFE) !important;
}
body.ts-login-page .ts-site-header,
body.ts-login-page-v53 .ts-site-header,
body.ts-auth-route-final .ts-site-header {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.ts-login-page .ts-site-header .ts-container.ts-header-inner,
body.ts-login-page-v53 .ts-site-header .ts-container.ts-header-inner,
body.ts-auth-route-final .ts-site-header .ts-container.ts-header-inner {
  width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
body.ts-login-page .site-main,
body.ts-login-page-v53 .site-main,
body.ts-auth-route-final .site-main {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  contain: none !important;
}
body.ts-login-page .ts-auth-page-shell,
body.ts-login-page-v53 .ts-auth-page-shell,
body.ts-auth-route-final .ts-auth-page-shell,
.ts-auth-page-shell--v53 {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  display: block !important;
  width: min(clamp(1220px, 74vw, 1720px), calc(100vw - 48px)) !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: clamp(56px, 5.5vw, 96px) auto clamp(78px, 7vw, 124px) auto !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  clear: both !important;
  contain: none !important;
}
body.ts-login-page .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
body.ts-login-page-v53 .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
body.ts-auth-route-final .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
.ts-auth-page-shell--v53 > .ts-container.ts-v50b44-auth {
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
  gap: clamp(24px, 2.6vw, 48px) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  float: none !important;
}
body.ts-login-page .ts-v50b44-auth-card,
body.ts-login-page-v53 .ts-v50b44-auth-card,
body.ts-auth-route-final .ts-v50b44-auth-card,
.ts-auth-page-shell--v53 .ts-v50b44-auth-card {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  border-radius: 32px !important;
  border: 1px solid rgba(190, 235, 250, .95) !important;
  border-top: 7px solid #23BBE7 !important;
  background: #fff !important;
  padding: clamp(30px, 2.45vw, 44px) !important;
  box-shadow: 0 26px 80px rgba(9, 52, 64, .09) !important;
  float: none !important;
  contain: none !important;
}
body.ts-login-page .ts-v50b44-auth-card *,
body.ts-login-page-v53 .ts-v50b44-auth-card *,
body.ts-auth-route-final .ts-v50b44-auth-card *,
.ts-auth-page-shell--v53 .ts-v50b44-auth-card * {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
body.ts-login-page .ts-v50b44-auth-side,
body.ts-login-page-v53 .ts-v50b44-auth-side,
body.ts-auth-route-final .ts-v50b44-auth-side,
.ts-auth-page-shell--v53 .ts-v50b44-auth-side {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: clamp(650px, 50vw, 840px) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  border-radius: 34px !important;
  padding: clamp(44px, 4vw, 74px) !important;
  background: linear-gradient(140deg, #08384A, #0B6D7D 52%, #23BBE7) !important;
  color: #fff !important;
  box-shadow: 0 28px 80px rgba(9, 52, 64, .16) !important;
  float: none !important;
  contain: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  transform: none !important;
}
body.ts-login-page .ts-v50b44-tabs,
body.ts-login-page-v53 .ts-v50b44-tabs,
body.ts-auth-route-final .ts-v50b44-tabs,
.ts-auth-page-shell--v53 .ts-v50b44-tabs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: 100% !important;
  gap: 8px !important;
  padding: 8px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #F6FBFE !important;
  border: 1px solid #BEEBFA !important;
}
body.ts-login-page .ts-v50b44-tabs button,
body.ts-login-page-v53 .ts-v50b44-tabs button,
body.ts-auth-route-final .ts-v50b44-tabs button,
.ts-auth-page-shell--v53 .ts-v50b44-tabs button {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding: 15px 12px !important;
  border-radius: 18px !important;
}
body.ts-login-page .ts-v50b44-panel,
body.ts-login-page-v53 .ts-v50b44-panel,
body.ts-auth-route-final .ts-v50b44-panel,
.ts-auth-page-shell--v53 .ts-v50b44-panel {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}
body.ts-login-page .ts-v50b44-panel.is-active,
body.ts-login-page-v53 .ts-v50b44-panel.is-active,
body.ts-auth-route-final .ts-v50b44-panel.is-active,
.ts-auth-page-shell--v53 .ts-v50b44-panel.is-active {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 16px !important;
}
body.ts-login-page .ts-v50b44-panel h1,
body.ts-login-page-v53 .ts-v50b44-panel h1,
body.ts-auth-route-final .ts-v50b44-panel h1,
.ts-auth-page-shell--v53 .ts-v50b44-panel h1 {
  font-size: clamp(46px, 3.55vw, 72px) !important;
  line-height: .9 !important;
  letter-spacing: -.078em !important;
  color: #082747 !important;
  margin: .1rem 0 .55rem !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  max-width: 100% !important;
}
body.ts-login-page .ts-v50b44-panel p,
body.ts-login-page-v53 .ts-v50b44-panel p,
body.ts-auth-route-final .ts-v50b44-panel p,
.ts-auth-page-shell--v53 .ts-v50b44-panel p {
  max-width: 100% !important;
  overflow-wrap: break-word !important;
  color: #506a7a !important;
}
body.ts-login-page .ts-v50b44-panel label,
body.ts-login-page-v53 .ts-v50b44-panel label,
body.ts-auth-route-final .ts-v50b44-panel label,
.ts-auth-page-shell--v53 .ts-v50b44-panel label {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  gap: 8px !important;
}
body.ts-login-page .ts-v50b44-panel input,
body.ts-login-page-v53 .ts-v50b44-panel input,
body.ts-auth-route-final .ts-v50b44-panel input,
.ts-auth-page-shell--v53 .ts-v50b44-panel input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body.ts-login-page .ts-v50b44-google,
body.ts-login-page-v53 .ts-v50b44-google,
body.ts-auth-route-final .ts-v50b44-google,
.ts-auth-page-shell--v53 .ts-v50b44-google {
  width: 100% !important;
  text-align: center !important;
  white-space: normal !important;
  justify-content: center !important;
}
body.ts-login-page .ts-v50b44-pass,
body.ts-login-page-v53 .ts-v50b44-pass,
body.ts-auth-route-final .ts-v50b44-pass,
.ts-auth-page-shell--v53 .ts-v50b44-pass {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 46px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
body.ts-login-page .ts-v50b44-account-type,
body.ts-login-page-v53 .ts-v50b44-account-type,
body.ts-auth-route-final .ts-v50b44-account-type,
.ts-auth-page-shell--v53 .ts-v50b44-account-type {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.ts-login-page .ts-v50b44-account-type label,
body.ts-login-page-v53 .ts-v50b44-account-type label,
body.ts-auth-route-final .ts-v50b44-account-type label,
.ts-auth-page-shell--v53 .ts-v50b44-account-type label {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  padding: 18px !important;
}
body.ts-login-page .ts-v50b44-account-type span,
body.ts-login-page-v53 .ts-v50b44-account-type span,
body.ts-auth-route-final .ts-v50b44-account-type span,
.ts-auth-page-shell--v53 .ts-v50b44-account-type span {
  overflow-wrap: break-word !important;
}
body.ts-login-page .ts-v50b44-selected-package,
body.ts-login-page-v53 .ts-v50b44-selected-package,
body.ts-auth-route-final .ts-v50b44-selected-package,
.ts-auth-page-shell--v53 .ts-v50b44-selected-package {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
body.ts-login-page .ts-v50b44-selected-package button,
body.ts-login-page-v53 .ts-v50b44-selected-package button,
body.ts-auth-route-final .ts-v50b44-selected-package button,
.ts-auth-page-shell--v53 .ts-v50b44-selected-package button {
  width: auto !important;
  max-width: 100% !important;
  white-space: normal !important;
  text-align: center !important;
}
body.ts-login-page .ts-v50b44-auth-row,
body.ts-login-page-v53 .ts-v50b44-auth-row,
body.ts-auth-route-final .ts-v50b44-auth-row,
.ts-auth-page-shell--v53 .ts-v50b44-auth-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: 100% !important;
  flex-wrap: wrap !important;
}
body.ts-login-page .ts-v50b44-bottom-switch,
body.ts-login-page-v53 .ts-v50b44-bottom-switch,
body.ts-auth-route-final .ts-v50b44-bottom-switch,
.ts-auth-page-shell--v53 .ts-v50b44-bottom-switch {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  text-align: center !important;
  width: 100% !important;
}
body.ts-login-page .ts-v50b44-auth-side h2,
body.ts-login-page-v53 .ts-v50b44-auth-side h2,
body.ts-auth-route-final .ts-v50b44-auth-side h2,
.ts-auth-page-shell--v53 .ts-v50b44-auth-side h2 {
  font-size: clamp(50px, 4.8vw, 88px) !important;
  line-height: .86 !important;
  letter-spacing: -.085em !important;
  color: #fff !important;
  margin: 30px 0 18px !important;
  max-width: 920px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
body.ts-login-page .ts-v50b44-auth-side p,
body.ts-login-page-v53 .ts-v50b44-auth-side p,
body.ts-auth-route-final .ts-v50b44-auth-side p,
.ts-auth-page-shell--v53 .ts-v50b44-auth-side p {
  color: #d9f7ff !important;
  font-weight: 800 !important;
  max-width: 780px !important;
}
body.ts-login-page .ts-v50b44-feature-grid,
body.ts-login-page-v53 .ts-v50b44-feature-grid,
body.ts-auth-route-final .ts-v50b44-feature-grid,
.ts-auth-page-shell--v53 .ts-v50b44-feature-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
body.ts-add-place-page .ts-breadcrumbs,
body.ts-add-place-page .ts-page-hero {
  display: none !important;
}
body.ts-add-place-page .ts-add-place-page-shell {
  padding-top: clamp(28px, 4vw, 56px) !important;
  padding-bottom: 80px !important;
}
@media (max-width: 1120px) {
  body.ts-login-page .ts-auth-page-shell,
  body.ts-login-page-v53 .ts-auth-page-shell,
  body.ts-auth-route-final .ts-auth-page-shell,
  .ts-auth-page-shell--v53 {
    width: min(1120px, calc(100vw - 40px)) !important;
  }
  body.ts-login-page .ts-v50b44-auth-card,
  body.ts-login-page-v53 .ts-v50b44-auth-card,
  body.ts-auth-route-final .ts-v50b44-auth-card,
  .ts-auth-page-shell--v53 .ts-v50b44-auth-card {
    padding: 24px !important;
  }
  body.ts-login-page .ts-v50b44-panel h1,
  body.ts-login-page-v53 .ts-v50b44-panel h1,
  body.ts-auth-route-final .ts-v50b44-panel h1,
  .ts-auth-page-shell--v53 .ts-v50b44-panel h1 {
    font-size: clamp(40px, 4.4vw, 58px) !important;
  }
  body.ts-login-page .ts-v50b44-feature-grid,
  body.ts-login-page-v53 .ts-v50b44-feature-grid,
  body.ts-auth-route-final .ts-v50b44-feature-grid,
  .ts-auth-page-shell--v53 .ts-v50b44-feature-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 900px) {
  body.ts-login-page .ts-auth-page-shell,
  body.ts-login-page-v53 .ts-auth-page-shell,
  body.ts-auth-route-final .ts-auth-page-shell,
  .ts-auth-page-shell--v53 {
    width: min(760px, calc(100vw - 28px)) !important;
    max-width: 760px !important;
    margin: clamp(26px, 5vw, 48px) auto clamp(72px, 7vw, 110px) auto !important;
  }
  body.ts-login-page .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
  body.ts-login-page-v53 .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
  body.ts-auth-route-final .ts-auth-page-shell > .ts-container.ts-v50b44-auth,
  .ts-auth-page-shell--v53 > .ts-container.ts-v50b44-auth {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.ts-login-page .ts-v50b44-auth-side,
  body.ts-login-page-v53 .ts-v50b44-auth-side,
  body.ts-auth-route-final .ts-v50b44-auth-side,
  .ts-auth-page-shell--v53 .ts-v50b44-auth-side {
    display: none !important;
  }
  body.ts-login-page .ts-v50b44-account-type,
  body.ts-login-page-v53 .ts-v50b44-account-type,
  body.ts-auth-route-final .ts-v50b44-account-type,
  .ts-auth-page-shell--v53 .ts-v50b44-account-type {
    grid-template-columns: 1fr !important;
  }
  body.ts-login-page .ts-v50b44-selected-package,
  body.ts-login-page-v53 .ts-v50b44-selected-package,
  body.ts-auth-route-final .ts-v50b44-selected-package,
  .ts-auth-page-shell--v53 .ts-v50b44-selected-package {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
  }
  body.ts-login-page .ts-v50b44-selected-package button,
  body.ts-login-page-v53 .ts-v50b44-selected-package button,
  body.ts-auth-route-final .ts-v50b44-selected-package button,
  .ts-auth-page-shell--v53 .ts-v50b44-selected-package button {
    width: 100% !important;
  }
  body.ts-login-page .ts-v50b44-panel h1,
  body.ts-login-page-v53 .ts-v50b44-panel h1,
  body.ts-auth-route-final .ts-v50b44-panel h1,
  .ts-auth-page-shell--v53 .ts-v50b44-panel h1 {
    font-size: clamp(36px, 9vw, 54px) !important;
  }
  body.ts-login-page .ts-v50b44-auth-card,
  body.ts-login-page-v53 .ts-v50b44-auth-card,
  body.ts-auth-route-final .ts-v50b44-auth-card,
  .ts-auth-page-shell--v53 .ts-v50b44-auth-card {
    padding: 20px !important;
    border-radius: 24px !important;
  }
}


/* TuSpot EU v5.0 beta.58 — polished article sidebar, tabs, comments and TuSpot avatar. */
.ts-article-hero-grid,
.ts-article-layout {
  grid-template-columns: minmax(0, 1.15fr) minmax(380px, .85fr) !important;
}
.ts-article-sidebar {
  position: sticky !important;
  top: 112px !important;
  align-self: start !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.ts-logo-mark {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #eaf8fe, #ffffff) !important;
  border: 1px solid #d8ecf4 !important;
  box-shadow: 0 12px 28px rgba(9, 52, 64, .08) !important;
  overflow: hidden !important;
  color: transparent !important;
}
.ts-logo-mark img {
  width: 34px !important;
  height: 34px !important;
  object-fit: contain !important;
  display: block !important;
}
.ts-article-side-tabs {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  padding: 7px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #d9eaf1 !important;
  box-shadow: 0 18px 42px rgba(9, 52, 64, .08) !important;
}
.ts-article-side-tabs__indicator {
  position: absolute !important;
  inset: 7px auto 7px 7px !important;
  width: calc(50% - 7px) !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #23bbe7, #0b7792) !important;
  box-shadow: 0 14px 28px rgba(35, 187, 231, .28) !important;
  transition: transform .28s ease, background .28s ease !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.ts-article-side-tabs[data-active="related"] .ts-article-side-tabs__indicator {
  transform: translateX(100%) !important;
}
.ts-article-side-tabs button,
.ts-article-side-tabs a {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #607585 !important;
  font: inherit !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  letter-spacing: -.01em !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: color .22s ease, transform .22s ease !important;
}
.ts-article-side-tabs button:hover,
.ts-article-side-tabs a:hover {
  color: #093440 !important;
  transform: translateY(-1px) !important;
}
.ts-article-side-tabs button.is-active,
.ts-article-side-tabs a.is-active {
  color: #ffffff !important;
  background: transparent !important;
}
.ts-article-tab-panel {
  opacity: 0 !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;
  transition: opacity .24s ease, transform .24s ease !important;
}
.ts-article-tab-panel.is-active {
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}
.ts-article-tab-panel[hidden] {
  display: none !important;
}
.ts-article-side-card {
  padding: 26px !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f7fdff 100%) !important;
  border: 1px solid #d9eaf1 !important;
}
.ts-side-article-list a {
  grid-template-columns: 92px minmax(0, 1fr) !important;
  min-height: 104px !important;
  padding: 12px !important;
  border-radius: 22px !important;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease !important;
}
.ts-side-article-list a:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(35, 187, 231, .55) !important;
  box-shadow: 0 14px 34px rgba(9, 52, 64, .09) !important;
  background: #fbfeff !important;
}
.ts-side-article-list img {
  width: 92px !important;
  height: 78px !important;
  border-radius: 16px !important;
}
.ts-side-article-list strong {
  font-size: 15px !important;
  line-height: 1.22 !important;
}
.ts-side-article-list em {
  color: #0b7792 !important;
}
.ts-article-side-empty {
  margin: 0 !important;
  padding: 18px !important;
  border-radius: 18px !important;
  background: #eaf8fe !important;
  color: #456273 !important;
  font-weight: 800 !important;
}
.ts-comments-card {
  margin-top: 34px !important;
  padding: clamp(30px, 4vw, 58px) !important;
  border-radius: 34px !important;
  max-width: none !important;
  background: linear-gradient(135deg, #ffffff 0%, #f8fdff 76%, #eaf8fe 100%) !important;
  border: 1px solid #d9eaf1 !important;
  box-shadow: 0 22px 62px rgba(9, 52, 64, .08) !important;
}
.ts-comments-card > h2 {
  margin: 16px 0 8px !important;
  color: #093440 !important;
  font-family: Outfit, Figtree, sans-serif !important;
  font-size: clamp(34px, 3.2vw, 54px) !important;
  line-height: 1 !important;
  letter-spacing: -.055em !important;
}
.ts-comments-intro,
.ts-comment-note,
.ts-comment-logged-in {
  max-width: 820px !important;
  color: #5e7586 !important;
  font-weight: 750 !important;
  line-height: 1.6 !important;
}
.ts-comments-area {
  margin-top: 26px !important;
  max-width: 920px !important;
}
.ts-comment-form {
  display: grid !important;
  gap: 16px !important;
}
.ts-comment-form-title,
.ts-comment-list-wrap h3 {
  margin: 0 0 8px !important;
  color: #093440 !important;
  font-family: Outfit, Figtree, sans-serif !important;
  font-size: clamp(24px, 2vw, 34px) !important;
  letter-spacing: -.035em !important;
}
.ts-comment-field {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
}
.ts-comment-field label,
.ts-comment-form label {
  color: #0b2b4c !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.ts-comment-field input,
.ts-comment-field textarea,
.ts-comments-card input[type="text"],
.ts-comments-card input[type="email"],
.ts-comments-card input[type="url"],
.ts-comments-card textarea {
  width: 100% !important;
  border: 1px solid #cfe8f2 !important;
  border-radius: 20px !important;
  background: #f7fdff !important;
  color: #093440 !important;
  font: inherit !important;
  font-weight: 750 !important;
  outline: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
.ts-comment-field input,
.ts-comments-card input[type="text"],
.ts-comments-card input[type="email"],
.ts-comments-card input[type="url"] {
  height: 54px !important;
  padding: 0 18px !important;
}
.ts-comment-field textarea,
.ts-comments-card textarea {
  min-height: 190px !important;
  padding: 18px !important;
  resize: vertical !important;
}
.ts-comment-field input:focus,
.ts-comment-field textarea:focus,
.ts-comments-card input:focus,
.ts-comments-card textarea:focus {
  border-color: #23bbe7 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 5px rgba(35, 187, 231, .12) !important;
}
.ts-comment-submit-wrap,
.ts-comments-card .form-submit {
  margin: 8px 0 0 !important;
}
.ts-comment-submit,
.ts-comments-card input[type="submit"],
.ts-comments-card button[type="submit"] {
  border: 0 !important;
  min-height: 54px !important;
  border-radius: 999px !important;
  padding: 0 28px !important;
  background: #23bbe7 !important;
  color: #ffffff !important;
  font-weight: 950 !important;
  cursor: pointer !important;
  box-shadow: 0 18px 34px rgba(35, 187, 231, .24) !important;
}
.ts-comment-list {
  display: grid !important;
  gap: 12px !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  list-style: none !important;
}
.ts-comment-list .comment-body {
  padding: 18px !important;
  border: 1px solid #d9eaf1 !important;
  border-radius: 22px !important;
  background: #ffffff !important;
}
@media (max-width: 1180px) {
  .ts-article-hero-grid,
  .ts-article-layout {
    grid-template-columns: 1fr !important;
  }
  .ts-article-sidebar {
    position: relative !important;
    top: auto !important;
  }
}
@media (max-width: 860px) {
  .ts-article-side-tabs button,
  .ts-article-side-tabs a {
    min-height: 44px !important;
    font-size: 14px !important;
  }
  .ts-comments-card {
    padding: 28px 20px !important;
  }
  .ts-side-article-list a {
    grid-template-columns: 78px minmax(0, 1fr) !important;
  }
  .ts-side-article-list img {
    width: 78px !important;
    height: 68px !important;
  }
}

/* v5.0 beta.60: robust SVG logo rendering from Brand & Media settings. */
.ts-site-header .ts-logo-img--svg,
.ts-site-header .ts-logo-img--raster {
  height: 42px;
  max-height: 42px;
  width: auto;
  min-width: 118px;
  object-fit: contain;
}
.ts-site-header--laptop-compact .ts-logo-img--svg,
.ts-site-header--laptop-compact .ts-logo-img--raster {
  height: 38px;
  max-height: 38px;
}
.ts-site-footer .ts-logo-img--svg,
.ts-site-footer .ts-logo-img--raster {
  height: 48px;
  max-height: 48px;
  width: auto;
  min-width: 130px;
  object-fit: contain;
}
@media (max-width: 760px) {
  .ts-site-header .ts-logo-img--svg,
  .ts-site-header .ts-logo-img--raster {
    height: 38px;
    max-height: 38px;
    min-width: 104px;
  }
}

/* v5.0 beta.68: place cards, room units and edit-form media polish */
.ts-v50b29-card-bottom-badges {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: end !important;
}
.ts-v50b29-card-bottom-badges span {
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.ts-v50b29-card-bottom-badges span:last-child {
  margin-left: 0 !important;
}
.ts-v50b7-room-accordion details {
  overflow: hidden;
  transition: box-shadow .22s ease, transform .22s ease, border-color .22s ease;
}
.ts-v50b7-room-accordion details[open] {
  box-shadow: 0 26px 70px rgba(9, 52, 64, .10);
  border-color: rgba(35, 187, 231, .35) !important;
}
.ts-v50b7-room-front-body {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: start !important;
}
.ts-v50b7-room-front-info {
  min-width: 0;
}
.ts-v50b7-room-icons {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(112px, 1fr)) !important;
  gap: 14px !important;
  margin-top: 18px !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon,
.ts-v50b7-room-icons span {
  min-height: 118px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-align: center !important;
  border: 1px solid rgba(35, 187, 231, .25) !important;
  background: #f5fcff !important;
  border-radius: 22px !important;
  padding: 16px 12px !important;
  color: #093440 !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon i,
.ts-v50b7-room-icons span > svg,
.ts-v50b7-room-icons span > i {
  width: 30px !important;
  height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #0e7186 !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon svg,
.ts-v50b7-room-icons svg {
  width: 30px !important;
  height: 30px !important;
  stroke: currentColor !important;
  fill: none !important;
}
.ts-v50b7-room-icons strong {
  font-size: 13px !important;
  line-height: 1.1 !important;
  color: #597082 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}
.ts-v50b7-room-icons em {
  font-style: normal !important;
  font-weight: 950 !important;
  font-size: clamp(18px, 1.2vw, 24px) !important;
  line-height: 1.05 !important;
  color: #093440 !important;
}
.ts-v50b7-room-description {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  font-size: clamp(17px, 1.05vw, 22px) !important;
  line-height: 1.65 !important;
  color: #567083 !important;
  margin-top: 4px !important;
}
.ts-v50b7-room-description p {
  margin: 0 0 14px !important;
}
.ts-v50b7-room-description ul {
  margin: 12px 0 0 1.25em !important;
  padding: 0 !important;
}
.ts-v50b7-room-description li {
  margin: 6px 0 !important;
}
.ts-v50b7-rooms-front .ts-pill-row {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto !important;
  padding-bottom: 6px !important;
  scrollbar-width: thin;
}
.ts-v50b7-rooms-front .ts-pill-row .ts-pill {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
.ts-v50b68-existing-media {
  margin-top: 16px;
  border: 1px solid rgba(35,187,231,.24);
  background: #f4fcff;
  border-radius: 20px;
  padding: 14px;
  display: grid;
  gap: 10px;
}
.ts-v50b68-existing-media > span {
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #0e7186;
}
.ts-v50b68-existing-media img,
.ts-v50b68-room-current-img {
  width: 112px;
  height: 82px;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid rgba(35,187,231,.24);
  background: #fff;
}
.ts-v50b68-existing-gallery > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ts-v50b68-room-current-img {
  margin: 10px 0;
}
.ts-v50b68-existing-media small,
.ts-v50b7-room-photo small {
  color: #617789;
}
@media (max-width: 900px) {
  .ts-v50b7-room-front-body { grid-template-columns: 1fr !important; }
  .ts-v50b7-room-icons { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 540px) {
  .ts-v50b7-room-icons { grid-template-columns: 1fr !important; }
  .ts-v50b29-card-bottom-badges { grid-template-columns: 1fr !important; }
}

/* v5.0 beta.70 — single place room polish and map scroll guard */
.ts-v50b29-short-copy { display: none !important; }
.ts-v50b29-rich-copy {
  max-width: none !important;
  width: 100% !important;
}
.ts-v50b29-rich-copy > * {
  max-width: none !important;
}
.ts-v50b29-map iframe {
  pointer-events: none !important;
}
.ts-v50b29-map::after {
  content: "";
  display: block;
  height: 0;
}
.ts-v50b7-room-front-info h3 {
  display: none !important;
}
.ts-v50b7-room-icons {
  width: 100% !important;
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)) !important;
  gap: 14px !important;
  margin-top: 0 !important;
  overflow: visible !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon,
.ts-v50b7-room-icons span {
  min-width: 0 !important;
  min-height: 104px !important;
  padding: 14px 10px !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon i,
.ts-v50b7-room-icons span > i {
  width: 34px !important;
  height: 34px !important;
}
.ts-v50b7-room-icons .ts-v50b68-room-icon svg,
.ts-v50b7-room-icons svg,
.ts-room-line-icon {
  width: 34px !important;
  height: 34px !important;
  stroke: currentColor !important;
  fill: none !important;
}
.ts-v50b7-room-icons strong {
  font-size: 12px !important;
  letter-spacing: .075em !important;
  color: #5b7485 !important;
}
.ts-v50b7-room-icons em {
  font-size: clamp(17px, .95vw, 21px) !important;
  word-break: break-word !important;
}
.ts-v50b7-room-description {
  font-size: clamp(15px, .88vw, 17px) !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  color: #526d7d !important;
}
.ts-v50b7-room-description p {
  margin: 0 0 12px !important;
}
.ts-v50b7-room-description ul {
  margin-top: 10px !important;
}
.ts-v50b7-room-description li {
  margin: 4px 0 !important;
}
.ts-v50b7-rooms-front .ts-pill-row {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto !important;
  padding: 4px 0 8px !important;
  scrollbar-width: thin;
}
.ts-v50b7-rooms-front .ts-pill-row .ts-pill {
  flex: 0 0 auto !important;
}
@media (max-width: 900px) {
  .ts-v50b7-room-front-body { grid-template-columns: 1fr !important; }
  .ts-v50b7-room-icons { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 540px) {
  .ts-v50b7-room-icons { grid-template-columns: 1fr !important; }
}

/* v5.0 beta.73: contrast-safe light buttons */
.ts-btn--light,
a.ts-btn--light,
button.ts-btn--light,
.ts-btn.ts-btn--light,
.ts-v50b44-auth-side .ts-btn--light,
.ts-auth-page-shell .ts-btn--light{background:#fff!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;border-color:rgba(255,255,255,.75)!important;text-shadow:none!important}
.ts-btn--light:hover,
a.ts-btn--light:hover,
button.ts-btn--light:hover,
.ts-btn--light:focus,
a.ts-btn--light:focus,
button.ts-btn--light:focus,
.ts-btn--light:active,
a.ts-btn--light:active,
button.ts-btn--light:active{background:#fff!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;border-color:#fff!important;box-shadow:0 18px 42px rgba(9,52,64,.18)!important}
.ts-btn--light *,a.ts-btn--light *,button.ts-btn--light *{color:inherit!important;-webkit-text-fill-color:inherit!important}

/* TuSpot EU v5.0 beta.75 — compact logged-in header account dropdown. */
.ts-header-actions .ts-account-menu{position:relative;display:inline-flex;align-items:center;z-index:30}
.ts-header-actions .ts-account-menu > .ts-header-login-link{display:inline-flex!important;min-height:40px;align-items:center;justify-content:center;background:#fff;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;border:1px solid var(--ts-border);box-shadow:none;padding:0 18px;font-weight:900;white-space:nowrap}
.ts-site-header .ts-header-actions .ts-account-menu > .ts-account-trigger,
.ts-site-header--laptop-compact .ts-account-menu > .ts-account-trigger,
.ts-header-actions .ts-account-menu > .ts-account-trigger{display:inline-flex!important;align-items:center;gap:8px;min-height:40px;height:40px;max-height:40px;padding:4px 10px 4px 5px;border-radius:999px;border:1px solid var(--ts-border);background:#fff;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;box-shadow:0 10px 28px rgba(11,43,76,.06);font:900 14px/1 var(--ts-font-body);cursor:pointer;white-space:nowrap;appearance:none;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ts-account-trigger:hover,.ts-account-trigger:focus-visible,.ts-account-menu.is-dropdown-open .ts-account-trigger{transform:translateY(-1px);border-color:rgba(35,187,231,.55);box-shadow:0 16px 36px rgba(11,43,76,.12);outline:0;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important}
.ts-account-trigger-avatar{width:30px;height:30px;min-width:30px;border-radius:999px;overflow:hidden;background:#f1fbff;border:1px solid rgba(35,187,231,.25);display:inline-flex;align-items:center;justify-content:center}
.ts-account-trigger-avatar img{width:100%;height:100%;object-fit:contain;display:block;background:#fff}
.ts-account-trigger-copy{display:inline-flex;align-items:center;min-width:0;max-width:132px;color:inherit!important;-webkit-text-fill-color:inherit!important}
.ts-account-trigger-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit!important;-webkit-text-fill-color:inherit!important;font-weight:900}
.ts-account-trigger-chevron{font-size:12px;color:#60798c!important;-webkit-text-fill-color:#60798c!important;margin-left:1px;line-height:1}
.ts-account-dropdown--owner{right:0!important;left:auto!important;top:calc(100% + 14px)!important;min-width:286px!important;padding:12px!important;border-radius:24px!important;border:1px solid var(--ts-border)!important;background:#fff!important;box-shadow:0 24px 70px rgba(11,43,76,.18)!important;transform:translateY(8px)!important;overflow:hidden}
.ts-account-menu.is-dropdown-open .ts-account-dropdown--owner,
.ts-account-menu:hover .ts-account-dropdown--owner,
.ts-account-menu:focus-within .ts-account-dropdown--owner{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)!important}
.ts-account-dropdown-head{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center;padding:10px;margin-bottom:7px;border-radius:18px;background:linear-gradient(135deg,#f2fbff,#fff)}
.ts-account-dropdown-head img{width:46px;height:46px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid var(--ts-border)}
.ts-account-dropdown-head strong{display:block;color:#0b2b4c;font-weight:950;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ts-account-dropdown-head small{display:block;margin-top:4px;color:#60798c;font-weight:800}
.ts-account-dropdown--owner a{display:flex!important;align-items:center;gap:10px;padding:11px 12px!important;border-radius:16px!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;font-weight:900;text-decoration:none;line-height:1.1}
.ts-account-dropdown--owner a span{width:28px;height:28px;border-radius:10px;background:#eaf8fe;color:#067e99!important;-webkit-text-fill-color:#067e99!important;display:inline-flex;align-items:center;justify-content:center;font-size:14px;flex:0 0 auto}
.ts-account-dropdown--owner a:hover,.ts-account-dropdown--owner a:focus-visible{background:#eaf8fe!important;color:#063440!important;-webkit-text-fill-color:#063440!important;outline:0}
.ts-account-dropdown--owner hr{border:0;border-top:1px solid var(--ts-border);margin:8px 0}
.ts-header-actions .ts-btn--primary{min-height:40px}
@media (max-width:1320px){.ts-account-trigger-copy{max-width:108px}.ts-header-actions .ts-account-menu > .ts-account-trigger{padding-right:8px}}
@media (max-width:1180px){.ts-account-trigger-copy{display:none}.ts-account-trigger-chevron{display:none}.ts-header-actions .ts-account-menu > .ts-account-trigger{padding:4px;min-width:40px;justify-content:center}.ts-account-dropdown--owner{right:-54px!important}}
@media (max-width:860px){.ts-header-actions .ts-account-menu{display:inline-flex!important}.ts-account-dropdown--owner{position:absolute!important;right:0!important;min-width:min(286px,calc(100vw - 28px))!important}.ts-header-actions .ts-account-menu > .ts-header-login-link{display:none!important}}

/* v5.0 beta.80: cleaner /places cards — compact image badges, equal media, no duplicated chips, bottom-aligned actions. */
.ts-results-grid--catalog-cards,
.ts-results-grid--map-cards,
.ts-results-grid--wide-cards {
  align-items: stretch !important;
}
.ts-results-grid--catalog-cards .ts-place-card--v50b29,
.ts-results-grid--map-cards .ts-place-card--v50b29,
.ts-results-grid--wide-cards .ts-place-card--v50b29,
.ts-place-card--v50b29 {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-media {
  height: clamp(250px, 18vw, 330px) !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
  background: #eaf8fe !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-media img {
  height: 100% !important;
  min-height: 0 !important;
  width: 100% !important;
  object-fit: cover !important;
}
.ts-place-card--v50b29 .ts-v50b6-card-logo,
.ts-results-grid--catalog-cards .ts-v50b6-card-logo,
.ts-results-grid--map-cards .ts-v50b6-card-logo,
.ts-results-grid--wide-cards .ts-v50b6-card-logo {
  display: none !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-top {
  top: 14px !important;
  left: 14px !important;
  right: 14px !important;
}
.ts-place-card--v50b29 .ts-v50b29-sponsored {
  min-height: 36px !important;
  padding: 7px 13px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .055em !important;
  gap: 6px !important;
  box-shadow: 0 10px 22px rgba(3,22,38,.12) !important;
}
.ts-place-card--v50b29 .ts-v50b29-fav {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  font-size: 22px !important;
  line-height: 1 !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges {
  left: 16px !important;
  right: 16px !important;
  bottom: 16px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: end !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges span {
  min-width: 0 !important;
  width: 100% !important;
  min-height: 38px !important;
  padding: 0 12px !important;
  justify-content: center !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges span:last-child {
  margin-left: 0 !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 13px !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-chips span {
  font-size: 13px !important;
  padding: 8px 12px !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-actions {
  margin-top: auto !important;
}
.ts-place-card--v50b29 .ts-v50b29-card-actions .ts-btn,
.ts-place-card--v50b29 .ts-v50b29-plan-btn {
  min-height: 54px !important;
}
@media (max-width: 760px) {
  .ts-place-card--v50b29 .ts-v50b29-card-media { height: 250px !important; }
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges { grid-template-columns: 1fr 1fr !important; }
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges span { font-size: 12px !important; min-height: 36px !important; }
}

/* TuSpot EU v5.0 beta.88 — real owner-selected place profile banner templates */
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active{
  display:grid!important;
  grid-template-columns:minmax(0,1.5fr) minmax(300px,.82fr)!important;
  gap:18px!important;
  padding:18px!important;
  min-height:clamp(500px,42vw,650px)!important;
  background:#fff!important;
  background-image:none!important;
  border:1px solid rgba(35,187,231,.22)!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-main{
  min-height:100%!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background-image:linear-gradient(90deg,rgba(3,22,38,.62),rgba(3,22,38,.10) 58%,rgba(3,22,38,.28)),var(--ts-place-banner-image)!important;
  background-size:cover!important;
  background-position:center!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-v50b29-hero-layer{
  min-height:100%!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-v50b29-hero-content{
  max-width:660px!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-v50b29-hero-content h1{
  font-size:clamp(42px,5.1vw,72px)!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side{
  display:grid!important;
  gap:16px!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side article{
  min-height:0!important;
  border-radius:26px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  box-shadow:0 18px 42px rgba(3,22,38,.14)!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro{
  display:grid!important;
  grid-template-rows:minmax(430px,1fr) auto!important;
  gap:18px!important;
  padding:22px!important;
  min-height:clamp(680px,54vw,820px)!important;
  background-image:linear-gradient(90deg,rgba(3,22,38,.72),rgba(3,22,38,.20) 52%,rgba(3,22,38,.38)),var(--ts-place-banner-image)!important;
  background-size:cover!important;
  background-position:center!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-main--pro{
  min-height:100%!important;
  border-radius:28px!important;
  background-image:linear-gradient(90deg,rgba(3,22,38,.52),rgba(3,22,38,.04) 70%),var(--ts-place-banner-image)!important;
  background-size:cover!important;
  background-position:center!important;
  overflow:hidden!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-v50b29-hero-layer{
  min-height:100%!important;
  align-items:center!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-v50b29-hero-content{
  max-width:880px!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-v50b29-hero-content h1{
  font-size:clamp(52px,6.6vw,98px)!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom article{
  min-height:190px!important;
  border-radius:26px!important;
  border:1px solid rgba(255,255,255,.48)!important;
  box-shadow:0 18px 42px rgba(3,22,38,.18)!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom strong,
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side strong{
  font-family:var(--ts-font-display)!important;
  letter-spacing:-.035em!important;
}
.ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom span,
.ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side span{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:30px!important;
  align-items:center!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  background:rgba(255,255,255,.88)!important;
  color:#093440!important;
  font-size:12px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  margin-bottom:8px!important;
}
@media(max-width:1180px){
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active{grid-template-columns:1fr!important;}
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side,
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side article{min-height:170px!important;}
}
@media(max-width:760px){
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active,
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--pro{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;padding:10px!important;border-radius:26px!important;min-height:0!important;}
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-main,
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-main--pro{min-height:430px!important;border-radius:22px!important;}
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side,
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom{grid-template-columns:1fr!important;}
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--pro .ts-place-banner-bottom article,
  .ts-place-profile-banner--v50b29.ts-place-profile-banner--active .ts-place-banner-side article{min-height:150px!important;}
}

/* TuSpot EU v5.0 beta.89 — WOW owner-selected place profile banner templates (Free / Active / Pro). */
.single-tuspot_place .ts-place-profile-banner--v50b29{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  max-width:none!important;
  margin:clamp(24px,3vw,46px) auto clamp(28px,4vw,58px)!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  overflow:visible!important;
  min-height:0!important;
  display:block!important;
}
.ts-v50b89-banner{position:relative;isolation:isolate;color:#0b2b4c;font-family:var(--ts-font-body);}
.ts-v50b89-banner h1{font-family:var(--ts-font-display);font-weight:950;letter-spacing:-.07em;line-height:.92;margin:0;color:inherit;}
.ts-v50b89-banner p{margin:0;color:#607589;font-weight:750;line-height:1.55;}
.ts-v50b89-banner a{text-decoration:none;}
.ts-v50b89-template-pill{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 10px 28px rgba(3,22,38,.08);color:#0b6f8a;text-transform:uppercase;letter-spacing:.08em;font-weight:950;font-size:12px;line-height:1;}
.ts-v50b89-template-pill::before{content:"";width:8px;height:8px;border-radius:999px;background:#23bbe7;box-shadow:0 0 0 5px rgba(35,187,231,.10)}
.ts-v50b89-template-pill--dark{background:rgba(6,56,72,.68);border:1px solid rgba(35,187,231,.34);color:#59d7f4;box-shadow:none;}
.ts-v50b89-location{display:inline-flex;align-items:center;gap:8px;color:#6f8397;font-weight:850;font-size:clamp(14px,1.05vw,18px);}
.ts-v50b89-chip-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.ts-v50b89-chip-row span{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(188,230,245,.82);color:#0b2b4c;font-weight:900;box-shadow:0 8px 20px rgba(3,22,38,.06);}
.ts-v50b89-hero-actions{position:absolute;top:24px;right:24px;z-index:12;display:flex;gap:10px;align-items:center;}
.ts-v50b89-action,.ts-v50b89-circle{border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#093440!important;box-shadow:0 16px 36px rgba(3,22,38,.16);font-weight:950;cursor:pointer;}
.ts-v50b89-action{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;}
.ts-v50b89-circle{width:48px;height:48px;display:grid;place-items:center;font-size:24px;line-height:1;}
.ts-v50b89-action:hover,.ts-v50b89-circle:hover{transform:translateY(-1px);box-shadow:0 20px 42px rgba(3,22,38,.22);}

/* Free — clean static full-width scenic hero. */
.ts-v50b89-banner--free{min-height:clamp(560px,46vw,760px);border-radius:0;overflow:hidden;background-image:linear-gradient(90deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.46) 36%,rgba(255,255,255,.02) 68%),var(--ts-free-bg);background-size:cover;background-position:center;box-shadow:0 34px 90px rgba(8,56,76,.12);}
.ts-v50b89-banner--free::after{content:"";position:absolute;inset:auto 0 0;height:32%;background:linear-gradient(0deg,rgba(234,248,254,.72),rgba(234,248,254,0));z-index:-1;}
.ts-v50b89-free-card{position:relative;z-index:3;display:grid;gap:20px;width:min(640px,calc(100% - 48px));margin-left:clamp(24px,4vw,70px);top:clamp(58px,6vw,86px);padding:clamp(30px,4vw,58px);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,255,255,.76));box-shadow:0 28px 90px rgba(3,22,38,.13);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.86);}
.ts-v50b89-free-card h1{font-size:clamp(44px,5.4vw,78px);color:#092a4d;max-width:660px;}
.ts-v50b89-free-card p{font-size:clamp(16px,1.1vw,20px);max-width:560px;}
.ts-v50b89-free-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;width:max-content;max-width:100%;padding:0 28px;border-radius:999px;background:#23bbe7;color:#fff!important;font-weight:950;box-shadow:0 18px 38px rgba(35,187,231,.26);}
.ts-v50b89-free-cta:hover{background:#0b2b4c;color:#fff!important;transform:translateY(-1px)}
.ts-v50b89-free-bottom{position:absolute;left:clamp(24px,4vw,70px);right:clamp(24px,4vw,70px);bottom:clamp(24px,3vw,50px);z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(260px,.95fr);gap:0;align-items:stretch;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(3,22,38,.12);backdrop-filter:blur(14px);overflow:hidden;border:1px solid rgba(255,255,255,.8);}
.ts-v50b89-free-bottom article,.ts-v50b89-free-bottom a{min-height:94px;padding:22px 26px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;border-right:1px solid rgba(173,219,236,.64);}
.ts-v50b89-free-bottom a{background:linear-gradient(135deg,rgba(234,248,254,.9),rgba(208,244,255,.72));grid-template-columns:1fr auto;color:#0b2b4c!important;border-right:0;}
.ts-v50b89-free-bottom b{grid-row:1/3;color:#1d8cac;font-size:28px;font-weight:700;}
.ts-v50b89-free-bottom span{font-size:13px;font-weight:850;color:#6e8295;}
.ts-v50b89-free-bottom strong{font-size:16px;font-weight:950;color:#0b2b4c;line-height:1.1;}
.ts-v50b89-free-bottom a strong{font-size:26px;color:#23bbe7;text-transform:uppercase;}
.ts-v50b89-free-bottom a em{font-style:normal;font-size:30px;color:#0b2b4c;align-self:center;}

/* Active — wide carousel with visible side slides and thumbnails. */
.ts-v50b89-banner--active{display:grid;gap:26px;width:min(calc(100vw - 48px),1780px);margin-left:50%;transform:translateX(-50%);}
.ts-v50b89-active-stage{position:relative;min-height:clamp(560px,46vw,740px);border-radius:32px;overflow:hidden;background:#eefaff;box-shadow:0 30px 90px rgba(8,56,76,.13);}
.ts-v50b89-active-slide{position:absolute;top:0;bottom:0;width:280px;border-radius:28px;overflow:hidden;background-image:linear-gradient(90deg,rgba(255,255,255,.76),rgba(255,255,255,.08) 52%,rgba(3,22,38,.14)),var(--ts-slide-bg);background-size:cover;background-position:center;opacity:0;transform:scale(.96);filter:saturate(.92);transition:all .52s cubic-bezier(.2,.8,.2,1);pointer-events:none;box-shadow:0 24px 70px rgba(3,22,38,.14);}
.ts-v50b89-active-slide.is-active{left:clamp(110px,8vw,150px);width:calc(100% - clamp(220px,16vw,300px));opacity:1;transform:none;filter:saturate(1);z-index:3;pointer-events:auto;}
.ts-v50b89-active-slide.is-prev{left:0;opacity:.74;z-index:2;}
.ts-v50b89-active-slide.is-next{right:0;opacity:.74;z-index:2;}
.ts-v50b89-active-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.64) 0%,rgba(255,255,255,.34) 34%,rgba(255,255,255,0) 72%);pointer-events:none;}
.ts-v50b89-active-glass{position:relative;z-index:2;display:grid;gap:18px;width:min(560px,calc(100% - 48px));padding:clamp(28px,4vw,60px);}
.ts-v50b89-active-glass h1{font-size:clamp(42px,4.9vw,76px);color:#092a4d;max-width:560px;}
.ts-v50b89-active-glass p{max-width:510px;font-size:clamp(15px,1vw,18px);}
.ts-v50b89-trust-strip{display:flex;flex-wrap:wrap;gap:0;width:max-content;max-width:100%;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 16px 34px rgba(3,22,38,.09);}
.ts-v50b89-trust-strip span{min-height:42px;padding:0 18px;display:inline-flex;align-items:center;color:#0b2b4c;font-weight:850;border-right:1px solid rgba(188,230,245,.7);}
.ts-v50b89-trust-strip span:last-child{border-right:0;}
.ts-v50b89-rating-card{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:center;width:min(520px,100%);padding:18px 22px;border-radius:18px;background:rgba(255,255,255,.88);box-shadow:0 18px 42px rgba(3,22,38,.1);}
.ts-v50b89-rating-card strong{grid-row:1/3;color:#092a4d;font-size:34px;font-weight:950;letter-spacing:-.04em;}
.ts-v50b89-rating-card span{font-weight:900;color:#23bbe7;}
.ts-v50b89-rating-card em{font-style:normal;color:#6e8295;font-weight:700;}
.ts-v50b89-map-pin{position:absolute;right:34px;bottom:34px;z-index:4;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:rgba(3,22,38,.72);border:1px solid rgba(255,255,255,.34);color:#fff;font-weight:850;backdrop-filter:blur(10px);}
.ts-v50b89-slider-arrow{border:0;border-radius:999px;display:grid;place-items:center;width:60px;height:60px;background:rgba(255,255,255,.94);color:#0b2b4c;font-size:26px;font-weight:800;cursor:pointer;box-shadow:0 18px 44px rgba(3,22,38,.16);z-index:8;}
.ts-v50b89-slider-arrow--prev{position:absolute;left:calc(clamp(110px,8vw,150px) - 32px);top:50%;transform:translateY(-50%);}
.ts-v50b89-slider-arrow--next{position:absolute;right:calc(clamp(110px,8vw,150px) - 32px);top:50%;transform:translateY(-50%);background:#0b2b4c;color:#fff;}
.ts-v50b89-slider-arrow:hover{transform:translateY(-50%) scale(1.04);}
.ts-v50b89-slider-dots{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:8;display:flex;gap:10px;}
.ts-v50b89-slider-dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(255,255,255,.75);cursor:pointer;}
.ts-v50b89-slider-dots button.is-active{width:24px;background:#23bbe7;}
.ts-v50b89-active-bottom{display:grid;grid-template-columns:minmax(360px,.86fr) 1fr minmax(270px,.42fr);gap:24px;align-items:stretch;}
.ts-v50b89-thumb-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch;}
.ts-v50b89-thumb-strip button{padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:#fff;cursor:pointer;box-shadow:0 12px 26px rgba(3,22,38,.08);}
.ts-v50b89-thumb-strip button.is-active{border-color:#23bbe7;}
.ts-v50b89-thumb-strip img{display:block;width:100%;height:96px;object-fit:cover;}
.ts-v50b89-active-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-radius:22px;background:#fff;box-shadow:0 18px 44px rgba(3,22,38,.08);overflow:hidden;border:1px solid rgba(188,230,245,.5);}
.ts-v50b89-active-facts article{display:grid;gap:6px;padding:22px;border-right:1px solid rgba(188,230,245,.64);}
.ts-v50b89-active-facts article:last-child{border-right:0;}
.ts-v50b89-active-facts span{color:#8ca0b2;font-weight:850;font-size:13px;}
.ts-v50b89-active-facts strong{color:#0b2b4c;font-weight:950;font-size:20px;line-height:1.1;}
.ts-v50b89-active-cta{border-radius:22px;background:linear-gradient(135deg,#17b6df,#0795ad);color:#fff;display:grid;grid-template-columns:1fr auto;gap:6px;padding:22px 24px;box-shadow:0 18px 44px rgba(35,187,231,.24);}
.ts-v50b89-active-cta span{font-weight:850;opacity:.85;}
.ts-v50b89-active-cta strong{font-size:28px;font-weight:950;}
.ts-v50b89-active-cta a{grid-column:1/2;display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;background:#fff;color:#0b2b4c!important;font-weight:950;}
.ts-v50b89-active-cta button{grid-row:1/4;grid-column:2/3;align-self:end;border:0;width:48px;height:48px;border-radius:999px;background:#fff;color:#0b2b4c;font-size:24px;cursor:pointer;}
.ts-v50b89-active-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding:28px 42px 0;}
.ts-v50b89-active-benefits article{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:center;}
.ts-v50b89-active-benefits b{grid-row:1/3;width:64px;height:64px;border-radius:999px;background:#fff;display:grid;place-items:center;color:#23bbe7;font-size:30px;box-shadow:0 16px 34px rgba(3,22,38,.08);}
.ts-v50b89-active-benefits strong{color:#0b2b4c;font-size:18px;font-weight:950;}
.ts-v50b89-active-benefits span{color:#6b7f92;font-weight:700;line-height:1.45;}

/* Pro — full viewport cinematic slider. */
.ts-v50b89-banner--pro{width:min(calc(100vw - 48px),1920px);margin-left:50%;transform:translateX(-50%);min-height:calc(100vh - 120px);border-radius:0;overflow:hidden;background:#071d30;color:#fff;box-shadow:0 38px 110px rgba(3,22,38,.25);display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);grid-template-rows:1fr auto;}
.ts-v50b89-pro-bg{position:absolute;inset:0;z-index:-2;overflow:hidden;}
.ts-v50b89-pro-bg span{position:absolute;inset:0;background-image:var(--ts-slide-bg);background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity .9s ease, transform 4s ease;}
.ts-v50b89-pro-bg span.is-active{opacity:1;transform:scale(1);}
.ts-v50b89-banner--pro::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,18,33,.94) 0%,rgba(4,18,33,.72) 37%,rgba(4,18,33,.28) 70%,rgba(4,18,33,.84) 100%);}
.ts-v50b89-pro-content{grid-column:1/2;display:grid;align-content:center;gap:26px;max-width:900px;padding:clamp(54px,6vw,104px) clamp(36px,6vw,92px) 40px;}
.ts-v50b89-pro-content h1{font-size:clamp(64px,7.6vw,124px);color:#fff;max-width:980px;font-family:var(--ts-font-display);text-shadow:0 20px 54px rgba(0,0,0,.32);}
.ts-v50b89-pro-content p{max-width:680px;color:rgba(255,255,255,.92);font-size:clamp(18px,1.25vw,23px);font-weight:760;text-shadow:0 12px 34px rgba(0,0,0,.25);}
.ts-v50b89-pro-search{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:0;align-items:center;width:min(780px,100%);min-height:68px;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 24px 50px rgba(0,0,0,.22);overflow:hidden;}
.ts-v50b89-pro-search label{padding-left:22px;color:#93a3b1;font-size:11px;font-weight:900;line-height:1;}
.ts-v50b89-pro-search span{color:#0b2b4c;font-weight:900;font-size:13px;padding-right:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ts-v50b89-pro-search button{height:54px;margin-right:7px;border:0;border-radius:999px;background:#23bbe7;color:#fff;font-weight:950;padding:0 24px;cursor:pointer;}
.ts-v50b89-chip-row--pro span{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18);color:#fff;box-shadow:none;backdrop-filter:blur(8px);}
.ts-v50b89-pro-trust{display:flex;flex-wrap:wrap;gap:24px;margin-top:18px;}
.ts-v50b89-pro-trust article{display:grid;grid-template-columns:auto;gap:4px;min-width:150px;padding-right:26px;border-right:1px solid rgba(255,255,255,.16);}
.ts-v50b89-pro-trust strong{font-size:22px;font-weight:950;color:#fff;}
.ts-v50b89-pro-trust span{color:rgba(255,255,255,.76);font-weight:750;}
.ts-v50b89-pro-rail{grid-column:2/3;grid-row:1/3;display:grid;align-content:center;gap:22px;padding:clamp(42px,4vw,70px) clamp(24px,3vw,42px);background:linear-gradient(90deg,rgba(255,255,255,0),rgba(0,0,0,.28));}
.ts-v50b89-pro-counter{display:flex;align-items:center;gap:14px;color:#fff;font-weight:850;font-size:16px;}
.ts-v50b89-pro-counter i{display:block;width:70px;height:1px;background:rgba(255,255,255,.45);}
.ts-v50b89-pro-preview{position:relative;display:block;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08);overflow:hidden;cursor:pointer;opacity:.62;transform:translateX(18px);transition:.35s ease;}
.ts-v50b89-pro-preview.is-active{opacity:1;transform:translateX(0);border-color:rgba(35,187,231,.75);box-shadow:0 22px 52px rgba(0,0,0,.28);}
.ts-v50b89-pro-preview img{display:block;width:100%;height:155px;object-fit:cover;}
.ts-v50b89-pro-preview span{position:absolute;left:14px;bottom:12px;color:rgba(255,255,255,.84);font-weight:850;text-shadow:0 8px 18px rgba(0,0,0,.5);}
.ts-v50b89-pro-about{padding:26px;border-radius:18px;background:rgba(7,31,50,.70);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);}
.ts-v50b89-pro-about span{display:block;color:#23bbe7;font-weight:900;margin-bottom:12px;}
.ts-v50b89-pro-about p{color:rgba(255,255,255,.88);font-weight:650;line-height:1.55;margin:0 0 18px;}
.ts-v50b89-pro-about a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.32);color:#fff!important;font-weight:900;}
.ts-v50b89-pro-cards{grid-column:1/2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 clamp(36px,6vw,92px) clamp(34px,4vw,58px);}
.ts-v50b89-pro-cards article{position:relative;min-height:160px;border-radius:18px;overflow:hidden;padding:24px;display:grid;align-content:end;gap:6px;background-image:linear-gradient(180deg,rgba(7,31,50,.12),rgba(7,31,50,.78)),var(--ts-slide-bg);background-size:cover;background-position:center;box-shadow:0 24px 52px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.16);}
.ts-v50b89-pro-cards b{width:46px;height:46px;border-radius:999px;background:#fff;color:#0b7f9f;display:grid;place-items:center;font-size:22px;}
.ts-v50b89-pro-cards strong{font-size:21px;font-weight:950;color:#fff;}
.ts-v50b89-pro-cards span{color:rgba(255,255,255,.84);font-weight:720;line-height:1.35;}
.ts-v50b89-pro-next{right:320px!important;left:auto!important;background:#0b2b4c!important;color:#fff!important;}
.ts-v50b89-hero-actions--pro .ts-v50b89-action,.ts-v50b89-hero-actions--pro .ts-v50b89-circle{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff!important;box-shadow:none;backdrop-filter:blur(10px);}

@media(max-width:1180px){
  .ts-v50b89-free-bottom{grid-template-columns:repeat(2,minmax(0,1fr));position:relative;left:auto;right:auto;bottom:auto;margin:96px clamp(20px,4vw,42px) 24px;}
  .ts-v50b89-free-bottom article,.ts-v50b89-free-bottom a{border-bottom:1px solid rgba(173,219,236,.64);}
  .ts-v50b89-banner--active{width:min(calc(100vw - 32px),1480px);}
  .ts-v50b89-active-bottom{grid-template-columns:1fr;}
  .ts-v50b89-active-benefits{grid-template-columns:1fr;}
  .ts-v50b89-banner--pro{grid-template-columns:1fr;grid-template-rows:auto auto auto;min-height:0;border-radius:32px;}
  .ts-v50b89-pro-content{padding-top:96px;}
  .ts-v50b89-pro-rail{grid-column:1/2;grid-row:auto;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;background:rgba(3,22,38,.24);}
  .ts-v50b89-pro-preview img{height:120px;}
  .ts-v50b89-pro-about,.ts-v50b89-pro-counter{display:none;}
  .ts-v50b89-pro-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ts-v50b89-pro-next{right:28px!important;}
}
@media(max-width:760px){
  .single-tuspot_place .ts-place-profile-banner--v50b29{width:calc(100vw - 24px)!important;margin-top:18px!important;}
  .ts-v50b89-hero-actions{top:14px;right:14px}.ts-v50b89-action{font-size:0;width:46px;padding:0;justify-content:center}.ts-v50b89-action span{font-size:18px}.ts-v50b89-circle{width:46px;height:46px;}
  .ts-v50b89-free-card{top:74px;margin:0 auto;width:calc(100% - 28px);padding:26px;border-radius:24px}.ts-v50b89-free-card h1{font-size:42px}.ts-v50b89-banner--free{border-radius:28px;min-height:720px}.ts-v50b89-free-bottom{grid-template-columns:1fr;margin-top:110px}.ts-v50b89-free-bottom article,.ts-v50b89-free-bottom a{min-height:80px;}
  .ts-v50b89-active-stage{min-height:620px;border-radius:26px}.ts-v50b89-active-slide,.ts-v50b89-active-slide.is-prev,.ts-v50b89-active-slide.is-next{display:none}.ts-v50b89-active-slide.is-active{display:block;left:0;width:100%;border-radius:26px}.ts-v50b89-active-glass{width:calc(100% - 24px);padding:86px 22px 28px}.ts-v50b89-active-glass h1{font-size:44px}.ts-v50b89-trust-strip{display:grid;width:100%}.ts-v50b89-trust-strip span{border-right:0;border-bottom:1px solid rgba(188,230,245,.7)}.ts-v50b89-slider-arrow--prev{left:14px}.ts-v50b89-slider-arrow--next{right:14px}.ts-v50b89-map-pin{left:18px;right:18px;bottom:76px;justify-content:center}.ts-v50b89-active-facts{grid-template-columns:1fr 1fr}.ts-v50b89-active-benefits{padding:6px 6px 0}.ts-v50b89-thumb-strip{grid-template-columns:repeat(3,1fr)}.ts-v50b89-thumb-strip img{height:78px;}
  .ts-v50b89-banner--pro{width:calc(100vw - 24px);border-radius:28px}.ts-v50b89-pro-content{padding:90px 22px 28px}.ts-v50b89-pro-content h1{font-size:48px}.ts-v50b89-pro-search{grid-template-columns:1fr;border-radius:22px;padding:10px}.ts-v50b89-pro-search label{padding:10px 14px 2px}.ts-v50b89-pro-search span{padding:0 14px 10px}.ts-v50b89-pro-search button{margin:8px 0 0;height:50px}.ts-v50b89-pro-rail{grid-template-columns:1fr 1fr;padding:18px}.ts-v50b89-pro-preview:nth-of-type(n+3){display:none}.ts-v50b89-pro-cards{grid-template-columns:1fr;padding:0 18px 24px}.ts-v50b89-pro-next{top:50%;right:18px!important;}
}

/* TuSpot EU v5.0 beta.90 — final full-bleed owner banner fix, transparent layered header and new preview assets. */
body.single-tuspot_place.ts-place-overlay-header .ts-site-header{
  background:transparent!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:80!important;
}
body.single-tuspot_place.ts-place-overlay-header .ts-site-header .ts-header-inner{
  position:relative;
  z-index:2;
}
body.single-tuspot_place.ts-place-overlay-header .ts-site-header::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(246,251,254,.72),rgba(246,251,254,0));
  opacity:.72;
}
body.single-tuspot_place.ts-place-template-pro .ts-site-header::before{
  background:linear-gradient(180deg,rgba(5,18,31,.56),rgba(5,18,31,0));
  opacity:1;
}
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-nav-link,
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo,
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo-text,
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.28);
}
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-nav-link:hover,
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-nav-item:focus-within .ts-nav-link{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-header-actions .ts-btn:not(.ts-btn--primary),
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-currency-pill,
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-account-trigger{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-header-actions .ts-btn--primary{
  background:#fff!important;
  color:#071d30!important;
  -webkit-text-fill-color:#071d30!important;
  border-color:#fff!important;
}
body.single-tuspot_place.ts-place-overlay-header .ts-breadcrumb-wrap{
  display:none!important;
}
body.single-tuspot_place.ts-place-overlay-header .ts-place-profile-banner--v50b29{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  margin-top:calc(-1 * var(--ts-header-height, 74px))!important;
  margin-bottom:clamp(34px,4vw,72px)!important;
  padding:0!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-overlay-header .ts-v50b89-banner--active,
body.single-tuspot_place.ts-place-overlay-header .ts-v50b89-banner--pro{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  transform:none!important;
  border-radius:0!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
  padding-top:var(--ts-header-height, 74px);
  gap:0;
  background:linear-gradient(180deg,#f7fcff,#eefaff);
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
  border-radius:0!important;
  min-height:clamp(680px,68vh,860px)!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px));
  margin:-44px auto 0;
  position:relative;
  z-index:10;
  padding:0;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px));
  margin:34px auto 0;
  padding:0 0 24px;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  min-height:100vh!important;
  padding-top:var(--ts-header-height, 74px);
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  padding-top:clamp(70px,8vh,126px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  padding-top:calc(var(--ts-header-height, 74px) + clamp(34px,4vw,70px))!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-cards{
  padding-bottom:clamp(42px,5vw,80px)!important;
}
.ts-v50b89-pro-search{
  grid-template-columns:minmax(180px,1.25fr) minmax(140px,.8fr) minmax(120px,.65fr) auto!important;
  gap:0!important;
  align-items:stretch!important;
  width:min(820px,100%)!important;
  min-height:70px!important;
  padding:8px!important;
  border-radius:999px!important;
  background:rgba(7,31,50,.56)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 26px 58px rgba(0,0,0,.26)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  overflow:hidden!important;
}
.ts-v50b89-pro-search-field{
  display:grid;
  align-content:center;
  gap:4px;
  min-width:0;
  padding:0 22px;
  border-right:1px solid rgba(255,255,255,.18);
}
.ts-v50b89-pro-search-field label{
  padding:0!important;
  margin:0!important;
  color:rgba(255,255,255,.66)!important;
  font-size:11px!important;
  font-weight:950!important;
  line-height:1!important;
}
.ts-v50b89-pro-search-field span{
  padding:0!important;
  color:#fff!important;
  font-weight:920!important;
  font-size:13px!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ts-v50b89-pro-search button{
  align-self:center!important;
  min-height:54px!important;
  height:54px!important;
  margin:0!important;
  border-radius:999px!important;
  background:#23bbe7!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 14px 30px rgba(35,187,231,.28)!important;
}
.ts-v50b89-pro-search button:hover{background:#fff!important;color:#071d30!important;}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-overlay-header .ts-place-profile-banner--v50b29{margin-top:0!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{width:calc(100vw - 32px);}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{min-height:0!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{padding-top:96px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{padding-top:24px!important;}
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-overlay-header .ts-site-header{background:rgba(246,251,254,.94)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-nav-link,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo-text,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle{color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;text-shadow:none!important;}
  body.single-tuspot_place.ts-place-overlay-header .ts-place-profile-banner--v50b29{width:100vw!important;max-width:100vw!important;margin-left:50%!important;transform:translateX(-50%)!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{min-height:660px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{width:calc(100vw - 24px);margin:18px auto 0;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{width:100vw!important;border-radius:0!important;}
  .ts-v50b89-pro-search{grid-template-columns:1fr!important;border-radius:24px!important;padding:10px!important;width:100%!important;}
  .ts-v50b89-pro-search-field{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:12px 14px;}
  .ts-v50b89-pro-search button{width:100%;margin-top:8px!important;}
}

/* TuSpot EU v5.0 beta.91 — smoother Active carousel and leaner Pro cinematic hero. */
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
  gap:0!important;
  padding-bottom:clamp(26px,4vw,54px)!important;
  background:linear-gradient(180deg,#f6fbfe 0%,#eefaff 100%)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  margin:0 auto!important;
  min-height:clamp(620px,62vh,780px)!important;
  border-radius:0!important;
  overflow:hidden!important;
  box-shadow:0 30px 86px rgba(8,56,76,.13)!important;
  background:#eaf8fe!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-prev,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-next{
  left:0!important;
  right:0!important;
  width:100%!important;
  border-radius:0!important;
  opacity:0!important;
  transform:none!important;
  filter:none!important;
  transition:opacity .9s ease-in-out!important;
  pointer-events:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-active{
  opacity:1!important;
  z-index:3!important;
  pointer-events:auto!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide::after{
  background:linear-gradient(90deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.48) 34%,rgba(255,255,255,.08) 70%)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
  padding-top:clamp(96px,12vh,138px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  margin:0 auto!important;
  transform:translateY(-42px)!important;
  display:grid!important;
  grid-template-columns:minmax(360px,.86fr) minmax(0,1.18fr) minmax(260px,.42fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  padding:14px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(188,230,245,.72)!important;
  box-shadow:0 24px 68px rgba(3,22,38,.12)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
  gap:8px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
  border-radius:0!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
  height:104px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  min-height:104px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
  margin:-10px auto 0!important;
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--prev{left:calc(50% - min(clamp(1220px,74vw,1720px),calc(100vw - 48px))/2 - 30px)!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--next{right:calc(50% - min(clamp(1220px,74vw,1720px),calc(100vw - 48px))/2 - 30px)!important;}

body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  height:min(900px,calc(100svh - var(--wp-admin--admin-bar--height,0px)))!important;
  min-height:680px!important;
  max-height:900px!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  overflow:hidden!important;
}
@supports (height: 100dvh){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    height:min(900px,calc(100dvh - var(--wp-admin--admin-bar--height,0px)))!important;
  }
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-bg span{
  transform:none!important;
  transition:opacity .72s ease-in-out!important;
  will-change:opacity!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-bg span.is-active{
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  align-content:start!important;
  gap:clamp(14px,2vh,22px)!important;
  max-width:820px!important;
  padding-top:clamp(38px,6vh,72px)!important;
  padding-bottom:16px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
  font-size:clamp(58px,6.5vw,106px)!important;
  max-width:840px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
  max-width:640px!important;
  font-size:clamp(16px,1.05vw,21px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
  width:min(820px,100%)!important;
  background:rgba(7,31,50,.68)!important;
  border-color:rgba(255,255,255,.24)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  align-content:start!important;
  gap:14px!important;
  padding-top:calc(var(--ts-header-height,74px) + clamp(28px,5vh,54px))!important;
  padding-bottom:22px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
  transform:none!important;
  transition:opacity .24s ease,border-color .24s ease,box-shadow .24s ease!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  height:clamp(104px,13vh,142px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-cards{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-column:1/2!important;
  align-self:end!important;
  width:min(720px,calc(100% - clamp(72px,12vw,184px)))!important;
  margin:0 0 clamp(22px,4vh,44px) clamp(36px,6vw,92px)!important;
  padding:22px 26px!important;
  border-radius:20px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:6px 22px!important;
  background:rgba(7,31,50,.72)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.22)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide span{
  margin:0!important;
  font-size:13px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide p{
  margin:0!important;
  color:rgba(255,255,255,.9)!important;
  font-weight:700!important;
  line-height:1.48!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
  grid-row:1/3!important;
  grid-column:2/3!important;
  align-self:center!important;
  white-space:nowrap!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
  right:calc(360px + 18px)!important;
}

@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{width:calc(100vw - 32px)!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{grid-template-columns:1fr!important;transform:none!important;margin:18px auto 0!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{height:auto!important;max-height:none!important;min-height:0!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{width:auto!important;margin:0 24px 24px!important;grid-template-columns:1fr!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{grid-column:auto!important;grid-row:auto!important;justify-content:center;}
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{width:100vw!important;min-height:660px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{padding-top:96px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{width:calc(100vw - 24px)!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{height:82px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{font-size:46px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{grid-template-columns:1fr!important;}
}

/* TuSpot EU v5.0 beta.92 — performance polish for Active / Pro owner banners. */
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  height:min(860px,calc(100svh - var(--wp-admin--admin-bar--height,0px)))!important;
  min-height:620px!important;
  max-height:860px!important;
  grid-template-columns:minmax(0,1fr) minmax(330px,430px)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  contain:layout paint!important;
}
@supports (height: 100dvh){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    height:min(860px,calc(100dvh - var(--wp-admin--admin-bar--height,0px)))!important;
  }
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-bg span{
  opacity:0!important;
  transform:none!important;
  transition:opacity .6s ease-in-out!important;
  will-change:auto!important;
  backface-visibility:hidden!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-bg span.is-active{
  opacity:1!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  padding-top:clamp(28px,4.6vh,56px)!important;
  padding-bottom:10px!important;
  max-width:800px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
  font-size:clamp(56px,6vw,98px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  grid-column:2/3!important;
  grid-row:1/2!important;
  align-content:start!important;
  padding-top:calc(var(--ts-header-height,74px) + clamp(14px,2.2vh,30px))!important;
  padding-right:clamp(22px,2.4vw,40px)!important;
  padding-bottom:12px!important;
  gap:12px!important;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(0,0,0,.22))!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
  opacity:.7!important;
  transform:none!important;
  transition:opacity .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview.is-active{
  opacity:1!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  height:clamp(96px,12vh,130px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-column:2/3!important;
  grid-row:2/3!important;
  align-self:end!important;
  justify-self:stretch!important;
  width:auto!important;
  max-width:none!important;
  margin:0 clamp(22px,2.4vw,40px) clamp(20px,3vh,34px) 0!important;
  padding:22px 24px!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:start!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
  right:calc(clamp(330px,22vw,430px) + 20px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
  min-height:64px!important;
  background:rgba(7,31,50,.72)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.22)!important;
}

body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
  width:100%!important;
  padding-bottom:clamp(20px,3vw,42px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  min-height:clamp(590px,58vh,740px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-prev,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-next{
  transition:opacity .6s ease-in-out!important;
  transform:none!important;
  filter:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
  bottom:86px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  width:min(1920px,calc(100vw - 40px))!important;
  max-width:none!important;
  margin:0 auto!important;
  transform:translateY(-34px)!important;
  grid-template-columns:minmax(300px,.72fr) minmax(520px,1fr) minmax(250px,.34fr)!important;
  gap:12px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  height:88px!important;
  align-self:stretch!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button{
  height:88px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  opacity:.78!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button.is-active{
  outline:3px solid #23bbe7!important;
  outline-offset:-3px!important;
  opacity:1!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
  height:88px!important;
  border-radius:0!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  min-height:88px!important;
  height:88px!important;
  border-radius:18px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article{
  min-height:88px!important;
  padding:12px 14px!important;
  align-content:center!important;
  gap:5px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts span{
  font-size:11px!important;
  letter-spacing:.02em!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts strong{
  font-size:17px!important;
  line-height:1.08!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article:nth-child(4) strong{
  font-size:16px!important;
  max-width:120px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  padding:12px 14px!important;
  grid-template-columns:1fr auto!important;
  align-content:center!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta span{font-size:12px!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta strong{font-size:20px!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta a{
  min-height:36px!important;
  font-size:13px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta button{
  width:40px!important;
  height:40px!important;
  font-size:20px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
  margin:-10px auto 0!important;
}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{height:auto!important;max-height:none!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{grid-column:1/2!important;grid-row:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:18px 24px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{grid-column:1/2!important;grid-row:auto!important;margin:0 24px 24px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{width:calc(100vw - 32px)!important;grid-template-columns:1fr!important;transform:none!important;margin:16px auto 0!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{height:auto!important;}
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{width:100vw!important;min-height:620px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{bottom:72px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{height:76px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{height:auto!important;min-height:0!important;}
}


/* TuSpot EU v5.0 beta.93 — final Active 100vw width and Pro 100vh hero polish. */
body.single-tuspot_place.ts-place-template-active .ts-place-profile-banner--v50b29,
body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
  gap:0!important;
  padding-top:var(--ts-header-height,74px)!important;
  padding-bottom:clamp(42px,5vw,76px)!important;
  overflow:visible!important;
  background:linear-gradient(180deg,#f6fbfe 0%,#eefaff 100%)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  min-height:clamp(760px,76vh,940px)!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-prev,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-next,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-active{
  left:0!important;
  right:0!important;
  width:100%!important;
  border-radius:0!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
  width:min(640px,calc(100vw - 64px))!important;
  padding:clamp(118px,13vh,168px) clamp(30px,5vw,72px) clamp(30px,5vw,72px)!important;
  gap:clamp(13px,1.6vw,20px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass h1{
  max-width:620px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  width:min(1920px,calc(100vw - 24px))!important;
  max-width:none!important;
  margin:0 auto!important;
  transform:translateY(14px)!important;
  z-index:14!important;
  grid-template-columns:minmax(320px,.72fr) minmax(560px,1fr) minmax(260px,.34fr)!important;
  gap:12px!important;
  padding:0!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  height:96px!important;
  min-height:96px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
  height:96px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article{
  min-height:96px!important;
  padding:13px 16px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article:nth-child(4) strong{
  max-width:none!important;
  font-size:18px!important;
  line-height:1.05!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  padding:13px 16px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
  margin:34px auto 0!important;
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
  bottom:112px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--prev{left:18px!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--next{right:18px!important;}

body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
  height:calc(100svh - var(--wp-admin--admin-bar--height,0px))!important;
  min-height:760px!important;
  max-height:none!important;
  border-radius:0!important;
  grid-template-columns:minmax(0,1fr) minmax(350px,440px)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  contain:layout paint!important;
}
@supports (height: 100dvh){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    height:calc(100dvh - var(--wp-admin--admin-bar--height,0px))!important;
  }
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-bg span{
  transform:none!important;
  transition:opacity .6s ease-in-out!important;
  will-change:opacity!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  align-content:center!important;
  max-width:900px!important;
  padding:calc(var(--ts-header-height,74px) + clamp(26px,4vh,58px)) clamp(36px,5vw,86px) clamp(28px,4vh,64px)!important;
  gap:clamp(16px,2vh,26px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
  font-size:clamp(64px,7vw,118px)!important;
  max-width:900px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
  max-width:690px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
  display:grid!important;
  grid-template-columns:minmax(230px,1.1fr) minmax(150px,.72fr) minmax(115px,.56fr) minmax(190px,.72fr)!important;
  width:min(900px,100%)!important;
  min-height:70px!important;
  padding:8px!important;
  border-radius:999px!important;
  align-items:stretch!important;
  background:rgba(7,31,50,.74)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
  align-content:center!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
  width:100%!important;
  height:100%!important;
  min-height:54px!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  padding:0 20px!important;
  margin:0!important;
  white-space:nowrap!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  grid-column:2/3!important;
  grid-row:1/2!important;
  align-content:start!important;
  padding-top:calc(var(--ts-header-height,74px) + clamp(58px,9vh,118px))!important;
  padding-bottom:16px!important;
  gap:14px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-column:2/3!important;
  grid-row:2/3!important;
  width:auto!important;
  margin:0 clamp(22px,2.4vw,40px) clamp(26px,4vh,46px) 0!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
  right:calc(clamp(350px,23vw,440px) + 18px)!important;
}

@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{min-height:720px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{width:calc(100vw - 32px)!important;grid-template-columns:1fr!important;transform:translateY(16px)!important;margin:0 auto!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{height:auto!important;min-height:0!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{height:auto!important;min-height:720px!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{grid-template-columns:1fr!important;border-radius:24px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{height:54px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{grid-column:1/2!important;grid-row:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:18px 24px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{grid-column:1/2!important;grid-row:auto!important;margin:0 24px 24px!important;}
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{min-height:680px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{width:calc(100vw - 28px)!important;padding-top:104px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{bottom:90px!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{min-height:0!important;}
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{padding-top:104px!important;}
}

/* TuSpot EU v5.0 beta.94 — responsive banner layout polish from 17 Jun screenshots. */
body.single-tuspot_place .ts-v50b89-banner{
  overflow:visible!important;
}

/* START / FREE banner: smaller glass card, no collision with bottom strip. */
body.single-tuspot_place .ts-v50b89-banner--free{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:clamp(14px,2vw,24px)!important;
  min-height:auto!important;
  padding:clamp(58px,6.6vw,104px) clamp(24px,4vw,70px) clamp(30px,4vw,58px)!important;
  overflow:hidden!important;
}
body.single-tuspot_place .ts-v50b89-free-card{
  top:auto!important;
  margin:0!important;
  width:min(560px,100%)!important;
  gap:clamp(12px,1.35vw,18px)!important;
  padding:clamp(24px,3vw,42px)!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(255,255,255,.62))!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 24px 78px rgba(3,22,38,.12)!important;
}
body.single-tuspot_place .ts-v50b89-free-card h1{
  font-size:clamp(40px,4.45vw,64px)!important;
  line-height:.9!important;
  max-width:520px!important;
}
body.single-tuspot_place .ts-v50b89-free-card p{
  font-size:clamp(14px,.95vw,18px)!important;
  line-height:1.48!important;
  max-width:500px!important;
}
body.single-tuspot_place .ts-v50b89-free-cta{
  min-height:48px!important;
  padding:0 24px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  z-index:4!important;
  width:100%!important;
  margin:0!important;
  grid-template-columns:repeat(4,minmax(0,1fr)) minmax(220px,.76fr)!important;
  align-self:stretch!important;
  border-radius:22px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom article,
body.single-tuspot_place .ts-v50b89-free-bottom a{
  min-height:78px!important;
  padding:16px 18px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom b{
  font-size:22px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom strong{
  font-size:15px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom a strong{
  font-size:23px!important;
}
body.single-tuspot_place .ts-v50b89-free-bottom a em{
  font-size:26px!important;
}

/* ACTIVE banner: remove rating card, lift glass, rounded thumbnails and cleaner CTA overlay. */
body.single-tuspot_place.ts-place-template-active .ts-v50b89-rating-card{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
  padding-top:clamp(96px,11vh,136px)!important;
  width:min(620px,calc(100vw - 64px))!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
  min-height:clamp(700px,72vh,900px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide::after{
  background:linear-gradient(90deg,rgba(255,255,255,.84) 0%,rgba(255,255,255,.46) 36%,rgba(255,255,255,.04) 72%)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button{
  border-radius:14px!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
  border-radius:12px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  grid-template-columns:minmax(300px,.56fr) minmax(560px,1fr)!important;
  transform:translateY(22px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
  position:absolute!important;
  right:clamp(26px,5.5vw,92px)!important;
  bottom:clamp(128px,15vh,176px)!important;
  z-index:9!important;
  width:min(340px,calc(100vw - 52px))!important;
  min-height:0!important;
  height:auto!important;
  padding:18px!important;
  border-radius:24px!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:8px 12px!important;
  background:linear-gradient(135deg,rgba(35,187,231,.96),rgba(10,151,178,.94))!important;
  box-shadow:0 28px 72px rgba(0,124,158,.28)!important;
  border:1px solid rgba(255,255,255,.32)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta span{
  color:rgba(255,255,255,.86)!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta strong{
  color:#fff!important;
  font-size:24px!important;
  line-height:1!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta a{
  grid-column:1/3!important;
  min-height:44px!important;
  border-radius:999px!important;
  display:flex!important;
  justify-content:center!important;
  background:#fff!important;
  color:#092a4d!important;
  font-size:14px!important;
  font-weight:950!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta button{
  width:46px!important;
  height:46px!important;
  background:#fff!important;
  color:#092a4d!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
  bottom:clamp(220px,25vh,286px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
  margin:52px auto 0!important;
}

/* PRO banner: smaller laptop typography, wider about card, clearer rail, safer search button. */
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  align-content:start!important;
  margin-top:50px!important;
  max-width:820px!important;
  padding-top:calc(var(--ts-header-height,74px) + clamp(16px,2vh,32px))!important;
  gap:clamp(12px,1.7vh,20px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
  font-size:clamp(54px,5.9vw,94px)!important;
  line-height:.88!important;
  max-width:820px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
  max-width:620px!important;
  font-size:clamp(15px,1vw,19px)!important;
  line-height:1.48!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
  width:min(780px,100%)!important;
  grid-template-columns:minmax(190px,1.05fr) minmax(120px,.64fr) minmax(90px,.48fr) minmax(170px,.68fr)!important;
  min-height:64px!important;
  padding:7px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
  min-width:0!important;
  min-height:50px!important;
  height:50px!important;
  padding:0 16px!important;
  font-size:14px!important;
  overflow:visible!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
  padding:0 16px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  padding-top:calc(var(--ts-header-height,74px) + clamp(34px,6vh,76px))!important;
  padding-left:18px!important;
  padding-right:clamp(24px,2.6vw,42px)!important;
  gap:12px!important;
  background:linear-gradient(90deg,rgba(2,15,28,0),rgba(2,15,28,.36))!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.06))!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.20)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview.is-active{
  box-shadow:0 22px 56px rgba(0,0,0,.32), inset 0 0 0 2px rgba(35,187,231,.74)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  height:clamp(86px,10vh,118px)!important;
  border-radius:20px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-column:2/3!important;
  width:min(760px,calc(100% - 24px))!important;
  margin:0 clamp(18px,2vw,34px) clamp(22px,3vh,38px) 0!important;
  padding:24px 26px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a:hover,
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a:focus{
  background:#25bbe8!important;
  border-color:#25bbe8!important;
  color:#fff!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
  right:calc(clamp(350px,23vw,440px) + 38px)!important;
  top:58%!important;
}

/* Laptop / small desktop around 1200px. */
@media(max-width:1320px){
  body.single-tuspot_place .ts-v50b89-free-card{
    width:min(500px,100%)!important;
    padding:26px!important;
    gap:12px!important;
  }
  body.single-tuspot_place .ts-v50b89-free-card h1{
    font-size:clamp(34px,4.05vw,52px)!important;
  }
  body.single-tuspot_place .ts-v50b89-free-card p{
    font-size:14px!important;
    line-height:1.42!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom article,
  body.single-tuspot_place .ts-v50b89-free-bottom a{
    min-height:68px!important;
    padding:13px 14px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-rating-card{
    display:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass h1{
    font-size:clamp(38px,4.2vw,62px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass p{
    font-size:15px!important;
    line-height:1.48!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    min-height:680px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    max-width:720px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    font-size:clamp(48px,5.4vw,76px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
    font-size:15px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-trust strong{
    font-size:19px!important;
  }
}

/* iPad / tablet. */
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place .ts-v50b89-free-bottom{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    margin:0!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom article:nth-child(1),
  body.single-tuspot_place .ts-v50b89-free-bottom article:nth-child(2),
  body.single-tuspot_place .ts-v50b89-free-bottom article:nth-child(3){
    grid-column:span 2!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom article:nth-child(4),
  body.single-tuspot_place .ts-v50b89-free-bottom a{
    grid-column:span 3!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
    margin-top:0!important;
    padding-top:calc(var(--ts-header-height,74px) * .55)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
    min-height:660px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    width:calc(100vw - 32px)!important;
    grid-template-columns:1fr!important;
    transform:translateY(14px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:auto 1fr auto!important;
    align-items:center!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta a{
    grid-column:auto!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
    bottom:98px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header{
    background:transparent!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    min-height:0!important;
    grid-template-columns:1fr!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    margin-top:0!important;
    padding-top:calc(var(--ts-header-height,74px) + 28px)!important;
    max-width:820px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    font-size:clamp(48px,8vw,74px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    border-radius:28px!important;
    overflow:visible!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    grid-column:1/-1!important;
    width:100%!important;
    height:54px!important;
    margin-top:8px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    padding:16px 24px 22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
    height:118px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    right:24px!important;
    top:46%!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    grid-column:1/2!important;
    width:auto!important;
    margin:0 24px 24px!important;
  }
}

/* Mobile. */
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-place-profile-banner--v50b29,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active{
    margin-top:0!important;
    padding-top:0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
    width:100vw!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
    border-radius:0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-prev,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-next{
    display:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide.is-active{
    position:relative!important;
    display:block!important;
    top:auto!important;
    bottom:auto!important;
    left:0!important;
    right:auto!important;
    width:100%!important;
    min-height:720px!important;
    border-radius:0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-slide::after{
    background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.66) 54%,rgba(255,255,255,.22) 100%)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
    width:calc(100vw - 28px)!important;
    padding:96px 22px 34px!important;
    gap:12px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass h1{
    font-size:clamp(38px,11vw,54px)!important;
    line-height:.9!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass p{
    display:block!important;
    color:#4f6478!important;
    font-size:18px!important;
    line-height:1.55!important;
    font-weight:850!important;
    background:rgba(255,255,255,.50)!important;
    border-radius:20px!important;
    padding:12px 14px!important;
    max-width:100%!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-trust-strip{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    border-radius:24px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-trust-strip span{
    min-height:44px!important;
    padding:0 18px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(188,230,245,.72)!important;
    font-size:15px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
    display:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    width:calc(100vw - 24px)!important;
    grid-template-columns:1fr!important;
    transform:none!important;
    margin:18px auto 0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    height:auto!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
    height:76px!important;
    border-radius:12px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    border-radius:22px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article{
    min-height:118px!important;
    padding:18px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts strong{
    font-size:24px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    min-height:0!important;
    margin-top:12px!important;
    padding:24px!important;
    border-radius:26px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits{
    width:calc(100vw - 24px)!important;
    margin:22px auto 0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-benefits article{
    grid-template-columns:58px 1fr!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header{
    background:transparent!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header::before{
    background:linear-gradient(180deg,rgba(5,18,31,.64),rgba(5,18,31,0))!important;
    opacity:1!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo-text,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    margin-top:0!important;
    padding:104px 22px 28px!important;
    max-width:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    font-size:clamp(42px,11vw,58px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
    font-size:16px!important;
    line-height:1.52!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    grid-template-columns:1fr!important;
    border-radius:24px!important;
    overflow:visible!important;
    padding:10px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
    padding:12px 14px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    width:100%!important;
    height:54px!important;
    margin-top:8px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    grid-template-columns:1fr!important;
    padding:18px 22px 22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    right:18px!important;
    top:50%!important;
  }

  .ts-site-header .ts-header-inner{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:14px!important;
  }
  .ts-site-header .ts-header-actions{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    gap:12px!important;
    align-items:stretch!important;
  }
  .ts-site-header .ts-header-actions .ts-currency-switcher{
    display:none!important;
  }
  .ts-site-header .ts-header-actions .ts-account-menu,
  .ts-site-header .ts-header-actions > .ts-btn--primary{
    width:100%!important;
  }
  .ts-site-header .ts-header-actions .ts-account-menu > .ts-account-trigger,
  .ts-site-header .ts-header-actions .ts-account-menu > .ts-header-login-link,
  .ts-site-header .ts-header-actions > .ts-btn--primary{
    width:100%!important;
    min-height:54px!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* TuSpot EU v5.0 beta.94.1 — final width/stack safeguards. */
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  position:relative!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-column:1/3!important;
  grid-row:2/3!important;
  justify-self:end!important;
  width:min(860px,calc(100vw - 56px))!important;
  max-width:none!important;
  margin:0 clamp(24px,4vw,70px) clamp(22px,3vh,38px) 0!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
  grid-column:2/3!important;
  grid-row:1/3!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  height:clamp(118px,14vh,156px)!important;
}
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    grid-column:1/2!important;
    width:auto!important;
    max-width:none!important;
    margin:0 24px 24px!important;
    grid-template-columns:1fr!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:start!important;
  }
}
@media(max-width:760px){
  body.single-tuspot_place .ts-v50b89-free-bottom{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    border-radius:24px!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom article,
  body.single-tuspot_place .ts-v50b89-free-bottom a{
    min-height:104px!important;
    padding:18px!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom a{
    grid-column:1/-1!important;
  }
  body.single-tuspot_place .ts-v50b89-free-bottom article:nth-child(4) strong{
    font-size:22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    grid-column:1/2!important;
    width:auto!important;
    max-width:none!important;
    margin:0 22px 24px!important;
    grid-template-columns:1fr!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
    grid-column:auto!important;
    grid-row:auto!important;
  }
}


/* TuSpot EU v5.0 beta.95 — active/pro banner refinement pack. */
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass p{
  background:rgba(255,255,255,.44)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:22px!important;
  padding:16px 18px!important;
  box-shadow:0 18px 38px rgba(3,22,38,.08)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
  align-items:stretch!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip button{
  border-radius:18px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-trust{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  margin-top:0!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  display:grid!important;
  grid-column:1/2!important;
  grid-row:2/3!important;
  justify-self:end!important;
  width:min(560px,calc(100% - 56px))!important;
  max-width:none!important;
  margin:0 clamp(24px,3vw,42px) clamp(24px,4vh,40px) auto!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-items:start!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:start!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
  border-radius:18px!important;
  background:rgba(255,255,255,.10)!important;
  box-shadow:0 22px 46px rgba(0,0,0,.20)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  border-radius:16px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
  left:auto!important;
  right:clamp(20px,2vw,34px)!important;
  top:clamp(56px,6vw,74px)!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next:hover{
  transform:scale(1.04)!important;
}

@media(min-width:1181px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important;
    grid-template-areas:"thumbs cta" "facts cta"!important;
    gap:22px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
    grid-area:thumbs!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
    height:116px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts{
    grid-area:facts!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    grid-area:cta!important;
    justify-self:end!important;
    width:min(100%,360px)!important;
    min-height:100%!important;
    padding:28px 28px 24px!important;
    gap:8px 16px!important;
    align-content:start!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    background:linear-gradient(160deg,#0f2a45 0%,#174a74 44%,#22b8e1 100%)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 28px 58px rgba(3,22,38,.18)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta span{
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.06em!important;
    color:rgba(255,255,255,.78)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta strong{
    font-size:46px!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta a{
    min-height:56px!important;
    margin-top:8px!important;
    padding:0 20px!important;
    box-shadow:0 14px 28px rgba(3,22,38,.12)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta button{
    grid-row:1/3!important;
    grid-column:2/3!important;
    align-self:start!important;
    width:56px!important;
    height:56px!important;
    background:rgba(255,255,255,.16)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.22)!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:54px!important;
    padding-bottom:28px!important;
  }
}

@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    max-width:700px!important;
    gap:20px!important;
    padding:48px 40px 24px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    font-size:clamp(54px,5.8vw,76px)!important;
    line-height:.9!important;
    max-width:680px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
    max-width:620px!important;
    font-size:16px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    width:min(640px,100%)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    min-width:194px!important;
    padding:0 18px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    padding:44px 24px 24px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    width:min(360px,calc(100% - 48px))!important;
    margin:0 24px 24px auto!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    top:48px!important;
    right:24px!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    grid-template-columns:minmax(0,1fr) minmax(280px,320px)!important;
    grid-template-areas:"thumbs thumbs" "facts cta"!important;
    gap:18px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
    grid-area:thumbs!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
    height:100px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts{
    grid-area:facts!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    grid-area:cta!important;
    width:100%!important;
    min-height:100%!important;
    padding:24px!important;
    gap:8px 14px!important;
    align-content:start!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    background:linear-gradient(160deg,#0f2944 0%,#15557e 50%,#22b8e1 100%)!important;
    border-radius:24px!important;
    box-shadow:0 24px 50px rgba(3,22,38,.16)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta span{
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.05em!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta strong{
    font-size:40px!important;
    line-height:1!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta a{
    min-height:54px!important;
    margin-top:8px!important;
    padding:0 16px!important;
    width:100%!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta button{
    grid-row:1/3!important;
    grid-column:2/3!important;
    align-self:start!important;
    width:54px!important;
    height:54px!important;
    background:#fff!important;
    color:#0b2b4c!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
    top:24px!important;
    right:24px!important;
    bottom:auto!important;
    left:auto!important;
    max-width:calc(100% - 48px)!important;
  }

  body.single-tuspot_place.ts-place-template-pro .ts-site-header{
    background:transparent!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header::before{
    background:linear-gradient(180deg,rgba(5,18,31,.58),rgba(5,18,31,0))!important;
    opacity:1!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-logo-text,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-header-link,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-account-trigger,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-header-login-link{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    min-height:0!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding:74px 28px 20px!important;
    gap:18px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    font-size:clamp(48px,7vw,68px)!important;
    line-height:.9!important;
    max-width:680px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content p{
    max-width:640px!important;
    font-size:16px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    width:min(100%,760px)!important;
    grid-template-columns:1fr 1fr!important;
    border-radius:28px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
    padding:12px 0!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field:nth-child(2){
    border-right:0!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    grid-column:1/-1!important;
    width:calc(100% - 14px)!important;
    min-width:0!important;
    height:56px!important;
    margin:6px 7px 7px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro{
    gap:10px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro span{
    padding:14px 20px!important;
    font-size:15px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    grid-column:1/2!important;
    grid-row:auto!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:16px!important;
    padding:12px 28px 22px!important;
    background:rgba(3,22,38,.18)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-counter{
    display:flex!important;
    grid-column:1/-1!important;
    margin-bottom:4px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    display:grid!important;
    width:auto!important;
    max-width:none!important;
    margin:0 28px 28px!important;
    justify-self:stretch!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    top:82px!important;
    right:28px!important;
  }
}

@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
    padding-bottom:150px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow{
    top:auto!important;
    bottom:28px!important;
    transform:none!important;
    width:54px!important;
    height:54px!important;
    border-radius:16px!important;
    font-size:22px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow:hover{
    transform:scale(1.03)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--prev{
    left:22px!important;
    right:auto!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-arrow--next{
    left:86px!important;
    right:auto!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-dots{
    display:none!important;
  }
}


/* TuSpot EU v5.0 beta.96 — banner spacing, CTA and responsive rail polish. */
body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row{
  gap:12px!important;
}
body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row span{
  min-height:44px!important;
  padding:0 18px!important;
  font-size:15px!important;
  line-height:1.18!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-trust{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  position:relative!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
  grid-template-columns:1fr!important;
  gap:18px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
  min-height:138px!important;
  border-radius:24px!important;
  padding:5px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.07))!important;
  border:1px solid rgba(255,255,255,.26)!important;
  box-shadow:0 24px 54px rgba(0,0,0,.26)!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview.is-active{
  border-color:rgba(35,187,231,.88)!important;
  box-shadow:0 26px 60px rgba(0,0,0,.32),0 0 0 2px rgba(35,187,231,.34) inset!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
  height:148px!important;
  border-radius:20px!important;
  filter:saturate(1.08) contrast(1.02)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview span{
  left:18px!important;
  bottom:16px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:rgba(3,22,38,.42)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  grid-template-columns:1fr!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
  grid-column:auto!important;
  grid-row:auto!important;
}

@media(min-width:1367px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    grid-template-columns:minmax(320px,.78fr) minmax(560px,1fr)!important;
    padding-right:clamp(340px,24vw,430px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    position:absolute!important;
    right:clamp(6px,.5vw,92px)!important;
    bottom:clamp(0px,0vh,176px)!important;
    width:min(390px,24vw)!important;
    min-height:132px!important;
  }
}

@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    grid-template-columns:minmax(320px,.75fr) minmax(520px,1fr)!important;
    padding-right:clamp(310px,28vw,380px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    position:absolute!important;
    right:clamp(26px,1.5vw,92px)!important;
    bottom:clamp(176px,15vh,203px)!important;
    width:min(360px,28vw)!important;
    min-height:150px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    position:absolute!important;
    right:clamp(24px,2vw,36px)!important;
    bottom:clamp(22px,3vh,36px)!important;
    width:min(390px,31vw)!important;
    margin:0!important;
    z-index:6!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    align-content:center!important;
    padding-top:calc(var(--ts-header-height,74px) + 44px)!important;
    padding-bottom:clamp(190px,22vh,240px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
    min-height:150px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
    height:156px!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
    min-height:790px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-slider-dots{
    top:auto!important;
    bottom:22px!important;
    z-index:12!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    transform:translateY(0)!important;
    margin:16px auto 0!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-chip-row span,
  body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row span{
    min-height:46px!important;
    padding:0 20px!important;
  }

  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:calc(-1 * var(--ts-header-height,74px))!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    padding-top:0!important;
    border-radius:0!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(var(--ts-header-height,74px) + 42px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:min(760px,calc(100vw - 56px))!important;
    border-radius:30px!important;
    padding:10px!important;
    gap:0!important;
    background:rgba(7,31,50,.78)!important;
    overflow:hidden!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
    min-height:64px!important;
    padding:14px 18px!important;
    border-right:1px solid rgba(255,255,255,.14)!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field:first-child{
    grid-column:1/-1!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field:nth-child(2){
    border-right:1px solid rgba(255,255,255,.14)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field:nth-child(3){
    border-right:0!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    grid-column:1/-1!important;
    width:100%!important;
    min-height:58px!important;
    height:58px!important;
    margin:10px 0 0!important;
    border-radius:999px!important;
    font-size:16px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    padding:16px 28px 22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview{
    min-height:128px!important;
    border-radius:22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-preview img{
    height:124px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro span{
    min-height:48px!important;
    padding:0 22px!important;
  }
}

@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:calc(-1 * var(--ts-header-height,74px))!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    padding-top:0!important;
    border-radius:0!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(var(--ts-header-height,74px) + 34px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-chip-row,
  body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row{
    gap:12px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro span,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-chip-row span,
  body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row span{
    min-height:50px!important;
    padding:0 20px!important;
    font-size:16px!important;
    line-height:1.15!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    width:calc(100vw - 44px)!important;
    border-radius:28px!important;
    padding:12px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
    min-height:62px!important;
    padding:14px 16px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    min-height:58px!important;
    font-size:16px!important;
  }
}


/* TuSpot EU v5.0 beta.97 — final responsive banner alignment pass. */
/* Free + general chip comfort on every breakpoint. */
body.single-tuspot_place .ts-v50b89-chip-row{
  gap:14px!important;
}
body.single-tuspot_place .ts-v50b89-chip-row span,
body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row span{
  min-height:48px!important;
  padding:0 24px!important;
  font-size:15px!important;
  line-height:1.18!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro span{
  min-height:50px!important;
  padding:0 26px!important;
}

/* Active banner — keep bottom content connected with CTA instead of drifting apart. */
@media(min-width:1367px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    width:min(1380px,calc(100vw - 72px))!important;
    margin-left:auto!important;
    margin-right:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(380px,420px)!important;
    grid-template-areas:"thumbs cta" "facts cta"!important;
    gap:24px!important;
    padding-right:0!important;
    align-items:stretch!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
    grid-area:thumbs!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts{
    grid-area:facts!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    grid-area:cta!important;
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    min-height:100%!important;
    align-self:stretch!important;
    justify-self:stretch!important;
  }
}

@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-bottom{
    width:calc(100vw - 48px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:"thumbs cta" "facts cta"!important;
    gap:22px!important;
    padding-right:0!important;
    align-items:stretch!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip{
    grid-area:thumbs!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-thumb-strip img{
    height:112px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts{
    grid-area:facts!important;
    width:100%!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts article{
    min-width:0!important;
    padding:18px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-facts strong{
    font-size:19px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-cta{
    grid-area:cta!important;
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    min-height:100%!important;
    align-self:stretch!important;
    justify-self:stretch!important;
  }
}

/* Pro banner — laptop/tablet/mobile positioning fixes. */
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    display:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    align-content:center!important;
    padding-top:calc(var(--ts-header-height,156px) + 44px)!important;
    padding-bottom:clamp(190px,22vh,240px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    top:86px!important;
    right:24px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    position:absolute!important;
    top:94px!important;
    right:99px!important;
    z-index:12!important;
    display:flex!important;
    gap:10px!important;
    align-items:center!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    position:absolute!important;
    top:89px!important;
    right:109px!important;
    z-index:12!important;
    display:flex!important;
    gap:10px!important;
    align-items:center!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:calc(-1 * var(--ts-header-height,136px))!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(var(--ts-header-height,130px) + 42px)!important;
  }
}

@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:calc(-1 * var(--ts-header-height,136px))!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(var(--ts-header-height,130px) + 34px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    top:154px!important;
    right:14px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-chip-row,
  body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row{
    gap:14px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-chip-row--pro span,
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-chip-row span,
  body.single-tuspot_place .ts-v50b89-banner--free .ts-v50b89-chip-row span{
    min-height:54px!important;
    padding:0 24px!important;
    font-size:16px!important;
    line-height:1.18!important;
  }
}


/* TuSpot EU v5.0 beta.98 — pro header/menu stability + active map/glass pass. */
@media(max-width:1180px){
  .ts-site-header,
  .ts-site-header .ts-header-inner{
    position:relative!important;
  }
  .ts-mobile-toggle{
    display:inline-grid!important;
    place-items:center!important;
    background:#fff!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    border:1px solid rgba(188,230,245,.95)!important;
    box-shadow:0 12px 28px rgba(11,43,76,.10)!important;
    text-shadow:none!important;
    font-size:22px!important;
    font-weight:950!important;
    line-height:1!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-mobile-toggle *{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
  }
  .ts-main-nav{
    display:none!important;
  }
  .ts-main-nav.is-open{
    position:absolute!important;
    left:50%!important;
    top:calc(100% + 10px)!important;
    transform:translateX(-50%)!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    z-index:150!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:4px!important;
    padding:18px!important;
    border-radius:28px!important;
    background:rgba(255,255,255,.98)!important;
    border:1px solid rgba(188,230,245,.85)!important;
    box-shadow:0 32px 86px rgba(3,22,38,.22)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-main-nav.is-open .ts-nav-link span{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    width:100%!important;
    justify-content:space-between!important;
    min-height:48px!important;
    padding:0 16px!important;
    border-radius:18px!important;
  }
  .ts-main-nav.is-open .ts-nav-link:hover,
  .ts-main-nav.is-open .ts-nav-link:focus-visible,
  .ts-main-nav.is-open .ts-nav-item:focus-within .ts-nav-link{
    background:#eaf8fe!important;
    color:#063440!important;
    -webkit-text-fill-color:#063440!important;
  }
  .ts-main-nav.is-open .ts-dropdown{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    min-width:0!important;
    width:100%!important;
    margin:4px 0 10px!important;
    border-radius:20px!important;
    box-shadow:none!important;
    background:#f6fbfe!important;
  }
  .ts-main-nav.is-open .ts-dropdown a,
  .ts-main-nav.is-open .ts-dropdown-group-label{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
  }
  .ts-header-actions .ts-account-menu.is-dropdown-open .ts-account-dropdown--owner,
  .ts-header-actions .ts-account-menu:hover .ts-account-dropdown--owner,
  .ts-header-actions .ts-account-menu:focus-within .ts-account-dropdown--owner{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:calc(var(--ts-header-height,136px) + 12px)!important;
    transform:translateX(-50%)!important;
    width:calc(100vw - 28px)!important;
    min-width:0!important;
    max-width:420px!important;
    max-height:calc(100vh - var(--ts-header-height,136px) - 32px)!important;
    overflow:auto!important;
    z-index:220!important;
    border-radius:28px!important;
  }
}

/* Pro banner — keep header overlay stable when menu opens. */
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:-136px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(130px + 42px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    position:absolute!important;
    top:165px!important;
    right:clamp(22px,6vw,109px)!important;
    z-index:12!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    top:160px!important;
    right:28px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:min(760px,calc(100vw - 56px))!important;
    border-radius:30px!important;
    padding:10px!important;
    gap:0!important;
    background:rgba(7,31,50,.78)!important;
    overflow:hidden!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field:first-child{
    grid-column:1/-1!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    grid-column:1/-1!important;
    width:100%!important;
    min-height:58px!important;
    height:58px!important;
    margin:10px 0 0!important;
    border-radius:999px!important;
    padding:0 22px!important;
    font-size:16px!important;
    white-space:nowrap!important;
  }
}

@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-pro .ts-place-profile-banner--v50b29{
    margin-top:-136px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    padding-top:calc(130px + 34px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    top:154px!important;
    right:14px!important;
    z-index:12!important;
  }
}

/* Pro banner — desktop only: rail/action/about placement. */
@media(min-width:1367px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-actions{
    position:absolute!important;
    top:122px!important;
    right:114px!important;
    z-index:12!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next{
    left:auto!important;
    right:clamp(20px,2vw,34px)!important;
    top:clamp(56px,6vw,116px)!important;
    transform:none!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-next:hover{
    transform:scale(1.04)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    position:absolute!important;
    right:clamp(52px,4vw,86px)!important;
    bottom:clamp(42px,6vh,82px)!important;
    left:auto!important;
    top:auto!important;
    z-index:7!important;
    width:min(470px,28vw)!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
    justify-self:start!important;
  }
}

/* Pro banner — laptop 1200: search button must stay inside the pill. */
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    width:min(760px,100%)!important;
    grid-template-columns:minmax(210px,1.2fr) minmax(126px,.72fr) minmax(92px,.52fr) minmax(190px,.72fr)!important;
    min-height:66px!important;
    padding:8px!important;
    border-radius:999px!important;
    overflow:hidden!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search button{
    align-self:center!important;
    justify-self:stretch!important;
    min-width:0!important;
    width:100%!important;
    height:52px!important;
    min-height:52px!important;
    margin:0!important;
    padding:0 18px!important;
    font-size:14px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search-field{
    padding:0 15px!important;
  }
}

/* Active banner — move copy up and return map pin to the image corner. */
@media(min-width:1181px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
    padding-top:clamp(72px,8vh,112px)!important;
    padding-bottom:clamp(24px,3vw,44px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
    top:auto!important;
    left:auto!important;
    right:clamp(28px,4vw,64px)!important;
    bottom:clamp(30px,5vh,68px)!important;
    z-index:9!important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-stage{
    min-height:clamp(720px,76vh,860px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-active-glass{
    padding-top:clamp(74px,8vh,106px)!important;
    padding-bottom:28px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-map-pin{
    display:inline-flex!important;
    top:auto!important;
    left:auto!important;
    right:24px!important;
    bottom:28px!important;
    max-width:calc(100% - 48px)!important;
    z-index:9!important;
  }
}


/* TuSpot EU v5.0 beta.99 — mobile places filters, pill wrapping and weather modal fit. */
@media(max-width:860px){
  body.post-type-archive-tuspot_place .ts-filter-tabs-shell,
  body.page-template-page-places .ts-filter-tabs-shell,
  .page-template-page-places .ts-filter-tabs-shell,
  .ts-filter-tabs-shell.ts-filter-tabs-shell--purpose.ts-white-card{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:22px!important;
    border-radius:28px!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    overflow:hidden!important;
  }
  .ts-filter-tabs-shell--purpose::after{
    right:-54px!important;
    top:-54px!important;
    width:140px!important;
    height:140px!important;
  }
  .ts-filter-tabs-shell--purpose .ts-filter-tabs-intro{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  .ts-filter-tabs-shell--purpose .ts-filter-tabs-intro strong{
    max-width:100%!important;
    font-size:clamp(36px,10vw,50px)!important;
    line-height:.9!important;
    letter-spacing:-.055em!important;
  }
  .ts-filter-tab-row--purpose{
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .ts-filter-tab-row--purpose > div{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    overflow:visible!important;
    padding:0!important;
  }
  .ts-filter-tab--purpose{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:0!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr)!important;
    column-gap:14px!important;
    align-items:center!important;
    padding:16px!important;
    border-radius:22px!important;
    transform:none!important;
  }
  .ts-filter-tab--purpose i{
    grid-row:1/3!important;
    width:52px!important;
    height:52px!important;
    margin:0!important;
  }
  .ts-filter-tab--purpose strong,
  .ts-filter-tab--purpose span{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:520px){
  .ts-filter-tabs-shell.ts-filter-tabs-shell--purpose.ts-white-card{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    padding:20px!important;
    border-radius:26px!important;
  }
  .ts-filter-tab--purpose{
    grid-template-columns:50px minmax(0,1fr)!important;
    padding:14px!important;
  }
  .ts-filter-tab--purpose i{
    width:46px!important;
    height:46px!important;
    border-radius:16px!important;
  }
}

@media(max-width:760px){
  .ts-pill-row,
  .ts-v50b7-rooms-front .ts-pill-row,
  .ts-v50b8-overview-pills{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    overflow-x:visible!important;
    padding:4px 0 0!important;
    white-space:normal!important;
    scrollbar-width:none!important;
  }
  .ts-pill-row::-webkit-scrollbar,
  .ts-v50b7-rooms-front .ts-pill-row::-webkit-scrollbar{
    display:none!important;
  }
  .ts-pill-row .ts-pill,
  .ts-pill-row > span,
  .ts-pill-row > a,
  .ts-v50b7-rooms-front .ts-pill-row .ts-pill,
  .ts-v50b8-overview-pills .ts-pill{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
  }
}

@media(max-width:760px){
  .ts-v50b63-weather-modal{
    padding:8px!important;
    align-items:start!important;
    place-items:start center!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .ts-v50b63-weather-dialog{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:26px!important;
    padding:22px 18px 110px!important;
  }
  .ts-v50b63-weather-dialog .ts-kicker{
    max-width:calc(100% - 78px)!important;
  }
  .ts-v50b63-weather-dialog h3{
    font-size:clamp(42px,12vw,56px)!important;
    line-height:.9!important;
    max-width:calc(100% - 78px)!important;
  }
  .ts-v50b63-weather-dialog > p{
    font-size:24px!important;
    margin-bottom:18px!important;
  }
  .ts-v50b63-modal-close{
    right:16px!important;
    top:16px!important;
    width:60px!important;
    height:60px!important;
    z-index:3!important;
  }
  .ts-v50b63-forecast-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .ts-v50b63-forecast-grid article{
    min-height:132px!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .ts-v50b63-forecast-grid svg{
    width:46px!important;
    height:46px!important;
  }
  .ts-v50b63-forecast-grid b{
    font-size:1.25rem!important;
  }
  .ts-v50b63-forecast-grid span{
    font-size:1rem!important;
  }
}


/* TuSpot EU v5.0 beta.100 — stable mobile parent menu/submenu toggles. */
@media(max-width:1180px){
  .ts-main-nav.is-open{
    width:calc(100vw - 24px)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }
  .ts-main-nav.is-open .ts-nav-item{
    width:100%!important;
  }
  .ts-main-nav.is-open .ts-nav-link[aria-haspopup="true"]{
    cursor:pointer!important;
  }
  .ts-main-nav.is-open .ts-nav-item > .ts-dropdown{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }
  .ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-dropdown{
    display:grid!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    gap:4px!important;
    margin:6px 0 12px!important;
    padding:10px!important;
    position:static!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    background:#f6fbfe!important;
    border:1px solid rgba(188,230,245,.65)!important;
    border-radius:20px!important;
    box-shadow:none!important;
  }
  .ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-nav-link{
    background:#eaf8fe!important;
    color:#063440!important;
    -webkit-text-fill-color:#063440!important;
  }
  .ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-nav-link span{
    transform:rotate(180deg)!important;
    color:#23bbe7!important;
    -webkit-text-fill-color:#23bbe7!important;
  }
  .ts-main-nav.is-open .ts-dropdown a{
    min-height:44px!important;
    padding:10px 14px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.72)!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    font-weight:850!important;
  }
  .ts-main-nav.is-open .ts-dropdown a:hover,
  .ts-main-nav.is-open .ts-dropdown a:focus-visible{
    background:#eaf8fe!important;
    color:#063440!important;
    -webkit-text-fill-color:#063440!important;
  }
}

/* TuSpot EU v5.0 beta.101 — homepage hero template system. */
body.ts-home-overlay-header .ts-site-header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:80!important;
  background:linear-gradient(180deg,rgba(7,22,36,.62),rgba(7,22,36,0))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.ts-home-overlay-header .ts-site-header .ts-logo,
body.ts-home-overlay-header .ts-site-header .ts-logo-text,
body.ts-home-overlay-header .ts-site-header .ts-nav-link{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 12px 30px rgba(0,0,0,.28)!important;
}
body.ts-home-overlay-header .ts-site-header .ts-currency-pill,
body.ts-home-overlay-header .ts-site-header .ts-account-trigger{
  background:rgba(255,255,255,.13)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.25)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
body.ts-home-overlay-header .ts-site-header .ts-btn--primary{
  background:#4ee1e4!important;
  color:#061f36!important;
  box-shadow:0 18px 42px rgba(0,0,0,.18)!important;
}
.ts-home-hero-v101{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100vw;
  margin-left:50%;
  transform:translateX(-50%);
  color:#fff;
  background:#071d30;
}
.ts-home-hero-v101__bg,
.ts-home-hero-v101__bg span,
.ts-home-hero-v101__overlay{position:absolute;inset:0;z-index:-2;}
.ts-home-hero-v101__bg span{background-image:var(--ts-hero-bg);background-size:cover;background-position:center;opacity:0;transition:opacity var(--ts-home-hero-transition,600ms) ease;}
.ts-home-hero-v101__bg span.is-active{opacity:1;}
.ts-home-hero-v101__overlay{z-index:-1;background:linear-gradient(90deg,rgba(3,17,31,.94) 0%,rgba(3,17,31,.72) 36%,rgba(3,17,31,.24) 68%,rgba(3,17,31,.48) 100%);}
.ts-home-hero-v101__kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;color:#50dce6;text-transform:uppercase;letter-spacing:.16em;font-weight:950;font-size:13px;}
.ts-home-hero-v101__kicker::after{content:"";width:54px;height:2px;background:#50dce6;border-radius:999px;}
.ts-home-hero-v101__copy h1{font-family:var(--ts-font-display);font-size:clamp(58px,6.4vw,112px);line-height:.88;letter-spacing:-.06em;margin:0 0 24px;color:#fff;text-shadow:0 22px 60px rgba(0,0,0,.28);max-width:830px;}
.ts-home-hero-v101__copy h1 span{color:#55dde4;}
.ts-home-hero-v101__copy p{max-width:640px;color:rgba(255,255,255,.86);font-size:clamp(18px,1.25vw,22px);line-height:1.52;font-weight:650;margin:0 0 28px;}
.ts-home-hero-v101__chips{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.ts-home-hero-v101__chips a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff!important;font-weight:850;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.ts-home-search-v101{display:grid;grid-template-columns:repeat(var(--ts-search-fields,4),minmax(0,1fr)) minmax(180px,.72fr);align-items:center;gap:0;width:100%;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.55);box-shadow:0 30px 80px rgba(3,22,38,.22);border-radius:30px;padding:14px;color:#0b2b4c;}
.ts-home-search-v101__field{display:flex;align-items:center;gap:14px;min-width:0;padding:0 18px;min-height:64px;border-right:1px solid rgba(9,52,64,.13);}
.ts-home-search-v101__field:last-of-type{border-right:0;}
.ts-home-search-v101__icon{width:40px;height:40px;flex:0 0 40px;border-radius:999px;display:grid;place-items:center;background:#eaf8fe;color:#0b2b4c;font-weight:950;}
.ts-home-search-v101__body{display:grid;gap:3px;min-width:0;}
.ts-home-search-v101__label{font-size:12px;font-weight:950;color:#0b2b4c;line-height:1.1;}
.ts-home-search-v101 select{appearance:none;-webkit-appearance:none;border:0!important;background:transparent!important;padding:0 22px 0 0!important;min-height:auto!important;color:#63778a!important;font-weight:760;font-size:14px;line-height:1.2;max-width:100%;background-image:linear-gradient(45deg,transparent 50%,#0b2b4c 50%),linear-gradient(135deg,#0b2b4c 50%,transparent 50%)!important;background-position:calc(100% - 10px) 50%,calc(100% - 5px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;}
.ts-home-search-v101 button{border:0;min-height:64px;border-radius:22px;background:#082949;color:#fff;font-weight:950;font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 18px 36px rgba(8,41,73,.20);}
.ts-home-hero-v101--europe-fullscreen{min-height:100vh;padding:clamp(120px,13vh,180px) 0 clamp(54px,7vh,86px);display:grid;align-items:center;}
.ts-home-hero-v101--europe-fullscreen .ts-home-hero-v101__fullscreen-shell{min-height:calc(100vh - 220px);display:grid;align-content:end;gap:48px;}
.ts-home-hero-v101__search-wrap{display:grid;gap:18px;width:min(100%,1500px);}
.ts-home-search-v101--fullscreen{border-radius:34px;padding:18px;}
.ts-home-hero-v101__trust{display:flex;align-items:center;justify-content:center;gap:14px;color:rgba(255,255,255,.92);font-weight:820;}
.ts-home-hero-v101__avatars{display:flex;}
.ts-home-hero-v101__avatars i{width:32px;height:32px;border-radius:999px;background:linear-gradient(135deg,#eaf8fe,#23bbe7);border:2px solid #fff;margin-left:-8px;box-shadow:0 8px 18px rgba(0,0,0,.18);}
.ts-home-hero-v101__avatars i:first-child{margin-left:0;}
.ts-home-hero-v101__trust b{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#55dde4;color:#073148;}
.ts-home-hero-v101--europe-featured{min-height:100vh;padding:clamp(118px,12vh,160px) 0 clamp(44px,5vh,70px);background:radial-gradient(circle at 76% 24%,rgba(42,185,226,.26),transparent 34%),linear-gradient(135deg,#031525 0%,#052844 70%,#063654 100%);}
.ts-home-hero-v101__featured-shell{display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1fr);gap:52px;align-items:center;min-height:calc(100vh - 205px);}
.ts-home-hero-v101--europe-featured .ts-home-hero-v101__copy h1{font-size:clamp(54px,5.1vw,92px);}
.ts-home-search-v101--featured{grid-template-columns:repeat(var(--ts-search-fields,4),minmax(0,1fr));border-radius:26px;margin-top:34px;}
.ts-home-search-v101--featured button{grid-column:1/2;margin-top:12px;}
.ts-home-hero-v101__secondary{display:inline-flex;align-items:center;justify-content:center;min-height:58px;margin-top:18px;padding:0 24px;border-radius:999px;border:1px solid rgba(255,255,255,.18);color:#fff!important;font-weight:950;background:rgba(255,255,255,.05);}
.ts-home-hero-v101__place-slider{position:relative;min-height:580px;}
.ts-home-hero-place-slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);gap:16px;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity var(--ts-home-hero-transition,600ms) ease, transform var(--ts-home-hero-transition,600ms) ease;}
.ts-home-hero-place-slide.is-active{opacity:1;pointer-events:auto;transform:none;}
.ts-home-hero-place-slide__main,.ts-home-hero-place-slide__side img{position:relative;overflow:hidden;border-radius:26px;box-shadow:0 30px 80px rgba(0,0,0,.30);border:1px solid rgba(255,255,255,.22);}
.ts-home-hero-place-slide__main{display:grid;align-content:end;min-height:580px;padding:28px;color:#fff!important;text-decoration:none;background:#0a314e;}
.ts-home-hero-place-slide__main img,.ts-home-hero-place-slide__main::after{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.ts-home-hero-place-slide__main::after{content:"";background:linear-gradient(180deg,rgba(4,18,33,.02),rgba(4,18,33,.82));}
.ts-home-hero-place-slide__main span,.ts-home-hero-place-slide__main strong,.ts-home-hero-place-slide__main small{position:relative;z-index:2;}
.ts-home-hero-place-slide__main span{justify-self:start;align-self:start;position:absolute;top:24px;left:24px;border-radius:999px;background:rgba(255,255,255,.9);color:#0b2b4c;padding:9px 14px;font-weight:950;font-size:12px;}
.ts-home-hero-place-slide__main strong{font-size:30px;line-height:1.05;font-weight:950;text-shadow:0 14px 28px rgba(0,0,0,.35);}
.ts-home-hero-place-slide__main small{margin-top:8px;color:rgba(255,255,255,.86);font-weight:760;}
.ts-home-hero-place-slide__side{display:grid;gap:16px;}
.ts-home-hero-place-slide__side img{width:100%;height:100%;min-height:282px;object-fit:cover;}
.ts-home-hero-v101__dots{position:absolute;left:50%;bottom:-34px;transform:translateX(-50%);display:flex;gap:9px;z-index:5;}
.ts-home-hero-v101__dots button{width:9px;height:9px;border:0;border-radius:999px;background:rgba(255,255,255,.44);cursor:pointer;}
.ts-home-hero-v101__dots button.is-active{width:24px;background:#55dde4;}
.ts-home-hero-v101__benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:center;margin-top:46px;color:rgba(255,255,255,.84);font-weight:850;}
.ts-home-hero-v101__benefits span{display:flex;align-items:center;gap:10px;}
.ts-home-hero-v101__benefits span::before{content:"✓";display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:rgba(85,221,228,.16);color:#55dde4;}
.ts-home-hero-v101--europe-cinematic{min-height:100vh;padding:clamp(116px,12vh,160px) 0 0;display:grid;align-content:end;}
.ts-home-hero-v101--europe-cinematic .ts-home-hero-v101__overlay{background:linear-gradient(90deg,rgba(3,17,31,.94) 0%,rgba(3,17,31,.73) 45%,rgba(3,17,31,.22) 100%);}
.ts-home-hero-v101__cinematic-shell{display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,.82fr);gap:42px;align-items:center;padding-bottom:70px;}
.ts-home-hero-v101--europe-cinematic .ts-home-hero-v101__copy h1{font-size:clamp(56px,5.3vw,96px);}
.ts-home-hero-v101__cards{position:relative;display:grid;grid-template-columns:1fr;min-height:420px;align-items:center;}
.ts-home-hero-v101__card{grid-area:1/1;justify-self:end;width:clamp(260px,23vw,390px);height:clamp(330px,48vh,470px);border-radius:24px;overflow:hidden;background-image:linear-gradient(180deg,rgba(3,17,31,.05),rgba(3,17,31,.78)),var(--ts-card-bg);background-size:cover;background-position:center;display:grid;align-content:end;gap:5px;padding:24px;color:#fff!important;border:1px solid rgba(255,255,255,.3);box-shadow:0 28px 70px rgba(0,0,0,.30);transform:translateX(calc(var(--i,0) * 84px)) scale(calc(1 - var(--i,0) * .08));opacity:calc(1 - var(--i,0) * .18);}
.ts-home-hero-v101__card:nth-child(1){--i:0;z-index:3}.ts-home-hero-v101__card:nth-child(2){--i:1;z-index:2}.ts-home-hero-v101__card:nth-child(3){--i:2;z-index:1}
.ts-home-hero-v101__card strong{font-size:24px;font-weight:950;text-shadow:0 12px 30px rgba(0,0,0,.45);}.ts-home-hero-v101__card span{color:rgba(255,255,255,.84);font-weight:750;}
.ts-home-hero-v101__cards button{position:absolute;right:-22px;top:50%;transform:translateY(-50%);width:58px;height:58px;border-radius:999px;border:0;background:#fff;color:#0b2b4c;font-size:24px;font-weight:950;box-shadow:0 18px 40px rgba(0,0,0,.2);}
.ts-home-hero-v101__search-dock{position:relative;z-index:4;margin-bottom:-42px;}
.ts-home-search-v101--dock{border-radius:34px;padding:18px;}
.ts-home-hero-v101--europe-cinematic + .ts-section,.ts-home-hero-v101--europe-fullscreen + .ts-section{padding-top:120px;}

@media(max-width:1366px) and (min-width:1181px){
  .ts-home-hero-v101__copy h1{font-size:clamp(52px,5.3vw,76px);}.ts-home-hero-v101__copy p{font-size:17px;max-width:580px;}
  .ts-home-hero-v101__featured-shell,.ts-home-hero-v101__cinematic-shell{grid-template-columns:minmax(0,1fr) minmax(430px,.9fr);gap:32px;}
  .ts-home-hero-place-slide__main{min-height:450px;}.ts-home-hero-place-slide__side img{min-height:217px;}.ts-home-hero-v101__place-slider{min-height:450px;}
  .ts-home-search-v101{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(170px,.7fr);}.ts-home-search-v101__field:nth-of-type(2){border-right:0}.ts-home-search-v101 button{grid-column:auto;}
}
@media(max-width:1180px){
  body.ts-home-overlay-header .ts-site-header{position:absolute!important;background:linear-gradient(180deg,rgba(246,251,254,.96),rgba(246,251,254,.86))!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;}
  body.ts-home-overlay-header .ts-site-header .ts-logo,body.ts-home-overlay-header .ts-site-header .ts-logo-text,body.ts-home-overlay-header .ts-site-header .ts-nav-link,body.ts-home-overlay-header .ts-site-header .ts-mobile-toggle{color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;text-shadow:none!important;}
  .ts-home-hero-v101{padding-top:calc(var(--ts-header-height,136px) + 44px);}
  .ts-home-hero-v101--europe-fullscreen,.ts-home-hero-v101--europe-featured,.ts-home-hero-v101--europe-cinematic{min-height:880px;}
  .ts-home-hero-v101__fullscreen-shell,.ts-home-hero-v101__featured-shell,.ts-home-hero-v101__cinematic-shell{display:grid!important;grid-template-columns:1fr!important;min-height:0!important;gap:28px;align-content:center;}
  .ts-home-hero-v101__copy h1{font-size:clamp(46px,9vw,74px)!important;max-width:720px;}.ts-home-hero-v101__copy p{font-size:17px;max-width:720px;}
  .ts-home-search-v101{grid-template-columns:repeat(2,minmax(0,1fr))!important;border-radius:28px;}.ts-home-search-v101__field:nth-of-type(2n){border-right:0}.ts-home-search-v101 button{grid-column:1/-1;min-height:58px;}
  .ts-home-hero-v101__place-slider{min-height:380px;}.ts-home-hero-place-slide{grid-template-columns:1fr 180px;}.ts-home-hero-place-slide__main{min-height:380px;}.ts-home-hero-place-slide__side img{min-height:182px;}
  .ts-home-hero-v101__benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px;}
  .ts-home-hero-v101__cards{min-height:310px;justify-items:center;}.ts-home-hero-v101__card{justify-self:center;width:min(340px,48vw);height:310px;}.ts-home-hero-v101__cards button{right:20px;}
  .ts-home-hero-v101__search-dock{margin-bottom:-34px;}
}
@media(max-width:760px){
  .ts-home-hero-v101{width:100%;margin-left:0;transform:none;padding:calc(var(--ts-header-height,176px) + 34px) 18px 42px;}
  .ts-home-hero-v101--europe-fullscreen,.ts-home-hero-v101--europe-featured,.ts-home-hero-v101--europe-cinematic{min-height:auto;}
  .ts-home-hero-v101 .ts-container{width:100%!important;max-width:none!important;}
  .ts-home-hero-v101__kicker{font-size:11px;letter-spacing:.12em;margin-bottom:16px;}.ts-home-hero-v101__kicker::after{width:34px;}
  .ts-home-hero-v101__copy h1{font-size:clamp(42px,13vw,58px)!important;line-height:.9!important;}.ts-home-hero-v101__copy p{font-size:16px;line-height:1.5;}
  .ts-home-hero-v101__chips a{min-height:38px;padding:0 14px;font-size:13px;}
  .ts-home-search-v101{grid-template-columns:1fr!important;padding:10px;border-radius:24px;}.ts-home-search-v101__field{border-right:0!important;border-bottom:1px solid rgba(9,52,64,.12);min-height:58px;padding:0 10px;}.ts-home-search-v101__field:last-of-type{border-bottom:0}.ts-home-search-v101 button{min-height:54px;border-radius:18px;margin-top:8px;}
  .ts-home-hero-v101__trust{font-size:13px;flex-wrap:wrap;}.ts-home-hero-v101__avatars i{width:26px;height:26px;}
  .ts-home-hero-place-slide{grid-template-columns:1fr;}.ts-home-hero-place-slide__side{grid-template-columns:1fr 1fr;}.ts-home-hero-place-slide__main{min-height:260px;padding:20px;}.ts-home-hero-place-slide__side img{min-height:130px;}.ts-home-hero-v101__place-slider{min-height:420px;}
  .ts-home-hero-v101__dots{bottom:-20px;}.ts-home-hero-v101__benefits{grid-template-columns:1fr;gap:10px;}
  .ts-home-hero-v101__cards{display:none;}.ts-home-hero-v101__search-dock{margin-bottom:0;}.ts-home-hero-v101--europe-cinematic + .ts-section,.ts-home-hero-v101--europe-fullscreen + .ts-section{padding-top:64px;}
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open{background:rgba(255,255,255,.98)!important;color:#0b2b4c!important;}
}


/* TuSpot EU v5.0 beta.102 — home hero cache bust guard. Styles are loaded with filemtime versioning from functions.php so template changes are not stuck behind browser/CDN cache. */

/* TuSpot EU v5.0 beta.103 — homepage hero polish, real search UX, magazine section. */
body.ts-home-overlay-header .ts-site-header{
  min-height:74px!important;
  overflow:visible!important;
  padding-top:max(0px,env(safe-area-inset-top))!important;
}
body.ts-home-overlay-header .ts-site-header .ts-header-inner{
  min-height:74px!important;
  overflow:visible!important;
}
body.ts-home-overlay-header .ts-site-header .ts-logo-img{
  max-height:46px!important;
  width:auto!important;
}
body.ts-home-overlay-header .ts-nav-item:hover > .ts-nav-link,
body.ts-home-overlay-header .ts-nav-item:focus-within > .ts-nav-link,
body.ts-home-overlay-header .ts-nav-item.is-dropdown-open > .ts-nav-link{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 14px 34px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.ts-home-overlay-header .ts-nav-item:hover > .ts-nav-link span,
body.ts-home-overlay-header .ts-nav-item:focus-within > .ts-nav-link span,
body.ts-home-overlay-header .ts-nav-item.is-dropdown-open > .ts-nav-link span{
  color:#55dde4!important;
  -webkit-text-fill-color:#55dde4!important;
}
body.ts-home-overlay-header .ts-dropdown{
  background:rgba(255,255,255,.96)!important;
  color:#0b2b4c!important;
  -webkit-text-fill-color:initial!important;
  border:1px solid rgba(188,230,245,.62)!important;
  box-shadow:0 28px 70px rgba(3,22,38,.22)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
body.ts-home-overlay-header .ts-dropdown a,
body.ts-home-overlay-header .ts-dropdown .ts-dropdown-group-label{
  color:#0b2b4c!important;
  -webkit-text-fill-color:#0b2b4c!important;
  text-shadow:none!important;
}
body.ts-home-overlay-header .ts-dropdown a:hover,
body.ts-home-overlay-header .ts-dropdown a:focus-visible{
  background:#eaf8fe!important;
  color:#063440!important;
}
.ts-home-hero-v101{
  margin-top:calc(-1 * var(--ts-header-height,74px));
  padding-top:clamp(128px,13vh,174px)!important;
}
body.admin-bar .ts-home-hero-v101{margin-top:calc(-1 * (var(--ts-header-height,74px) + 32px));}
.ts-home-hero-v101__chips a{
  transition:transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease, color .22s ease;
}
.ts-home-hero-v101__chips a:hover,
.ts-home-hero-v101__chips a:focus-visible{
  transform:translateY(-3px);
  background:rgba(85,221,228,.18)!important;
  border-color:rgba(85,221,228,.72)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(35,187,231,.22), inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
.ts-home-search-v101 select[data-ts-home-select]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  clip:rect(0 0 0 0)!important;
}
.ts-home-search-v101__field{position:relative!important;overflow:visible!important;}
.ts-home-search-v101__select{position:relative;min-width:0;}
.ts-home-search-v101__select-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:100%;
  min-height:28px;
  border:0;
  background:transparent;
  color:#617589;
  font-weight:900;
  font-size:14px;
  line-height:1.1;
  cursor:pointer;
  padding:0;
  text-align:left;
}
.ts-home-search-v101__select-toggle strong{display:block;color:#0b2b4c;font-size:16px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.ts-home-search-v101__select-toggle i{margin-left:auto;font-style:normal;color:#0b2b4c;font-size:13px;transition:transform .18s ease;}
.ts-home-search-v101__select.is-open .ts-home-search-v101__select-toggle i{transform:rotate(180deg);}
.ts-home-search-v101__menu{
  position:absolute;
  left:0;
  top:calc(100% + 18px);
  z-index:90;
  width:max(220px,100%);
  max-height:286px;
  overflow:auto;
  padding:10px;
  border-radius:20px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(188,230,245,.72);
  box-shadow:0 28px 70px rgba(3,22,38,.24);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px) scale(.98);
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  scrollbar-width:thin;
}
.ts-home-search-v101__select.is-open .ts-home-search-v101__menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.ts-home-search-v101__option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  min-height:44px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:#0b2b4c;
  font-weight:850;
  cursor:pointer;
  padding:0 12px;
  text-align:left;
}
.ts-home-search-v101__option:hover,
.ts-home-search-v101__option:focus-visible{background:#eaf8fe;outline:0;}
.ts-home-search-v101__option.is-selected{background:#0b2b4c;color:#fff;}
.ts-home-search-v101__option.is-selected::after{content:"✓";color:#55dde4;font-weight:950;}
.ts-home-search-v101--dock .ts-home-search-v101__menu,
.ts-home-search-v101--fullscreen .ts-home-search-v101__menu{top:calc(100% + 16px);}
.ts-home-search-v101 button{transition:transform .22s ease, box-shadow .22s ease, background .22s ease;}
.ts-home-search-v101 button:hover,.ts-home-search-v101 button:focus-visible{transform:translateY(-2px);box-shadow:0 20px 42px rgba(3,22,38,.22)!important;}
.ts-places-workspace-top.ts-white-card{margin-top:clamp(24px,3vw,54px)!important;}

.ts-home-magazine-latest{position:relative;}
.ts-home-magazine-panel{
  position:relative;
  border-radius:36px;
  padding:clamp(24px,4vw,54px);
  background:linear-gradient(135deg,#071f34 0%,#0b5264 100%);
  color:#fff;
  box-shadow:0 32px 80px rgba(7,31,52,.18);
  overflow:hidden;
}
.ts-home-magazine-panel::after{content:"";position:absolute;right:-90px;bottom:-120px;width:360px;height:360px;border-radius:999px;background:rgba(85,221,228,.16);pointer-events:none;}
.ts-home-magazine-head{position:relative;z-index:2;margin-bottom:28px;}
.ts-home-magazine-head h2,.ts-home-magazine-head p{color:#fff!important;}
.ts-home-magazine-head p{color:rgba(255,255,255,.78)!important;}
.ts-home-magazine-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr repeat(2,minmax(0,.95fr));gap:18px;align-items:stretch;}
.ts-home-magazine-grid .ts-mag-card{height:100%;background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.28);box-shadow:0 24px 58px rgba(0,0,0,.18);overflow:hidden;}
.ts-home-magazine-grid .ts-mag-card--featured{display:grid;grid-template-rows:minmax(260px,1fr) auto;}
.ts-home-magazine-grid .ts-mag-card__media img{height:220px;object-fit:cover;}
.ts-home-magazine-grid .ts-mag-card--featured .ts-mag-card__media img{height:100%;min-height:260px;}
.ts-home-magazine-grid .ts-mag-card h2{font-size:clamp(22px,1.8vw,32px);line-height:1.02;}
.ts-home-magazine-grid .ts-mag-card:not(.ts-mag-card--featured) h2{font-size:22px;}

@media(max-width:1180px){
  body.ts-home-overlay-header .ts-site-header{position:absolute!important;background:linear-gradient(180deg,rgba(246,251,254,.96),rgba(246,251,254,.88))!important;}
  body.ts-home-overlay-header .ts-site-header .ts-logo-img{max-height:44px!important;}
  body.ts-home-overlay-header .ts-site-header .ts-mobile-toggle{background:#fff!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;border-color:rgba(188,230,245,.8)!important;}
  body.ts-home-overlay-header .ts-main-nav.is-open{background:rgba(255,255,255,.98)!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;}
  body.ts-home-overlay-header .ts-main-nav.is-open .ts-nav-link{color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;text-shadow:none!important;}
  .ts-home-hero-v101{margin-top:calc(-1 * var(--ts-header-height,136px));padding-top:calc(var(--ts-header-height,136px) + 44px)!important;}
  .ts-home-magazine-grid{grid-template-columns:1fr 1fr;}
  .ts-home-magazine-grid .ts-mag-card--featured{grid-column:1/-1;}
}
@media(max-width:760px){
  .ts-home-hero-v101{margin-top:calc(-1 * var(--ts-header-height,176px));padding-top:calc(var(--ts-header-height,176px) + 34px)!important;}
  .ts-home-search-v101__menu{position:fixed!important;left:18px!important;right:18px!important;top:auto!important;bottom:calc(env(safe-area-inset-bottom) + 22px)!important;width:auto!important;max-height:min(420px,58dvh)!important;border-radius:24px!important;z-index:999!important;}
  .ts-home-search-v101__select.is-open::before{content:"";position:fixed;inset:0;background:rgba(3,22,38,.18);z-index:998;}
  .ts-home-magazine-panel{border-radius:28px;padding:22px;}
  .ts-home-magazine-grid{grid-template-columns:1fr;}
  .ts-home-magazine-grid .ts-mag-card__media img,.ts-home-magazine-grid .ts-mag-card--featured .ts-mag-card__media img{height:220px;min-height:0;}
}

/* TuSpot EU v5.0 beta.104 — hero template 1 mobile overlay, SEO image alt support, search icon/CTA polish. */
.ts-home-search-v101__icon svg,
.ts-home-search-v101__button-icon svg{
  width:21px!important;
  height:21px!important;
  display:block!important;
  overflow:visible!important;
}
.ts-home-search-v101__icon svg path,
.ts-home-search-v101__button-icon svg path{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.85!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.ts-home-search-v101__icon{
  color:#082949!important;
  background:linear-gradient(135deg,#f2fcff,#dff6fd)!important;
  border:1px solid rgba(188,230,245,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 10px 22px rgba(35,187,231,.08)!important;
}
.ts-home-search-v101__field:hover .ts-home-search-v101__icon,
.ts-home-search-v101__field:focus-within .ts-home-search-v101__icon{
  color:#0b2b4c!important;
  background:linear-gradient(135deg,#ffffff,#c8f2fb)!important;
  border-color:rgba(35,187,231,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 14px 28px rgba(35,187,231,.16)!important;
}
.ts-home-search-v101__button-icon{
  display:inline-grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  color:currentColor!important;
}
.ts-home-search-v101 button{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:linear-gradient(135deg,#072846 0%,#0b3157 54%,#0f426d 100%)!important;
  transition:transform .24s ease,box-shadow .24s ease,background .24s ease,color .24s ease!important;
}
.ts-home-search-v101 button::before{
  content:"";
  position:absolute;
  inset:-45% -35%;
  background:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,255,255,.34) 48%,transparent 60%,transparent 100%);
  transform:translateX(-70%) rotate(8deg);
  opacity:0;
  transition:transform .72s cubic-bezier(.16,1,.3,1),opacity .24s ease;
  z-index:-1;
}
.ts-home-search-v101 button::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.16);
  pointer-events:none;
}
.ts-home-search-v101 button:hover,
.ts-home-search-v101 button:focus-visible{
  transform:translateY(-3px)!important;
  background:linear-gradient(135deg,#0b3157 0%,#0f5578 50%,#23bbe7 100%)!important;
  box-shadow:0 26px 54px rgba(3,22,38,.28),0 0 0 4px rgba(35,187,231,.13)!important;
}
.ts-home-search-v101 button:hover::before,
.ts-home-search-v101 button:focus-visible::before{
  opacity:1;
  transform:translateX(68%) rotate(8deg);
}
.ts-home-search-v101__menu{
  scrollbar-width:thin;
  scrollbar-color:#23bbe7 #eaf8fe;
}
.ts-home-search-v101__menu::-webkit-scrollbar{width:8px;}
.ts-home-search-v101__menu::-webkit-scrollbar-track{background:#eaf8fe;border-radius:999px;}
.ts-home-search-v101__menu::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#23bbe7,#0f5578);border-radius:999px;border:2px solid #eaf8fe;}
.ts-home-search-v101__option{
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.ts-home-search-v101__option:hover,
.ts-home-search-v101__option:focus-visible{
  transform:translateX(3px);
}

body.ts-home-overlay-header .ts-site-header{
  height:auto!important;
  min-height:86px!important;
  padding-top:max(10px,env(safe-area-inset-top))!important;
  padding-bottom:10px!important;
  overflow:visible!important;
  transform:none!important;
}
body.ts-home-overlay-header .ts-site-header .ts-header-inner{
  min-height:62px!important;
  overflow:visible!important;
  align-items:center!important;
}
body.ts-home-overlay-header .ts-site-header .ts-logo-img{
  display:block!important;
  max-height:50px!important;
  object-fit:contain!important;
}

@media(min-width:761px) and (max-width:1180px){
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    background:linear-gradient(180deg,rgba(3,22,38,.56),rgba(3,22,38,0))!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo-text,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-nav-link{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 12px 30px rgba(0,0,0,.28)!important;
  }
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
    margin-top:calc(-1 * var(--ts-header-height,136px))!important;
    padding-top:calc(var(--ts-header-height,136px) + 38px)!important;
    min-height:100svh!important;
  }
}
@media(max-width:760px){
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    min-height:176px!important;
    background:linear-gradient(180deg,rgba(3,22,38,.54),rgba(3,22,38,0))!important;
    border-bottom:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo-text{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 14px 34px rgba(0,0,0,.30)!important;
  }
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-header-inner{
    min-height:154px!important;
  }
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-mobile-toggle{
    background:rgba(255,255,255,.92)!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    border-color:rgba(188,230,245,.78)!important;
    box-shadow:0 16px 40px rgba(3,22,38,.18)!important;
  }
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
    margin-top:calc(-1 * var(--ts-header-height,176px))!important;
    padding-top:calc(var(--ts-header-height,176px) + 26px)!important;
    min-height:100svh!important;
  }
  .ts-home-search-v101__icon{
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
  }
  .ts-home-search-v101__icon svg{width:22px!important;height:22px!important;}
}


/* TuSpot EU v5.0 beta.105 — homepage hero search rollback/fix, full-height hero and header overlay polish. */
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:1000!important;
  height:auto!important;
  min-height:86px!important;
  padding-top:max(14px,env(safe-area-inset-top))!important;
  padding-bottom:10px!important;
  overflow:visible!important;
  background:linear-gradient(180deg,rgba(3,22,38,.48),rgba(3,22,38,0))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.admin-bar.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{top:32px!important;}
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-header-inner{
  height:auto!important;
  min-height:64px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  overflow:visible!important;
  align-items:center!important;
}
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo-img,
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo-img--svg,
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-logo-img--raster{
  max-height:48px!important;
  display:block!important;
  object-fit:contain!important;
}
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-nav-link{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 12px 30px rgba(0,0,0,.28)!important;
}
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-nav-link:hover,
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-nav-item:focus-within .ts-nav-link{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 16px 34px rgba(0,0,0,.16)!important;
}
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-dropdown,
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-dropdown a,
body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-dropdown .ts-dropdown-group-label{
  color:#0b2b4c!important;
  -webkit-text-fill-color:#0b2b4c!important;
  text-shadow:none!important;
}
body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
  margin-top:0!important;
  min-height:100svh!important;
  height:auto!important;
  padding-top:clamp(112px,12vh,150px)!important;
  padding-bottom:clamp(34px,5vh,58px)!important;
  display:grid!important;
  align-items:center!important;
}
body.admin-bar.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
  min-height:calc(100svh - 32px)!important;
}
body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen .ts-home-hero-v101__fullscreen-shell{
  min-height:0!important;
  align-content:center!important;
  gap:clamp(28px,4vh,46px)!important;
}

/* Search form: keep the custom dropdown, but restore the clean integrated search-bar look. */
.ts-home-search-v101{
  overflow:visible!important;
  display:grid!important;
  grid-template-columns:repeat(var(--ts-search-fields,4),minmax(155px,1fr)) minmax(220px,.82fr)!important;
  align-items:center!important;
  gap:0!important;
  width:100%!important;
  color:#0b2b4c!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(255,255,255,.62)!important;
  border-radius:34px!important;
  padding:16px!important;
  box-shadow:0 30px 80px rgba(3,22,38,.22)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.ts-home-search-v101__field{
  position:relative!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  align-items:center!important;
  gap:14px!important;
  min-width:0!important;
  min-height:70px!important;
  padding:0 24px!important;
  margin:0!important;
  border-right:1px solid rgba(9,52,64,.13)!important;
  border-bottom:0!important;
  overflow:visible!important;
}
.ts-home-search-v101__field:last-of-type{border-right:0!important;}
.ts-home-search-v101__icon{
  width:46px!important;
  height:46px!important;
  flex:0 0 46px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:#eaf8fe!important;
  border:1px solid rgba(35,187,231,.20)!important;
  color:#0b2b4c!important;
  box-shadow:none!important;
}
.ts-home-search-v101__icon svg{width:21px!important;height:21px!important;display:block!important;}
.ts-home-search-v101__body{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
  width:100%!important;
  align-items:center!important;
}
.ts-home-search-v101__label{
  display:block!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:0!important;
  color:#0b2b4c!important;
  text-transform:none!important;
  margin:0!important;
}
.ts-home-search-v101 select[data-ts-home-select]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  clip:rect(0 0 0 0)!important;
}
.ts-home-search-v101__select{position:relative!important;display:block!important;min-width:0!important;width:100%!important;}
.ts-home-search-v101 .ts-home-search-v101__select-toggle,
.ts-home-search-v101 .ts-home-search-v101__select-toggle:hover,
.ts-home-search-v101 .ts-home-search-v101__select-toggle:focus-visible{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  min-height:24px!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#62768a!important;
  box-shadow:none!important;
  transform:none!important;
  text-align:left!important;
  cursor:pointer!important;
  outline:none!important;
}
.ts-home-search-v101 .ts-home-search-v101__select-toggle::before,
.ts-home-search-v101 .ts-home-search-v101__select-toggle::after,
.ts-home-search-v101 .ts-home-search-v101__option::before,
.ts-home-search-v101 .ts-home-search-v101__option::after{display:none!important;content:none!important;}
.ts-home-search-v101__select-toggle strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#63778a!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:850!important;
}
.ts-home-search-v101__select-toggle i{
  display:inline-grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  color:#0b2b4c!important;
  font-style:normal!important;
  font-size:13px!important;
  line-height:1!important;
  transition:transform .18s ease!important;
}
.ts-home-search-v101__select.is-open .ts-home-search-v101__select-toggle i{transform:rotate(180deg)!important;}
.ts-home-search-v101__menu{
  position:absolute!important;
  left:0!important;
  top:calc(100% + 15px)!important;
  z-index:999!important;
  width:max(220px,100%)!important;
  max-height:286px!important;
  overflow:auto!important;
  padding:10px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(188,230,245,.72)!important;
  box-shadow:0 28px 70px rgba(3,22,38,.24)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(8px) scale(.98)!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
  scrollbar-width:thin!important;
  scrollbar-color:#23bbe7 #eaf8fe!important;
}
.ts-home-search-v101__select.is-open .ts-home-search-v101__menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0) scale(1)!important;
}
.ts-home-search-v101 .ts-home-search-v101__option,
.ts-home-search-v101 .ts-home-search-v101__option:hover,
.ts-home-search-v101 .ts-home-search-v101__option:focus-visible{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-height:44px!important;
  height:auto!important;
  padding:0 12px!important;
  margin:0!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  color:#0b2b4c!important;
  font-weight:850!important;
  font-size:15px!important;
  line-height:1.2!important;
  box-shadow:none!important;
  transform:none!important;
  cursor:pointer!important;
  text-align:left!important;
}
.ts-home-search-v101 .ts-home-search-v101__option:hover,
.ts-home-search-v101 .ts-home-search-v101__option:focus-visible{background:#eaf8fe!important;outline:0!important;}
.ts-home-search-v101 .ts-home-search-v101__option.is-selected{background:#0b2b4c!important;color:#fff!important;}
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::after{display:inline!important;content:"✓"!important;color:#55dde4!important;font-weight:950!important;}
.ts-home-search-v101 > button{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  min-height:64px!important;
  height:auto!important;
  border:0!important;
  border-radius:22px!important;
  padding:0 28px!important;
  background:#082949!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  cursor:pointer!important;
  box-shadow:0 18px 36px rgba(8,41,73,.20)!important;
  transform:none!important;
}
.ts-home-search-v101 > button:hover,
.ts-home-search-v101 > button:focus-visible{
  transform:translateY(-3px)!important;
  background:linear-gradient(135deg,#0b3157 0%,#0f5578 50%,#23bbe7 100%)!important;
  box-shadow:0 26px 54px rgba(3,22,38,.28),0 0 0 4px rgba(35,187,231,.13)!important;
}
.ts-home-search-v101 > button::before{display:block!important;}
.ts-home-search-v101 > button::after{display:block!important;}

@media(min-width:1181px) and (max-width:1366px){
  .ts-home-search-v101{grid-template-columns:repeat(var(--ts-search-fields,4),minmax(135px,1fr)) minmax(190px,.74fr)!important;padding:14px!important;border-radius:30px!important;}
  .ts-home-search-v101__field{grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;min-height:62px!important;padding:0 16px!important;}
  .ts-home-search-v101__icon{width:40px!important;height:40px!important;flex-basis:40px!important;}
  .ts-home-search-v101__select-toggle strong{font-size:14px!important;}
  .ts-home-search-v101 > button{min-height:60px!important;font-size:15px!important;padding:0 20px!important;}
}
@media(min-width:761px) and (max-width:1180px){
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{top:0!important;min-height:138px!important;padding-top:18px!important;background:linear-gradient(180deg,rgba(3,22,38,.42),rgba(3,22,38,0))!important;}
  body.admin-bar.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{top:32px!important;}
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-header-inner{min-height:104px!important;}
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{margin-top:0!important;min-height:100svh!important;padding-top:calc(var(--ts-header-height,136px) + 26px)!important;padding-bottom:40px!important;}
  .ts-home-search-v101{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:18px!important;border-radius:30px!important;gap:0!important;}
  .ts-home-search-v101__field{border-right:0!important;border-bottom:1px solid rgba(9,52,64,.13)!important;padding:16px!important;min-height:74px!important;}
  .ts-home-search-v101__field:nth-of-type(odd){border-right:1px solid rgba(9,52,64,.13)!important;}
  .ts-home-search-v101__field:nth-last-of-type(-n+2){border-bottom:0!important;}
  .ts-home-search-v101 > button{grid-column:1/-1!important;margin-top:16px!important;min-height:62px!important;width:100%!important;}
}
@media(max-width:760px){
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{top:0!important;min-height:176px!important;padding-top:max(16px,env(safe-area-inset-top))!important;background:linear-gradient(180deg,rgba(3,22,38,.40),rgba(3,22,38,0))!important;}
  body.admin-bar.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header{top:46px!important;}
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-header-inner{min-height:150px!important;}
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{margin-top:0!important;min-height:100svh!important;padding-top:calc(var(--ts-header-height,176px) + 18px)!important;padding-bottom:42px!important;}
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen .ts-home-hero-v101__fullscreen-shell{gap:28px!important;}
  .ts-home-search-v101{grid-template-columns:1fr!important;padding:18px 22px!important;border-radius:30px!important;gap:0!important;}
  .ts-home-search-v101__field{grid-template-columns:54px minmax(0,1fr)!important;gap:16px!important;min-height:82px!important;padding:14px 0 18px!important;border-right:0!important;border-bottom:1px solid rgba(9,52,64,.13)!important;}
  .ts-home-search-v101__field:last-of-type{border-bottom:0!important;}
  .ts-home-search-v101__icon{width:52px!important;height:52px!important;flex-basis:52px!important;}
  .ts-home-search-v101__select-toggle strong{font-size:18px!important;}
  .ts-home-search-v101 > button{width:100%!important;min-height:64px!important;margin-top:18px!important;font-size:18px!important;border-radius:22px!important;}
  .ts-home-search-v101__menu{position:fixed!important;left:18px!important;right:18px!important;top:auto!important;bottom:calc(env(safe-area-inset-bottom) + 22px)!important;width:auto!important;max-height:min(420px,58dvh)!important;border-radius:24px!important;z-index:9999!important;}
  .ts-home-search-v101__select.is-open::before{content:"";position:fixed;inset:0;background:rgba(3,22,38,.30);z-index:9998;}
}


/* TuSpot EU v5.0 beta.106 — footer newsletter, hero header/search polish. */
body.ts-home-overlay-header .ts-site-header{
  top:0!important;
  z-index:800!important;
  padding-top:max(16px,env(safe-area-inset-top))!important;
  padding-bottom:12px!important;
  min-height:96px!important;
  overflow:visible!important;
}
body.admin-bar.ts-home-overlay-header .ts-site-header{top:32px!important;}
body.ts-home-overlay-header .ts-site-header .ts-header-inner{
  min-height:66px!important;
  height:auto!important;
  overflow:visible!important;
  align-items:center!important;
}
body.ts-home-overlay-header .ts-site-header .ts-account-trigger,
body.ts-home-overlay-header .ts-site-header .ts-account-trigger-copy,
body.ts-home-overlay-header .ts-site-header .ts-account-trigger-copy strong,
body.ts-home-overlay-header .ts-site-header .ts-account-trigger-chevron{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 10px 26px rgba(0,0,0,.24)!important;
}
body.ts-home-overlay-header .ts-site-header .ts-account-trigger{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.ts-home-overlay-header .ts-site-header .ts-account-trigger:hover,
body.ts-home-overlay-header .ts-site-header .ts-account-menu.is-dropdown-open .ts-account-trigger{
  background:rgba(255,255,255,.22)!important;
  border-color:rgba(85,221,228,.55)!important;
}
body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
  min-height:100vh!important;
  min-height:100svh!important;
  padding-top:clamp(148px,15vh,196px)!important;
  padding-bottom:clamp(72px,8vh,104px)!important;
  align-items:center!important;
}
body.admin-bar.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{
  min-height:calc(100vh - 32px)!important;
  min-height:calc(100svh - 32px)!important;
}
.ts-home-search-v101__select-toggle:focus,
.ts-home-search-v101__select-toggle:focus-visible,
.ts-home-search-v101__option:focus,
.ts-home-search-v101__option:focus-visible{
  outline:0!important;
  box-shadow:none!important;
}
.ts-home-search-v101__option{
  position:relative!important;
  justify-content:flex-start!important;
  padding-left:34px!important;
  border:1px solid transparent!important;
}
.ts-home-search-v101__option.is-selected{
  background:#effbff!important;
  color:#0b2b4c!important;
  border-color:rgba(35,187,231,.28)!important;
  box-shadow:none!important;
  outline:0!important;
}
.ts-home-search-v101__option.is-selected::before{
  content:"✓";
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  color:#23bbe7;
  font-weight:950;
}
.ts-home-search-v101__option.is-selected::after{content:none!important;}
.ts-home-search-v101__option:hover,
.ts-home-search-v101__option:focus-visible{
  background:#eaf8fe!important;
  color:#0b2b4c!important;
  border-color:rgba(35,187,231,.22)!important;
  transform:none!important;
}

.ts-footer-newsletter{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px);
  gap:clamp(22px,4vw,58px);
  align-items:center;
  margin-bottom:clamp(34px,4vw,62px);
  padding:clamp(26px,4vw,54px);
  border-radius:36px;
  background:linear-gradient(135deg,#071f34 0%,#0b5264 100%);
  color:#fff;
  box-shadow:0 32px 80px rgba(7,31,52,.18);
  overflow:hidden;
}
.ts-footer-newsletter::after{
  content:"";
  position:absolute;
  right:-110px;
  bottom:-130px;
  width:360px;
  height:360px;
  border-radius:999px;
  background:rgba(85,221,228,.16);
  pointer-events:none;
}
.ts-footer-newsletter-copy,
.ts-footer-newsletter-form{position:relative;z-index:2;}
.ts-footer-newsletter-copy span{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border-radius:999px;
  background:rgba(85,221,228,.14);
  color:#55dde4;
  padding:9px 14px;
  font-size:12px;
  line-height:1;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.ts-footer-newsletter-copy h2{
  margin:0 0 14px;
  max-width:720px;
  font-family:var(--ts-font-display);
  font-size:clamp(34px,4vw,62px);
  line-height:.94;
  letter-spacing:-.06em;
  color:#fff;
}
.ts-footer-newsletter-copy p{margin:0;max-width:620px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.55;font-weight:750;}
.ts-footer-newsletter-form{
  padding:18px;
  border-radius:28px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 20px 46px rgba(0,0,0,.16);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.ts-footer-newsletter-form label{
  display:block;
  margin:0 0 10px;
  color:rgba(255,255,255,.82);
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ts-footer-newsletter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.ts-footer-newsletter-row input{
  width:100%;
  min-height:58px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.96);
  color:#0b2b4c;
  padding:0 20px;
  font-weight:850;
  outline:0;
}
.ts-footer-newsletter-row input:focus{border-color:#55dde4;box-shadow:0 0 0 4px rgba(85,221,228,.18);}
.ts-footer-newsletter-row button{
  min-height:58px;
  border:0;
  border-radius:999px;
  padding:0 22px;
  background:#23bbe7;
  color:#06233d;
  font-weight:950;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.ts-footer-newsletter-row button:hover,
.ts-footer-newsletter-row button:focus-visible{transform:translateY(-2px);background:#55dde4;box-shadow:0 18px 38px rgba(35,187,231,.25);outline:0;}
.ts-footer-newsletter-form small{display:block;margin-top:12px;color:rgba(255,255,255,.7);line-height:1.45;font-weight:700;}
.ts-footer-newsletter-status{display:block;margin-top:12px;border-radius:16px;padding:10px 12px;font-weight:900;}
.ts-footer-newsletter-status.is-ok{background:rgba(85,221,228,.18);color:#dffcff;}
.ts-footer-newsletter-status.is-error{background:rgba(255,255,255,.18);color:#fff;}
.ts-lang-row{display:none!important;}
.ts-site-footer .ts-footer-brand .ts-logo{display:inline-flex;margin-bottom:16px;align-items:center;}

@media(max-width:1180px){
  body.ts-home-overlay-header .ts-site-header{min-height:124px!important;padding-top:max(18px,env(safe-area-inset-top))!important;}
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{min-height:100svh!important;padding-top:calc(var(--ts-header-height,136px) + 54px)!important;}
  .ts-footer-newsletter{grid-template-columns:1fr;border-radius:30px;}
}
@media(max-width:760px){
  body.ts-home-overlay-header .ts-site-header{min-height:150px!important;padding-top:max(20px,env(safe-area-inset-top))!important;}
  body.ts-home-hero-template-europe-fullscreen .ts-home-hero-v101--europe-fullscreen{min-height:100svh!important;padding-top:calc(var(--ts-header-height,176px) + 44px)!important;}
  .ts-footer-newsletter{padding:22px;border-radius:28px;margin-bottom:34px;}
  .ts-footer-newsletter-row{grid-template-columns:1fr;}
  .ts-footer-newsletter-row button{width:100%;}
}


/* TuSpot EU v5.0 beta.107 — homepage content polish and manual section cards. */
.ts-owner-cta-section,.ts-container.ts-owner-cta{display:none!important;}
.ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101__option.is-selected::after{content:none!important;display:none!important;}
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::after{content:none!important;display:none!important;}

.ts-home-magazine-latest{background:#f6fbfe!important;}
.ts-home-magazine-panel{
  background:transparent!important;
  color:#0b2b4c!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  overflow:visible!important;
}
.ts-home-magazine-panel::after{display:none!important;}
.ts-home-magazine-head{margin-bottom:24px!important;}
.ts-home-magazine-head h2{color:#0b2b4c!important;}
.ts-home-magazine-head p{color:#607789!important;}
.ts-home-magazine-head .ts-btn--dark{background:#fff!important;color:#0b2b4c!important;border:1px solid #cdeef8!important;box-shadow:0 14px 34px rgba(9,52,64,.08)!important;}
.ts-home-magazine-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;}
.ts-home-magazine-grid .ts-mag-card{background:#fff!important;border:1px solid #cdeef8!important;box-shadow:0 18px 42px rgba(9,52,64,.08)!important;border-radius:24px!important;overflow:hidden!important;}
.ts-home-magazine-grid .ts-mag-card--featured{display:block!important;grid-column:auto!important;}
.ts-home-magazine-grid .ts-mag-card__media,.ts-home-magazine-grid .ts-mag-card--featured .ts-mag-card__media{height:190px!important;min-height:0!important;aspect-ratio:auto!important;background:#eaf8fe!important;}
.ts-home-magazine-grid .ts-mag-card__media img,.ts-home-magazine-grid .ts-mag-card--featured .ts-mag-card__media img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;display:block!important;}
.ts-home-magazine-grid .ts-mag-card h2,.ts-home-magazine-grid .ts-mag-card:not(.ts-mag-card--featured) h2{font-size:clamp(20px,1.35vw,26px)!important;line-height:1.08!important;color:#0b2b4c!important;}

.ts-home-discover-grid{display:grid;grid-template-columns:1.25fr .9fr .9fr;gap:22px;align-items:stretch;}
.ts-home-discover-card{position:relative;min-height:300px;border-radius:28px;overflow:hidden;border:1px solid #cdeef8;background:#fff;box-shadow:0 18px 42px rgba(9,52,64,.09);display:block;text-decoration:none!important;color:#fff!important;isolation:isolate;}
.ts-home-discover-card:first-child{min-height:380px;}
.ts-home-discover-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.ts-home-discover-card .ts-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,22,38,.05),rgba(3,22,38,.68));z-index:1;}
.ts-home-discover-card .ts-card-content{position:absolute;left:24px;right:24px;bottom:22px;z-index:2;display:grid;gap:8px;}
.ts-home-discover-card .ts-kicker{justify-self:start;background:rgba(255,255,255,.88)!important;color:#0d7890!important;}
.ts-home-discover-card strong{font:900 clamp(26px,2.5vw,42px)/.98 var(--ts-font-display);letter-spacing:-.045em;color:#fff;}
.ts-home-discover-card small{font-size:15px;line-height:1.45;color:rgba(255,255,255,.86);font-weight:750;}
.ts-home-discover-card:hover img{transform:scale(1.045);}
.ts-home-discover-card:hover{box-shadow:0 28px 64px rgba(9,52,64,.14);}

.ts-route-card a{display:block;color:inherit;text-decoration:none!important;height:100%;}
.ts-route-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.ts-route-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(9,52,64,.14);border-color:#8be2f6;}

/* Light fallback for the automated launch card when plugin inline styles are cached. */
.ts-v50b57-launch--feature{background:linear-gradient(145deg,#ffffff 0%,#f6fbfe 54%,#eaf8fe 100%)!important;color:#0b2b4c!important;border:1px solid #bdeefe!important;box-shadow:0 26px 70px rgba(9,52,64,.12)!important;}
.ts-v50b57-feature__main h2{color:#0b2b4c!important;}
.ts-v50b57-feature__lead{color:#5f7488!important;}
.ts-v50b57-current-stage{background:#fff!important;border:1px solid #bdeefe!important;box-shadow:0 18px 42px rgba(9,52,64,.08)!important;}
.ts-v50b57-current-stage h3,.ts-v50b57-stage h3{color:#0b2b4c!important;}
.ts-v50b57-current-stage p{color:#51687a!important;}
.ts-v50b57-stage{background:rgba(255,255,255,.78)!important;border:1px solid #cceff8!important;color:#0b2b4c!important;box-shadow:0 16px 36px rgba(9,52,64,.07)!important;}
.ts-v50b57-stage strong{color:#526b7e!important;}
.ts-v50b57-btn:not(.ts-v50b57-btn--primary){background:#fff!important;color:#0b2b4c!important;border-color:#cceff8!important;box-shadow:0 12px 30px rgba(9,52,64,.08)!important;}

@media(max-width:1180px){
  .ts-home-magazine-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ts-home-discover-grid{grid-template-columns:1fr 1fr;}
  .ts-home-discover-card:first-child{grid-column:1/-1;min-height:320px;}
}
@media(max-width:760px){
  .ts-home-magazine-grid{grid-template-columns:1fr!important;}
  .ts-home-magazine-grid .ts-mag-card__media{height:210px!important;}
  .ts-home-magazine-grid .ts-mag-card__media img{height:100%!important;}
  .ts-home-discover-grid{grid-template-columns:1fr;}
  .ts-home-discover-card,.ts-home-discover-card:first-child{min-height:260px;grid-column:auto;}
}

/* TuSpot EU v5.0 beta.108 — footer newsletter, destination cards and related places polish */
.ts-footer-newsletter{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.55fr)!important;
  align-items:center!important;
  gap:clamp(28px,5vw,84px)!important;
  padding:clamp(34px,5vw,70px)!important;
  margin:0 0 46px!important;
  border-radius:34px!important;
  background:linear-gradient(115deg,#fff 0%,#f7fdff 48%,#dbf8ff 100%)!important;
  border:1px solid rgba(35,187,231,.22)!important;
  color:#0b2b4c!important;
  box-shadow:0 34px 80px rgba(15,47,70,.12)!important;
  overflow:hidden!important;
}
.ts-footer-newsletter::before{content:"";position:absolute;inset:auto -10% -55% auto;width:46%;height:120%;border-radius:999px;background:radial-gradient(circle,rgba(35,187,231,.28),transparent 62%);pointer-events:none;}
.ts-footer-newsletter::after{background:linear-gradient(90deg,rgba(255,255,255,.88),rgba(255,255,255,.35))!important;opacity:.55!important;}
.ts-footer-newsletter-copy span{
  display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:32px!important;padding:0 15px!important;border-radius:999px!important;background:#eaf8fe!important;color:#0f7f94!important;font-size:12px!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-weight:950!important;
}
.ts-footer-newsletter-copy h2{
  margin:24px 0 16px!important;color:#0b2b4c!important;font:950 clamp(34px,4.3vw,58px)/.92 var(--ts-font-display)!important;letter-spacing:-.065em!important;max-width:880px!important;
}
.ts-footer-newsletter-copy p{margin:0!important;max-width:760px!important;color:#61798d!important;font-size:18px!important;line-height:1.55!important;font-weight:800!important;}
.ts-footer-newsletter-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.ts-footer-newsletter-chips span{min-height:38px;padding:0 16px;border-radius:999px;background:#fff;border:1px solid rgba(35,187,231,.35);box-shadow:0 12px 28px rgba(15,47,70,.06);color:#0b2b4c;font-weight:900;font-size:14px;letter-spacing:0;text-transform:none;}
.ts-footer-newsletter-chips span::before{content:"";width:10px;height:10px;border-radius:50%;background:#25bbe8;box-shadow:0 0 0 5px #eaf8fe;display:inline-block;margin-right:8px;vertical-align:middle;}
.ts-footer-newsletter-form{
  display:block!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(35,187,231,.22)!important;border-radius:28px!important;padding:clamp(22px,3vw,34px)!important;box-shadow:0 24px 58px rgba(15,47,70,.1)!important;color:#0b2b4c!important;
}
.ts-footer-newsletter-form label:not(.ts-footer-newsletter-consent){display:block!important;margin:0 0 8px!important;color:#61798d!important;font-size:12px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:950!important;}
.ts-footer-newsletter-form input[type="text"],
.ts-footer-newsletter-form input[type="email"]{
  width:100%!important;min-height:58px!important;margin:0 0 20px!important;border-radius:18px!important;border:1px solid rgba(35,187,231,.3)!important;background:#f8fdff!important;color:#0b2b4c!important;padding:0 18px!important;font-weight:850!important;font-size:16px!important;box-shadow:none!important;outline:0!important;
}
.ts-footer-newsletter-form input[type="text"]:focus,
.ts-footer-newsletter-form input[type="email"]:focus{border-color:#25bbe8!important;box-shadow:0 0 0 4px rgba(35,187,231,.14)!important;background:#fff!important;}
.ts-footer-newsletter-consent{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;margin:2px 0 22px!important;color:#61798d!important;font-size:13px!important;line-height:1.45!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;}
.ts-footer-newsletter-consent input{width:18px!important;height:18px!important;margin:2px 0 0!important;accent-color:#25bbe8!important;}
.ts-footer-newsletter-form button[type="submit"]{width:100%!important;min-height:58px!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,#25bbe8,#16a8c8)!important;color:#fff!important;font-size:17px!important;font-weight:950!important;cursor:pointer!important;box-shadow:0 16px 34px rgba(35,187,231,.22)!important;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;}
.ts-footer-newsletter-form button[type="submit"]:hover,.ts-footer-newsletter-form button[type="submit"]:focus-visible{transform:translateY(-2px)!important;filter:saturate(1.06)!important;box-shadow:0 22px 46px rgba(35,187,231,.28)!important;outline:0!important;}
.ts-footer-newsletter-form small{display:block!important;margin-top:18px!important;color:#61798d!important;font-weight:800!important;}
.ts-footer-newsletter-status.is-ok{background:#eaf8fe!important;color:#0f7f94!important;}.ts-footer-newsletter-status.is-error{background:#fff4f4!important;color:#9d1f2a!important;}

.ts-cards-grid{display:grid;gap:24px;}
.ts-page-related-section .ts-cards-grid--compact{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important;}
.ts-page-related-section .ts-cards-grid--compact > *{min-width:0!important;}
.ts-page-related-section .ts-place-card{width:100%!important;max-width:none!important;}

.ts-home-hero-v101__avatars{display:inline-flex!important;align-items:center!important;isolation:isolate;}
.ts-home-hero-v101__avatars img,.ts-home-hero-v101__avatars i{width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;border:3px solid #fff!important;background:#55dde4!important;box-shadow:0 8px 18px rgba(0,0,0,.18)!important;object-fit:cover!important;margin-left:-10px!important;}
.ts-home-hero-v101__avatars img:first-child,.ts-home-hero-v101__avatars i:first-child{margin-left:0!important;}
.ts-home-hero-v101__trust{gap:14px!important;}

.ts-home-search-v101__option::before,
.ts-home-search-v101__option::after,
.ts-home-search-v101 .ts-home-search-v101__option::before,
.ts-home-search-v101 .ts-home-search-v101__option::after,
.ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101__option.is-selected::after,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::after{content:none!important;display:none!important;}
.ts-home-search-v101__option.is-selected{padding-left:18px!important;}

.ts-destination-card-grid .ts-place-media{background:#eaf8fe;}
.ts-destination-card-grid .ts-place-media img{display:block;width:100%;height:100%;object-fit:cover;}

@media (max-width:1180px){
  .ts-footer-newsletter{grid-template-columns:1fr!important;padding:clamp(26px,5vw,44px)!important;}
  .ts-page-related-section .ts-cards-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:760px){
  .ts-footer-newsletter{border-radius:28px!important;padding:22px!important;margin-bottom:34px!important;}
  .ts-footer-newsletter-copy h2{font-size:clamp(30px,10vw,42px)!important;}
  .ts-footer-newsletter-copy p{font-size:15px!important;}
  .ts-footer-newsletter-chips{gap:8px!important;}
  .ts-footer-newsletter-chips span{font-size:12px!important;min-height:34px!important;padding:0 12px!important;}
  .ts-footer-newsletter-form{padding:20px!important;border-radius:24px!important;}
  .ts-page-related-section .ts-cards-grid--compact{grid-template-columns:1fr!important;}
  .ts-home-hero-v101__avatars img,.ts-home-hero-v101__avatars i{width:36px!important;height:36px!important;min-width:36px!important;}
}

/* TuSpot EU v5.0 beta.109 — real traveller avatars in homepage hero trust row. */
.ts-home-hero-v101__trust .ts-home-hero-v101__avatars{display:inline-flex!important;align-items:center!important;isolation:isolate!important;}
.ts-home-hero-v101__trust .ts-home-hero-v101__avatars img{width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;border:3px solid #fff!important;background:#eaf8fe!important;box-shadow:0 10px 22px rgba(0,0,0,.2)!important;object-fit:cover!important;object-position:center!important;margin-left:-11px!important;display:block!important;}
.ts-home-hero-v101__trust .ts-home-hero-v101__avatars img:first-child{margin-left:0!important;}
@media (max-width:760px){.ts-home-hero-v101__trust .ts-home-hero-v101__avatars img{width:36px!important;height:36px!important;min-width:36px!important;margin-left:-9px!important;}}

/* TuSpot EU v5.0 beta.110 — real Places redirect/results and hero dropdown stacking fix. */
.ts-home-hero-v101__search-wrap,
.ts-home-search-v101{
  position:relative!important;
  z-index:80!important;
  overflow:visible!important;
}
.ts-home-search-v101__field,
.ts-home-search-v101__body,
.ts-home-search-v101__select{
  overflow:visible!important;
}
.ts-home-search-v101__select.is-open{
  z-index:10020!important;
}
.ts-home-search-v101__select.is-open .ts-home-search-v101__menu,
.ts-home-search-v101__menu{
  z-index:10030!important;
}
.ts-home-hero-v101__trust{
  position:relative!important;
  z-index:1!important;
  pointer-events:none!important;
}
.ts-home-hero-v101__trust a,
.ts-home-hero-v101__trust button{pointer-events:auto!important;}
.ts-home-search-v101__option::before,
.ts-home-search-v101__option::after,
.ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101__option.is-selected::after,
.ts-home-search-v101 .ts-home-search-v101__option::before,
.ts-home-search-v101 .ts-home-search-v101__option::after,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::before,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected::after{
  content:none!important;
  display:none!important;
}
.ts-home-search-v101__option.is-selected,
.ts-home-search-v101 .ts-home-search-v101__option.is-selected{
  padding-left:18px!important;
  border-color:rgba(35,187,231,.26)!important;
}
.ts-no-results-card{
  display:grid!important;
  gap:14px!important;
  padding:clamp(26px,4vw,44px)!important;
  border-radius:28px!important;
}
.ts-no-results-card h2{margin:0!important;color:#0b2b4c!important;font:950 clamp(30px,3vw,46px)/.95 var(--ts-font-display)!important;letter-spacing:-.055em!important;}
.ts-no-results-card p{margin:0!important;max-width:780px!important;color:#61798d!important;font-weight:780!important;line-height:1.55!important;}
.ts-no-results-card .ts-btn{justify-self:start!important;margin-top:8px!important;}

/* TuSpot EU v5.0 beta.111 — hide global launch strip and fix mobile/iPad overlay menu contrast. */
.ts-v50b57-global,
.ts-v50b57-global .ts-v50b57-launch--bar,
.ts-v50b57-launch--bar{
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  visibility:hidden!important;
}
@media (max-width:1180px){
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-main-nav.is-open,
  #ts-primary-nav.ts-main-nav.is-open{
    background:rgba(255,255,255,.985)!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    border-color:rgba(188,230,245,.86)!important;
    box-shadow:0 30px 86px rgba(3,22,38,.20)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-pro .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-link,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-link span{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    opacity:1!important;
  }
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-link span{
    color:#168da6!important;
    -webkit-text-fill-color:#168da6!important;
  }
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item:hover > .ts-nav-link,
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item:focus-within > .ts-nav-link,
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-nav-link,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item:hover > .ts-nav-link,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item:focus-within > .ts-nav-link,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-nav-link,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-item:hover > .ts-nav-link,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-item:focus-within > .ts-nav-link,
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-nav-link{
    background:#eaf8fe!important;
    color:#063440!important;
    -webkit-text-fill-color:#063440!important;
    box-shadow:none!important;
    text-shadow:none!important;
  }
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-item:not(.is-submenu-open) > .ts-dropdown{
    display:none!important;
  }
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-dropdown,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-dropdown,
  #ts-primary-nav.ts-main-nav.is-open .ts-dropdown{
    background:#f8fdff!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    border:1px solid rgba(188,230,245,.72)!important;
    box-shadow:none!important;
    margin:6px 0 12px!important;
    padding:8px!important;
    border-radius:18px!important;
    min-height:0!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  #ts-primary-nav.ts-main-nav.is-open .ts-nav-item.is-submenu-open > .ts-dropdown{
    display:grid!important;
    gap:4px!important;
  }
  body.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-dropdown a,
  body.ts-home-hero-template-europe-fullscreen.ts-home-overlay-header .ts-site-header .ts-main-nav.is-open .ts-dropdown a,
  #ts-primary-nav.ts-main-nav.is-open .ts-dropdown a,
  #ts-primary-nav.ts-main-nav.is-open .ts-dropdown-group-label{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    opacity:1!important;
  }
  #ts-primary-nav.ts-main-nav.is-open .ts-dropdown a:hover,
  #ts-primary-nav.ts-main-nav.is-open .ts-dropdown a:focus-visible{
    background:#eaf8fe!important;
    color:#063440!important;
    -webkit-text-fill-color:#063440!important;
    outline:0!important;
  }
}

/* TuSpot EU v5.0 beta.118 — rebuilt Active place banner, full-screen cinematic slider. */
body.single-tuspot_place.ts-place-template-active .ts-site-header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:80!important;
  background:linear-gradient(180deg,rgba(3,18,31,.62),rgba(3,18,31,0))!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-link,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-trigger,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-pill{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.32)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn--primary{
  background:#fff!important;
  color:#082846!important;
  -webkit-text-fill-color:#082846!important;
  box-shadow:0 16px 38px rgba(0,0,0,.22)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-mobile-toggle{
  background:rgba(255,255,255,.94)!important;
  color:#082846!important;
  -webkit-text-fill-color:#082846!important;
  border:1px solid rgba(255,255,255,.36)!important;
  box-shadow:0 0 0 8px rgba(35,187,231,.16),0 18px 44px rgba(0,0,0,.22)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-place-profile-banner--v50b29{
  margin-top:0!important;
  margin-bottom:0!important;
  overflow:visible!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{
  position:relative!important;
  display:block!important;
  width:100vw!important;
  max-width:100vw!important;
  min-height:100svh!important;
  min-height:100vh!important;
  margin:0!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
  padding:clamp(116px,8.2vh,154px) 0 clamp(30px,4vh,62px)!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#061a2b!important;
  color:#fff!important;
  box-shadow:none!important;
  isolation:isolate!important;
}
.ts-v50b118-active-bg{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#061a2b;}
.ts-v50b118-active-bg span{position:absolute;inset:0;background-image:var(--ts-slide-bg);background-size:cover;background-position:center;opacity:0;transform:scale(1.018);transition:opacity .6s ease,transform 1.2s ease;}
.ts-v50b118-active-bg span.is-active{opacity:1;transform:scale(1);}
.ts-v50b118-active-vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(2,15,27,.96) 0%,rgba(4,22,38,.88) 27%,rgba(4,22,38,.42) 56%,rgba(4,22,38,.72) 100%),linear-gradient(180deg,rgba(2,15,27,.36) 0%,rgba(2,15,27,.08) 42%,rgba(2,15,27,.90) 100%);pointer-events:none;}
.ts-v50b118-active-topline{position:absolute;top:clamp(26px,3.2vw,50px);left:50%;z-index:7;width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px));transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:18px;pointer-events:none;}
.ts-v50b118-active-logo,.ts-v50b118-active-actions{pointer-events:auto;}
.ts-v50b118-active-logo{display:inline-flex;align-items:center;text-decoration:none!important;filter:drop-shadow(0 16px 28px rgba(0,0,0,.24));}
.ts-v50b118-active-logo .ts-logo-img,.ts-v50b118-active-logo img{max-width:180px;max-height:54px;width:auto;height:auto;display:block;}
.ts-v50b118-logo-word{font:950 34px/1 var(--ts-font-display);letter-spacing:-.05em;color:#fff;}
.ts-v50b118-logo-word span{color:#23bbe7;}
.ts-v50b118-active-actions{display:flex;align-items:center;gap:12px;}
.ts-v50b118-soft-action{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.10);color:#fff!important;-webkit-text-fill-color:#fff!important;border-radius:999px;min-height:48px;padding:0 20px;font-weight:900;font-size:14px;display:inline-flex;align-items:center;gap:9px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 46px rgba(0,0,0,.18);cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease;}
.ts-v50b118-soft-action span{font-size:18px;line-height:1;}
.ts-v50b118-soft-action:hover,.ts-v50b118-soft-action:focus-visible{transform:translateY(-2px);background:rgba(255,255,255,.18);border-color:rgba(35,187,231,.42);outline:0;}
.ts-v50b118-active-inner{position:relative;z-index:4;width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px));min-height:calc(100svh - clamp(146px,12vh,216px));margin:0 auto;display:grid;grid-template-columns:minmax(620px,.95fr) minmax(360px,520px);align-items:center;gap:clamp(34px,6vw,116px);}
.ts-v50b118-active-copy{display:grid;align-content:center;gap:18px;max-width:830px;}
.ts-v50b118-active-pill{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 18px;border-radius:999px;background:rgba(0,198,238,.13);border:1px solid rgba(35,187,231,.44);color:#67e7ff!important;-webkit-text-fill-color:#67e7ff!important;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:950;box-shadow:0 16px 36px rgba(0,0,0,.16);}
.ts-v50b118-active-copy h1{margin:0;color:#fff!important;font-family:var(--ts-font-display);font-size:clamp(58px,5.2vw,102px);line-height:.92;letter-spacing:-.072em;text-shadow:0 24px 64px rgba(0,0,0,.38);max-width:900px;}
.ts-v50b118-active-copy p{margin:0;max-width:680px;color:rgba(255,255,255,.92)!important;font-size:clamp(18px,1.25vw,22px);font-weight:720;line-height:1.46;text-shadow:0 14px 34px rgba(0,0,0,.42);}
.ts-v50b118-active-meta{display:flex;flex-wrap:wrap;gap:12px 22px;color:rgba(255,255,255,.92);font-weight:850;font-size:15px;}
.ts-v50b118-active-meta span{display:inline-flex;align-items:center;gap:8px;}
.ts-v50b118-active-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:6px;max-width:760px;}
.ts-v50b118-active-facts article{min-height:82px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.09);display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center;}
.ts-v50b118-active-facts i{grid-row:1/3;width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(35,187,231,.12);border:1px solid rgba(35,187,231,.32);color:#23bbe7;font-style:normal;font-weight:950;}
.ts-v50b118-active-facts span{color:#65dff7;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:950;line-height:1.1;}
.ts-v50b118-active-facts strong{color:#fff;font-size:14px;font-weight:850;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ts-v50b118-active-cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:8px;}
.ts-v50b118-primary-cta,.ts-v50b118-secondary-cta{min-height:58px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:0 30px;text-decoration:none!important;font-size:17px;font-weight:950;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;}
.ts-v50b118-primary-cta{background:linear-gradient(135deg,#2bd2f1,#13add5);color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 18px 48px rgba(35,187,231,.28);}
.ts-v50b118-primary-cta span{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.16);}
.ts-v50b118-secondary-cta{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.25);color:#fff!important;-webkit-text-fill-color:#fff!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.ts-v50b118-primary-cta:hover,.ts-v50b118-secondary-cta:hover{transform:translateY(-2px);box-shadow:0 24px 62px rgba(0,0,0,.25),0 18px 48px rgba(35,187,231,.18);}
.ts-v50b118-active-thumbs{display:flex;align-items:center;gap:10px;margin-top:12px;max-width:820px;}
.ts-v50b118-active-thumbs button,.ts-v50b118-more-photos{position:relative;flex:0 1 150px;height:72px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);padding:0;box-shadow:0 16px 38px rgba(0,0,0,.20);cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;}
.ts-v50b118-active-thumbs button.is-active{border-color:#23bbe7;box-shadow:0 0 0 2px rgba(35,187,231,.82),0 20px 46px rgba(0,0,0,.26);}
.ts-v50b118-active-thumbs img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(1.06);}
.ts-v50b118-active-thumbs button:hover{transform:translateY(-2px);border-color:rgba(35,187,231,.68);}
.ts-v50b118-play{position:absolute;z-index:2;left:12px;bottom:12px;width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#23bbe7;color:#fff;font-size:13px;box-shadow:0 10px 24px rgba(0,0,0,.24);}
.ts-v50b118-more-photos{display:grid;place-items:center;flex:0 0 70px;border-style:dashed;color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none!important;font-weight:950;background:rgba(255,255,255,.04);}
.ts-v50b118-active-package{justify-self:end;width:min(420px,100%);padding:28px;border-radius:24px;background:linear-gradient(145deg,rgba(5,24,39,.86),rgba(7,37,58,.78));border:1px solid rgba(35,187,231,.62);box-shadow:0 28px 90px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.10);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.ts-v50b118-package-kicker{display:inline-flex;align-items:center;gap:9px;color:#36d8ff;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:950;margin-bottom:14px;}
.ts-v50b118-active-package h2{margin:0 0 16px;color:#fff!important;font-size:20px;letter-spacing:-.02em;line-height:1.18;}
.ts-v50b118-active-package ul{display:grid;gap:11px;margin:0 0 20px;padding:0;list-style:none;}
.ts-v50b118-active-package li{position:relative;padding-left:28px;color:rgba(255,255,255,.80);font-weight:740;line-height:1.35;font-size:14px;}
.ts-v50b118-active-package li:before{content:'✓';position:absolute;left:0;top:0;width:18px;height:18px;border-radius:999px;display:grid;place-items:center;background:#23bbe7;color:#fff;font-size:12px;font-weight:950;}
.ts-v50b118-package-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);}
.ts-v50b118-package-stats strong{display:grid;gap:3px;color:#fff;font-size:28px;line-height:1;font-weight:950;}
.ts-v50b118-package-stats small{color:rgba(255,255,255,.72);font-size:12px;line-height:1.15;font-weight:700;}
.ts-v50b118-avatar-row{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;margin-top:18px;color:#fff;}
.ts-v50b118-avatars{display:flex;align-items:center;padding-left:8px;}
.ts-v50b118-avatars img{width:34px;height:34px;border-radius:999px;object-fit:cover;border:2px solid rgba(255,255,255,.90);margin-left:-8px;box-shadow:0 10px 18px rgba(0,0,0,.24);}
.ts-v50b118-avatar-row b{color:#32d8ff;font-weight:950;}
.ts-v50b118-avatar-row em{color:rgba(255,255,255,.72);font-style:normal;font-weight:700;font-size:12px;line-height:1.15;}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow{position:absolute!important;z-index:8!important;width:58px!important;height:58px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.16)!important;background:rgba(255,255,255,.09)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;display:grid!important;place-items:center!important;font-size:34px!important;font-weight:500!important;box-shadow:0 16px 38px rgba(0,0,0,.22)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;transition:transform .2s ease,background .2s ease,border-color .2s ease!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow:hover{background:rgba(35,187,231,.24)!important;border-color:rgba(35,187,231,.50)!important;transform:translateY(-50%) scale(1.04)!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--prev{left:clamp(16px,2.6vw,58px)!important;right:auto!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--next{right:clamp(16px,2.6vw,58px)!important;left:auto!important;}
.ts-v50b118-active-progress{position:absolute;z-index:8;right:calc(50% - min(clamp(1220px,74vw,1720px),calc(100vw - 48px))/2);bottom:clamp(34px,5vh,70px);display:grid;grid-template-columns:auto 76px auto;align-items:center;gap:12px;color:#fff;font-weight:950;}
.ts-v50b118-active-progress i{height:1px;background:rgba(255,255,255,.42);display:block;}
.ts-v50b118-active-dots{grid-column:1/-1;display:flex;justify-content:center;gap:12px;margin-top:6px;}
.ts-v50b118-active-dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(255,255,255,.62);padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease;}
.ts-v50b118-active-dots button.is-active{background:#23bbe7;transform:scale(1.12);}

@media (min-width:1800px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{padding-top:clamp(126px,9vh,170px)!important;}
  .ts-v50b118-active-inner{grid-template-columns:minmax(760px,1fr) minmax(420px,520px);}
  .ts-v50b118-active-copy h1{font-size:clamp(78px,5vw,116px);}
  .ts-v50b118-active-package{width:440px;}
}

@media (min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{min-height:100vh!important;padding:98px 0 28px!important;}
  .ts-v50b118-active-topline{top:24px;width:calc(100vw - 48px);}
  .ts-v50b118-active-logo .ts-logo-img,.ts-v50b118-active-logo img{max-width:128px;max-height:40px;}
  .ts-v50b118-active-inner{width:calc(100vw - 90px);min-height:calc(100vh - 126px);grid-template-columns:minmax(520px,.98fr) minmax(300px,380px);gap:34px;}
  .ts-v50b118-active-copy{gap:12px;max-width:640px;}
  .ts-v50b118-active-copy h1{font-size:clamp(48px,5.15vw,72px);line-height:.93;max-width:650px;}
  .ts-v50b118-active-copy p{font-size:15px;max-width:520px;line-height:1.42;}
  .ts-v50b118-active-meta{font-size:13px;gap:8px 16px;}
  .ts-v50b118-active-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:620px;}
  .ts-v50b118-active-facts article{min-height:72px;padding:12px 13px;column-gap:8px;border-radius:14px;}
  .ts-v50b118-active-facts i{width:28px;height:28px;border-radius:10px;}
  .ts-v50b118-active-facts strong{font-size:12px;}
  .ts-v50b118-primary-cta,.ts-v50b118-secondary-cta{min-height:50px;font-size:14px;padding-inline:22px;}
  .ts-v50b118-active-thumbs button,.ts-v50b118-more-photos{height:58px;flex-basis:120px;}
  .ts-v50b118-active-package{width:330px;padding:20px;border-radius:20px;}
  .ts-v50b118-active-package h2{font-size:17px;}
  .ts-v50b118-active-package li{font-size:12px;gap:8px;}
  .ts-v50b118-package-stats strong{font-size:22px;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow{width:48px!important;height:48px!important;font-size:28px!important;}
  .ts-v50b118-active-progress{right:48px;bottom:30px;}
}

@media (min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-site-header{position:absolute!important;background:linear-gradient(180deg,rgba(4,18,31,.66),rgba(4,18,31,0))!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{min-height:100svh!important;padding:118px 0 30px!important;}
  .ts-v50b118-active-topline{top:28px;width:calc(100vw - 44px);}
  .ts-v50b118-active-logo .ts-logo-img,.ts-v50b118-active-logo img{max-width:140px;max-height:42px;}
  .ts-v50b118-soft-action{min-height:42px;padding-inline:14px;font-size:12px;}
  .ts-v50b118-active-inner{width:calc(100vw - 56px);min-height:calc(100svh - 156px);grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px;align-items:center;}
  .ts-v50b118-active-copy{gap:12px;}
  .ts-v50b118-active-copy h1{font-size:clamp(42px,7vw,64px);max-width:620px;}
  .ts-v50b118-active-copy p{font-size:14px;max-width:520px;}
  .ts-v50b118-active-facts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px;}
  .ts-v50b118-active-facts article{min-height:68px;padding:12px 14px;}
  .ts-v50b118-primary-cta,.ts-v50b118-secondary-cta{min-height:48px;font-size:14px;padding-inline:20px;}
  .ts-v50b118-active-thumbs{max-width:560px;gap:8px;}
  .ts-v50b118-active-thumbs button{height:62px;flex-basis:112px;}
  .ts-v50b118-more-photos{height:62px;flex-basis:56px;}
  .ts-v50b118-active-package{width:100%;padding:18px;border-radius:20px;}
  .ts-v50b118-package-stats{gap:12px;}
  .ts-v50b118-package-stats strong{font-size:21px;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow{width:48px!important;height:48px!important;font-size:28px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--prev{left:18px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--next{right:18px!important;}
  .ts-v50b118-active-progress{right:36px;bottom:26px;grid-template-columns:auto 52px auto;}
}

@media (max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-site-header{position:absolute!important;background:linear-gradient(180deg,rgba(4,18,31,.76),rgba(4,18,31,0))!important;}
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open{background:#fff!important;color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;box-shadow:0 24px 70px rgba(3,22,38,.22)!important;}
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link{color:#0b2b4c!important;-webkit-text-fill-color:#0b2b4c!important;text-shadow:none!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{min-height:100svh!important;height:auto!important;padding:116px 0 30px!important;}
  .ts-v50b118-active-vignette{background:linear-gradient(180deg,rgba(2,15,27,.86) 0%,rgba(2,15,27,.74) 42%,rgba(2,15,27,.96) 100%),linear-gradient(90deg,rgba(2,15,27,.86),rgba(2,15,27,.34));}
  .ts-v50b118-active-topline{display:none;}
  .ts-v50b118-active-inner{width:calc(100vw - 28px);min-height:0;display:grid;grid-template-columns:1fr;gap:16px;align-items:start;}
  .ts-v50b118-active-copy{max-width:none;gap:12px;}
  .ts-v50b118-active-pill{min-height:28px;padding:0 12px;font-size:10px;letter-spacing:.1em;}
  .ts-v50b118-active-copy h1{font-size:clamp(34px,10vw,48px);line-height:.94;letter-spacing:-.06em;max-width:92%;}
  .ts-v50b118-active-copy p{font-size:13px;line-height:1.45;max-width:96%;display:block!important;}
  .ts-v50b118-active-meta{font-size:12px;gap:8px 14px;}
  .ts-v50b118-active-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:none;margin-top:4px;}
  .ts-v50b118-active-facts article{min-height:76px;padding:12px;border-radius:14px;column-gap:8px;}
  .ts-v50b118-active-facts i{width:30px;height:30px;border-radius:10px;}
  .ts-v50b118-active-facts span{font-size:9px;}
  .ts-v50b118-active-facts strong{font-size:12px;}
  .ts-v50b118-active-cta-row{display:grid;grid-template-columns:1fr;gap:9px;}
  .ts-v50b118-primary-cta,.ts-v50b118-secondary-cta{width:100%;min-height:48px;font-size:14px;padding:0 18px;}
  .ts-v50b118-active-package{width:100%;justify-self:stretch;order:8;padding:16px;border-radius:18px;}
  .ts-v50b118-active-package h2{font-size:15px;margin-bottom:12px;}
  .ts-v50b118-active-package ul{grid-template-columns:1fr;gap:7px;margin-bottom:12px;}
  .ts-v50b118-active-package li{font-size:11px;padding-left:24px;}
  .ts-v50b118-package-stats{padding:13px 0;gap:10px;}
  .ts-v50b118-package-stats strong{font-size:20px;}
  .ts-v50b118-avatar-row{grid-template-columns:auto auto 1fr;margin-top:12px;}
  .ts-v50b118-avatars img{width:28px;height:28px;}
  .ts-v50b118-active-thumbs{order:9;display:flex;gap:7px;max-width:none;overflow:hidden;margin-top:0;}
  .ts-v50b118-active-thumbs button{height:54px;flex:1 1 0;min-width:0;border-radius:10px;}
  .ts-v50b118-more-photos{height:54px;flex:0 0 48px;border-radius:10px;}
  .ts-v50b118-play{width:28px;height:28px;left:8px;bottom:8px;font-size:11px;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow{width:42px!important;height:42px!important;font-size:24px!important;top:38%!important;background:rgba(255,255,255,.10)!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--prev{left:10px!important;}
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-arrow--next{right:10px!important;}
  .ts-v50b118-active-progress{position:relative;right:auto;bottom:auto;justify-content:center;grid-template-columns:auto 52px auto;width:100%;margin:14px auto 0;}
  .ts-v50b118-active-dots{gap:10px;}
}

/* v5.0 beta.118.1 — avoid duplicate logo: global overlay header supplies the logo, hero keeps place actions. */
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-logo{display:none!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-topline{top:calc(var(--ts-header-height,74px) + 18px)!important;justify-content:flex-end!important;}
@media (max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-topline{display:none!important;}
}

/* TuSpot EU v5.0 beta.119 / theme beta.113 — Active banner header parity, 3-slide limit and Pro right-side about card. */
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-topline,
body.single-tuspot_place.ts-place-template-active .ts-v50b118-play{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active .ts-v50b89-action,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active .ts-v50b89-circle{
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active .ts-v50b89-action:hover,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active .ts-v50b89-circle:hover{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(35,187,231,.46)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
  font-size:clamp(15px,1.02vw,19px)!important;
  line-height:1.48!important;
  max-width:690px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-thumbs{
  max-width:760px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-thumbs button{
  flex:0 1 174px!important;
}

@media(min-width:1367px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active{
    position:absolute!important;
    top:122px!important;
    right:114px!important;
    z-index:12!important;
    display:flex!important;
    gap:10px!important;
    align-items:center!important;
  }
}
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active{
    position:absolute!important;
    top:94px!important;
    right:99px!important;
    z-index:12!important;
    display:flex!important;
    gap:10px!important;
    align-items:center!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
    font-size:14px!important;
    max-width:500px!important;
    line-height:1.42!important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active{
    position:absolute!important;
    top:165px!important;
    right:clamp(22px,6vw,109px)!important;
    z-index:12!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
    font-size:13.5px!important;
    max-width:500px!important;
  }
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-actions--active{
    top:154px!important;
    right:14px!important;
    z-index:12!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
    font-size:12.5px!important;
    line-height:1.43!important;
    max-width:96%!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-thumbs button{
    flex:1 1 0!important;
  }
}

@media(min-width:1181px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    --ts-v50b118-shell:min(clamp(1220px,74vw,1720px),calc(100vw - 48px));
    width:100vw!important;
    max-width:none!important;
    min-height:100svh!important;
    margin-left:50%!important;
    transform:translateX(-50%)!important;
    border-radius:0!important;
    grid-template-columns:minmax(0,1fr) minmax(360px,520px)!important;
    grid-template-rows:1fr!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
    grid-column:1/3!important;
    width:var(--ts-v50b118-shell)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:calc(var(--ts-header-height,74px) + clamp(46px,5vh,84px)) 0 clamp(210px,20vh,270px)!important;
    align-content:center!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > *{
    max-width:720px;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content h1{
    max-width:760px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-search{
    max-width:780px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    position:absolute!important;
    z-index:6!important;
    right:max(24px,calc((100vw - var(--ts-v50b118-shell)) / 2))!important;
    top:calc(var(--ts-header-height,74px) + clamp(64px,8vh,116px))!important;
    width:min(420px,26vw)!important;
    padding:0!important;
    background:transparent!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    position:absolute!important;
    z-index:7!important;
    right:max(24px,calc((100vw - var(--ts-v50b118-shell)) / 2))!important;
    left:auto!important;
    top:auto!important;
    bottom:clamp(52px,7vh,92px)!important;
    width:min(520px,30vw)!important;
    max-width:none!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    align-self:auto!important;
    justify-self:auto!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide a{
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:start!important;
  }
}
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-rail{
    width:320px!important;
    top:calc(var(--ts-header-height,74px) + 76px)!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    width:min(430px,32vw)!important;
    bottom:40px!important;
  }
}

/* TuSpot EU v5.0 beta.114 — Active banner header parity with Pro, spacing and Pro about-card right alignment. */
body.single-tuspot_place.ts-place-template-active .ts-place-profile-banner--v50b29{
  margin-bottom:clamp(34px,4vw,72px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:80!important;
  background:transparent!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(5,18,31,.56),rgba(5,18,31,0))!important;
  opacity:1!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-inner{
  position:relative!important;
  z-index:2!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-link,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-logo,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-logo-text,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-mobile-toggle{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-link:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-item:focus-within .ts-nav-link{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn:not(.ts-btn--primary),
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-pill,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-trigger{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn:not(.ts-btn--primary):hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-pill:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-trigger:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-menu:focus-within .ts-account-trigger{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(35,187,231,.42)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn--primary{
  background:#fff!important;
  color:#071d30!important;
  -webkit-text-fill-color:#071d30!important;
  border-color:#fff!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn--primary:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn--primary:focus-visible{
  background:#23bbe7!important;
  color:#071d30!important;
  -webkit-text-fill-color:#071d30!important;
  border-color:#23bbe7!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-dropdown,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-menu,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-dropdown{
  background:#fff!important;
  color:#0b2b4c!important;
  -webkit-text-fill-color:#0b2b4c!important;
  text-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-dropdown a,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-menu a,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-dropdown a,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-dropdown strong{
  color:#496273!important;
  -webkit-text-fill-color:#496273!important;
  text-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-dropdown a:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-dropdown a:focus-visible,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-menu a:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-dropdown a:hover{
  background:#eaf8fe!important;
  color:#093440!important;
  -webkit-text-fill-color:#093440!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux::before,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux::after{
  background:none!important;
  opacity:0!important;
}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open{
    background:#fff!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    box-shadow:0 24px 70px rgba(3,22,38,.22)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link span{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    background:transparent!important;
    box-shadow:none!important;
    text-shadow:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open .ts-nav-link:hover,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link:hover,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-item:focus-within .ts-nav-link{
    background:#eaf8fe!important;
    color:#093440!important;
    -webkit-text-fill-color:#093440!important;
  }
}
@media(min-width:1181px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    position:absolute!important;
    z-index:9!important;
    right:max(24px,calc((100vw - var(--ts-v50b118-shell,min(clamp(1220px,74vw,1720px),calc(100vw - 48px)))) / 2))!important;
    left:auto!important;
    top:auto!important;
    bottom:clamp(60px,7.5vh,112px)!important;
    width:min(520px,30vw)!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
    grid-column:auto!important;
    grid-row:auto!important;
    align-self:end!important;
    justify-self:end!important;
  }
}
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    right:max(24px,calc((100vw - var(--ts-v50b118-shell,min(clamp(1220px,74vw,1720px),calc(100vw - 48px)))) / 2))!important;
    bottom:34px!important;
    width:min(420px,32vw)!important;
  }
}

/* TuSpot EU v5.0 beta.115 — final single-place banner and add/edit-place UX hotfixes. */
body.single-tuspot_place.ts-place-template-free .ts-place-profile-banner--v50b29{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  max-width:none!important;
  margin:clamp(22px,3vw,42px) auto clamp(34px,4vw,72px)!important;
  transform:none!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b120-free-visual{
  min-height:clamp(560px,46vw,820px)!important;
  border-radius:clamp(24px,2.6vw,42px)!important;
  overflow:hidden!important;
  background-image:
    radial-gradient(circle at 74% 18%,rgba(35,187,231,.18),rgba(35,187,231,0) 26%),
    linear-gradient(90deg,rgba(1,16,29,.92) 0%,rgba(4,24,40,.76) 42%,rgba(4,24,40,.28) 72%,rgba(4,24,40,.16) 100%),
    var(--ts-free-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 34px 90px rgba(8,56,76,.18)!important;
  color:#fff!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b120-free-visual::after{
  content:""!important;
  position:absolute!important;
  inset:auto 0 0!important;
  height:38%!important;
  z-index:0!important;
  background:linear-gradient(0deg,rgba(2,15,27,.86),rgba(2,15,27,0))!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free .ts-v50b89-hero-actions{
  top:clamp(18px,2vw,32px)!important;
  right:clamp(18px,2vw,32px)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free .ts-v50b89-action,
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free .ts-v50b89-circle{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card{
  position:relative!important;
  z-index:2!important;
  width:min(760px,calc(100% - clamp(36px,8vw,160px)))!important;
  max-width:760px!important;
  margin-left:clamp(28px,5vw,86px)!important;
  top:auto!important;
  padding:clamp(92px,10vw,150px) 0 clamp(44px,6vw,84px)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  display:grid!important;
  gap:clamp(14px,1.6vw,24px)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card .ts-v50b89-template-pill{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card h1{
  color:#fff!important;
  font-size:clamp(44px,6.6vw,112px)!important;
  max-width:760px!important;
  text-shadow:0 18px 58px rgba(0,0,0,.34)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card p{
  color:rgba(255,255,255,.92)!important;
  max-width:650px!important;
  font-size:clamp(15px,1.02vw,18px)!important;
  line-height:1.55!important;
  font-weight:760!important;
  text-shadow:0 12px 28px rgba(0,0,0,.32)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card .ts-v50b89-location{
  color:#65def5!important;
  -webkit-text-fill-color:#65def5!important;
  font-size:clamp(13px,.9vw,16px)!important;
  font-weight:950!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card .ts-v50b89-chip-row span{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.22)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-cta{
  min-height:58px!important;
  padding:0 30px!important;
  background:#23bbe7!important;
  color:#fff!important;
  box-shadow:0 20px 48px rgba(35,187,231,.28)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-cta:hover{
  background:#fff!important;
  color:#071d30!important;
  -webkit-text-fill-color:#071d30!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-bottom{
  display:none!important;
}

body.single-tuspot_place.ts-place-template-active .ts-place-profile-banner--v50b29{
  margin-bottom:clamp(34px,4vw,72px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{
  margin-bottom:clamp(34px,4vw,72px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header::before{
  background:linear-gradient(180deg,rgba(2,13,25,.42),rgba(2,13,25,0))!important;
  opacity:1!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-link,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-logo,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-logo-text{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-link:hover,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-nav-item:focus-within .ts-nav-link{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn:not(.ts-btn--primary),
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-currency-pill,
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-account-trigger{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-header-actions .ts-btn--primary{
  background:#fff!important;
  color:#071d30!important;
  -webkit-text-fill-color:#071d30!important;
  border-color:#fff!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
  font-size:clamp(14px,.95vw,17px)!important;
  line-height:1.52!important;
  max-width:620px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy h1{
  max-width:780px!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-cta-row{
  align-items:center!important;
}
body.single-tuspot_place.ts-place-template-active .ts-v50b118-play,
body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-play,
body.single-tuspot_place.ts-place-template-active [class*="ts-v50b118-play"]{
  display:none!important;
}
@media(min-width:1181px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    position:absolute!important;
    z-index:12!important;
    right:max(24px,calc((100vw - min(clamp(1220px,74vw,1720px),calc(100vw - 48px))) / 2))!important;
    left:auto!important;
    top:auto!important;
    bottom:clamp(56px,7vh,104px)!important;
    width:min(520px,30vw)!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
    justify-self:end!important;
    align-self:end!important;
  }
}
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
    width:min(430px,32vw)!important;
    bottom:38px!important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-cta-row{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:14px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-primary-cta,
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-secondary-cta{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    justify-content:center!important;
  }
}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-mobile-toggle,
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-mobile-toggle *,
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-mobile-toggle svg{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open{
    background:rgba(255,255,255,.985)!important;
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-active .ts-site-header .ts-main-nav.is-open .ts-nav-link span,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link,
  body.single-tuspot_place.ts-place-template-active #ts-primary-nav.ts-main-nav.is-open .ts-nav-link span{
    color:#0b2b4c!important;
    -webkit-text-fill-color:#0b2b4c!important;
    text-shadow:none!important;
    opacity:1!important;
  }
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-free .ts-place-profile-banner--v50b29{
    width:calc(100vw - 22px)!important;
    margin:12px auto 34px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b120-free-visual{
    min-height:auto!important;
    border-radius:0!important;
    padding-bottom:28px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card{
    width:calc(100% - 44px)!important;
    margin-left:22px!important;
    padding:clamp(92px,22vw,132px) 0 34px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card h1{
    font-size:clamp(48px,14vw,78px)!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-free-card p{
    font-size:16px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b89-banner--active.ts-v50b118-active-lux{
    padding-top:clamp(154px,22vw,188px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-inner{
    padding-top:16px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy{
    padding-top:18px!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy h1{
    font-size:clamp(48px,14vw,72px)!important;
  }
  body.single-tuspot_place.ts-place-template-active .ts-v50b118-active-copy p{
    font-size:14px!important;
    line-height:1.5!important;
  }
}

/* TuSpot EU v5.0 beta.116 — Free place banner rebuilt to match premium reference card. */
body.single-tuspot_place.ts-place-template-free .ts-place-profile-banner--v50b29{
  width:min(clamp(1220px,74vw,1720px),calc(100vw - 48px))!important;
  max-width:none!important;
  min-height:0!important;
  padding:0!important;
  margin:clamp(24px,3vw,44px) auto clamp(34px,4vw,72px)!important;
  border-radius:clamp(26px,2.5vw,40px)!important;
  background:none!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:center!important;
  min-height:clamp(520px,42vw,760px)!important;
  width:100%!important;
  margin:0!important;
  padding:clamp(44px,5vw,88px) clamp(38px,5vw,92px) clamp(122px,8vw,150px)!important;
  border-radius:clamp(26px,2.5vw,40px)!important;
  overflow:hidden!important;
  color:#fff!important;
  background-image:
    linear-gradient(90deg,rgba(2,17,30,.96) 0%,rgba(4,24,40,.86) 34%,rgba(4,24,40,.44) 61%,rgba(4,24,40,.05) 100%),
    radial-gradient(circle at 15% 76%,rgba(35,187,231,.22),rgba(35,187,231,0) 30%),
    var(--ts-free-bg)!important;
  background-size:cover!important;
  background-position:center center!important;
  box-shadow:0 34px 95px rgba(7,49,69,.18)!important;
  font-family:var(--ts-font-body)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(0deg,rgba(2,13,25,.32),rgba(2,13,25,0) 42%)!important;
  pointer-events:none!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase::after{
  content:none!important;
  display:none!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
  position:relative!important;
  z-index:3!important;
  width:min(720px,52%)!important;
  max-width:720px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:clamp(14px,1.3vw,20px)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:42px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.96)!important;
  color:#23bbe7!important;
  -webkit-text-fill-color:#23bbe7!important;
  font-size:clamp(12px,.78vw,15px)!important;
  font-weight:950!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  box-shadow:0 18px 36px rgba(2,18,32,.18)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content h1{
  margin:0!important;
  max-width:780px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--ts-font-display)!important;
  font-size:clamp(52px,6.4vw,104px)!important;
  line-height:.94!important;
  letter-spacing:-.075em!important;
  font-weight:950!important;
  text-shadow:0 18px 54px rgba(0,0,0,.35)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-accent{
  display:block!important;
  width:62px!important;
  height:5px!important;
  border-radius:999px!important;
  background:#23bbe7!important;
  box-shadow:0 0 24px rgba(35,187,231,.55)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content p{
  margin:0!important;
  max-width:600px!important;
  color:rgba(255,255,255,.94)!important;
  -webkit-text-fill-color:rgba(255,255,255,.94)!important;
  font-size:clamp(16px,1.05vw,20px)!important;
  line-height:1.46!important;
  font-weight:740!important;
  text-shadow:0 12px 30px rgba(0,0,0,.32)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:4px!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips span{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:46px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  color:#0b2b4c!important;
  -webkit-text-fill-color:#0b2b4c!important;
  border:1px solid rgba(255,255,255,.62)!important;
  box-shadow:0 14px 34px rgba(2,18,32,.12)!important;
  font-size:14px!important;
  font-weight:950!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips b{
  display:grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  color:#23bbe7!important;
  -webkit-text-fill-color:#23bbe7!important;
  font-size:18px!important;
  line-height:1!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  min-height:62px!important;
  margin-top:4px!important;
  padding:0 34px!important;
  border-radius:999px!important;
  background:#23bbe7!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(15px,.95vw,18px)!important;
  font-weight:950!important;
  text-decoration:none!important;
  box-shadow:0 18px 0 rgba(35,187,231,.18),0 22px 52px rgba(35,187,231,.34)!important;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease,color .22s ease!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-cta:hover{
  transform:translateY(-2px)!important;
  background:#fff!important;
  color:#08233d!important;
  -webkit-text-fill-color:#08233d!important;
  box-shadow:0 16px 0 rgba(255,255,255,.16),0 26px 56px rgba(4,20,38,.28)!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-save{
  position:absolute!important;
  z-index:8!important;
  top:clamp(18px,2vw,32px)!important;
  right:clamp(18px,2vw,32px)!important;
  display:grid!important;
  place-items:center!important;
  width:clamp(54px,4vw,70px)!important;
  height:clamp(54px,4vw,70px)!important;
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.68)!important;
  background:rgba(255,255,255,.96)!important;
  color:#0b5d76!important;
  -webkit-text-fill-color:#0b5d76!important;
  font-size:clamp(28px,2vw,34px)!important;
  font-weight:900!important;
  box-shadow:0 20px 42px rgba(2,20,35,.2)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  transition:transform .2s ease,background .2s ease,color .2s ease!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-save:hover{
  transform:translateY(-2px) scale(1.03)!important;
  background:#23bbe7!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-bottom{
  position:absolute!important;
  z-index:5!important;
  left:clamp(28px,3vw,54px)!important;
  right:clamp(28px,3vw,54px)!important;
  bottom:clamp(24px,2.5vw,42px)!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:24px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.22))!important;
  box-shadow:0 22px 60px rgba(2,18,32,.22)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
  overflow:hidden!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat{
  min-height:92px!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:16px!important;
  padding:20px 26px!important;
  border-right:1px solid rgba(255,255,255,.24)!important;
  color:#fff!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat:last-child{border-right:0!important;}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat b{
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  border-radius:14px!important;
  color:#23bbe7!important;
  -webkit-text-fill-color:#23bbe7!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:700!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat span{
  display:block!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:950!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat strong{
  display:block!important;
  color:rgba(255,255,255,.84)!important;
  -webkit-text-fill-color:rgba(255,255,255,.84)!important;
  font-size:13px!important;
  line-height:1.28!important;
  font-weight:720!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(min-width:1181px) and (max-width:1366px){
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    min-height:clamp(450px,44vw,560px)!important;
    padding:34px 40px 112px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{width:min(560px,52%)!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content h1{font-size:clamp(42px,5.4vw,72px)!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content p{font-size:14px!important;max-width:520px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chip span,
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips span{min-height:38px!important;padding:0 14px!important;font-size:12px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-cta{min-height:48px!important;padding:0 24px!important;font-size:14px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-bottom{left:24px!important;right:24px!important;bottom:18px!important;border-radius:18px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat{min-height:74px!important;padding:14px 18px!important;column-gap:12px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat b{width:30px!important;height:30px!important;font-size:22px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat span{font-size:12px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat strong{font-size:11px!important;}
}
@media(min-width:761px) and (max-width:1180px){
  body.single-tuspot_place.ts-place-template-free .ts-place-profile-banner--v50b29{
    width:calc(100vw - 44px)!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    min-height:clamp(420px,56vw,560px)!important;
    padding:32px 34px 132px!important;
    background-image:
      linear-gradient(90deg,rgba(2,17,30,.94) 0%,rgba(4,24,40,.78) 42%,rgba(4,24,40,.22) 78%,rgba(4,24,40,.05) 100%),
      var(--ts-free-bg)!important;
    border-radius:30px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{width:min(580px,64%)!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content h1{font-size:clamp(40px,7vw,60px)!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content p{font-size:13px!important;line-height:1.42!important;max-width:500px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-badge{min-height:32px!important;padding:0 14px!important;font-size:10px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-accent{width:46px!important;height:4px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips span{min-height:36px!important;padding:0 13px!important;font-size:11px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-cta{min-height:46px!important;padding:0 22px!important;font-size:13px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-bottom{grid-template-columns:repeat(2,minmax(0,1fr))!important;left:22px!important;right:22px!important;bottom:18px!important;border-radius:18px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat{min-height:66px!important;padding:12px 16px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat:nth-child(2){border-right:0!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat:nth-child(1),
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat:nth-child(2){border-bottom:1px solid rgba(255,255,255,.18)!important;}
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-free .ts-place-profile-banner--v50b29{
    width:calc(100vw - 24px)!important;
    margin:16px auto 34px!important;
    border-radius:24px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    display:block!important;
    min-height:0!important;
    padding:18px 18px 22px!important;
    border-radius:24px!important;
    background-image:
      linear-gradient(90deg,rgba(2,17,30,.90) 0%,rgba(4,24,40,.56) 60%,rgba(4,24,40,.22) 100%),
      var(--ts-free-bg)!important;
    background-position:center top!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-save{
    top:12px!important;
    right:12px!important;
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
    font-size:24px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
    width:100%!important;
    max-width:none!important;
    padding:72px 4px 0!important;
    gap:12px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-badge{
    min-height:28px!important;
    padding:0 12px!important;
    font-size:9px!important;
    letter-spacing:.12em!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content h1{
    max-width:85%!important;
    font-size:clamp(34px,10vw,46px)!important;
    line-height:.94!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-accent{width:36px!important;height:3px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content p{
    max-width:92%!important;
    font-size:12px!important;
    line-height:1.36!important;
    font-weight:740!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips{
    gap:7px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips span{
    min-height:28px!important;
    padding:0 10px!important;
    gap:6px!important;
    font-size:10px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-chips b{
    width:16px!important;
    height:16px!important;
    font-size:13px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-cta{
    min-height:38px!important;
    padding:0 18px!important;
    margin-top:2px!important;
    font-size:12px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-bottom{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    grid-template-columns:1fr!important;
    margin:18px 0 0!important;
    border-radius:18px!important;
    background:rgba(8,31,48,.78)!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat{
    min-height:58px!important;
    padding:12px 14px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.16)!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat:last-child{border-bottom:0!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat b{width:28px!important;height:28px!important;font-size:22px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat span{font-size:11px!important;}
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-stat strong{font-size:10px!important;}
}

/* TuSpot EU v5.0 beta.118 — Free banner alignment, shorter editorial copy support and selector thumbnail polish. */
@media (min-width: 761px){
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    justify-content:flex-start!important;
    align-items:center!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
    margin-left:0!important;
    margin-right:auto!important;
    transform:none!important;
    text-align:left!important;
    align-items:flex-start!important;
  }
}
@media (min-width: 1181px){
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    padding-left:clamp(52px,5.4vw,110px)!important;
    padding-right:clamp(38px,5vw,92px)!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
    width:min(640px,48%)!important;
    max-width:640px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content p{
    max-width:520px!important;
    font-size:clamp(14px,.92vw,18px)!important;
    line-height:1.42!important;
  }
}
@media (min-width: 1181px) and (max-width: 1366px){
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    padding-left:44px!important;
    padding-right:40px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
    width:min(500px,48%)!important;
    max-width:500px!important;
  }
}
@media (min-width: 761px) and (max-width: 1180px){
  body.single-tuspot_place.ts-place-template-free .ts-v50b89-banner--free.ts-v50b121-free-showcase{
    padding-left:32px!important;
    padding-right:32px!important;
  }
  body.single-tuspot_place.ts-place-template-free .ts-v50b121-free-content{
    width:min(540px,58%)!important;
    max-width:540px!important;
  }
}
.ts-add-place-form .tuspot-owner-banner-choice[data-owner-banner-choice="free"] .tuspot-owner-banner-image,
.ts-dashboard-banner-options .tuspot-owner-banner-choice[data-owner-banner-choice="free"] .tuspot-owner-banner-image{
  aspect-ratio:16/9!important;
  overflow:hidden!important;
  background:#eaf8fe!important;
}
.ts-add-place-form .tuspot-owner-banner-choice[data-owner-banner-choice="free"] .tuspot-owner-banner-image img,
.ts-dashboard-banner-options .tuspot-owner-banner-choice[data-owner-banner-choice="free"] .tuspot-owner-banner-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}

/* TuSpot EU v5.0 beta.119 — Pro banner cleanup and packages page controls. */
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about,
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-about--wide{
  display:none!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
  grid-template-rows:minmax(0,1fr)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content{
  position:relative!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-hero-actions--pro{
  position:absolute!important;
  top:clamp(14px,1.8vw,28px)!important;
  right:clamp(14px,1.8vw,28px)!important;
  left:auto!important;
  z-index:22!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
  position:absolute!important;
  top:clamp(14px,1.8vw,28px)!important;
  right:calc(clamp(14px,1.8vw,28px) + 132px)!important;
  left:auto!important;
  transform:none!important;
  z-index:22!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next:hover{
  transform:scale(1.04)!important;
}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-banner--pro{
    grid-template-rows:auto auto!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-hero-actions--pro{
    top:18px!important;
    right:22px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
    top:18px!important;
    right:calc(22px + 122px)!important;
  }
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-hero-actions--pro{
    top:14px!important;
    right:14px!important;
  }
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
    top:14px!important;
    right:calc(14px + 106px)!important;
    width:46px!important;
    height:46px!important;
  }
}

/* TuSpot EU v5.0 beta.120 — keep Pro next arrow below the hero action buttons. */
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-hero-actions--pro{
  top:clamp(14px,1.8vw,28px)!important;
  right:clamp(14px,1.8vw,28px)!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
  top:calc(clamp(14px,1.8vw,28px) + 56px)!important;
  right:clamp(14px,1.8vw,28px)!important;
  left:auto!important;
  transform:none!important;
  z-index:21!important;
}
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next:hover{
  transform:translateY(2px) scale(1.04)!important;
}
@media(max-width:1180px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
    top:72px!important;
    right:22px!important;
  }
}
@media(max-width:760px){
  body.single-tuspot_place.ts-place-template-pro .ts-v50b89-pro-content > .ts-v50b89-pro-next{
    top:68px!important;
    right:14px!important;
    width:46px!important;
    height:46px!important;
  }
}

/* TuSpot EU v5.0 beta.122 — homepage quick match section */
.ts-home-match-stage{padding-top:clamp(34px,5vw,84px)!important;padding-bottom:clamp(22px,4vw,58px)!important;}
.ts-home-match-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);gap:clamp(24px,4vw,70px);align-items:center;padding:clamp(28px,4.8vw,72px)!important;background:linear-gradient(135deg,#fff 0%,#f6fbfe 52%,#eaf8fe 100%)!important;overflow:hidden;position:relative;}
.ts-home-match-panel::after{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:999px;background:rgba(35,187,231,.12);}
.ts-home-match-copy{position:relative;z-index:1;max-width:720px;}
.ts-home-match-copy h2{font-size:clamp(38px,5.2vw,82px);line-height:.92;letter-spacing:-.07em;margin:10px 0 16px;color:#093440;}
.ts-home-match-copy p{font-size:clamp(16px,1.25vw,20px);line-height:1.58;color:#65798d;margin:0;max-width:650px;font-weight:750;}
.ts-home-match-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.ts-home-match-visual{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;}
.ts-home-match-chip{display:flex;align-items:center;gap:13px;min-height:76px;border:1px solid #cceffc;border-radius:24px;background:rgba(255,255,255,.84);box-shadow:0 14px 34px rgba(5,29,51,.06);padding:14px 16px;color:#093440;font-weight:950;}
.ts-home-match-chip .ts-v50b127-climate-icon{width:44px;height:44px;}
.ts-home-match-flow{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:#fff;border:1px solid #d4f3fd;border-radius:24px;padding:10px;box-shadow:0 18px 42px rgba(5,29,51,.06);}
.ts-home-match-flow span,.ts-home-match-flow strong{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:17px;background:#f6fbfe;color:#63798e;font-size:13px;font-weight:950;text-align:center;}
.ts-home-match-flow strong{background:#23bbe7;color:#fff;}
@media (max-width:980px){.ts-home-match-panel{grid-template-columns:1fr;}.ts-home-match-visual{grid-template-columns:repeat(2,minmax(0,1fr));}.ts-home-match-flow{grid-template-columns:1fr;}.ts-home-match-copy h2{font-size:46px;}}
@media (max-width:620px){.ts-home-match-panel{padding:24px!important;border-radius:28px!important;}.ts-home-match-visual{grid-template-columns:1fr;}.ts-home-match-actions .ts-btn{width:100%;}.ts-home-match-copy h2{font-size:38px;}.ts-home-match-copy p{font-size:15px;}}

/* TuSpot EU v5.0 beta.123 — /places climate filter, non-sticky map and map popup close */
.ts-places-climate-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(22px,4vw,70px);align-items:center;margin:clamp(22px,3vw,42px) 0;padding:clamp(28px,4vw,52px)!important;}
.ts-places-climate-copy h2{margin:8px 0 4px;font-size:clamp(34px,4vw,62px);line-height:.95;letter-spacing:-.06em;color:#093440;}
.ts-places-climate-copy p{margin:0;color:#65798d;font-weight:900;font-size:clamp(16px,1.3vw,22px);}
.ts-places-climate-grid{display:grid;grid-template-columns:repeat(4,96px);gap:18px;justify-content:end;}
.ts-places-climate-filter{position:relative;width:96px;height:96px;border:1px solid #d4f3fd;border-radius:28px;background:#fff;display:grid;place-items:center;text-decoration:none;color:#093440;box-shadow:0 18px 42px rgba(9,52,64,.08);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.ts-places-climate-filter:hover,.ts-places-climate-filter.is-active{transform:translateY(-3px);border-color:#23bbe7;background:#eafbff;box-shadow:0 24px 54px rgba(35,187,231,.16);}
.ts-places-climate-filter-icon{width:68px;height:68px;border-radius:22px;background:#f8fdff;display:grid;place-items:center;border:1px solid #e4f8fe;}
.ts-places-climate-filter img{width:52px!important;height:52px!important;object-fit:contain!important;filter:none!important;}
.ts-places-climate-filter-label{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(4px);opacity:0;pointer-events:none;background:#093440;color:#fff;border-radius:15px;padding:8px 13px;font-size:13px;font-weight:950;white-space:nowrap;box-shadow:0 14px 32px rgba(9,52,64,.22);transition:.16s ease;}
.ts-places-climate-filter-label:after{content:"";position:absolute;left:50%;top:100%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#093440;}
.ts-places-climate-filter:hover .ts-places-climate-filter-label,.ts-places-climate-filter:focus-visible .ts-places-climate-filter-label{opacity:1;transform:translateX(-50%) translateY(0);}
.ts-places-climate-filter--all span:first-child{font-size:30px;color:#093440;font-weight:950;}
.ts-places-workspace--list .ts-list-map-column.ts-white-card,.ts-places-workspace--list .ts-list-map-column.ts-white-card.has-js-sticky{position:relative!important;top:auto!important;min-height:0!important;z-index:1!important;}
.ts-list-map-sticky-inner,.ts-list-map-sticky-inner.is-fixed,.ts-list-map-sticky-inner.is-bottom{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;transform:none!important;}
.ts-list-map-sticky-inner .ts-places-full-map{height:min(70vh,760px)!important;min-height:560px!important;}
.ts-map-popup-card{position:relative;}
.ts-map-popup-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border:0;border-radius:999px;background:#fff;color:#093440;font-size:20px;font-weight:950;line-height:1;display:grid;place-items:center;box-shadow:0 8px 20px rgba(9,52,64,.18);z-index:3;cursor:pointer;}
.ts-map-popup-close:hover{background:#093440;color:#fff;}
@media (max-width:1180px){.ts-places-climate-stage{grid-template-columns:1fr}.ts-places-climate-grid{justify-content:start;grid-template-columns:repeat(4,88px)}.ts-places-climate-filter{width:88px;height:88px}.ts-places-climate-filter-icon{width:62px;height:62px}.ts-places-climate-filter img{width:48px!important;height:48px!important}}
@media (max-width:720px){.ts-places-climate-stage{padding:24px 18px!important}.ts-places-climate-grid{grid-template-columns:repeat(3,1fr);gap:12px}.ts-places-climate-filter{width:100%;height:84px}.ts-places-climate-filter-label{position:static;opacity:1;transform:none;background:transparent;color:#093440;box-shadow:none;padding:4px 0 0}.ts-places-climate-filter-label:after{display:none}.ts-list-map-sticky-inner .ts-places-full-map{min-height:420px!important;height:58vh!important}}

/* TuSpot EU v5.0 beta.124 — homepage quick match like compact climate prompt */
.ts-home-match-stage{padding-top:clamp(26px,4vw,70px)!important;padding-bottom:clamp(18px,3.4vw,54px)!important;}
.ts-home-match-panel--polished{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(380px,.72fr)!important;gap:clamp(24px,4vw,78px)!important;align-items:center!important;padding:clamp(34px,4.6vw,74px)!important;min-height:clamp(360px,26vw,520px)!important;background:linear-gradient(110deg,#fff 0%,#f8fdff 54%,#eaf8fe 100%)!important;border:1px solid rgba(35,187,231,.24)!important;border-radius:clamp(28px,2.8vw,46px)!important;box-shadow:0 28px 80px rgba(9,52,64,.10)!important;overflow:hidden!important;position:relative!important;}
.ts-home-match-panel--polished::after{content:""!important;position:absolute!important;right:-54px!important;top:-74px!important;width:260px!important;height:260px!important;border-radius:999px!important;background:rgba(35,187,231,.13)!important;}
.ts-home-match-panel--polished .ts-home-match-copy{position:relative!important;z-index:2!important;max-width:850px!important;}
.ts-home-match-panel--polished .ts-home-match-copy h2{font-size:clamp(42px,5.1vw,86px)!important;line-height:.92!important;letter-spacing:-.075em!important;margin:clamp(18px,2vw,28px) 0 16px!important;color:#0b2b4c!important;max-width:980px!important;}
.ts-home-match-panel--polished .ts-home-match-copy p{font-size:clamp(16px,1.15vw,20px)!important;line-height:1.55!important;color:#65798d!important;max-width:760px!important;margin:0!important;font-weight:700!important;}
.ts-home-match-panel--polished .ts-home-match-actions{margin-top:clamp(22px,2.4vw,34px)!important;}
.ts-home-match-panel--polished .ts-home-match-actions .ts-btn{min-height:56px!important;padding:0 28px!important;box-shadow:0 18px 42px rgba(35,187,231,.18)!important;}
.ts-home-match-visual--icons{position:relative!important;z-index:2!important;display:grid!important;grid-template-columns:repeat(4,clamp(74px,5.8vw,104px))!important;gap:clamp(14px,1.4vw,22px)!important;justify-content:center!important;align-content:center!important;}
.ts-home-match-icon-tile{display:grid!important;place-items:center!important;aspect-ratio:1/1!important;border:1px solid #cceffc!important;border-radius:clamp(20px,1.7vw,28px)!important;background:rgba(255,255,255,.92)!important;box-shadow:0 22px 52px rgba(9,52,64,.09)!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;}
.ts-home-match-icon-tile:hover{transform:translateY(-3px)!important;border-color:#23bbe7!important;box-shadow:0 28px 64px rgba(35,187,231,.14)!important;}
.ts-home-match-icon-tile .ts-v50b127-climate-icon{width:clamp(42px,3.2vw,58px)!important;height:clamp(42px,3.2vw,58px)!important;object-fit:contain!important;filter:none!important;}
@media(max-width:1180px){.ts-home-match-panel--polished{grid-template-columns:1fr!important;}.ts-home-match-visual--icons{grid-template-columns:repeat(4,minmax(64px,92px))!important;justify-content:start!important;}.ts-home-match-panel--polished .ts-home-match-copy h2{font-size:clamp(38px,7vw,62px)!important;}}
@media(max-width:680px){.ts-home-match-panel--polished{padding:26px!important;border-radius:30px!important;}.ts-home-match-visual--icons{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}.ts-home-match-panel--polished .ts-home-match-copy h2{font-size:40px!important;}.ts-home-match-panel--polished .ts-home-match-actions .ts-btn{width:100%!important;}.ts-home-match-icon-tile .ts-v50b127-climate-icon{width:42px!important;height:42px!important;}}

/* TuSpot EU v5.0 beta.124 — list + map alignment and non-sticky map */
.ts-places-workspace--list .ts-list-map-split,.ts-list-map-split{align-items:start!important;}
.ts-places-workspace--list .ts-list-map-column.ts-white-card,.ts-list-map-column.ts-white-card{position:relative!important;top:auto!important;align-self:start!important;margin-top:0!important;max-height:none!important;height:auto!important;overflow:hidden!important;z-index:1!important;}
body.admin-bar .ts-places-workspace--list .ts-list-map-column.ts-white-card,body.admin-bar .ts-list-map-column.ts-white-card{top:auto!important;max-height:none!important;}
.ts-list-map-sticky-inner,.ts-list-map-sticky-inner.is-fixed,.ts-list-map-sticky-inner.is-bottom{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;transform:none!important;}
.ts-list-map-column .ts-places-full-map,.ts-list-map-sticky-inner .ts-places-full-map{height:min(74vh,820px)!important;min-height:680px!important;}

/* TuSpot EU v5.0 beta.125 — /places compact controls, one-row climate and purpose layout */
body.page-template-page-places .ts-places-workspace-top.ts-white-card,
body.page-id-0 .ts-places-workspace-top.ts-white-card{
  display:none!important;
}
.ts-places-workspace-toolbar{
  width:100%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  margin:clamp(8px,1.4vw,22px) 0 clamp(16px,2vw,30px)!important;
}
.ts-places-top-actions--moved{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:14px!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
}
.ts-places-top-actions--moved .ts-view-switch,
.ts-places-top-actions--moved .ts-sort-form,
.ts-places-top-actions--moved .ts-select{
  width:auto!important;
  min-width:0!important;
}
.ts-places-top-actions--moved .ts-view-switch--workspace{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:7px!important;
  border-radius:999px!important;
  background:#eafbff!important;
  border:1px solid #bfeefd!important;
}
.ts-places-top-actions--moved .ts-view-switch--workspace a{
  min-width:96px!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
.ts-places-top-actions--moved .ts-sort-form--workspace .ts-select{
  min-width:220px!important;
  height:52px!important;
  border-radius:999px!important;
}

.ts-places-climate-stage.ts-white-card{
  grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr)!important;
  align-items:center!important;
  gap:clamp(26px,4vw,76px)!important;
}
.ts-places-climate-stage .ts-places-climate-grid{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(8,96px)!important;
  justify-content:end!important;
  gap:18px!important;
}
.ts-places-climate-stage .ts-places-climate-filter{
  width:96px!important;
  height:96px!important;
}

.ts-filter-tabs-shell.ts-filter-tabs-shell--purpose.ts-white-card{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  gap:clamp(18px,2vw,28px)!important;
  padding:clamp(26px,3.2vw,44px)!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tabs-intro{
  width:100%!important;
  max-width:960px!important;
  margin:0!important;
  position:relative!important;
  z-index:2!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tabs-intro .ts-kicker{
  margin-bottom:8px!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tabs-intro strong{
  display:block!important;
  max-width:680px!important;
  font-size:clamp(36px,4vw,60px)!important;
  line-height:.92!important;
  letter-spacing:-.06em!important;
  color:#093440!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tab-row--purpose{
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  position:relative!important;
  z-index:2!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tab-row--purpose > div{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:14px!important;
  overflow:visible!important;
  padding:0!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tab--purpose{
  width:100%!important;
  min-width:0!important;
  min-height:118px!important;
  padding:18px!important;
}
.ts-filter-tabs-shell--purpose .ts-filter-tab--purpose i{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
}

/* Small round climate badges on cards — icon only, room for several badges. */
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate,
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  flex:0 0 50px!important;
  padding:0!important;
  border-radius:999px!important;
  display:inline-grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(191,238,253,.95)!important;
  box-shadow:0 12px 26px rgba(9,52,64,.13)!important;
  overflow:visible!important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate .ts-v50b127-climate-icon,
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot .ts-v50b127-climate-icon{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  object-fit:contain!important;
  filter:none!important;
  flex:0 0 30px!important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate > span,
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot > span,
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate .ts-v50b127-climate-label,
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot .ts-v50b127-climate-label{
  display:none!important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > span:not(.ts-v50b127-card-climate):not(.ts-v50b131-climate-dot){
  flex:1 1 138px!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
}
.ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > span:not(.ts-v50b127-card-climate):not(.ts-v50b131-climate-dot):last-child{
  margin-left:0!important;
}

@media(max-width:1500px){
  .ts-places-climate-stage.ts-white-card{grid-template-columns:1fr!important;}
  .ts-places-climate-stage .ts-places-climate-grid{justify-content:start!important;grid-template-columns:repeat(8,88px)!important;gap:14px!important;}
  .ts-places-climate-stage .ts-places-climate-filter{width:88px!important;height:88px!important;}
  .ts-filter-tabs-shell--purpose .ts-filter-tab-row--purpose > div{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:860px){
  .ts-places-workspace-toolbar{justify-content:stretch!important;}
  .ts-places-top-actions--moved{width:100%!important;flex-direction:column!important;align-items:stretch!important;}
  .ts-places-top-actions--moved .ts-view-switch--workspace,
  .ts-places-top-actions--moved .ts-sort-form--workspace,
  .ts-places-top-actions--moved .ts-sort-form--workspace .ts-select{width:100%!important;}
  .ts-places-climate-stage .ts-places-climate-grid{grid-template-columns:repeat(4,1fr)!important;}
  .ts-places-climate-stage .ts-places-climate-filter{width:100%!important;}
  .ts-filter-tabs-shell--purpose .ts-filter-tab-row--purpose > div{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  .ts-places-climate-stage .ts-places-climate-grid{grid-template-columns:repeat(3,1fr)!important;}
  .ts-filter-tabs-shell--purpose .ts-filter-tab-row--purpose > div{grid-template-columns:1fr!important;}
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate,
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;flex-basis:46px!important;}
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b127-card-climate .ts-v50b127-climate-icon,
  .ts-place-card--v50b29 .ts-v50b29-card-bottom-badges > .ts-v50b131-climate-dot .ts-v50b127-climate-icon{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;}
}


/* TuSpot v5.0 beta.127 — subtle country flag markers on cards and place banners */
.ts-v50b29-card-media{position:relative!important;}
.ts-v50b137-country-flag{box-sizing:border-box!important;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",system-ui,sans-serif!important;}
.ts-v50b137-country-flag--card{
  position:absolute!important;
  z-index:8!important;
  right:clamp(14px,1.5vw,20px)!important;
  top:clamp(70px,5.5vw,82px)!important;
  width:44px!important;
  height:44px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(188,238,252,.95)!important;
  box-shadow:0 14px 36px rgba(9,52,64,.16)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  pointer-events:auto!important;
}
.ts-v50b137-country-flag--card .ts-v50b137-country-flag-emoji{font-size:22px!important;line-height:1!important;transform:translateY(1px)!important;}
.ts-v50b137-country-flag--hero{
  position:absolute!important;
  z-index:35!important;
  right:clamp(22px,3vw,46px)!important;
  top:clamp(92px,8vw,140px)!important;
  min-height:42px!important;
  padding:8px 13px 8px 10px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  color:#073440!important;
  background:rgba(255,255,255,.9)!important;
  border:1px solid rgba(188,238,252,.95)!important;
  box-shadow:0 16px 44px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.ts-v50b137-country-flag--hero .ts-v50b137-country-flag-emoji{font-size:22px!important;line-height:1!important;}
.ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{font-family:Outfit,Figtree,sans-serif!important;font-size:13px!important;font-weight:900!important;letter-spacing:.02em!important;white-space:nowrap!important;color:#073440!important;}
body.single-tuspot_place.ts-place-template-free .ts-v50b137-country-flag--hero{top:clamp(74px,7vw,118px)!important;right:clamp(24px,3vw,48px)!important;}
body.single-tuspot_place.ts-place-template-active .ts-v50b137-country-flag--hero,
body.single-tuspot_place.ts-place-template-pro .ts-v50b137-country-flag--hero{top:clamp(112px,8vw,150px)!important;right:clamp(22px,3vw,52px)!important;background:rgba(255,255,255,.84)!important;}
@media(max-width:980px){
  .ts-v50b137-country-flag--card{width:40px!important;height:40px!important;top:64px!important;right:14px!important;}
  .ts-v50b137-country-flag--card .ts-v50b137-country-flag-emoji{font-size:20px!important;}
  .ts-v50b137-country-flag--hero{top:88px!important;right:18px!important;min-height:38px!important;padding:7px 11px 7px 9px!important;}
  .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{font-size:12px!important;}
}
@media(max-width:640px){
  .ts-v50b137-country-flag--card{width:38px!important;height:38px!important;top:58px!important;right:12px!important;}
  .ts-v50b137-country-flag--card .ts-v50b137-country-flag-emoji{font-size:19px!important;}
  .ts-v50b137-country-flag--hero{top:82px!important;right:14px!important;max-width:calc(100vw - 28px)!important;}
  .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{display:none!important;}
}

/* v5.0 beta.138 — e-mail privacy and public FAQ */
.ts-v50b138-email-visibility{
  grid-column:1/-1;
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:16px 18px;
  border:1px solid #BEEBFA;
  border-radius:22px;
  background:linear-gradient(135deg, rgba(234,248,254,.95), rgba(255,255,255,.98));
  box-shadow:0 14px 34px rgba(33,40,68,.06);
  cursor:pointer;
}
.ts-v50b138-email-visibility input{width:20px;height:20px;margin-top:4px;accent-color:#23BBE7;flex:0 0 auto}
.ts-v50b138-email-visibility span{display:grid;gap:4px;color:#082747}
.ts-v50b138-email-visibility strong{font-size:clamp(15px,1vw,18px);font-weight:900;line-height:1.2}
.ts-v50b138-email-visibility small{font-size:13px;line-height:1.45;color:#637489;font-weight:700}
.ts-v50b138-faq-section .ts-v39-form-section-head span{background:#EAF8FE;color:#157F95}
.ts-v50b138-faq-builder{display:grid;gap:14px;margin-top:18px}
.ts-v50b138-faq-row{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:16px;border:1px solid #D6F2FB;border-radius:24px;background:rgba(255,255,255,.78)}
.ts-v50b138-faq-number{width:42px;height:42px;border-radius:16px;background:#EAF8FE;color:#157F95;font-weight:950;display:grid;place-items:center;letter-spacing:.08em}
.ts-v50b138-faq-fields{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(280px,1.15fr);gap:14px;align-items:start}
.ts-v50b138-faq-fields textarea{min-height:92px;resize:vertical}
.ts-v50b138-public-faq{padding:clamp(24px,3vw,44px)!important;margin-top:clamp(22px,3vw,42px)}
.ts-v50b138-public-faq-head{max-width:760px;margin-bottom:22px}
.ts-v50b138-public-faq-head h2{margin:.2em 0 .25em;font-size:clamp(32px,4vw,58px);line-height:.95;color:#082747;letter-spacing:-.055em}
.ts-v50b138-public-faq-head p{margin:0;color:#637489;font-size:clamp(16px,1.2vw,20px);font-weight:700;line-height:1.45}
.ts-v50b138-public-faq-list{display:grid;gap:12px}
.ts-v50b138-public-faq-item{border:1px solid #BEEBFA;border-radius:22px;background:#F6FBFE;overflow:hidden;box-shadow:0 12px 28px rgba(33,40,68,.045)}
.ts-v50b138-public-faq-item summary{list-style:none;cursor:pointer;padding:18px 22px;font-size:clamp(16px,1.2vw,20px);font-weight:950;color:#082747;display:flex;align-items:center;justify-content:space-between;gap:18px}
.ts-v50b138-public-faq-item summary::-webkit-details-marker{display:none}
.ts-v50b138-public-faq-item summary:after{content:'+';width:34px;height:34px;border-radius:999px;background:#EAF8FE;color:#23BBE7;display:grid;place-items:center;font-size:22px;font-weight:950;flex:0 0 auto}
.ts-v50b138-public-faq-item[open] summary:after{content:'–';background:#23BBE7;color:#fff}
.ts-v50b138-public-faq-item p{margin:0;padding:0 22px 20px;color:#53687D;font-size:clamp(15px,1vw,18px);font-weight:700;line-height:1.62;max-width:980px}
@media (max-width: 880px){
  .ts-v50b138-faq-row{grid-template-columns:1fr;padding:14px}
  .ts-v50b138-faq-fields{grid-template-columns:1fr}
  .ts-v50b138-public-faq{padding:22px!important}
}

/* TuSpot v5.0 beta.129 — kraj obok nazwy pakietu na bannerach wizytówek */
.ts-v50b89-hero-kicker-row{
  position:relative!important;
  z-index:36!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:max-content!important;
  max-width:100%!important;
}
.ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  bottom:auto!important;
  z-index:auto!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 13px 0 9px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(188,238,252,.86)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
  color:#073440!important;
  -webkit-text-fill-color:#073440!important;
  transform:none!important;
}
.ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-emoji{
  font-size:18px!important;
  line-height:1!important;
  transform:translateY(1px)!important;
}
.ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{
  display:inline-block!important;
  max-width:170px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-family:Outfit,Figtree,sans-serif!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  color:#073440!important;
  -webkit-text-fill-color:#073440!important;
}
body.single-tuspot_place.ts-place-template-free .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero,
body.single-tuspot_place.ts-place-template-active .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero,
body.single-tuspot_place.ts-place-template-pro .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero{
  position:static!important;
  top:auto!important;
  right:auto!important;
  background:rgba(255,255,255,.92)!important;
}
body.single-tuspot_place .ts-place-profile-banner--v50b29 > .ts-v50b137-country-flag--hero{
  display:none!important;
}
@media(max-width:980px){
  .ts-v50b89-hero-kicker-row{gap:8px!important;}
  .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero{min-height:32px!important;height:32px!important;padding:0 11px 0 8px!important;}
  .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-emoji{font-size:17px!important;}
  .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{display:inline-block!important;font-size:11px!important;max-width:145px!important;}
}
@media(max-width:640px){
  .ts-v50b89-hero-kicker-row{width:100%!important;max-width:100%!important;}
  .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero{max-width:calc(100% - 98px)!important;}
  .ts-v50b89-hero-kicker-row .ts-v50b137-country-flag--hero .ts-v50b137-country-flag-label{display:inline-block!important;max-width:120px!important;}
}


/* TuSpot EU v5.0 beta.131 — restaurant menu and category-aware single place cleanup */
.ts-v50b144-info-grid--compact{grid-template-columns:1fr!important;}
.ts-v50b144-menu-front{overflow:hidden;}
.ts-v50b144-menu-front-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;}
.ts-v50b144-menu-category{width:100%;padding:clamp(18px,2vw,28px)!important;border:1px solid #d9eef6!important;border-radius:26px!important;background:linear-gradient(180deg,#fff,#fbfeff)!important;box-shadow:0 18px 42px rgba(9,52,64,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.ts-v50b144-menu-category:hover{transform:translateY(-2px);border-color:#bceffc!important;box-shadow:0 26px 58px rgba(9,52,64,.09);}
.ts-v50b144-menu-category h3{font-size:clamp(24px,2vw,34px)!important;letter-spacing:-.04em;margin:0 0 12px!important;color:#093440!important;}
.ts-v50b144-menu-line{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:18px!important;align-items:start!important;padding:16px 0!important;border-top:1px solid #e7f3f8!important;transition:padding-left .2s ease,background .2s ease;}
.ts-v50b144-menu-line:before{content:"";position:absolute;left:0;top:16px;width:0;height:3px;border-radius:999px;background:#23bbe7;transition:width .2s ease;}
.ts-v50b144-menu-line:hover{padding-left:16px!important;background:linear-gradient(90deg,rgba(35,187,231,.06),rgba(35,187,231,0));}
.ts-v50b144-menu-line:hover:before{width:8px;}
.ts-v50b144-menu-line strong{display:block;font-size:clamp(18px,1.35vw,24px);line-height:1.08;color:#083440!important;letter-spacing:-.025em;}
.ts-v50b144-menu-line span{display:block;margin-top:4px!important;color:#60798b!important;font-size:clamp(14px,1vw,17px)!important;line-height:1.35;font-style:italic;}
.ts-v50b144-menu-line em{font-style:normal!important;font-size:clamp(17px,1.2vw,22px);font-weight:950;color:#093440!important;white-space:nowrap;}
.ts-v50b127-place-climate-strip.ts-white-card{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
.ts-place-main-content--v50b29>.ts-v50b127-place-climate-strip{margin-left:0!important;margin-right:0!important;}
@media(max-width:720px){.ts-v50b144-menu-line{grid-template-columns:1fr!important}.ts-v50b144-menu-line em{justify-self:start}.ts-v50b144-menu-line:hover{padding-left:0!important}}

/* TuSpot EU v5.0 beta.133 — Bars & Restaurants vibe filters */
.ts-places-climate-stage--restaurant-vibes{grid-template-columns:minmax(280px,.6fr) minmax(0,1fr)!important;align-items:start!important;}
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-grid--restaurant-vibes{grid-template-columns:repeat(8,minmax(72px,88px))!important;justify-content:end!important;gap:12px!important;}
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter{width:88px!important;height:88px!important;border-radius:24px!important;}
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter-icon{width:62px!important;height:62px!important;border-radius:20px!important;overflow:hidden!important;background:#f4f4f4!important;border-color:#edf3f5!important;}
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter img{width:62px!important;height:62px!important;object-fit:cover!important;border-radius:18px!important;}
.ts-filter-group--restaurant-vibe select{background:#f7fdff!important;border-color:#aee9fa!important;}
.ts-v50b146-restaurant-vibes-front.ts-white-card{grid-template-columns:minmax(260px,.58fr) minmax(0,1fr)!important;align-items:start!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{justify-content:stretch!important;}
.ts-v50b146-vibe-desc{font-size:11px!important;color:#65798d!important;}
.ts-place-card--v50b29 .ts-v50b146-restaurant-vibe-badge .ts-v50b127-climate-icon{border-radius:999px!important;object-fit:cover!important;}
@media(max-width:1280px){.ts-places-climate-stage--restaurant-vibes{grid-template-columns:1fr!important}.ts-places-climate-stage--restaurant-vibes .ts-places-climate-grid--restaurant-vibes{justify-content:start!important;grid-template-columns:repeat(8,82px)!important}.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter{width:82px!important;height:82px!important}.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter-icon,.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter img{width:58px!important;height:58px!important}}
@media(max-width:760px){.ts-places-climate-stage--restaurant-vibes .ts-places-climate-grid--restaurant-vibes{grid-template-columns:repeat(4,1fr)!important}.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter{width:100%!important;height:86px!important}.ts-v50b146-restaurant-vibes-front.ts-white-card{grid-template-columns:1fr!important}.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{grid-template-columns:1fr!important}}
@media(max-width:480px){.ts-places-climate-stage--restaurant-vibes .ts-places-climate-grid--restaurant-vibes{grid-template-columns:repeat(3,1fr)!important}}


/* v50b148 hotel stars */
.ts-v50b148-hotel-stars{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;border:1px solid rgba(35,187,231,.28);background:rgba(255,255,255,.92);color:#093440;border-radius:999px;padding:7px 11px;font-weight:950;line-height:1;box-shadow:0 10px 26px rgba(9,52,64,.10);backdrop-filter:blur(10px)}
.ts-v50b148-hotel-stars__type{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#093440}.ts-v50b148-hotel-stars__icons{color:#eba900;font-size:.98rem;letter-spacing:.03em;white-space:nowrap}.ts-v50b148-hotel-stars--hero{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28);color:#fff}.ts-v50b148-hotel-stars--hero .ts-v50b148-hotel-stars__type{color:#fff}.ts-v50b148-hotel-stars--hero .ts-v50b148-hotel-stars__icons{color:#ffcf42}.ts-v50b148-hero-stars{margin:10px 0 14px;display:flex;align-items:center}.ts-v50b148-hero-stars--free{margin:10px 0 8px}.ts-v50b148-card-hotel-standard{position:absolute;right:18px;top:72px;z-index:5}.ts-v50b148-card-hotel-standard .ts-v50b148-hotel-stars{padding:9px 12px;background:#fff}.ts-v50b148-card-title-stars{margin:-2px 0 8px}.ts-v50b148-card-title-stars .ts-v50b148-hotel-stars{box-shadow:none;background:#f6fbfe;border-color:rgba(35,187,231,.3);padding:6px 10px}.ts-place-card--v50b29 .ts-v50b148-card-title-stars .ts-v50b148-hotel-stars__type{font-size:.72rem}.ts-place-card--v50b29 .ts-v50b148-card-title-stars .ts-v50b148-hotel-stars__icons{font-size:.86rem}
.ts-v50b148-hotel-stars-stage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;margin-bottom:24px;padding:24px!important}.ts-v50b148-hotel-stars-stage h2{margin:4px 0 4px;font-family:var(--ts-font-display);font-size:clamp(24px,2vw,34px);color:#0d2b4c}.ts-v50b148-hotel-stars-stage p{margin:0;color:#60798b;font-weight:750}.ts-v50b148-hotel-filter-pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.ts-v50b148-hotel-filter-pills a{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(35,187,231,.34);background:#fff;color:#093440;border-radius:999px;padding:10px 13px;text-decoration:none;font-weight:950}.ts-v50b148-hotel-filter-pills a span{color:#eba900;letter-spacing:.02em}.ts-v50b148-hotel-filter-pills a.is-active,.ts-v50b148-hotel-filter-pills a:hover{background:#093440;color:#fff;border-color:#093440}.ts-v50b148-hotel-filter-pills a.is-active span,.ts-v50b148-hotel-filter-pills a:hover span{color:#ffcf42}.ts-v50b148-hotel-filter select{font-weight:900;color:#093440}
@media(max-width:860px){.ts-v50b148-hotel-stars-stage{grid-template-columns:1fr}.ts-v50b148-hotel-filter-pills{justify-content:flex-start}.ts-v50b148-card-hotel-standard{top:58px;right:14px}.ts-v50b148-hotel-stars__type{font-size:.68rem}.ts-v50b148-hotel-stars__icons{font-size:.82rem}}

/* v5.0 beta.136 — place banner copy clamp, map controls, restaurant vibe polish */
body.single-tuspot_place .ts-v50b89-banner p,
body.single-tuspot_place .ts-v50b118-active-copy p,
body.single-tuspot_place .ts-v50b89-pro-content p,
body.single-tuspot_place .ts-v50b89-free-card p,
body.single-tuspot_place .ts-place-banner-panel p{
  font-weight:400!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy,
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy *{
  font-weight:400!important;
}
.ts-v50b29-map iframe{pointer-events:auto!important;}
.ts-v50b150-leaflet-map{width:100%;min-height:420px;border-radius:26px;overflow:hidden;background:#eaf8fe;display:block;z-index:1;}
.ts-v50b150-map .leaflet-control-container{font-family:var(--ts-font-body,inherit);}
.ts-v50b150-map .leaflet-control-zoom a{color:#093440!important;font-weight:950!important;}
.ts-v50b150-blue-marker{background:transparent!important;border:0!important;}
.ts-v50b150-blue-marker span{position:relative;display:block;width:30px;height:30px;border-radius:999px 999px 999px 0;background:#23bbe7;border:4px solid #fff;box-shadow:0 12px 30px rgba(35,187,231,.38);transform:rotate(-45deg);}
.ts-v50b150-blue-marker span::after{content:"";position:absolute;inset:7px;border-radius:999px;background:#fff;opacity:.96;}
.ts-v50b150-vibe-group-head{margin:30px 0 16px!important;padding:18px 22px!important;border-radius:24px!important;background:#fff!important;border:1px solid rgba(35,187,231,.18)!important;box-shadow:0 12px 30px rgba(9,52,64,.04)!important;}
.ts-v50b150-vibe-group-head span{display:block!important;color:#093440!important;font-weight:950!important;font-size:1.15rem!important;letter-spacing:-.02em!important;}
.ts-v50b150-vibe-group-head p{margin:4px 0 0!important;color:#60798b!important;font-weight:650!important;}
.ts-v50b146-restaurant-vibe-picker{margin-top:0!important;}
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon,
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon img,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon img,
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter img{
  background:#fff!important;
}
.ts-v50b146-restaurant-vibes-front.ts-white-card{display:grid!important;grid-template-columns:minmax(300px,.48fr) minmax(0,1fr)!important;gap:clamp(24px,4vw,54px)!important;align-items:center!important;overflow:hidden!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;gap:14px!important;width:100%!important;justify-content:stretch!important;align-items:stretch!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile{min-height:132px!important;border-radius:26px!important;padding:14px 12px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:9px!important;text-align:center!important;background:#fff!important;overflow:hidden!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon{width:68px!important;height:68px!important;min-width:68px!important;border-radius:22px!important;display:grid!important;place-items:center!important;overflow:hidden!important;box-shadow:0 12px 30px rgba(9,52,64,.06)!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon img{width:54px!important;height:54px!important;object-fit:contain!important;border-radius:0!important;filter:none!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-label{display:block!important;max-width:100%!important;color:#093440!important;font-size:.84rem!important;font-weight:900!important;line-height:1.15!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b146-vibe-desc{display:none!important;}
.ts-v50b146-restaurant-vibes-front .ts-kicker{width:max-content!important;}
.ts-v50b146-restaurant-vibes-front h2{font-size:clamp(34px,3.6vw,58px)!important;line-height:.95!important;letter-spacing:-.055em!important;}
.ts-v50b146-restaurant-vibes-front p{font-weight:400!important;line-height:1.45!important;max-width:520px!important;}
@media(max-width:900px){.ts-v50b146-restaurant-vibes-front.ts-white-card{grid-template-columns:1fr!important}.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ts-v50b150-leaflet-map{min-height:360px}}
@media(max-width:560px){.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{grid-template-columns:1fr 1fr!important}.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile{min-height:120px!important}.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-label{font-size:.78rem!important}.ts-v50b29-map-coords{grid-template-columns:1fr!important}}

/* TuSpot EU v5.0 beta.137 — map sizing and restaurant vibe icon restore */
.ts-v50b150-map.ts-white-card{
  overflow:hidden!important;
}
.ts-v50b150-leaflet-map,
.ts-v50b150-leaflet-map.leaflet-container{
  width:100%!important;
  height:380px!important;
  min-height:380px!important;
  max-height:380px!important;
  border-radius:26px!important;
  overflow:hidden!important;
  position:relative!important;
  background:#eaf8fe!important;
  z-index:1!important;
}
@media(max-width:760px){
  .ts-v50b150-leaflet-map,
  .ts-v50b150-leaflet-map.leaflet-container{height:320px!important;min-height:320px!important;max-height:320px!important;}
}
/* Minimal local Leaflet layout fallback, used when remote Leaflet CSS is blocked or delayed. */
.ts-v50b150-map .leaflet-container{overflow:hidden!important;touch-action:pan-x pan-y!important;}
.ts-v50b150-map .leaflet-pane,
.ts-v50b150-map .leaflet-map-pane,
.ts-v50b150-map .leaflet-tile-pane,
.ts-v50b150-map .leaflet-overlay-pane,
.ts-v50b150-map .leaflet-shadow-pane,
.ts-v50b150-map .leaflet-marker-pane,
.ts-v50b150-map .leaflet-tooltip-pane,
.ts-v50b150-map .leaflet-popup-pane,
.ts-v50b150-map .leaflet-tile-container,
.ts-v50b150-map .leaflet-layer{
  position:absolute!important;
  left:0!important;
  top:0!important;
}
.ts-v50b150-map .leaflet-tile,
.ts-v50b150-map .leaflet-marker-icon,
.ts-v50b150-map .leaflet-marker-shadow{
  position:absolute!important;
  left:0!important;
  top:0!important;
  max-width:none!important;
  max-height:none!important;
  user-select:none!important;
}
.ts-v50b150-map .leaflet-tile{width:256px!important;height:256px!important;}
.ts-v50b150-map .leaflet-control-container .leaflet-top,
.ts-v50b150-map .leaflet-control-container .leaflet-bottom{position:absolute!important;z-index:1000!important;pointer-events:none!important;}
.ts-v50b150-map .leaflet-top{top:0!important;}.ts-v50b150-map .leaflet-right{right:0!important;}.ts-v50b150-map .leaflet-bottom{bottom:0!important;}.ts-v50b150-map .leaflet-left{left:0!important;}
.ts-v50b150-map .leaflet-control{position:relative!important;z-index:1000!important;pointer-events:auto!important;float:left!important;clear:both!important;}
.ts-v50b150-map .leaflet-top .leaflet-control{margin-top:12px!important;}.ts-v50b150-map .leaflet-left .leaflet-control{margin-left:12px!important;}.ts-v50b150-map .leaflet-right .leaflet-control{margin-right:12px!important;}.ts-v50b150-map .leaflet-bottom .leaflet-control{margin-bottom:12px!important;}
.ts-v50b150-map .leaflet-control-zoom{border:1px solid rgba(9,52,64,.12)!important;border-radius:14px!important;box-shadow:0 12px 30px rgba(9,52,64,.12)!important;overflow:hidden!important;background:#fff!important;}
.ts-v50b150-map .leaflet-control-zoom a{display:block!important;width:36px!important;height:36px!important;line-height:34px!important;text-align:center!important;text-decoration:none!important;background:#fff!important;border-bottom:1px solid rgba(9,52,64,.12)!important;color:#093440!important;font-size:22px!important;font-weight:950!important;}
.ts-v50b150-map .leaflet-control-zoom a:last-child{border-bottom:0!important;}
.ts-v50b150-map .leaflet-control-attribution{background:rgba(255,255,255,.88)!important;border-radius:999px!important;padding:4px 9px!important;font-size:11px!important;color:#093440!important;}
.ts-v50b150-blue-marker{background:transparent!important;border:0!important;}
.ts-v50b150-blue-marker span{position:relative!important;display:block!important;width:30px!important;height:30px!important;border-radius:999px 999px 999px 0!important;background:#23bbe7!important;border:4px solid #fff!important;box-shadow:0 12px 30px rgba(35,187,231,.38)!important;transform:rotate(-45deg)!important;}
.ts-v50b150-blue-marker span::after{content:""!important;position:absolute!important;inset:7px!important;border-radius:999px!important;background:#fff!important;opacity:.96!important;}

/* Restaurant vibe front: restore compact row with hover tooltip, white icon backgrounds. */
.ts-v50b146-restaurant-vibes-front.ts-white-card{
  display:grid!important;
  grid-template-columns:minmax(280px,.46fr) minmax(0,1fr)!important;
  gap:clamp(22px,4vw,56px)!important;
  align-items:center!important;
  overflow:visible!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tiles{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:16px!important;
  width:100%!important;
  overflow:visible!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile{
  position:relative!important;
  width:104px!important;
  height:104px!important;
  min-width:104px!important;
  min-height:104px!important;
  padding:12px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:28px!important;
  background:#ffffff!important;
  border:1px solid rgba(35,187,231,.28)!important;
  box-shadow:0 18px 48px rgba(9,52,64,.08)!important;
  overflow:visible!important;
  text-decoration:none!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile:hover,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile.is-primary{
  transform:translateY(-3px)!important;
  border-color:#23bbe7!important;
  box-shadow:0 24px 60px rgba(35,187,231,.16)!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon{
  width:74px!important;
  height:74px!important;
  min-width:74px!important;
  border-radius:22px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:#ffffff!important;
  box-shadow:none!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon img,
.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-icon{
  width:68px!important;
  height:68px!important;
  object-fit:contain!important;
  border-radius:0!important;
  background:#ffffff!important;
  filter:none!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-label,
.ts-v50b146-restaurant-vibes-front .ts-v50b146-vibe-desc{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile::after{
  content:attr(data-ts-tooltip)!important;
  position:absolute!important;
  left:50%!important;
  bottom:calc(100% + 12px)!important;
  transform:translateX(-50%) translateY(6px)!important;
  background:#08213d!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:9px 12px!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  min-width:max-content!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  box-shadow:0 14px 34px rgba(8,33,61,.22)!important;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
  z-index:30!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:calc(100% + 5px)!important;
  transform:translateX(-50%) translateY(6px)!important;
  border:7px solid transparent!important;
  border-top-color:#08213d!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
  z-index:29!important;
}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile:hover::after,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile:hover::before,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile:focus-visible::after,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile:focus-visible::before{
  opacity:1!important;
  visibility:visible!important;
  transform:translateX(-50%) translateY(0)!important;
}
.ts-v50b146-restaurant-vibes-front h2{font-size:clamp(36px,4vw,64px)!important;line-height:.96!important;letter-spacing:-.055em!important;}
.ts-v50b146-restaurant-vibes-front p{font-weight:400!important;max-width:520px!important;}
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon,
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon img,
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter-icon,
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter img,
.ts-place-card--v50b29 .ts-v50b146-restaurant-vibe-badge .ts-v50b127-climate-icon{
  background:#ffffff!important;
}
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon img,
.ts-places-climate-stage--restaurant-vibes .ts-places-climate-filter img{
  object-fit:contain!important;
  border-radius:0!important;
}
@media(max-width:980px){
  .ts-v50b146-restaurant-vibes-front.ts-white-card{grid-template-columns:1fr!important;}
  .ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list,
  .ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tiles{justify-content:flex-start!important;}
}
@media(max-width:560px){
  .ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile{width:88px!important;height:88px!important;min-width:88px!important;min-height:88px!important;border-radius:24px!important;}
  .ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon{width:62px!important;height:62px!important;min-width:62px!important;}
  .ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon img,
  .ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-icon{width:58px!important;height:58px!important;}
}

/* TuSpot EU v5.0 beta.138 — catalogue categories + stable climate/vibe icons */
.ts-v50b152-category-stage{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);gap:28px;align-items:start;margin:28px auto!important;padding:28px!important;border-radius:30px!important;background:#fff!important;border:1px solid rgba(35,187,231,.24)!important;box-shadow:0 18px 44px rgba(9,52,64,.08)!important;}
.ts-v50b152-category-stage h2{margin:8px 0 8px!important;font-size:clamp(2rem,3.2vw,3.2rem)!important;line-height:.95!important;color:#08264a!important;}
.ts-v50b152-category-stage p{margin:0!important;color:#60798b!important;font-weight:650!important;line-height:1.45!important;}
.ts-v50b152-category-main-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;}
.ts-v50b152-category-chip{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-height:72px!important;padding:14px 16px!important;border:1px solid rgba(35,187,231,.25)!important;border-radius:20px!important;background:#fff!important;color:#093440!important;text-decoration:none!important;font-weight:900!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease!important;}
.ts-v50b152-category-chip span{display:block!important;color:#60798b!important;font-size:.74rem!important;font-weight:850!important;text-transform:none!important;}
.ts-v50b152-category-chip:hover,.ts-v50b152-category-chip.is-active{transform:translateY(-1px)!important;border-color:#23bbe7!important;background:#eaf8fe!important;box-shadow:0 16px 36px rgba(35,187,231,.12)!important;}
.ts-v50b152-subcategory-row{grid-column:1/-1!important;margin-top:18px!important;padding-top:18px!important;border-top:1px solid rgba(35,187,231,.16)!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;}
.ts-v50b152-subcategory-row strong{margin-right:8px!important;color:#093440!important;font-weight:950!important;}
.ts-v50b152-subcategory-row a{display:inline-flex!important;align-items:center!important;min-height:40px!important;padding:9px 15px!important;border-radius:999px!important;border:1px solid rgba(35,187,231,.34)!important;background:#fff!important;color:#0a3440!important;text-decoration:none!important;font-weight:850!important;line-height:1!important;}
.ts-v50b152-subcategory-row a:hover,.ts-v50b152-subcategory-row a.is-active{background:#093440!important;border-color:#093440!important;color:#fff!important;}
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon,
.ts-v50b129-place-climate-strip .ts-v50b129-climate-tile-icon{background:#fff!important;display:grid!important;place-items:center!important;overflow:hidden!important;}
.ts-v50b146-restaurant-vibe-picker .ts-v50b127-climate-choice-icon img,
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon img,
.ts-v50b129-place-climate-strip .ts-v50b129-climate-tile-icon img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;background:#fff!important;}
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front){overflow:visible!important;}
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b127-climate-list{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:14px!important;max-width:560px!important;overflow:visible!important;}
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b129-climate-tile{width:104px!important;height:104px!important;min-height:104px!important;display:grid!important;place-items:center!important;padding:12px!important;overflow:visible!important;position:relative!important;}
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b129-climate-tile-icon{width:74px!important;height:74px!important;border-radius:22px!important;}
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b129-climate-tile-label,
.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b146-vibe-desc{display:none!important;}
.ts-v50b146-restaurant-vibes-front{overflow:visible!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-end!important;gap:18px!important;width:100%!important;max-width:920px!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b146-vibe-tile{width:118px!important;height:118px!important;min-height:118px!important;display:grid!important;place-items:center!important;padding:14px!important;grid-template-columns:1fr!important;position:relative!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-icon{width:78px!important;height:78px!important;border-radius:22px!important;grid-row:auto!important;}
.ts-v50b146-restaurant-vibes-front .ts-v50b129-climate-tile-label,
.ts-v50b146-restaurant-vibes-front .ts-v50b146-vibe-desc{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;}
@media(max-width:1180px){.ts-v50b152-category-stage{grid-template-columns:1fr!important}.ts-v50b152-category-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b127-climate-list,.ts-v50b146-restaurant-vibes-front .ts-v50b127-climate-list{justify-content:flex-start!important;max-width:100%!important}}
@media(max-width:680px){.ts-v50b152-category-main-grid{grid-template-columns:1fr!important}.ts-v50b146-restaurant-vibes-front .ts-v50b146-vibe-tile,.ts-v50b129-place-climate-strip:not(.ts-v50b146-restaurant-vibes-front) .ts-v50b129-climate-tile{width:96px!important;height:96px!important;min-height:96px!important}}

/* v5.0 beta.139 — hotel stars card badge moved to the left, under/after Sponsored */
.ts-place-card--v50b29 .ts-v50b148-card-hotel-standard,
.ts-v50b148-card-hotel-standard {
  left: 18px !important;
  right: auto !important;
  top: 72px !important;
  z-index: 7 !important;
  max-width: calc(100% - 108px) !important;
}
.ts-place-card--v50b29 .ts-v50b148-card-hotel-standard .ts-v50b148-hotel-stars,
.ts-v50b148-card-hotel-standard .ts-v50b148-hotel-stars {
  background: rgba(255,255,255,.96) !important;
  white-space: nowrap !important;
}
@media (max-width: 860px) {
  .ts-place-card--v50b29 .ts-v50b148-card-hotel-standard,
  .ts-v50b148-card-hotel-standard {
    left: 14px !important;
    right: auto !important;
    top: 60px !important;
    max-width: calc(100% - 94px) !important;
  }
}

/* TuSpot EU v5.0 beta.145 — add/edit map and dropdown stability */
.ts-v50b127-climate-section [data-vibe-group="restaurant"][hidden],
.ts-v50b127-climate-section [data-vibe-group-head="restaurant"][hidden]{display:none!important;visibility:hidden!important;pointer-events:none!important;}
.ts-v50b3-map .leaflet-tile{max-width:none!important;max-height:none!important;}
.ts-v50b3-map.leaflet-container{min-height:360px!important;}
@media (min-width:1181px){
  .ts-main-nav .ts-nav-item:not(.is-dropdown-open):not(:hover):not(:focus-within) > .ts-dropdown,
  .ts-header-actions .ts-account-menu:not(.is-dropdown-open):not(:hover):not(:focus-within) > .ts-dropdown{opacity:0!important;visibility:hidden!important;pointer-events:none!important;}
}

/* TuSpot EU v5.0 beta.147 — rich description paragraphs and amenities teaser */
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy p{
  margin:0 0 1.05em!important;
  line-height:1.72!important;
  font-weight:400!important;
}
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy p:last-child{margin-bottom:0!important;}
body.single-tuspot_place .ts-v50b160-info-amenities ul{margin:14px 0 16px!important;padding:0!important;display:grid!important;gap:9px!important;list-style:none!important;}
body.single-tuspot_place .ts-v50b160-info-amenities li{margin:0!important;color:#607585!important;font-weight:850!important;}
body.single-tuspot_place .ts-v50b160-view-more{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(35,187,231,.35)!important;border-radius:999px!important;background:#f4fcff!important;color:#0b6f89!important;text-decoration:none!important;font-weight:950!important;padding:10px 14px!important;}
body.single-tuspot_place .ts-v50b160-view-more:hover{background:#23bbe7!important;color:#fff!important;border-color:#23bbe7!important;}

/* TuSpot EU v5.0 beta.148 — Countries hub and SEO country profiles */
.ts-country-index,.ts-country-profile{padding:clamp(34px,4vw,72px) 0 clamp(70px,7vw,120px);display:grid;gap:clamp(24px,3vw,44px)}
.ts-country-index-hero,.ts-country-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr);gap:clamp(24px,4vw,54px);align-items:center;padding:clamp(26px,4vw,58px)!important;overflow:hidden;position:relative}
.ts-country-index-hero h1,.ts-country-hero h1{font-size:clamp(2.8rem,5vw,5.8rem);line-height:.92;letter-spacing:-.07em;margin:12px 0 18px;color:#082747;max-width:980px}
.ts-country-index-hero p,.ts-country-hero p,.ts-country-section-head p{font-size:clamp(1.02rem,1.35vw,1.28rem);line-height:1.58;color:#60788a;font-weight:650;max-width:850px}
.ts-country-index-hero aside{display:grid;place-items:center;text-align:center;min-height:260px;border-radius:34px;background:linear-gradient(135deg,#EAF8FE,#fff);border:1px solid #BEEBFA;box-shadow:0 24px 70px rgba(35,187,231,.12);padding:34px}
.ts-country-index-hero aside strong{font-family:Outfit,Figtree,sans-serif;font-size:clamp(4rem,8vw,8rem);letter-spacing:-.08em;color:#23BBE7;line-height:.9}.ts-country-index-hero aside span{display:block;color:#60788a;font-weight:850;max-width:320px}.ts-country-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.ts-country-featured-guide{display:grid;grid-template-columns:minmax(280px,.86fr) minmax(0,1fr);gap:clamp(20px,3vw,42px);align-items:center;padding:clamp(20px,3vw,34px)!important}.ts-country-featured-guide img{width:100%;height:clamp(260px,28vw,430px);object-fit:cover;border-radius:28px;box-shadow:0 24px 60px rgba(8,39,71,.12)}.ts-country-featured-guide h2,.ts-country-section-head h2,.ts-country-around h2,.ts-country-faq h2,.ts-country-longform h2,.ts-country-side-stack h2{font-size:clamp(2rem,3vw,3.4rem);line-height:.98;letter-spacing:-.06em;color:#082747;margin:10px 0 12px}.ts-country-featured-guide p{font-size:1.1rem;line-height:1.55;color:#60788a;font-weight:700}.ts-country-grid-section{display:grid;gap:22px}.ts-country-section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;flex-wrap:wrap}.ts-country-section-head>a,.ts-country-arrow-link{color:#23BBE7!important;text-decoration:none!important;font-weight:950}.ts-country-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ts-country-card{padding:22px!important;text-decoration:none!important;min-height:230px;display:grid;align-content:start;gap:8px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.ts-country-card:hover{transform:translateY(-3px);border-color:#23BBE7!important;box-shadow:0 24px 70px rgba(35,187,231,.13)}.ts-country-flag{font-size:2.4rem;line-height:1}.ts-country-card strong{font-size:1.28rem;color:#082747;font-weight:950}.ts-country-card small{color:#2D8A9E;font-weight:900}.ts-country-card p{color:#60788a;font-weight:650;line-height:1.45;margin:6px 0 0}.ts-country-breadcrumbs{display:flex;align-items:center;gap:10px;font-weight:900;color:#60788a}.ts-country-breadcrumbs a{color:#2D8A9E;text-decoration:none}.ts-country-breadcrumbs strong{color:#082747}.ts-country-hero{grid-template-columns:minmax(320px,.9fr) minmax(0,1fr) minmax(270px,.42fr);align-items:stretch}.ts-country-hero-media{position:relative;min-height:clamp(360px,40vw,620px);border-radius:32px;overflow:hidden;background:#EAF8FE}.ts-country-hero-media img{width:100%;height:100%;object-fit:cover;display:block}.ts-country-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,39,71,0) 45%,rgba(8,39,71,.72))}.ts-country-hero-media span{position:absolute;left:22px;bottom:20px;z-index:2;display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:10px 16px;color:#082747;font-weight:950;box-shadow:0 16px 42px rgba(8,39,71,.22)}.ts-country-hero-copy{align-self:center}.ts-country-info-panel{display:grid;gap:12px;align-content:start;padding:22px;border:1px solid #BEEBFA;border-radius:30px;background:linear-gradient(180deg,#fff,#F6FBFE);box-shadow:0 20px 60px rgba(35,187,231,.1)}.ts-country-info-flag{font-size:3.2rem;line-height:1;margin-bottom:4px}.ts-country-fact{border:1px solid #D9F3FC;background:#fff;border-radius:18px;padding:13px 14px}.ts-country-fact span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:#2D8A9E;font-weight:950}.ts-country-fact strong{display:block;color:#082747;font-size:1.02rem;line-height:1.25;margin-top:4px}.ts-country-practical-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr) minmax(260px,.62fr) minmax(260px,.7fr);gap:20px}.ts-country-practical-grid>article{padding:clamp(22px,3vw,34px)!important}.ts-country-travel-facts>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.ts-country-travel-facts p{margin:0;border:1px solid #D9F3FC;border-radius:16px;padding:12px;background:#fff}.ts-country-travel-facts p span{display:block;color:#2D8A9E;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:950}.ts-country-travel-facts p strong{display:block;color:#082747;margin-top:3px}.ts-country-fun-card{background:linear-gradient(135deg,#EAF8FE,#fff)!important}.ts-country-fun-card p,.ts-country-quick-links p{color:#60788a;font-weight:700;line-height:1.55}.ts-country-quick-links{display:grid;gap:8px}.ts-country-quick-links a{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #D9F3FC;border-radius:16px;padding:11px 13px;color:#082747;text-decoration:none;font-weight:900;background:#fff}.ts-country-quick-links a span{color:#23BBE7}.ts-country-top-destinations{display:grid;gap:10px}.ts-country-top-destinations a:not(.ts-country-arrow-link){display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;text-decoration:none;border:1px solid #D9F3FC;border-radius:18px;padding:8px;color:#082747;background:#fff}.ts-country-top-destinations img{width:72px;height:62px;border-radius:14px;object-fit:cover}.ts-country-top-destinations strong{display:block;font-weight:950}.ts-country-top-destinations small{display:block;color:#60788a;font-weight:750}.ts-country-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.34fr);gap:24px;align-items:start}.ts-country-longform{padding:clamp(24px,4vw,54px)!important}.ts-country-longform section+section{margin-top:clamp(28px,4vw,50px);padding-top:clamp(24px,3vw,42px);border-top:1px solid #E2F4FB}.ts-country-longform p{font-size:clamp(1.04rem,1.14vw,1.18rem);line-height:1.78;color:#445f73;font-weight:520;margin:0 0 18px}.ts-country-side-stack{display:grid;gap:18px;position:sticky;top:110px}.ts-country-side-stack article{padding:24px!important}.ts-country-side-stack ul{margin:14px 0 0;padding-left:20px;color:#60788a;font-weight:780;line-height:1.7}.ts-country-best-places{display:grid;gap:18px}.ts-country-best-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;overflow:visible}.ts-country-best-row article{padding:0!important;overflow:hidden}.ts-country-best-row img{width:100%;height:170px;object-fit:cover;display:block}.ts-country-best-row div{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:15px 16px;align-items:center}.ts-country-best-row strong{grid-column:1/-1;color:#082747;font-weight:950}.ts-country-best-row span{color:#60788a;font-weight:750}.ts-country-best-row b{background:#fff8e2;color:#082747;border-radius:999px;padding:6px 10px;font-weight:950}.ts-country-around{padding:clamp(24px,3vw,42px)!important}.ts-country-around>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:20px}.ts-country-around article{border:1px solid #D9F3FC;border-radius:22px;background:#fff;padding:20px;display:grid;grid-template-columns:auto 1fr;gap:8px 14px;align-items:start}.ts-country-around i{grid-row:1/3;width:44px;height:44px;border-radius:14px;background:#EAF8FE;display:grid;place-items:center;color:#23BBE7;font-style:normal;font-weight:950}.ts-country-around strong{color:#082747;font-weight:950}.ts-country-around p{grid-column:2;margin:0;color:#60788a;font-weight:650;line-height:1.45}.ts-country-type-stage{padding:clamp(24px,3vw,42px)!important}.ts-country-type-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:20px}.ts-country-type-chip{text-decoration:none!important;border:1px solid #BEEBFA;border-radius:20px;background:#fff;padding:16px;color:#082747;box-shadow:0 18px 44px rgba(35,187,231,.06);transition:transform .2s ease,border-color .2s ease}.ts-country-type-chip:hover{transform:translateY(-2px);border-color:#23BBE7}.ts-country-type-chip strong{display:block;font-size:1rem;font-weight:950}.ts-country-type-chip span{display:block;color:#60788a;font-size:.86rem;font-weight:750;margin-top:4px}.ts-country-places-stage{display:grid;gap:20px}.ts-country-map{position:relative;padding:0!important;overflow:hidden;border-radius:34px!important}.ts-country-map .ts-places-full-map{height:min(54vh,620px)!important;min-height:430px!important;width:100%!important;border-radius:34px!important;background:#EAF8FE}.ts-country-map-empty{position:absolute;left:24px;top:24px;right:auto;bottom:auto;max-width:380px}.ts-country-card-results{margin-top:4px}.ts-country-faq{padding:clamp(24px,3vw,42px)!important}.ts-country-faq>div{display:grid;gap:12px;margin-top:20px}.ts-country-faq details{border:1px solid #D9F3FC;border-radius:20px;padding:16px 18px;background:#fff}.ts-country-faq summary{cursor:pointer;color:#082747;font-weight:950;font-size:1.05rem}.ts-country-faq p{color:#60788a;font-weight:650;line-height:1.55;margin:12px 0 0}
@media(max-width:1280px){.ts-country-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ts-country-hero{grid-template-columns:1fr 1fr}.ts-country-info-panel{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.ts-country-info-flag{grid-column:1/-1}.ts-country-practical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-country-best-row,.ts-country-around>div{grid-template-columns:repeat(2,minmax(0,1fr))}.ts-country-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.ts-country-index,.ts-country-profile{padding:26px 0 70px}.ts-country-index-hero,.ts-country-featured-guide,.ts-country-hero,.ts-country-content-grid{grid-template-columns:1fr}.ts-country-info-panel{grid-template-columns:1fr}.ts-country-card-grid{grid-template-columns:1fr}.ts-country-practical-grid{grid-template-columns:1fr}.ts-country-travel-facts>div{grid-template-columns:1fr}.ts-country-side-stack{position:static}.ts-country-best-row,.ts-country-around>div,.ts-country-type-grid{grid-template-columns:1fr}.ts-country-hero-media{min-height:320px}.ts-country-map .ts-places-full-map{height:460px!important;min-height:460px!important}.ts-country-section-head{align-items:start}.ts-country-index-hero h1,.ts-country-hero h1{font-size:clamp(2.55rem,15vw,4rem)}}

/* TuSpot EU v5.0 beta.149 — country guide refinements */
.ts-country-hero.ts-white-card{display:grid!important;grid-template-columns:minmax(320px,.86fr) minmax(0,1fr)!important;gap:clamp(24px,3vw,46px)!important;align-items:center!important;padding:clamp(22px,3vw,42px)!important}
.ts-country-hero .ts-country-hero-media{min-height:clamp(360px,34vw,560px)!important}
.ts-country-hero .ts-country-hero-copy{align-self:center!important}
.ts-country-hero .ts-country-info-panel{grid-column:1/-1!important;display:grid!important;grid-template-columns:auto repeat(4,minmax(0,1fr))!important;align-items:stretch!important;gap:14px!important;padding:18px!important;border-radius:26px!important;background:linear-gradient(90deg,#fff,#F6FBFE)!important}
.ts-country-info-panel .ts-country-info-flag{grid-column:auto!important;margin:0!important;display:grid!important;place-items:center!important;min-width:84px!important;border:1px solid #D9F3FC!important;border-radius:20px!important;background:#fff!important}
.ts-country-practical-grid{grid-template-columns:minmax(0,1.2fr) minmax(240px,.46fr) minmax(260px,.52fr) minmax(260px,.62fr)!important;align-items:stretch!important}
.ts-country-travel-facts>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.ts-country-travel-facts p{display:grid!important;grid-template-columns:42px 1fr!important;gap:3px 12px!important;align-items:start!important;min-height:94px!important}
.ts-country-travel-facts p i{grid-row:1/3;width:42px;height:42px;border-radius:14px;background:#EAF8FE;color:#23BBE7;display:grid;place-items:center;font-style:normal}
.ts-country-svg-icon{width:22px;height:22px;display:block}
.ts-country-travel-facts p span{align-self:end}.ts-country-travel-facts p strong{align-self:start;line-height:1.35}
.ts-country-quick-links button{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #D9F3FC;border-radius:16px;padding:11px 13px;color:#082747;text-decoration:none;font-weight:900;background:#fff;cursor:pointer;font:inherit;text-align:left;width:100%}
.ts-country-quick-links button:hover{border-color:#23BBE7;background:#F6FBFE}.ts-country-quick-links button span{color:#23BBE7;font-weight:950}
.ts-country-modal[hidden]{display:none!important}.ts-country-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px}.ts-country-modal__backdrop{position:absolute;inset:0;background:rgba(8,39,71,.46);backdrop-filter:blur(6px)}.ts-country-modal__card{position:relative;width:min(620px,calc(100vw - 32px));border-radius:30px;border:1px solid #BEEBFA;background:#fff;padding:clamp(24px,4vw,40px);box-shadow:0 30px 100px rgba(8,39,71,.28)}.ts-country-modal__card h2{font-size:clamp(2rem,3vw,3.2rem);letter-spacing:-.06em;line-height:1;color:#082747;margin:10px 0 14px}.ts-country-modal__card p{color:#60788a;font-weight:650;line-height:1.65;font-size:1.08rem}.ts-country-modal__close{position:absolute;right:18px;top:16px;width:42px;height:42px;border-radius:999px;border:1px solid #BEEBFA;background:#F6FBFE;color:#082747;font-size:28px;line-height:1;cursor:pointer}.ts-country-modal-open{overflow:hidden}
.ts-country-transport-card>div{display:grid;gap:10px;margin-top:16px}.ts-country-transport-link{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;border:1px solid #D9F3FC;border-radius:18px;background:#fff;padding:10px;text-decoration:none!important;color:#082747!important;font-weight:900;min-height:76px}.ts-country-transport-link:hover{border-color:#23BBE7;box-shadow:0 16px 42px rgba(35,187,231,.10)}.ts-country-transport-logo{width:58px;height:52px;border-radius:15px;background:#EAF8FE;display:grid;place-items:center;color:#23BBE7;overflow:hidden}.ts-country-transport-logo img{width:100%;height:100%;object-fit:contain;padding:7px;background:#fff}.ts-country-side-stack ul{display:none!important}
.ts-country-around i{width:52px!important;height:52px!important;border-radius:18px!important;background:#EAF8FE!important;color:#23BBE7!important}.ts-country-around i .ts-country-svg-icon{width:26px;height:26px}.ts-country-around article{grid-template-columns:52px 1fr!important}
.ts-country-type-grid--main{grid-template-columns:repeat(4,minmax(0,1fr))!important}.ts-country-type-grid--main .ts-country-type-chip{cursor:pointer;text-align:left;font:inherit}.ts-country-type-grid--main .ts-country-type-chip.is-active{border-color:#23BBE7!important;box-shadow:0 20px 60px rgba(35,187,231,.16);background:#F6FBFE}.ts-country-subcategory-panels{margin-top:18px}.ts-country-subcategory-panel{display:none}.ts-country-subcategory-panel.is-active{display:grid;gap:16px}.ts-country-subcategory-panel>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ts-country-open-all{display:inline-flex;align-items:center;width:max-content;max-width:100%;border:1px solid #BEEBFA;border-radius:999px;padding:11px 16px;background:#082747;color:#fff!important;text-decoration:none!important;font-weight:950}.ts-country-subcategory-panel .ts-country-type-chip{padding:14px!important;border-radius:16px!important;box-shadow:none!important;min-height:auto!important}
.ts-country-map .ts-places-full-map{height:min(50vh,560px)!important;min-height:420px!important}.ts-country-map .leaflet-container{background:#EAF8FE}.ts-country-map .leaflet-interactive{filter:drop-shadow(0 8px 14px rgba(35,187,231,.18))}
.ts-v50b159-breakfast-front{overflow:hidden}.ts-v50b159-breakfast-front .ts-detail-head p{font-weight:500!important}.ts-v50b159-breakfast-note,.ts-v50b159-breakfast-line span{font-weight:500!important}.ts-v50b159-breakfast-line strong{font-weight:850!important}.ts-v50b159-breakfast-line em{font-weight:850!important}
@media(max-width:1280px){.ts-country-hero.ts-white-card{grid-template-columns:1fr!important}.ts-country-hero .ts-country-info-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ts-country-info-panel .ts-country-info-flag{grid-column:1/-1!important}.ts-country-practical-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ts-country-subcategory-panel>div,.ts-country-type-grid--main{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.ts-country-hero .ts-country-info-panel,.ts-country-practical-grid,.ts-country-travel-facts>div,.ts-country-subcategory-panel>div,.ts-country-type-grid--main{grid-template-columns:1fr!important}.ts-country-map .ts-places-full-map{height:460px!important;min-height:460px!important}.ts-country-travel-facts p{grid-template-columns:38px 1fr!important}.ts-country-hero .ts-country-hero-media{min-height:310px!important}.ts-country-modal{padding:16px}.ts-country-modal__card{border-radius:24px}}

/* TuSpot EU v5.0 beta.151 — Poland country guide layout matching selected concept */
.ts-country-hero.ts-white-card{
  display:grid!important;
  grid-template-columns:minmax(380px,.98fr) minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  gap:clamp(16px,2vw,24px) clamp(24px,3vw,40px)!important;
  align-items:stretch!important;
  padding:clamp(18px,2vw,28px)!important;
}
.ts-country-hero .ts-country-hero-media{grid-column:1!important;grid-row:1/3!important;min-height:clamp(330px,31vw,520px)!important;border-radius:28px!important}
.ts-country-hero .ts-country-hero-copy{grid-column:2!important;grid-row:1!important;align-self:end!important;display:grid!important;align-content:end!important}
.ts-country-hero .ts-country-hero-copy h1{font-size:clamp(2.25rem,4vw,5.1rem)!important;line-height:.94!important;margin:10px 0 14px!important;max-width:900px!important}
.ts-country-hero .ts-country-hero-copy p{font-size:clamp(1rem,1.1vw,1.18rem)!important;max-width:820px!important}
.ts-country-hero .ts-country-hero-actions{margin-top:18px!important}
.ts-country-hero .ts-country-info-panel{grid-column:2!important;grid-row:2!important;display:grid!important;grid-template-columns:1fr!important;gap:16px!important;align-self:start!important;padding:18px!important;border-radius:24px!important;background:linear-gradient(90deg,#fff,#F6FBFE)!important;box-shadow:0 20px 60px rgba(35,187,231,.10)!important}
.ts-country-info-head{display:flex!important;align-items:center!important;gap:16px!important;color:#082747!important;font-family:Outfit,Figtree,sans-serif!important;font-weight:950!important;font-size:clamp(1.35rem,1.6vw,1.8rem)!important;line-height:1!important}
.ts-country-info-panel .ts-country-info-flag{font-size:2rem!important;line-height:1!important;margin:0!important;min-width:58px!important;width:58px!important;height:58px!important;display:grid!important;place-items:center!important;border:1px solid #D9F3FC!important;border-radius:999px!important;background:#fff!important;box-shadow:0 12px 34px rgba(8,39,71,.08)!important}
.ts-country-info-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.ts-country-info-item{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:3px 10px!important;align-items:center!important;border:1px solid #D9F3FC!important;background:#fff!important;border-radius:18px!important;padding:12px!important;min-height:72px!important}
.ts-country-info-item i{grid-row:1/3!important;width:36px!important;height:36px!important;border-radius:13px!important;background:#EAF8FE!important;color:#23BBE7!important;display:grid!important;place-items:center!important;font-style:normal!important}
.ts-country-info-item span{display:block!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:.62rem!important;color:#2D8A9E!important;font-weight:950!important;line-height:1.1!important}
.ts-country-info-item strong{display:block!important;color:#082747!important;font-size:.92rem!important;line-height:1.22!important;font-weight:950!important}
.ts-country-above-fold-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:20px!important;align-items:stretch!important}
.ts-country-mini-card{padding:clamp(18px,2vw,28px)!important;min-width:0!important;overflow:hidden!important}
.ts-country-mini-card .ts-country-section-head{margin-bottom:14px!important}
.ts-country-mini-card .ts-country-section-head h2,.ts-country-mini-card.ts-country-around h2{font-size:clamp(1.45rem,1.9vw,2.3rem)!important;line-height:1!important;margin:7px 0 0!important;letter-spacing:-.05em!important}
.ts-country-mini-card .ts-country-section-head a{white-space:nowrap!important;font-size:.95rem!important}
.ts-country-above-fold-grid .ts-country-best-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.ts-country-above-fold-grid .ts-country-best-row article{border-radius:18px!important;box-shadow:0 12px 34px rgba(8,39,71,.08)!important}
.ts-country-above-fold-grid .ts-country-best-row img{height:clamp(96px,8vw,140px)!important}
.ts-country-above-fold-grid .ts-country-best-row div{padding:10px 12px!important;gap:2px 8px!important}
.ts-country-above-fold-grid .ts-country-best-row strong{font-size:.9rem!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.ts-country-above-fold-grid .ts-country-best-row span{font-size:.78rem!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.ts-country-above-fold-grid .ts-country-best-row b{font-size:.78rem!important;padding:5px 8px!important}
.ts-country-above-fold-grid .ts-country-around>div{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin-top:14px!important}
.ts-country-above-fold-grid .ts-country-around article{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:7px 10px!important;padding:16px!important;border-radius:18px!important;min-height:138px!important}
.ts-country-above-fold-grid .ts-country-around i{grid-row:1/3!important;width:48px!important;height:48px!important;border-radius:16px!important}
.ts-country-above-fold-grid .ts-country-around strong{font-size:.95rem!important;line-height:1.15!important}
.ts-country-above-fold-grid .ts-country-around p{grid-column:1/-1!important;font-size:.82rem!important;line-height:1.38!important;margin:2px 0 0!important}
.ts-country-practical-grid{grid-template-columns:minmax(0,1.1fr) minmax(230px,.55fr) minmax(260px,.62fr) minmax(260px,.7fr)!important;gap:20px!important}
.ts-country-highlight-strip{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important}
.ts-country-highlight-strip article{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:2px 12px!important;align-items:center!important;padding:14px 16px!important;border-radius:18px!important;min-height:74px!important}
.ts-country-highlight-strip i{grid-row:1/3!important;width:44px!important;height:44px!important;border-radius:14px!important;background:#EAF8FE!important;color:#23BBE7!important;display:grid!important;place-items:center!important;font-style:normal!important}
.ts-country-highlight-strip strong{display:block!important;color:#082747!important;font-weight:950!important;line-height:1.12!important;font-size:.96rem!important}
.ts-country-highlight-strip span{display:block!important;color:#60788a!important;font-weight:800!important;line-height:1.15!important;font-size:.82rem!important}
.ts-country-discovery-grid{display:grid!important;grid-template-columns:minmax(300px,.33fr) minmax(0,1fr)!important;gap:20px!important;align-items:start!important}
.ts-country-discovery-grid .ts-country-type-stage{position:sticky!important;top:108px!important;padding:clamp(18px,2vw,26px)!important;min-width:0!important}
.ts-country-discovery-grid .ts-country-type-stage .ts-country-section-head{display:grid!important;gap:8px!important;align-items:start!important}
.ts-country-discovery-grid .ts-country-type-stage .ts-country-section-head h2{font-size:clamp(1.45rem,1.9vw,2.25rem)!important;line-height:1!important;margin:6px 0 2px!important}
.ts-country-discovery-grid .ts-country-type-stage .ts-country-section-head p{font-size:.98rem!important;line-height:1.45!important}
.ts-country-discovery-grid .ts-country-type-grid--main{grid-template-columns:1fr!important;gap:10px!important;margin-top:16px!important}
.ts-country-discovery-grid .ts-country-subcategory-panel>div{grid-template-columns:1fr!important;gap:10px!important}
.ts-country-discovery-grid .ts-country-subcategory-panel .ts-country-type-chip{padding:12px 14px!important}
.ts-country-discovery-grid .ts-country-open-all{width:100%!important;justify-content:center!important}
.ts-country-discovery-grid .ts-country-places-stage{gap:14px!important;min-width:0!important}
.ts-country-discovery-grid .ts-country-places-stage>.ts-country-section-head{display:flex!important;align-items:end!important}
.ts-country-discovery-grid .ts-country-map .ts-places-full-map{height:clamp(360px,34vh,470px)!important;min-height:360px!important;border-radius:26px!important}
.ts-country-discovery-grid .ts-country-card-results{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:18px!important}
@media(max-width:1500px){
  .ts-country-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ts-country-above-fold-grid .ts-country-best-row,.ts-country-above-fold-grid .ts-country-around>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ts-country-highlight-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1180px){
  .ts-country-hero.ts-white-card,.ts-country-above-fold-grid,.ts-country-discovery-grid{grid-template-columns:1fr!important}
  .ts-country-hero .ts-country-hero-media,.ts-country-hero .ts-country-hero-copy,.ts-country-hero .ts-country-info-panel{grid-column:auto!important;grid-row:auto!important}
  .ts-country-hero .ts-country-hero-media{min-height:360px!important}
  .ts-country-discovery-grid .ts-country-type-stage{position:static!important}
  .ts-country-practical-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .ts-country-info-grid,.ts-country-practical-grid,.ts-country-highlight-strip,.ts-country-discovery-grid .ts-country-card-results{grid-template-columns:1fr!important}
  .ts-country-above-fold-grid .ts-country-best-row,.ts-country-above-fold-grid .ts-country-around>div{grid-template-columns:1fr!important}
  .ts-country-highlight-strip article{min-height:auto!important}
}

/* TuSpot EU v5.0 beta.152 — country info panel, fact icons and Poland layout refinements */
.ts-country-hero.ts-white-card{
  grid-template-columns:minmax(360px,.95fr) minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  align-items:stretch!important;
}
.ts-country-hero .ts-country-hero-media{grid-row:1!important;grid-column:1!important}
.ts-country-hero .ts-country-hero-copy{
  grid-column:2!important;
  grid-row:1!important;
  align-self:center!important;
  align-content:center!important;
  gap:14px!important;
}
.ts-country-hero .ts-country-hero-copy>.ts-country-info-panel{
  grid-column:auto!important;
  grid-row:auto!important;
  order:-3!important;
  margin:0 0 8px!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  padding:16px!important;
  border-radius:24px!important;
}
.ts-country-hero .ts-country-hero-copy>.ts-kicker{order:-2!important;width:max-content!important}
.ts-country-hero .ts-country-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.ts-country-hero .ts-country-info-item{min-height:82px!important}
.ts-country-largest-cities{
  display:grid!important;
  grid-template-columns:48px 1fr!important;
  gap:4px 14px!important;
  align-items:center!important;
  margin-top:clamp(18px,2vw,26px)!important;
  padding:16px!important;
  border:1px solid #D9F3FC!important;
  background:#fff!important;
  border-radius:22px!important;
  box-shadow:0 16px 44px rgba(35,187,231,.08)!important;
}
.ts-country-largest-cities i{
  grid-row:1/3!important;
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
  background:#EAF8FE!important;
  display:grid!important;
  place-items:center!important;
  color:#23BBE7!important;
  font-style:normal!important;
}
.ts-country-largest-cities span{
  display:block!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  font-size:.68rem!important;
  color:#2D8A9E!important;
  font-weight:950!important;
  line-height:1.1!important;
}
.ts-country-largest-cities strong{
  color:#082747!important;
  font-weight:950!important;
  line-height:1.25!important;
}
.ts-country-highlight-strip .ts-country-fact-icon-img{
  width:44px!important;
  height:44px!important;
  object-fit:contain!important;
  display:block!important;
  border-radius:12px!important;
}
.ts-country-highlight-strip i:has(.ts-country-fact-icon-img){
  background:#fff!important;
  border:1px solid #EAF8FE!important;
  box-shadow:0 8px 24px rgba(8,39,71,.06)!important;
}
.ts-country-highlight-strip article:has(img[alt*="Malbork"]),
.ts-country-highlight-strip article:has(img[alt*="Warm welcomes"]){
  min-width:0!important;
}
@media(max-width:1180px){
  .ts-country-hero.ts-white-card{grid-template-columns:1fr!important}
  .ts-country-hero .ts-country-hero-media,.ts-country-hero .ts-country-hero-copy{grid-column:auto!important;grid-row:auto!important}
  .ts-country-hero .ts-country-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .ts-country-hero .ts-country-info-grid{grid-template-columns:1fr!important}
  .ts-country-largest-cities{grid-template-columns:42px 1fr!important}
  .ts-country-largest-cities i{width:42px!important;height:42px!important}
}

/* TuSpot EU v5.0 beta.153 — B&B item editor, country facts and largest-cities polish */
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy{
  white-space:normal!important;
}
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy p{
  display:block!important;
  margin:0 0 1.18em!important;
  font-weight:400!important;
  line-height:1.78!important;
}
body.single-tuspot_place .ts-v50b29-description .ts-v50b29-rich-copy br{
  display:block!important;
  content:""!important;
  margin-top:.7em!important;
}
.ts-v50b159-breakfast-row{
  grid-template-columns:minmax(0,1fr) auto auto auto!important;
}
.ts-v50b159-breakfast-row button[data-edit-breakfast-item]{
  width:auto!important;
  min-width:58px!important;
  padding:0 14px!important;
  border:1px solid #BEEBFA!important;
  background:#fff!important;
  color:#0b7285!important;
}
.ts-country-largest-cities{
  align-items:start!important;
}
.ts-country-largest-cities ul{
  list-style:none!important;
  margin:2px 0 0!important;
  padding:0!important;
  display:grid!important;
  gap:6px!important;
  color:#082747!important;
  font-weight:950!important;
  line-height:1.16!important;
}
.ts-country-largest-cities li{margin:0!important;padding:0!important;}
.ts-country-highlight-strip{
  align-items:stretch!important;
}
.ts-country-highlight-strip article.ts-white-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  gap:8px!important;
  min-height:156px!important;
  padding:18px 14px!important;
  border-radius:22px!important;
}
.ts-country-highlight-strip article.ts-white-card i{
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid #E2F4FB!important;
  box-shadow:0 14px 34px rgba(8,39,71,.08)!important;
  display:grid!important;
  place-items:center!important;
  margin:0 auto 3px!important;
}
.ts-country-highlight-strip .ts-country-fact-icon-img{
  width:68px!important;
  height:68px!important;
  max-width:68px!important;
  max-height:68px!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:18px!important;
}
.ts-country-highlight-strip article.ts-white-card strong{
  display:block!important;
  width:100%!important;
  color:#082747!important;
  font-size:1.08rem!important;
  line-height:1.1!important;
  font-weight:950!important;
  margin:0!important;
}
.ts-country-highlight-strip article.ts-white-card span{
  display:block!important;
  width:100%!important;
  color:#60788a!important;
  font-size:.92rem!important;
  line-height:1.2!important;
  font-weight:850!important;
  margin:0!important;
}
@media(max-width:1500px){
  .ts-country-highlight-strip article.ts-white-card{min-height:148px!important;}
}
@media(max-width:760px){
  .ts-v50b159-breakfast-row{grid-template-columns:1fr auto auto!important;}
  .ts-v50b159-breakfast-row em{grid-column:1/-1!important;}
  .ts-country-highlight-strip article.ts-white-card{min-height:auto!important;}
}

/* v5.0 beta.155 — country page visual refinements */
.ts-country-highlight-strip article.ts-white-card{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ts-country-highlight-strip article.ts-white-card:hover{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.ts-country-practical-grid{
  align-items:start!important;
}
.ts-country-practical-grid>.ts-country-quick-links,
.ts-country-practical-grid>.ts-country-top-destinations{
  align-self:start!important;
  height:auto!important;
  min-height:0!important;
  padding:clamp(20px,2.2vw,28px)!important;
  align-content:start!important;
}
.ts-country-practical-grid>.ts-country-quick-links .ts-kicker,
.ts-country-practical-grid>.ts-country-top-destinations .ts-kicker{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  justify-self:start!important;
  margin-bottom:4px!important;
}
.ts-country-practical-grid>.ts-country-quick-links h2,
.ts-country-practical-grid>.ts-country-top-destinations h2{
  margin-top:8px!important;
  margin-bottom:16px!important;
}
.ts-country-top-destinations a:not(.ts-country-arrow-link),
.ts-country-quick-links button,
.ts-country-quick-links a{
  min-height:0!important;
}

/* TuSpot EU v5.0 beta.157 — Poland country image and transport logo hardening */
.ts-country-best-row img,.ts-country-top-destinations img{background:#EAF8FE;object-fit:cover}
.ts-country-transport-logo img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.ts-country-transport-link[href]{cursor:pointer}


/* TuSpot EU v5.0 beta.159 — backlink badge preview visible for all packages */
.ts-v50b7-badge-preview{display:grid;gap:12px;margin:14px 0;padding:16px;border:1px solid rgba(190,235,250,.9);border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(12,47,60,.05)}
.ts-v50b7-badge-preview>span{font-size:12px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;color:#2a8da1}
.ts-v50b7-badge-preview>div{display:flex;align-items:center;justify-content:flex-start;overflow:auto;padding:4px}
.ts-v50b141-backlink-builder .ts-field{display:block!important}
.ts-v50b141-backlink-builder .ts-v50b7-code-box{display:grid!important}
.ts-v50b141-hidden-for-paid{opacity:1!important}
.ts-v50b141-hidden-for-paid .ts-field,.ts-v50b141-hidden-for-paid .ts-v50b7-code-box{display:revert!important}
