/* Ticketality Connect v0.4.8 — school-color ratings + text-link CTA hover reset. */
.tktc-empty,.tktc-error{padding:16px 18px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#334155}.tktc-error{border-color:#ef4444;color:#991b1b;background:#fff7f7}

/* --------------------------------------------------------------------------
   HBCU GameTrip / school-side destination guide
   -------------------------------------------------------------------------- */
.tktc-destination-guide{--tktc-primary:var(--mt-color__primary,var(--tktc-school-primary,#0b4c84));--tktc-secondary:var(--tktc-primary);--tktc-heading:#171b24;--tktc-text:#5f6772;--tktc-muted:#707782;--tktc-border:#e5e9ee;--tktc-ui-label:11px;--tktc-ui-meta:12px;--tktc-ui-body:14px;--tktc-ui-card-title:15px;--tktc-ui-section-title:20px;--tktc-ui-page-title:24px;--tktc-ui-hero-title:40px;--tktc-ui-hero-copy:15px;width:100%;max-width:1180px;margin:0 auto;font-family:inherit;color:var(--tktc-text);font-size:var(--tktc-ui-body);line-height:1.5}
.tktc-destination-hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:330px;margin:0 0 36px;border-radius:12px;overflow:hidden;background-size:cover;background-position:center;background-color:var(--tktc-primary)}
.tktc-destination-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,19,35,.18),rgba(7,19,35,.68))}
.tktc-destination-hero-no-image{background:linear-gradient(135deg,var(--tktc-primary),color-mix(in srgb,var(--tktc-primary) 80%,#000) 65%,color-mix(in srgb,var(--tktc-primary) 60%,#000))}
.tktc-destination-hero-content{position:relative;z-index:2;width:100%;max-width:800px;padding:46px 30px;text-align:center;color:#fff}
.tktc-destination-guide-eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.9);margin-bottom:8px}
.tktc-destination-hero h2{font-size:var(--tktc-ui-hero-title)!important;line-height:1.12!important;margin:0 0 10px!important;padding:0!important;color:#fff!important;font-weight:600!important;text-shadow:0 2px 10px rgba(0,0,0,.24)}
.tktc-destination-hero p{max-width:680px;margin:0 auto;color:rgba(255,255,255,.94);font-size:var(--tktc-ui-hero-copy);line-height:1.55}
.tktc-destination-source{margin-top:12px;font-size:12px;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.82)}
.tktc-destination-section{margin:0 0 38px}
.tktc-destination-section-heading{display:block;margin:0 0 11px}
.tktc-destination-section-heading h3{font-size:var(--tktc-ui-section-title)!important;line-height:1.25!important;margin:0!important;padding:0!important;color:var(--tktc-heading);font-weight:600!important}

/* School-side HBCU GameTrip cards. */
.tktc-native-place-grid{display:grid;grid-template-columns:repeat(var(--tktc-cols,3),minmax(0,1fr));gap:22px;align-items:stretch}
.tktc-native-place-grid.tktc-count-1{grid-template-columns:minmax(0,390px)}
.tktc-native-place-grid.tktc-count-2{grid-template-columns:repeat(2,minmax(0,390px))}
.tktc-native-place-card{display:flex;border:1px solid #dbe2ea;border-radius:var(--mt-border-radius,14px);overflow:hidden;background:#fff;box-shadow:0 6px 16px rgba(15,23,42,.05);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;min-width:0;height:100%}
.tktc-native-place-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,23,42,.09);border-color:#c5d3e0}
.tktc-native-place-link{display:flex;flex:1;flex-direction:column;color:inherit!important;text-decoration:none!important;height:100%}
.tktc-native-place-media{position:relative;aspect-ratio:16/9;background:#f8fafc;overflow:hidden}
.tktc-native-place-media img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;display:block}
.tktc-native-place-noimage{display:block;width:100%;height:100%;background:linear-gradient(135deg,#f8fafc,#edf3f8)}
.tktc-native-place-badge{position:absolute;top:12px;left:12px;max-width:calc(100% - 88px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgba(255,255,255,.97);color:var(--tktc-primary);border:1px solid rgba(226,232,240,.9);font-size:var(--tktc-ui-label);font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:.045em;padding:6px 9px;border-radius:999px;box-shadow:0 2px 7px rgba(15,23,42,.07)}
.tktc-native-place-rating{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;gap:3px;padding:5px 7px;border-radius:999px;background:var(--tktc-primary);color:#fff;font-size:12px;font-weight:700;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.24)}
.tktc-native-place-rating span{color:var(--tktc-secondary);font-size:12px}
.tktc-native-place-content{display:flex;flex:1;flex-direction:column;padding:16px 17px 18px}
.tktc-native-place-title{font-size:var(--tktc-ui-card-title)!important;line-height:1.3!important;font-weight:600!important;color:var(--tktc-heading)!important;margin:0 0 6px!important;padding:0!important}
.tktc-native-place-location{display:flex;align-items:center;gap:7px;font-size:13px;line-height:1.4;color:var(--tktc-text);min-height:20px;margin:0;min-width:0}.tktc-native-place-location span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tktc-native-place-location-icon{width:14px;height:14px;flex:0 0 14px;margin-top:0;fill:var(--tktc-primary)}
.tktc-native-place-meta{font-size:var(--tktc-ui-meta);line-height:1.35;color:var(--tktc-muted);margin-top:3px}
.tktc-native-place-excerpt{display:none!important}
button.tktc-native-place-cta,.tktc-native-place-cta{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;align-self:flex-start!important;width:auto!important;min-width:0!important;min-height:0!important;height:auto!important;margin:auto 0 0!important;padding:14px 0 0!important;font-size:14px!important;line-height:1.25!important;font-weight:700!important;color:var(--tktc-primary)!important;border:0!important;border-radius:0!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;cursor:pointer;font-family:inherit!important;text-align:left!important;text-decoration:none!important;appearance:none!important;-webkit-appearance:none!important}
button.tktc-native-place-cta:hover,button.tktc-native-place-cta:focus,button.tktc-native-place-cta:active,.tktc-native-place-cta:hover,.tktc-native-place-cta:focus,.tktc-native-place-cta:active{background:transparent!important;background-color:transparent!important;color:var(--tktc-primary)!important;border:0!important;box-shadow:none!important;transform:none!important;text-decoration:underline!important;text-underline-offset:2px}

.tktc-event-venue-context{max-width:1180px;margin:38px auto 0;padding-top:28px;border-top:1px solid var(--tktc-native-border,#eee)}.tktc-event-venue-context-heading{margin-bottom:15px}.tktc-event-venue-context-heading span{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tktc-native-accent,#23d3d3)}.tktc-event-venue-context-heading h2{font-size:28px!important;margin:4px 0 0!important;padding:0!important;color:var(--tktc-native-heading,#2d2d2d)!important;font-weight:500!important}

@media(max-width:980px){.tktc-native-place-grid,.tktc-native-place-grid.tktc-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.tktc-destination-hero{min-height:290px}.tktc-destination-hero h2{font-size:36px!important}}
@media(max-width:640px){.tktc-native-place-grid, .tktc-native-place-grid.tktc-count-1, .tktc-native-place-grid.tktc-count-2{grid-template-columns:1fr;max-width:none}.tktc-destination-hero{min-height:240px;border-radius:9px}.tktc-destination-hero-content{padding:34px 20px}.tktc-destination-hero h2{font-size:32px!important}.tktc-destination-hero p{font-size:14px}}
.tktc-native-place-cultural{margin:0 0 5px;color:var(--tktc-primary);font-size:var(--tktc-ui-label);font-weight:600;letter-spacing:.05em;text-transform:uppercase}

.place-item.layout-02 .place-address p{
  margin-top:0;
  margin-bottom:3px;
  padding:0;
  line-height:1.45;
}

/* 1.1.6 — Revisions 22: Schools mirror native City card proportions everywhere. */
.elementor-place-schools .city-grid .city-item .entry-thumb > a{
  display:block!important;
  width:100%!important;
  aspect-ratio:var(--tktc-school-thumb-ratio,540 / 740)!important;
  overflow:hidden!important;
}
.elementor-place-schools .city-grid .city-item .entry-thumb img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}

/* 1.3.5 — Composite Golo-style navigation for custom Elementor headers.
   Desktop: Destinations + selected WP menu + user/account.
   Mobile: the same content inside Golo's native off-canvas menu structure. */
.elementor-widget-tktc-header-navigation .tktc-header-nav-desktop{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:var(--tktc-header-gap,28px);
  width:100%;
  white-space:nowrap;
}
.elementor-widget-tktc-header-navigation .tktc-header-nav-item,
.elementor-widget-tktc-header-navigation .tktc-header-regular-menu,
.elementor-widget-tktc-header-navigation .tktc-header-account{
  flex:0 0 auto;
}
.elementor-widget-tktc-header-navigation .tktc-header-nav-desktop .dropdown-select{
  display:block;
}
.elementor-widget-tktc-header-navigation .tktc-header-nav-desktop .entry-show{
  display:flex;
  align-items:center;
  cursor:pointer;
  line-height:1.4;
}
.elementor-widget-tktc-header-navigation .tktc-header-nav-desktop .entry-show i{
  margin-left:6px;
}
.elementor-widget-tktc-header-navigation .tktc-header-regular-menu .menu,
.elementor-widget-tktc-header-navigation .tktc-header-regular-menu .tktc-header-menu-list{
  display:flex;
  align-items:center;
  gap:var(--tktc-header-gap,28px);
  margin:0!important;
  padding:0!important;
  list-style:none;
}
.elementor-widget-tktc-header-navigation .tktc-header-regular-menu .menu>li{
  margin:0!important;
  padding:0!important;
  list-style:none;
  line-height:1.4;
}
.elementor-widget-tktc-header-navigation .tktc-header-regular-menu .menu>li>a{
  display:flex;
  align-items:center;
  padding:0!important;
}
.elementor-widget-tktc-header-navigation .tktc-header-account .account{
  margin:0;
}
.elementor-widget-tktc-header-navigation .tktc-header-account .account.logged-out{
  display:flex;
  align-items:center;
  gap:12px;
}
.elementor-widget-tktc-header-navigation .tktc-header-account .user-show .avatar{
  display:flex;
  align-items:center;
  gap:8px;
}
.elementor-widget-tktc-header-navigation .tktc-header-account .user-show img,
.elementor-widget-tktc-header-navigation .tktc-account-fallback img{
  width:34px;
  height:34px;
  border-radius:50%;
  object-fit:cover;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu{
  display:none;
  margin:0;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .mb-destinations{
  padding:25px;
  border-bottom:1px solid #eee;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select{
  display:block;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select .entry-show{
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select .entry-select{
  display:none;
  position:relative;
  opacity:1;
  visibility:visible;
  min-width:0;
  max-width:none;
  margin:0;
  padding:0 0 0 10px;
  box-shadow:none;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select.active .entry-select{
  display:block;
  margin-top:10px;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select .entry-select li{
  list-style:none;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .dropdown-select .entry-select a{
  display:block;
  padding:10px 0;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .top-mb-menu .account.logged-out{
  display:flex;
  gap:20px;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .top-mb-menu .avatar{
  display:flex;
  align-items:center;
  gap:10px;
}
.elementor-widget-tktc-header-navigation .tktc-header-mobile-menu .top-mb-menu img{
  width:34px;
  height:34px;
  border-radius:50%;
}
@media only screen and (max-width:1199px){
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1200 .tktc-header-nav-desktop{display:none!important;}
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1200 .tktc-header-mobile-menu{display:inline-block!important;}
}
@media only screen and (min-width:1200px){
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1200 .tktc-header-mobile-menu{display:none!important;}
}
@media only screen and (max-width:1023px){
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1024 .tktc-header-nav-desktop{display:none!important;}
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1024 .tktc-header-mobile-menu{display:inline-block!important;}
}
@media only screen and (min-width:1024px){
  .elementor-widget-tktc-header-navigation .tktc-header-breakpoint-1024 .tktc-header-mobile-menu{display:none!important;}
}

/* --------------------------------------------------------------------------
   v1.4.1 — GameTrip planning surfaces on school destination, event and
   post-purchase pages.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner,.tktc-event-trip-planner{--tktc-primary:var(--mt-color__primary,var(--tktc-school-primary,#0b4c84));--tktc-secondary:var(--tktc-primary);--tktc-heading:#171b24;--tktc-text:#5f6772;--tktc-muted:#707782;--tktc-border:#e5e9ee;--tktc-ui-label:11px;--tktc-ui-meta:12px;--tktc-ui-body:14px;--tktc-ui-card-title:15px;--tktc-ui-section-title:20px;--tktc-ui-page-title:24px;box-sizing:border-box;color:var(--tktc-text);font-size:var(--tktc-ui-body);line-height:1.5}
.tktc-school-trip-planner{margin:0 0 42px;padding:26px;border:1px solid #e5e9ee;border-radius:16px;background:#fff}
.tktc-school-trip-planner-heading{margin:0 0 18px}.tktc-event-trip-heading{margin:0 0 20px}
.tktc-school-trip-planner-heading>span,.tktc-event-trip-heading>span{display:block;margin:0 0 5px;color:var(--tktc-primary);font-size:var(--tktc-ui-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.tktc-school-trip-planner-heading h3,.tktc-event-trip-heading h2{margin:0!important;padding:0!important;color:var(--tktc-heading)!important;line-height:1.2!important;font-weight:600!important}
.tktc-school-trip-planner-heading h3{font-size:var(--tktc-ui-page-title)!important}.tktc-event-trip-heading h2{font-size:26px!important}
.tktc-event-trip-heading p{max-width:760px;margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--tktc-text)}
.tktc-school-trip-travel,.tktc-event-trip-travel{margin:0 0 18px;padding:16px;border-radius:12px;background:#f7f8fa;border:1px solid #edf0f3}
.tktc-event-trip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
.tktc-event-trip-card{min-width:0;padding:18px;border:1px solid #e6e9ed;border-radius:12px;background:#fff}

.tktc-event-trip-card h3{margin:0 0 6px!important;padding:0!important;color:var(--tktc-heading)!important;font-size:16px!important;line-height:1.3!important;font-weight:600!important}

.tktc-event-trip-actions{display:flex;flex-wrap:wrap;gap:7px}
.tktc-event-trip-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border:1px solid #e4e7eb;border-radius:7px;background:#f7f8fa;color:var(--tktc-primary)!important;text-decoration:none!important;font-size:13px;font-weight:600;line-height:1}
.tktc-school-plan-places{display:flex;flex-direction:column;gap:0;margin-top:0}
.tktc-school-plan-place{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;padding:9px 0;color:inherit!important;text-decoration:none!important}
.tktc-school-plan-place+.tktc-school-plan-place{border-top:1px solid #edf0f2}
.tktc-school-plan-place img,.tktc-school-plan-place-image{display:block;width:48px;height:44px;border-radius:7px;object-fit:cover;background:#eef1f4}
.tktc-school-plan-place-copy{display:block;min-width:0}.tktc-school-plan-place-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tktc-heading);font-size:14px;line-height:1.3;font-weight:600}.tktc-school-plan-place-copy small{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tktc-muted);font-size:12px;line-height:1.3}
.tktc-event-trip-destination{display:inline-block;margin-top:17px;color:var(--tktc-primary)!important;text-decoration:none!important;font-size:13px;font-weight:700}
.tktc-event-trip-planner{width:100%;max-width:1180px;margin:42px auto 0;padding:28px;border-top:1px solid #e6e9ed;border-bottom:1px solid #e6e9ed;background:#fff}
.tktc-event-trip-planner--post-purchase{margin:32px 0 0;padding:26px;border:1px solid #e3e7eb;border-radius:14px}
.tktc-event-trip-card-label{display:block;margin:0 0 7px;color:var(--tktc-primary);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tktc-event-trip-card .tktc-school-plan-places{margin-top:2px}
@media(hover:hover) and (pointer:fine){.tktc-school-plan-actions a:hover,.tktc-event-trip-actions a:hover,.tktc-event-trip-destination:hover,.tktc-school-plan-place:hover{opacity:.78;text-decoration:none!important}}
@media(max-width:900px){.tktc-event-trip-grid{grid-template-columns:1fr 1fr}.tktc-event-trip-planner{padding-left:20px;padding-right:20px}}
@media(max-width:640px){.tktc-school-trip-planner{padding:18px;border-radius:12px}.tktc-event-trip-grid{grid-template-columns:1fr}.tktc-school-trip-planner-heading h3{font-size:22px!important}.tktc-event-trip-heading h2{font-size:24px!important}.tktc-event-trip-planner,.tktc-event-trip-planner--post-purchase{padding:20px 16px}.tktc-school-trip-travel,.tktc-event-trip-travel{padding:12px}}

/* --------------------------------------------------------------------------
   v1.4.2 — school-theme parity, scalable Place grids and connected GameTrip
   post-purchase planning.
   -------------------------------------------------------------------------- */

/* School wrappers own the travel accent. The underlying search remains the
   exact same hero component used on the main HBCU GameTrip page. */
.tktc-school-trip-planner .tktc-travel-search,
.tktc-event-trip-planner .tktc-travel-search{
  --tktc-travel-accent:var(--tktc-primary);
}
.tktc-school-trip-travel,
.tktc-event-trip-travel{
  padding:0;
  background:transparent;
  border:0;
}
.tktc-school-trip-planner .tktc-travel-mode-btn,
.tktc-event-trip-planner .tktc-travel-mode-btn{
  font-size:14px;
}
.tktc-school-trip-planner .tktc-travel-field label,
.tktc-event-trip-planner .tktc-travel-field label{
  font-size:11px;
}
.tktc-school-trip-planner .tktc-travel-field input,
.tktc-school-trip-planner .tktc-travel-field select,
.tktc-event-trip-planner .tktc-travel-field input,
.tktc-event-trip-planner .tktc-travel-field select{
  font-size:14px;
}
.tktc-school-trip-planner .tktc-travel-field input[type=date],
.tktc-event-trip-planner .tktc-travel-field input[type=date]{
  font-size:13px;
}
.tktc-school-trip-planner .tktc-travel-submit,
.tktc-event-trip-planner .tktc-travel-submit{
  background:var(--tktc-primary);
}
@media(hover:hover) and (pointer:fine){
  .tktc-school-trip-planner .tktc-travel-mode-btn:hover,
  .tktc-event-trip-planner .tktc-travel-mode-btn:hover{
    color:var(--tktc-primary);
    background:color-mix(in srgb,var(--tktc-primary) 8%,#fff);
  }
  .tktc-school-trip-planner .tktc-travel-submit:hover,
  .tktc-event-trip-planner .tktc-travel-submit:hover{
    background:color-mix(in srgb,var(--tktc-primary) 88%,#000);
    opacity:1;
  }
}

/* Shared compact typography for destination inventory. */
.tktc-school-plan-place-copy strong{font-size:14px}
.tktc-school-plan-place-copy small{font-size:12px}
.tktc-native-place-title{font-size:15px!important}
.tktc-native-place-location{font-size:13px}
.tktc-native-place-meta{font-size:12px}
button.tktc-native-place-cta,.tktc-native-place-cta{font-size:14px!important}

/* School destination sections use compact side-image cards. Six results become
   a clean 3x2 grid instead of six oversized vertical cards. Single and two-item
   rows remain compact and left aligned rather than stretching across the page. */
.tktc-native-place-grid--side{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:start;
}
.tktc-native-place-grid--side.tktc-count-1{
  grid-template-columns:minmax(0,410px);
  max-width:410px;
}
.tktc-native-place-grid--side.tktc-count-2{
  grid-template-columns:repeat(2,minmax(0,410px));
  max-width:836px;
}
.tktc-native-place-grid--side .tktc-native-place-card{
  height:158px;
  min-height:158px;
  max-height:158px;
  box-shadow:0 4px 14px rgba(15,23,42,.045);
}
.tktc-native-place-grid--side .tktc-native-place-link{
  flex-direction:row;
  width:100%;
  height:100%;
  min-height:0;
}
.tktc-native-place-grid--side .tktc-native-place-media{
  flex:0 0 40%;
  width:40%;
  min-width:118px;
  height:100%;
  aspect-ratio:auto;
}
.tktc-native-place-grid--side .tktc-native-place-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.tktc-native-place-grid--side .tktc-native-place-content{
  min-width:0;
  overflow:hidden;
  padding:13px 14px 14px;
}
.tktc-native-place-grid--side .tktc-native-place-cultural{
  margin-bottom:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.tktc-native-place-grid--side .tktc-native-place-title{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  font-size:16px!important;
  line-height:1.25!important;
  margin-bottom:5px!important;
}
.tktc-native-place-grid--side .tktc-native-place-location{
  align-items:flex-start;
  min-height:0;
  font-size:12.75px;
  line-height:1.32;
}
.tktc-native-place-grid--side .tktc-native-place-location span{
  display:-webkit-box;
  overflow:hidden;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
}
.tktc-native-place-grid--side .tktc-native-place-meta{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.tktc-native-place-grid--side .tktc-native-place-cta{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12.75px!important;
  padding-top:8px!important;
}
.tktc-native-place-grid--side .tktc-native-place-badge{
  top:9px;left:9px;right:auto;
  max-width:calc(100% - 18px);
  font-size:11px;
}
@media(max-width:980px){
  .tktc-native-place-grid--side{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tktc-native-place-grid--side.tktc-count-1{grid-template-columns:minmax(0,430px);max-width:430px;}
  .tktc-native-place-grid--side.tktc-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;}
  .tktc-native-place-grid--side .tktc-native-place-card{height:164px;min-height:164px;max-height:164px;}
}
@media(max-width:640px){
  .tktc-native-place-grid--side,
  .tktc-native-place-grid--side.tktc-count-1,
  .tktc-native-place-grid--side.tktc-count-2{grid-template-columns:1fr;max-width:none;}
  .tktc-native-place-grid--side .tktc-native-place-card{height:154px;min-height:154px;max-height:154px;}
  .tktc-native-place-grid--side .tktc-native-place-media{flex-basis:38%;width:38%;min-width:112px;}
  .tktc-native-place-grid--side .tktc-native-place-content{padding:12px 12px 13px;}
  .tktc-native-place-grid--side .tktc-native-place-title{font-size:15.5px!important;}
  .tktc-native-place-grid--side .tktc-native-place-location{font-size:12.5px;}
}

/* One connected post-purchase GameTrip card. Sections use dividers rather than
   nested card boxes, so the experience reads as one continuous planner. */
.tktc-event-trip-planner--post-purchase{
  width:100%;
  max-width:1180px;
  margin:28px auto 0;
  padding:0;
  border:1px solid #e1e6eb;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.tktc-post-trip-summary{
  padding:22px 24px;
  background:color-mix(in srgb,var(--tktc-primary) 5%,#fff);
}
.tktc-post-trip-summary span{
  display:block;
  margin-bottom:4px;
  color:var(--tktc-primary);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tktc-post-trip-summary strong{
  display:block;
  color:var(--tktc-heading);
  font-size:24px;
  line-height:1.25;
}
.tktc-post-trip-summary p{
  margin:6px 0 0;
  color:var(--tktc-text);
  font-size:14px;
  line-height:1.5;
}
.tktc-post-trip-section{
  padding:22px 24px;
  border-top:1px solid #e9edf1;
}
.tktc-post-trip-section-heading{
  margin:0 0 13px;
}
.tktc-post-trip-section-heading span{
  display:block;
  margin-bottom:3px;
  color:var(--tktc-primary);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tktc-post-trip-section-heading h3{
  margin:0!important;
  padding:0!important;
  color:var(--tktc-heading)!important;
  font-size:18px!important;
  line-height:1.3!important;
  font-weight:700!important;
}
.tktc-post-trip-section--travel .tktc-travel-form{
  max-width:none;
}
.tktc-post-trip-section--getting{
  display:grid;
  grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);
  gap:22px;
  align-items:center;
}
.tktc-post-trip-section--getting .tktc-post-trip-section-heading{margin:0}
.tktc-post-trip-mobility{justify-content:flex-start}
.tktc-post-trip-mobility a{
  min-height:38px;
  padding:9px 13px;
  background:color-mix(in srgb,var(--tktc-primary) 6%,#fff);
  border-color:color-mix(in srgb,var(--tktc-primary) 16%,#fff);
  font-size:13px;
}
.tktc-gametrip-place-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 14px;
}
.tktc-gametrip-place-tile{
  display:grid;
  grid-template-columns:62px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-width:0;
  padding:9px;
  border-radius:9px;
  background:#f7f8fa;
  color:inherit!important;
  text-decoration:none!important;
}
.tktc-gametrip-place-tile img,
.tktc-gametrip-place-image{
  display:block;
  width:62px;
  height:56px;
  border-radius:7px;
  object-fit:cover;
  background:#e9edf1;
}
.tktc-gametrip-place-copy{
  display:block;
  min-width:0;
}
.tktc-gametrip-place-copy strong{
  display:-webkit-box;
  overflow:hidden;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  color:var(--tktc-heading);
  font-size:13.5px;
  line-height:1.28;
}
.tktc-gametrip-place-copy small{
  display:block;
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--tktc-text);
  font-size:11.5px;
  line-height:1.3;
}
.tktc-post-trip-footer{
  padding:16px 24px 20px;
  border-top:1px solid #e9edf1;
}
.tktc-post-trip-footer .tktc-event-trip-destination{margin:0}
@media(hover:hover) and (pointer:fine){
  .tktc-gametrip-place-tile:hover{
    background:color-mix(in srgb,var(--tktc-primary) 7%,#fff);
  }
}

@media(max-width:1050px){
  .tktc-native-place-grid--side{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tktc-gametrip-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .tktc-native-place-grid--side{grid-template-columns:1fr}
  .tktc-post-trip-section--getting{grid-template-columns:1fr}
  .tktc-gametrip-place-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .tktc-native-place-grid--side .tktc-native-place-media{
    flex-basis:112px;
    min-width:112px;
  }
  .tktc-native-place-grid--side .tktc-native-place-content{padding:12px}
  .tktc-native-place-grid--side .tktc-native-place-title{font-size:15.5px!important}
  .tktc-post-trip-summary,
  .tktc-post-trip-section,
  .tktc-post-trip-footer{
    padding-left:16px;
    padding-right:16px;
  }
  .tktc-post-trip-summary strong{font-size:21px}
}

/* --------------------------------------------------------------------------
   v1.4.4 — Ticketality Core + Connect unified post-purchase destination card.
   Ticketality keeps the destination hero/weather shell; Connect fills the body
   with travel, mobility and discovery so customers see one connected GameTrip.
   -------------------------------------------------------------------------- */
.ty-integrated-gametrip{
  margin:0;
}
.tktc-core-trip-plan{
  --tktc-heading:var(--mt-color__heading,#171b24);
  --tktc-text:var(--mt-color__text,#5f6772);
  color:var(--tktc-text);
}
.tktc-core-trip-intro strong{
  display:block;
  color:var(--tktc-heading);
  font-size:23px;
  line-height:1.25;
  font-weight:700;
}
.tktc-core-trip-intro p{
  margin:5px 0 0;
  max-width:760px;
  color:var(--tktc-text);
  font-size:14px;
  line-height:1.5;
}
.tktc-core-trip-section{
  padding:30px 0;
  border-top:1px solid #eef1f4;
}
.tktc-core-trip-travel{
  padding-top:0;
  border-top:0;
}
.tktc-core-trip-travel .tktc-travel-search{
  --tktc-travel-accent:var(--tktc-primary);
}
.tktc-core-trip-section-heading{
  margin:0 0 12px;
}
.tktc-core-trip-section-heading h3,
.tktc-core-trip-utility-block h3{
  margin:0!important;
  padding:0!important;
  color:var(--tktc-heading)!important;
  font-size:18px!important;
  line-height:1.3!important;
  font-weight:700!important;
}
.tktc-core-trip-utility{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  padding-top:18px;
  padding-bottom:18px;
}
.tktc-core-trip-utility-block{
  min-width:0;
  padding:0 18px;
}
.tktc-core-trip-utility-block:first-child{padding-left:0}
.tktc-core-trip-utility-block:last-child{padding-right:0}
.tktc-core-trip-utility-block + .tktc-core-trip-utility-block{
  border-left:1px solid #eef1f4;
}
.tktc-core-trip-utility-block .tktc-school-plan-places{
  margin-top:4px;
}
.tktc-core-trip-mobility{
  margin-top:8px;
}
.tktc-core-trip-mobility a{
  min-height:36px;
  padding:8px 11px;
  background:color-mix(in srgb,var(--tktc-primary) 6%,#fff);
  border-color:color-mix(in srgb,var(--tktc-primary) 17%,#fff);
  color:var(--tktc-primary)!important;
  font-size:12.5px;
}
.tktc-core-trip-footer{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  align-items:center;
  padding-top:18px;
  border-top:1px solid #eef1f4;
}
.tktc-core-trip-footer a{
  color:var(--tktc-primary)!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:700;
}
@media(hover:hover) and (pointer:fine){
  .tktc-core-trip-footer a:hover{text-decoration:underline!important}
}
@media(max-width:900px){
  .tktc-core-trip-utility{grid-template-columns:1fr 1fr}
  .tktc-core-trip-utility-block{padding:0 16px 16px}
  .tktc-core-trip-utility-block:nth-child(1){padding-left:0}
  .tktc-core-trip-utility-block:nth-child(2){padding-right:0}
  .tktc-core-trip-utility-block:nth-child(3){
    grid-column:1/-1;
    padding:16px 0 0;
    border-left:0;
    border-top:1px solid #eef1f4;
  }
}
@media(max-width:640px){
  .tktc-core-trip-intro strong{font-size:20px}
  .tktc-core-trip-utility{grid-template-columns:1fr}
  .tktc-core-trip-utility-block,
  .tktc-core-trip-utility-block:first-child,
  .tktc-core-trip-utility-block:last-child,
  .tktc-core-trip-utility-block:nth-child(2),
  .tktc-core-trip-utility-block:nth-child(3){
    grid-column:auto;
    padding:14px 0;
    border-left:0;
    border-top:1px solid #eef1f4;
  }
  .tktc-core-trip-utility-block:first-child{
    padding-top:0;
    border-top:0;
  }
}

/* v1.4.5 — clearer event transportation language. */
.tktc-post-trip-section--getting .tktc-post-trip-section-heading p{margin:5px 0 0;color:var(--tktc-text);font-size:13px;line-height:1.45}

/* --------------------------------------------------------------------------
   v1.4.6 — Changes 7: larger unified thank-you planner, aligned utility rhythm,
   and theme-proof school travel icons without changing the underlying layout.
   -------------------------------------------------------------------------- */
/* School destination guide owns these icons; do not let theme SVG rules hide them. */
.tktc-school-trip-planner .tktc-travel-icon,
.tktc-school-trip-planner .tktc-travel-field > .tktc-travel-icon,
.tktc-school-trip-planner .tktc-travel-mode-btn .tktc-travel-icon,
.tktc-school-trip-planner .tktc-travel-submit .tktc-travel-icon{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
  color:var(--tktc-primary)!important;
}
.tktc-school-trip-planner .tktc-travel-submit .tktc-travel-icon{color:#fff!important}
.tktc-school-trip-planner .tktc-travel-icon svg{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  max-width:none!important;
  fill:currentColor!important;
}

/* Unified order-received planner: slightly larger, still one-row/three-column. */
.tktc-core-trip-intro strong{font-size:25px}
.tktc-core-trip-intro p{font-size:14.5px}
.tktc-core-trip-section-heading h3,
.tktc-core-trip-utility-block h3{font-size:19.5px!important}
/* Give every utility column the same vertical start for its action/content area. */
.tktc-core-trip-utility-block .tktc-school-plan-places,
.tktc-core-trip-mobility{margin-top:13px}
.tktc-core-trip-mobility{gap:8px}
.tktc-core-trip-mobility a{
  min-height:39px;
  padding:9px 12px;
  font-size:13px;
}

/* Slightly larger Before/After thumbnails and text. */
.tktc-core-trip-utility-block .tktc-school-plan-place{
  grid-template-columns:56px minmax(0,1fr);
  gap:11px;
  padding:9px 0;
}
.tktc-core-trip-utility-block .tktc-school-plan-place img,
.tktc-core-trip-utility-block .tktc-school-plan-place-image{
  width:56px;
  height:52px;
}
.tktc-core-trip-utility-block .tktc-school-plan-place-copy strong{font-size:14.5px}
.tktc-core-trip-utility-block .tktc-school-plan-place-copy small{font-size:12.5px}

/* Slightly larger discovery tiles while retaining the same 3x2 grid. */
.tktc-core-trip-plan .tktc-gametrip-place-tile{
  grid-template-columns:68px minmax(0,1fr);
  min-height:78px;
  padding:10px;
}
.tktc-core-trip-plan .tktc-gametrip-place-tile img,
.tktc-core-trip-plan .tktc-gametrip-place-image{
  width:68px;
  height:62px;
}
.tktc-core-trip-plan .tktc-gametrip-place-copy strong{font-size:14px}
.tktc-core-trip-plan .tktc-gametrip-place-copy small{font-size:12px}

/* Travel search gets a modest size increase only inside the unified thank-you card. */
.tktc-core-trip-travel .tktc-travel-form{min-height:76px}
.tktc-core-trip-travel .tktc-travel-mode-btn{min-width:88px;font-size:14px}
.tktc-core-trip-travel .tktc-travel-mode-btn .tktc-travel-icon,
.tktc-core-trip-travel .tktc-travel-field > .tktc-travel-icon{font-size:20px}
.tktc-core-trip-travel .tktc-travel-field label{font-size:10px}
.tktc-core-trip-travel .tktc-travel-field input,
.tktc-core-trip-travel .tktc-travel-field select{font-size:14px}
.tktc-core-trip-travel .tktc-travel-field input[type=date]{font-size:13px}
.tktc-core-trip-travel .tktc-travel-submit{min-width:118px;font-size:14.5px}

@media(max-width:640px){
  .tktc-core-trip-intro strong{font-size:22px}
  .tktc-core-trip-section-heading h3,
  .tktc-core-trip-utility-block h3{font-size:18px!important}
}

/* --------------------------------------------------------------------------
   v1.4.7 — Changes 8: order-received alignment/date sizing and restored
   lightweight travel icon treatment without an external icon-font dependency.
   -------------------------------------------------------------------------- */
/* Keep the SVG icons visually consistent with the earlier Line Awesome icons. */
.tktc-travel-icon svg,
.tktc-school-trip-planner .tktc-travel-icon svg,
.tktc-core-trip-travel .tktc-travel-icon svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  overflow:visible!important;
}
.tktc-travel-submit .tktc-travel-icon--search{width:20px!important;height:20px!important;flex-basis:20px!important}

/* The compact place rows include their own vertical padding. Offset that here so
   the first place image begins on the same baseline as the transportation buttons. */
.tktc-core-trip-utility-block .tktc-school-plan-places{margin-top:4px!important}
.tktc-core-trip-mobility{margin-top:13px!important}

/* Native date controls need more intrinsic width than ordinary text inputs.
   Give Dates room on the order-received bar while preserving the same one-row layout. */
@media(min-width:1024px){
  .tktc-core-trip-travel .tktc-travel-mode-panel--stays.is-active{
    flex:1 1 auto;
  }
  .tktc-core-trip-travel .tktc-travel-mode-panel--stays .tktc-travel-field--location{
    flex:.78 1 145px;
  }
  .tktc-core-trip-travel .tktc-travel-mode-panel--stays .tktc-travel-field--dates{
    flex:1.5 1 285px;
  }
  .tktc-core-trip-travel .tktc-travel-mode-panel--stays .tktc-travel-field--travelers{
    flex:.95 1 185px;
  }
  .tktc-core-trip-travel .tktc-travel-date-pair input[type=date]{
    min-width:122px!important;
    width:calc(50% - 10px)!important;
    font-size:14px!important;
  }
  .tktc-core-trip-travel .tktc-travel-date-pair{gap:5px}
  .tktc-core-trip-travel .tktc-travel-submit{min-width:112px}
}
@media(min-width:1024px) and (max-width:1199px){
  .tktc-core-trip-travel .tktc-travel-date-pair input[type=date]{min-width:112px!important;font-size:14px!important}
  .tktc-core-trip-travel .tktc-travel-mode-panel--stays .tktc-travel-field--dates{flex-basis:258px}
}

/* --------------------------------------------------------------------------
   v1.4.8 — Changes 9: refined unified GameTrip spacing, substantive city copy,
   lighter travel surfaces, and matching school-destination planner rhythm.
   -------------------------------------------------------------------------- */
.site-content-custom-top-spacing #site-content{padding-top:40px;}

/* Unified order-received planner spacing requested for the finished experience.
   Core sections keep a 30px rhythm; the travel section retains its canonical zero top padding. */
.tktc-core-trip-utility{padding-top:30px;padding-bottom:30px;}
.tktc-core-trip-footer{padding:30px 0 10px;}
.tktc-core-trip-footer a{font-size:14px;}
.tktc-core-trip-plan .tktc-gametrip-place-copy small{font-size:13px;}
.tktc-core-trip-utility-block .tktc-school-plan-place-copy small{font-size:13px;}

/* Keep the travel component crisp and flat inside transactional/planning cards. */
.tktc-core-trip-travel .tktc-travel-form,
.tktc-school-trip-planner .tktc-travel-form,
.tktc-event-trip-planner .tktc-travel-form{box-shadow:none!important;}

/* Match the same spacing/readability on the school Places trip planner. */
.tktc-school-trip-travel{margin-bottom:0;}
.tktc-school-trip-planner .tktc-school-plan-place-copy small{font-size:13px;}

/* --------------------------------------------------------------------------
   v1.4.9 — Changes 10: split destination hero + integrated destination
   sections inside the school GameTrip planner.
   -------------------------------------------------------------------------- */
.tktc-destination-hero{
  justify-content:flex-start;
  min-height:355px;
}
.tktc-destination-hero-overlay{
  background:linear-gradient(90deg,rgba(7,19,35,.82) 0%,rgba(7,19,35,.62) 48%,rgba(7,19,35,.20) 100%);
}
.tktc-destination-hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);
  align-items:center;
  gap:44px;
  width:100%;
  padding:48px 32px;
}
.tktc-destination-hero-content{
  width:auto;
  max-width:650px;
  padding:0;
  text-align:left;
  color:#fff;
}
.tktc-destination-guide-eyebrow{text-align:left;}
.tktc-destination-hero h2{font-size:44px!important;margin-bottom:12px!important;}
.tktc-destination-hero p{
  max-width:620px;
  margin:0;
  padding:0;
  color:rgba(255,255,255,.94);
  font-size:16px;
  line-height:1.55;
}
.tktc-destination-hero-feature{
  justify-self:end;
  width:min(100%,330px);
  padding:22px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:14px;
  background:rgba(255,255,255,.93);
  box-shadow:0 12px 30px rgba(7,19,35,.18);
  color:var(--tktc-heading,#171b24);
  backdrop-filter:blur(8px);
}
.tktc-destination-hero-feature-label{
  display:block;
  margin:0 0 8px;
  color:var(--tktc-primary,var(--tktc-native-accent,#23d3d3));
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.tktc-destination-hero-feature-date{
  display:block;
  margin:0 0 5px;
  color:var(--tktc-primary,var(--tktc-native-accent,#23d3d3));
  font-size:12px;
  font-weight:600;
  text-transform:uppercase;
}
.tktc-destination-hero-feature strong{
  display:block;
  color:var(--tktc-heading,#171b24);
  font-size:18px;
  line-height:1.3;
}
.tktc-destination-hero-feature small{
  display:block;
  margin-top:7px;
  color:var(--tktc-native-text,var(--tktc-text,#5d5d5d));
  font-size:13px;
  line-height:1.4;
}
.tktc-destination-hero-feature a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  margin-top:16px;
  padding:8px 13px;
  border-radius:7px;
  background:var(--tktc-primary,#0b4c84);
  color:#fff!important;
  font-size:14px;
  font-weight:500;
  text-decoration:none!important;
}
@media(hover:hover) and (pointer:fine){
  .tktc-destination-hero-feature a:hover{opacity:.88;color:#fff!important;}
}

/* Destination inventory now belongs to the same planning card rather than
   floating as unrelated sections below it. Headings intentionally have no icon. */
.tktc-school-trip-destination-sections{
  margin-top:30px;
  border-top:1px solid #e5e9ee;
}
.tktc-school-trip-planner .tktc-destination-section{
  margin:0;
  padding:30px 0;
  border-bottom:1px solid #e9edf1;
}
.tktc-school-trip-planner .tktc-destination-section:last-child{
  padding-bottom:20px;
  border-bottom:0;
}
.tktc-school-trip-planner .tktc-destination-section-heading{
  margin:0 0 16px;
}
.tktc-school-trip-planner .tktc-destination-section-heading h3{
  margin:0!important;
  padding:0!important;
  font-size:21px!important;
  line-height:1.25!important;
  font-weight:700!important;
  color:var(--tktc-heading)!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side{
  margin:0;
}
.tktc-school-trip-empty{margin-top:30px;}

@media(max-width:900px){
  .tktc-destination-hero-inner{
    grid-template-columns:minmax(0,1fr) minmax(235px,.56fr);
    gap:26px;
    padding:40px 26px;
  }
  .tktc-destination-hero h2{font-size:37px!important;}
  .tktc-destination-hero-feature{padding:18px;}
}
@media(max-width:700px){
  .tktc-destination-hero{min-height:300px;}
  .tktc-destination-hero-overlay{
    background:linear-gradient(180deg,rgba(7,19,35,.70),rgba(7,19,35,.78));
  }
  .tktc-destination-hero-inner{
    display:block;
    padding:34px 20px;
  }
  .tktc-destination-hero-content{max-width:none;}
  .tktc-destination-hero h2{font-size:31px!important;}
  .tktc-destination-hero p{font-size:15px;}
  .tktc-destination-hero-feature{
    width:auto;
    max-width:100%;
    margin-top:22px;
    padding:16px;
  }
  .tktc-school-trip-destination-sections{margin-top:24px;}
  .tktc-school-trip-planner .tktc-destination-section{padding:24px 0;}
}

/* --------------------------------------------------------------------------
   v1.5.1 — Compact destination inventory cards inside School Trip Planner.
   Keep the planning utility cards unchanged; only Eat & Drink / Venues / etc.
   are reduced so they read as recommendations rather than feature cards.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side{
  gap:14px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-1{
  grid-template-columns:minmax(0,360px);
  max-width:360px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-2{
  grid-template-columns:repeat(2,minmax(0,360px));
  max-width:734px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
  height:132px;
  min-height:132px;
  max-height:132px;
  border-radius:12px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
  flex-basis:36%;
  width:36%;
  min-width:104px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  padding:10px 11px 11px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{  font-size:15px!important;
  line-height:1.22!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  font-size:12px;
  line-height:1.28;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-meta{
  font-size:11.5px;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta{
  font-size:11.75px!important;
  padding-top:5px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-badge{
  top:7px;
  left:7px;
  max-width:calc(100% - 14px);
  font-size:9px;
  padding:4px 8px;
}
@media(max-width:980px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-1{
    grid-template-columns:minmax(0,360px);
    max-width:360px;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:136px;
    min-height:136px;
    max-height:136px;
  }
}
@media(max-width:640px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side,
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-1,
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-2{
    grid-template-columns:1fr;
    max-width:none;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:128px;
    min-height:128px;
    max-height:128px;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
    flex-basis:34%;
    width:34%;
    min-width:100px;
  }
}

/* --------------------------------------------------------------------------
   v1.5.2 — Changes 11: native Golo sidebar behavior, aligned school planner
   utility content, consistent destination-section rhythm.
   -------------------------------------------------------------------------- */

/* Normalize every destination inventory section inside the planner. */
.tktc-school-trip-planner .tktc-school-trip-destination-sections{
  margin-top:30px;
}
.tktc-school-trip-planner .tktc-destination-section,
.tktc-school-trip-planner .tktc-destination-section:last-child{
  padding:28px 0;
}
.tktc-school-trip-planner .tktc-destination-section-heading{
  margin:0 0 14px;
}

@media(max-width:640px){
  .tktc-school-trip-planner .tktc-destination-section,
  .tktc-school-trip-planner .tktc-destination-section:last-child{
    padding:22px 0;
  }
  .tktc-school-trip-planner .tktc-destination-section-heading{
    margin-bottom:12px;
  }
}

/* --------------------------------------------------------------------------
   v1.5.3 — Changes 13: compact destination typography + planner spacing.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-school-plan-actions{margin-top:20px;}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{  font-size:14px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-meta{
  font-size:12px;
  margin-top:10px;
}

/* v1.6.5 — School destination mobile spacing and CTA URL fixes. */
.tktc-native-place-cta[href]{cursor:pointer;}
@media(max-width:767px){
  body .e-con.e-grid,
  body .e-con.e-grid > .e-con-inner{
    min-height:0!important;
    height:auto!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
  }
  body .e-con.e-grid > .e-con-inner{
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  body .e-con.e-grid:has(.tktc-school-trip-planner),
  body .e-con.e-grid:has(.tktc-core-trip-plan),
  body .e-con.e-grid:has(.tktc-destination-section),
  body .e-con.e-grid > .e-con-inner:has(.tktc-school-trip-planner),
  body .e-con.e-grid > .e-con-inner:has(.tktc-core-trip-plan),
  body .e-con.e-grid > .e-con-inner:has(.tktc-destination-section){
    min-height:0!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  .tktc-school-trip-planner,
  .tktc-school-trip-destination-sections,
  .tktc-school-trip-planner .tktc-destination-section:last-child{
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
}

/* v1.6.8 Google Places fallback attribution. */
.tktc-google-credit-wrap{position:relative!important}
/* v1.7.27: attribution is REQUIRED by Google's photo policy, but the form is
   ours — a quiet scrim caption instead of a solid pill. Stays legible on any
   photo via the gradient; never intercepts taps. */
.tktc-google-thumb-credit{position:absolute;left:0;right:0;bottom:0;z-index:4;display:flex;align-items:flex-end;justify-content:flex-start;padding:14px 20px 8px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.45) 100%);color:rgba(255,255,255,.92)!important;font-family:inherit!important;font-size:10px!important;font-style:normal!important;font-weight:400!important;line-height:1.2!important;letter-spacing:.02em!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.5);box-shadow:none;pointer-events:none}
.tktc-google-thumb-credit .tktc-google-thumb-author{color:rgba(255,255,255,.92)!important;text-decoration:none;pointer-events:auto}
/* v1.7.63: Native school-site Place cards use a 12px left inset for their
   category badge. Align only those Google photo credits to that same inset;
   every other Google credit context keeps its existing geometry. */
.tktc-native-place-media > .tktc-google-thumb-credit{padding-left:12px;padding-right:12px}
/* v1.7.41: map POPUP credit — the infowindow thumb comes through the featured
   filter with the credit wrap; make the wrap hug the image so bottom:0 IS the
   image's bottom edge. Scoped inside the map; no other context is touched. */
.gm-style .tktc-google-credit-wrap{position:relative;display:block;line-height:0}
.gm-style .tktc-google-credit-wrap img{display:block;width:100%;height:100%;object-fit:cover}
.gm-style .tktc-google-thumb-credit{padding:10px 8px 4px;font-size:9px!important}

/* v1.7.41: the tiny school-page thumbs (44px plan tiles) cannot fit a legible
   credit — hidden there; the SAME photos carry full attribution on the larger
   Eat & Drink cards of the same page, and the hero/live contexts keep theirs. */
.tktc-school-plan-place>.tktc-google-credit-wrap .tktc-google-thumb-credit,
.tktc-gametrip-place-tile>.tktc-google-credit-wrap .tktc-google-thumb-credit{display:none}

/* v1.7.38: the HERO credit gets its own geometry — aligned with the hero's
   content container — instead of inheriting the card scrim (the conflict the
   revision doc flagged). Cards keep the compact scrim above. */
.tktc-google-credit-wrap:has(> img[data-tktc-google-hero]) .tktc-google-thumb-credit{
    /* v1.7.39: bottom-RIGHT of the hero, sharing the baseline of the
       title/meta block on the left. */
    justify-content:flex-end;
    text-align:right;
    padding:22px max(20px, calc((100% - 1170px) / 2 + 15px)) 30px;
    font-size:11px!important;
    background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.55) 100%);
}

.tktc-school-plan-place>.tktc-google-credit-wrap{display:block;width:48px;height:44px}
.tktc-gametrip-place-tile>.tktc-google-credit-wrap{display:block;width:62px;height:56px}
/* v1.7.41: tiny-variant shrink superseded by display:none above. */
.tktc-core-trip-utility-block .tktc-school-plan-place>.tktc-google-credit-wrap{width:56px;height:52px}

.tktc-google-featured-thumb-wrap,.tktc-explore-card-media{position:relative;display:block;width:100%;height:100%}

/* --------------------------------------------------------------------------
   v1.7.8 — Stable Place culture presentation
   Measured against Golo's real title/action geometry and kept in sync with ResizeObserver.
   -------------------------------------------------------------------------- */
.tktc-place-culture-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-width:0}
.tktc-place-culture-tag{display:inline-flex;align-items:center;max-width:100%;padding:4px 7px;border:0;border-radius:4px;background:#fff;color:var(--golo-color__heading,var(--mt-color__heading,#202020));font-size:12px!important;font-weight:500!important;line-height:1.15!important;letter-spacing:.015em;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Golo Place cards: stable top-left overlay aligned with the native top-right control row. */
.place-item .place-thumb,.place-item .entry-thumb,.place-item .place-thumbnail,.place-item .place-thumbnails,.place-item .entry-thumbnail{position:relative}
.tktc-place-culture-tags--card{position:absolute!important;top:18px!important;left:18px!important;right:72px;z-index:12;margin:0!important;max-width:none;pointer-events:none}
/* v1.7.28: over a real photo the card tags need the same white chip treatment
   as the hero and native-card contexts (they previously sat on Golo's flat
   teal placeholder, where bare text worked). */
.tktc-place-culture-tags--card .tktc-place-culture-tag{background:#fff;color:#1d2128!important;font-size:12px!important;font-weight:500!important}

/* v1.7.28: a swapped Google photo keeps the exact layout of every other card
   image — the doc's selector, plus a generic guard for other Golo layouts. */
/* v1.7.32: the tagged WRAPPER owns the box — ratio in grid, stretch in list —
   and the image absolutely fills it. Absolute children don't contribute size,
   so a portrait photo can no longer inflate the row; the wrapper always has a
   size of its own, so it can never collapse (both prior regressions). */
.tktc-google-swapped-wrap{position:relative;overflow:hidden;display:block;aspect-ratio:4/3;width:100%}
.place-item.layout-list .tktc-google-swapped-wrap{aspect-ratio:auto;height:100%;min-height:210px}
.tktc-google-swapped-wrap > img[data-tktc-google-swapped],
img[data-tktc-google-swapped]{
    position:absolute;top:0;left:0;
    width:100%!important;height:100%!important;
    aspect-ratio:auto;object-fit:cover;display:block;
}
/* v1.7.32: superseded by the wrapper-owns-box model above. */
/* v1.7.36: card addresses are single-line everywhere (grid, list, wishlist,
   related). The enhancer supplies street-only text for Google cards; curated
   full addresses are display-trimmed by the same script, and this guarantees
   one line regardless. */
.place-item .place-address p{display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden}
.place-item .place-address p i{vertical-align:baseline!important;margin:0!important;flex:0 0 auto}
.place-item .place-address .tktc-addr-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
/* v1.7.39: list view — the title/address pair sat cramped once the address
   became a tight flex row; restore the theme's vertical rhythm. */
.place-item.layout-list .place-address p{margin:10px 0 0!important}
.place-item.layout-list .place-title{margin-bottom:0}
.place-item.layout-02 .place-title{margin-bottom:5px}

/* v1.7.36: dashboard nav links use the theme's black text colour, not primary. */
.page-control .agent-nav-wrapper ul li a{color:#2d2d2d!important}
.page-control .agent-nav-wrapper ul li.active a,
.page-control .agent-nav-wrapper ul li a:hover{color:var(--primary-color,#2d2d2d)!important}
/* Heroes cover their banner box instead of forcing the card ratio. */
.place-banner img[data-tktc-google-hero],
img[data-tktc-google-hero]{
    /* v1.7.29: was height:100% — with no fixed wrapper height the banner grew
       to the photo's intrinsic size and swallowed the viewport. A responsive
       ratio with a hard cap reads as a hero, not a takeover. */
    display:block;width:100%!important;height:auto!important;
    aspect-ratio:16/7;max-height:520px;object-fit:cover;
}
/* v1.7.50: the native Golo single-Place hero must not keep the desktop 16:7
   crop on phones. The Google fallback hero already used 4:3 at this
   breakpoint; apply the same geometry to a Google image swapped into Golo's
   native hero so the photo has useful vertical presence on mobile. */
@media (max-width:767px){
  body.single-place img[data-tktc-google-hero]{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3;
    max-height:none;
    object-fit:cover;
  }
}

/* The credit anchors to the IMAGE box: with the swapped img now the sole flow
   child of its (relative) wrapper, bottom/left of the wrapper IS the image's
   bottom-left corner. */
.entry-thumb .tktc-google-thumb-credit{border-radius:0 0 4px 4px}

/* v2.0.35: Golo layout-02 Place cards can receive the live Google credit on
   .entry-thumb itself. The base credit is flex, and text-overflow:ellipsis does
   not truncate a flex line reliably. Make only these card credits a single
   block line so long Google/author attribution clips cleanly with an ellipsis
   inside the photo instead of running across or beyond the image. */
.place-item.layout-02 .place-thumb > .entry-thumb.tktc-google-credit-wrap > .tktc-google-thumb-credit,
.place-item.layout-02 .place-thumb > .entry-thumb > .tktc-google-thumb-credit{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* Single Place hero: top/left are measured against Golo's real title and action controls. */
.single-place .place-banner,.golo-place-wrap .place-banner,.single-place .place-thumbnails,.golo-place-wrap .place-thumbnails,.single-place-thumbnails,.single-place .place-gallery-wrap,.golo-place-wrap .place-gallery-wrap,.single-place .place-slider-wrap,.golo-place-wrap .place-slider-wrap,.tktc-google-featured-hero{position:relative}
.tktc-place-culture-tags--hero{position:absolute!important;top:0;left:0;right:120px;z-index:30;margin:0!important;gap:6px;max-width:none;pointer-events:none;visibility:hidden}
.tktc-place-culture-tags--hero.tktc-place-culture-tags--aligned{visibility:visible}
.tktc-place-culture-tags--hero .tktc-place-culture-tag{font-size:12px!important;font-weight:500!important;background:#fff}

/* Ticketality-owned cards use the same culture badge system. */
.tktc-native-place-cultural{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 7px;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none}
.tktc-native-place-cultural .tktc-place-culture-tag{font-size:12px!important;font-weight:500!important;background:#fff}

/* Responsive spacing only; hero top/left are written from measured Golo geometry. */
@media(max-width:767px){
  .tktc-place-culture-tags--card{top:14px!important;left:14px!important;right:62px;gap:4px}
  .tktc-place-culture-tags--hero{right:96px;gap:4px}
  .tktc-place-culture-tag{font-size:12px!important;font-weight:500!important;padding:4px 6px}
}

/* --------------------------------------------------------------------------
   v1.7.9 — School site card typography and theme-color text cleanup.
   -------------------------------------------------------------------------- */
.tktc-destination-guide,
.tktc-school-trip-planner,
.tktc-event-trip-planner,
.tktc-core-trip-plan{
  --tktc-heading:var(--golo-color__heading,var(--mt-color__heading,var(--e-global-color-primary,#171b24)));
  --tktc-text:var(--golo-color__text,var(--mt-color__text,var(--e-global-color-text,#4b5563)));
  color:var(--tktc-text)!important;
}
.tktc-destination-guide :is(h3,h4,strong,.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong),
.tktc-school-trip-planner :is(h3,h4,strong,.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong),
.tktc-event-trip-planner :is(h2,h3,h4,strong,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong),
.tktc-core-trip-plan :is(h2,h3,h4,strong,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong){
  color:var(--tktc-heading)!important;
}
.tktc-destination-guide :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small),
.tktc-school-trip-planner :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small),
.tktc-event-trip-planner :is(p,small,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small),
.tktc-core-trip-plan :is(p,small,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small){
  color:var(--tktc-text)!important;
}
.tktc-native-place-title{font-weight:500!important;}
.tktc-school-plan-place-copy strong{font-weight:500!important;}
.tktc-school-plan-actions a,
.tktc-event-trip-actions a{font-weight:500!important;}
.tktc-native-place-cultural{font-weight:500!important;}
.tktc-school-trip-planner .tktc-school-plan-place-copy small{font-size:12px!important;}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-meta{display:none!important;}

/* --------------------------------------------------------------------------
   v1.7.10 — School site revisions 5 / Motta color + compact side-card polish.
   -------------------------------------------------------------------------- */
.tktc-destination-guide,
.tktc-school-trip-planner,
.tktc-event-trip-planner,
.tktc-core-trip-plan{
  --tktc-motta-heading:var(--mt-color__heading,var(--golo-color__heading,var(--e-global-color-primary,#171b24)));
  --tktc-motta-text:var(--mt-color__text,var(--golo-color__text,var(--e-global-color-text,#4b5563)));
  --tktc-motta-border:var(--mt-color__border,var(--golo-color__border,#e5e7eb));
}
.tktc-native-place-cultural .tktc-place-culture-tag,
.tktc-place-culture-tags .tktc-place-culture-tag{
  border:1px solid var(--tktc-motta-border,#e5e7eb)!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex:1 1 auto!important;
  min-height:100%!important;
  justify-content:center!important;
  gap:5px!important;
  padding:12px 13px!important;
}
.tktc-destination-guide :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small){
  color:var(--tktc-motta-text,var(--tktc-text,#4b5563))!important;
  font-weight:500!important;
}
.tktc-native-place-grid--side .tktc-native-place-location span{
  white-space:normal!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

/* --------------------------------------------------------------------------
   v1.7.11 — Correct Motta/theme color scope for school destination cards.
   White text is reserved for dark hero/overlay areas. Card and planner text use
   Motta/theme heading, text, border and primary variables.
   -------------------------------------------------------------------------- */
.tktc-destination-guide,
.tktc-school-trip-planner,
.tktc-event-trip-planner,
.tktc-core-trip-plan{
  --tktc-theme-primary:var(--mt-color__primary,var(--golo-color__primary,var(--e-global-color-primary,#0b4c84)));
  --tktc-theme-heading:var(--mt-color__heading,var(--golo-color__heading,var(--e-global-color-primary,#171b24)));
  --tktc-theme-text:var(--mt-color__text,var(--golo-color__text,var(--e-global-color-text,#4b5563)));
  --tktc-theme-muted:var(--mt-color__text-light,var(--golo-color__text-light,var(--tktc-theme-text,#6b7280)));
  --tktc-theme-border:var(--mt-color__border,var(--golo-color__border,#e5e7eb));
  --tktc-theme-card-bg:var(--mt-color__background,var(--golo-color__background,#fff));
  color:var(--tktc-theme-text)!important;
}

/* Hero/dark overlay areas intentionally remain white. */
.tktc-destination-guide .tktc-destination-hero,
.tktc-destination-guide .tktc-destination-hero .tktc-destination-hero-content,
.tktc-destination-guide .tktc-destination-hero .tktc-destination-guide-eyebrow,
.tktc-destination-guide .tktc-destination-hero h1,
.tktc-destination-guide .tktc-destination-hero h2,
.tktc-destination-guide .tktc-destination-hero p,
.tktc-destination-guide .tktc-destination-hero .tktc-destination-source{
  color:#fff!important;
}
.tktc-destination-guide .tktc-destination-hero p{
  color:rgba(255,255,255,.94)!important;
}

/* White hero feature cards are not overlay text; use normal theme colors. */
.tktc-destination-guide .tktc-destination-hero-feature,
.tktc-destination-guide .tktc-destination-hero-feature :is(strong,h3,h4){
  color:var(--tktc-theme-heading)!important;
}
.tktc-destination-guide .tktc-destination-hero-feature :is(small,p){
  color:var(--tktc-theme-text)!important;
}
.tktc-destination-guide .tktc-destination-hero-feature :is(.tktc-destination-hero-feature-label,.tktc-destination-hero-feature-date){
  color:var(--tktc-theme-primary)!important;
}
.tktc-destination-guide .tktc-destination-hero-feature a{
  background:var(--tktc-theme-primary)!important;
  color:#fff!important;
}

/* Planner cards, side cards, place tiles and destination inventory cards use standard Motta colors. */
.tktc-school-trip-planner :is(.tktc-school-plan-card,.tktc-event-trip-card,.tktc-native-place-card,.tktc-gametrip-place-tile,.tktc-school-plan-place),
.tktc-event-trip-planner :is(.tktc-school-plan-card,.tktc-event-trip-card,.tktc-native-place-card,.tktc-gametrip-place-tile,.tktc-school-plan-place),
.tktc-destination-guide :is(.tktc-native-place-card,.tktc-gametrip-place-tile,.tktc-school-plan-place,.tktc-side-event,.tktc-side-place),
.tktc-core-trip-plan :is(.tktc-school-plan-card,.tktc-event-trip-card,.tktc-native-place-card,.tktc-gametrip-place-tile,.tktc-school-plan-place){
  color:var(--tktc-theme-text)!important;
}
.tktc-school-trip-planner :is(.tktc-school-plan-card h3,.tktc-school-plan-card h4,.tktc-event-trip-card h3,.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong),
.tktc-event-trip-planner :is(.tktc-school-plan-card h3,.tktc-school-plan-card h4,.tktc-event-trip-card h3,.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong),
.tktc-destination-guide :is(.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong,.tktc-side-event h4,.tktc-side-place h4),
.tktc-core-trip-plan :is(.tktc-school-plan-card h3,.tktc-school-plan-card h4,.tktc-event-trip-card h3,.tktc-native-place-title,.tktc-school-plan-place-copy strong,.tktc-gametrip-place-copy strong){
  color:var(--tktc-theme-heading)!important;
  font-weight:500!important;
}
.tktc-school-trip-planner :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small),
.tktc-event-trip-planner :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small),
.tktc-destination-guide :is(.tktc-native-place-card p,.tktc-native-place-card small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small,.tktc-side-event small,.tktc-side-place small),
.tktc-core-trip-plan :is(p,small,.tktc-native-place-location,.tktc-native-place-meta,.tktc-school-plan-place-copy small,.tktc-gametrip-place-copy small){
  color:var(--tktc-theme-text)!important;
  font-weight:500!important;
}
.tktc-native-place-location-icon{
  color:var(--tktc-theme-primary)!important;
  fill:var(--tktc-theme-primary)!important;
}
.tktc-event-trip-planner :is(.tktc-school-trip-planner-heading > span,.tktc-event-trip-heading > span,.tktc-event-trip-card-label,.tktc-event-trip-destination),
.tktc-destination-guide :is(.tktc-destination-section-heading > span,.tktc-native-place-badge,.tktc-native-place-cta),
.tktc-core-trip-plan :is(.tktc-school-trip-planner-heading > span,.tktc-event-trip-heading > span,.tktc-event-trip-card-label,.tktc-event-trip-destination){
  color:var(--tktc-theme-primary)!important;
}
.tktc-school-plan-actions a,
.tktc-event-trip-actions a{
  color:var(--tktc-theme-primary)!important;
  border-color:var(--tktc-theme-border)!important;
  font-weight:500!important;
}
.tktc-native-place-cultural .tktc-place-culture-tag,
.tktc-place-culture-tags .tktc-place-culture-tag{
  color:var(--tktc-theme-heading)!important;
  background:#fff!important;
  border:1px solid var(--tktc-theme-border)!important;
  font-weight:500!important;
}

/* --------------------------------------------------------------------------
   v1.7.12 — School destination side-card spacing polish.
   Keep normal Motta/theme colors on cards and remove the post-section
   “Explore more” link from the school trip planner.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
  align-items:stretch!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  gap:6px!important;
  padding:13px 14px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin:0 0 2px!important;
  width:100%!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
line-height:1.24!important;
  color:var(--tktc-theme-heading,var(--mt-color__heading,var(--golo-color__heading,#171b24)))!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  display:flex!important;
  align-items:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin-top:auto!important;
  color:var(--tktc-theme-text,var(--mt-color__text,var(--golo-color__text,#4b5563)))!important;
  font-weight:500!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location span{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:1!important;
  overflow:hidden!important;
  min-width:0!important;
  color:inherit!important;
}
@media(max-width:767px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:12px 13px!important;
    gap:5px!important;
  }
}

/* --------------------------------------------------------------------------
   v1.7.13 — School destination side-card vertical rhythm correction.
   Keep the culture tag/badge at the top, then stack title and address below
   with controlled spacing instead of forcing the address to the card bottom.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  gap:0!important;
  padding:13px 14px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
  order:1;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  width:100%!important;
  margin:0 0 8px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{  order:2;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  width:100%!important;
line-height:1.22!important;
  color:var(--tktc-theme-heading,var(--mt-color__heading,var(--golo-color__heading,#171b24)))!important;
  font-weight:500!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  order:3;
  display:flex!important;
  align-items:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  line-height:1.32!important;
  color:var(--tktc-theme-text,var(--mt-color__text,var(--golo-color__text,#4b5563)))!important;
  font-weight:500!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location span{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:1!important;
  overflow:hidden!important;
  min-width:0!important;
  color:inherit!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location-icon{
  flex:0 0 14px!important;
  width:14px!important;
  height:14px!important;
  margin-top:1px!important;
}
@media(max-width:767px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:12px 13px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
    margin-bottom:7px!important;
  }
  
}

/* --------------------------------------------------------------------------
   v1.7.14 — School destination side-card badge, spacing and distance polish.
   Badge stays at the top, title/address/distance stack below with crisp spacing.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  padding:13px 15px!important;
  gap:0!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
  order:1!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  width:100%!important;
  margin:0 0 6px!important;
}
.tktc-native-place-cultural .tktc-place-culture-tag,
.tktc-place-culture-tags .tktc-place-culture-tag{
  color:var(--tktc-primary,var(--tktc-theme-primary,var(--mt-color__primary,var(--golo-color__primary,#0b4c84))))!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.15!important;
  letter-spacing:.01em!important;
}

/* v1.7.29: the bare-tag treatment above is for school CONTENT rows. The photo
   OVERLAY contexts (Golo card + single hero) must stay white chips — this
   out-specifies the reset and closes the cascade for those two contexts. */
.tktc-place-culture-tags.tktc-place-culture-tags--card .tktc-place-culture-tag,
.tktc-place-culture-tags.tktc-place-culture-tags--hero .tktc-place-culture-tag{
  background:#fff!important;
  color:#1d2128!important;
  border:0!important;
  padding:4px 7px!important;
  border-radius:4px!important;
  box-shadow:0 1px 3px rgba(0,0,0,.14)!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{  order:2!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  width:100%!important;
color:var(--tktc-theme-heading,var(--mt-color__heading,var(--golo-color__heading,#171b24)))!important;
  font-weight:500!important;
  line-height:1.24!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  order:3!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  margin:4px 0 0!important;
  color:var(--tktc-theme-text,var(--mt-color__text,var(--golo-color__text,#4b5563)))!important;
  font-weight:500!important;
  line-height:1.32!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location span{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:1!important;
  overflow:hidden!important;
  min-width:0!important;
  color:inherit!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-distance{
  order:4!important;
  display:block!important;
  width:100%!important;
  margin:4px 0 0 20px!important;
  color:var(--tktc-theme-text,var(--mt-color__text,var(--golo-color__text,#4b5563)))!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.25!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location-icon{
  flex:0 0 14px!important;
  width:14px!important;
  height:14px!important;
  margin-top:1px!important;
}
@media(max-width:767px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:12px 13px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
    margin-bottom:5px!important;
  }
  
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
    margin-top:3px!important;
  }
}

/* --------------------------------------------------------------------------
   v1.7.16 — Restore remote place Explore link under address.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-distance{
  display:none!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta{
  order:4!important;
  display:inline-flex!important;
  align-items:center!important;
  align-self:flex-start!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:7px 0 0 20px!important;
  padding:0!important;
  color:var(--tktc-primary,var(--tktc-theme-primary,var(--mt-color__primary,var(--golo-color__primary,#0b4c84))))!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-decoration:none!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta:hover,
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta:focus{
  color:var(--tktc-primary,var(--tktc-theme-primary,var(--mt-color__primary,var(--golo-color__primary,#0b4c84))))!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

/* --------------------------------------------------------------------------
   v1.7.17 — Ensure school destination cards render the source place CTA.
   The CTA is the main/API place URL and appears as a compact Explore link
   directly below the address.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta[href],
.tktc-school-trip-planner .tktc-native-place-grid--side .tktc-native-place-cta[href]{
  order:4!important;
  display:inline-flex!important;
  align-items:center!important;
  align-self:flex-start!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:7px 0 0 20px!important;
  padding:0!important;
  color:var(--tktc-primary,var(--tktc-theme-primary,var(--mt-color__primary,var(--golo-color__primary,#0b4c84))))!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-decoration:none!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta[href]:hover,
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta[href]:focus,
.tktc-school-trip-planner .tktc-native-place-grid--side .tktc-native-place-cta[href]:hover,
.tktc-school-trip-planner .tktc-native-place-grid--side .tktc-native-place-cta[href]:focus{
  color:var(--tktc-primary,var(--tktc-theme-primary,var(--mt-color__primary,var(--golo-color__primary,#0b4c84))))!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

/* --------------------------------------------------------------------------
   v1.7.18 — Remove school destination card CTA and tighten visual rhythm.
   No filler copy is added; the card balances by reducing dead vertical space
   and keeping the stack ordered as badge, title, address.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta{
  display:none!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
  height:120px!important;
  min-height:120px!important;
  max-height:120px!important;
  overflow:hidden!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-link{
  align-items:stretch!important;
  min-height:0!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
  flex:0 0 35.5%!important;
  width:35.5%!important;
  min-width:102px!important;
  height:100%!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  height:100%!important;
  min-height:0!important;
  padding:12px 15px!important;
  gap:0!important;
  overflow:hidden!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
  margin:0 0 5px!important;
  line-height:1!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{line-height:1.22!important;
  -webkit-line-clamp:2!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  margin:0!important;
  line-height:1.28!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location span{
  -webkit-line-clamp:1!important;
}
@media(max-width:640px){
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:118px!important;
    min-height:118px!important;
    max-height:118px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
    flex-basis:34%!important;
    width:34%!important;
    min-width:100px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:11px 13px!important;
  }
}

/* --------------------------------------------------------------------------
   v1.7.19 — School destination card title spacing adjustment.
   -------------------------------------------------------------------------- */

@media(max-width:640px){
  
}

/* --------------------------------------------------------------------------
   v1.7.20 — Mobile bottom spacing and school destination card rhythm.
   Keep the content compact and remove excess mobile whitespace after the
   auto-generated destination guide content.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
  height:112px!important;
  min-height:112px!important;
  max-height:112px!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-link{
  align-items:stretch!important;
  min-height:0!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
  flex:0 0 34%!important;
  width:34%!important;
  min-width:96px!important;
  height:100%!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  height:100%!important;
  min-height:0!important;
  padding:11px 14px 10px!important;
  gap:0!important;
  overflow:hidden!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cultural{
  margin:0!important;
  padding:0!important;
  line-height:1.1!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{line-height:1.23!important;
  -webkit-line-clamp:2!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  margin:0!important;
  line-height:1.25!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location span{
  -webkit-line-clamp:1!important;
}
.tktc-school-trip-planner .tktc-school-trip-destination-sections{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.tktc-school-trip-planner .tktc-destination-section:last-child{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
@media(max-width:767px){
  .tktc-destination-guide,
  .tktc-school-trip-planner,
  .tktc-school-trip-destination-sections{
    min-height:0!important;
  }
  .tktc-school-trip-planner{
    margin-bottom:18px!important;
    padding-bottom:18px!important;
  }
  .tktc-school-trip-planner .tktc-school-trip-destination-sections{
    margin-top:22px!important;
    border-top:1px solid var(--tktc-theme-border,var(--mt-color__border,#e5e9ee))!important;
  }
  .tktc-school-trip-planner .tktc-destination-section{
    margin:0!important;
    padding:22px 0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section:last-child{
    padding-bottom:0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:108px!important;
    min-height:108px!important;
    max-height:108px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
    flex-basis:34%!important;
    width:34%!important;
    min-width:94px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:10px 12px!important;
  }
  
  body .e-con.e-grid:has(.tktc-school-trip-planner) > .e-con-inner,
  body .e-con:has(.tktc-school-trip-planner),
  body .e-con-inner:has(.tktc-school-trip-planner){
    min-height:0!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
  }
}
@media(max-width:480px){
  .tktc-school-trip-planner{
    padding-bottom:14px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side,
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-1,
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side.tktc-count-2{
    gap:11px!important;
  }
}

/* --------------------------------------------------------------------------
   v1.7.21 — Mobile footer gap cleanup and final school destination spacing.
   Keeps CTA/distance hidden and removes excess Elementor/Motta wrapper height
   below short auto-generated destination sections on mobile.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-cta,
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-distance{
  display:none!important;
}
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
  justify-content:flex-start!important;
  gap:0!important;
}

.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
  margin:0!important;
}
@media(max-width:767px){
  .tktc-school-trip-planner{
    margin-bottom:20px!important;
    padding-bottom:40px!important;
    min-height:0!important;
    height:auto!important;
  }
  .tktc-school-trip-planner .tktc-school-trip-destination-sections{
    margin-bottom:0!important;
    padding-bottom:0!important;
    min-height:0!important;
    height:auto!important;
  }
  .tktc-school-trip-planner .tktc-destination-section{
    padding:18px 0!important;
    margin:0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section:last-child{
    padding-bottom:0!important;
    margin-bottom:0!important;
    border-bottom:0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-grid--side{
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:106px!important;
    min-height:106px!important;
    max-height:106px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-media{
    flex-basis:34%!important;
    width:34%!important;
    min-width:92px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-content{
    padding:10px 12px!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{line-height:1.22!important;
  
}
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-location{
    line-height:1.22!important;
  }
  body:has(.tktc-school-trip-planner) .elementor-element:has(.tktc-school-trip-planner),
  body:has(.tktc-school-trip-planner) .elementor-widget-container:has(.tktc-school-trip-planner),
  body:has(.tktc-school-trip-planner) .e-con:has(.tktc-school-trip-planner),
  body:has(.tktc-school-trip-planner) .e-con-inner:has(.tktc-school-trip-planner),
  body:has(.tktc-school-trip-planner) .e-con.e-grid:has(.tktc-school-trip-planner) > .e-con-inner{
    min-height:0!important;
    height:auto!important;
    grid-auto-rows:max-content!important;
    grid-template-rows:auto!important;
    align-content:flex-start!important;
    justify-content:flex-start!important;
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
}
@media(max-width:480px){
  .tktc-school-trip-planner .tktc-destination-section{
    padding:16px 0!important;
  }
  .tktc-school-trip-planner .tktc-destination-section .tktc-native-place-card{
    height:104px!important;
    min-height:104px!important;
    max-height:104px!important;
  }
}

/* v1.7.88 — Golo map/category separation.
   Golo's place_categories_icon_marker remains populated for its native maps.
   On Place cards, Ticketality Culture Tags own the image badge position, so the
   native category-marker image is intentionally not rendered as a card overlay. */
.place-item.layout-02 .place-thumb > .entry-category,
.place-item.layout-list .place-thumb > .entry-category {
  display: none;
}

/* v1.7.93 — mobile single Place hero geometry.
 * Golo's type-1 hero gives the image a fixed mobile height while the surrounding
 * Slick wrappers can retain a different height.  The visible remainder is the
 * theme's #686868 single-place-thumbs background.  Keep Golo's slider/overlay
 * structure, but make the complete media stack share one 4:3 box on phones. */
@media (max-width: 767px) {
  body.single-place .place-thumbnails.type-1 .single-place-thumbs {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: transparent;
  }
  body.single-place .place-thumbnails.type-1 .single-place-thumbs > .golo-slick-carousel,
  body.single-place .place-thumbnails.type-1 .single-place-thumbs .slick-list,
  body.single-place .place-thumbnails.type-1 .single-place-thumbs .slick-track,
  body.single-place .place-thumbnails.type-1 .single-place-thumbs figure.slick-slide,
  body.single-place .place-thumbnails.type-1 .single-place-thumbs figure.slick-slide > a {
    height: 100%;
    min-height: 0;
  }
  body.single-place .place-thumbnails.type-1 .single-place-thumbs figure.slick-slide {
    margin: 0;
  }
  body.single-place .place-thumbnails.type-1 .single-place-thumbs figure.slick-slide > a {
    display: block;
  }
  body.single-place .place-thumbnails.type-1 .single-place-thumbs figure img,
  body.single-place .place-thumbnails.type-1 .single-place-thumbs img[data-tktc-google-hero] {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-height: none;
    aspect-ratio: auto;
    object-fit: cover;
  }
}


/* v1.7.124: loyalty-first hotel stack */
.tktc-hotel-stack{font-family:inherit;margin:24px 0}.tktc-hotel-stack *{box-sizing:border-box;font-family:inherit}.tktc-hotel-stack__heading>span{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.65}.tktc-hotel-stack__heading h2{margin:5px 0 6px}.tktc-hotel-stack__heading p{margin:0 0 18px;opacity:.78}.tktc-hotel-stack__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tktc-hotel-card{border:1px solid var(--tktc-native-border,#eee);border-radius:14px;padding:18px;background:var(--tktc-native-surface,#fff);box-shadow:0 4px 16px rgba(17,24,39,.05)}.tktc-hotel-card.is-loyalty-match{outline:2px solid var(--tktc-primary,var(--tktc-native-accent,#23d3d3));outline-offset:-2px}.tktc-hotel-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.tktc-hotel-card__top small{font-weight:600;opacity:.65}.tktc-hotel-card__badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--tktc-native-surface-alt,#f8f8f8);color:var(--tktc-native-text,#5d5d5d);font-size:12px;font-weight:600}.tktc-hotel-card h3{font-size:16px;margin:12px 0 5px;font-weight:600}.tktc-hotel-card__note{margin:0 0 12px;color:var(--tktc-native-text,#5d5d5d);font-size:13px;opacity:1}.tktc-hotel-card__rate{display:flex;align-items:baseline;gap:8px;margin:10px 0}.tktc-hotel-card__rate strong{font-size:18px}.tktc-hotel-card__rate span{color:var(--tktc-native-muted,var(--tktc-native-text,#5d5d5d));font-size:12px;opacity:1}.tktc-hotel-card__loyalty{color:var(--tktc-native-text,#5d5d5d);font-size:12px;line-height:1.4;margin:10px 0 14px}.tktc-hotel-card__loyalty--yes{font-weight:600}.tktc-hotel-card__cta,.tktc-hotel-marketplace>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border-radius:8px;text-decoration:none;font-weight:600;background:var(--tktc-primary,var(--tktc-native-accent,#23d3d3));color:#fff}.tktc-hotel-direct-search,.tktc-hotel-marketplace{margin-top:16px;padding:16px;border:1px solid var(--tktc-native-border,#eee);border-radius:12px;background:var(--tktc-native-surface-alt,#f8f8f8)}.tktc-hotel-direct-search__links{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.tktc-hotel-direct-search__links a{display:inline-flex;padding:8px 11px;border:1px solid var(--tktc-native-border,#eee);border-radius:8px;text-decoration:none;font-weight:600}.tktc-hotel-marketplace{display:flex;align-items:center;justify-content:space-between;gap:20px}.tktc-hotel-marketplace span{display:block;color:var(--tktc-native-muted,var(--tktc-native-text,#5d5d5d));font-size:13px;opacity:1;margin-top:3px}
@media(max-width:991px){.tktc-hotel-stack__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.tktc-hotel-stack__grid{grid-template-columns:1fr}.tktc-hotel-marketplace{align-items:flex-start;flex-direction:column}.tktc-hotel-marketplace>a{width:100%}}


/* v1.7.127 — Updates 52: keep the unified post-purchase planner aligned with
   the Destination Guide / School Trip Planner / Event Trip Planner system. */
.tktc-core-trip-plan .tktc-gametrip-place-copy strong{font-size:14px!important}
.tktc-core-trip-plan .tktc-core-trip-section,
.tktc-core-trip-plan .tktc-core-trip-utility-block{
  font-family:inherit;
}

/* v1.7.128 — canonical school planner place-title spacing; intentionally not !important. */

/* v1.7.129 — one canonical school planner title margin.
   !important is required only to beat the generic native title baseline. */
.tktc-school-trip-planner .tktc-destination-section .tktc-native-place-title{
  margin:7px 0!important;
}


/* v1.7.130 — Updates 55: compact GameTrip cards keep destination context out of
   repeated metadata. Category sections show the street address; venue-proximate
   sections intentionally stay distance-focused. */
.tktc-gametrip-place-copy .tktc-gametrip-place-address{
  display:block;
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
/* v1.7.137 room-block hotel offer details */
.tktc-hotel-card.is-room-block{border-width:2px}
.tktc-hotel-card__block-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin:10px 0 14px;font-size:12px;line-height:1.35}
.tktc-hotel-card__block-meta span{display:inline-flex;align-items:center}

/* v1.7.148 — restore the original horizontal GameTrip room-block card.
   On desktop and tablet the hotel image stays on the left and the offer content
   stays on the right. Mobile returns to the stacked presentation for usable width. */
.tktc-room-blocks-feature{margin:20px 0 24px;padding:20px;border:1px solid #e4e8ed;border-radius:12px;background:#f8fafc}
.tktc-room-blocks-feature__heading{margin:0 0 14px}
.tktc-room-blocks-feature__heading>span{display:block;margin:0 0 4px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--tktc-primary,var(--mt-color__primary,#0b4c84))}
.tktc-room-blocks-feature__heading h3{margin:0;font-size:18px;line-height:1.3;color:var(--tktc-heading,var(--mt-color__heading,#171b24))}
.tktc-room-blocks-feature__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.tktc-room-block-card{display:grid;grid-template-columns:minmax(150px,30%) minmax(0,1fr);align-items:stretch;min-width:0;overflow:hidden;padding:0;border:1px solid #e1e6eb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(17,24,39,.04)}
.tktc-room-block-card:not(.has-image){display:block}
.tktc-room-block-card__media{position:relative;overflow:hidden;width:100%;height:100%;min-height:190px;aspect-ratio:auto;background:#eef1f4}
.tktc-room-block-card__media img{display:block;width:100%;height:100%;object-fit:cover}
.tktc-room-block-card__media-credit{position:absolute;left:9px;bottom:8px;display:inline-flex;align-items:center;padding:3px 6px;border-radius:4px;background:rgba(255,255,255,.92);color:#3c4043!important;font-size:9px!important;font-weight:500!important;line-height:1.15;box-shadow:0 1px 3px rgba(0,0,0,.16)}
.tktc-room-block-card__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:16px}
.tktc-room-block-card__top{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}
.tktc-room-block-card__top>span{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tktc-primary,var(--tktc-native-accent,#23d3d3))}
.tktc-room-block-card__top small{font-size:14px;color:var(--tktc-native-muted,var(--tktc-native-text,#5d5d5d))}
.tktc-room-block-card h4{margin:0 0 7px;font-size:16px;line-height:1.25;color:var(--tktc-heading,var(--mt-color__heading,#171b24))}
.tktc-room-block-card__rate{display:flex;align-items:baseline;gap:6px;margin:0 0 7px}
.tktc-room-block-card__rate strong{font-size:18px;color:var(--tktc-native-heading,var(--tktc-heading,#2d2d2d));font-weight:500}
.tktc-room-block-card__rate span,.tktc-room-block-card__meta{font-size:12px;line-height:1.45;color:var(--tktc-native-muted,var(--tktc-native-text,#5d5d5d))}
.tktc-room-block-card__meta{max-width:720px}
.tktc-room-block-card__cta{display:inline-flex;margin-top:auto;padding:9px 13px;border-radius:7px;background:var(--tktc-primary,var(--tktc-native-accent,#23d3d3));color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:500}
.tktc-room-block-card__meta+.tktc-room-block-card__cta,.tktc-room-block-card__rate+.tktc-room-block-card__cta,.tktc-room-block-card h4+.tktc-room-block-card__cta{margin-top:12px}
.tktc-room-block-card__cta:hover,.tktc-room-block-card__cta:focus{opacity:.9;color:#fff!important}
.tktc-room-blocks-feature--count-1 .tktc-room-blocks-feature__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tktc-core-trip-room-blocks .tktc-room-blocks-feature{margin-top:0}
@media(max-width:767px){.tktc-room-blocks-feature__grid,.tktc-room-blocks-feature--count-1 .tktc-room-blocks-feature__grid{grid-template-columns:1fr}.tktc-room-blocks-feature{padding:16px}.tktc-room-block-card{display:flex;flex-direction:column}.tktc-room-block-card:not(.has-image){display:block}.tktc-room-block-card__media{height:auto;min-height:0;aspect-ratio:16/9}}

/* --------------------------------------------------------------------------
   v1.7.143 — Unified GameTrip component typography.
   Font family continues to inherit the active theme, but component sizes,
   weights and neutral text hierarchy are intentionally the same in Golo and
   Motta. Theme/school color is reserved for links, icons and CTAs.
   -------------------------------------------------------------------------- */
/* v1.7.142 — Thank You Destination Guide parity with the School Places guide.
   The hero markup is now shared in PHP; this keeps the integrated event-specific
   planner in the same card language as .tktc-school-trip-planner. */
.ty-thankyou-destination-guide--integrated>.tktc-destination-hero{margin-bottom:20px;}
.ty-thankyou-destination-guide--integrated .tktc-core-trip-plan{
  margin:0 0 42px;
  padding:26px;
  border:1px solid var(--tktc-native-border,#dadfe3);
  border-radius:16px;
  background:var(--tktc-native-surface,#fff);
  color:var(--tktc-native-text,#282c33);
}
.ty-thankyou-destination-guide--integrated .tktc-core-trip-section{
  border-color:var(--tktc-native-border,#dadfe3);
}
.ty-thankyou-destination-guide--integrated .tktc-core-trip-utility-block + .tktc-core-trip-utility-block{
  border-color:var(--tktc-native-border,#dadfe3);
}
@media(max-width:640px){
  .ty-thankyou-destination-guide--integrated .tktc-core-trip-plan{padding:18px;border-radius:12px;}
}


/* --------------------------------------------------------------------------
   v2.0.16 — School destination rotation + canonical main-site discovery links.
   Section links stay visually light so the school page remains a curated sample;
   the canonical HBCU GameTrip destination archive owns the full inventory.
   -------------------------------------------------------------------------- */
.tktc-school-trip-planner .tktc-destination-section-heading{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.tktc-school-trip-planner .tktc-destination-section-more{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:6px;
  margin:0;
  color:var(--tktc-theme-primary,var(--tktc-primary,#0b4c84))!important;
  font-family:inherit!important;
  font-size:13px;
  line-height:1.25;
  font-weight:600;
  text-decoration:none!important;
  white-space:nowrap;
}
.tktc-school-trip-planner .tktc-destination-section-more:hover,
.tktc-school-trip-planner .tktc-destination-section-more:focus{
  color:var(--tktc-theme-primary,var(--tktc-primary,#0b4c84))!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}
@media(max-width:480px){
  .tktc-school-trip-planner .tktc-destination-section-heading{gap:10px!important;}
  .tktc-school-trip-planner .tktc-destination-section-more{font-size:12px;}
}

/* v2.0.17 — Stable Golo Place-card media geometry.
 * Golo equal-height grid rows can let the media flex against the detail area,
 * which made cards with different title lengths appear to have different image
 * heights. The outer media box now owns one fixed 4:3 ratio; title/content
 * length is absorbed only by the detail area and can no longer resize photos. */
.place-item.layout-02 .place-thumb{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4 / 3!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
}
.place-item.layout-02 .place-thumb > .entry-thumb{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
}
.place-item.layout-02 .place-thumb > .entry-thumb > img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}

/* --------------------------------------------------------------------------
   v2.0.18 — School home game-section visibility.
   The page template owns the hgt-gametrip-events wrapper; front.js marks it
   hidden whenever no actual school event cards are present.
   -------------------------------------------------------------------------- */
section.hgt-gametrip-section.hgt-gametrip-events[hidden]{
  display:none!important;
}


/* --------------------------------------------------------------------------
   v2.0.21 — Collapse the divider and inter-section gap with an empty Games
   section. calendar.css gives every GameTrip section its own bottom border,
   padding and margin, so hiding only the Games node left the separator on the
   preceding Mobility section. front.js adds this state class only while Games
   has no event cards.
   -------------------------------------------------------------------------- */
section.hgt-gametrip-section.tktc-gametrip-section--before-empty-events{
  border-bottom:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}


/* 2.0.20 — static single-Place hero wrapper. The lightbox anchor is replaced
   one-for-one so Google photo credit keeps the same positioned containing box. */
.single-place .tktc-place-hero-static{
  display:block;
  position:relative;
  width:100%;
  height:100%;
  cursor:default;
}
.single-place .tktc-place-hero-static > img{
  display:block;
}


/* v2.0.52 — Google-only single Place heroes with no native Golo gallery.
 * v2.0.51 correctly restored the live photo by painting the native hero shell,
 * but an empty Golo gallery has no 450px <img> to establish the desktop hero
 * height. Restore Golo's native type-1 geometry and give the background-based
 * hero the exact same attribution treatment as an image-backed hero. */
body.single-place .place-thumbnails.type-1 .single-place-thumbs[data-tktc-google-hero-bg="1"]{
  height:450px;
  min-height:450px;
  overflow:hidden;
}
body.single-place .place-thumbnails.type-1 .single-place-thumbs[data-tktc-google-hero-bg="1"]::before{
  content:"";
  position:absolute;
  z-index:0;
  top:50%;
  right:0;
  bottom:0;
  left:0;
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(0,0,0,0),#000);
  opacity:.4;
}
body.single-place .single-place-thumbs[data-tktc-google-hero-bg="1"] > .tktc-google-thumb-credit[data-tktc-single-hero-credit="1"]{
  justify-content:flex-end;
  text-align:right;
  padding:22px max(20px,calc((100% - 1170px)/2 + 15px)) 30px;
  font-size:11px!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.55) 100%);
}
@media (max-width:1199px) and (min-width:768px){
  body.single-place .place-thumbnails.type-1 .single-place-thumbs[data-tktc-google-hero-bg="1"]{
    height:400px;
    min-height:400px;
  }
}
@media (max-width:767px){
  body.single-place .place-thumbnails.type-1 .single-place-thumbs[data-tktc-google-hero-bg="1"]{
    height:auto;
    min-height:0;
    aspect-ratio:4/3;
  }
}

/* --------------------------------------------------------------------------
   v2.0.55 — contextual internal-link graph.
   Crawlable, visitor-facing links connect the platform's existing School,
   GameTrip, Guide, Destination and Place entities without generating thin URLs.
   -------------------------------------------------------------------------- */
.tktc-context-links{
  margin:28px 0 0;
  padding:18px 20px;
  border:1px solid var(--tktc-native-border,#e5e9ee);
  border-radius:10px;
  background:var(--tktc-native-surface-alt,#f8f8f8);
}
.tktc-context-links__head{
  display:flex;
  align-items:baseline;
  gap:10px;
  margin:0 0 12px;
  min-width:0;
}
.tktc-context-links__head>span{
  color:var(--tktc-native-accent,#bd2c83);
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.tktc-context-links__head>strong{
  color:var(--tktc-native-heading,#171b24);
  font-size:17px;
  font-weight:500;
  line-height:1.3;
}
.tktc-context-links__list{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.tktc-context-link{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border:1px solid var(--tktc-native-border,#e5e9ee);
  border-radius:7px;
  background:var(--tktc-native-surface,#fff);
  color:var(--tktc-native-heading,#171b24);
  font-size:13px;
  font-weight:500;
  line-height:1.3;
  text-decoration:none!important;
}
.tktc-context-link:hover,.tktc-context-link:focus-visible{
  border-color:var(--tktc-native-accent,#bd2c83);
  color:var(--tktc-native-accent,#bd2c83);
}
body.single-place .tktc-context-links{
  margin-top:30px;
  margin-bottom:10px;
}
.tktc-school-hub-main>.tktc-context-links{
  margin-top:36px;
}
@media(max-width:767px){
  .tktc-context-links{padding:16px;margin-top:22px}
  .tktc-context-links__head{display:block}
  .tktc-context-links__head>span,.tktc-context-links__head>strong{display:block}
  .tktc-context-links__head>strong{margin-top:4px}
  .tktc-context-links__list{display:grid;grid-template-columns:1fr}
  .tktc-context-link{width:100%}
}
