/* Limitless Park: reader navigation and responsive layout, September 2026. */
.header-main { padding: 18px 24px; }
.site-branding { margin: 0; display: flex; align-items: center; gap: 16px; }
.site-logo-link, .custom-logo-link { display: inline-block; flex: 0 0 auto; line-height: 1; }
.site-logo, .custom-logo { display: block; max-height: 64px; width: auto; }
.site-title { margin: 0; font-size: 30px; line-height: 1.25; }
.site-description { font-size: 17px; margin: 0 0 0 auto; }
#headimg { background: #303033; text-align: center; }
#headimg img { display: block; width: auto; height: auto; max-width: 100%; max-height: 210px; margin: 0 auto; }
#main-navigation .main-navigation-menu > li > a { padding: 16px 18px; }
#main-navigation a[href*="/explore/"] { background: #ffd51e; color: #111; font-weight: 700; }
.entry-title, .entry-title a, .page-title { text-transform: none; line-height: 1.25; }
.entry-content { line-height: 1.7; }
.entry-content a:not(.wp-element-button):not(.wp-block-button__link) { text-underline-offset: .18em; }
.wp-block-button__link, .wp-block-search__button, .wp-block-jetpack-button button { min-height: 44px; }
.wp-block-buttons { gap: 12px; margin: 24px 0; }
.entry-content .wp-block-button__link { background: #ffd51e !important; color: #111 !important; border: 2px solid #111; border-radius: 3px; font-weight: 700; padding: 12px 18px; }
.entry-content .wp-block-button__link:hover, .entry-content .wp-block-button__link:focus-visible { background: #111 !important; color: #fff !important; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 3px solid #1869c7; outline-offset: 3px; }
.contact-form input, .contact-form textarea { max-width: 100%; font-size: 16px; }
.contact-form input:user-invalid, .contact-form textarea:user-invalid { border: 2px solid #a51d24; }
.footer-widgets a[href^="mailto:"] { overflow-wrap: anywhere; }
.wp-block-search__inside-wrapper { max-width: 100%; }
.wp-block-search__input { min-width: 0; font-size: 16px; }
.wp-block-search__button { margin-left: 8px; }
@media (max-width: 800px) {
  /* Keep the expanded native menu reachable within the mobile viewport. */
  #masthead { position: sticky; top: 0; z-index: 900; max-height: 100vh; max-height: 100dvh; overflow-y: auto; overscroll-behavior: contain; }
  .admin-bar #masthead { top: 46px; max-height: calc(100vh - 46px); max-height: calc(100dvh - 46px); }
  .header-main { padding: 10px 16px; }
  .site-branding { justify-content: center; gap: 12px; }
  .site-logo, .custom-logo { max-height: 44px; }
  .site-title { font-size: 25px; margin: 0; }
  .site-description { display: none; }
  #main-navigation a:focus-visible, #main-navigation-toggle:focus-visible { outline-offset: -3px; }
  #headimg img { width: 100%; max-height: none; }
  .entry-title { font-size: 27px; }
  .entry-content { font-size: 17px; }
  .wp-block-buttons > .wp-block-button { max-width: 100%; }
  .wp-block-button__link { box-sizing: border-box; }
  .wp-block-columns { gap: 24px; }
}
@media (max-width: 600px) {
  .admin-bar #masthead { top: 0; max-height: 100vh; max-height: 100dvh; }
  .entry-content .wp-block-search__button { padding: 10px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Let keyboard focus open native mobile submenus without a pointer. */
@media (max-width: 60em) {
  #main-navigation .menu-item-has-children:focus-within > .sub-menu { display: block !important; visibility: visible !important; }
}

/* Align the mobile menu control with the centered masthead. */
@media (max-width: 60em) {
  #main-navigation-wrap { background: #0a0a0a; }
  #main-navigation-toggle { display: flex; float: none; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 48px; margin: 0; padding: 8px 16px; box-sizing: border-box; background: transparent; line-height: 1.5; }
  #main-navigation-toggle::before { float: none; margin: 0; line-height: 1; }
}

/* Limitless navigation: rounded tabs, November 2026. */
#main-navigation .main-navigation-menu > li > a {
  padding: 12px 16px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #fff;
  background: transparent;
  font-weight: 600;
  line-height: 1.45;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
#main-navigation .main-navigation-menu > li.current-menu-item > a,
#main-navigation .main-navigation-menu > li.current-menu-ancestor > a {
  background: #262626;
  border-color: #ffd51e;
  color: #fff;
}
#main-navigation .main-navigation-menu > li > a:hover,
#main-navigation .main-navigation-menu > li > a:focus-visible,
#main-navigation .main-navigation-menu > li > a:active {
  background: #fff;
  color: #111 !important;
  border-color: #fff;
  box-shadow: 0 3px 0 rgba(255, 213, 30, .85);
}
#main-navigation .main-navigation-menu > li > a[href*="/explore/"] {
  background: #ffd51e;
  color: #111 !important;
  border-color: #ffd51e;
  font-weight: 700;
}
#main-navigation .main-navigation-menu > li > a[href*="/explore/"]:hover,
#main-navigation .main-navigation-menu > li > a[href*="/explore/"]:focus-visible {
  background: #ffe45c;
  color: #111 !important;
  border-color: #ffe45c;
  box-shadow: 0 3px 0 #b99800, 0 0 0 3px rgba(255, 213, 30, .16);
}
#main-navigation .main-navigation-menu a::after,
#main-navigation .main-navigation-menu a:hover::after,
#main-navigation .main-navigation-menu a:active::after {
  color: inherit !important;
}
#main-navigation a:focus-visible {
  outline: 3px solid #ffd51e;
  outline-offset: 3px;
}
#main-navigation .sub-menu {
  background: #111;
  border-top: 3px solid #ffd51e;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .25);
}
#main-navigation .sub-menu a {
  color: #fff;
  box-sizing: border-box;
  border-radius: 8px;
}
#main-navigation .sub-menu a:hover,
#main-navigation .sub-menu a:focus-visible,
#main-navigation .sub-menu a:active {
  background: #ffd51e;
  color: #111 !important;
}
@media (min-width: 60.001em) {
  #main-navigation .main-navigation-menu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    float: none;
    width: 100%;
    padding: 12px 0;
  }
  #main-navigation .main-navigation-menu > li { float: none; }
  #main-navigation .main-navigation-menu > li > a {
    font-size: 14px;
    white-space: nowrap;
  }
  #main-navigation .menu-item-has-children:focus-within > .sub-menu {
    display: block !important;
    visibility: visible !important;
  }
  #main-navigation .main-navigation-menu > li > .sub-menu { top: 100%; }
  #main-navigation .main-navigation-menu li ul ul { top: 0; margin-top: -3px; }
}
@media (min-width: 60.001em) and (hover: hover) and (pointer: fine) {
  #main-navigation .main-navigation-menu > li > a:hover,
  #main-navigation .main-navigation-menu > li > a:focus-visible {
    transform: translateY(-2px) scale(1.04);
  }
}
@media (max-width: 60em) {
  #main-navigation .main-navigation-menu { box-sizing: border-box; padding: 8px 16px 16px; }
  #main-navigation .main-navigation-menu > li > a { margin: 6px 0; min-height: 46px; box-sizing: border-box; }
  #main-navigation .main-navigation-menu > .menu-item-has-children > a { margin-right: 56px; }
  #main-navigation .sub-menu { box-shadow: none; border: 0; border-left: 2px solid #ffd51e; margin-left: 12px; width: calc(100% - 12px); }
  #main-navigation .sub-menu a { min-width: 0; padding: 12px 16px; }
  #main-navigation .sub-menu .menu-item-has-children > a { width: calc(100% - 56px); }
  #main-navigation .submenu-dropdown-toggle { border-radius: 999px; }
  #main-navigation .submenu-dropdown-toggle:hover { background: #333; }
}
@media (prefers-reduced-motion: reduce) {
  #main-navigation .main-navigation-menu > li > a { transition: none; transform: none !important; }
}



