:root {
  --primary: #325341;
  --secondary: linear-gradient(0deg,rgba(248, 207, 71, 1) 0%, rgba(246, 185, 58, 1) 100%);
  --tertiary: #0c301c;
  --muted: #ffF8e9;
  --quatenary: #f1efe9;
  --dark-green: #1b482f;
  --dark-yellow: #f6b93a;
  --light-yellow: #f8cf47;
  --base: #222;
  --white: #fff;
}

/* ---------- links, images & animations ---------- */

a, a img, a:hover span, a .uk-overlay-default, .uk-card, .uk-slidenav, .uk-link, .uk-button, .copy-success, div.wpforms-container-full button[type=submit],
button, input, .uk-search-input, #scroll-arrow, .uk-transition-fade, [class*='uk-transition-scale'], [class*='uk-transition-slide']
{ transition: all 200ms ease-in-out; }

a:hover img, a.uk-logo:hover { filter: brightness(1.03); }
a.uk-position-absolute { transition: none; }

a {
  word-break: break-word;
  -webkit-text-decoration-color: var(--blue-light);
  text-decoration-color: var(--blue-light);
  text-underline-position: under;
}

#footer a, #socket a, #footer .uk-link, #socket .uk-link, #author-meta a, .vr-sort a, .link-clear a, a.link-clear, .arrow-button-wide a { text-decoration: none; }

.center-arrow-button {
  display: table;
  margin: 0 auto;
  padding-right: 33px;
}
.center-arrow-button svg, .arrow-button-wide svg { width: 26px; }
.center-arrow-button, .arrow-button-wide {
  font-weight: 700;
  font-family: 'Noto Sans';
  font-weight: 18px;
  position: relative;
}
.center-arrow-button, .arrow-button-wide {
  font-family: "Noto Serif";
  font-size: 24px;
  font-weight: 700;
}
.arrow-button-wide a { justify-content: unset; }
.center-arrow-button a span, .arrow-button-wide a span {
  position: absolute;
  right: 0;
}
.arrow-button-wide svg { width: 44px; }
.center-arrow-button a:hover .uk-icon, .arrow-button-wide a:hover .uk-icon { right: -5px; }

.fade-in, .fade-in-up, .delay { opacity: 0; }
.fade-in { animation: fadeIn 200ms linear forwards; }
.fade-in-up { animation: fadeInUp 500ms ease-in-out forwards; }
.delay { animation-delay: 1s; }

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ---------- typography ---------- */

#tm-main * { text-wrap: pretty; }

em { color: inherit; }

.text-smaller { font-size: 16px; }

blockquote {
  text-align: center;
  margin: 0 0 30px 0;
}
*+blockquote { margin-top: 30px; }

/* ---------- lists ---------- */

#tm-main ul:not(.uk-dotnav), #tm-main ol {
  margin: 0 0 2rem 0;
  padding: 0 0 0 2rem;
}
#tm-main ul:not(.uk-dotnav) li {
  margin: 0 0 0.5rem 0;
  padding: 0;
  line-height: 1.3;
}
#tm-main ul:not(.uk-dotnav) ul, #tm-main ol ol, #tm-main ul:not(.uk-dotnav) ol, #tm-main ol ul {
  margin: 0 0 1rem 0;
  padding: 0 0 0 1rem;
}
#tm-main ul.centered-list {
  margin-right: auto;
  margin-left: auto;
  display: table;
}

#tm-main ul.description-list.year-list {
  margin: 0;
  padding: 0;
}
#tm-main ul.description-list.year-list li {
  box-shadow: 5px 5px 10px rgb(246 185 58 / 30%);
  border-bottom: 2px solid rgb(246 185 58 / 50%);
  border-right: 2px solid rgb(246 185 58 / 50%);
  margin: 0 0 1rem 0;
  padding: 2rem;
}
.description-list.year-list li:nth-child(odd) { background: rgb(248 207 71 / 90%); }
.description-list.year-list li:nth-child(even) { background: rgb(248 207 71 / 90%); }

/* ---------- hero video ---------- */

