/*
Theme Name: TogetherCraft Blocks
Theme URI: https://togethercraft.online/
Author: TogetherCraft
Description: Native WordPress block theme for TogetherCraft. Designed for full editing in the Site Editor.
Version: 4.47.8
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: togethercraft-blocks
*/

:root {
  --tc-navy:#0a1624;
  --tc-navy-2:#10283f;
  --tc-cyan:#27d7ee;
  --tc-cyan-2:#17b9d4;
  --tc-ink:#f3f8fb;
  --tc-muted:#aabac5;
  --tc-line:rgba(255,255,255,.09);
  --tc-soft:#0e1d2c;
  --tc-shadow:0 18px 48px rgba(0,0,0,.28);
}

/* V4.47.4: tighter homepage quick feature spacing. */
.home .tc-welcome {
  padding-bottom:20px !important;
}

.home .tc-strip,
.home .tc-strip-grid {
  margin-top:0 !important;
}

.home .tc-strip-card {
  display:grid !important;
  grid-template-columns:40px minmax(0,1fr) !important;
  grid-template-areas:
    "icon title"
    "icon copy" !important;
  column-gap:14px !important;
  row-gap:3px !important;
  align-items:center !important;
  justify-content:stretch !important;
  padding:16px 18px !important;
}

.home .tc-strip-card > .tc-strip-icon {
  grid-area:icon !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:40px !important;
  margin:0 !important;
  line-height:1 !important;
  text-align:center !important;
}

.home .tc-strip-card > div {
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  display:flex !important;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  margin:0 !important;
  text-align:left !important;
}

.home .tc-strip-card > div h3,
.home .tc-strip-card > div p,
.home .tc-strip-grid .tc-strip-card h3.wp-block-heading,
.home .tc-strip-grid .tc-strip-card p:not(.tc-strip-icon) {
  width:100% !important;
  margin:0 !important;
  justify-self:start !important;
  text-align:left !important;
}

.home .tc-strip-card > h3.wp-block-heading {
  grid-area:title !important;
  align-self:end !important;
}

.home .tc-strip-card > p:not(.tc-strip-icon) {
  grid-area:copy !important;
  align-self:start !important;
}

/* V4.39.5: unified archive cards and cleaner single event controls. */
.single-tribe_events .tribe-events-event-meta::before,
.single-tribe_events .tribe-events-event-meta::after,
.single-tribe_events .tribe-events-event-meta ~ div:not(.tribe-events-event-meta,.event-tickets)::before {
  display:none !important;
  content:none !important;
  border:0 !important;
}