/* Sitewide article previews, November 2026. */
#content :is(.post-wrapper article, .wpnbha article) {
  position: relative;
  border-radius: 16px;
  transform-origin: center center;
  transition: transform 220ms cubic-bezier(.2, .8, .2, 1), box-shadow 220ms ease;
}
#content :is(.post-wrapper article, .wpnbha article) .wp-post-image {
  border-radius: 8px;
  transition: transform 220ms cubic-bezier(.2, .8, .2, 1);
}
#content :is(.post-wrapper article, .wpnbha article) .entry-title {
  transform-origin: left center;
  transition: transform 220ms cubic-bezier(.2, .8, .2, 1);
}
#content :is(.post-wrapper article, .wpnbha article) .entry-title a {
  color: #111;
  text-decoration-thickness: 3px;
  text-decoration-color: #ffd51e;
  text-underline-offset: .16em;
}
#content :is(.post-wrapper article, .wpnbha article) .more-link {
  border: 2px solid #111;
  border-radius: 999px;
  min-height: 44px;
  box-sizing: border-box;
}
#content :is(.post-wrapper article, .wpnbha article):has(a:focus-visible) {
  box-shadow: 0 0 0 2px #111, 0 6px 0 #111, 0 16px 28px rgba(0, 0, 0, .18);
}
#content :is(.post-wrapper article, .wpnbha article) .entry-title a:focus-visible {
  color: #111;
  text-decoration-line: underline;
}
#content :is(.post-wrapper article, .wpnbha article):has(a:focus-visible) .more-link {
  background: #ffd51e;
  color: #111 !important;
}
@media (hover: hover) and (pointer: fine) {
  #content :is(.post-wrapper article, .wpnbha article):hover,
  #content :is(.post-wrapper article, .wpnbha article):has(a:focus-visible) {
    z-index: 1;
    transform: translateY(-6px) scale(1.015);
    box-shadow: 0 0 0 2px #111, 0 6px 0 #111, 0 16px 28px rgba(0, 0, 0, .18);
  }
  #content :is(.post-wrapper article, .wpnbha article):hover .wp-post-image,
  #content :is(.post-wrapper article, .wpnbha article):has(a:focus-visible) .wp-post-image {
    transform: scale(1.025);
  }
  #content :is(.post-wrapper article, .wpnbha article):hover .entry-title,
  #content :is(.post-wrapper article, .wpnbha article):has(a:focus-visible) .entry-title {
    transform: scale(1.02);
  }
  #content :is(.post-wrapper article, .wpnbha article) .entry-title a:hover {
    color: #111;
    text-decoration-line: underline;
  }
  #content :is(.post-wrapper article, .wpnbha article):hover .more-link {
    background: #ffd51e;
    color: #111 !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  #content :is(.post-wrapper article, .wpnbha article),
  #content :is(.post-wrapper article, .wpnbha article) .wp-post-image,
  #content :is(.post-wrapper article, .wpnbha article) .entry-title {
    transition: none !important;
    transform: none !important;
  }
}

/* Sitewide interactive panels and controls, November 2026. */
#secondary .widget, .footer-widgets .widget, #content .entry-content .wp-block-embed.is-type-video, #content .entry-content .wp-block-column:has(> .wp-block-image a):has(> .wp-block-buttons), #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
  border-radius: 16px;
  transition: transform 220ms cubic-bezier(.2, .8, .2, 1), box-shadow 220ms ease;
}
#content .entry-content .wp-block-search, #content .entry-content .wp-block-jetpack-subscriptions {
  padding: 16px;
  border: 1px solid #d6d6d6;
  border-radius: 16px;
  background: #fff;
  color: #111;
  box-sizing: border-box;
  transition: box-shadow 180ms ease;
}
#content .entry-content .wp-block-column:has(> .wp-block-image a):has(> .wp-block-buttons) {
  padding: 16px;
  border: 1px solid #d6d6d6;
  box-sizing: border-box;
  background: #fff;
}
#jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
  box-sizing: border-box;
  padding: 14px;
  border: 1px solid #ddd;
  background: #fff;
  opacity: 1;
}
#jp-relatedposts .jp-relatedposts-post-a { color: #111; text-underline-offset: .16em; text-decoration-color: #ffd51e; text-decoration-thickness: 3px; }
#content .wp-block-embed.is-type-video .wp-block-embed__wrapper,
#content .wp-block-embed.is-type-video iframe { border-radius: 12px; }
#content .wp-block-image a img { border-radius: 8px; transition: transform 220ms ease, box-shadow 180ms ease; }
#page .wp-block-social-links .wp-social-link {
  border-radius: 999px;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
#content .wp-block-button__link, #content .wp-block-search__button, .footer-widgets .wp-block-button__link, .footer-widgets .wp-block-search__button, #content .post-navigation a {
  border-radius: 999px !important;
  min-height: 44px;
  box-sizing: border-box;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
#page .wp-block-search__input,
#page .wp-block-jetpack-subscriptions input[type="email"] {
  border-radius: 12px !important;
  border: 2px solid #b8b8b8;
  background: #fff;
  color: #111;
  min-width: 0;
  box-sizing: border-box;
}
#page .wp-block-search__input:focus,
#page .wp-block-jetpack-subscriptions input[type="email"]:focus {
  border-color: #111;
  outline: 3px solid #ffd51e;
  outline-offset: 2px;
}
#secondary .widget:focus-within,
#content .entry-content .wp-block-search:focus-within,
#content .entry-content .wp-block-jetpack-subscriptions:focus-within {
  box-shadow: 0 0 0 2px #111, 0 0 0 5px #ffd51e, 0 8px 18px rgba(0,0,0,.15);
}
.footer-widgets .widget:focus-within { box-shadow: 0 0 0 2px #ffd51e; }
#page .wp-block-social-links .wp-social-link:focus-within { box-shadow: 0 0 0 3px #ffd51e, 0 4px 0 #111; }
#content .entry-content .wp-block-embed.is-type-video:focus-within,
#content .entry-content .wp-block-column:has(> .wp-block-image a):has(> .wp-block-buttons):focus-within,
#jp-relatedposts .jp-relatedposts-post:focus-within { box-shadow: 0 0 0 2px #111, 0 4px 0 #111; }
#content .wp-block-button__link:focus-visible,
#content .wp-block-search__button:focus-visible,
.footer-widgets .wp-block-button__link:focus-visible,
.footer-widgets .wp-block-search__button:focus-visible,
#content .post-navigation a:focus-visible {
  background: #ffe45c !important; color: #111 !important;
  outline: 3px solid #111; outline-offset: 3px;
  box-shadow: 0 0 0 6px #ffd51e;
}
.site-footer .footer-navigation-menu a { display: inline-block; border-radius: 999px; transition: transform 180ms ease, box-shadow 180ms ease; }
.site-footer .footer-navigation-menu a:focus-visible { background: #ffd51e; color: #111 !important; }
@media (hover: hover) and (pointer: fine) {
  #secondary .widget:hover { box-shadow: 0 0 0 2px #111, 0 5px 0 #111, 0 12px 22px rgba(0,0,0,.18); }
  .footer-widgets .widget:hover { box-shadow: 0 0 0 2px #ffd51e, 0 8px 18px rgba(0,0,0,.25); }
  #secondary .widget:not(:has(form)):hover,
  .footer-widgets .widget:not(:has(form)):hover { transform: translateY(-3px) scale(1.01); }
  #content .entry-content .wp-block-search:hover,
  #content .entry-content .wp-block-jetpack-subscriptions:hover { box-shadow: 0 0 0 2px #111, 0 5px 0 #111; }
  #content .entry-content .wp-block-embed.is-type-video:hover,
  #content .entry-content .wp-block-column:has(> .wp-block-image a):has(> .wp-block-buttons):hover,
  #jp-relatedposts .jp-relatedposts-post:hover {
    transform: translateY(-3px) scale(1.01);
    box-shadow: 0 0 0 2px #111, 0 5px 0 #111, 0 12px 22px rgba(0,0,0,.15);
  }
  #page .wp-block-social-links .wp-social-link:hover,
  #page .wp-block-social-links .wp-social-link:focus-within {
    transform: translateY(-3px) scale(1.12);
    box-shadow: 0 0 0 3px #ffd51e, 0 4px 0 #111;
  }
  #content .wp-block-image a:hover img,
  #content .wp-block-image a:focus-visible img { transform: scale(1.025); box-shadow: 0 0 0 2px #111; }
  #content .wp-block-button__link:hover,
  #content .wp-block-search__button:hover,
  .footer-widgets .wp-block-button__link:hover,
  .footer-widgets .wp-block-search__button:hover,
  #content .post-navigation a:hover {
    background: #ffe45c !important; color: #111 !important;
    transform: translateY(-2px) scale(1.025);
    box-shadow: 0 3px 0 #111, 0 0 0 2px #ffd51e;
  }
  #jp-relatedposts .jp-relatedposts-post-a:hover { color: #111; text-decoration: underline solid #ffd51e 3px; }
  .site-footer .footer-navigation-menu a:hover { background: #ffd51e; color: #111 !important; transform: translateY(-2px); }
}
@media (prefers-reduced-motion: reduce) {
  #secondary .widget, .footer-widgets .widget, #content .entry-content .wp-block-embed.is-type-video, #content .entry-content .wp-block-column:has(> .wp-block-image a):has(> .wp-block-buttons), #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post, #content .wp-block-button__link, #content .wp-block-search__button, .footer-widgets .wp-block-button__link, .footer-widgets .wp-block-search__button, #content .post-navigation a, #content .entry-content .wp-block-search, #content .entry-content .wp-block-jetpack-subscriptions,
  #content .wp-block-image a img, #page .wp-block-social-links .wp-social-link,
  .site-footer .footer-navigation-menu a {
    transition: none !important;
    transform: none !important;
  }
}