.no-wrap-video iframe {
  transform: scale(1.2);
  transform-origin: center center;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
/*
#hero.vr-hero-video {
  position: relative;
  overflow: hidden;
}
#hero.vr-hero-video > .uk-position-cover, #hero.vr-hero-video .uk-cover-container {
  position: absolute;
  inset: 0;
}
#hero.vr-hero-video video[uk-cover], #hero.vr-hero-video video.uk-cover {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
  object-position: center;
  transform: translateZ(0);
}

@media (min-width: 960px) {
  #hero.vr-hero-video { min-height: 100vh; }
}
@media (max-width: 959.98px) {
  #hero.vr-hero-video { min-height: 70vh; }
}
*/

/* ---------- featured story ---------- */

#featured-story { }
#featued-story-center-col { max-width: 325px; }
#featued-story-left-col, #featued-story-center-col, #featued-story-right-col { min-height: 500px; }

.circle-thumb img {
  border-radius: 50%;
  border: 5px solid var(--white);
}

.featured-story-banner {
  background: var(--dark-green);
  color: #FBFAF9;
  font-size: 30px;
  font-weight: 500;
  text-transform: uppercase;
  padding: 10px 20px;
  display: inline-block;
}

/* ---------- authors ---------- */

#author-meta .uk-width-1-6\@m { width: 110px; }

.vr-author-img.wp-post-image {
  border-radius: 50%;
  width: 105px;
  height: 105px;
  max-width: 105px;
  max-height: 105px;
}
.vr-author-name { font-weight: 700; }
.vr-author-title { font-size: 18px; }

/* ---------- section dividers ---------- */

.section-divider-spacing-bottom .fs-section { padding-bottom: 170px; }
.section-divider-spacing-top .fs-section { padding-top: 170px; }

/* ---------- footnotes ---------- */

sup {
  font-weight: 700;
  font-size: 11px
}

#footnotes {
  border-top: 1px solid #000;
  padding: 2rem 1rem;
}
#tm-main #footnotes ol {
  margin: 0;
  padding: 0;
}
#footnotes p, #tm-main #footnotes ol li { margin: 0 0 5px 0; }

/* ---------- blog ---------- */

.single figure.alignleft, .single .alignleft { margin: 0 40px 40px 0; }
.single figure.alignright, .single .alignright { margin: 0 0 40px 40px; }
.single figure.aligncenter, .single .aligncenter, .single-post .uk-align-center {
  margin: 30px auto;
  display: block;
}
.wp-caption-text, #featured-image .uk-panel.uk-text-meta, .story-circle-thumb-caption {
  font-size: 0.888rem;
  text-align: center;
  padding: 15px;
  line-height: 1.3;
  margin-top: 0 !important;
  color: var(--primary);
  font-style: italic;
}
figure { max-width: 100%; }

/* ---------- archives ---------- */

.el-item .uk-inline-clip { position: relative; }

.el-item a.uk-panel[href*="/research/"] .uk-inline-clip::after, .el-item a.uk-panel[href*="/stories/"] .uk-inline-clip::after {
  position: absolute;
  top: 8px; left: 8px;
  padding: 8px 15px 6px 15px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  border-radius: 999px;
  color: #fff;
 }

.tax-vr_time_period .el-item a.uk-panel[href*="/stories/"] .uk-inline-clip::after,
.tax-vr_region .el-item a.uk-panel[href*="/stories/"] .uk-inline-clip::after,
.tax-vr_historic_site .el-item a.uk-panel[href*="/stories/"] .uk-inline-clip::after
{
  background: var(--secondary);
  content: "Story";
}

.tax-vr_time_period .el-item a.uk-panel[href*="/research/"] .uk-inline-clip::after,
.tax-vr_region .el-item a.uk-panel[href*="/research/"] .uk-inline-clip::after,
.tax-vr_historic_site .el-item a.uk-panel[href*="/research/"] .uk-inline-clip::after
{
  background: var(--primary);
  content: "Research";
}

/* ---------- video ---------- */

.responsive-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.responsive-container iframe, .responsive-container object, .responsive-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ---------- map ---------- */

#map-home, #map-home a { color: var(--primary) !important; }

/* Desktop: map fills the entire right column */
@media (min-width: 960px) {
  /* make the column and its panel stretch */
  .vr-map-col { display: flex; }
  .vr-map-col .uk-panel { display: flex; flex-direction: column; width: 100%; }

  /* let the map consume all remaining height; kill fixed height/margins */
  .vr-map-fill {
    flex: 1 1 auto;
    height: 100% !important;
    width: 100%;
    margin: 0 !important;
  }

  /* ensure Google’s internal layers stretch too */
  .vr-map-fill > div,
  .vr-map-fill iframe {
    height: 100% !important;
    width: 100% !important;
  }
}