.single-tribe_events .tribe-events-single-section.tribe-events-event-meta {
  border-top:0 !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button {
  display:flex !important;
  align-items:center !important;
  gap:10px;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__export-icon {
  flex:0 0 22px;
  width:22px !important;
  margin:0 !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button-icon {
  flex:0 0 10px;
  width:10px !important;
  margin:0 0 0 4px !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a::before,
.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a::after {
  display:none !important;
  content:none !important;
  background:none !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a > span {
  display:inline !important;
  width:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 8px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#70e7f3 !important;
  font-size:18px !important;
  line-height:1 !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-nav-next a > span {
  margin:0 0 0 8px !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a {
  min-height:48px;
  padding:0 18px;
}

/* Use the cleaner original Events rhythm: date, image, then event details. */
.post-type-archive-tribe_events .tribe-events-calendar-list__event,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event {
  grid-template-columns:minmax(260px,340px) minmax(0,1fr) !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper {
  grid-column:1 !important;
  grid-row:1 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-list__event-details {
  grid-column:2 !important;
  grid-row:1 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__heading {
  margin:52px 0 24px !important;
  color:#fff !important;
  font-size:30px !important;
  font-weight:750 !important;
  line-height:1.2 !important;
  letter-spacing:-.025em;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-row,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-latest-past__event-row {
  display:grid !important;
  grid-template-columns:94px minmax(0,1fr) !important;
  gap:0 !important;
  margin:0 0 20px !important;
  padding:0 !important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:20px !important;
  background:#0d1d2c !important;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-row:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.22) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.2);
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag {
  display:flex !important;
  align-items:flex-start;
  justify-content:center;
  width:auto !important;
  min-width:0 !important;
  padding:31px 12px !important;
  border-right:1px solid rgba(255,255,255,.08);
  background:#10283b !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-datetime {
  display:flex !important;
  flex-direction:column;
  align-items:center;
  gap:3px;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-month {
  color:#70e7f3 !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-daynum {
  color:#fff !important;
  font-size:34px !important;
  font-weight:750 !important;
  line-height:1 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-year {
  color:#8fa6b4 !important;
  font-size:11px !important;
  font-weight:700 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-wrapper {
  width:auto !important;
  min-width:0 !important;
  padding:0 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-latest-past__event {
  display:grid !important;
  grid-template-columns:minmax(260px,340px) minmax(0,1fr) !important;
  gap:0 !important;
  min-height:230px;
  margin:0 !important;
  padding:0 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-featured-image-wrapper {
  grid-column:1;
  grid-row:1;
  width:auto !important;
  min-width:0 !important;
  height:100%;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden;
  background:#102436;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-featured-image-wrapper a {
  display:block;
  width:100%;
  height:100%;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-featured-image {
  display:block;
  width:100% !important;
  height:100% !important;
  min-height:230px;
  object-fit:cover;
  border-radius:0 !important;
  transition:transform .28s ease;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-featured-image {
  transform:scale(1.025);
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-details {
  grid-column:2;
  grid-row:1;
  width:auto !important;
  min-width:0 !important;
  padding:30px 32px !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-title {
  margin:0 0 10px !important;
  color:#fff !important;
  font-size:27px !important;
  font-weight:650 !important;
  line-height:1.15 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-title-link {
  border:0 !important;
  color:#fff !important;
  text-decoration:none !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-title-link:hover {
  color:#70e7f3 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-datetime-wrapper {
  margin:0 0 14px !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-datetime,
.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-datetime *,
.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-datetime-wrapper,
.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-datetime-wrapper * {
  color:#70e7f3 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-venue {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:0 0 16px !important;
  color:#dce8ed !important;
  font-size:13px !important;
  font-style:normal !important;
  line-height:1.5 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-venue-title {
  color:#fff !important;
  font-weight:800 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-venue-address {
  color:#b9cad3 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-description,
.post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-description p {
  margin:0 !important;
  color:#b4c5cf !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

@media(max-width:900px) {
  .post-type-archive-tribe_events .tribe-events-calendar-list__event,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event,
  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-latest-past__event {
    grid-template-columns:1fr !important;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper,
  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-featured-image-wrapper {
    grid-column:1 !important;
    grid-row:1 !important;
    height:230px;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-list__event-details,
  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-details {
    grid-column:1 !important;
    grid-row:2 !important;
  }
}

/* V4.40.2: remove the empty band between the homepage header and hero. */
body.home .wp-site-blocks > main,
body.home main > .tc-hero {
  margin-block-start:0 !important;
  margin-top:0 !important;
}

body.home .tc-hero {
  padding-top:16px !important;
}

body.home .tc-shot-one,
body.home .tc-hero-logo {
  top:0 !important;
}

@media(max-width:600px) {
  body.home .tc-hero {
    padding-top:18px !important;
  }
}

/* V4.40: Community page redesign. */
html.tc-community-booting .tc-community-page .tc-content-shell {
  visibility:hidden !important;
}

html.tc-community-booting body {
  background-color:#08121d;
}

.tc-community-page .tc-content-shell {
  padding:0 0 108px;
}

.tc-community-page .tc-content-shell > .wp-block-group {
  max-width:none;
  width:100%;
}

.tc-community-page .tc-community-hero {
  margin-bottom:54px !important;
}

.tc-community-page .tc-community-content {
  width:min(1180px,calc(100% - 40px));
  max-width:1180px !important;
  margin:0 auto !important;
}

.tc-community-page .tc-community-content > .wp-block-spacer,
.tc-community-page .tc-community-layout .wp-block-spacer {
  display:none !important;
}

.tc-community-page .tc-community-layout {
  display:grid !important;
  grid-template-columns:minmax(0,2.1fr) minmax(270px,.9fr);
  gap:24px !important;
  align-items:start !important;
  margin:0 !important;
}

.tc-community-page .tc-community-layout > .wp-block-column {
  min-width:0;
  margin:0 !important;
}

.tc-community-page .tc-community-section-title,
.tc-community-page .tc-community-form-title {
  margin:0 0 22px !important;
  color:#fff !important;
  font-size:clamp(28px,3vw,38px) !important;
  font-weight:750 !important;
  line-height:1.15 !important;
  letter-spacing:-.025em !important;
}

.tc-community-page .shortcode-site-reviews .glsr-reviews {
  display:grid !important;
  gap:16px !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "title rating"
    "date date"
    "content content"
    "author author";
  gap:0 18px !important;
  margin:0 !important;
  padding:26px 28px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:17px !important;
  background:linear-gradient(180deg,rgba(14,31,47,.94),rgba(10,25,38,.94)) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.12);
}

.tc-community-page .shortcode-site-reviews .glsr-review-title {
  grid-area:title;
  min-width:0;
}

.tc-community-page .shortcode-site-reviews .glsr-review-title h4 {
  margin:0 !important;
  color:#fff !important;
  font-size:20px !important;
  font-weight:800 !important;
  line-height:1.3 !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-rating {
  grid-area:rating;
  justify-self:end;
}

.tc-community-page .glsr-star {
  background-color:transparent !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.tc-community-page .glsr-star-empty {
  background-image:var(--glsr-star-empty) !important;
}

.tc-community-page .glsr-star-full {
  background-image:var(--glsr-star-full) !important;
}

.tc-community-page .glsr-star-half {
  background-image:var(--glsr-star-half) !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-date {
  grid-area:date;
  margin:7px 0 0 !important;
  color:#8097a6 !important;
  font-size:12px !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-content {
  grid-area:content;
  margin:18px 0 0 !important;
  color:#b9cad3 !important;
  font-size:14px !important;
  line-height:1.72 !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-content p {
  margin:0 0 12px !important;
  color:#b9cad3 !important;
  font-size:14px !important;
  line-height:1.72 !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-content p:last-child {
  margin-bottom:0 !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-content [data-trigger="expand"]::after,
.tc-community-page .shortcode-site-reviews .glsr-review-content button,
.tc-community-page .shortcode-site-reviews .glsr-review-content a {
  color:#6fe5ef !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-author {
  grid-area:author;
  margin:18px 0 0 !important;
  padding:14px 0 0 !important;
  border-top:1px solid rgba(255,255,255,.065);
  color:#e4eef2 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.tc-community-page .shortcode-site-reviews .glsr-review-author::before {
  content:"Reviewed by ";
  color:#8097a6;
  font-weight:650;
}

.tc-community-page .tc-community-summary-column {
  position:sticky;
  top:132px;
  padding:26px !important;
  border:1px solid rgba(39,215,238,.13);
  border-radius:18px;
  background:linear-gradient(145deg,#10283d,#0c1e2e);
  box-shadow:0 18px 45px rgba(0,0,0,.16);
}

.tc-community-page .tc-community-summary-column::before {
  content:"COMMUNITY RATING";
  display:block;
  margin:0 0 18px;
  color:#6fe5ef;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
}

.tc-community-page .glsr-summary-rating {
  color:#fff !important;
  font-size:48px !important;
  font-weight:850 !important;
  line-height:1 !important;
}

.tc-community-page .glsr-summary-stars {
  margin:10px 0 8px !important;
}

.tc-community-page .glsr-summary-text {
  color:#aabdc8 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.tc-community-page .glsr-summary-percentages {
  margin-top:22px !important;
}

.tc-community-page .glsr-summary-bar {
  color:#aebfc9 !important;
  font-size:12px !important;
}

.tc-community-page .glsr-summary-bar-background {
  background:#1b3547 !important;
  border-radius:999px !important;
  overflow:hidden;
}

.tc-community-page .glsr-summary-bar-background::before {
  background:#35d1e4 !important;
}

.tc-community-page .glsr-pagination {
  margin:28px 0 0 !important;
}

.tc-community-page .glsr-pagination .nav-links {
  display:flex !important;
  flex-wrap:wrap;
  gap:8px;
}

.tc-community-page .glsr-pagination .page-numbers {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 13px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:10px !important;
  background:#0d1f2f !important;
  color:#b9cad3 !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.tc-community-page .glsr-pagination .page-numbers:hover,
.tc-community-page .glsr-pagination .page-numbers.current {
  border-color:rgba(39,215,238,.34) !important;
  background:#123047 !important;
  color:#74e6f0 !important;
}

.tc-community-page .tc-community-form-title {
  max-width:780px;
  margin:64px auto 22px !important;
}

.tc-community-page .tc-community-form-card {
  max-width:780px;
  margin:0 auto !important;
  padding:30px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:linear-gradient(180deg,#102638,#0c1e2e);
  box-shadow:0 18px 46px rgba(0,0,0,.15);
}

.tc-community-page .tc-community-form-card .glsr-form {
  display:grid !important;
  gap:18px !important;
}

.tc-community-page .tc-community-form-card .glsr-label {
  display:block;
  margin:0 0 8px !important;
  color:#e7f0f4 !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.tc-community-page .tc-community-form-card input[type="text"],
.tc-community-page .tc-community-form-card input[type="email"],
.tc-community-page .tc-community-form-card select,
.tc-community-page .tc-community-form-card textarea {
  width:100% !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:11px !important;
  outline:0 !important;
  background:#091827 !important;
  color:#f3f8fb !important;
  font:inherit !important;
  font-size:14px !important;
  box-shadow:none !important;
}

.tc-community-page .tc-community-form-card input[type="text"],
.tc-community-page .tc-community-form-card input[type="email"],
.tc-community-page .tc-community-form-card select {
  min-height:48px;
  padding:0 14px !important;
}

.tc-community-page .tc-community-form-card textarea {
  min-height:150px;
  padding:13px 14px !important;
  resize:vertical;
}

.tc-community-page .tc-community-form-card input:focus,
.tc-community-page .tc-community-form-card select:focus,
.tc-community-page .tc-community-form-card textarea:focus {
  border-color:rgba(39,215,238,.58) !important;
  box-shadow:0 0 0 3px rgba(39,215,238,.08) !important;
}

.tc-community-page .tc-community-form-card .glsr-field-toggle label {
  color:#aebfc9 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.tc-community-page .tc-community-form-card .glsr-button {
  min-height:48px !important;
  padding:0 21px !important;
  border:0 !important;
  border-radius:11px !important;
  background:linear-gradient(135deg,#36d2ea,#22bad8) !important;
  color:#062633 !important;
  font-size:13px !important;
  font-weight:900 !important;
  box-shadow:0 12px 30px rgba(34,186,216,.16) !important;
}

@media(max-width:900px) {
  .tc-community-page .tc-community-layout {
    grid-template-columns:1fr;
  }

  .tc-community-page .tc-community-summary-column {
    position:static;
    grid-row:1;
  }

  .tc-community-page .tc-community-reviews-column {
    grid-row:2;
  }
}

@media(max-width:600px) {
  .tc-community-page .tc-content-shell {
    padding-bottom:76px;
  }

  .tc-community-page .tc-community-content {
    width:calc(100% - 28px);
  }

  .tc-community-page .shortcode-site-reviews .glsr-review {
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "rating"
      "date"
      "content"
      "author";
    padding:22px !important;
  }

  .tc-community-page .shortcode-site-reviews .glsr-review-rating {
    justify-self:start;
    margin-top:10px !important;
  }

  .tc-community-page .tc-community-summary-column,
  .tc-community-page .tc-community-form-card {
    padding:22px !important;
    border-radius:16px;
  }

  .tc-community-page .tc-community-form-title {
    margin-top:48px !important;
  }
}

@media(max-width:600px) {
  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-row,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-latest-past__event-row {
    grid-template-columns:1fr !important;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag {
    justify-content:flex-start;
    padding:15px 20px !important;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-datetime {
    flex-direction:row;
    gap:8px;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-date-tag-daynum {
    font-size:22px !important;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-list__event-details,
  .post-type-archive-tribe_events .tribe-events-calendar-latest-past__event-details {
    padding:24px 22px !important;
  }

  .single-tribe_events #tribe-events-footer .tribe-events-sub-nav {
    flex-direction:column;
  }

  .single-tribe_events #tribe-events-footer .tribe-events-sub-nav a {
    width:100%;
    justify-content:center;
  }
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0;
  background:
    radial-gradient(circle at 12% 12%, rgba(39,215,238,.06), transparent 28rem),
    radial-gradient(circle at 88% 36%, rgba(23,185,212,.05), transparent 32rem),
    #08121d;
}
a { text-underline-offset:.18em; }
img { max-width:100%; height:auto; }

/* Header */
.tc-header {
  position:sticky;
  top:0;
  z-index:9999;
  background:rgba(7,18,29,.97);
  box-shadow:0 5px 24px rgba(0,0,0,.28);
}
.admin-bar .tc-header { top:32px; }
.tc-header-inner {
  min-height:104px;
  display:flex;
  align-items:center;
  gap:28px;
}
.tc-header .wp-block-site-logo { margin-right:auto; flex:0 0 auto; }
.tc-header .wp-block-site-logo img { display:block; max-height:84px; width:auto; }
.tc-header .wp-block-navigation { margin-left:auto; }
.tc-header .wp-block-navigation-item__content { font-weight:750; font-size:14px; text-decoration:none; }
.tc-header .wp-block-navigation-item__content:hover { color:var(--tc-cyan); }
.tc-header .wp-block-navigation__submenu-container {
  background:#0b1926 !important;
  border:1px solid var(--tc-line) !important;
  border-radius:14px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.34) !important;
  padding:9px !important;
  min-width:190px !important;
}
.tc-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  padding:10px 12px !important;
  color:#fff !important;
}
.tc-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:visited { color:#fff !important; }
.tc-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color:var(--tc-cyan) !important; }
.tc-header .wp-block-navigation__responsive-container.is-menu-open { background:#07121d !important; color:#fff !important; padding:30px !important; }
.tc-header .wp-block-button__link { white-space:nowrap; }

/* Shared */
.tc-section { padding:96px 20px; }
.tc-section-title { max-width:780px; margin-left:auto !important; margin-right:auto !important; text-align:center; }
.tc-eyebrow {
  color:var(--tc-cyan);
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.15em;
  text-transform:uppercase;
  margin-bottom:14px !important;
}
.tc-muted { color:var(--tc-muted); }
.tc-button .wp-block-button__link,
.tc-primary-button .wp-block-button__link {
  background:linear-gradient(135deg,var(--tc-cyan),var(--tc-cyan-2));
  color:#04232b;
  border:0;
  border-radius:12px;
  min-height:48px;
  padding:14px 23px;
  font-weight:850;
  box-shadow:0 10px 26px rgba(36,207,232,.18);
}
.tc-secondary-button .wp-block-button__link {
  background:rgba(255,255,255,.055);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  border-radius:12px;
  min-height:48px;
  padding:13px 22px;
  font-weight:800;
}
.tc-button .wp-block-button__link:hover,
.tc-primary-button .wp-block-button__link:hover,
.tc-secondary-button .wp-block-button__link:hover { transform:translateY(-2px); }

/* Hero */
.tc-hero { padding:70px 20px 88px; background:linear-gradient(135deg,#07121e,#0b1d2c 55%,#0c2434); overflow:hidden; }
.tc-hero-grid { display:grid !important; grid-template-columns:.92fr 1.08fr; gap:52px; align-items:center; min-height:650px; }
.tc-hero-copy h1 { font-size:clamp(56px,5.4vw,78px) !important; line-height:.98 !important; letter-spacing:-.045em; font-weight:850 !important; margin-top:0 !important; margin-bottom:24px !important; }
.tc-hero-copy > p:not(.tc-eyebrow) { font-size:19px; line-height:1.68; color:#e1ebf1; max-width:680px; }
.tc-hero-actions { margin-top:30px; }
.tc-hero-facts { display:flex !important; flex-wrap:wrap; gap:9px; margin-top:27px !important; }
.tc-hero-facts p { margin:0 !important; padding:9px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.055); color:#cfe0e9; font-size:12px; font-weight:800; }
.tc-hero-collage { position:relative; min-height:560px; }
.tc-hero-collage .wp-block-image { position:absolute; margin:0; overflow:hidden; border-radius:20px; border:1px solid rgba(255,255,255,.13); box-shadow:0 24px 60px rgba(0,0,0,.34); }
.tc-hero-collage .wp-block-image img { width:100%; height:100%; object-fit:cover; }
.tc-shot-one { width:72%; height:340px; right:1%; top:40px; transform:rotate(2deg); }
.tc-shot-two { width:48%; height:220px; left:1%; bottom:43px; transform:rotate(-3deg); }
.tc-shot-three { width:43%; height:205px; right:5%; bottom:12px; transform:rotate(3deg); }
.tc-hero-logo { position:absolute !important; width:245px !important; left:7%; top:14px; z-index:6; filter:drop-shadow(0 18px 28px rgba(0,0,0,.38)); }
.tc-hero-logo img { width:100% !important; height:auto !important; }

/* Welcome and strip */
.tc-welcome { text-align:center; padding-bottom:44px; }
.tc-welcome h2 { font-size:clamp(38px,4.5vw,58px) !important; letter-spacing:-.035em; line-height:1.05; }
.tc-welcome .tc-body-copy { max-width:850px; margin-left:auto !important; margin-right:auto !important; color:var(--tc-muted); font-size:18px; line-height:1.8; }
.tc-strip { padding:0 20px 30px; }
.tc-strip-grid { display:grid !important; grid-template-columns:repeat(4,1fr); gap:12px; }
.tc-strip-card { display:flex; align-items:center; gap:14px; padding:18px; background:#0c1b29; border:1px solid var(--tc-line); border-radius:16px; }
.tc-strip-card .tc-strip-icon { font-size:27px; margin:0; }
.tc-strip-card h3 { font-size:16px !important; margin:0 0 3px !important; }
.tc-strip-card p { margin:0 !important; color:#93a8b7; font-size:12px; }

/* Split content */
.tc-split { display:grid !important; grid-template-columns:1fr 1fr; gap:62px; align-items:center; padding-top:74px; padding-bottom:74px; }
.tc-split-image { position:relative; }
.tc-split-image img { width:100%; aspect-ratio:16/11; object-fit:cover; border-radius:24px; box-shadow:var(--tc-shadow); }
.tc-split-copy h2 { font-size:clamp(36px,4vw,52px) !important; line-height:1.06; letter-spacing:-.035em; margin-top:10px !important; }
.tc-split-copy .tc-body-copy { color:var(--tc-muted); font-size:17px; line-height:1.75; }

/* Features */
.tc-features { background:#0b1826; }
.tc-features-grid { display:grid !important; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:46px !important; }
.tc-feature-card { padding:28px 25px 30px; border-radius:20px; background:#0e1d2c; border:1px solid var(--tc-line); text-align:center; min-height:225px; }
.tc-feature-card:hover { transform:translateY(-4px); box-shadow:var(--tc-shadow); }
.tc-feature-card .wp-block-image { margin:0 auto 18px !important; width:76px; height:76px; }
.tc-feature-card .wp-block-image img { width:76px; height:76px; object-fit:contain; }
.tc-feature-emoji { width:76px; height:76px; margin:0 auto 18px !important; display:grid; place-items:center; border-radius:18px; background:rgba(39,215,238,.08); border:1px solid rgba(39,215,238,.14); font-size:40px; line-height:76px; }
.tc-feature-card h3 { font-size:23px !important; line-height:1.2; margin:0 0 10px !important; }
.tc-feature-card p { color:var(--tc-muted); font-size:14px; line-height:1.62; margin:0 !important; }

/* Reviewed */
.tc-reviewed { padding:58px 20px 72px; }
.tc-reviewed-card { display:grid !important; grid-template-columns:190px 1fr; gap:34px; align-items:center; padding:38px 42px; border-radius:24px; background:radial-gradient(circle at 12% 20%, rgba(39,215,238,.15), transparent 17rem),linear-gradient(135deg,#0d2232,#102b3d); border:1px solid rgba(80,221,238,.18); box-shadow:0 22px 55px rgba(0,0,0,.22); }
.tc-shield { width:155px; height:155px; margin:auto !important; border-radius:28px; display:grid; place-items:center; background:rgba(39,215,238,.08); border:1px solid rgba(39,215,238,.2); font-size:72px; line-height:155px; text-align:center; }
.tc-reviewed-card h2 { font-size:clamp(34px,4vw,48px) !important; line-height:1.06; margin:7px 0 8px !important; }
.tc-reviewed-card h3 { color:#9eeff6; font-size:20px !important; margin:0 0 15px !important; }
.tc-reviewed-card .tc-body-copy { color:#c7d5de; line-height:1.75; }

/* Events */
.tc-events { background:#0c1b29; }
.tc-section-row { display:flex !important; align-items:end; gap:30px; margin-bottom:38px !important; }
.tc-section-row .tc-section-title { text-align:left; margin-left:0 !important; margin-right:auto !important; }
.tc-events-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.tc-event-card { background:#0f2030; border:1px solid var(--tc-line); border-radius:22px; overflow:hidden; box-shadow:0 12px 32px rgba(0,0,0,.18); }
.tc-event-image { position:relative; height:270px; overflow:hidden; background:#10202f; }
.tc-event-image img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.tc-event-card:hover .tc-event-image img { transform:scale(1.035); }
.tc-event-date { position:absolute; left:18px; top:18px; width:62px; padding:9px 6px; border-radius:13px; background:#071622; color:#fff; text-align:center; box-shadow:0 8px 25px rgba(0,0,0,.26); }
.tc-event-date b { display:block; color:var(--tc-cyan); font-size:22px; line-height:1; }
.tc-event-date span { font-size:11px; font-weight:900; letter-spacing:.08em; }
.tc-event-body { padding:24px 25px 27px; }
.tc-event-time { color:var(--tc-cyan); font-size:13px; font-weight:850; margin-bottom:8px; }
.tc-event-body h3 { margin:0 0 10px; font-size:26px; }
.tc-event-body p { margin:0 0 18px; color:var(--tc-muted); line-height:1.6; }
.tc-event-more { color:var(--tc-cyan); font-weight:850; text-decoration:none; }
.tc-empty { padding:30px; border:1px solid var(--tc-line); border-radius:16px; color:var(--tc-muted); }

/* Gallery */
.tc-gallery { background:#08121d; }
.tc-gallery-grid { display:grid !important; grid-template-columns:repeat(12,1fr); grid-auto-rows:145px; gap:14px; margin-top:42px !important; }
.tc-gallery-grid .wp-block-image { margin:0; overflow:hidden; border-radius:18px; border:1px solid var(--tc-line); }
.tc-gallery-grid .wp-block-image:nth-child(1) { grid-column:span 7; grid-row:span 3; }
.tc-gallery-grid .wp-block-image:nth-child(2) { grid-column:span 5; grid-row:span 2; }
.tc-gallery-grid .wp-block-image:nth-child(3) { grid-column:span 5; grid-row:span 2; }
.tc-gallery-grid .wp-block-image:nth-child(4),.tc-gallery-grid .wp-block-image:nth-child(5),.tc-gallery-grid .wp-block-image:nth-child(6) { grid-column:span 4; grid-row:span 2; }
.tc-gallery-grid img { width:100%; height:100%; object-fit:cover; }

/* Reviews */
.tc-reviews { background:#07111b; }
.tc-reviews .glsr { color:#eaf3f7; }
.tc-reviews .glsr-review { padding:26px !important; background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.1) !important; border-radius:18px !important; }

/* News */
.tc-news { background:#0a1724; }
.tc-news .wp-block-query { margin-top:38px; }
.tc-news .wp-block-post-template { display:grid !important; grid-template-columns:repeat(3,1fr); gap:20px; }
.tc-news .wp-block-post { overflow:hidden; border-radius:20px; border:1px solid var(--tc-line); background:#0f2030; box-shadow:0 15px 36px rgba(0,0,0,.18); }
.tc-news .wp-block-post-featured-image { margin:0; height:205px; overflow:hidden; }
.tc-news .wp-block-post-featured-image img { width:100%; height:100%; object-fit:cover; }
.tc-news .wp-block-post-title,.tc-news .wp-block-post-date,.tc-news .wp-block-post-excerpt { padding-left:22px; padding-right:22px; }
.tc-news .wp-block-post-title { margin-top:20px; font-size:22px !important; }
.tc-news .wp-block-post-date { color:#7f97a8; font-size:12px; }
.tc-news .wp-block-post-excerpt { padding-bottom:22px; color:var(--tc-muted); font-size:14px; }

/* Join */
.tc-join { background:#0b1826; }
.tc-steps { display:grid !important; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:38px !important; }
.tc-step { background:#0e1d2c; border:1px solid var(--tc-line); border-radius:18px; padding:28px 23px; }
.tc-step .tc-step-num { color:var(--tc-cyan); font-size:13px; font-weight:950; letter-spacing:.12em; }
.tc-step h3 { font-size:23px !important; margin:14px 0 8px !important; }
.tc-step p { color:var(--tc-muted); font-size:14px; line-height:1.6; }
.tc-join-actions { margin-top:30px !important; }

/* Footer */
.tc-footer { background:#050d15; padding:58px 20px 34px; }
.tc-footer-grid { display:grid !important; grid-template-columns:1.35fr repeat(3,.7fr); gap:36px; }
.tc-footer .wp-block-site-logo img { max-height:100px; width:auto; }
.tc-footer h3 { font-size:16px !important; margin-bottom:12px !important; }
.tc-footer p,.tc-footer a { color:#b7c8d4; font-size:14px; }
.tc-footer-legal { margin-top:38px !important; padding-top:22px !important; border-top:1px solid rgba(255,255,255,.09); }
.tc-footer-legal p { font-size:12px; color:#8297a6; margin:4px 0; }

/* General pages */
.tc-content-shell { padding:72px 20px 100px; }
.tc-content-shell > .wp-block-group { max-width:900px; margin:auto; }
.tc-content-shell .wp-block-post-title { font-size:clamp(42px,6vw,70px); letter-spacing:-.04em; }
.tc-content-shell .wp-block-post-content { color:#d5e0e6; font-size:17px; line-height:1.75; }

/* V4.39: shared inner page design */
.tc-legacy-page-shell,
.tc-news-shell {
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:76px 0 104px;
}
.tc-page-hero,
.tc-legal-hero {
  position:relative;
  max-width:860px !important;
  margin:0 auto 50px !important;
  padding:42px 44px;
  overflow:hidden;
  border:1px solid rgba(39,215,238,.14);
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 18%,rgba(39,215,238,.13),transparent 18rem),
    linear-gradient(135deg,#0d2132,#0b1b2a);
  box-shadow:0 22px 55px rgba(0,0,0,.18);
  text-align:center;
}
.tc-page-hero::after,
.tc-legal-hero::after {
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  right:-70px;
  top:-85px;
  border:28px solid rgba(39,215,238,.055);
  transform:rotate(16deg);
}
.tc-page-eyebrow {
  margin:0 0 12px !important;
  color:var(--tc-cyan) !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.tc-page-hero h1,
.tc-legal-hero h1 {
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(42px,5.5vw,68px) !important;
  font-weight:500 !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.tc-page-intro {
  max-width:710px;
  margin:18px auto 0 !important;
  color:#b9c9d3 !important;
  font-size:17px;
  line-height:1.72;
}
.tc-page-body { max-width:1080px; margin:0 auto; }
.tc-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.tc-info-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:280px;
  padding:30px;
  border:1px solid var(--tc-line);
  border-radius:20px;
  background:#0e1d2c;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
}
.tc-info-card-icon {
  display:grid;
  width:58px;
  height:58px;
  margin-bottom:22px;
  place-items:center;
  border:1px solid rgba(39,215,238,.2);
  border-radius:15px;
  background:rgba(39,215,238,.08);
  font-size:29px;
}
.tc-info-card h2 { margin:0 0 12px; font-size:29px; letter-spacing:-.025em; }
.tc-info-card p { margin:0 0 24px; color:var(--tc-muted); line-height:1.7; }
.tc-page-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  margin-top:auto;
  padding:12px 21px;
  border-radius:11px;
  background:linear-gradient(135deg,var(--tc-cyan),var(--tc-cyan-2));
  color:#04232b !important;
  font-weight:850;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease;
}
.tc-page-button:hover { transform:translateY(-2px); box-shadow:0 10px 25px rgba(39,215,238,.18); }
.tc-page-note {
  margin:26px 0 0;
  padding:24px 26px;
  border:1px solid rgba(39,215,238,.14);
  border-radius:16px;
  background:rgba(39,215,238,.055);
  color:#c7d5de;
}
.tc-page-note strong { color:#fff; font-size:18px; }
.tc-page-note p { margin:7px 0 0; }
.tc-requirements-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.tc-requirements-grid .tc-info-card { min-height:260px; padding:25px; }
.tc-requirements-grid .tc-info-card h2 { font-size:22px; }
.tc-requirements-grid .tc-info-card p { margin-bottom:0; font-size:14px; }
.tc-form-heading { max-width:750px; margin:70px auto 28px; text-align:center; }
.tc-form-heading h2 { margin:6px 0 12px; font-size:clamp(34px,4vw,48px); }
.tc-form-heading > p:last-child { color:var(--tc-muted); }
.tc-application-form {
  max-width:720px;
  margin:0 auto;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:18px;
  background:transparent;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}
.tc-application-form iframe {
  display:block;
  width:100%;
  height:900px;
  border:0;
  border-radius:17px;
  background:transparent;
}

@media(max-width:600px) {
  .tc-application-form iframe { height:760px; }
}

/* Legal pages */
.tc-legal-shell { padding-top:72px; }
.tc-legal-shell > .wp-block-group { max-width:980px; }
.tc-legal-hero { max-width:980px !important; margin-bottom:28px !important; }
.tc-legal-content {
  max-width:980px !important;
  padding:42px 46px 54px;
  border:1px solid var(--tc-line);
  border-radius:22px;
  background:#0d1c2a;
  box-shadow:0 18px 45px rgba(0,0,0,.14);
}
.tc-legal-content > h2 {
  margin:38px 0 13px !important;
  padding-top:28px;
  border-top:1px solid var(--tc-line);
  color:#fff;
  font-size:27px;
  letter-spacing:-.02em;
}
.tc-legal-content > h2:first-of-type { margin-top:22px !important; }
.tc-legal-content p,.tc-legal-content li { color:#c8d5dd; }
.tc-legal-content ul { margin:14px 0 22px; padding-left:22px; }
.tc-legal-content li { margin:9px 0; padding-left:5px; }
.tc-legal-content strong { color:#f6fbfd; }

/* News archive */
.tc-news-query .wp-block-post-template {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
}
.tc-news-query .wp-block-post {
  display:flex;
  flex-direction:column;
  min-width:0;
  margin:0 !important;
  overflow:hidden;
  border:1px solid var(--tc-line);
  border-radius:20px;
  background:#0e1d2c;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
  transition:transform .18s ease,border-color .18s ease;
}
.tc-news-query .wp-block-post:hover { transform:translateY(-3px); border-color:rgba(39,215,238,.22); }
.tc-news-card-image { margin:0 !important; overflow:hidden; background:#102436; }
.tc-news-card-image img { width:100%; transition:transform .28s ease; }
.tc-news-query .wp-block-post:hover .tc-news-card-image img { transform:scale(1.025); }
.tc-news-card-copy { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:24px; }
.tc-news-card-copy > * { margin-left:0 !important; margin-right:0 !important; }
.tc-news-card-category { margin:0 0 11px !important; color:var(--tc-cyan); font-size:11px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.tc-news-card-category a { color:inherit; text-decoration:none; }
.tc-news-card-copy .wp-block-post-title { margin:0 !important; font-size:23px !important; line-height:1.2; }
.tc-news-card-copy .wp-block-post-title a { color:#fff; text-decoration:none; }
.tc-news-card-copy .wp-block-post-date { margin:12px 0 0 !important; color:#7f98a8; font-size:12px; }
.tc-news-card-copy .wp-block-post-excerpt { display:flex; flex:1; flex-direction:column; margin:16px 0 0 !important; color:var(--tc-muted); font-size:14px; line-height:1.65; }
.tc-news-card-copy .wp-block-post-excerpt__more-link { display:inline-block; margin-top:16px; color:var(--tc-cyan); font-weight:800; text-decoration:none; }
.tc-news-query .wp-block-query-pagination { gap:8px; margin-top:42px; }
.tc-news-query .page-numbers,.tc-news-query .wp-block-query-pagination a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 13px;
  border:1px solid var(--tc-line);
  border-radius:10px;
  background:#102131;
  color:#cfe0e9;
  font-weight:800;
  text-decoration:none;
}
.tc-news-query .page-numbers.current { background:var(--tc-cyan); color:#04232b; }

/* The Events Calendar */
.post-type-archive-tribe_events .tec-block__archive-events { padding:70px 20px 100px; }
.post-type-archive-tribe_events .tribe-events { color:#d9e5eb; }
.post-type-archive-tribe_events .tribe-events-l-container { max-width:1180px !important; padding:0 !important; }
.post-type-archive-tribe_events .tribe-events-l-container::before {
  content:"COMMUNITY EVENTS\A Events at TogetherCraft";
  display:block;
  margin:0 0 42px;
  padding:42px 44px;
  white-space:pre;
  border:1px solid rgba(39,215,238,.14);
  border-radius:24px;
  background:radial-gradient(circle at 88% 18%,rgba(39,215,238,.13),transparent 18rem),linear-gradient(135deg,#0d2132,#0b1b2a);
  color:#fff;
  font-size:clamp(42px,5.5vw,68px);
  font-weight:500;
  line-height:1.28;
  letter-spacing:-.04em;
  text-align:center;
}
.post-type-archive-tribe_events .tribe-events-l-container::first-line { color:var(--tc-cyan); font-size:12px; font-weight:900; letter-spacing:.16em; }
.post-type-archive-tribe_events .tribe-events-header,
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row,
.post-type-archive-tribe_events .tribe-events-c-subscribe-dropdown__container { color:#d9e5eb; }
.post-type-archive-tribe_events .tribe-events-header__events-bar,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-button,
.post-type-archive-tribe_events .tribe-events-c-view-selector__content,
.post-type-archive-tribe_events .tribe-events-c-messages__message {
  border-color:var(--tc-line) !important;
  border-radius:13px !important;
  background:#0e1d2c !important;
  color:#d9e5eb !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row {
  padding:20px !important;
  border:1px solid var(--tc-line);
  border-radius:20px;
  background:#0e1d2c;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title-link,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-venue,
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator-text,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-time { color:#f3f8fb !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description { color:#aabac5 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-weekday { color:var(--tc-cyan) !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-daynum { color:#fff !important; }

@media(max-width:1000px) {
  .tc-requirements-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-news-query .wp-block-post-template { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:700px) {
  .tc-legacy-page-shell,.tc-news-shell { width:calc(100% - 28px); padding:50px 0 76px; }
  .tc-page-hero,.tc-legal-hero { padding:34px 22px; margin-bottom:32px !important; }
  .tc-info-grid,.tc-requirements-grid,.tc-news-query .wp-block-post-template { grid-template-columns:1fr !important; }
  .tc-info-card { min-height:0; }
  .tc-legal-shell { padding:50px 14px 76px; }
  .tc-legal-content { padding:30px 22px 40px; }
  .post-type-archive-tribe_events .tec-block__archive-events { padding:50px 14px 76px; }
  .post-type-archive-tribe_events .tribe-events-l-container::before { padding:34px 22px; }
}

/* V4.39.4: complete single event presentation for The Events Calendar. */
.single-tribe_events {
  --tec-color-text-primary:#f3f8fb;
  --tec-color-text-secondary:#aabac5;
  --tec-color-accent-primary:#27d7ee;
  --tec-color-border-default:rgba(255,255,255,.10);
}

.single-tribe_events .tec-block__single-event,
.single-tribe_events .tribe-events-pg-template {
  background:transparent !important;
}

.single-tribe_events .tribe-events-pg-template {
  width:min(1120px,calc(100% - 40px)) !important;
  max-width:1120px !important;
  margin:0 auto !important;
  padding:64px 0 104px !important;
}

.single-tribe_events .tribe-events-single {
  color:#d9e5eb !important;
  font-size:16px;
  line-height:1.75;
}

.single-tribe_events .tribe-events-back {
  margin:0 0 28px !important;
}

.single-tribe_events .tribe-events-back a {
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 15px;
  border:1px solid rgba(39,215,238,.22);
  border-radius:11px;
  background:rgba(39,215,238,.07);
  color:#77e7f1 !important;
  font-size:13px;
  font-weight:850;
  text-decoration:none !important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}

.single-tribe_events .tribe-events-back a:hover {
  transform:translateY(-1px);
  border-color:rgba(39,215,238,.42);
  background:rgba(39,215,238,.12);
}

.single-tribe_events .tribe-events-notices {
  margin:0 0 18px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
}

.single-tribe_events .tribe-events-notices ul {
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.single-tribe_events .tribe-events-notices li {
  display:inline-flex;
  align-items:center;
  min-height:34px;
  margin:0 !important;
  padding:0 12px !important;
  border:1px solid rgba(255,190,92,.20);
  border-radius:999px;
  background:rgba(255,190,92,.08);
  color:#ffd08a !important;
  font-size:12px;
  font-weight:850;
  letter-spacing:.035em;
}

.single-tribe_events .tribe-events-single-event-title {
  max-width:900px;
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(44px,6vw,72px) !important;
  font-weight:850 !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}

.single-tribe_events .tribe-events-schedule {
  margin:18px 0 36px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.single-tribe_events .tribe-events-schedule,
.single-tribe_events .tribe-events-schedule div,
.single-tribe_events .tribe-events-schedule span {
  color:#8feaf2 !important;
  font-size:16px !important;
  font-weight:750 !important;
  line-height:1.55 !important;
}

.single-tribe_events #tribe-events-header {
  display:none !important;
}

.single-tribe_events .tribe-events-event-image {
  margin:0 0 28px !important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  background:#0d2031;
  box-shadow:0 24px 60px rgba(0,0,0,.24);
}

.single-tribe_events .tribe-events-event-image img {
  display:block;
  width:100% !important;
  height:auto !important;
  aspect-ratio:16 / 9;
  object-fit:cover;
}

.single-tribe_events .tribe-events-single-event-description {
  margin:0 0 24px !important;
  padding:28px 30px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(15,35,52,.92),rgba(10,26,40,.92));
  box-shadow:0 16px 42px rgba(0,0,0,.13);
}

.single-tribe_events .tribe-events-content,
.single-tribe_events .tribe-events-content p,
.single-tribe_events .tribe-events-content li {
  color:#c3d2da !important;
  font-size:16px !important;
  line-height:1.75 !important;
}

.single-tribe_events .tribe-events-content p:first-child { margin-top:0 !important; }
.single-tribe_events .tribe-events-content p:last-child { margin-bottom:0 !important; }
.single-tribe_events .tribe-events-content a { color:#6fe5ef !important; }

.single-tribe_events .tribe-events-c-subscribe-dropdown__container {
  width:auto !important;
  margin:0 0 24px !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown,
.single-tribe_events .tribe-events-c-subscribe-dropdown__button {
  width:auto !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button {
  min-height:46px;
  padding:0 18px !important;
  border:1px solid rgba(39,215,238,.28) !important;
  border-radius:11px !important;
  background:rgba(39,215,238,.08) !important;
  color:#75e5ef !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button:hover {
  background:rgba(39,215,238,.13) !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button-text {
  color:#75e5ef !important;
  font-weight:850 !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__button svg path {
  fill:#75e5ef !important;
  stroke:#75e5ef !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__content {
  z-index:20;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:12px !important;
  background:#102334 !important;
  box-shadow:0 18px 42px rgba(0,0,0,.30);
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__list-item-link {
  color:#dce9ee !important;
}

.single-tribe_events .tribe-events-c-subscribe-dropdown__list-item-link:hover {
  color:#72e5ef !important;
}

.single-tribe_events .tribe-events-single-section.tribe-events-event-meta {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  width:100% !important;
  margin:0 0 28px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.single-tribe_events .tribe-events-meta-group {
  width:auto !important;
  margin:0 !important;
  padding:24px !important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:#0d1f2f;
}

.single-tribe_events .tribe-events-single-section-title {
  margin:0 0 16px !important;
  color:#fff !important;
  font-size:19px !important;
  font-weight:850 !important;
  line-height:1.25 !important;
}

.single-tribe_events .tribe-events-meta-list {
  margin:0 !important;
  padding:0 !important;
}

.single-tribe_events .tribe-events-meta-item,
.single-tribe_events .tribe-events-meta-value,
.single-tribe_events .tribe-events-meta-item address,
.single-tribe_events .tribe-events-abbr {
  color:#b9cad3 !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

.single-tribe_events .tribe-events-meta-item + .tribe-events-meta-item {
  margin-top:10px !important;
}

.single-tribe_events .tribe-events-meta-label {
  color:#e7f0f4 !important;
  font-weight:800 !important;
}

.single-tribe_events .tribe-events-meta-item a {
  color:#6fe5ef !important;
  text-decoration-color:rgba(111,229,239,.42) !important;
}

.single-tribe_events #tribe-events-footer {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav {
  display:flex !important;
  justify-content:space-between;
  gap:12px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav li {
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:11px;
  background:#0d1f2f;
  color:#dce8ee !important;
  font-size:13px;
  font-weight:800;
  text-decoration:none !important;
}

.single-tribe_events #tribe-events-footer .tribe-events-sub-nav a:hover {
  border-color:rgba(39,215,238,.28);
  color:#70e7f3 !important;
}

@media(max-width:800px) {
  .single-tribe_events .tribe-events-single-section.tribe-events-event-meta {
    grid-template-columns:1fr;
  }
}

@media(max-width:600px) {
  .single-tribe_events .tribe-events-pg-template {
    width:calc(100% - 28px) !important;
    padding:38px 0 76px !important;
  }

  .single-tribe_events .tribe-events-back { margin-bottom:22px !important; }

  .single-tribe_events .tribe-events-single-event-title {
    font-size:42px !important;
  }

  .single-tribe_events .tribe-events-schedule {
    margin:14px 0 28px !important;
  }

  .single-tribe_events .tribe-events-event-image {
    border-radius:16px;
  }

  .single-tribe_events .tribe-events-single-event-description {
    padding:22px;
    border-radius:15px;
  }

  .single-tribe_events .tribe-events-meta-group {
    padding:21px !important;
  }
}

/* V4.39.1: consistent Guide style page heroes and readable calendar */
.tc-legacy-page-shell,
.tc-news-shell {
  width:100%;
  padding:0 0 104px;
}
.tc-page-standard-hero {
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:48px auto 42px !important;
  padding:0 !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 82% 18%,rgba(39,215,238,.13),transparent 24rem),
    radial-gradient(circle at 12% 78%,rgba(29,91,125,.16),transparent 28rem),
    linear-gradient(135deg,#0b1c2b,#0d2638) !important;
  text-align:center;
}
.tc-page-standard-hero::after { display:none !important; }
.tc-page-standard-hero .tc-guide-hero-inner {
  max-width:860px !important;
  margin:auto !important;
  padding:76px 48px 72px !important;
}
.tc-page-standard-hero .tc-guide-hero-title,
.tc-page-standard-hero .wp-block-post-title {
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(46px,5.6vw,70px) !important;
  font-weight:800 !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.tc-page-standard-hero .tc-guide-hero-copy {
  max-width:720px;
  margin:22px auto 0 !important;
  color:#b8c9d3 !important;
  font-size:18px !important;
  line-height:1.75 !important;
}
.tc-page-body { width:min(1080px,calc(100% - 40px)); }
.tc-cute-page-image {
  width:100%;
  margin:0 0 28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  background:#0d2031;
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.tc-cute-page-image img {
  display:block;
  width:100%;
  aspect-ratio:2 / 1;
  object-fit:cover;
}
.tc-legal-shell { padding-top:0; }
.tc-legal-hero { margin-bottom:28px !important; }
.tc-news-query { width:min(1180px,calc(100% - 40px)); margin:0 auto; }

/* Replace the earlier generated Events heading with the shared real hero. */
.post-type-archive-tribe_events .tribe-events-l-container::before { display:none !important; content:none !important; }
.post-type-archive-tribe_events .tec-block__archive-events { padding:0 0 100px; }
.post-type-archive-tribe_events .tc-events-hero { margin-bottom:42px !important; }
.post-type-archive-tribe_events .tribe-common,
.post-type-archive-tribe_events .tribe-events {
  --tec-color-text-primary:#f3f8fb;
  --tec-color-text-secondary:#c8d5dd;
  --tec-color-text-disabled:#91a6b4;
  --tec-color-text-events-title:#ffffff;
  --tec-color-text-event-title:#ffffff;
  --tec-color-link-primary:#27d7ee;
  --tec-color-link-accent:#70e7f3;
  --tec-color-accent-primary:#27d7ee;
  --tec-color-background-events:#08121d;
  --tec-color-background-primary:#0e1d2c;
  --tec-color-background-secondary:#102436;
  --tec-color-border-default:rgba(255,255,255,.12);
  --tec-color-border-secondary:rgba(255,255,255,.09);
  color:#d9e5eb !important;
  background:transparent !important;
}
.post-type-archive-tribe_events .tribe-events-l-container { width:min(1180px,calc(100% - 40px)) !important; }
.post-type-archive-tribe_events .tribe-common a,
.post-type-archive-tribe_events .tribe-common button,
.post-type-archive-tribe_events .tribe-common input,
.post-type-archive-tribe_events .tribe-common time,
.post-type-archive-tribe_events .tribe-common span,
.post-type-archive-tribe_events .tribe-common p,
.post-type-archive-tribe_events .tribe-common h1,
.post-type-archive-tribe_events .tribe-common h2,
.post-type-archive-tribe_events .tribe-common h3 {
  border-color:inherit;
}
.post-type-archive-tribe_events .tribe-common h1,
.post-type-archive-tribe_events .tribe-common h2,
.post-type-archive-tribe_events .tribe-common h3,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title-link,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-title,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-title-link {
  color:#fff !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-venue,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description,
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator-text,
.post-type-archive-tribe_events .tribe-events-calendar-month__day-date-link,
.post-type-archive-tribe_events .tribe-events-calendar-month__day-date-daynum,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-time,
.post-type-archive-tribe_events .tribe-events-c-view-selector__list-item-text,
.post-type-archive-tribe_events .tribe-events-c-messages__message-list-item {
  color:#c8d5dd !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description p,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description a { color:#b8c9d3 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row,
.post-type-archive-tribe_events .tribe-events-calendar-month,
.post-type-archive-tribe_events .tribe-events-calendar-month__body,
.post-type-archive-tribe_events .tribe-events-calendar-month__day,
.post-type-archive-tribe_events .tribe-events-calendar-month__week,
.post-type-archive-tribe_events .tribe-events-calendar-month-mobile-events__mobile-event {
  border-color:rgba(255,255,255,.09) !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row,
.post-type-archive-tribe_events .tribe-events-calendar-month__day,
.post-type-archive-tribe_events .tribe-events-calendar-month-mobile-events__mobile-event {
  background:#0e1d2c !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper img,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image {
  border-radius:14px !important;
}
.post-type-archive-tribe_events .tribe-events-header__events-bar,
.post-type-archive-tribe_events .tribe-events-c-view-selector__content,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-container,
.post-type-archive-tribe_events .datepicker,
.post-type-archive-tribe_events .tribe-events-c-subscribe-dropdown__list {
  border:1px solid rgba(255,255,255,.1) !important;
  background:#0e1d2c !important;
  color:#f3f8fb !important;
}
.post-type-archive-tribe_events .tribe-events-c-top-bar__nav-link-icon-svg path,
.post-type-archive-tribe_events .tribe-events-c-view-selector__button-icon-svg path,
.post-type-archive-tribe_events .tribe-events-c-view-selector__list-item-icon-svg path {
  fill:#9bb0bd !important;
}
.post-type-archive-tribe_events .tribe-events-c-top-bar__nav-link:hover .tribe-events-c-top-bar__nav-link-icon-svg path,
.post-type-archive-tribe_events .tribe-events-c-view-selector__list-item-link:hover .tribe-events-c-view-selector__list-item-icon-svg path {
  fill:#27d7ee !important;
}
.post-type-archive-tribe_events .tribe-events-c-subscribe-dropdown__button,
.post-type-archive-tribe_events .tribe-common-c-btn-border,
.post-type-archive-tribe_events .tribe-common-c-btn-border-small {
  border-color:rgba(39,215,238,.28) !important;
  background:#10283f !important;
  color:#70e7f3 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__header-column-title,
.post-type-archive-tribe_events .tribe-events-calendar-month__header-column-title-desktop { color:#9fb3c0 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-month__day-cell--mobile:focus,
.post-type-archive-tribe_events .tribe-events-calendar-month__day-cell--mobile:hover,
.post-type-archive-tribe_events .tribe-events-calendar-month__day--current { background:#123047 !important; }

@media(max-width:700px) {
  .tc-page-standard-hero { width:calc(100% - 28px) !important; margin:28px auto 30px !important; }
  .tc-page-standard-hero .tc-guide-hero-inner { padding:54px 22px 50px !important; }
  .tc-page-standard-hero .tc-guide-hero-title,.tc-page-standard-hero .wp-block-post-title { font-size:clamp(40px,12vw,54px) !important; }
  .tc-page-standard-hero .tc-guide-hero-copy { font-size:16px !important; }
  .tc-page-body,.tc-news-query,.post-type-archive-tribe_events .tribe-events-l-container { width:calc(100% - 28px) !important; }
}

/* V4.39.2: unboxed inner page headings and a purpose built Events list */
.tc-page-standard-hero,
.tc-page-standard-hero.tc-guide-hero,
.tc-legal-hero.tc-guide-hero,
body.tc-guide-page .tc-guide-hero {
  width:min(900px,calc(100% - 40px)) !important;
  margin:54px auto 48px !important;
  overflow:visible !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.tc-page-standard-hero .tc-guide-hero-inner {
  max-width:900px !important;
  padding:18px 20px 12px !important;
}
body.tc-guide-page .tc-guide-hero-inner {
  max-width:900px !important;
  padding:18px 20px 12px !important;
}
.tc-page-standard-hero .tc-guide-hero-title,
.tc-page-standard-hero .wp-block-post-title {
  font-size:clamp(44px,5vw,64px) !important;
}
.tc-page-standard-hero .tc-guide-hero-copy {
  max-width:700px;
  margin-top:18px !important;
  color:#a9bdc9 !important;
  font-size:16px !important;
}

.post-type-archive-tribe_events .tec-block__archive-events {
  padding-bottom:110px;
  background:#08121d !important;
}
.post-type-archive-tribe_events .tribe-events-l-container {
  max-width:1180px !important;
}
.post-type-archive-tribe_events .tribe-events-header {
  margin:0 0 36px !important;
}
.post-type-archive-tribe_events .tribe-events-header__events-bar {
  padding:8px 12px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:14px !important;
  background:#0d1c2a !important;
}
.post-type-archive-tribe_events .tribe-events-c-top-bar {
  margin:22px 0 0 !important;
}
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-button,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-time,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-mobile,
.post-type-archive-tribe_events .tribe-events-c-top-bar__datepicker-desktop {
  color:#e8f2f6 !important;
}
.post-type-archive-tribe_events .tribe-events-header__messages {
  margin:24px 0 0 !important;
}
.post-type-archive-tribe_events .tribe-events-c-messages__message {
  padding:18px 22px !important;
  border:1px solid rgba(39,215,238,.12) !important;
  border-radius:14px !important;
  background:#0f2233 !important;
  color:#dce9ee !important;
  text-align:center;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator {
  margin:48px 0 22px !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator::after {
  border-color:rgba(255,255,255,.1) !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__month-separator-text {
  color:#fff !important;
  font-size:28px !important;
  font-weight:700 !important;
  letter-spacing:-.025em;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event-row {
  display:grid !important;
  grid-template-columns:94px minmax(0,1fr) !important;
  gap:0 !important;
  margin:0 0 20px !important;
  padding:0 !important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:20px !important;
  background:#0d1d2c !important;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.22) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.2);
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag {
  display:flex !important;
  align-items:flex-start;
  justify-content:center;
  width:auto !important;
  min-width:0 !important;
  padding:31px 12px !important;
  border-right:1px solid rgba(255,255,255,.08);
  background:#10283b !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-datetime {
  display:flex !important;
  flex-direction:column;
  align-items:center;
  gap:4px;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-weekday {
  color:#70e7f3 !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-daynum {
  color:#fff !important;
  font-size:34px !important;
  font-weight:750 !important;
  line-height:1 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-wrapper {
  width:auto !important;
  min-width:0 !important;
  padding:0 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(280px,360px) !important;
  gap:0 !important;
  min-height:230px;
  margin:0 !important;
  padding:0 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-details {
  grid-column:1;
  grid-row:1;
  width:auto !important;
  min-width:0 !important;
  padding:30px 32px !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper {
  grid-column:2;
  grid-row:1;
  width:auto !important;
  min-width:0 !important;
  height:100%;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden;
  background:#102436;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper a {
  display:block;
  width:100%;
  height:100%;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image {
  display:block;
  width:100% !important;
  height:100% !important;
  min-height:230px;
  object-fit:cover;
  border-radius:0 !important;
  transition:transform .28s ease;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-featured-image {
  transform:scale(1.025);
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title {
  margin:0 0 10px !important;
  font-size:27px !important;
  font-weight:650 !important;
  line-height:1.15 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title-link {
  color:#fff !important;
  text-decoration:none !important;
  border:0 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-title-link:hover { color:#70e7f3 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime-wrapper {
  margin:0 0 14px !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime *,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime-wrapper,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-datetime-wrapper * {
  color:#70e7f3 !important;
  font-size:13px !important;
  font-weight:800 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-venue {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:0 0 16px !important;
  color:#dce8ed !important;
  font-size:13px !important;
  font-style:normal !important;
  line-height:1.5 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-list__event-venue-title { color:#fff !important; font-weight:800 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-venue-address { color:#b9cad3 !important; }
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description,
.post-type-archive-tribe_events .tribe-events-calendar-list__event-description p {
  margin:0 !important;
  color:#b4c5cf !important;
  font-size:14px !important;
  line-height:1.65 !important;
}
.post-type-archive-tribe_events .tribe-events-c-nav,
.post-type-archive-tribe_events .tribe-events-c-nav__list {
  border-color:rgba(255,255,255,.09) !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month {
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:18px;
  background:#0d1d2c !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__header-column {
  padding:12px 8px !important;
  background:#0a1724 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__day {
  background:#0f2233 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__day:hover {
  background:#122a3e !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__day-date-daynum,
.post-type-archive-tribe_events .tribe-events-calendar-month__day-date-link {
  color:#dce8ed !important;
  font-weight:750 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-title-link,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-tooltip-title-link {
  color:#fff !important;
  font-weight:750 !important;
  text-decoration:none !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-title-link:hover,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-tooltip-title-link:hover {
  color:#70e7f3 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-datetime,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-datetime * {
  color:#8fdfea !important;
  font-size:11px !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__multiday-event-bar,
.post-type-archive-tribe_events .tribe-events-calendar-month__multiday-event-bar-inner {
  border-radius:999px !important;
  background:#17445e !important;
  color:#dff8fa !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__multiday-event-bar-title {
  color:#dff8fa !important;
  font-weight:750 !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-tooltip {
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:14px !important;
  background:#0d1d2c !important;
  box-shadow:0 18px 45px rgba(0,0,0,.35) !important;
}
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-tooltip-description,
.post-type-archive-tribe_events .tribe-events-calendar-month__calendar-event-tooltip-description p {
  color:#b8c9d3 !important;
}

@media(max-width:900px) {
  .post-type-archive-tribe_events .tribe-events-calendar-list__event,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event {
    grid-template-columns:1fr !important;
  }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper {
    grid-column:1;
    grid-row:1;
    height:230px;
  }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-details {
    grid-column:1;
    grid-row:2;
  }
}
@media(max-width:600px) {
  .tc-page-standard-hero,.tc-page-standard-hero.tc-guide-hero,.tc-legal-hero.tc-guide-hero {
    width:calc(100% - 28px) !important;
    margin:32px auto 34px !important;
  }
  body.tc-guide-page .tc-guide-hero {
    width:calc(100% - 28px) !important;
    margin:32px auto 34px !important;
  }
  body.tc-guide-page .tc-guide-hero-inner { padding:12px 6px 8px !important; }
  .tc-page-standard-hero .tc-guide-hero-inner { padding:12px 6px 8px !important; }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-row,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event-row {
    grid-template-columns:1fr !important;
  }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag {
    justify-content:flex-start;
    padding:13px 20px !important;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-datetime { flex-direction:row; gap:8px; }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-date-tag-daynum { font-size:22px !important; }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-details { padding:24px 22px !important; }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper { height:190px; }
  .post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image { min-height:190px; }
}

@media(max-width:1000px) {
  .tc-hero-grid,.tc-split { grid-template-columns:1fr; }
  .tc-hero-collage { min-height:500px; }
  .tc-features-grid { grid-template-columns:repeat(2,1fr); }
  .tc-strip-grid,.tc-steps { grid-template-columns:repeat(2,1fr); }
  .tc-reviewed-card { grid-template-columns:1fr; text-align:center; }
  .tc-events-grid { grid-template-columns:1fr; }
  .tc-news .wp-block-post-template { grid-template-columns:1fr; }
  .tc-footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:782px) { .admin-bar .tc-header { top:46px; } }
@media(max-width:600px) {
  .tc-section { padding:72px 14px; }
  .tc-header-inner { min-height:86px; }
  .tc-header .wp-block-site-logo img { max-height:64px; }
  .tc-header .tc-header-join { display:none; }
  .tc-hero { padding:45px 14px 70px; }
  .tc-hero-copy h1 { font-size:46px !important; }
  .tc-hero-collage { min-height:420px; }
  .tc-shot-one { width:82%; height:265px; }
  .tc-shot-two { width:55%; height:165px; }
  .tc-shot-three { width:48%; height:155px; }
  .tc-hero-logo { width:175px !important; }
  .tc-strip-grid,.tc-features-grid,.tc-steps,.tc-footer-grid { grid-template-columns:1fr; }
  .tc-section-row { display:block !important; }
  .tc-section-row .wp-block-buttons { margin-top:22px; }
  .tc-gallery-grid { display:grid !important; grid-template-columns:1fr; grid-auto-rows:220px; }
  .tc-gallery-grid .wp-block-image:nth-child(n) { grid-column:auto; grid-row:auto; }
}


/* V1.1: keep the editorial story sections comfortably contained on large screens */
.tc-split {
  width:min(1180px, calc(100% - 48px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
  gap:56px !important;
}
.tc-split-image img {
  max-height:520px;
}
.tc-split-copy {
  max-width:520px;
}
.tc-split > .tc-split-copy:last-child {
  justify-self:start;
}
.tc-split > .tc-split-copy:first-child {
  justify-self:end;
}
@media(max-width:1000px) {
  .tc-split {
    width:min(760px, calc(100% - 36px)) !important;
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .tc-split-copy {
    max-width:none;
    justify-self:stretch !important;
  }
  .tc-split-image img {
    max-height:none;
  }
}
@media(max-width:600px) {
  .tc-split {
    width:calc(100% - 28px) !important;
  }
}


/* V1.3: The Events Calendar pagination */
.tribe-events .tribe-events-c-pagination,
.tribe-common .tribe-events-c-pagination,
.tribe-events-c-pagination {
  margin: 44px auto 20px !important;
  width: 100% !important;
}

.tribe-events .tribe-events-c-pagination__list,
.tribe-common .tribe-events-c-pagination__list,
.tribe-events-c-pagination__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.tribe-events .tribe-events-c-pagination__list-item,
.tribe-common .tribe-events-c-pagination__list-item,
.tribe-events-c-pagination__list-item {
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.tribe-events .tribe-events-c-pagination__page,
.tribe-events .tribe-events-c-pagination__link,
.tribe-common .tribe-events-c-pagination__page,
.tribe-common .tribe-events-c-pagination__link,
.tribe-events-c-pagination__page,
.tribe-events-c-pagination__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 42px !important;
  height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 10px !important;
  background: #102131 !important;
  color: #cfe0e9 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease !important;
}

.tribe-events .tribe-events-c-pagination__page:hover,
.tribe-events .tribe-events-c-pagination__link:hover,
.tribe-common .tribe-events-c-pagination__page:hover,
.tribe-common .tribe-events-c-pagination__link:hover,
.tribe-events-c-pagination__page:hover,
.tribe-events-c-pagination__link:hover {
  transform: translateY(-2px) !important;
  background: #153045 !important;
  border-color: rgba(39,215,238,.34) !important;
  color: #7cebf5 !important;
}

.tribe-events .tribe-events-c-pagination__page--active,
.tribe-common .tribe-events-c-pagination__page--active,
.tribe-events-c-pagination__page--active,
.tribe-events .tribe-events-c-pagination__page[aria-current="page"],
.tribe-common .tribe-events-c-pagination__page[aria-current="page"],
.tribe-events-c-pagination__page[aria-current="page"] {
  background: linear-gradient(135deg,#27d7ee,#18b7d2) !important;
  border-color: transparent !important;
  color: #052631 !important;
  box-shadow: 0 10px 24px rgba(39,215,238,.16) !important;
}

.tribe-events .tribe-events-c-pagination__button,
.tribe-common .tribe-events-c-pagination__button,
.tribe-events-c-pagination__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(39,215,238,.18) !important;
  border-radius: 10px !important;
  background: rgba(39,215,238,.07) !important;
  color: #6fe8f3 !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.tribe-events .tribe-events-c-pagination__button:hover,
.tribe-common .tribe-events-c-pagination__button:hover,
.tribe-events-c-pagination__button:hover {
  background: rgba(39,215,238,.12) !important;
  border-color: rgba(39,215,238,.32) !important;
  color: #a7f3f8 !important;
}

/* Older / fallback TEC pagination markup */
.tribe-events-pagination ul,
.tribe-pagination,
.tribe-events-nav-pagination ul {
  list-style: none !important;
  margin: 40px 0 20px !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.tribe-events-pagination li,
.tribe-events-nav-pagination li {
  margin: 0 !important;
  padding: 0 !important;
}

.tribe-events-pagination a,
.tribe-events-pagination span,
.tribe-events-nav-pagination a,
.tribe-events-nav-pagination span,
.tribe-pagination a,
.tribe-pagination span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 42px !important;
  height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 10px !important;
  background: #102131 !important;
  color: #cfe0e9 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.tribe-events-pagination .current,
.tribe-pagination .current,
.tribe-events-nav-pagination .current {
  background: linear-gradient(135deg,#27d7ee,#18b7d2) !important;
  border-color: transparent !important;
  color: #052631 !important;
}

@media(max-width:600px) {
  .tribe-events .tribe-events-c-pagination__list,
  .tribe-common .tribe-events-c-pagination__list,
  .tribe-events-c-pagination__list,
  .tribe-events-pagination ul,
  .tribe-pagination,
  .tribe-events-nav-pagination ul {
    gap: 6px !important;
  }

  .tribe-events .tribe-events-c-pagination__page,
  .tribe-events .tribe-events-c-pagination__link,
  .tribe-common .tribe-events-c-pagination__page,
  .tribe-common .tribe-events-c-pagination__link,
  .tribe-events-c-pagination__page,
  .tribe-events-c-pagination__link,
  .tribe-events-pagination a,
  .tribe-events-pagination span,
  .tribe-events-nav-pagination a,
  .tribe-events-nav-pagination span,
  .tribe-pagination a,
  .tribe-pagination span {
    min-width: 38px !important;
    height: 38px !important;
    padding: 0 11px !important;
  }
}


/* V1.4: consistent homepage section typography */
.tc-section-title h2,
.tc-section-row .tc-section-title h2 {
  margin: 10px 0 14px !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(42px, 4.3vw, 58px) !important;
  font-weight: 500 !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  color: #f7fbfd !important;
}

.tc-section-title > .tc-muted,
.tc-section-row .tc-section-title > .tc-muted {
  margin-top: 0 !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: #aabac5 !important;
}

.tc-section-title .tc-eyebrow,
.tc-section-row .tc-section-title .tc-eyebrow {
  margin-bottom: 0 !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: #27d7ee !important;
}

/* Keep cards visually subordinate to the section heading */
.tc-news .wp-block-post-title,
.tc-event-body h3,
.tc-feature-card h3,
.tc-step h3 {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 500 !important;
}

/* WordPress sometimes gives button blocks a different font stack */
.wp-block-button__link,
.tc-primary-button .wp-block-button__link,
.tc-secondary-button .wp-block-button__link {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

/* Give left aligned section headers the same breathing room as centred ones */
.tc-section-row .tc-section-title {
  max-width: 820px !important;
}

@media(max-width:600px) {
  .tc-section-title h2,
  .tc-section-row .tc-section-title h2 {
    font-size: 38px !important;
  }
  .tc-section-title > .tc-muted,
  .tc-section-row .tc-section-title > .tc-muted {
    font-size: 16px !important;
  }
}


/* V1.6: remove WordPress flow margins from custom CSS grid children.
   WordPress adds block-gap margins to sibling blocks by default. Those margins
   must be reset when the parent has been turned into a CSS grid. */
.tc-strip-grid > *,
.tc-steps > *,
.tc-features-grid > *,
.tc-events-grid > *,
.tc-gallery-grid > *,
.tc-footer-grid > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Quick feature strip */
.tc-strip-grid {
  align-items: stretch !important;
}
.tc-strip-card {
  height: 100% !important;
  min-height: 106px;
  align-self: stretch !important;
}
.tc-strip-card > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

/* Joining steps */
.tc-steps {
  align-items: stretch !important;
}
.tc-step {
  height: 100% !important;
  min-height: 188px;
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
.tc-step > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}
.tc-step .tc-step-num {
  margin: 0 0 14px !important;
}
.tc-step h3 {
  margin: 0 0 14px !important;
}
.tc-step > p:last-child {
  margin: 0 !important;
}

/* Keep other card grids perfectly aligned as content changes */
.tc-features-grid,
.tc-events-grid {
  align-items: stretch !important;
}
.tc-feature-card,
.tc-event-card {
  height: 100%;
  align-self: stretch;
}

@media(max-width:600px) {
  .tc-strip-card,
  .tc-step {
    min-height: 0;
  }
}


/* V1.7: make the two text based feature icons match the other feature artwork */
.tc-feature-emoji {
  width:76px !important;
  height:76px !important;
  margin:0 auto 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:58px !important;
  line-height:1 !important;
  color:inherit !important;
}

/* Replace the temporary whitelist tick with a shield while preserving the editable block. */
.tc-features-grid > .tc-feature-card:nth-child(12) .tc-feature-emoji {
  font-size:0 !important;
}
.tc-features-grid > .tc-feature-card:nth-child(12) .tc-feature-emoji::before {
  content:"🛡️";
  display:block;
  font-size:58px;
  line-height:1;
}


/* V1.8: final homepage visual polish */

/* Smooth interaction without making the page feel animated */
.tc-feature-card,
.tc-event-card,
.tc-news .wp-block-post,
.tc-gallery-grid .wp-block-image,
.tc-strip-card,
.tc-step,
.tc-primary-button .wp-block-button__link,
.tc-secondary-button .wp-block-button__link {
  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

/* Keep secondary actions visually quieter than Join buttons */
.tc-secondary-button .wp-block-button__link {
  background:#102131 !important;
  border:1px solid rgba(39,215,238,.20) !important;
  color:#dceaf0 !important;
  box-shadow:none !important;
}
.tc-secondary-button .wp-block-button__link:hover {
  background:#153045 !important;
  border-color:rgba(39,215,238,.38) !important;
  color:#ffffff !important;
}

/* Small card lift */
.tc-strip-card:hover,
.tc-step:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.18);
}
.tc-feature-card:hover,
.tc-event-card:hover,
.tc-news .wp-block-post:hover {
  border-color:rgba(39,215,238,.20);
}

/* Event cards stay equal height and keep their action aligned */
.tc-events-grid {
  align-items:stretch !important;
}
.tc-event-card {
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}
.tc-event-body {
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}
.tc-event-body p {
  flex:1 1 auto;
}
.tc-event-more {
  margin-top:auto !important;
  display:inline-block;
}

/* News cards stay equal height and keep Continue Reading aligned */
.tc-news .wp-block-post-template {
  align-items:stretch !important;
}
.tc-news .wp-block-post {
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}
.tc-news .wp-block-post-featured-image img {
  transition:transform .28s ease;
}
.tc-news .wp-block-post:hover .wp-block-post-featured-image img {
  transform:scale(1.025);
}
.tc-news .wp-block-post-excerpt {
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  margin-bottom:0 !important;
}
.tc-news .wp-block-post-excerpt__excerpt {
  flex:1 1 auto;
}
.tc-news .wp-block-post-excerpt__more-link {
  display:inline-block;
  margin-top:16px;
  color:var(--tc-cyan) !important;
  font-weight:800;
  text-decoration:none;
}

/* Gallery photos feel a little more alive */
.tc-gallery-grid .wp-block-image {
  position:relative;
}
.tc-gallery-grid .wp-block-image img {
  transition:transform .32s ease, filter .32s ease;
}
.tc-gallery-grid .wp-block-image:hover img {
  transform:scale(1.018);
  filter:brightness(1.04);
}

/* Slightly soften the quick facts so they do not compete with the hero */
.tc-hero-facts p {
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.11);
}

/* Cleaner section transitions */
.tc-reviewed-card,
.tc-feature-card,
.tc-event-card,
.tc-news .wp-block-post,
.tc-step {
  box-shadow:0 10px 28px rgba(0,0,0,.10);
}

/* Keep focus states visible for keyboard users */
.tc-primary-button .wp-block-button__link:focus-visible,
.tc-secondary-button .wp-block-button__link:focus-visible,
.tc-event-more:focus-visible,
.tc-news a:focus-visible {
  outline:2px solid var(--tc-cyan);
  outline-offset:3px;
}


/* V1.9: remove WordPress flow spacing from Query Loop grid items.
   Without this, posts two and three receive a top margin even though the
   Post Template has been converted to a CSS grid. */
.tc-news .wp-block-post-template > *,
.tc-news .wp-block-post-template.is-layout-flow > *,
.tc-news .wp-block-post-template.is-layout-flow > * + * {
  margin-block-start:0 !important;
  margin-block-end:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

.tc-news .wp-block-post-template {
  align-items:stretch !important;
}

.tc-news .wp-block-post {
  align-self:stretch !important;
  min-height:100% !important;
}

/* Keep all card image areas identical */
.tc-news .wp-block-post-featured-image {
  flex:0 0 205px !important;
  height:205px !important;
}

/* Consistent spacing inside every news card */
.tc-news .wp-block-post-date {
  margin:0 !important;
  padding-top:8px !important;
}

.tc-news .wp-block-post-title {
  margin:18px 0 0 !important;
}

.tc-news .wp-block-post-excerpt {
  margin-top:18px !important;
}


/* V2.0: centre text based feature icons.
   The general .tc-feature-card p rule has higher specificity than the icon rule,
   so restore the intended automatic horizontal margins here. */
.tc-feature-card .tc-feature-emoji {
  margin:0 auto 18px !important;
  align-self:center !important;
  justify-self:center !important;
  text-align:center !important;
}


/* V2.2: TogetherCraft community review grid and pagination */
.tc-community-reviews {
  margin-top:36px;
}
.tc-community-reviews-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;
  align-items:stretch;
}
.tc-community-reviews-grid > * {
  margin:0 !important;
}
.tc-community-reviews-grid .glsr-review {
  height:100%;
  padding:26px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:18px !important;
  box-shadow:0 10px 28px rgba(0,0,0,.10);
}
.tc-community-reviews-grid .glsr-review-title,
.tc-community-reviews-grid h3,
.tc-community-reviews-grid h4 {
  color:#f7fbfd !important;
}
.tc-community-reviews-grid .glsr-review-content,
.tc-community-reviews-grid .glsr-review-author,
.tc-community-reviews-grid .glsr-review-date {
  color:#c7d5de !important;
}
.tc-review-pagination {
  margin:34px 0 0;
  width:100%;
}
.tc-review-pagination ul {
  list-style:none !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
}
.tc-review-pagination li {
  margin:0 !important;
  padding:0 !important;
}
.tc-review-pagination .page-numbers {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:42px !important;
  height:42px !important;
  padding:0 14px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:10px !important;
  background:#102131 !important;
  color:#cfe0e9 !important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-decoration:none !important;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease !important;
}
.tc-review-pagination a.page-numbers:hover {
  transform:translateY(-2px);
  background:#153045 !important;
  border-color:rgba(39,215,238,.34) !important;
  color:#7cebf5 !important;
}
.tc-review-pagination .page-numbers.current {
  background:linear-gradient(135deg,#27d7ee,#18b7d2) !important;
  border-color:transparent !important;
  color:#052631 !important;
  box-shadow:0 10px 24px rgba(39,215,238,.16);
}
.tc-review-pagination .page-numbers.dots {
  border-color:transparent !important;
  background:transparent !important;
  min-width:28px !important;
  padding:0 4px !important;
}
.tc-review-pagination .prev.page-numbers,
.tc-review-pagination .next.page-numbers {
  padding:0 17px !important;
  color:#72e9f4 !important;
  border-color:rgba(39,215,238,.18) !important;
  background:rgba(39,215,238,.07) !important;
}
@media(max-width:760px) {
  .tc-community-reviews-grid {
    grid-template-columns:1fr;
  }
  .tc-review-pagination ul {
    gap:6px !important;
  }
  .tc-review-pagination .page-numbers {
    min-width:38px !important;
    height:38px !important;
    padding:0 11px !important;
  }
}


/* V2.3: more visual homepage event cards */
.tc-events-grid {
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:28px !important;
  align-items:stretch !important;
}

.tc-event-card.tc-event-card--overlay {
  background:transparent !important;
  border:0 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  box-shadow:none !important;
  min-height:360px !important;
  position:relative !important;
}

.tc-event-card--overlay .tc-event-linkwrap {
  display:block !important;
  height:100% !important;
  color:inherit !important;
  text-decoration:none !important;
}

.tc-event-card--overlay .tc-event-image {
  position:relative !important;
  height:100% !important;
  min-height:360px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#0f2030 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.20) !important;
}

.tc-event-card--overlay .tc-event-image img,
.tc-event-card--overlay .tc-event-image-fallback {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.tc-event-card--overlay .tc-event-image-fallback {
  background:linear-gradient(160deg,#17334a,#0b1521) !important;
}

.tc-event-card--overlay .tc-event-overlay {
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(to top, rgba(7,16,24,.92) 0%, rgba(7,16,24,.60) 28%, rgba(7,16,24,.18) 55%, rgba(7,16,24,.06) 100%) !important;
  pointer-events:none !important;
}

.tc-event-card--overlay .tc-event-badges {
  position:absolute !important;
  top:16px !important;
  left:16px !important;
  z-index:2 !important;
}

.tc-event-card--overlay .tc-event-badge {
  display:inline-flex !important;
  align-items:center !important;
  min-height:26px !important;
  padding:0 12px !important;
  border-radius:8px !important;
  background:#2bbcff !important;
  color:#ffffff !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

.tc-event-card--overlay .tc-event-body {
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  bottom:18px !important;
  z-index:2 !important;
  padding:0 !important;
  display:block !important;
}

.tc-event-card--overlay .tc-event-meta {
  margin:0 0 10px !important;
  color:rgba(255,255,255,.90) !important;
  font-size:13px !important;
  line-height:1.4 !important;
  font-weight:500 !important;
  text-transform:uppercase !important;
}

.tc-event-card--overlay .tc-event-body h3 {
  margin:0 !important;
  color:#ffffff !important;
  font-size:18px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  text-shadow:0 2px 14px rgba(0,0,0,.35) !important;
}

.tc-event-card--overlay:hover .tc-event-image img {
  transform:scale(1.04) !important;
}
.tc-event-card--overlay:hover .tc-event-image {
  border-color:rgba(43,188,255,.34) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.26) !important;
}

.tc-event-card--overlay .tc-event-more,
.tc-event-card--overlay p,
.tc-event-card--overlay .tc-event-time,
.tc-event-card--overlay .tc-event-date {
  display:none !important;
}

@media(max-width:1280px) {
  .tc-events-grid {
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }
}
@media(max-width:920px) {
  .tc-events-grid {
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}
@media(max-width:640px) {
  .tc-events-grid {
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .tc-event-card.tc-event-card--overlay,
  .tc-event-card--overlay .tc-event-image {
    min-height:330px !important;
  }
}


/* V2.5: Site Reviews interaction fixes */
#community.tc-community-reviews {
  scroll-margin-top:128px;
}

.tc-community-reviews-glsr,
.tc-community-reviews-glsr .glsr-reviews {
  width:100% !important;
}

.tc-community-reviews-glsr .tc-community-reviews-grid {
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

/* Make excerpt controls clearly interactive. */
.tc-community-reviews a,
.tc-community-reviews button {
  cursor:pointer;
}

.tc-community-reviews .glsr-review-content a,
.tc-community-reviews .glsr-review-content button {
  color:var(--tc-cyan) !important;
  text-decoration:none !important;
  font-weight:700 !important;
}

.tc-community-reviews .glsr-review-content a:hover,
.tc-community-reviews .glsr-review-content button:hover {
  color:#9af3f8 !important;
}

@media(max-width:760px) {
  #community.tc-community-reviews {
    scroll-margin-top:96px;
  }
  .tc-community-reviews-glsr .tc-community-reviews-grid {
    grid-template-columns:1fr !important;
  }
}


/* V2.6: stack the quick feature strip content more cleanly */
.tc-strip-card {
  display:grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-areas:
    "icon title"
    "icon copy" !important;
  column-gap:16px !important;
  row-gap:4px !important;
  align-items:center !important;
  padding:18px 20px !important;
}

.tc-strip-card .tc-strip-icon {
  grid-area:icon !important;
  align-self:center !important;
  justify-self:start !important;
  margin:0 !important;
  font-size:28px !important;
  line-height:1 !important;
}

.tc-strip-card h3 {
  grid-area:title !important;
  align-self:end !important;
  margin:0 !important;
  font-size:15px !important;
  line-height:1.15 !important;
}

.tc-strip-card p {
  grid-area:copy !important;
  align-self:start !important;
  margin:0 !important;
  color:#93a8b7 !important;
  font-size:12px !important;
  line-height:1.35 !important;
}

@media(max-width:600px) {
  .tc-strip-card {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    column-gap:14px !important;
  }

  .tc-strip-card .tc-strip-icon {
    font-size:26px !important;
  }
}


/* V2.7: Latest News titles use white, keeping cyan for links and accents */
.tc-news .wp-block-post-title,
.tc-news .wp-block-post-title a {
  color:#f7fbfd !important;
}

.tc-news .wp-block-post-title a:hover,
.tc-news .wp-block-post-title a:focus {
  color:#ffffff !important;
  text-decoration:none !important;
}


/* V2.8: stronger display font for the homepage hero only */
.tc-hero-copy h1,
html body.home .tc-hero-copy h1 {
  font-family:"Arial Black","Helvetica Neue",Arial,sans-serif !important;
  font-weight:900 !important;
  letter-spacing:-.052em !important;
  line-height:.98 !important;
  text-wrap:balance;
}


/* V2.9: restore the feature card proportions from the approved V20 concept */
.tc-features > .wp-block-group.alignwide {
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.tc-features-grid {
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
}

@media(max-width:1000px) {
  .tc-features > .wp-block-group.alignwide {
    width:min(760px, calc(100% - 36px)) !important;
  }

  .tc-features-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:600px) {
  .tc-features > .wp-block-group.alignwide {
    width:calc(100% - 28px) !important;
  }

  .tc-features-grid {
    grid-template-columns:1fr !important;
  }
}


/* V3.0: align the Welcome area to the same 1180px grid as Features */
.tc-strip > .tc-strip-grid,
.tc-split {
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Keep the welcome heading centred inside that same visual width */
.tc-welcome > .tc-eyebrow,
.tc-welcome > h2,
.tc-welcome > .tc-body-copy {
  margin-left:auto !important;
  margin-right:auto !important;
}

.tc-welcome > h2 {
  max-width:1180px !important;
}

@media(max-width:1000px) {
  .tc-strip > .tc-strip-grid,
  .tc-split {
    width:min(760px, calc(100% - 36px)) !important;
  }
}

@media(max-width:600px) {
  .tc-strip > .tc-strip-grid,
  .tc-split {
    width:calc(100% - 28px) !important;
  }
}


/* V3.1: one consistent 1180px content grid across the whole site */
.tc-header-inner,
.tc-hero-grid,
.tc-reviewed-card,
.tc-events > .wp-block-group.alignwide,
.tc-gallery > .wp-block-group.alignwide,
.tc-reviews > .wp-block-group.alignwide,
.tc-news > .wp-block-group.alignwide,
.tc-join > .wp-block-group.alignwide,
.tc-footer-grid,
.tc-footer-legal {
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* The existing Welcome and Features sections already use this same desktop width. */
.tc-strip > .tc-strip-grid,
.tc-split,
.tc-features > .wp-block-group.alignwide {
  width:min(1180px, calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Keep the hero's two-column proportions while aligning its outer edges. */
.tc-hero-grid {
  box-sizing:border-box !important;
}

@media(max-width:1000px) {
  .tc-header-inner,
  .tc-hero-grid,
  .tc-reviewed-card,
  .tc-events > .wp-block-group.alignwide,
  .tc-gallery > .wp-block-group.alignwide,
  .tc-reviews > .wp-block-group.alignwide,
  .tc-news > .wp-block-group.alignwide,
  .tc-join > .wp-block-group.alignwide,
  .tc-footer-grid,
  .tc-footer-legal,
  .tc-strip > .tc-strip-grid,
  .tc-split,
  .tc-features > .wp-block-group.alignwide {
    width:min(760px, calc(100% - 36px)) !important;
    max-width:760px !important;
  }
}

@media(max-width:600px) {
  .tc-header-inner,
  .tc-hero-grid,
  .tc-reviewed-card,
  .tc-events > .wp-block-group.alignwide,
  .tc-gallery > .wp-block-group.alignwide,
  .tc-reviews > .wp-block-group.alignwide,
  .tc-news > .wp-block-group.alignwide,
  .tc-join > .wp-block-group.alignwide,
  .tc-footer-grid,
  .tc-footer-legal,
  .tc-strip > .tc-strip-grid,
  .tc-split,
  .tc-features > .wp-block-group.alignwide {
    width:calc(100% - 28px) !important;
    max-width:none !important;
  }
}


/* V3.2: Community reviews carousel */
.tc-review-carousel {
  margin-top:36px;
  scroll-margin-top:128px;
}

.tc-review-carousel-head {
  min-height:46px;
  margin-bottom:14px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
}

.tc-review-carousel-status {
  margin-right:auto;
  color:#8399a8;
  font-size:12px;
  font-weight:700;
}

.tc-review-carousel-controls {
  display:flex;
  gap:8px;
}

.tc-review-carousel-button {
  width:42px;
  height:42px;
  padding:0;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(39,215,238,.20);
  border-radius:12px;
  background:#102131;
  color:#7cebf5;
  font:inherit;
  font-size:19px;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease, border-color .18s ease, opacity .18s ease;
}

.tc-review-carousel-button:hover:not(:disabled) {
  transform:translateY(-2px);
  background:#153045;
  border-color:rgba(39,215,238,.38);
}

.tc-review-carousel-button:disabled {
  opacity:.28;
  cursor:default;
}

.tc-community-reviews-glsr {
  width:100% !important;
  overflow:hidden !important;
}

.tc-community-reviews-glsr .tc-review-carousel-track {
  --tc-review-gap:18px;
  display:flex !important;
  grid-template-columns:none !important;
  gap:var(--tc-review-gap) !important;
  align-items:stretch !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  padding:2px 1px 8px !important;
}

.tc-review-carousel-track::-webkit-scrollbar {
  display:none;
}

.tc-review-carousel-track > .glsr-review {
  flex:0 0 calc(
    (100% - ((var(--tc-review-visible) - 1) * var(--tc-review-gap)))
    / var(--tc-review-visible)
  ) !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  scroll-snap-align:start;
  margin:0 !important;
  padding:26px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:18px !important;
  box-shadow:0 10px 28px rgba(0,0,0,.10);
}

.tc-review-copy {
  display:-webkit-box !important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden !important;
  max-height:6.8em;
  color:#c7d5de !important;
}

.tc-review-copy.is-expanded {
  display:block !important;
  -webkit-line-clamp:unset;
  max-height:none;
  overflow:visible !important;
}

.tc-review-copy-short {
  max-height:none;
}

.tc-review-toggle {
  margin:12px 0 0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--tc-cyan);
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}

.tc-review-toggle:hover {
  color:#9af3f8;
}

.tc-review-toggle:focus-visible,
.tc-review-carousel-button:focus-visible {
  outline:2px solid var(--tc-cyan);
  outline-offset:3px;
}

@media(max-width:1000px) {
  .tc-review-carousel {
    --tc-review-visible:2 !important;
  }
}

@media(max-width:680px) {
  .tc-review-carousel {
    --tc-review-visible:1 !important;
  }

  .tc-review-carousel-head {
    margin-bottom:10px;
  }

  .tc-review-carousel-track > .glsr-review {
    padding:22px !important;
  }
}


/* V3.3: improved Community carousel buttons */
.tc-review-carousel-head {
  min-height:56px;
}

.tc-review-carousel-controls {
  display:flex;
  align-items:center;
  gap:12px;
}

.tc-review-carousel-button {
  width:52px;
  height:52px;
  min-width:52px;
  min-height:52px;
  padding:0;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(39,215,238,.24);
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(21,47,66,.98) 0%, rgba(12,29,42,.98) 100%);
  color:#a8f8ff;
  font:inherit;
  font-size:0;
  line-height:1;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 10px 24px rgba(0,0,0,.18);
  cursor:pointer;
  transition:
    transform .18s ease,
    background .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    opacity .18s ease;
}

.tc-review-carousel-button span {
  display:block;
  line-height:1;
  font-size:24px;
  font-weight:900;
  transform:translateY(-1px);
}

.tc-review-carousel-button:hover:not(:disabled) {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.42);
  background:
    linear-gradient(180deg, rgba(28,60,82,1) 0%, rgba(14,34,49,1) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 12px 28px rgba(0,0,0,.22),
    0 0 0 1px rgba(39,215,238,.08);
}

.tc-review-carousel-button:active:not(:disabled) {
  transform:translateY(0);
}

.tc-review-carousel-button:disabled {
  opacity:.35;
  cursor:default;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

@media(max-width:680px) {
  .tc-review-carousel-head {
    min-height:50px;
  }

  .tc-review-carousel-controls {
    gap:10px;
  }

  .tc-review-carousel-button {
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    border-radius:14px;
  }

  .tc-review-carousel-button span {
    font-size:22px;
  }
}


/* V3.4: more minimal Community carousel buttons */
.tc-review-carousel-head {
  min-height:48px;
}

.tc-review-carousel-controls {
  display:flex;
  align-items:center;
  gap:10px;
}

.tc-review-carousel-button {
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.03);
  color:#b8edf2;
  font:inherit;
  font-size:0;
  line-height:1;
  box-shadow:0 6px 18px rgba(0,0,0,.10);
  backdrop-filter:blur(6px);
  cursor:pointer;
  transition:
    transform .16s ease,
    background .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    color .16s ease,
    opacity .16s ease;
}

.tc-review-carousel-button span {
  display:block;
  line-height:1;
  font-size:20px;
  font-weight:700;
  transform:translateY(-1px);
}

.tc-review-carousel-button:hover:not(:disabled) {
  transform:translateY(-1px);
  background:rgba(255,255,255,.06);
  border-color:rgba(124,235,245,.28);
  color:#e8fcfe;
  box-shadow:0 8px 20px rgba(0,0,0,.14);
}

.tc-review-carousel-button:active:not(:disabled) {
  transform:translateY(0);
}

.tc-review-carousel-button:disabled {
  opacity:.3;
  cursor:default;
  box-shadow:none;
}

@media(max-width:680px) {
  .tc-review-carousel-head {
    min-height:44px;
  }

  .tc-review-carousel-controls {
    gap:8px;
  }

  .tc-review-carousel-button {
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    border-radius:12px;
  }

  .tc-review-carousel-button span {
    font-size:19px;
  }
}


/* V3.5: tighten the transition between Latest News and Joining */
.tc-news {
  padding-bottom:56px !important;
}

.tc-join {
  padding-top:56px !important;
}

@media(max-width:600px) {
  .tc-news {
    padding-bottom:44px !important;
  }

  .tc-join {
    padding-top:52px !important;
  }
}


/* V3.6: cleaner homepage hero heading typography */
.tc-hero-copy h1,
html body.home .tc-hero-copy h1 {
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.045em !important;
  line-height:.98 !important;
  text-wrap:balance;
}


/* V3.7: Montserrat ExtraBold hero heading */
.tc-hero-copy h1,
html body.home .tc-hero-copy h1 {
  font-family:"Montserrat",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.045em !important;
  line-height:.98 !important;
  text-wrap:balance;
}


/* V3.8: switch hero heading from Montserrat to Inter */
.tc-hero-copy h1,
html body.home .tc-hero-copy h1 {
  font-family:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.045em !important;
  line-height:.98 !important;
  text-wrap:balance;
}


/* V3.9: keep the main navigation visible while scrolling */
.tc-header {
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:99999 !important;
  background:rgba(7,18,29,.94) !important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:0 5px 24px rgba(0,0,0,.24);
}

/* Replace the space that the fixed header no longer occupies in the document flow. */
body:not(.wp-admin) {
  padding-top:104px !important;
}

/* WordPress admin toolbar offsets the fixed site header. */
body.admin-bar .tc-header {
  top:32px !important;
}

@media(max-width:782px) {
  body.admin-bar .tc-header {
    top:46px !important;
  }
}

@media(max-width:600px) {
  body:not(.wp-admin) {
    padding-top:86px !important;
  }
}


/* V4.0: admin toolbar compatibility and cleaner hero typography */

/* Keep the site navigation below WordPress' own admin controls. */
.tc-header {
  z-index:9000 !important;
}

body.admin-bar .tc-header {
  top:32px !important;
}

@media(max-width:782px) {
  body.admin-bar .tc-header {
    top:46px !important;
  }
}

/* Return the hero heading to the cleaner system font used before the
   externally loaded Inter experiment. */
.tc-hero-copy h1,
html body.home .tc-hero-copy h1 {
  font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.045em !important;
  line-height:.98 !important;
  text-wrap:balance;
}


/* V4.1: TogetherCraft Guide redesign */
body.tc-guide-page .tc-guide-page-shell {
  padding:0 0 110px !important;
  overflow:visible !important;
}

body.tc-guide-page .tc-guide-page-shell > .wp-block-post-content,
body.tc-guide-page .tc-guide-content {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  color:#d5e0e6;
  font-size:16px;
  line-height:1.75;
}

.tc-guide-content > * {
  margin-block-start:0;
}

.tc-guide-hero {
  width:min(1180px, calc(100% - 40px));
  margin:48px auto 34px !important;
  overflow:hidden;
  border:1px solid rgba(39,215,238,.14);
  border-radius:28px;
  background:
    radial-gradient(circle at 82% 18%, rgba(39,215,238,.13), transparent 24rem),
    radial-gradient(circle at 12% 78%, rgba(29,91,125,.16), transparent 28rem),
    linear-gradient(135deg,#0b1c2b,#0d2638);
  box-shadow:0 22px 55px rgba(0,0,0,.18);
}

.tc-guide-hero-inner {
  max-width:860px;
  margin:auto;
  padding:76px 48px 72px;
  text-align:center;
}

.tc-guide-eyebrow {
  margin:0 0 13px;
  color:#70e7f3;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.tc-guide-hero-title {
  margin:0;
  color:#fff;
  font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(46px,5.6vw,70px);
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.045em;
  text-wrap:balance;
}

.tc-guide-hero-copy {
  max-width:720px;
  margin:22px auto 0 !important;
  color:#b8c9d3;
  font-size:18px;
  line-height:1.75;
}

.tc-guide-hero-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:30px;
}

.tc-guide-hero-button {
  min-height:48px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  text-decoration:none !important;
  font-weight:850;
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}

.tc-guide-hero-button:hover {
  transform:translateY(-2px);
}

.tc-guide-hero-button-primary {
  color:#04232b !important;
  background:linear-gradient(135deg,var(--tc-cyan),#17b9d4);
  box-shadow:0 10px 26px rgba(36,207,232,.18);
}

.tc-guide-hero-button-secondary {
  color:#e9f4f7 !important;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.13);
}

.tc-guide-start,
.tc-guide-directory,
.tc-guide-layout {
  width:min(1180px, calc(100% - 40px));
  margin-left:auto !important;
  margin-right:auto !important;
}

.tc-guide-start {
  padding:48px 0 70px;
}

.tc-guide-section-heading {
  max-width:760px;
  margin:0 auto 32px;
  text-align:center;
}

.tc-guide-section-heading h2 {
  margin:0;
  color:#f6fbfd;
  font-size:clamp(34px,4vw,48px);
  line-height:1.06;
  letter-spacing:-.035em;
}

.tc-guide-section-heading p {
  margin:12px auto 0 !important;
  color:#9fb2bf;
  font-size:16px;
}

.tc-guide-start-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.tc-guide-start-card {
  position:relative;
  min-height:205px;
  padding:25px 22px 23px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(255,255,255,.09);
  border-radius:19px;
  background:#0e1d2c;
  color:inherit !important;
  text-decoration:none !important;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.tc-guide-start-card:hover {
  transform:translateY(-4px);
  border-color:rgba(39,215,238,.22);
  background:#102131;
  box-shadow:0 16px 34px rgba(0,0,0,.16);
}

.tc-guide-start-icon {
  min-height:42px;
  display:block;
  font-size:30px;
  line-height:1;
}

.tc-guide-start-card h3 {
  margin:14px 0 8px !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.2 !important;
}

.tc-guide-start-card p {
  margin:0 !important;
  color:#96aab7 !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.tc-guide-card-arrow {
  margin-top:auto;
  padding-top:18px;
  color:#70e7f3;
  font-size:19px;
  font-weight:800;
}

.tc-guide-directory {
  scroll-margin-top:145px;
  padding:76px 0;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
}

.tc-guide-directory-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.tc-guide-directory-card {
  padding:24px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:#0b1927;
}

.tc-guide-directory-card h3 {
  margin:0 0 15px !important;
  color:#fff !important;
  font-size:19px !important;
}

.tc-guide-directory-links {
  display:grid;
  gap:6px;
}

.tc-guide-directory-links a {
  min-height:39px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  gap:9px;
  border-radius:10px;
  color:#b7c8d3 !important;
  text-decoration:none !important;
  font-size:13px;
  font-weight:700;
  line-height:1.25;
}

.tc-guide-directory-links a:hover {
  color:#fff !important;
  background:rgba(39,215,238,.065);
}

.tc-guide-directory-icon {
  width:22px;
  flex:0 0 22px;
  text-align:center;
  font-size:16px;
}

.tc-guide-layout {
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  gap:46px;
  align-items:start;
  padding-top:82px;
}

.tc-guide-sidebar {
  position:relative;
}

.tc-guide-sidebar-panel {
  position:sticky;
  top:132px;
  max-height:calc(100vh - 160px);
  overflow:auto;
  scrollbar-width:thin;
  padding:20px 14px 17px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:#0a1723;
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}

.admin-bar .tc-guide-sidebar-panel {
  top:164px;
  max-height:calc(100vh - 192px);
}

.tc-guide-sidebar-title {
  padding:0 9px 13px;
  color:#fff;
  font-size:13px;
  font-weight:850;
  letter-spacing:.02em;
}

.tc-guide-sidebar-links {
  display:grid;
  gap:2px;
}

.tc-guide-sidebar-links a {
  min-height:37px;
  padding:7px 9px;
  display:flex;
  align-items:center;
  gap:8px;
  border-radius:9px;
  color:#8fa5b3 !important;
  text-decoration:none !important;
  font-size:12px;
  font-weight:700;
  line-height:1.25;
  transition:background .15s ease, color .15s ease;
}

.tc-guide-sidebar-links a:hover,
.tc-guide-sidebar-links a.is-active {
  color:#e9fbfd !important;
  background:rgba(39,215,238,.075);
}

.tc-guide-sidebar-links a.is-active {
  box-shadow:inset 2px 0 0 #27d7ee;
}

.tc-guide-sidebar-icon {
  width:20px;
  flex:0 0 20px;
  text-align:center;
}

.tc-guide-article {
  min-width:0;
  max-width:850px;
}

.tc-guide-article > * {
  max-width:100%;
}

.tc-guide-article h2[id],
.tc-guide-article h3[id] {
  scroll-margin-top:150px;
}

.tc-guide-article-heading {
  margin:86px 0 22px !important;
  padding-top:35px;
  border-top:1px solid rgba(255,255,255,.085);
  color:#f7fbfd !important;
  font-size:clamp(32px,3.7vw,45px) !important;
  font-weight:800 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}

.tc-guide-article-heading.is-first {
  margin-top:0 !important;
  padding-top:0;
  border-top:0;
}

.tc-guide-subheading {
  margin:38px 0 13px !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1.2 !important;
}

.tc-guide-article p {
  margin:0 0 18px !important;
  color:#b5c5cf;
}

.tc-guide-article strong {
  color:#edf6f9;
}

.tc-guide-article a {
  color:#6de3ee;
  text-underline-offset:3px;
}

.tc-guide-article ul,
.tc-guide-article ol {
  margin:16px 0 25px !important;
  padding:18px 22px 18px 42px !important;
  border:1px solid rgba(255,255,255,.075);
  border-radius:15px;
  background:#0b1926;
  color:#b9c9d2;
}

.tc-guide-article li + li {
  margin-top:7px;
}

.tc-guide-media,
.tc-guide-article figure.wp-block-image {
  margin:26px 0 34px !important;
}

.tc-guide-article img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  margin-left:auto;
  margin-right:auto;
  border-radius:18px;
  box-shadow:0 15px 38px rgba(0,0,0,.18);
}

.tc-guide-article .wp-block-buttons {
  margin:25px 0 32px !important;
}

.tc-guide-article .wp-block-button__link {
  border-radius:12px !important;
  background:linear-gradient(135deg,var(--tc-cyan),#17b9d4) !important;
  color:#04232b !important;
  font-weight:850 !important;
}

@media(max-width:1000px) {
  .tc-guide-start-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tc-guide-directory-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tc-guide-layout {
    width:min(760px, calc(100% - 36px));
    grid-template-columns:1fr;
    gap:0;
  }

  .tc-guide-sidebar {
    display:none;
  }

  .tc-guide-article {
    max-width:none;
  }
}

@media(max-width:600px) {
  body.tc-guide-page .tc-guide-page-shell {
    padding-bottom:80px !important;
  }

  .tc-guide-hero,
  .tc-guide-start,
  .tc-guide-directory,
  .tc-guide-layout {
    width:calc(100% - 28px);
  }

  .tc-guide-hero {
    margin-top:24px !important;
    border-radius:22px;
  }

  .tc-guide-hero-inner {
    padding:55px 22px 52px;
  }

  .tc-guide-hero-title {
    font-size:44px;
  }

  .tc-guide-hero-copy {
    font-size:16px;
  }

  .tc-guide-hero-actions {
    display:grid;
    grid-template-columns:1fr;
  }

  .tc-guide-start {
    padding:38px 0 58px;
  }

  .tc-guide-start-grid,
  .tc-guide-directory-grid {
    grid-template-columns:1fr;
  }

  .tc-guide-start-card {
    min-height:0;
  }

  .tc-guide-directory {
    padding:58px 0;
  }

  .tc-guide-layout {
    padding-top:58px;
  }

  .tc-guide-article-heading {
    margin-top:66px !important;
    padding-top:28px;
  }

  .tc-guide-subheading {
    font-size:22px !important;
  }
}


/* V4.2: Guide phase two */

/* Native details based accordions */
.tc-guide-accordion,
.tc-guide-rank-card,
.tc-guide-feature-panel,
.tc-guide-season-card {
  margin:12px 0 !important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.085);
  border-radius:15px;
  background:#0b1926;
}

.tc-guide-details-summary {
  min-height:58px;
  padding:15px 17px;
  display:flex;
  align-items:center;
  gap:11px;
  list-style:none;
  color:#edf8fb;
  cursor:pointer;
  user-select:none;
}

.tc-guide-details-summary::-webkit-details-marker {
  display:none;
}

.tc-guide-details-title {
  min-width:0;
  flex:1 1 auto;
  font-size:15px;
  font-weight:820;
  line-height:1.35;
}

.tc-guide-details-meta {
  flex:0 0 auto;
  color:#7892a2;
  font-size:11px;
  font-weight:750;
}

.tc-guide-details-chevron {
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border:1px solid rgba(39,215,238,.14);
  border-radius:9px;
  color:#77e7f1;
  background:rgba(39,215,238,.045);
  font-size:18px;
  line-height:1;
}

.tc-guide-accordion[open],
.tc-guide-rank-card[open],
.tc-guide-feature-panel[open],
.tc-guide-season-card[open] {
  border-color:rgba(39,215,238,.16);
}

.tc-guide-details-body {
  padding:0 18px 20px;
  border-top:1px solid rgba(255,255,255,.06);
}

.tc-guide-details-body > :first-child {
  margin-top:18px !important;
}

.tc-guide-details-body > :last-child {
  margin-bottom:0 !important;
}

/* FAQ */
.tc-guide-faq-item {
  background:#0d1c2a;
}

.tc-guide-faq-item .tc-guide-details-title {
  font-size:16px;
}

.tc-guide-faq-item .tc-guide-details-body p {
  color:#b9c9d2;
}

/* Rank cards */
.tc-guide-rank-stack {
  display:grid;
  gap:10px;
  margin:20px 0 34px;
}

.tc-guide-rank-card {
  margin:0 !important;
  background:
    linear-gradient(135deg,rgba(15,34,49,.98),rgba(11,25,38,.98));
}

.tc-guide-rank-card .tc-guide-details-summary {
  min-height:66px;
  padding:17px 19px;
}

.tc-guide-rank-icon {
  width:35px;
  height:35px;
  flex:0 0 35px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgba(39,215,238,.06);
  font-size:19px;
}

.tc-guide-rank-card .tc-guide-details-title {
  font-size:18px;
  color:#fff;
}

.tc-guide-rank-card .tc-guide-details-body {
  padding:2px 20px 22px;
}

.tc-guide-rank-card .tc-guide-details-body p {
  margin:16px 0 8px !important;
}

.tc-guide-rank-card .tc-guide-details-body ul,
.tc-guide-rank-card .tc-guide-details-body ol {
  margin:12px 0 0 !important;
  background:rgba(255,255,255,.025);
}

/* District cards */
.tc-guide-district-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:24px 0 42px;
}

.tc-guide-district-card {
  min-width:0;
  padding:20px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:17px;
  background:#0d1c2a;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.tc-guide-district-card:hover {
  transform:translateY(-3px);
  border-color:rgba(39,215,238,.19);
  background:#102131;
}

.tc-guide-district-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:13px;
}

.tc-guide-district-icon {
  font-size:27px;
  line-height:1;
}

.tc-guide-district-code {
  padding:5px 8px;
  border:1px solid rgba(39,215,238,.15);
  border-radius:8px;
  background:rgba(39,215,238,.055);
  color:#79e8f2;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}

.tc-guide-district-card h3 {
  margin:0 0 5px !important;
  color:#fff !important;
  font-size:19px !important;
  line-height:1.2 !important;
}

.tc-guide-district-theme {
  margin-bottom:9px;
  color:#70dce7;
  font-size:12px;
  font-weight:800;
}

.tc-guide-district-card p {
  margin:0 !important;
  color:#91a6b4 !important;
  font-size:12px !important;
  line-height:1.55 !important;
}

/* Tweaks and custom recipe panels */
.tc-guide-feature-panel {
  margin:20px 0 38px !important;
  background:
    radial-gradient(circle at 90% 10%,rgba(39,215,238,.055),transparent 15rem),
    #0b1926;
}

.tc-guide-feature-panel .tc-guide-details-summary {
  min-height:66px;
  padding:17px 19px;
}

.tc-guide-feature-panel .tc-guide-details-title {
  font-size:17px;
}

.tc-guide-feature-panel .tc-guide-details-body {
  padding:0 18px 20px;
}

.tc-guide-feature-panel .tc-guide-details-body ul,
.tc-guide-feature-panel .tc-guide-details-body ol {
  margin:18px 0 0 !important;
  border:0 !important;
  background:transparent !important;
}

/* Hardcore seasons */
.tc-guide-seasons {
  display:grid;
  gap:12px;
  margin:25px 0 40px;
}

.tc-guide-season-card {
  margin:0 !important;
  background:#0b1926;
}

.tc-guide-season-card.is-current {
  border-color:rgba(39,215,238,.24);
  background:
    radial-gradient(circle at 90% 10%,rgba(39,215,238,.10),transparent 18rem),
    linear-gradient(135deg,#0e2232,#0b1926);
}

.tc-guide-season-card .tc-guide-details-summary {
  min-height:68px;
  padding:18px 20px;
}

.tc-guide-season-card .tc-guide-details-title {
  color:#fff;
  font-size:18px;
}

.tc-guide-season-card.is-current .tc-guide-details-title {
  font-size:20px;
}

.tc-guide-season-card.is-current .tc-guide-details-meta {
  color:#6fe4ee;
}

.tc-guide-season-card .tc-guide-details-body {
  padding:2px 20px 24px;
}

.tc-guide-season-card .tc-guide-details-body ul {
  margin-top:17px !important;
}

/* Long blocks inside accordion bodies should not feel like nested cards */
.tc-guide-details-body ul,
.tc-guide-details-body ol {
  border-radius:12px !important;
}

@media(max-width:1000px) {
  .tc-guide-district-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px) {
  .tc-guide-details-meta {
    display:none;
  }

  .tc-guide-details-summary {
    padding:14px 14px;
  }

  .tc-guide-rank-card .tc-guide-details-summary,
  .tc-guide-feature-panel .tc-guide-details-summary,
  .tc-guide-season-card .tc-guide-details-summary {
    padding:15px;
  }

  .tc-guide-rank-icon {
    width:32px;
    height:32px;
    flex-basis:32px;
    font-size:17px;
  }

  .tc-guide-district-grid {
    grid-template-columns:1fr;
  }

  .tc-guide-district-card {
    padding:18px;
  }

  .tc-guide-details-body,
  .tc-guide-rank-card .tc-guide-details-body,
  .tc-guide-season-card .tc-guide-details-body {
    padding-left:15px;
    padding-right:15px;
  }
}


/* V4.3: Guide phase three */

/* Smaller Q and A accordions throughout the Guide */
.tc-guide-inline-question {
  margin:10px 0 !important;
  background:#0c1a28;
}

.tc-guide-inline-question .tc-guide-details-summary {
  min-height:54px;
  padding:13px 16px;
}

.tc-guide-inline-question .tc-guide-details-title {
  font-size:14px;
  font-weight:800;
}

.tc-guide-inline-question .tc-guide-details-body {
  padding:0 16px 18px;
}

/* Scan friendly checklist blocks */
.tc-guide-article .tc-guide-check-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:14px !important;
  border-color:rgba(117,215,122,.13) !important;
  background:rgba(117,215,122,.035) !important;
}

.tc-guide-check-grid > li {
  margin:0 !important;
  padding:10px 11px;
  list-style:none;
  border:1px solid rgba(117,215,122,.08);
  border-radius:10px;
  background:rgba(255,255,255,.025);
  color:#bfd1c4;
  font-size:13px;
  line-height:1.45;
}

/* Important restriction lists */
.tc-guide-article .tc-guide-warning-list {
  border-color:rgba(255,132,132,.15) !important;
  background:rgba(172,58,58,.055) !important;
}

.tc-guide-warning-list > li {
  color:#d8c4c4;
}

/* Redstone technical limits */
.tc-guide-limit-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0 32px;
}

.tc-guide-limit-card {
  min-height:76px;
  padding:14px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:#0b1926;
}

.tc-guide-limit-label {
  color:#aebfc9;
  font-size:13px;
  font-weight:720;
  line-height:1.25;
}

.tc-guide-limit-value {
  min-width:37px;
  height:37px;
  padding:0 9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:rgba(39,215,238,.065);
  color:#7cebf5;
  font-size:17px;
  font-weight:900;
}

.tc-guide-despawn-ranges {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.tc-guide-compact-data {
  margin-top:16px !important;
}

/* Shopping District quick navigation */
.tc-guide-shopping-nav {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:28px 0 38px;
}

.tc-guide-shopping-nav-card {
  min-height:92px;
  padding:15px 13px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:14px;
  background:#0d1c2a;
  color:#e8f3f6 !important;
  text-decoration:none !important;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.tc-guide-shopping-nav-card:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.2);
  background:#102131;
}

.tc-guide-shopping-nav-icon {
  font-size:23px;
  line-height:1;
}

.tc-guide-shop-ideas {
  margin-top:18px !important;
}

/* Command panels should feel compact rather than like another full section */
.tc-guide-command-panel {
  margin:16px 0 28px !important;
}

.tc-guide-command-panel .tc-guide-details-body ul,
.tc-guide-command-panel .tc-guide-details-body ol {
  margin-top:16px !important;
}

@media(max-width:1000px) {
  .tc-guide-limit-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tc-guide-shopping-nav {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px) {
  .tc-guide-article .tc-guide-check-grid,
  .tc-guide-limit-grid,
  .tc-guide-despawn-ranges,
  .tc-guide-shopping-nav {
    grid-template-columns:1fr;
  }

  .tc-guide-limit-card {
    min-height:64px;
  }

  .tc-guide-shopping-nav-card {
    min-height:72px;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
  }
}


/* V4.4: Guide structure stability fixes */
.tc-guide-content > .tc-guide-hero:first-child {
  margin-top:48px !important;
}

.tc-guide-content > .tc-guide-start,
.tc-guide-content > .tc-guide-directory,
.tc-guide-content > .tc-guide-layout {
  clear:both;
}

/* Prevent legacy page block spacing from reappearing around generated Guide sections. */
.tc-guide-content > .tc-guide-hero,
.tc-guide-content > .tc-guide-start,
.tc-guide-content > .tc-guide-directory,
.tc-guide-content > .tc-guide-layout {
  margin-block-start:0 !important;
  margin-block-end:0 !important;
}

/* The original contents block is removed after the new directory is built. */
.tc-guide-layout > .tc-guide-article {
  width:100%;
}

@media(max-width:600px) {
  .tc-guide-content > .tc-guide-hero:first-child {
    margin-top:24px !important;
  }
}


/* V4.5: reliable Guide anchor navigation */
.tc-guide-page [id] {
  scroll-margin-top:145px;
}

.admin-bar.tc-guide-page [id],
.admin-bar .tc-guide-page-shell [id] {
  scroll-margin-top:177px;
}

.tc-guide-start-card,
.tc-guide-directory-links a,
.tc-guide-sidebar-links a,
.tc-guide-shopping-nav-card,
.tc-guide-hero-button {
  cursor:pointer;
}

@media(max-width:782px) {
  .tc-guide-page [id] {
    scroll-margin-top:120px;
  }

  .admin-bar.tc-guide-page [id],
  .admin-bar .tc-guide-page-shell [id] {
    scroll-margin-top:166px;
  }
}


/* V4.7: Guide readability and spacing pass */

.tc-guide-article {
  max-width:790px !important;
}

.tc-guide-article p {
  max-width:68ch;
  margin:0 0 24px !important;
  color:#b7c7d1;
  font-size:16px;
  line-height:1.82;
}

.tc-guide-article p + p {
  margin-top:4px !important;
}

.tc-guide-article .tc-guide-lead {
  max-width:72ch;
  margin:0 0 30px !important;
  padding:17px 19px;
  border-left:3px solid rgba(39,215,238,.58);
  border-radius:0 12px 12px 0;
  background:rgba(39,215,238,.045);
  color:#cad8df;
  font-size:16.5px;
  line-height:1.78;
}

.tc-guide-article-heading {
  margin:96px 0 25px !important;
  padding-top:40px;
}

.tc-guide-article-heading.is-first {
  margin-top:0 !important;
  padding-top:0;
}

.tc-guide-subheading {
  margin:46px 0 16px !important;
  font-size:23px !important;
}

.tc-guide-article > ul,
.tc-guide-article > ol,
.tc-guide-article .wp-block-list {
  margin-top:24px !important;
  margin-bottom:34px !important;
  padding-top:20px !important;
  padding-bottom:20px !important;
}

.tc-guide-article li {
  line-height:1.6;
}

.tc-guide-article li + li {
  margin-top:10px;
}

.tc-guide-media,
.tc-guide-article figure.wp-block-image {
  margin:34px 0 48px !important;
}

.tc-guide-accordion,
.tc-guide-rank-card,
.tc-guide-feature-panel,
.tc-guide-season-card {
  margin-top:16px !important;
  margin-bottom:16px !important;
}

.tc-guide-details-body {
  padding-top:4px;
}

.tc-guide-details-body p {
  max-width:66ch;
  line-height:1.75;
}

.tc-guide-district-grid,
.tc-guide-limit-grid,
.tc-guide-shopping-nav,
.tc-guide-rank-stack,
.tc-guide-seasons {
  margin-top:30px !important;
  margin-bottom:46px !important;
}

.tc-guide-layout {
  gap:56px;
}

@media(max-width:1000px) {
  .tc-guide-article {
    max-width:760px !important;
    margin-left:auto;
    margin-right:auto;
  }
}

@media(max-width:600px) {
  .tc-guide-article {
    max-width:none !important;
  }

  .tc-guide-article p {
    max-width:none;
    font-size:15.5px;
    line-height:1.76;
    margin-bottom:21px !important;
  }

  .tc-guide-article .tc-guide-lead {
    max-width:none;
    padding:15px 16px;
    font-size:15.5px;
    margin-bottom:25px !important;
  }

  .tc-guide-article-heading {
    margin-top:76px !important;
    padding-top:32px;
  }

  .tc-guide-subheading {
    margin-top:38px !important;
  }

  .tc-guide-media,
  .tc-guide-article figure.wp-block-image {
    margin-top:28px !important;
    margin-bottom:38px !important;
  }
}


/* V4.8: Guide section selector mode */

/* Only the selected top level Guide section is displayed. Related subsection
   headings remain inside the selected panel. */
.tc-guide-panel-host {
  min-width:0;
}

.tc-guide-panel[hidden] {
  display:none !important;
}

.tc-guide-panel.is-active {
  display:block;
  animation:tcGuidePanelIn .18s ease both;
}

@keyframes tcGuidePanelIn {
  from {
    opacity:0;
    transform:translateY(5px);
  }
  to {
    opacity:1;
    transform:translateY(0);
  }
}

/* Each selected section begins cleanly at the top of the reading area. */
.tc-guide-panel > .tc-guide-article-heading:first-child {
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
}

/* Sidebar now acts as a section selector rather than a scroll spy. */
.tc-guide-sidebar-links a.is-active {
  color:#06232d !important;
  background:linear-gradient(135deg,#3bd4ef,#22b9e8) !important;
  box-shadow:none !important;
}

.tc-guide-sidebar-links a.is-active .tc-guide-sidebar-icon {
  filter:none;
}

.tc-guide-sidebar-links a[aria-current="page"] {
  font-weight:850;
}

/* Mobile section picker mirrors the desktop sidebar. */
.tc-guide-mobile-nav {
  display:none;
  margin:0 0 24px;
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:#0b1926;
}

.tc-guide-mobile-label {
  display:block;
  margin:0 0 8px;
  color:#8da4b2;
  font-size:11px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.tc-guide-mobile-select {
  width:100%;
  min-height:46px;
  padding:0 40px 0 13px;
  border:1px solid rgba(39,215,238,.16);
  border-radius:10px;
  outline:0;
  background:#102131;
  color:#f2f8fa;
  font:inherit;
  font-size:14px;
  font-weight:750;
}

/* With one topic visible at a time, the article can be a little more generous
   without returning to the wall of text feeling. */
.tc-guide-article {
  max-width:820px !important;
}

@media(max-width:1000px) {
  .tc-guide-mobile-nav {
    display:block;
  }

  .tc-guide-article {
    max-width:760px !important;
  }
}

@media(max-width:600px) {
  .tc-guide-mobile-nav {
    margin-bottom:20px;
    padding:12px;
  }

  .tc-guide-article {
    max-width:none !important;
  }
}


/* V4.9: nested WordPress block compatible Guide panels */
.tc-guide-panel-host {
  width:100%;
  min-width:0;
}

.tc-guide-panel {
  width:100%;
}

.tc-guide-panel[hidden] {
  display:none !important;
}

.tc-guide-panel.is-active {
  display:block !important;
}

.tc-guide-panel > :first-child {
  margin-top:0 !important;
}

.tc-guide-panel .tc-guide-article-heading:first-of-type {
  margin-top:0 !important;
  padding-top:0 !important;
  border-top:0 !important;
}


/* V4.10: staging-safe Guide activation */
html[data-tc-guide-version="4.10.0"] body {
  --tc-guide-script-active:1;
}


/* V4.11: true tabbed Guide, matching the interaction of the old Guide */
.tc-guide-tabs-content {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.tc-guide-tabs-app {
  width:min(1180px, calc(100% - 40px));
  margin:42px auto 105px;
}

.tc-guide-tabs-intro {
  max-width:770px;
  margin:0 auto 50px;
  text-align:center;
}

.tc-guide-tabs-eyebrow {
  margin-bottom:12px;
  color:#6fe5ef;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.tc-guide-tabs-intro h1 {
  margin:0;
  color:#fff;
  font-size:clamp(42px,5vw,62px);
  font-weight:800;
  line-height:1.03;
  letter-spacing:-.04em;
}

.tc-guide-tabs-intro p {
  max-width:640px;
  margin:17px auto 0 !important;
  color:#9fb3c0;
  font-size:16px;
  line-height:1.7;
}

.tc-guide-tabs-layout {
  display:grid;
  grid-template-columns:285px minmax(0,1fr);
  gap:34px;
  align-items:start;
}

.tc-guide-tabs-sidebar {
  position:sticky;
  top:132px;
  max-height:calc(100vh - 160px);
  overflow:auto;
  scrollbar-width:thin;
}

.admin-bar .tc-guide-tabs-sidebar {
  top:164px;
  max-height:calc(100vh - 192px);
}

.tc-guide-tabs-nav {
  display:grid;
  gap:9px;
}

.tc-guide-tab-button {
  width:100%;
  min-height:47px;
  padding:10px 14px;
  display:flex;
  align-items:center;
  gap:9px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:7px;
  background:#111f2d;
  color:#eef6f9;
  font:inherit;
  font-size:13px;
  font-weight:760;
  line-height:1.25;
  text-align:left;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}

.tc-guide-tab-button:hover {
  background:#172837;
  border-color:rgba(39,215,238,.13);
}

.tc-guide-tab-button.is-active {
  border-color:#2fc5ef;
  background:linear-gradient(135deg,#35caf2,#24b8ed);
  color:#072431;
}

.tc-guide-tab-icon {
  width:22px;
  flex:0 0 22px;
  text-align:center;
  font-size:16px;
}

.tc-guide-tabs-panels {
  min-width:0;
  padding:4px 0 30px;
}

.tc-guide-tab-panel[hidden] {
  display:none !important;
}

.tc-guide-tab-panel.is-active {
  display:block;
  animation:tcGuideTabFade .16s ease both;
}

@keyframes tcGuideTabFade {
  from {opacity:0;transform:translateY(3px);}
  to {opacity:1;transform:translateY(0);}
}

.tc-guide-tab-panel > .tc-guide-tab-heading:first-child,
.tc-guide-tab-panel > .tc-guide-tab-main-title:first-child {
  margin-top:0 !important;
}

.tc-guide-tab-heading {
  margin:56px 0 17px !important;
  color:#fff !important;
  font-size:31px !important;
  font-weight:700 !important;
  line-height:1.14 !important;
  letter-spacing:-.025em !important;
}

.tc-guide-tab-main-title {
  margin-top:0 !important;
  font-size:34px !important;
}

.tc-guide-tab-subheading {
  margin:34px 0 14px !important;
  color:#f3f8fa !important;
  font-size:22px !important;
}

.tc-guide-tab-panel p {
  max-width:74ch;
  margin:0 0 19px !important;
  color:#b8c7d0;
  font-size:15.5px;
  line-height:1.72;
}

.tc-guide-tab-panel ul,
.tc-guide-tab-panel ol {
  margin:18px 0 28px !important;
  padding:18px 22px 18px 42px !important;
  border:1px solid rgba(255,255,255,.075);
  border-radius:12px;
  background:#0d1a27;
  color:#bdcbd3;
}

.tc-guide-tab-panel li + li {
  margin-top:7px;
}

.tc-guide-tab-media,
.tc-guide-tab-panel figure,
.tc-guide-tab-panel .wp-block-image {
  margin:26px 0 34px !important;
}

.tc-guide-tab-panel img {
  max-width:100%;
  height:auto;
  border-radius:14px;
}

.tc-guide-tab-panel a {
  color:#68e2ed;
}

.tc-guide-tabs-mobile {
  display:none;
}

@media(max-width:1000px) {
  .tc-guide-tabs-app {
    width:min(760px, calc(100% - 36px));
  }

  .tc-guide-tabs-layout {
    grid-template-columns:1fr;
    gap:22px;
  }

  .tc-guide-tabs-sidebar {
    display:none;
  }

  .tc-guide-tabs-mobile {
    display:block;
    margin:0 0 22px;
    padding:14px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:13px;
    background:#0d1a27;
  }

  .tc-guide-tabs-mobile-label {
    display:block;
    margin-bottom:8px;
    color:#8ea5b3;
    font-size:11px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .tc-guide-tabs-select {
    width:100%;
    min-height:46px;
    padding:0 13px;
    border:1px solid rgba(39,215,238,.16);
    border-radius:9px;
    background:#102131;
    color:#f4f8fa;
    font:inherit;
    font-size:14px;
    font-weight:750;
  }
}

@media(max-width:600px) {
  .tc-guide-tabs-app {
    width:calc(100% - 28px);
    margin-top:28px;
  }

  .tc-guide-tabs-intro {
    margin-bottom:34px;
  }

  .tc-guide-tabs-intro h1 {
    font-size:42px;
  }

  .tc-guide-tab-heading {
    margin-top:44px !important;
    font-size:27px !important;
  }

  .tc-guide-tab-main-title {
    font-size:30px !important;
  }

  .tc-guide-tab-panel p {
    max-width:none;
    font-size:15px;
  }
}


/* V4.12: Guide tab content polish */

/* Districts */
.tc-guide-district-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:26px 0 38px;
}

.tc-guide-district-card {
  min-width:0;
  padding:20px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:
    linear-gradient(145deg,rgba(16,33,48,.98),rgba(11,25,37,.98));
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}

.tc-guide-district-card:hover {
  transform:translateY(-3px);
  border-color:rgba(39,215,238,.20);
  background:
    linear-gradient(145deg,rgba(19,41,57,.98),rgba(13,29,43,.98));
  box-shadow:0 14px 30px rgba(0,0,0,.15);
}

.tc-guide-district-card-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.tc-guide-district-icon {
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:29px;
  line-height:1;
}

.tc-guide-clean-emoji {
  display:inline-block !important;
  width:1em !important;
  height:1em !important;
  max-width:1em !important;
  margin:0 .04em !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  object-fit:contain;
  vertical-align:-.1em;
}

.tc-guide-district-icon .tc-guide-clean-emoji {
  width:29px !important;
  height:29px !important;
  max-width:29px !important;
  margin:0 !important;
  vertical-align:middle;
}

.tc-guide-district-code {
  padding:5px 8px;
  border:1px solid rgba(39,215,238,.15);
  border-radius:8px;
  background:rgba(39,215,238,.055);
  color:#76e8f2;
  font-size:11px;
  font-weight:900;
  letter-spacing:.09em;
}

.tc-guide-district-name {
  margin:0 0 5px !important;
  color:#fff !important;
  font-size:19px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

.tc-guide-district-theme {
  margin-bottom:10px;
  color:#69dce8;
  font-size:12px;
  font-weight:800;
}

.tc-guide-tab-panel .tc-guide-district-description {
  margin:0 !important;
  color:#91a6b4 !important;
  font-size:12.5px !important;
  line-height:1.58 !important;
}

/* Expandable feature panels */
.tc-guide-expand-panel {
  margin:22px 0 18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.085);
  border-radius:16px;
  background:
    radial-gradient(circle at 92% 12%,rgba(39,215,238,.055),transparent 15rem),
    #0d1b29;
}

.tc-guide-expand-panel[open] {
  border-color:rgba(39,215,238,.18);
}

.tc-guide-expand-summary {
  min-height:72px;
  padding:17px 19px;
  display:flex;
  align-items:center;
  gap:13px;
  list-style:none;
  cursor:pointer;
  user-select:none;
}

.tc-guide-expand-summary::-webkit-details-marker {
  display:none;
}

.tc-guide-expand-icon {
  width:41px;
  height:41px;
  flex:0 0 41px;
  display:grid;
  place-items:center;
  border:1px solid rgba(39,215,238,.12);
  border-radius:11px;
  background:rgba(39,215,238,.05);
  font-size:21px;
}

.tc-guide-expand-summary-text {
  min-width:0;
  flex:1 1 auto;
  display:grid;
  gap:2px;
}

.tc-guide-expand-summary-text strong {
  color:#fff;
  font-size:17px;
  line-height:1.2;
}

.tc-guide-expand-count {
  color:#8097a6;
  font-size:11px;
  font-weight:750;
}

.tc-guide-expand-chevron {
  width:31px;
  height:31px;
  flex:0 0 31px;
  display:grid;
  place-items:center;
  border:1px solid rgba(39,215,238,.12);
  border-radius:9px;
  color:#7be9f3;
  font-size:19px;
  line-height:1;
}

.tc-guide-expand-body {
  padding:4px 19px 21px;
  border-top:1px solid rgba(255,255,255,.055);
}

.tc-guide-expand-body > :first-child {
  margin-top:17px !important;
}

.tc-guide-expand-body > :last-child {
  margin-bottom:0 !important;
}

.tc-guide-expand-body ul,
.tc-guide-expand-body ol {
  margin:17px 0 0 !important;
  background:rgba(255,255,255,.025) !important;
}

.tc-guide-expand-body li {
  line-height:1.55;
}

.tc-guide-tweaks-panel {
  margin-top:27px;
}

.tc-guide-craftables-panel {
  margin-bottom:28px;
}

@media(max-width:1050px) {
  .tc-guide-district-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px) {
  .tc-guide-district-grid {
    grid-template-columns:1fr;
    gap:11px;
  }

  .tc-guide-district-card {
    padding:18px;
  }

  .tc-guide-expand-summary {
    min-height:66px;
    padding:14px 15px;
  }

  .tc-guide-expand-icon {
    width:37px;
    height:37px;
    flex-basis:37px;
    font-size:19px;
  }

  .tc-guide-expand-body {
    padding-left:15px;
    padding-right:15px;
  }
}


/* V4.13: Guide-wide component polish and consistent content width */

/* Text, media, lists and cards now share the same usable width. */
.tc-guide-tab-panel {
  width:100%;
}

.tc-guide-tab-panel p,
.tc-guide-tab-panel .tc-guide-tab-copy {
  width:100% !important;
  max-width:none !important;
}

.tc-guide-tab-panel > p,
.tc-guide-tab-panel > ul,
.tc-guide-tab-panel > ol,
.tc-guide-tab-panel > figure,
.tc-guide-tab-panel > .wp-block-image,
.tc-guide-tab-panel > .tc-guide-question,
.tc-guide-tab-panel > .tc-guide-limit-grid,
.tc-guide-tab-panel > .tc-guide-expand-panel,
.tc-guide-tab-panel > .tc-guide-district-grid {
  width:100%;
  box-sizing:border-box;
}

/* Keep long prose comfortable while still aligning visually with full width
   content by using the full column and a slightly more open line height. */
.tc-guide-tab-panel p {
  margin-bottom:20px !important;
  color:#b8c8d2;
  font-size:15.5px;
  line-height:1.74;
}

/* Media */
.tc-guide-full-media,
.tc-guide-tab-panel figure.tc-guide-full-media {
  width:100% !important;
  max-width:none !important;
  margin:28px 0 36px !important;
}

.tc-guide-full-image,
.tc-guide-tab-panel img.tc-guide-full-image {
  display:block;
  width:100% !important;
  max-width:none !important;
  height:auto;
  border-radius:14px;
}

/* Questions and answers */
.tc-guide-question {
  width:100%;
  margin:10px 0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.085);
  border-radius:12px;
  background:#0e1c29;
}

.tc-guide-question[open] {
  border-color:rgba(39,215,238,.18);
}

.tc-guide-question-summary {
  min-height:54px;
  padding:14px 16px;
  display:flex;
  align-items:center;
  gap:16px;
  list-style:none;
  cursor:pointer;
}

.tc-guide-question-summary::-webkit-details-marker {
  display:none;
}

.tc-guide-question-title {
  flex:1 1 auto;
  color:#edf6f9;
  font-size:14px;
  font-weight:760;
}

.tc-guide-question-icon {
  width:27px;
  height:27px;
  flex:0 0 27px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:rgba(39,215,238,.07);
  color:#62dfeb;
  font-size:17px;
}

.tc-guide-question-body {
  padding:3px 16px 17px;
  border-top:1px solid rgba(255,255,255,.055);
}

.tc-guide-question-body > :first-child {
  margin-top:15px !important;
}

.tc-guide-question-body > :last-child {
  margin-bottom:0 !important;
}

/* Commands */
.tc-guide-tab-panel .tc-guide-command-label {
  margin:24px 0 10px !important;
  color:#e8f3f6;
  font-weight:780;
}

.tc-guide-tab-panel .tc-guide-command-list {
  width:100%;
  margin:0 0 30px !important;
  padding:14px 18px !important;
  display:grid;
  gap:8px;
  border:1px solid rgba(39,215,238,.10);
  border-radius:12px;
  background:#0d1c29;
  list-style-position:inside;
}

.tc-guide-tab-panel .tc-guide-command-list-wide {
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px;
}

.tc-guide-tab-panel .tc-guide-command-list li {
  min-width:0;
  margin:0 !important;
  padding:7px 8px;
  border-radius:7px;
  background:rgba(255,255,255,.02);
  line-height:1.5;
}

/* Positive and warning lists */
.tc-guide-tab-panel .tc-guide-check-grid,
.tc-guide-tab-panel .tc-guide-warning-grid {
  width:100%;
  padding:14px !important;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  list-style:none;
  background:transparent !important;
}

.tc-guide-tab-panel .tc-guide-check-grid li,
.tc-guide-tab-panel .tc-guide-warning-grid li {
  margin:0 !important;
  padding:12px 13px;
  border-radius:10px;
  line-height:1.5;
}

.tc-guide-tab-panel .tc-guide-check-grid li {
  border:1px solid rgba(82,211,147,.13);
  background:rgba(82,211,147,.045);
}

.tc-guide-tab-panel .tc-guide-warning-grid li {
  border:1px solid rgba(255,113,113,.13);
  background:rgba(255,113,113,.04);
}

/* Redstone and technical limits */
.tc-guide-limit-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
  margin:18px 0 34px;
}

.tc-guide-limit-card {
  min-width:0;
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:11px;
  background:#0d1b28;
}

.tc-guide-limit-label {
  color:#9eb0bc;
  font-size:13px;
  font-weight:720;
}

.tc-guide-limit-value {
  color:#69e1ec;
  font-size:17px;
  font-weight:850;
}

.tc-guide-rates-panel {
  margin-bottom:32px;
}

/* Make all direct content blocks align neatly with the same right edge. */
.tc-guide-tab-panel > * {
  max-width:100%;
  box-sizing:border-box;
}

@media(max-width:760px) {
  .tc-guide-tab-panel .tc-guide-command-list-wide,
  .tc-guide-tab-panel .tc-guide-check-grid,
  .tc-guide-tab-panel .tc-guide-warning-grid,
  .tc-guide-limit-grid {
    grid-template-columns:1fr;
  }

  .tc-guide-question-summary {
    padding:13px 14px;
  }

  .tc-guide-question-body {
    padding-left:14px;
    padding-right:14px;
  }
}


/* V4.14: FAQ recovery, Unpackables and clean title emojis */

/* Unpackables uses the same compact expandable treatment as the other
   large feature lists. */
.tc-guide-unpackables-panel {
  margin-bottom:28px;
}

/* Keep native or WordPress rendered emojis completely clean in headings.
   They should look like part of the title, not like an icon badge. */
.tc-guide-tab-heading img.emoji,
.tc-guide-tab-main-title img.emoji,
.tc-guide-tab-subheading img.emoji,
.tc-guide-tab-heading img.wp-smiley,
.tc-guide-tab-main-title img.wp-smiley,
.tc-guide-tab-subheading img.wp-smiley {
  display:inline-block !important;
  width:1em !important;
  height:1em !important;
  max-width:1em !important;
  margin:0 .18em 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:none !important;
  box-shadow:none !important;
  vertical-align:-.08em;
}

/* Also remove any inherited badge treatment around title emoji wrappers. */
.tc-guide-tab-heading .emoji,
.tc-guide-tab-main-title .emoji,
.tc-guide-tab-subheading .emoji {
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* FAQ spacing when several questions appear together. */
.tc-guide-question + .tc-guide-question {
  margin-top:9px;
}

.tc-guide-question:first-of-type {
  margin-top:22px;
}

.tc-guide-question:last-of-type {
  margin-bottom:30px;
}

/* Question headings previously inherited large H2 spacing. Once converted
   to FAQ rows they should be compact and consistent. */
.tc-guide-question-body > .tc-guide-tab-heading:first-child,
.tc-guide-question-body > .tc-guide-tab-subheading:first-child {
  margin-top:18px !important;
}


/* V4.15: restore staging FAQs and remove the Guide tab scrollbar */

/*
 * Do not create a separately scrolling left navigation. The tab list now
 * moves naturally with the page, so there is no internal scrollbar touching
 * the tab buttons.
 */
.tc-guide-tabs-sidebar,
.admin-bar .tc-guide-tabs-sidebar {
  position:static !important;
  top:auto !important;
  max-height:none !important;
  overflow:visible !important;
  scrollbar-width:none !important;
}

.tc-guide-tabs-sidebar::-webkit-scrollbar {
  display:none !important;
  width:0 !important;
  height:0 !important;
}

/* Restored FAQ content from the live Guide uses the same component styling. */
.tc-guide-restored-faq {
  width:100%;
  margin:46px 0 12px;
  padding-top:30px;
  border-top:1px solid rgba(255,255,255,.075);
}

.tc-guide-restored-faq .tc-guide-faq-heading {
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
  font-size:25px !important;
}

.tc-guide-restored-faq .tc-guide-question {
  margin:10px 0;
}

.tc-guide-restored-question .tc-guide-question-body img {
  max-width:100%;
  height:auto;
}


/* V4.16: robust old Guide FAQ importer */
.tc-guide-restored-faq {
  clear:both;
}

.tc-guide-restored-question .tc-guide-question-body > div,
.tc-guide-restored-question .tc-guide-question-body > section {
  max-width:100%;
}

.tc-guide-restored-question .tc-guide-question-body p {
  width:100% !important;
  max-width:none !important;
}

.tc-guide-restored-question .tc-guide-question-body > :first-child {
  margin-top:15px !important;
}

.tc-guide-restored-question .tc-guide-question-body > :last-child {
  margin-bottom:0 !important;
}


/* V4.17: clean Shopping and Gaming rules cards */

.tc-guide-rules-card-wrapper {
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  border:0 !important;
  background:transparent !important;
}

.tc-guide-rules-card-wrapper::before,
.tc-guide-rules-card-wrapper::after {
  display:none !important;
  content:none !important;
}

.tc-guide-tab-panel .tc-guide-rules-card {
  width:100%;
  min-height:92px;
  margin:26px 0 34px;
  padding:18px 20px;
  display:flex;
  align-items:center;
  gap:16px;
  box-sizing:border-box;
  overflow:hidden;
  border:1px solid rgba(48,204,237,.22);
  border-radius:15px;
  background:
    linear-gradient(135deg,rgba(19,51,66,.96),rgba(11,31,44,.98));
  color:#eef8fa !important;
  text-decoration:none !important;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  transition:
    transform .16s ease,
    border-color .16s ease,
    background .16s ease;
}

.tc-guide-tab-panel .tc-guide-rules-card:hover {
  transform:translateY(-2px);
  border-color:rgba(48,204,237,.42);
  background:
    linear-gradient(135deg,rgba(22,60,76,.98),rgba(12,36,50,.98));
}

.tc-guide-rules-card-icon {
  flex:0 0 auto;
  font-size:30px;
  line-height:1;
}

.tc-guide-rules-card-copy {
  min-width:0;
  flex:1 1 auto;
  display:grid;
  gap:5px;
}

.tc-guide-rules-card-title {
  color:#fff;
  font-size:16px;
  font-weight:850;
  line-height:1.25;
}

.tc-guide-rules-card-description {
  max-width:62ch;
  color:#9eb5c1;
  font-size:12.5px;
  line-height:1.55;
}

.tc-guide-rules-card-action {
  flex:0 0 auto;
  padding:9px 12px;
  border-radius:9px;
  background:#33c9ef;
  color:#062531;
  font-size:11.5px;
  font-weight:900;
  white-space:nowrap;
}

.tc-guide-rules-card img,
.tc-guide-rules-card svg,
.tc-guide-rules-card figure {
  display:none !important;
}

.tc-guide-rules-card .tc-guide-rules-card-icon img.emoji,
.tc-guide-rules-card .tc-guide-rules-card-icon img.wp-smiley,
.tc-guide-rules-card .tc-guide-rules-card-icon img.tc-guide-clean-emoji {
  display:inline-block !important;
  width:1em !important;
  height:1em !important;
  max-width:1em !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

@media(max-width:650px) {
  .tc-guide-tab-panel .tc-guide-rules-card {
    min-height:0;
    padding:16px;
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .tc-guide-rules-card-icon {
    font-size:26px;
  }

  .tc-guide-rules-card-copy {
    flex-basis:calc(100% - 46px);
  }

  .tc-guide-rules-card-action {
    margin-left:42px;
  }
}


/* V4.18: precise replacement of the legacy Shopping and Gaming rule CTAs */

/* The replacement card sits exactly where the old block was. */
.tc-guide-tab-panel > .tc-guide-rules-card,
.tc-guide-tab-panel .tc-guide-rules-card {
  clear:both;
  position:relative !important;
  float:none !important;
  inset:auto !important;
  transform:none;
  isolation:isolate;
}

/* Never allow stale legacy pseudo art to bleed through around the replacement. */
.tc-guide-rules-card::before,
.tc-guide-rules-card::after {
  content:none !important;
  display:none !important;
}

/* Preserve ordinary inline rules links inside introductory copy. */
.tc-guide-tab-panel p a:not(.tc-guide-rules-card) {
  display:inline !important;
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
}


/* V4.19: native Guide accordions without Spectra */

/*
 * Legacy UAGB FAQ data is converted by the Guide script into TogetherCraft
 * native details components. Spectra is not required on the front end.
 */
.tc-guide-native-legacy-stack {
  width:100%;
  margin:22px 0 34px;
}

.tc-guide-faq-stack {
  display:grid;
  gap:10px;
}

.tc-guide-season-stack {
  display:grid;
  gap:10px;
  margin:22px 0 34px;
}

.tc-guide-native-question {
  margin:0 !important;
}

.tc-guide-native-rank-card,
.tc-guide-native-season-card {
  margin:0 !important;
}

.tc-guide-native-rank-card .tc-guide-details-summary,
.tc-guide-native-season-card .tc-guide-details-summary {
  min-height:64px;
}

.tc-guide-native-rank-card .tc-guide-details-body,
.tc-guide-native-season-card .tc-guide-details-body {
  color:#b9c9d2;
  line-height:1.7;
}

.tc-guide-native-rank-card .tc-guide-details-body a,
.tc-guide-native-season-card .tc-guide-details-body a,
.tc-guide-native-question .tc-guide-question-body a {
  color:#41c9ee;
  text-decoration:underline;
  text-underline-offset:2px;
}

.tc-guide-native-rank-card .tc-guide-details-body strong,
.tc-guide-native-season-card .tc-guide-details-body strong,
.tc-guide-native-question .tc-guide-question-body strong {
  color:#eef8fb;
}

.tc-guide-native-rank-card .tc-guide-details-chevron,
.tc-guide-native-season-card .tc-guide-details-chevron {
  font-weight:800;
}

/* No Spectra presentation layer should remain visible after conversion. */
.tc-guide-tab-panel .wp-block-uagb-faq:empty,
.tc-guide-tab-panel .uagb-faq__outer-wrap:empty {
  display:none !important;
}

@media(max-width:650px) {
  .tc-guide-native-rank-card .tc-guide-details-summary,
  .tc-guide-native-season-card .tc-guide-details-summary {
    min-height:58px;
    padding:14px 15px;
  }

  .tc-guide-native-rank-card .tc-guide-details-title,
  .tc-guide-native-season-card .tc-guide-details-title {
    font-size:15px;
  }

  .tc-guide-rank-icon {
    width:31px;
    height:31px;
    flex-basis:31px;
    font-size:16px;
  }
}


/* V4.20: server rendered native Guide FAQ and rank content */

.tc-guide-native-legacy-stack {
  width:100%;
  display:grid;
  gap:10px;
  margin:20px 0 34px;
}

.tc-guide-native-legacy-stack > details {
  width:100%;
}

.tc-guide-native-rank-card {
  overflow:hidden;
  border:1px solid rgba(255,255,255,.085);
  border-radius:13px;
  background:rgba(13,31,43,.72);
}

.tc-guide-native-rank-card .tc-guide-details-summary {
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 18px;
  cursor:pointer;
  list-style:none;
}

.tc-guide-native-rank-card .tc-guide-details-summary::-webkit-details-marker {
  display:none;
}

.tc-guide-native-rank-card .tc-guide-details-title {
  flex:1 1 auto;
  color:#f5fbfd;
  font-size:16px;
  font-weight:850;
}

.tc-guide-native-rank-card .tc-guide-details-chevron {
  flex:0 0 auto;
  color:#39c9ef;
  font-size:20px;
  font-weight:800;
}

.tc-guide-native-rank-card[open] .tc-guide-details-chevron {
  transform:rotate(45deg);
}

.tc-guide-native-rank-card .tc-guide-details-body {
  padding:2px 18px 18px 62px;
  color:#b6c7d0;
  line-height:1.7;
}

.tc-guide-native-rank-card .tc-guide-details-body strong {
  color:#f1f8fa;
}

.tc-guide-native-rank-card .tc-guide-details-body br + br {
  line-height:2;
}

@media(max-width:650px) {
  .tc-guide-native-rank-card .tc-guide-details-summary {
    padding:14px 15px;
  }

  .tc-guide-native-rank-card .tc-guide-details-body {
    padding:2px 15px 16px;
  }
}


/* V4.21: cleaner Guide icons and Private Signs tab */

/* Rank emojis should sit naturally beside the title, without a badge. */
.tc-guide-rank-icon,
.tc-guide-native-rank-card .tc-guide-rank-icon {
  width:auto !important;
  height:auto !important;
  flex:0 0 auto !important;
  display:inline-block !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:20px !important;
  line-height:1 !important;
}

/* Keep Guide tab names on one clean line. */
.tc-guide-tab-label {
  min-width:0;
  white-space:nowrap;
}

/* WordPress emoji images inside the sidebar should never receive badge styling. */
.tc-guide-tab-icon,
.tc-guide-tab-icon img,
.tc-guide-tab-icon img.emoji,
.tc-guide-tab-icon img.wp-smiley {
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.tc-guide-tab-icon img,
.tc-guide-tab-icon img.emoji,
.tc-guide-tab-icon img.wp-smiley {
  width:1em !important;
  height:1em !important;
  max-width:1em !important;
  vertical-align:-.08em;
}

@media(max-width:1000px) {
  .tc-guide-tab-label {
    white-space:normal;
  }
}


/* V4.30: latest Guide and navigation polish */

/* Keep WordPress emoji artwork clean and unboxed throughout the Guide. */
.tc-guide-tabs-app img.emoji,
.tc-guide-tabs-app img.wp-smiley,
.tc-guide-tabs-app img.tc-guide-clean-emoji {
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
}

.tc-guide-tab-icon .tc-guide-clean-emoji,
.tc-guide-expand-icon .tc-guide-clean-emoji,
.tc-guide-rules-card-icon .tc-guide-clean-emoji,
.tc-guide-join-step-icon .tc-guide-clean-emoji {
  margin:0 !important;
}

/* Restore clear visual icons to the server setup steps. */
.tc-guide-tab-panel .tc-guide-join-server-steps {
  list-style:none !important;
  padding:14px !important;
  display:grid;
  gap:8px;
}

.tc-guide-tab-panel .tc-guide-join-server-steps > li {
  list-style:none !important;
  margin:0 !important;
  padding:11px 13px;
  display:flex !important;
  align-items:flex-start;
  gap:10px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:9px;
  background:rgba(255,255,255,.02);
}

.tc-guide-join-step-icon {
  width:20px;
  min-width:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1.4;
}

/* Make every standard Guide list visibly marked inside its content box. */
.tc-guide-tab-panel ul:not(.tc-guide-check-grid):not(.tc-guide-warning-grid):not(.tc-guide-join-server-steps) {
  list-style-type:disc !important;
  list-style-position:outside !important;
  padding-left:42px !important;
}

.tc-guide-tab-panel ol {
  list-style-type:decimal !important;
  list-style-position:outside !important;
  padding-left:42px !important;
}

.tc-guide-tab-panel ul:not(.tc-guide-check-grid):not(.tc-guide-warning-grid):not(.tc-guide-join-server-steps) > li,
.tc-guide-tab-panel ol > li {
  display:list-item !important;
}

.tc-guide-tab-panel ul:not(.tc-guide-check-grid):not(.tc-guide-warning-grid):not(.tc-guide-join-server-steps) > li::marker,
.tc-guide-tab-panel ol > li::marker {
  color:#6fe5ef;
  font-size:.9em;
  font-weight:800;
}

.tc-guide-tab-panel .tc-guide-command-list {
  padding-left:42px !important;
}

/* Theme the Apply Now button to match TogetherCraft primary actions. */
.tc-guide-tab-panel a.wp-block-button__link[href*="discord.com/invite/"] {
  min-height:48px;
  width:auto !important;
  padding:14px 23px !important;
  border:0 !important;
  border-radius:12px !important;
  background:linear-gradient(135deg,var(--tc-cyan),var(--tc-cyan-2)) !important;
  color:#04232b !important;
  font-weight:850 !important;
  box-shadow:0 10px 26px rgba(36,207,232,.18) !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}

.tc-guide-tab-panel a.wp-block-button__link[href*="discord.com/invite/"]:hover {
  transform:translateY(-2px);
}

.tc-guide-tab-panel .wp-block-button:has(> a.wp-block-button__link[href*="discord.com/invite/"]) {
  width:auto !important;
  max-width:none !important;
}

/* The rules cards all use the same book icon treatment. */
.tc-guide-rules-card-icon {
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:29px;
  line-height:1;
}


/* V4.31: final rules card polish */
.tc-guide-rules-card-icon {
  width:34px;
  height:34px;
  flex:0 0 34px;
  font-size:34px;
}

.tc-guide-rules-card-description {
  color:#b7c9d2;
}

.tc-guide-rules-card-action {
  width:96px;
  box-sizing:border-box;
  text-align:center;
}

@media(max-width:650px) {
  .tc-guide-rules-card-icon {
    width:32px;
    height:32px;
    flex-basis:32px;
    font-size:30px;
  }
}


/* V4.32: prevent the raw Guide document flashing before the tab interface is built. */
html.tc-guide-booting .tc-guide-page-shell > .wp-block-post-content {
  visibility:hidden !important;
}

html.tc-guide-booting body {
  background-color:#0a1624;
}

.tc-guide-tabs-content {
  animation:tcGuideReady .12s ease-out both;
}

@keyframes tcGuideReady {
  from { opacity:0; }
  to { opacity:1; }
}

/* V4.34: Rules page tabs. Source content stays as ordinary Gutenberg blocks. */
.tc-rules-page .wp-site-blocks {
  overflow:visible;
}

.tc-rules-page .tc-rules-content {
  width:min(100% - 40px,1040px);
  margin:42px auto 82px !important;
}

.tc-rules-page .tc-rules-content > h2:first-of-type,
.tc-rules-page .tc-rules-content > p:first-of-type,
.tc-rules-page .tc-rules-content > p:nth-of-type(2) {
  max-width:820px;
}

.tc-rules-page .tc-rules-content > h2:first-of-type {
  margin-top:0;
}

.tc-rules-page .tc-rules-tabs-shell {
  margin:34px 0 42px;
}

.tc-rules-page .tc-rules-tabs {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin:0 0 16px;
  padding:10px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:18px;
  background:rgba(10,22,36,.78);
  box-shadow:0 16px 42px rgba(0,0,0,.14);
  backdrop-filter:blur(14px);
}

.tc-rules-page .tc-rules-tab {
  appearance:none;
  min-width:0;
  min-height:62px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:#b9cad3;
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}

.tc-rules-page .tc-rules-tab:hover {
  background:rgba(255,255,255,.035);
  color:#fff;
}

.tc-rules-page .tc-rules-tab.is-active {
  border-color:rgba(39,215,238,.25);
  background:linear-gradient(180deg,rgba(39,215,238,.12),rgba(39,215,238,.055));
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(39,215,238,.035);
}

.tc-rules-page .tc-rules-tab:focus-visible,
.tc-rules-page .tc-rules-mobile-select:focus-visible {
  outline:2px solid var(--tc-cyan);
  outline-offset:2px;
}

.tc-rules-page .tc-rules-tab-number {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(39,215,238,.20);
  border-radius:9px;
  background:rgba(39,215,238,.065);
  color:#6fe5ef;
  font-size:12px;
  font-weight:900;
}

.tc-rules-page .tc-rules-tab.is-active .tc-rules-tab-number {
  border-color:rgba(39,215,238,.42);
  background:rgba(39,215,238,.14);
  color:#9bf1f7;
}

.tc-rules-page .tc-rules-tab-label {
  min-width:0;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
}

.tc-rules-page .tc-rules-mobile-select-wrap {
  display:none;
}

.tc-rules-page .tc-rules-panels {
  position:relative;
}

.tc-rules-page .tc-rules-section {
  margin:0;
  padding:32px 34px 34px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:20px;
  background:
    radial-gradient(circle at 100% 0,rgba(39,215,238,.045),transparent 24rem),
    linear-gradient(180deg,rgba(16,40,63,.58),rgba(10,27,42,.72));
  box-shadow:0 18px 46px rgba(0,0,0,.13);
  animation:tcRulesPanelIn .18s ease-out both;
}

@keyframes tcRulesPanelIn {
  from { opacity:0; transform:translateY(5px); }
  to { opacity:1; transform:translateY(0); }
}

.tc-rules-page .tc-rules-section[hidden] {
  display:none !important;
}

.tc-rules-page .tc-rules-section-title {
  margin:0 0 12px !important;
  padding:0 0 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#fff;
  font-size:clamp(25px,2.6vw,34px);
  line-height:1.16;
  letter-spacing:-.025em;
}

.tc-rules-page .tc-rules-section-intro {
  margin:0 0 22px;
  color:#b4c5ce;
  font-size:14px;
  line-height:1.75;
}

.tc-rules-page .tc-rule-item {
  margin:0 !important;
  padding:15px 2px;
  border-top:1px solid rgba(255,255,255,.065);
  color:#dce7ec;
  font-size:14px;
  line-height:1.7;
}

.tc-rules-page .tc-rules-section-title + .tc-rules-section-intro + .tc-rule-item,
.tc-rules-page .tc-rules-section-title + .tc-rule-item {
  border-top:0;
}

.tc-rules-page .tc-rule-item strong,
.tc-rules-page .tc-rules-section strong {
  color:#fff;
}

.tc-rules-page .tc-rule-list {
  margin:0 0 18px !important;
  padding:14px 18px 14px 38px !important;
  border:1px solid rgba(255,255,255,.06);
  border-radius:13px;
  background:rgba(5,20,31,.33);
  color:#cbd9e0;
}

.tc-rules-page .tc-rule-list li {
  margin:7px 0;
  line-height:1.58;
}

.tc-rules-page .tc-rule-list li::marker {
  color:#6fe5ef;
}

.tc-rules-page .tc-rule-list-limits,
.tc-rules-page .tc-rule-list-mods,
.tc-rules-page .tc-rule-list-prohibited {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:26px;
  row-gap:0;
  padding:16px 20px 16px 38px !important;
}

.tc-rules-page .tc-rule-list-prices,
.tc-rules-page .tc-rule-list-shop-limits {
  width:min(100%,520px);
}

.tc-rules-page .tc-rules-section a {
  color:#6fe5ef;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.tc-rules-page .tc-rules-note {
  margin:12px 0 0 !important;
  padding:14px 16px;
  border:1px solid rgba(255,200,96,.14);
  border-radius:12px;
  background:rgba(255,200,96,.055);
  color:#d8e3e9;
  font-size:13px;
  line-height:1.62;
}

@media(max-width:900px) {
  .tc-rules-page .tc-rules-content {
    width:min(100% - 28px,820px);
    margin-top:28px !important;
  }

  .tc-rules-page .tc-rules-tabs {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tc-rules-page .tc-rule-list-limits,
  .tc-rules-page .tc-rule-list-mods,
  .tc-rules-page .tc-rule-list-prohibited {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px) {
  .tc-rules-page .tc-rules-content {
    width:min(100% - 22px,820px);
    margin-bottom:54px !important;
  }

  .tc-rules-page .tc-rules-tabs {
    display:none;
  }

  .tc-rules-page .tc-rules-mobile-select-wrap {
    display:block;
    margin:0 0 12px;
    padding:13px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:15px;
    background:rgba(10,22,36,.82);
  }

  .tc-rules-page .tc-rules-mobile-label {
    display:block;
    margin:0 0 7px;
    color:#91a8b5;
    font-size:10px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .tc-rules-page .tc-rules-mobile-select {
    width:100%;
    padding:11px 38px 11px 12px;
    border:1px solid rgba(39,215,238,.18);
    border-radius:10px;
    background:#0d2235;
    color:#fff;
    font:inherit;
    font-size:13px;
    font-weight:750;
  }

  .tc-rules-page .tc-rules-section {
    padding:22px 18px 24px;
    border-radius:16px;
  }

  .tc-rules-page .tc-rules-section-title {
    font-size:23px;
  }

  .tc-rules-page .tc-rule-item {
    padding:13px 1px;
    font-size:13.5px;
  }

  .tc-rules-page .tc-rule-list-limits,
  .tc-rules-page .tc-rule-list-mods,
  .tc-rules-page .tc-rule-list-prohibited {
    grid-template-columns:1fr;
  }
}

/* V4.35: Rules hero symmetry with the Guide. */
html.tc-rules-booting .tc-rules-page .wp-block-post-content {
  visibility:hidden !important;
}

html.tc-rules-booting body {
  background-color:#0a1624;
}

.tc-rules-page .tc-content-shell {
  padding-top:42px;
}

.tc-rules-page .tc-content-shell > .wp-block-group {
  max-width:none;
  width:100%;
}

.tc-rules-page .tc-content-shell .wp-block-post-title {
  display:none !important;
}

.tc-rules-page .tc-rules-content {
  width:min(1180px, calc(100% - 40px));
  margin:42px auto 105px !important;
}

.tc-rules-page .tc-rules-tabs-intro {
  max-width:770px;
  margin:0 auto 42px;
  text-align:center;
}

.tc-rules-page .tc-rules-tabs-eyebrow {
  margin-bottom:12px;
  color:#6fe5ef;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.tc-rules-page .tc-rules-tabs-intro h1 {
  margin:0;
  color:#fff;
  font-size:clamp(42px,5vw,62px);
  font-weight:800;
  line-height:1.03;
  letter-spacing:-.04em;
}

.tc-rules-page .tc-rules-tabs-intro p {
  max-width:670px;
  margin:17px auto 0 !important;
  color:#9fb3c0;
  font-size:16px;
  line-height:1.7;
}

.tc-rules-page .tc-rules-tabs-shell {
  margin:0 0 42px;
}

@media (max-width:700px) {
  .tc-rules-page .tc-content-shell {
    padding-top:28px;
  }

  .tc-rules-page .tc-rules-content {
    width:min(100% - 28px,1180px);
    margin-top:28px !important;
  }

  .tc-rules-page .tc-rules-tabs-intro {
    margin-bottom:30px;
  }
}


/* V4.36: Rules now mirrors the Guide with a left hand section selector. */
@media (min-width:1001px) {
  .tc-rules-page .tc-rules-tabs-shell {
    display:grid;
    grid-template-columns:285px minmax(0,1fr);
    gap:34px;
    align-items:start;
  }

  .tc-rules-page .tc-rules-tabs {
    position:sticky;
    top:132px;
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    max-height:calc(100vh - 160px);
    overflow:auto;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    scrollbar-width:thin;
  }

  .admin-bar.tc-rules-page .tc-rules-tabs,
  .admin-bar .tc-rules-page .tc-rules-tabs {
    top:164px;
    max-height:calc(100vh - 192px);
  }

  .tc-rules-page .tc-rules-tab {
    width:100%;
    min-height:47px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    align-items:center;
    padding:9px 12px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:7px;
    background:#111f2d;
    color:#eef6f9;
    transition:background .16s ease,border-color .16s ease,color .16s ease;
  }

  .tc-rules-page .tc-rules-tab:hover {
    background:#172837;
    border-color:rgba(39,215,238,.13);
    color:#fff;
    transform:none;
  }

  .tc-rules-page .tc-rules-tab.is-active {
    border-color:#2fc5ef;
    background:linear-gradient(135deg,#35caf2,#24b8ed);
    color:#072431;
    box-shadow:none;
  }

  .tc-rules-page .tc-rules-tab-number {
    width:30px;
    height:30px;
    border:0;
    border-radius:6px;
    background:rgba(255,255,255,.07);
    color:#75e4ef;
    font-size:12px;
  }

  .tc-rules-page .tc-rules-tab.is-active .tc-rules-tab-number {
    border:0;
    background:rgba(7,36,49,.12);
    color:#072431;
  }

  .tc-rules-page .tc-rules-tab-label {
    font-size:13px;
    font-weight:760;
    line-height:1.25;
  }

  .tc-rules-page .tc-rules-panels {
    min-width:0;
    padding:4px 0 30px;
  }

  .tc-rules-page .tc-rules-section {
    width:100%;
  }
}

@media (max-width:1000px) {
  .tc-rules-page .tc-rules-tabs-shell {
    display:block;
  }

  .tc-rules-page .tc-rules-tabs {
    display:none !important;
  }

  .tc-rules-page .tc-rules-mobile-select-wrap {
    display:block;
    margin:0 0 24px;
    padding:14px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    background:#0b1926;
  }

  .tc-rules-page .tc-rules-mobile-label {
    display:block;
    margin:0 0 8px;
    color:#8da4b2;
    font-size:11px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .tc-rules-page .tc-rules-mobile-select {
    width:100%;
    min-height:46px;
    padding:0 40px 0 13px;
    border:1px solid rgba(39,215,238,.16);
    border-radius:10px;
    outline:0;
    background:#102131;
    color:#f2f8fa;
    font:inherit;
    font-size:14px;
    font-weight:750;
  }

  .tc-rules-page .tc-rules-panels {
    min-width:0;
  }
}
\n\n/* V4.36.1: Site wide Rules notes sit below the complete tabbed section. */\n.tc-rules-page .tc-rules-after-tabs {\n  width:100%;\n  margin:28px 0 0;\n  padding:22px 24px;\n  border:1px solid rgba(255,255,255,.075);\n  border-radius:16px;\n  background:linear-gradient(180deg,rgba(13,31,46,.72),rgba(8,24,37,.78));\n  box-shadow:0 16px 40px rgba(0,0,0,.11);\n}\n\n.tc-rules-page .tc-rules-after-tabs .tc-rules-note {\n  margin:0 !important;\n  padding:0;\n  border:0;\n  border-radius:0;\n  background:transparent;\n  color:#b9cad3;\n  font-size:13.5px;\n  line-height:1.7;\n}\n\n.tc-rules-page .tc-rules-after-tabs .tc-rules-note + .tc-rules-note {\n  margin-top:10px !important;\n}\n\n.tc-rules-page .tc-rules-after-tabs .tc-rules-note:first-child {\n  color:#dce8ee;\n}\n\n.tc-rules-page .tc-rules-after-tabs strong {\n  color:#fff;\n}\n\n.tc-rules-page .tc-rules-after-tabs a {\n  color:#6fe5ef;\n  text-underline-offset:3px;\n}\n\n@media(max-width:700px) {\n  .tc-rules-page .tc-rules-after-tabs {\n    margin-top:20px;\n    padding:18px;\n    border-radius:14px;\n  }\n}\n

/* V4.37: Rules header now mirrors the Guide and combined rule paragraphs are split into individual rows. */
.tc-rules-page .tc-rule-item + .tc-rule-item {
  border-top:1px solid rgba(255,255,255,.065);
}

@media(max-width:600px) {
  .tc-rules-page .tc-rules-tabs-intro h1 {
    font-size:42px;
  }
}


/* V4.37.1: keep every numbered rule visually distinct, including rules originally separated with line breaks. */
.tc-rules-page .tc-rule-item + .tc-rule-item {
  border-top:1px solid rgba(255,255,255,.065);
}


/* V4.38: Vote page redesign */
html.tc-vote-booting .tc-vote-page .wp-block-post-content {
  visibility:hidden !important;
}

html.tc-vote-booting body {
  background-color:#0a1624;
}

.tc-vote-page .tc-content-shell {
  padding-top:42px;
}

.tc-vote-page .tc-content-shell > .wp-block-group {
  max-width:none;
  width:100%;
}

.tc-vote-page .tc-content-shell .wp-block-post-title {
  display:none !important;
}

.tc-vote-page .tc-vote-content {
  width:min(1180px, calc(100% - 40px));
  margin:42px auto 105px !important;
}

.tc-vote-hero {
  max-width:820px;
  margin:0 auto 54px;
  text-align:center;
}

/* V4.38.3: one scenery image immediately above the join section. */
.tc-vote-media {
  min-width:0;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:#0d2031;
  box-shadow:0 14px 34px rgba(0,0,0,.15);
}

.tc-vote-media img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3 / 1;
  object-fit:cover;
}

.tc-vote-media-join {
  margin:38px 0 0;
}
.tc-vote-media-join + .tc-vote-cta {
  margin-top:54px;
}

.tc-vote-eyebrow {
  margin-bottom:12px;
  color:#6fe5ef;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.tc-vote-hero h1 {
  margin:0;
  color:#fff;
  font-size:clamp(44px,5.4vw,66px);
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.045em;
}

.tc-vote-hero p {
  max-width:700px;
  margin:18px auto 0 !important;
  color:#9fb3c0;
  font-size:17px;
  line-height:1.7;
}

.tc-vote-how,
.tc-vote-sites-section,
.tc-vote-rewards-grid,
.tc-vote-cta {
  margin-top:38px;
}

.tc-vote-section-heading {
  max-width:760px;
  margin:0 0 22px;
}

.tc-vote-section-heading > span,
.tc-vote-card-kicker,
.tc-vote-cta > div > span {
  display:block;
  margin-bottom:7px;
  color:#6fe5ef;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.tc-vote-section-heading h2,
.tc-vote-info-card h2,
.tc-vote-cta h2 {
  margin:0;
  color:#fff;
  font-size:clamp(28px,3vw,38px);
  line-height:1.12;
  letter-spacing:-.025em;
}

.tc-vote-section-heading p {
  margin:10px 0 0 !important;
  color:#9fb3c0;
  font-size:15px;
  line-height:1.7;
}

.tc-vote-step-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.tc-vote-step {
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:20px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(14,31,47,.88),rgba(10,25,38,.82));
  box-shadow:0 14px 34px rgba(0,0,0,.13);
}

.tc-vote-step b {
  flex:0 0 34px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(39,215,238,.25);
  border-radius:10px;
  background:rgba(39,215,238,.08);
  color:#79e8f2;
  font-size:13px;
}

.tc-vote-step strong {
  display:block;
  margin:1px 0 5px;
  color:#f7fbfd;
  font-size:14px;
}

.tc-vote-step span {
  display:block;
  color:#93a8b5;
  font-size:13px;
  line-height:1.55;
}

.tc-vote-sites-section {
  padding:30px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(13,31,46,.86),rgba(8,23,36,.9));
  box-shadow:0 22px 55px rgba(0,0,0,.18);
}

.tc-vote-sites-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.tc-vote-site-card {
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 28px;
  gap:12px;
  align-items:center;
  min-height:78px;
  padding:14px 15px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:14px;
  background:#0d1d2b;
  color:inherit;
  text-decoration:none !important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.tc-vote-site-card:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.34);
  background:#112536;
}

.tc-vote-site-number {
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:11px;
  background:linear-gradient(135deg,#35caf2,#24b8ed);
  color:#062735;
  font-size:14px;
  font-weight:900;
}

.tc-vote-site-copy strong,
.tc-vote-site-copy small {
  display:block;
}

.tc-vote-site-copy strong {
  color:#f6fbfd;
  font-size:14px;
  line-height:1.25;
}

.tc-vote-site-copy small {
  margin-top:3px;
  color:#7f98a8;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.tc-vote-site-arrow {
  color:#61ddeb;
  font-size:19px;
  text-align:center;
}

.tc-vote-rewards-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.tc-vote-info-card {
  position:relative;
  padding:28px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:linear-gradient(180deg,#10283f,#0d2031);
  box-shadow:0 18px 46px rgba(0,0,0,.16);
}

.tc-vote-card-icon {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  border:1px solid rgba(39,215,238,.16);
  border-radius:13px;
  background:rgba(39,215,238,.07);
  font-size:23px;
}

.tc-vote-info-card p {
  margin:13px 0 0 !important;
  color:#aec0ca;
  font-size:14.5px;
  line-height:1.7;
}

.tc-vote-command-list {
  display:grid;
  gap:9px;
  margin:22px 0 0;
}

.tc-vote-command {
  display:flex;
  gap:11px;
  align-items:center;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:11px;
  background:rgba(5,17,27,.38);
  color:#a8bbc6;
  font-size:12.5px;
}

.tc-vote-command code {
  flex:0 0 auto;
  padding:4px 7px;
  border-radius:7px;
  background:rgba(39,215,238,.10);
  color:#6fe5ef;
  font-family:inherit;
  font-size:12px;
  font-weight:850;
}

.tc-vote-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:22px;
  padding:0 18px;
  border:1px solid rgba(39,215,238,.35);
  border-radius:11px;
  background:rgba(39,215,238,.08);
  color:#77e7f1 !important;
  font-size:13px;
  font-weight:850;
  text-decoration:none !important;
}

.tc-vote-button:hover {
  background:rgba(39,215,238,.14);
}

.tc-vote-button-primary {
  margin:0;
  border-color:transparent;
  background:linear-gradient(135deg,#36d2ea,#22bad8);
  color:#062633 !important;
  box-shadow:0 12px 30px rgba(34,186,216,.18);
}

.tc-vote-cta {
  display:flex;
  gap:28px;
  align-items:center;
  justify-content:space-between;
  padding:30px 32px;
  border:1px solid rgba(39,215,238,.15);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(17,47,67,.96),rgba(9,27,40,.96));
}

.tc-vote-cta p {
  margin:8px 0 0 !important;
  color:#9eb3bf;
  font-size:14px;
}

@media(max-width:900px) {
  .tc-vote-step-grid,
  .tc-vote-sites-grid {
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px) {
  .tc-vote-page .tc-content-shell {
    padding-top:28px;
  }

  .tc-vote-page .tc-vote-content {
    width:min(100% - 28px,1180px);
    margin-top:28px !important;
  }

  .tc-vote-hero {
    margin-bottom:38px;
  }

  .tc-vote-media-join img {
    aspect-ratio:16 / 9;
  }

  .tc-vote-hero h1 {
    font-size:42px;
  }

  .tc-vote-hero p {
    font-size:15.5px;
  }

  .tc-vote-step-grid,
  .tc-vote-sites-grid,
  .tc-vote-rewards-grid {
    grid-template-columns:1fr;
  }

  .tc-vote-sites-section {
    padding:20px;
    border-radius:18px;
  }

  .tc-vote-info-card {
    padding:22px;
  }

  .tc-vote-cta {
    display:block;
    padding:24px;
  }

  .tc-vote-cta .tc-vote-button {
    width:100%;
    margin-top:20px;
  }
}

/* Keep the image first archive order after every earlier Events rule. */
.post-type-archive-tribe_events .tribe-events-calendar-list__event,
.post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event {
  grid-template-columns:minmax(260px,340px) minmax(0,1fr) !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper {
  grid-column:1 !important;
  grid-row:1 !important;
}

.post-type-archive-tribe_events .tribe-events-calendar-list__event-details {
  grid-column:2 !important;
  grid-row:1 !important;
}

@media(max-width:900px) {
  .post-type-archive-tribe_events .tribe-events-calendar-list__event,
  .post-type-archive-tribe_events .tribe-common-g-row.tribe-events-calendar-list__event {
    grid-template-columns:1fr !important;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-list__event-featured-image-wrapper {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  .post-type-archive-tribe_events .tribe-events-calendar-list__event-details {
    grid-column:1 !important;
    grid-row:2 !important;
  }
}

/* V4.41: Snapshots gallery redesign. */
html.tc-snapshots-booting .tc-snapshots-page .tc-content-shell {
  visibility:hidden !important;
}

html.tc-snapshots-booting body {
  background-color:#08121d;
}

.tc-snapshots-page .tc-content-shell {
  padding:0 0 108px;
}

.tc-snapshots-page .tc-content-shell > .wp-block-group {
  width:100%;
  max-width:none;
}

.tc-snapshots-page .tc-snapshots-hero {
  margin-bottom:48px !important;
}

.tc-snapshots-page .tc-snapshots-content {
  width:min(1240px,calc(100% - 40px));
  max-width:1240px !important;
  margin:0 auto !important;
}

.tc-snapshots-page .tc-snapshots-gallery {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:dense;
  grid-auto-rows:210px;
  gap:16px !important;
  width:100% !important;
  margin:0 !important;
}

.tc-snapshots-page .tc-snapshots-gallery > .wp-block-image {
  display:block !important;
  width:auto !important;
  height:auto !important;
  min-width:0;
  margin:0 !important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:#0d2031;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
}

.tc-snapshots-page .tc-snapshots-gallery > .tc-snapshot-featured {
  grid-column:span 2;
  grid-row:span 2;
}

.tc-snapshots-page .tc-snapshots-gallery > .tc-snapshot-hidden {
  display:none !important;
}

.tc-snapshots-page .tc-snapshots-gallery .wp-block-image img {
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover;
  transition:transform .32s ease,filter .32s ease;
}

.tc-snapshots-page .tc-snapshots-gallery .wp-block-image:hover img {
  transform:scale(1.035);
  filter:brightness(1.06);
}

.tc-snapshots-page .tc-snapshots-gallery .wp-block-image figcaption {
  right:12px !important;
  bottom:12px !important;
  left:12px !important;
  width:auto !important;
  max-height:none !important;
  padding:12px 14px !important;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:rgba(6,18,28,.82) !important;
  color:#eef7fa !important;
  font-size:12px !important;
  font-weight:750;
  line-height:1.4;
  text-align:left !important;
  backdrop-filter:blur(8px);
}

.tc-snapshots-page .tc-snapshots-controls {
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:34px 0 0;
}

.tc-snapshots-page .tc-snapshots-load-more {
  min-height:48px;
  padding:0 22px;
  border:1px solid rgba(39,215,238,.28);
  border-radius:11px;
  background:rgba(39,215,238,.08);
  color:#75e5ef;
  font:inherit;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
  transition:transform .16s ease,background .16s ease,border-color .16s ease;
}

.tc-snapshots-page .tc-snapshots-load-more:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.46);
  background:rgba(39,215,238,.13);
}

.tc-snapshots-page .tc-snapshots-load-more:focus-visible {
  outline:3px solid rgba(39,215,238,.32);
  outline-offset:3px;
}

.tc-snapshots-page .tc-snapshots-status {
  margin:10px 0 0 !important;
  color:#8197a5 !important;
  font-size:12px !important;
}

.tc-snapshots-page .tc-snapshots-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin:64px 0 0;
  padding:30px 32px;
  border:1px solid rgba(39,215,238,.15);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(17,47,67,.96),rgba(9,27,40,.96));
  box-shadow:0 18px 45px rgba(0,0,0,.14);
}

.tc-snapshots-page .tc-snapshots-cta span {
  display:block;
  margin:0 0 7px;
  color:#6fe5ef;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}

.tc-snapshots-page .tc-snapshots-cta h2 {
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(28px,3vw,38px) !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
}

.tc-snapshots-page .tc-snapshots-cta p {
  margin:8px 0 0 !important;
  color:#9eb3bf !important;
  font-size:14px !important;
}

.tc-snapshots-page .tc-snapshots-cta .tc-page-button {
  flex:0 0 auto;
  margin:0;
}

@media(max-width:900px) {
  .tc-snapshots-page .tc-snapshots-gallery {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:190px;
  }
}

@media(max-width:600px) {
  .tc-snapshots-page .tc-content-shell {
    padding-bottom:76px;
  }

  .tc-snapshots-page .tc-snapshots-content {
    width:calc(100% - 28px);
  }

  .tc-snapshots-page .tc-snapshots-gallery {
    grid-template-columns:1fr;
    grid-auto-rows:210px;
    gap:12px !important;
  }

  .tc-snapshots-page .tc-snapshots-gallery > .tc-snapshot-featured {
    grid-column:span 1;
    grid-row:span 1;
  }

  .tc-snapshots-page .tc-snapshots-gallery > .wp-block-image {
    border-radius:13px;
  }

  .tc-snapshots-page .tc-snapshots-cta {
    display:block;
    margin-top:48px;
    padding:24px;
    border-radius:16px;
  }

  .tc-snapshots-page .tc-snapshots-cta .tc-page-button {
    width:100%;
    margin-top:20px;
  }
}

/* V4.42: searchable Price Index. */
html.tc-price-index-booting .tc-price-index-page .tc-content-shell {
  visibility:hidden !important;
}

html.tc-price-index-booting body {
  background-color:#08121d;
}

.tc-price-index-page .tc-content-shell {
  padding:0 0 108px;
}

.tc-price-index-page .tc-content-shell > .wp-block-group {
  width:100%;
  max-width:none;
}

.tc-price-index-page .tc-price-index-hero {
  margin-bottom:42px !important;
}

.tc-price-index-page .tc-price-index-content {
  width:min(1180px,calc(100% - 40px));
  max-width:1180px !important;
  margin:0 auto !important;
}

.tc-price-index-page .tc-price-rules {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:0 0 24px;
}

.tc-price-index-page .tc-price-rules .tc-info-card {
  min-height:100%;
  padding:22px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(15,38,55,.96),rgba(10,28,42,.96));
  box-shadow:0 14px 32px rgba(0,0,0,.12);
}

.tc-price-index-page .tc-price-rules .tc-info-card-icon {
  display:block;
  width:auto;
  height:auto;
  margin:0 0 14px;
  border:0;
  border-radius:0;
  background:transparent;
  font-size:24px;
  line-height:1;
}

.tc-price-index-page .tc-price-rules h2 {
  margin:0 0 9px !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.25 !important;
}

.tc-price-index-page .tc-price-rules p {
  margin:0 !important;
  color:#9db2bf !important;
  font-size:13px !important;
  line-height:1.65 !important;
}

.tc-price-index-page .tc-price-browser {
  overflow:hidden;
  border:1px solid rgba(39,215,238,.14);
  border-radius:20px;
  background:#0a1b29;
  box-shadow:0 22px 55px rgba(0,0,0,.18);
}

.tc-price-index-page .tc-price-tools {
  padding:28px;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:linear-gradient(135deg,rgba(17,47,67,.94),rgba(10,29,43,.96));
}

.tc-price-index-page .tc-price-search {
  display:block;
  max-width:760px;
  margin:0 auto;
}

.tc-price-index-page .tc-price-search-label {
  display:block;
  margin:0 0 9px;
  color:#fff;
  font-size:14px;
  font-weight:850;
}

.tc-price-index-page .tc-price-search-icon {
  position:absolute;
  width:0;
  height:0;
  overflow:visible;
  transform:translate(17px,13px);
  color:#65dce8;
  font-size:25px;
  line-height:1;
  pointer-events:none;
}

.tc-price-index-page .tc-price-search input {
  box-sizing:border-box;
  width:100%;
  height:54px;
  padding:0 48px;
  border:1px solid rgba(117,229,239,.24);
  border-radius:12px;
  outline:none;
  background:#071723;
  color:#f5fbfd;
  font:inherit;
  font-size:15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

.tc-price-index-page .tc-price-search input::placeholder {
  color:#728b99;
}

.tc-price-index-page .tc-price-search input:focus {
  border-color:#36cfe0;
  background:#091d2b;
  box-shadow:0 0 0 4px rgba(54,207,224,.11);
}

.tc-price-index-page .tc-price-status {
  min-height:18px;
  margin:10px auto 0 !important;
  color:#87a1af !important;
  font-size:12px !important;
  text-align:center;
}

.tc-price-index-page .tc-price-navigation {
  display:grid;
  grid-template-columns:repeat(13,minmax(38px,1fr));
  gap:7px;
  padding:18px 24px;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:#0c2131;
}

.tc-price-index-page .tc-price-letter {
  min-width:0;
  height:38px;
  padding:0;
  border:1px solid rgba(255,255,255,.08);
  border-radius:9px;
  background:rgba(255,255,255,.025);
  color:#9eb5c2;
  font:inherit;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  transition:color .16s ease,border-color .16s ease,background .16s ease,transform .16s ease;
}

.tc-price-index-page .tc-price-letter:hover:not(:disabled) {
  transform:translateY(-1px);
  border-color:rgba(39,215,238,.32);
  color:#fff;
}

.tc-price-index-page .tc-price-letter.is-active {
  border-color:#35cada;
  background:#2bc0d3;
  color:#05141d;
  box-shadow:0 7px 18px rgba(43,192,211,.18);
}

.tc-price-index-page .tc-price-letter:focus-visible {
  outline:3px solid rgba(39,215,238,.28);
  outline-offset:2px;
}

.tc-price-index-page .tc-price-letter:disabled {
  opacity:.28;
  cursor:not-allowed;
}

.tc-price-index-page .tc-price-searching .tc-price-navigation {
  display:none;
}

.tc-price-index-page .tc-price-sections {
  padding:28px;
}

.tc-price-index-page .tc-price-letter-section[hidden] {
  display:none !important;
}

.tc-price-index-page .tc-price-letter-heading {
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:30px !important;
  line-height:1 !important;
}

.tc-price-index-page .tc-price-searching .tc-price-letter-section + .tc-price-letter-section:not([hidden]) {
  margin-top:34px;
  padding-top:30px;
  border-top:1px solid rgba(255,255,255,.08);
}

.tc-price-index-page .tc-price-table {
  overflow:auto;
  max-height:720px;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:#091927;
  scrollbar-color:#25546a #091927;
  scrollbar-width:thin;
}

.tc-price-index-page .tc-price-table table {
  width:100%;
  min-width:650px;
  margin:0;
  border:0 !important;
  border-collapse:separate;
  border-spacing:0;
  table-layout:auto;
}

.tc-price-index-page .tc-price-table thead {
  position:sticky;
  top:0;
  z-index:2;
  border:0;
  background:#123247;
}

.tc-price-index-page .tc-price-table th {
  padding:15px 18px !important;
  border:0 !important;
  color:#73e5ef !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1.25;
  letter-spacing:.08em;
  text-align:left;
  text-transform:uppercase;
}

.tc-price-index-page .tc-price-table th:first-child {
  width:34%;
}

.tc-price-index-page .tc-price-table th:nth-child(2) {
  width:40%;
}

.tc-price-index-page .tc-price-table td {
  padding:14px 18px !important;
  border:0 !important;
  border-top:1px solid rgba(255,255,255,.055) !important;
  background:transparent !important;
  color:#a9bdc8 !important;
  font-size:13px !important;
  line-height:1.45;
  vertical-align:middle;
}

.tc-price-index-page .tc-price-table td:first-child {
  color:#f5fafc !important;
  font-weight:800;
}

.tc-price-index-page .tc-price-table tbody tr:nth-child(even) td {
  background:rgba(255,255,255,.018) !important;
}

.tc-price-index-page .tc-price-table tbody tr:hover td {
  background:rgba(39,215,238,.045) !important;
}

.tc-price-index-page .tc-price-table tr[hidden] {
  display:none !important;
}

.tc-price-index-page .tc-price-no-results .tc-price-sections::after {
  content:'No matching items found. Try a shorter or more general search.';
  display:block;
  padding:48px 20px;
  border:1px dashed rgba(255,255,255,.12);
  border-radius:13px;
  color:#91a8b5;
  font-size:14px;
  text-align:center;
}

@media(max-width:900px) {
  .tc-price-index-page .tc-price-rules {
    grid-template-columns:1fr;
  }

  .tc-price-index-page .tc-price-rules .tc-info-card {
    display:grid;
    grid-template-columns:30px 1fr;
    column-gap:15px;
    align-items:start;
  }

  .tc-price-index-page .tc-price-rules .tc-info-card-icon {
    grid-row:1 / span 2;
    margin:0;
  }

  .tc-price-index-page .tc-price-navigation {
    grid-template-columns:repeat(9,minmax(36px,1fr));
  }
}

@media(max-width:600px) {
  .tc-price-index-page .tc-content-shell {
    padding-bottom:76px;
  }

  .tc-price-index-page .tc-price-index-content {
    width:calc(100% - 28px);
  }

  .tc-price-index-page .tc-price-rules .tc-info-card {
    padding:18px;
  }

  .tc-price-index-page .tc-price-browser {
    border-radius:16px;
  }

  .tc-price-index-page .tc-price-tools {
    padding:22px 18px;
  }

  .tc-price-index-page .tc-price-search input {
    height:50px;
    padding-right:14px;
    padding-left:43px;
    font-size:14px;
  }

  .tc-price-index-page .tc-price-search-icon {
    transform:translate(14px,12px);
  }

  .tc-price-index-page .tc-price-navigation {
    grid-template-columns:repeat(6,minmax(34px,1fr));
    gap:6px;
    padding:15px;
  }

  .tc-price-index-page .tc-price-sections {
    padding:20px 14px;
  }

  .tc-price-index-page .tc-price-letter-heading {
    margin-left:4px !important;
    font-size:26px !important;
  }

  .tc-price-index-page .tc-price-table {
    max-height:620px;
    border-radius:11px;
  }

  .tc-price-index-page .tc-price-table table {
    min-width:610px;
  }

  .tc-price-index-page .tc-price-table th,
  .tc-price-index-page .tc-price-table td {
    padding-right:14px !important;
    padding-left:14px !important;
  }
}

/* V4.44: refreshed global footer. */
.tc-footer.tc-footer-v2 {
  margin-block-start:0 !important;
  padding:42px 20px 28px;
  border-top:1px solid rgba(39,215,238,.10);
  background:
    radial-gradient(circle at 18% 0%,rgba(39,215,238,.045),transparent 30%),
    #050d15;
}

.tc-footer-v2 .tc-footer-cta {
  box-sizing:border-box;
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:28px 30px;
  border:1px solid rgba(39,215,238,.16);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(18,51,70,.94),rgba(9,29,43,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.18);
}

.tc-footer-v2 .tc-footer-cta-copy {
  flex:1 1 560px;
  margin:0 !important;
}

.tc-footer-v2 .tc-footer-eyebrow {
  margin:0 0 7px !important;
  color:#6fe5ef !important;
  font-size:10px !important;
  font-weight:900;
  letter-spacing:.14em;
}

.tc-footer-v2 .tc-footer-cta h2 {
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(25px,3vw,34px) !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
}

.tc-footer-v2 .tc-footer-cta-copy > p:last-child {
  max-width:650px;
  margin:8px 0 0 !important;
  color:#9fb4c0 !important;
  font-size:13px !important;
  line-height:1.6;
}

.tc-footer-v2 .tc-footer-actions {
  flex:0 0 auto;
  gap:10px !important;
  margin:0 !important;
}

.tc-footer-v2 .tc-footer-actions .wp-block-button__link {
  min-height:45px;
  padding:0 19px !important;
  border-radius:10px !important;
  font-size:12px !important;
  font-weight:900 !important;
}

.tc-footer-v2 .tc-footer-grid {
  display:grid !important;
  grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,.72fr));
  gap:clamp(28px,5vw,66px);
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:54px auto 0 !important;
}

.tc-footer-v2 .tc-footer-brand .wp-block-site-logo {
  margin:0 0 17px !important;
}

.tc-footer-v2 .tc-footer-brand .wp-block-site-logo img {
  width:auto !important;
  max-width:205px !important;
  max-height:104px !important;
}

.tc-footer-v2 .tc-footer-brand > p {
  max-width:300px;
  margin:0 !important;
  color:#8fa6b4 !important;
  font-size:13px !important;
  line-height:1.65;
}

.tc-footer-v2 .tc-footer-column h3 {
  margin:3px 0 18px !important;
  color:#fff !important;
  font-size:14px !important;
  line-height:1.2 !important;
}

.tc-footer-v2 .tc-footer-column p {
  margin:0 0 11px !important;
  line-height:1.45;
}

.tc-footer-v2 .tc-footer-column a {
  color:#94aab7 !important;
  font-size:13px !important;
  text-decoration:none !important;
  transition:color .16s ease,transform .16s ease;
}

.tc-footer-v2 .tc-footer-column a:hover,
.tc-footer-v2 .tc-footer-column a:focus-visible {
  color:#72e5ef !important;
}

.tc-footer-v2 .tc-footer-socials {
  gap:10px !important;
  margin:20px 0 0 !important;
  font-size:28px !important;
}

.tc-footer-v2 .tc-footer-socials .wp-social-link {
  background:transparent !important;
  color:#6edfe9 !important;
  font-size:28px !important;
}

.tc-footer-v2 .tc-footer-socials .wp-social-link-anchor {
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  padding:6px !important;
}

.tc-footer-v2 .tc-footer-socials .wp-social-link svg {
  width:28px !important;
  height:28px !important;
}

.tc-footer-v2 .tc-footer-socials .wp-social-link:hover {
  transform:translateY(-2px);
  color:#fff !important;
}

.tc-footer-v2 .tc-footer-legal {
  box-sizing:border-box;
  display:flex !important;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:42px auto 0 !important;
  padding:22px 0 0 !important;
  border-top:1px solid rgba(255,255,255,.08);
}

.tc-footer-v2 .tc-footer-legal-copy {
  margin:0 !important;
}

.tc-footer-v2 .tc-footer-legal p {
  margin:3px 0 !important;
  color:#718895 !important;
  font-size:11px !important;
  line-height:1.5;
}

.tc-footer-v2 .tc-footer-legal a {
  color:#9bb0bb !important;
  font-size:inherit !important;
}

.tc-footer-v2 .tc-footer-status {
  flex:0 0 auto;
  color:#8da2ad !important;
  white-space:nowrap;
}

.tc-footer-v2 .tc-footer-status span {
  margin-right:6px;
  color:#45d2a4;
  font-size:9px;
}

@media(max-width:900px) {
  .tc-footer-v2 .tc-footer-cta,
  .tc-footer-v2 .tc-footer-grid,
  .tc-footer-v2 .tc-footer-legal {
    width:min(760px,calc(100% - 36px)) !important;
    max-width:760px !important;
  }

  .tc-footer-v2 .tc-footer-cta {
    align-items:flex-start;
  }

  .tc-footer-v2 .tc-footer-actions {
    flex:1 1 100%;
    justify-content:flex-start !important;
  }

  .tc-footer-v2 .tc-footer-grid {
    grid-template-columns:1.25fr 1fr 1fr;
  }

  .tc-footer-v2 .tc-footer-brand {
    grid-column:1 / -1;
    padding-bottom:7px;
  }

  .tc-footer-v2 .tc-footer-brand > p {
    max-width:520px;
  }
}

@media(max-width:600px) {
  .tc-footer.tc-footer-v2 {
    padding:28px 14px 22px;
  }

  .tc-footer-v2 .tc-footer-cta,
  .tc-footer-v2 .tc-footer-grid,
  .tc-footer-v2 .tc-footer-legal {
    width:100% !important;
    max-width:none !important;
  }

  .tc-footer-v2 .tc-footer-cta {
    padding:23px 21px;
    border-radius:15px;
  }

  .tc-footer-v2 .tc-footer-actions {
    display:grid !important;
    grid-template-columns:1fr;
    width:100%;
  }

  .tc-footer-v2 .tc-footer-actions .wp-block-button,
  .tc-footer-v2 .tc-footer-actions .wp-block-button__link {
    width:100%;
  }

  .tc-footer-v2 .tc-footer-grid {
    grid-template-columns:1fr 1fr;
    gap:34px 22px;
    margin-top:42px !important;
  }

  .tc-footer-v2 .tc-footer-brand {
    grid-column:1 / -1;
  }

  .tc-footer-v2 .tc-footer-column:last-child {
    grid-column:1 / -1;
  }

  .tc-footer-v2 .tc-footer-legal {
    display:block !important;
    margin-top:34px !important;
  }

  .tc-footer-v2 .tc-footer-status {
    margin-top:15px !important;
    white-space:normal;
  }
}

/* V4.46: prevent legacy page layouts flashing before enhancement. */
html.tc-events-booting .tec-block__archive-events,
html.tc-support-booting .tc-content-shell,
html.tc-staff-booting .tc-content-shell,
html.tc-legal-booting .tc-content-shell {
  visibility:hidden !important;
}

html.tc-events-booting body,
html.tc-support-booting body,
html.tc-staff-booting body,
html.tc-legal-booting body {
  background-color:#08121d;
}

/* V4.47: single News article layout. */
.single-post .tc-single-post-shell {
  padding:64px 20px 108px;
}

.single-post .tc-single-post-hero {
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:0 auto 42px !important;
}

.single-post .tc-single-post-title {
  max-width:950px;
  margin:10px 0 16px !important;
  color:#fff !important;
  font-size:clamp(40px,6vw,72px) !important;
  line-height:1.04 !important;
  letter-spacing:-.045em !important;
}

.single-post .tc-single-post-meta {
  gap:10px 18px !important;
  margin:0 0 30px !important;
  color:#91a8b5;
  font-size:13px;
}

.single-post .tc-single-post-meta a {
  color:#6fe5ef !important;
}

.single-post .tc-single-post-image {
  margin:0 !important;
  overflow:hidden;
  border:1px solid rgba(39,215,238,.13);
  border-radius:22px;
  box-shadow:0 22px 55px rgba(0,0,0,.2);
}

.single-post .tc-single-post-image img {
  width:100%;
  max-height:650px;
  object-fit:cover;
}

.single-post .tc-single-post-layout {
  display:grid !important;
  grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  align-items:start;
  gap:clamp(32px,5vw,68px);
  width:min(1180px,calc(100% - 40px)) !important;
  max-width:1180px !important;
  margin:0 auto !important;
}

.single-post .tc-single-post-sidebar {
  position:sticky;
  top:118px;
  display:grid;
  grid-auto-rows:max-content;
  align-content:start;
  gap:20px;
}

.single-post .tc-single-sidebar-card {
  align-self:start;
  height:auto !important;
  min-height:0 !important;
  padding:23px;
  border:1px solid rgba(39,215,238,.13);
  border-radius:18px;
  background:#0d1c2a;
  box-shadow:0 14px 34px rgba(0,0,0,.13);
}

.single-post .tc-single-sidebar-card h2 {
  margin:0 0 14px !important;
  color:#fff !important;
  font-size:18px !important;
}

.single-post .tc-single-sidebar-card .wp-block-shortcode {
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.single-post .tc-sidebar-list {
  display:grid !important;
  grid-auto-rows:max-content;
  align-content:start;
  gap:0;
  height:auto !important;
}

.single-post .tc-sidebar-article {
  display:block;
  position:static !important;
  flex:none !important;
  align-self:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  margin-block:0 !important;
  padding:14px 0 !important;
  border-top:1px solid rgba(255,255,255,.07);
  color:#dce7ec !important;
  text-decoration:none !important;
}

.single-post .tc-sidebar-article:first-child {
  padding-top:0;
  border-top:0;
}

.single-post .tc-sidebar-article span {
  display:block;
  margin:0 !important;
  font-size:14px;
  font-weight:750;
  line-height:1.4;
}

.single-post .tc-sidebar-article time,
.single-post .tc-sidebar-event time {
  display:block;
  margin-top:5px;
  color:#7f98a6;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.single-post .tc-sidebar-article:hover span,
.single-post .tc-sidebar-event:hover strong {
  color:#6fe5ef;
}

.single-post .tc-sidebar-article-row {
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:9px 0 !important;
  border-top:1px solid rgba(255,255,255,.07);
}

.single-post .tc-sidebar-article-row:first-child {
  padding-top:0 !important;
  border-top:0;
}

.single-post .tc-sidebar-article-title {
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  color:#dce7ec !important;
  font-size:14px;
  font-weight:750;
  line-height:1.25;
  text-decoration:none !important;
}

.single-post .tc-sidebar-article-row time {
  display:block !important;
  height:auto !important;
  min-height:0 !important;
  margin:3px 0 0 !important;
  padding:0 !important;
  color:#7f98a6;
  font-size:10px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.single-post .tc-sidebar-article-title:hover {
  color:#6fe5ef !important;
}

.single-post .tc-sidebar-events {
  display:grid !important;
  grid-auto-rows:max-content;
  align-content:start;
  gap:0;
  height:auto !important;
}

.single-post .tc-sidebar-event {
  display:grid !important;
  grid-template-columns:84px minmax(0,1fr) !important;
  align-items:center;
  justify-content:flex-start !important;
  gap:15px;
  position:static !important;
  flex:none !important;
  align-self:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  margin-block:0 !important;
  padding:14px 0 !important;
  border-top:1px solid rgba(255,255,255,.07);
  text-align:left;
  color:#dce7ec !important;
  text-decoration:none !important;
}

.single-post .tc-sidebar-event:not(:has(img)) {
  grid-template-columns:1fr;
}

.single-post .tc-sidebar-event > br {
  display:none !important;
}

.single-post .tc-sidebar-event:first-child {
  padding-top:0 !important;
  border-top:0;
}

.single-post .tc-sidebar-event img {
  display:block !important;
  width:84px !important;
  height:84px !important;
  max-width:none !important;
  margin:0 !important;
  object-fit:cover;
  border-radius:12px;
}

.single-post .tc-sidebar-event strong {
  display:block;
  margin:0 !important;
  font-size:14px;
  line-height:1.35;
}

.single-post .tc-sidebar-event > span {
  display:block !important;
  min-width:0;
  margin:0 !important;
  text-align:left !important;
}

.single-post .tc-sidebar-all-link {
  margin:17px 0 0 !important;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.07);
}

.single-post .tc-sidebar-all-link a,
.single-post .tc-single-back-news a {
  color:#6fe5ef !important;
  font-size:12px;
  font-weight:800;
  text-decoration:none !important;
}

.single-post .tc-sidebar-empty {
  margin:0;
  color:#91a7b4;
  font-size:13px;
}

.single-post .tc-single-post-article {
  min-width:0;
  padding:4px 0 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.single-post .tc-single-post-article .wp-block-post-content {
  max-width:760px;
  margin:0 auto;
  color:#c5d4dc;
  font-size:16px;
  line-height:1.82;
}

.single-post .tc-single-post-article h2,
.single-post .tc-single-post-article h3 {
  color:#fff !important;
}

.single-post .tc-single-post-article img {
  border-radius:14px;
}

.single-post .tc-article-navigation {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:50px 0 0;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.08);
}

.single-post .tc-article-nav-card {
  display:flex;
  min-height:112px;
  padding:18px 20px;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(39,215,238,.13);
  border-radius:15px;
  background:#102334;
  color:#fff !important;
  text-decoration:none !important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.single-post .tc-article-nav-card:hover {
  transform:translateY(-2px);
  border-color:rgba(39,215,238,.34);
  background:#12283b;
}

.single-post .tc-article-nav-card span {
  margin-bottom:7px;
  color:#62dce8;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.single-post .tc-article-nav-card strong {
  font-size:14px;
  line-height:1.4;
}

.single-post .tc-article-nav-next {
  text-align:right;
}

.single-post .tc-single-back-news {
  margin:22px 0 0 !important;
  text-align:center;
}

@media(max-width:850px) {
  .single-post .tc-single-post-layout {
    display:flex !important;
    flex-direction:column;
  }

  .single-post .tc-single-post-article {
    order:1;
    width:100%;
  }

  .single-post .tc-single-post-sidebar {
    position:static;
    order:2;
    width:100%;
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:600px) {
  .single-post .tc-single-post-shell {
    padding:42px 14px 78px;
  }

  .single-post .tc-single-post-hero,
  .single-post .tc-single-post-layout {
    width:100% !important;
  }

  .single-post .tc-single-post-title {
    font-size:clamp(36px,12vw,52px) !important;
  }

  .single-post .tc-single-post-image {
    border-radius:16px;
  }

  .single-post .tc-single-post-article {
    padding:0;
  }

  .single-post .tc-single-post-sidebar,
  .single-post .tc-article-navigation {
    grid-template-columns:1fr;
  }

  .single-post .tc-article-navigation > span:empty {
    display:none;
  }

  .single-post .tc-article-nav-next {
    text-align:left;
  }
}