/* Native archive pagination. */
#infinite-handle span {
  display: inline-block; padding: 0; border-radius: 999px;
  background: #111; color: #fff;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
#infinite-handle span button {
  min-height: 44px; padding: 12px 20px; border-radius: inherit;
  background: transparent !important; color: inherit !important;
}
#infinite-handle span:focus-within { background: #ffe45c; color: #111; box-shadow: 0 0 0 2px #111; }
@media (hover: hover) and (pointer: fine) {
  #infinite-handle span:hover { background: #ffe45c; color: #111; transform: translateY(-2px) scale(1.025); box-shadow: 0 3px 0 #111, 0 0 0 2px #ffd51e; }
}
@media (prefers-reduced-motion: reduce) {
  #infinite-handle span { transition: none !important; transform: none !important; }
}

/* Give related stories room on narrow screens. */
#jp-relatedposts .jp-relatedposts-items {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px;
  margin-right: 0; width: 100%;
}
#jp-relatedposts .jp-relatedposts-items::before,
#jp-relatedposts .jp-relatedposts-items::after { display: none; }
#jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
  width: auto !important; float: none; min-width: 0; margin: 0 !important;
}
#jp-relatedposts .jp-relatedposts-post-img { border-radius: 8px; transition: transform 220ms ease; }
@media (hover: hover) and (pointer: fine) {
  #jp-relatedposts .jp-relatedposts-post:hover .jp-relatedposts-post-img { transform: scale(1.025); }
}
@media (max-width: 600px) {
  #jp-relatedposts .jp-relatedposts-items { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  #jp-relatedposts .jp-relatedposts-post-img { transition: none !important; transform: none !important; }
}

/* Compact Limitless header and search, November 2026. */
#header-top:has(#menu-mobile-header-search) { display: none; }
.footer-widgets .widget:has(> #lp-header-search) { display: contents; transform: none !important; box-shadow: none !important; }
#lp-header-search { display: none; }
#lp-header-search:target {
  display: block; position: fixed; z-index: 1100;
  top: 84px; right: 12px; width: min(420px, calc(100% - 24px));
  max-height: calc(100dvh - 110px); overflow-y: auto;
  margin: 0; padding: 18px; box-sizing: border-box;
  background: #fff; color: #111; border: 2px solid #111;
  border-radius: 20px; box-shadow: 0 6px 0 #111, 0 14px 32px rgba(0,0,0,.3);
}
.admin-bar #lp-header-search:target { top: 130px; max-height: calc(100dvh - 156px); }
#lp-header-search .lp-search-close { margin: 0 0 12px; text-align: right; font-size: 14px; }
#lp-header-search .lp-search-close a { color: #111; padding: 10px 12px; display: inline-block; border-radius: 999px; text-decoration: none; }
#lp-header-search .lp-search-close a:hover,
#lp-header-search .lp-search-close a:focus-visible { background: #ffd51e; color: #111; }
#lp-header-search .wp-block-search { margin: 0; }
#lp-header-search .wp-block-search__label { display: block; margin-bottom: 12px; font-size: 20px; font-weight: 700; color: #111; }
#lp-header-search .wp-block-search__inside-wrapper { display: flex; width: 100%; gap: 8px; padding: 0; }
#lp-header-search .wp-block-search__input { flex: 1 1 0; width: 0; min-width: 0; min-height: 48px; padding: 10px 12px; font-size: 16px; }
#lp-header-search .wp-block-search__button { margin: 0; padding: 10px 16px; background: #ffd51e; color: #111; border: 2px solid #111; font-weight: 700; }
@media (max-width: 60em) {
  #masthead { position: sticky; top: 0; z-index: 900; max-height: 100vh; max-height: 100dvh; overflow-y: auto; overscroll-behavior: contain; border-bottom: 4px solid #ffd51e; }
  .admin-bar #masthead { top: 46px; max-height: calc(100dvh - 46px); }
  #masthead .header-main { padding: 12px 68px; min-height: 76px; box-sizing: border-box; }
  #masthead #logo { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 52px; margin: 0; padding: 0; float: none; }
  #masthead #logo::before, #masthead #logo::after { display: none; }
  #masthead .custom-logo-link { display: block; margin: 0; padding: 0; flex: 0 0 36px; }
  #masthead .custom-logo { display: block; width: 36px; height: 36px; max-height: 36px; margin: 0; }
  #masthead .site-title { margin: 0; padding: 0; float: none; }
  #masthead .site-title, #masthead .site-title a { font-size: clamp(20px, 6vw, 28px) !important; line-height: 1.15; white-space: nowrap; }
  #masthead .site-description { display: none; }
  #main-navigation-wrap { position: static; border: 0; margin: 0; padding: 0; background: #0a0a0a; }
  #main-navigation { position: static; padding: 0; margin: 0; }
  #main-navigation .main-navigation-menu-wrap { display: contents !important; height: auto !important; overflow: visible !important; }
  #main-navigation #menu-header-menu { display: none !important; margin: 0; border-top: 1px solid #333; padding: 8px 16px 18px; }
  #main-navigation-toggle.active + #main-navigation #menu-header-menu { display: block !important; }
  #main-navigation-toggle, #main-navigation #menu-mobile-header-search a {
    position: absolute; top: 16px; display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; min-height: 44px; padding: 0; margin: 0;
    border: 1px solid #444; border-radius: 15px; box-sizing: border-box;
    background: #1c1c1c; color: #fff !important; font-size: 0; line-height: 1; text-decoration: none;
    box-shadow: 0 3px 0 #000; cursor: pointer; -webkit-tap-highlight-color: transparent;
    transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
  }
  #main-navigation-toggle { left: 12px; gap: 0; }
  #main-navigation-toggle::before { font-size: 27px; margin: 0; color: inherit; }
  #main-navigation #menu-mobile-header-search { display: block !important; position: static; margin: 0; padding: 0; border: 0; height: 0; }
  #main-navigation #menu-mobile-header-search li { position: static; margin: 0; padding: 0; border: 0; height: 0; }
  #main-navigation #menu-mobile-header-search a { right: 12px; }
  #main-navigation #menu-mobile-header-search a::before { content: ''; position: absolute; width: 16px; height: 16px; top: 10px; left: 10px; border: 2px solid currentColor; border-radius: 50%; box-sizing: border-box; }
  #main-navigation #menu-mobile-header-search a::after { content: ''; position: absolute; width: 10px; height: 2px; left: 23px; top: 26px; background: currentColor; transform: rotate(45deg); border-radius: 2px; }
  #main-navigation-toggle.active,
  #main-navigation-toggle:focus-visible,
  #main-navigation #menu-mobile-header-search a:focus-visible {
    background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 3px 0 #a88a00;
  }
  #main-navigation-toggle:focus-visible, #main-navigation #menu-mobile-header-search a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
  #main-navigation-toggle:active, #main-navigation #menu-mobile-header-search a:active { transform: translateY(1px) scale(.97); background: #ffd51e; color: #111 !important; }
  #masthead .custom-logo-link, #masthead .site-title a { transition: transform 180ms ease; }
  #masthead .site-title a { display: inline-block; }
}
@media (max-width: 60em) and (hover: hover) and (pointer: fine) {
  #main-navigation-toggle:hover, #main-navigation #menu-mobile-header-search a:hover { transform: translateY(-2px) scale(1.06); background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 5px 0 #a88a00; }
  #masthead .custom-logo-link:hover, #masthead .site-title a:hover { transform: translateY(-2px) scale(1.025); }
}
@media (max-width: 600px) {
  .admin-bar #masthead { top: 0; max-height: 100dvh; }
}
@media (prefers-reduced-motion: reduce) {
  #main-navigation-toggle, #main-navigation #menu-mobile-header-search a,
  #masthead .custom-logo-link, #masthead .site-title a { transition: none !important; transform: none !important; }
}