/* Mobile/tablet: give the map a steady min-height so it looks good stacked */
@media (max-width: 959.98px) {
  .vr-map-fill {
    height: auto !important;
    min-height: 320px; /* tweak 280–420px to taste */
    width: 100%;
    margin: 0 !important;
  }
}

/* ---------- filters ---------- */

.vr-active .uk-label { display: inline-flex; align-items: center; gap: 6px; }
.vr-active .vr-remove { font-weight: bold; }
.vr-filters .uk-button { display: none; }
.vr-sort { line-height: 1.8; }
.vr-active .uk-label { display: inline-flex; align-items: center; gap: 6px; }
.vr-active .vr-remove { font-weight: bold; }
.vr-filters .vr-clear { margin-left: 6px; line-height: 38px; }

/* ---------- tabs ---------- */

.uk-tab { justify-content: space-around; }

/* ---------- forms ---------- */

div.wpforms-container-full select { appearance: auto; }

/* ---------- accordion ---------- */

.uk-accordion-content .el-image {
  margin: 1rem auto 2rem auto;
  text-align: center;
  display: block;
}
.uk-open .uk-accordion-title {  }
.uk-accordion-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%2332658A' d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32V224H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H192V432c0 17.7 14.3 32 32 32s32-14.3 32-32V288H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H256V80z'/%3E%3C/svg%3E"); }
.uk-open>.uk-accordion-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%2373BFB8' d='M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E"); }

/* ---------- lightbox ---------- */

#slb_viewer_wrap .slb_theme_slb_baseline .slb_viewer_overlay { background: var(--dark-green) !important; }

#slb_viewer_wrap .slb_theme_slb_default .slb_content { max-height: 80vh !important; }
#slb_viewer_wrap .slb_theme_slb_default .slb_container { border-radius: 0 !important; }

#slb_viewer_wrap .slb_theme_slb_baseline .slb_container { margin: 20px auto !important; }

#slb_viewer_wrap .slb_theme_slb_default .slb_data_title, #slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-family: 'Roboto', sans-serif !important;
  font-weight: 400 !important;
  display: block !important;
  text-align: center !important;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_data_title,
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  font-size: 14px !important;
  margin: 10px !important;
  color: var(--base) !important;
}

#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
  color: var(--primary) !important;
  font-size: 13px !important;
}

/* ---------- footer ---------- */

#footer a:hover img, #socket a:hover img { opacity: 0.8; }
#socket .uk-text-small a {
  padding: 0 30px;
  border-right: 1px solid var(--base);
  display: inline-block;
  color: var(--base);
}
#socket .uk-text-small a:hover { color: var(--primary); }
#socket .uk-text-small a:nth-child(3) { border: none; }
#socket .uk-text-small a:first-child { padding: 0 30px 0 0; }

#scroll-arrow {
  position: fixed;
  bottom: 90px;
  right: 35px;
  z-index: 999;
}
.uk-totop, .uk-totop:hover { background-color: transparent; }
#scroll-arrow a {
  background: var(--quatenary);
  color: var(--base);
  border-radius: 50%;
  line-height: 1;
  display: block;
  padding: 15px 0 0 16px;
  width: 50px;
  height: 50px;
  box-sizing: border-box;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.3);
}
#scroll-arrow a:hover {
  background: var(--white);
  color: var(--primary);
  box-shadow: 0 0 5px rgba(0,0,0,0.1);
}
#scroll-arrow.uk-visible {
  display: block;
  animation: fadeIn 1s linear forwards;
}

/* ---------- responsive ---------- */

@media only screen and (max-width: 960px) {

  .no-wrap-video { min-height: 50vh; }

  #scroll-arrow {
    bottom: 10px;
    right: 10px;
  }

  #featued-story-center-col { max-width: none; }
  #featued-story-left-col, #featued-story-center-col, #featued-story-right-col { min-height: auto; }
  #featued-story-center-col { padding: 4rem 2rem; }

  #socket .uk-text-small a, #socket .uk-text-small a:nth-child(3), #socket .uk-text-small a:first-child {
    padding: 5px 10px;
    border: none;
    display: block;
  }
  #socket .uk-text-small a:nth-child(3) { border: none; }


}