@media (min-width: 783px) and (max-width: 60em) {
  .admin-bar #masthead { top: 32px; max-height: calc(100dvh - 32px); }
  .admin-bar #lp-header-search:target { top: 116px; max-height: calc(100dvh - 142px); }
}
@media (max-width: 60em) {
  body:has(#lp-header-search:target) #main-navigation #menu-mobile-header-search a { background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 3px 0 #a88a00; }
}

/* Compact desktop masthead, matching the mobile header. November 2026. */
#masthead .site-description { display: none; }
@media (min-width: 60.001em) {
  #page { position: relative; }
  #masthead .header-main { padding: 10px 72px; min-height: 64px; box-sizing: border-box; }
  #masthead #logo { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 44px; margin: 0; padding: 0; float: none; }
  #masthead #logo::before, #masthead #logo::after { display: none; }
  #masthead .custom-logo-link { display: block; flex: 0 0 40px; margin: 0; padding: 0; line-height: 1; }
  #masthead .custom-logo { display: block; width: 40px; height: 40px; max-height: 40px; margin: 0; }
  #masthead .site-title { margin: 0; padding: 0; float: none; }
  #masthead .site-title, #masthead .site-title a { font-size: 28px !important; line-height: 1.15; white-space: nowrap; }
  #masthead .site-title a { display: inline-block; }
  #masthead .custom-logo-link, #masthead .site-title a { transition: transform 180ms ease; }
  #main-navigation-wrap { border-bottom: 4px solid #ffd51e; }
  #main-navigation { padding: 0 16px; }
  #main-navigation .main-navigation-menu { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 4px; padding: 8px 0; margin: 0; width: 100%; }
  #main-navigation .main-navigation-menu > li { flex: 0 0 auto; float: none; }
  #main-navigation .main-navigation-menu > li > a { padding: 10px 12px; font-size: 14px; white-space: nowrap; }
  #header-top:has(#menu-mobile-header-search) { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 0; padding: 0; margin: 0; border: 0; background: transparent; z-index: 950; pointer-events: none; }
  #header-top #header-bar { position: relative; height: 0; padding: 0; margin: 0 auto; }
  #header-top #top-navigation { position: static; float: none; margin: 0; padding: 0; }
  #header-top #menu-mobile-header-search { position: static; margin: 0; padding: 0; border: 0; height: 0; }
  #header-top #menu-mobile-header-search li { position: static; margin: 0; padding: 0; border: 0; height: 0; }
  #header-top #menu-mobile-header-search a {
    position: absolute; top: 10px; right: 16px; display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; min-height: 44px; padding: 0; margin: 0; box-sizing: border-box;
    border: 1px solid #444; border-radius: 15px; background: #1c1c1c; color: #fff !important;
    font-size: 0; line-height: 1; text-decoration: none; pointer-events: auto;
    box-shadow: 0 3px 0 #000; transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
  }
  #header-top #menu-mobile-header-search a::before { content: ''; position: absolute; width: 16px; height: 16px; top: 10px; left: 10px; border: 2px solid currentColor; border-radius: 50%; box-sizing: border-box; }
  #header-top #menu-mobile-header-search a::after { content: ''; position: absolute; width: 10px; height: 2px; left: 23px; top: 26px; background: currentColor; transform: rotate(45deg); border-radius: 2px; }
  #header-top #menu-mobile-header-search a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 3px 0 #a88a00; }
  body:has(#lp-header-search:target) #header-top #menu-mobile-header-search a { background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 3px 0 #a88a00; }
  #header-top #menu-mobile-header-search a:active { transform: translateY(1px) scale(.97); background: #ffd51e; color: #111 !important; }
  #lp-header-search:target { top: 134px; }
  .admin-bar #lp-header-search:target { top: 166px; }
}
@media (min-width: 60.001em) and (max-width: 68.749em) {
  #main-navigation .main-navigation-menu > li > a { padding: 10px 8px; font-size: 13px; }
}
@media (min-width: 60.001em) and (hover: hover) and (pointer: fine) {
  #header-top #menu-mobile-header-search a:hover { transform: translateY(-2px) scale(1.06); background: #ffd51e; color: #111 !important; border-color: #ffd51e; box-shadow: 0 5px 0 #a88a00; }
  #masthead .custom-logo-link:hover, #masthead .site-title a:hover { transform: translateY(-2px) scale(1.025); }
}
@media (prefers-reduced-motion: reduce) {
  #header-top #menu-mobile-header-search a, #masthead .custom-logo-link, #masthead .site-title a { transition: none !important; transform: none !important; }
}


/* Limitless Park: coordinated responsive footer, November 2026. */
#footer-widgets-wrap { padding: 0; background: #0a0a0a; color: #fff; border-top: 4px solid #ffd51e; }
#footer-widgets { padding: 36px 24px 30px; box-sizing: border-box; }
#footer-widgets-columns { margin: 0; }
#footer-widgets-columns::before, #footer-widgets-columns::after { display: none; }
#footer-widgets-columns > .footer-widget-column { float: none; width: 100%; margin: 0; padding: 0; }
#footer-widgets-columns > .footer-widget-column:has(#block-47) { display: contents; }
#footer-widgets #block-8 { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none !important; transform: none !important; }
#footer-widgets .lp-footer-main, #footer-widgets .lp-footer-main * { box-sizing: border-box; }
#footer-widgets .lp-footer-main > .wp-block-group__inner-container { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr) minmax(0,1.1fr); gap: 32px; align-items: start; }
#footer-widgets .lp-footer-main .wp-block-group { margin: 0; min-width: 0; }
#footer-widgets .lp-footer-main h2 { margin: 0 0 16px; color: #fff; font-family: Oswald, sans-serif; font-weight: 700; font-size: 24px; line-height: 1.25; text-transform: none; }
#footer-widgets .lp-footer-main p { margin: 0 0 14px; font-size: 15px; line-height: 1.55; }
#footer-widgets .lp-footer-main .lp-footer-brand-row { margin-bottom: 18px; }
#footer-widgets .lp-footer-brand-row > .wp-block-group__inner-container { display: flex; align-items: center; gap: 10px; }
#footer-widgets .lp-footer-main .lp-footer-logo { flex: 0 0 44px; width: 44px; margin: 0; }
#footer-widgets .lp-footer-logo img { display: block; width: 44px; height: 44px; object-fit: contain; }
#footer-widgets .lp-footer-main .lp-footer-name { font-size: 28px; margin: 0; }
#footer-widgets .lp-footer-main .lp-footer-name a { display: inline-block; color: #fff; text-decoration: none; border-radius: 8px; }
#footer-widgets .lp-footer-main .lp-footer-label { margin-bottom: 10px; color: #ddd; font-size: 14px; }
#footer-widgets .lp-footer-main .wp-block-social-links { display: flex; flex-wrap: wrap; gap: 10px; padding: 0; margin: 0 0 12px; list-style: none; }
#footer-widgets .lp-footer-main .wp-block-social-links li { margin: 0; padding: 0; border: 0; width: 40px; height: 40px; border-radius: 50%; }
#footer-widgets .lp-footer-main .wp-block-social-links a { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 8px; border-radius: 50%; }
#footer-widgets .lp-footer-main .wp-block-social-links svg { width: 24px; height: 24px; }
#footer-widgets .lp-footer-main .lp-footer-email { margin: 0 0 8px; }
#footer-widgets .lp-footer-main .lp-footer-email a { display: inline-flex; align-items: center; min-height: 44px; color: #fff; font-size: 14px; overflow-wrap: anywhere; text-underline-offset: 4px; }
#footer-widgets .lp-footer-main .lp-footer-top { margin: 0; }
#footer-widgets .lp-footer-main .lp-footer-top a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border: 1px solid #454545; border-radius: 999px; background: #202020; color: #fff; font-size: 14px; text-decoration: none; }
#footer-widgets .lp-footer-main .lp-footer-browse-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 10px; margin: 0; padding: 0; list-style: none; }
#footer-widgets .lp-footer-main .lp-footer-browse-links li { margin: 0; padding: 0; border: 0; }
#footer-widgets .lp-footer-main .lp-footer-browse-links a { display: flex; align-items: center; min-height: 44px; width: fit-content; max-width: 100%; padding: 8px 10px; margin-left: -10px; border: 1px solid transparent; border-radius: 12px; color: #fff; text-decoration: none; font-size: 14px; line-height: 1.4; }
#footer-widgets .lp-footer-main .lp-footer-newsletter { padding: 22px; border: 2px solid #ffd51e; border-radius: 20px; background: #fff; color: #111; box-shadow: 0 5px 0 #ffd51e; }
#footer-widgets .lp-footer-newsletter h2 { color: #111; margin-bottom: 10px; }
#footer-widgets .lp-footer-newsletter p { color: #333; }
#footer-widgets .lp-footer-newsletter .wp-block-jetpack-subscriptions { margin: 18px 0 0; }
#footer-widgets .lp-footer-newsletter .wp-block-jetpack-subscriptions__form-elements { display: flex; flex-direction: column; gap: 10px; }
#footer-widgets .lp-footer-newsletter #subscribe-email, #footer-widgets .lp-footer-newsletter #subscribe-submit { margin: 0; width: 100%; flex: 1 1 auto; }
#footer-widgets .lp-footer-newsletter input[type="email"] { display: block; width: 100% !important; max-width: 100%; min-width: 0; min-height: 48px; padding: 12px 14px !important; border: 2px solid #777 !important; border-radius: 12px !important; background: #fff !important; color: #111 !important; font-size: 16px !important; line-height: 1.4; }
#footer-widgets .lp-footer-newsletter input[type="email"]:disabled { opacity: 1; background: #f1f1f1 !important; color: #444 !important; -webkit-text-fill-color: #444; }
#footer-widgets .lp-footer-newsletter button[type="submit"] { display: block; width: 100%; min-height: 46px; padding: 10px 16px !important; margin: 0 !important; border: 2px solid #111 !important; border-radius: 999px !important; background: #ffd51e !important; color: #111 !important; font-size: 16px !important; font-weight: 700; box-shadow: 0 3px 0 #111; }
#footer { background: #0a0a0a; }
#colophon { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; padding: 18px 24px 22px; border-top: 1px solid #393939; box-sizing: border-box; }
#colophon::before, #colophon::after { display: none; }
#footer-links, #colophon .site-info { float: none; width: auto; max-width: none; margin: 0; padding: 0; }
#menu-footer { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0; padding: 0; }
#menu-footer li { float: none; margin: 0; padding: 0; }
#menu-footer li a { display: flex; align-items: center; min-height: 44px; padding: 8px 10px; border-radius: 12px; color: #ddd; font-size: 13px; line-height: 1.4; text-transform: none; }
#colophon .site-info { flex: 0 0 auto; color: #bbb; font-size: 12px; line-height: 1.5; }
#colophon .site-info a { display: inline-flex; align-items: center; min-height: 44px; color: #bbb; text-underline-offset: 3px; }
#footer-widgets .lp-footer-main a, #footer-widgets .lp-footer-main button, #menu-footer a { transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, color 180ms ease; }
#footer-widgets .lp-footer-main :is(.lp-footer-top,.lp-footer-browse-links) a:is(:hover,:focus-visible) { background: #ffd51e; color: #111; border-color: #ffd51e; box-shadow: 0 3px 0 #fff; }
#footer-widgets .lp-footer-main :is(.lp-footer-name,.lp-footer-email) a:is(:hover,:focus-visible) { color: #ffd51e; }
#footer-widgets .lp-footer-newsletter button[type="submit"]:is(:hover,:focus-visible) { background: #111 !important; color: #ffd51e !important; box-shadow: 0 3px 0 #ffd51e; }
#footer-widgets .lp-footer-main :is(a,button,input):focus-visible, #colophon a:focus-visible { outline: 3px solid #ffd51e; outline-offset: 4px; }
#footer-widgets .lp-footer-newsletter :is(button,input):focus-visible { outline-color: #1869c7; }
@media (hover: hover) and (pointer: fine) {
  #footer-widgets .lp-footer-main :is(.lp-footer-name,.lp-footer-top,.lp-footer-browse-links) a:hover, #footer-widgets .lp-footer-newsletter button:hover, #menu-footer a:hover { transform: translateY(-3px) scale(1.025); }
}
#footer-widgets .lp-footer-main :is(.lp-footer-top,.lp-footer-browse-links) a:active, #footer-widgets .lp-footer-newsletter button:active { transform: translateY(1px) scale(.98); }
@media (max-width: 1099px) and (min-width: 641px) {
  #footer-widgets .lp-footer-main > .wp-block-group__inner-container { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 36px; }
  #footer-widgets .lp-footer-newsletter { grid-column: 1 / -1; }
  #footer-widgets .lp-footer-newsletter > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; align-items: center; }
  #footer-widgets .lp-footer-newsletter .wp-block-jetpack-subscriptions { margin: 0; }
  #footer-widgets .lp-footer-signup-copy p { margin-bottom: 0; }
}
@media (max-width: 800px) {
  #colophon { flex-direction: column; align-items: flex-start; gap: 4px; }
}
@media (max-width: 640px) {
  #footer-widgets { padding: 28px 20px; }
  #footer-widgets .lp-footer-main > .wp-block-group__inner-container { grid-template-columns: minmax(0,1fr); gap: 28px; }
  #footer-widgets .lp-footer-main .lp-footer-brand-row { margin-bottom: 14px; }
  #footer-widgets .lp-footer-main .lp-footer-browse { padding-top: 24px; border-top: 1px solid #393939; }
  #footer-widgets .lp-footer-main .lp-footer-newsletter { padding: 20px; }
  #colophon { padding: 14px 20px 20px; }
  #menu-footer { gap: 0 6px; }
  #menu-footer li a { padding: 8px 7px; }
}
@media (prefers-reduced-motion: reduce) {
  #footer-widgets .lp-footer-main a, #footer-widgets .lp-footer-main button, #menu-footer a { transition: none !important; transform: none !important; }
}


/* Homepage card excerpt preview. Draft for Andrew's review, not approved. */
.home.blog #content .post-wrapper article .entry-excerpt > p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-block-size: 3lh;
  max-block-size: 3lh;
}

/* Share row tracks so images, titles and optional ad space cannot offset the buttons. */
@media (min-width: 40.001em) {
  .home.blog #content .post-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 0;
  }
  .home.blog #content .post-wrapper::before,
  .home.blog #content .post-wrapper::after,
  .home.blog #content .post-wrapper .post-column::before,
  .home.blog #content .post-wrapper .post-column::after { display: none; }
  .home.blog #content .post-wrapper .infinite-wrap { display: contents; }
  .home.blog #content .post-wrapper .post-column {
    display: grid;
    width: auto;
    grid-template-rows: subgrid;
    grid-row: span 4;
  }
  .home.blog #content .post-wrapper .post-column article {
    display: grid;
    width: 100%;
    grid-template-rows: subgrid;
    grid-row: span 4;
    row-gap: 0;
  }
  .home.blog #content .post-wrapper article > a:has(.wp-post-image) { grid-row: 1; }
  .home.blog #content .post-wrapper article > .entry-header { grid-row: 2; }
  .home.blog #content .post-wrapper article > .entry-excerpt { grid-row: 3; }
  .home.blog #content .post-wrapper article > .read-more { grid-row: 4; }
  .home.blog #content .post-wrapper > #infinite-handle,
  .home.blog #content .post-wrapper > .infinite-loader { grid-column: 1 / -1; }
}


/* Category label review. Independent of the excerpt and sidebar drafts. */
#content :is(.post-wrapper, .wpnbha) article.type-post { --lp-card-category: "Articles"; }

#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-articles, .category-uncategorized) { --lp-card-category: "Articles"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-guide) { --lp-card-category: "Guide"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-2017-lists, .category-2018-lists, .category-2021-lists, .category-2022-lists, .category-2023-lists, .category-2024-lists, .category-2025-lists, .category-lists) { --lp-card-category: "Lists"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-news) { --lp-card-category: "News"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-opinion) { --lp-card-category: "Opinion"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-attraction-review, .category-coaster-review, .category-dining-review, .category-entertainment-review, .category-park-review, .category-review) { --lp-card-category: "Review"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-rumor) { --lp-card-category: "Rumor"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-trip-report) { --lp-card-category: "Trip Report"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is([id="post-17684"], [data-post-id="17684"], [id="post-17579"], [data-post-id="17579"]) { --lp-card-category: "Six Flags"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-disney-cruise-line, .category-disney-parks, .category-disneys-animal-kingdom, .category-disneys-california-adventure, .category-disneys-hollywood-studios, .category-disneyland-paris-resort, .category-disneyland-resort, .category-epcot, .category-hong-kong-disneyland, .category-hong-kong-disneyland-resort, .category-magic-kingdom, .category-shanghai-disney-resort, .category-shanghai-disneyland, .category-walt-disney-world-hotels, .category-walt-disney-world-resort) { --lp-card-category: "Disney"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-seaworld-orlando, .category-seaworld-parks) { --lp-card-category: "SeaWorld"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-canadas-wonderland-splash-works, .category-la-ronde-a-six-flags-theme-park, .category-six-flags, .category-six-flags-america, .category-six-flags-darien-lake-hurricane-harbor, .category-six-flags-discovery-kingdom, .category-six-flags-fiesta-texas-hurricane-harbor, .category-six-flags-great-adventure-hurricane-harbor, .category-six-flags-great-america-hurricane-harbor, .category-six-flags-great-escape-resort-hurricane-harbor, .category-six-flags-magic-mountain, .category-six-flags-mexico, .category-six-flags-new-england-hurricane-harbor, .category-six-flags-over-georgia-hurricane-harbor, .category-six-flags-over-texas-hurricane-harbor, .category-six-flags-st-louis-hurricane-harbor) { --lp-card-category: "Six Flags"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-more-parks) { --lp-card-category: "Theme Parks"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-universal-orlando-resort, .category-universal-parks, .category-universal-studios-japan) { --lp-card-category: "Universal"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-limitless-park-andrew, .category-videos) { --lp-card-category: "Videos"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-bay-beach) { --lp-card-category: "Bay Beach"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-busch-gardens-tampa, .category-busch-gardens-williamsburg) { --lp-card-category: "Busch Gardens"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-dollywood) { --lp-card-category: "Dollywood"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-indiana-beach) { --lp-card-category: "Indiana Beach"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-lagoon) { --lp-card-category: "Lagoon"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-mt-olympus) { --lp-card-category: "Mt. Olympus"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-limitless-parkives-photography-collection) { --lp-card-category: "Parkives"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-strickers-grove) { --lp-card-category: "Stricker’s Grove"; }

/* Multi-brand roundups retain one general category label. */
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-disney-parks, .category-disney-cruise-line):is(.category-six-flags, .category-universal-parks, .category-seaworld-parks),
#content :is(.post-wrapper, .wpnbha) article.type-post.category-six-flags:is(.category-universal-parks, .category-seaworld-parks),
#content :is(.post-wrapper, .wpnbha) article.type-post.category-universal-parks.category-seaworld-parks { --lp-card-category: "Theme Parks"; }
#content :is(.post-wrapper, .wpnbha) article.type-post:is(.category-disney-parks, .category-disney-cruise-line):is(.category-six-flags, .category-universal-parks, .category-seaworld-parks).category-news,
#content :is(.post-wrapper, .wpnbha) article.type-post.category-six-flags:is(.category-universal-parks, .category-seaworld-parks).category-news,
#content :is(.post-wrapper, .wpnbha) article.type-post.category-universal-parks.category-seaworld-parks.category-news { --lp-card-category: "News"; }

/* One non-interactive label above each preview title. Explore itself is untouched. */
#content :is(.post-wrapper, .wpnbha) article.type-post .entry-title::before {
  content: var(--lp-card-category);
  display: block;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 10px;
  padding: 4px 10px;
  border: 1px solid #ffd51e;
  border-radius: 999px;
  background: #ffd51e;
  color: #111;
  box-shadow: none;
  font-family: "Open Sans", sans-serif;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: normal;
  text-transform: uppercase;
  text-decoration: none;
}


/* Footer readability review. Independent draft; no layout or button changes. */
#footer-widgets .lp-footer-main .wp-social-link {
  background-color: #000;
  color: #fff;
}
#footer-widgets .lp-footer-main .wp-social-link a {
  color: #fff;
}
#footer-widgets .lp-footer-main :is(.lp-footer-email, .lp-footer-top, .lp-footer-browse-links) a {
  font-size: 16px;
  color: #fff;
}
#menu-footer li a {
  font-size: 15px;
  color: #fff;
}
#colophon .site-info a {
  font-size: 14px;
  color: #fff;
}

/* Theme Parks guide layouts, November 5, 2026. */
body:is(.page-id-15842,.page-id-11413,.page-id-11432,.page-id-11716,.page-id-11660,.page-id-11754,.page-id-12045,.page-id-11676,.page-id-15881) #main > article {
  border-radius: 16px;
}
#content .lp-park-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
  margin: 28px 0;
}
#content .lp-park-grid > .wp-block-group__inner-container { display: contents; }
#content .lp-park-card {
  min-width: 0;
  margin: 0 !important;
  padding: 18px;
  border: 1px solid #d6d6d6;
  border-top: 3px solid #111;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 3px 0 rgba(0,0,0,.08);
  box-sizing: border-box;
  transition: transform 220ms cubic-bezier(.2,.8,.2,1), box-shadow 220ms ease;
}
#content .lp-park-card .wp-block-image { margin: 0 0 18px; }
#content .lp-park-card .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
#content .lp-park-card .wp-block-image a { display: block; border-radius: 8px; }
#content .lp-park-card .wp-element-caption { margin-top: 6px; font-size: 13px; }
#content .lp-park-card .wp-block-heading {
  color: #111;
  font-family: Oswald,sans-serif;
  font-size: 24px !important;
  line-height: 1.3;
  margin: 0 0 12px !important;
}
#content .lp-park-card p {
  font-size: 16px !important;
  line-height: 1.65 !important;
  margin-top: 0;
  margin-bottom: 16px;
}
#content .lp-park-card .wp-block-group { margin-top: 0; }
#content .lp-park-card:has(.wp-block-buttons),
#content .lp-park-card:has(.wp-block-buttons) > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  flex: 1;
}
#content .lp-park-card .wp-block-buttons { margin-top: auto; padding-top: 8px; margin-bottom: 0; }
#content .lp-park-card > .wp-block-group__inner-container > :last-child,
#content .lp-park-card > :last-child { margin-bottom: 0; }
#content .lp-park-card a:not(.wp-block-button__link) {
  color: #111;
  text-decoration-color: #ffd51e;
  text-decoration-thickness: 3px;
  text-underline-offset: .16em;
}
#content .lp-park-card .wp-block-heading a { text-decoration: none; }
#content .lp-park-card .wp-block-heading a:is(:hover,:focus-visible) { text-decoration: underline solid #ffd51e 3px; }
#content .lp-park-card:focus-within {
  box-shadow: 0 0 0 2px #111,0 5px 0 #111,0 12px 22px rgba(0,0,0,.15);
}
body:is(.page-id-15842,.page-id-11413,.page-id-11432,.page-id-11716,.page-id-11660,.page-id-11754,.page-id-12045,.page-id-11676,.page-id-15881) #content .entry-content > .wp-block-heading {
  font-family: Oswald,sans-serif;
  color: #111;
  line-height: 1.3;
}
body:is(.page-id-11413,.page-id-11432,.page-id-11716,.page-id-11660,.page-id-11754,.page-id-12045,.page-id-11676,.page-id-15881) #content .wp-block-spacer { height: 28px !important; }
@media (hover:hover) and (pointer:fine) {
  #content .lp-park-card:hover {
    transform: translateY(-3px) scale(1.01);
    box-shadow: 0 0 0 2px #111,0 5px 0 #111,0 12px 22px rgba(0,0,0,.15);
  }
}
@media (max-width:700px) {
  #content .lp-park-grid { grid-template-columns: minmax(0,1fr); gap: 22px; margin: 24px 0; }
  #content .lp-park-card { padding: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  #content .lp-park-card { transition: none !important; transform: none !important; }
}

/* Remaining page and article layouts, November 2026. */
body:is(.page,.single-post) #main > article,
#main > .page-header,
#main > .no-results,
#main > .error-404,
#comments { border-radius: 16px; }
#main > article > .wp-post-image,
#main > article .entry-content :is(.wp-block-image img,.wp-caption img,img.alignnone,img.alignleft,img.alignright) { border-radius: 8px; }
#main > article .entry-content :is(h2,h3,h4):not(.entry-title) {
  font-family: Oswald,sans-serif;
  color: #111;
  line-height: 1.3;
}
#main > .page-header :is(.archive-title,.search-title) { text-transform: none; line-height: 1.3; }

/* Keep the existing brand artwork compact on utility pages. */
body:is(.page-id-6461,.page-id-2946) #main > article > .wp-post-image {
  float: right;
  width: 64px;
  height: 64px;
  margin: 0 0 16px 16px;
}
body:is(.page-id-6461,.page-id-2946) #main > article > .entry-header {
  min-height: 64px;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

/* Team profiles retain their photographs and alternating placement. */
.page-id-6461 #content .wp-block-media-text {
  grid-template-columns: minmax(0,1fr) minmax(0,1.5fr);
  align-items: start;
  gap: 24px;
  width: auto;
  margin: 24px 0;
  padding: 20px;
  border: 1px solid #d6d6d6;
  border-top: 3px solid #111;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 3px 0 rgba(0,0,0,.08);
  transition: transform 220ms cubic-bezier(.2,.8,.2,1),box-shadow 220ms ease;
}
.page-id-6461 #content .wp-block-media-text.has-media-on-the-right { grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); }
.page-id-6461 #content .wp-block-media-text__content { padding: 0; min-width: 0; }
.page-id-6461 #content .wp-block-media-text__content > :first-child { margin-top: 0; }
.page-id-6461 #content .wp-block-media-text__content > :last-child { margin-bottom: 0; }
.page-id-6461 #content .wp-block-media-text__content p { font-size: 16px; line-height: 1.65; }
.page-id-6461 #content .wp-block-media-text__media img { border-radius: 8px; }

/* Match the contact and comment fields to the site's search controls. */
#content .contact-form {
  padding: 20px;
  border: 1px solid #d6d6d6;
  border-radius: 16px;
  background: #fff;
  box-sizing: border-box;
  transition: box-shadow 180ms ease;
}
#content .contact-form .grunion-field,
#comments .comment-form :is(input[type="text"],input[type="email"],input[type="url"],textarea),
#content .search-form .search-field {
  box-sizing: border-box;
  border: 2px solid #b8b8b8 !important;
  border-radius: 12px !important;
  min-width: 0;
  min-height: 44px;
  max-width: 100%;
  padding: 12px 14px;
  color: #111;
  background: #fff;
  font-size: 16px;
  line-height: 1.5;
}
#content .contact-form textarea.grunion-field { min-height: 160px; }
#content .contact-form .grunion-field { margin-bottom: 0; }
#content .contact-form .grunion-field:focus,
#comments .comment-form :is(input[type="text"],input[type="email"],input[type="url"],textarea):focus,
#content .search-form .search-field:focus {
  border-color: #111 !important;
  outline: 3px solid #ffd51e;
  outline-offset: 2px;
}
#content .contact-form:focus-within { box-shadow: 0 0 0 2px #111,0 0 0 5px #ffd51e,0 8px 18px rgba(0,0,0,.15); }
#content a[href^="mailto:"] { overflow-wrap: anywhere; }
#content .search-form { display: flex; align-items: stretch; gap: 8px; }
#content .search-form label { flex: 1; min-width: 0; }
#content .search-form .search-field { width: 100%; }
#content .search-form .search-submit,
#comments .form-submit input[type="submit"] {
  min-height: 44px;
  border: 2px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff;
  padding: 10px 18px;
  transition: transform 180ms ease,box-shadow 180ms ease;
}
#content .search-form .search-submit { position: static; flex: none; width: auto; height: auto; font-size: 16px; line-height: 1.5; }
#content .search-form .search-submit:focus-visible,
#comments .form-submit input[type="submit"]:focus-visible { outline: 3px solid #ffd51e; outline-offset: 3px; }

/* Remove unused legacy grid offsets from the railroad guide. */
.page-id-10494 #content .wp-block-jetpack-layout-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 24px;
  margin: 24px 0;
  padding: 0;
}
.page-id-10494 #content .wp-block-jetpack-layout-grid:has(> .wp-block-jetpack-layout-grid-column:nth-child(2)) { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); }
.page-id-10494 #content .wp-block-jetpack-layout-grid > .wp-block-jetpack-layout-grid-column { grid-column: auto; grid-row: auto; min-width: 0; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:nth-child(2) {
  align-self: start;
  padding: 20px;
  border: 1px solid #d6d6d6;
  border-top: 3px solid #111;
  border-radius: 16px;
  box-shadow: 0 3px 0 rgba(0,0,0,.08);
}
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:nth-child(2) p { font-size: 16px; line-height: 1.5 !important; margin-top: 0; margin-bottom: 14px; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:nth-child(2) .wp-block-spacer { height: 8px !important; margin: 0; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:nth-child(2) p.has-text-color { color: #111 !important; font-weight: 700; margin-bottom: 6px; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:first-child > p:first-child { font-family: Oswald,sans-serif; color: #111; line-height: 1.3 !important; }
.page-id-10494 #content .lp-archive-photo-note { padding: 16px; border-left: 4px solid #ffd51e; border-radius: 0 12px 12px 0; background: #f6f6f6; }

/* Keep the historical event artwork intact at a readable, compact size. */
body:is(.page-id-8767,.page-id-9426,.page-id-12237,.page-id-13852) #main > article { display: flex; flex-direction: column; }
body:is(.page-id-8767,.page-id-9426,.page-id-12237,.page-id-13852) #main > article > .entry-header { order: -1; }
body:is(.page-id-8767,.page-id-9426,.page-id-12237,.page-id-13852) #main > article > .wp-post-image { width: min(100%,360px); height: auto; align-self: center; margin: 0 0 24px; }
.page-id-11270 #content .entry-content > .wp-block-group.alignfull { margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
.page-id-11270 #content .wp-block-jetpack-layout-grid { margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }

/* Carry the approved excerpt treatment into archives and article indexes. */
body:is(.archive,.search-results) #content .post-wrapper article .entry-excerpt > p,
#content .wpnbha.is-grid article .entry-wrapper > p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-block-size: 3lh;
  max-block-size: 3lh;
}
#content .wpnbha.is-grid article { display: flex; flex-direction: column; }
#content .wpnbha.is-grid article .entry-wrapper { display: flex; flex-direction: column; flex: 1; }
#content .wpnbha.is-grid article .entry-meta { margin-top: auto; padding-top: 12px; }

@media (min-width:40.001em) {
  body:is(.archive,.search-results) #content .post-wrapper { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); row-gap: 0; }
  body:is(.archive,.search-results) #content .post-wrapper::before,
  body:is(.archive,.search-results) #content .post-wrapper::after,
  body:is(.archive,.search-results) #content .post-wrapper .post-column::before,
  body:is(.archive,.search-results) #content .post-wrapper .post-column::after { display: none; }
  body:is(.archive,.search-results) #content .post-wrapper .infinite-wrap { display: contents; }
  body:is(.archive,.search-results) #content .post-wrapper .post-column { display: grid; width: auto; grid-template-rows: subgrid; grid-row: span 4; }
  body:is(.archive,.search-results) #content .post-wrapper .post-column article { display: grid; width: 100%; grid-template-rows: subgrid; grid-row: span 4; row-gap: 0; }
  body:is(.archive,.search-results) #content .post-wrapper article > a:has(.wp-post-image) { grid-row: 1; }
  body:is(.archive,.search-results) #content .post-wrapper article > .entry-header { grid-row: 2; }
  body:is(.archive,.search-results) #content .post-wrapper article > .entry-excerpt { grid-row: 3; }
  body:is(.archive,.search-results) #content .post-wrapper article > .read-more { grid-row: 4; }
  body:is(.archive,.search-results) #content .post-wrapper > #infinite-handle,
  body:is(.archive,.search-results) #content .post-wrapper > .infinite-loader { grid-column: 1 / -1; }
}
@media (hover:hover) and (pointer:fine) {
  .page-id-6461 #content .wp-block-media-text:hover { transform: translateY(-3px) scale(1.01); box-shadow: 0 0 0 2px #111,0 5px 0 #111,0 12px 22px rgba(0,0,0,.15); }
  #content .search-form .search-submit:hover,
  #comments .form-submit input[type="submit"]:hover { background: #ffe45c; color: #111; transform: translateY(-2px) scale(1.025); box-shadow: 0 3px 0 #111,0 0 0 2px #ffd51e; }
}
@media (max-width:700px) {
  .page-id-6461 #content .wp-block-media-text,
  .page-id-6461 #content .wp-block-media-text.has-media-on-the-right { grid-template-columns: minmax(0,1fr); padding: 16px; gap: 18px; }
  .page-id-6461 #content .wp-block-media-text__media { grid-column: 1; grid-row: 1; }
  .page-id-6461 #content .wp-block-media-text__content { grid-column: 1; grid-row: 2; }
  .page-id-10494 #content .wp-block-jetpack-layout-grid:has(> .wp-block-jetpack-layout-grid-column:nth-child(2)) { grid-template-columns: minmax(0,1fr); }
  #content .contact-form { padding: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .page-id-6461 #content .wp-block-media-text,
  #content .search-form .search-submit,
  #comments .form-submit input[type="submit"] { transition: none !important; transform: none !important; }
}

/* Limitless Park: align the desktop dropdown label and caret, November 2026. */
@media (min-width: 60.001em) {
  #main-navigation .main-navigation-menu > .menu-item-has-children > a {
    display: flex;
    align-items: center;
  }
  #main-navigation .main-navigation-menu > .menu-item-has-children > a::after {
    margin-top: 0;
  }
}

/* Limitless Park: nested menu spacing and responsive dropdowns, November 2026. */
@media (min-width: 60.001em) {
  #main-navigation .main-navigation-menu .sub-menu {
    width: clamp(12rem, calc((100vw - 10rem) / 4), 16rem);
    box-sizing: border-box;
  }
  #main-navigation .sub-menu li { width: 100%; }
  #main-navigation .sub-menu a { min-width: 0; width: 100%; white-space: normal; }
  #main-navigation .sub-menu .menu-item-has-children > a {
    display: flex; align-items: center; gap: 8px;
  }
  #main-navigation .sub-menu .menu-item-has-children > a::after {
    flex-shrink: 0; margin: 0 0 0 auto;
  }
}
@media (max-width: 60em) {
  #main-navigation .main-navigation-menu .menu-item-has-children {
    display: grid; grid-template-columns: minmax(0, 1fr) 44px; column-gap: 8px;
  }
  #main-navigation .main-navigation-menu .menu-item-has-children > a {
    grid-column: 1; grid-row: 1; width: auto; min-width: 0; margin-right: 0;
  }
  #main-navigation .main-navigation-menu .submenu-dropdown-toggle {
    grid-column: 2; grid-row: 1; float: none;
    display: flex; align-items: center; justify-content: center; align-self: stretch;
    width: 44px; min-height: 44px; height: auto; padding: 0; margin: 0;
  }
  #main-navigation .main-navigation-menu > .menu-item-has-children { margin: 6px 0; }
  #main-navigation .main-navigation-menu > .menu-item-has-children > a { margin: 0; }
  #main-navigation .main-navigation-menu > .menu-item-has-children > .sub-menu { margin-top: 6px; }
  #main-navigation .main-navigation-menu .submenu-dropdown-toggle::before { line-height: 1; margin: 0; }
  #main-navigation .main-navigation-menu .menu-item-has-children > .sub-menu {
    grid-column: 1 / -1; grid-row: 2;
  }
}

/* Limitless Park: content alignment and spacing repairs, November 2026. */
#content .entry-content :is(figure, .wp-caption) { min-width: 0; max-width: 100%; }
#content .entry-content :is(figcaption, .wp-caption-text) { overflow-wrap: anywhere; }
#content .entry-content :is(.instagram-media, .instagram-media-registered) {
  min-width: 0 !important; max-width: 100% !important; box-sizing: border-box;
}
#content .entry-content .instagram-media-registered :is(p, a) { white-space: normal !important; overflow-wrap: anywhere; }
#content .entry-meta :is(.meta-date, .meta-author) { display: inline-block; }
#secondary .wp-block-social-links { column-gap: clamp(4px, calc((100% - 180px) / 4), 12px); }
#content .search-form .search-field { display: block; }
#content .search-form .search-submit {
  display: flex; align-items: center; justify-content: center; min-height: 52px; min-width: 74px;
}
#content .search-form .search-submit .genericon-search { padding: 0; line-height: 1; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:first-child > :first-child { margin-top: 0; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:first-child > :last-child { margin-bottom: 0; }
.page-id-10494 #content .wp-block-jetpack-layout-grid-column:first-child > p:empty { display: none; }
.page-id-11676 #content .entry-content > p:first-of-type > br:first-child { display: none; }


/* Skip the empty author link on two archived guest reviews. */
:is(.postid-4875, .postid-4916) .meta-author a[rel="author"][href$="/author/"]:empty {
	display: none;
}


/* Keep the Older posts target steady through hover, focus and press. */
#content #infinite-handle > span {
  display: inline-block;
  padding: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
  transform: none;
  transition: none;
}

#content #infinite-handle > span > button {
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: calc(12px + .4em) calc(20px + 1em);
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: #0a0a0a !important;
  color: #fff !important;
  font: inherit;
  cursor: pointer;
  transform: none;
  transition: box-shadow 140ms ease;
}

@media (hover: hover) and (pointer: fine) {
  #content #infinite-handle > span > button:hover {
    box-shadow: inset 0 0 0 2px #ffd51e, 0 2px 0 #111;
  }
}

#content #infinite-handle > span > button:focus-visible {
  outline: 2px solid #111;
  outline-offset: 3px;
}

#content #infinite-handle > span > button:active {
  box-shadow: inset 0 0 0 2px #ffd51e;
}

@media (prefers-reduced-motion: reduce) {
  #content #infinite-handle > span > button {
    transition: none;
  }
}


/* Steady Load more posts buttons on Explore, News, Reviews and Rankings & Lists. */
:is(.page-id-22517, .page-id-7917, .page-id-7932, .page-id-8410) #content .wpnbha.has-more-button > button.wp-block-button__link {
  transform: none;
  transition: box-shadow 140ms ease;
  background-color: #ffd51e !important;
  color: #111 !important;
  box-shadow: none;
}

@media (hover: hover) and (pointer: fine) {
  :is(.page-id-22517, .page-id-7917, .page-id-7932, .page-id-8410) #content .wpnbha.has-more-button > button.wp-block-button__link:hover {
    box-shadow: inset 0 0 0 1px #111, 0 2px 0 #111;
  }
}

:is(.page-id-22517, .page-id-7917, .page-id-7932, .page-id-8410) #content .wpnbha.has-more-button > button.wp-block-button__link:focus-visible {
  outline: 2px solid #111;
  outline-offset: 3px;
}

:is(.page-id-22517, .page-id-7917, .page-id-7932, .page-id-8410) #content .wpnbha.has-more-button > button.wp-block-button__link:active {
  box-shadow: inset 0 0 0 1px #111;
}

@media (prefers-reduced-motion: reduce) {
  :is(.page-id-22517, .page-id-7917, .page-id-7932, .page-id-8410) #content .wpnbha.has-more-button > button.wp-block-button__link {
    transition: none;
  }
}


/* The text link stays in the same spot as its article card lifts around it. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  #content .post-wrapper article:has(> .read-more > .more-link) {
    --lp-card-zoom: 1.015;
    --lp-card-lift: 6px;
    transform-box: content-box;
    transform-origin: center bottom;
  }

  #content .post-wrapper article:has(> .read-more > .more-link):is(:hover, :has(a:focus-visible)) {
    transform: translateY(calc(0px - var(--lp-card-lift))) scale(var(--lp-card-zoom));
  }

  /* The final row and the card's content box share their bottom center. */
  #content .post-wrapper article > .read-more:has(> .more-link) {
    transform-origin: center bottom;
    transition: transform 220ms cubic-bezier(.2, .8, .2, 1);
  }

  #content .post-wrapper article:is(:hover, :has(a:focus-visible)) > .read-more:has(> .more-link) {
    transform: scale(calc(1 / var(--lp-card-zoom))) translateY(var(--lp-card-lift));
  }
}

#content .post-wrapper article > .read-more > a.more-link {
  background: #0a0a0a;
  color: #fff !important;
  transition: box-shadow 140ms ease;
}

@media (hover: hover) and (pointer: fine) {
  #content .post-wrapper article > .read-more > a.more-link:hover {
    box-shadow: inset 0 0 0 2px #ffd51e, 0 2px 0 #111;
  }
}

#content .post-wrapper article > .read-more > a.more-link:focus-visible {
  outline: 2px solid #111;
  outline-offset: 3px;
}

#content .post-wrapper article > .read-more > a.more-link:active {
  box-shadow: inset 0 0 0 2px #ffd51e;
}

@media (prefers-reduced-motion: reduce) {
  #content .post-wrapper article > .read-more > a.more-link {
    transition: none;
  }
}
