@import url("https://unpkg.com/swiper/swiper-bundle.min.css");

/* Leftover styles - to clean up later */
/*.site-wrapper {
    background-color: #e2e9e5;
}

body:not(.is-head-open) .gh-head {
    background-color: rgba(211, 222, 216, 0)
}*/

.post-card {
    margin: 10px; /* or use margin: 0 10px 10px 0; for more control */
    /*flex: 1 1 calc(50% - 20px); /* Subtract margin so two cards fit per row */
}

.post-feed {
    margin: -10px; 
}

  
/* Video styles */
/*
.kg-video-card-container,
.kg-video-card video,
.kg-video-card iframe,
video[poster] {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    max-height: 100vh !important;
    min-height: unset !important;
    height: auto !important;
    object-fit: contain !important;
    transform: none !important;
    scale: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
}*/

/* Hide all controls except play and pause buttons */
.kg-video-player > *:not(.kg-video-mute-icon):not(.kg-video-unmute-icon), /*:not(.kg-video-pause-icon):not(.kg-video-play-icon)*/
.hidden {
  display: none !important;
}

/* Author Card Component */
.post-author-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 2rem;
    /*margin-bottom: 8rem;*/
    /*margin: 0rem auto 0rem auto;*/
    /*padding-top: 3rem;*/
    /*border-top: 1px solid rgba(0,0,0,0.1);*/
}
  
.post-author-footer {
    display: flex;
    align-items: center;
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 1px solid rgba(0,0,0,0.1);
}

.author-image-link {
    text-decoration: none !important;
    cursor: pointer;
    display: block;
}

.author-image-link:hover,
.author-image-link:visited,
.author-image-link:focus,
.author-image-link:active {
    text-decoration: none !important;
    opacity: 1;
}

.author-image {
    width: 46px;
    height: 46px;
    border-radius: 100%;
    overflow: hidden;
    object-fit: cover;
    display: block;
}

.post-author-footer .author-image {
    margin-right: 1rem;
}

.header-author-image {
    width: 56px;
    height: 56px;
    border-radius: 100%;
    overflow: hidden;
    object-fit: cover;
    display: block;
    margin-left: auto; 
    margin-right: auto;
    margin-bottom: 12px;
}

.post-author-header h5 {
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--color-base);
  opacity: 0.5;
}

.author-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.author-name {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--color-base) !important;
    text-decoration: none !important;
    cursor: pointer;
    user-select: text;  /* Allows text selection while still being clickable */
}

.author-name:hover,
.author-name:visited,
.author-name:focus,
.author-name:active {
    text-decoration: none !important;
    opacity: 1;
    color: var(--color-base) !important;
    outline: none;  /* Removes focus outline */
}

.post-meta {
    /*margin: -40px 0 0;*/
    font-size: 1.3rem;
    color: var(--color-base);
    opacity: 0.6;
}

/* Hides coordinate element and removes padding from element below (when coords are first) */
.coordinates {
  display: none;
}

.gh-content > .coordinates:first-child + * {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Leaflet map styling */
    .leaflet-container {
        background-color: #f8f9fa;
        /*margin-top: 2rem;*/
        /*margin-bottom: 1rem;*/
    }

    .post-location-map {
        margin-top: 2rem;
    }
    
    .leaflet-control-zoom {
        border: none !important;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
    }

.post-location-map {
  height: 180px;
}

.post-map-global-container {
  width: 100%; 
  /*height: 50vh; */
  aspect-ratio: 4 / 6;
  max-height: 80vh;
  margin: -12px 0 60px;
  background: rgba(0,0,0,0.1);

  /*border: 1px solid rgba(0,0,0,0.3);*/
}


/* Base container styles */
.custom-theme.elevation-control {
	background: rgba(0, 0, 0, 0);
	margin: -8px 0 -56px auto !important;
    padding: 0;
    width: 104%;
    aspect-ratio: 10 / 6;
    max-height: 300px;
}

/* Elevation line and area fill */
/*.custom-theme.elevation-control .area path.altitude {
	stroke: #C5662C;
	stroke-width: 1.5;
	fill: rgba(197, 102, 44, 0.4);
}*/

.elevation-control .background {
  background: rgba(197, 102, 44, 0) !important;
  padding-bottom: 0;
}

.elevation-control .area path.altitude {
	stroke: #C5662C !important;
	stroke-width: 1.5 !important;
	fill: rgba(197, 102, 44, 0.4) !important;
}

.elevation-control .grid,
.elevation-control .axis path,
.elevation-control .tick line,
.elevation-control .axis > text,
.elevation-control .ruler {
    display: none; /* Remove grid if unnecessary */
}

.elevation-control .axis text {
  stroke: none;
  /*fill: color-mix(in srgb, var(--color-base) 50%, transparent);*/
}
  
/* GPX Info viewer */
.track-info-container {
    background: rgba(0,0,0, 0.08);
    padding: 10px;
    margin-top: 0 !important;
    margin-bottom: 0;
    border: 0px solid #ccc;
    border-radius: 0;
    min-height: 50px;
}

.track-info-content {
}

    .track-info-content h4 {
        /* padding: 0 0px; */
        margin: 2rem 0 1rem;
        text-align: center;
        /*font-family: var(--font-sans); /* or var(--font-serif) */
        /*font-weight: bold;*/
        /*font-size: 16px;
        /*color: var(--color-base);*/
    }

    .track-info-content p {
        margin: auto 0 1rem;
        text-align: center;
        /*font-family: var(--font-sans);
        font-weight: 600;
        font-size: 16px;
        color: var(--color-base);*/
    } 

    .track-footer {
      display: flex;
      flex-direction: column;
      line-height: 1.4;
      font-size: 1.6rem;
      position: relative;
      z-index: 99;
      /*justify-content: space-between; 
      align-items: center;*/
    }

    .track-stats {
       /*font-size: 1.1rem;*/
      /* font-style: normal;*/
       /*color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;*/
       text-align: center;
       margin: 0 !important;
    }

    .gpx-file-link{
      text-align: center;
      padding: inherit 20px !important;
      margin: 0 auto !important;
    }
    
    .track-info-content a {
        /*font-size: 16px; */
        /* margin: 4px 0px 0;
        font-family: var(--font-sans);
        font-weight: 500;
        font-size: 12px;
        display: inline-block;
        padding: 6px 12px;
        background: var(--ghost-accent-color);
        color: var(--color-white) !important;
        text-decoration: none;
        border-radius: 999px;
        transition: opacity 0.2s ease; */
    }
    
    .track-info-content a:hover {
        /*opacity: 0.9;*/
    }


.track-info-content img {
        width: 100%;
        /*height: 180px;*/
        aspect-ratio: 4 / 3;
        object-fit: contain;
        border-radius: 4px;
        margin-bottom: 0;
        display: block;
        background-color: rgba(0,0,0,0.1);
}

    .posts-link {
        text-align: center;
        margin: 1rem auto 0 !important;
        /*font-family: var(--font-sans);*/
        font-weight: normal;
        /*font-size: 1.6rem;*/
        display: block;
        padding: 0.5rem 1rem;
        background: var(--ghost-accent-color);
        color: var(--color-white) !important;
        text-decoration: none !important;
        border-radius: 994px;
        transition: opacity 0.2s ease;
        border: 1.8px solid var(--ghost-accent-color); /* Thickness, style, and color */
        flex: 1;
    }

.global-map-link {
        text-align: center;
        margin: 16px auto 0;
        /*font-family: var(--font-sans);*/
        font-weight: bold;
        /*font-size: 1.6rem;*/
        display: block;
        padding: 0.5rem 1rem;
        /*background: var(--ghost-accent-color);*/
        color: var(--ghost-accent-color) !important;
        text-decoration: none !important;
        border-radius: 4px;
        transition: opacity 0.2s ease;

        /*border: 2.5px solid var(--ghost-accent-color); /* Thickness, style, and color */
    }

.home-global-map-link {
        text-align: center;
        margin: -72px auto 48px;
        /*font-family: var(--font-sans);*/
        font-weight: bold;
        font-size: 1.8rem;
        display: block;
        padding: 0.5rem 1rem;
        /*background: var(--ghost-accent-color);*/
        color: var(--ghost-accent-color) !important;
        text-decoration: none !important;
        border-radius: 4px;
        transition: opacity 0.2s ease;

        /*border: 2.5px solid var(--ghost-accent-color); /* Thickness, style, and color */
    }


.gpx-viewer {
    background-color: #f8f9fa;
    margin: 0 !important;
}

.gpx-viewer-container {
    margin-top: 2rem;
}

.gpx-viewer-block {
  margin-bottom: 8px;
}

.gpx-popup .leaflet-popup-tip {
    background: rgba(0, 0, 0, 0) !important;
    box-shadow: none !important;
}
  
    /* Marker styling */
    .custom-marker {
        fill: var(--ghost-accent-color);
        fill-opacity: 1;
        stroke: var(--color-base);
        stroke-width: 1;
    }

    [class*="poi-marker-"] {
        fill: inherit; /* Let the category class define the color */
    }

    .custom-marker:hover {
       fill: #D35F13;
       fill-opacity: 1;
       /*stroke: #C5662C;
       stroke-width: 1;*/
    }

  .poi-marker-food-drink {
    fill: #D9BE5B;
  }

  .poi-marker-things-to-do {
    fill: #D96866;
  }

  .poi-marker-where-to-stay {
    fill: #686AA3;
  }

    /* Make the popup wider to accommodate images better */
    .leaflet-popup {
        max-width: 200px;
        border-radius: 0 !important;
        width: fit-content;
    }

    
    /* Popup styles */
    .leaflet-popup-content-wrapper {
        background: #FFF; /*var(--color-bg);*/
        color: var(--color-base);
        /*border-radius: 14px 14px calc(10px + 0.75rem + 0.75rem) calc(10px + 0.75rem + 0.75rem) !important;*/
        border-radius: 12px !important;
        margin: 0 !important;
        padding: 10px !important;
        display: flex;
        flex-direction: column;
        height: 100%;
    }
    
    .leaflet-popup-content {
        text-align: center;
        margin: 0 !important;
        padding: 0 !important;
        height: 100%;
    }
    
    /* Popup arrow */
    .leaflet-popup-tip {
        background: #FFF; /*var(--color-base);*/
    }
    
    /* Popup close button */
    .leaflet-container a.leaflet-popup-close-button {
        display: none;
        color: var(--color-base);
        padding: 8px 8px 0 0;
        margin: 0;
    }
    
    /* Custom popup content styles */
    /*.popup-content {
        text-align: center;
    }*/

    .popup-content,
    .poi-popup-content {
      display: flex !important;
      flex-direction: column !important;
      height: 100% !important;
    }

    .popup-body {
      flex-grow: 1; /* Takes up all available space, pushing the link down */
      padding: 0 0 8px;
    }
    
    .popup-content h4,
    .poi-popup-content h4 {
        padding: 0px 5px 4px;
        margin: 4px 0 auto;
        /*font-family: var(--font-sans); /* or var(--font-serif) */
       /* font-weight: bold;*/
        font-size: 1.8rem;
       /* color: var(--color-base);*/
    }

    .popup-content p {
        padding: 0;
        margin: 4px 0;
       /* font-family: var(--font-sans); /* or var(--font-serif) */
       /* font-weight: 600;*/
        font-size: 1.5rem;
        /*color: var(--color-base);*/
    }

.popup-post-meta {
    display: none;
    color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;
    font-size: 1.1rem !important;
    font-weight: 450;
    margin: 8px 0 -0.4rem !important;
}

    .location-info {
      color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;
      font-size: 1.2rem !important;
      margin: 0 !important;
      padding-top: 0.5rem !important;
    }

    .poi-popup-content p {
      color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;
      font-size: 1.2rem !important;
      margin: 0 !important;
      /*padding-top: 0.5rem !important;*/
    }

    .leaflet-popup-content > .location-info:only-child {
      padding: 0 !important;
    }


   .popup-content-stats {
       font-style: italic;
       color: color-mix(in srgb, var(--color-base) 40%, transparent) !important;
    }
    
    .popup-content a {
        margin-top: 0 !important;
        /*font-family: var(--font-sans);
        font-weight: 500;*/
        font-size: 1.5rem;
        display: block;
        padding: 0.75rem 1.5rem;
        background: var(--ghost-accent-color);
        color: var(--color-white) !important;
        text-decoration: none !important;
        border-radius: 9994px;
        transition: opacity 0.2s ease;
    }

    .poi-popup-content a {
        margin-top: 6px !important;
        /*font-family: var(--font-sans);
        font-weight: 500;*/
        font-size: 1.5rem;
        display: block;
        padding: 0.75rem 1.5rem;
        background: var(--ghost-accent-color);
        color: var(--color-white) !important;
        text-decoration: none !important;
        border-radius: 9994px;
        transition: opacity 0.2s ease;
    }
    
    .popup-content a:hover {
        opacity: 0.9;
    }

    .popup-content img {
        width: 100%;
        height: 120px;
        object-fit: cover;
        border-radius: 4px;
        margin-bottom: 6px;
        display: block;
    }

/* cluster marker styling */

div.marker-cluster {
    background: color-mix(in srgb, var(--ghost-accent-color) 60%, transparent);
    width: 32px !important;
    height: 32px !important;
    padding: auto !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

div.marker-cluster div {
    background: color-mix(in srgb, var(--ghost-accent-color) 80%, transparent);
    color: white;
    height: 24px !important;
    width: 24px !important;
    margin: auto !important;
    padding: auto !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Hide gpx file cards */
.kg-file-card:has(a[href$=".gpx"]) {
    display: none;
}

  /*
.gh-content > .kg-image-card:not(.kg-card-hascaption) + .kg-file-card:has(a[href$=".gpx"]) + .kg-image-card,
.gh-content > .kg-image-card:not(.kg-card-hascaption) + .kg-file-card:has(a[href$=".gpx"]) + .kg-video-card,
.gh-content > .kg-video-card:not(.kg-card-hascaption) + .kg-file-card:has(a[href$=".gpx"]) + .kg-image-card,
.gh-content > .kg-video-card:not(.kg-card-hascaption) + .kg-file-card:has(a[href$=".gpx"]) + .kg-video-card,
.gh-content > .kg-video-card:not(.kg-card-hascaption) + .kg-image-card,
.gh-content > .kg-video-card:not(.kg-card-hascaption) + .kg-video-card,
.gh-content > .kg-image-card:not(.kg-card-hascaption) + .kg-video-card  {
    margin-top: 6px;
}
*/

.gh-content > :is(.kg-image-card, .kg-video-card):not(.kg-card-hascaption)
  + .kg-file-card:has(a[href$=".gpx"])
  + :is(.kg-image-card, .kg-video-card),
.gh-content > :is(.kg-image-card, .kg-video-card):not(.kg-card-hascaption)
  + :is(.kg-image-card, .kg-video-card) {
  margin-top: 6px;
}


/* Post navigation links */
.post-navigation {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 1px solid rgba(0,0,0,0.1);
}

.post-navigation a {
    flex: 1;
  text-decoration: none;
}

.post-navigation .nav-previous {
    text-align: left;
}

.post-navigation .nav-next {
    text-align: right;
}

.post-navigation .nav-label {
    display: block;
    font-size: 0.875em;
    color: #666;
}

.post-navigation .nav-title {
    display: inline-block;
}

.post-navigation .nav-previous .nav-title::before {
    content: "←\00a0";
    text-decoration: none;
    display: inline-block;
}

.post-navigation .nav-next .nav-title::after {
    content: "\00a0→";
    text-decoration: none;
    display: inline-block;
}

.post-navigation .nav-disabled {
    opacity: 0.5;
}

.gallery-post-link {
  text-align: center;
  display: block;
  margin: 1rem auto 0;
  display: none;
}

.pocket-guide-toggle[data-kg-toggle-state="open"] {
  background: rgba(211,95,19, 0.15) !important;
}

  .popup-swiper .swiper-wrapper {
    padding-bottom: 20px !important;
  }

  .track-image-carousel .swiper-wrapper img {
  }
  
  .track-image-carousel .swiper-wrapper {
    
  }

  .popup-swiper .swiper-scrollbar {
    display: none;
    width: 20% !important;
    margin: 0 40% !important; /* Center horizontally */
  }

  .popup-swiper .swiper-pagination {
    margin-bottom: -8px !important;
  }

  /* Dot container */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.popup-swiper .swiper-pagination-bullet {
  background: #bbb;
  opacity: 0.5;
}

.track-image-carousel .swiper-pagination-bullet {
  background: #FFF;
  opacity: 0.5;
}

/* Active dot */
.popup-swiper .swiper-pagination-bullet-active {
  background: #666;
  opacity: 1;
}

.track-image-carousel .swiper-pagination-bullet-active {
  background: #FFF;
  opacity: 1;
}

.popup-swiper .swiper-slide {
  height: 100%;
}

.track-image-carousel .swiper-slide {
  
}

.pswp__bg {
  opacity: 1 !important;
}

.pswp__button--share {
  display: none !important;
}

.last-updated.pocket-guide {
  text-align: center;
  font-style: italic;
  font-weight: 500;
  /*margin-top: 2.8rem;*/
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.4rem;
  color: rgba(0,0,0, 0.4);;
}

.post-content-title.pocket-guide {
  margin-top: inherit;
}

.post-content-title.pocket-guide {
  margin-top: inherit;
}

/* ------------------------------------------ end of leftover styles -------------------------------------------------- */





/* Leaflet styles */
@media (max-width: 1023px) {
  .leaflet-control-zoom {
  		display: none;
	}
}


.leaflet-popup {
  max-width: 200px;
  border-radius: 0 !important;
  width: fit-content;
}

/* Popup styles */
.leaflet-popup-content-wrapper {
  background: #fff; /*var(--color-bg);*/
  /*color: var(--color-base);*/
  /*border-radius: 14px 14px calc(10px + 0.75rem + 0.75rem) calc(10px + 0.75rem + 0.75rem) !important;*/
  border-radius: 12px;
  margin: 0;
  padding: 10px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.leaflet-popup-content {
  /*display: flex;
  flex-direction: column;
  align-items: center;*/
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
  height: 100%;
}

/* Popup arrow */
.leaflet-popup-tip {
  background: #fff; /*var(--color-base);*/
}

/* Popup close button */
.leaflet-container a.leaflet-popup-close-button {
  display: none;
}

/* LEAFLET POPUPS */

.leaflet-popup {
  max-width: 200px;
}

.leaflet-popup-content-wrapper {
  text-align: center;
}

.leaflet-popup-content {
  /*margin: 8px 12px;*/
  margin: 0;
  padding: 0;
}

.leaflet-popup-content p {
  font-family: var(--gh-font-body);
  font-size: 0.8rem;
  font-weight: 400;
  /*margin: 4px 0;
  margin: 0.3em 0;*/
  margin: 0;
}

.leaflet-popup-content > .popup-location-info:only-child {
  padding: 0 !important;
}

/* POPUP CONTENT */

.popup-content {
  display: flex !important;
  flex-direction: column !important;
  
  align-items: center;
  height: 100% !important;
}

.popup-content.popup-post-card {
  position: relative;
  display: inline-block;   
  margin-bottom: 0;
  width: 180px;
  /* shrink-wrap to image */
}

.popup-content.popup-post-card::before {
  content: "";
  position: absolute;
  inset: 0;                    /* shorthand for top:0; right:0; bottom:0; left:0; */
  background-color: rgba(0, 0, 0, 0.3); /* 50% opaque black */
  z-index: 1;   
  border-radius: 4px;
  width: 100%;
}

.popup-body {
  flex-grow: 1; /* Takes up all available space, pushing the link down */
  padding: 0;
}

.popup-content img {
  width: 100%;
  /*height: 120px;*/
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 4px;
  margin: 0;
  display: block;
}

.popup-content.popup-compact img {
  margin-bottom: 4px;
}

.popup-content.popup-post-card img {
  margin: 0;
  padding: 0;
  width: 100%;
  aspect-ratio: 4 / 3;
}

.popup-content h4 {
  font-family: var(--gh-font-heading);
  font-size: 1.1rem;
  padding: 0;
  margin: 8px auto 11px;
  font-weight: 500;
  color: #000;
  width: 95%;
  /*font-family: var(--font-sans); /* or var(--font-serif) */
  /* font-weight: bold;*/
  /*font-size: 1.8rem;*/
  /* color: var(--color-base);*/
}

.popup-content.popup-compact h4 {
  color: var(--ghost-accent-color);
  padding: 0 5px 0;
  margin: 0;
}

.popup-content.popup-post-card h4 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  text-align: center;
  color: white;
  z-index: 2;   
  font-size: 1.2rem;
  font-weight: 600;
  width: 90%;
}

.popup-content p {
  padding: 0;
  margin: 4px 0;
  /* font-family: var(--font-sans); /* or var(--font-serif) */
  /* font-weight: 600;*/
  /*font-size: 1.5rem;*/
  /*color: var(--color-base);*/
}

.popup-content a {
  margin: 0 0 2px !important;
  /*font-family: var(--font-sans);
        font-weight: 500;*/
  font-size: 0.9rem;
  display: block;
  padding: 0.5rem 0.75rem;
  background: var(--ghost-accent-color);
  color: #fff;
  text-decoration: none !important;
  border-radius: 9994px;
  transition: opacity 0.2s ease;
  width: 85%;
}

.popup-content a:hover {
  opacity: 0.9;
}

.popup-location-info {
  color: rgba(0, 0, 0, 0.4);
  padding: 0;
  margin: 0;
  padding-top: 0.5rem;
}

.swiper + .popup-location-info {
  padding-top: 0.2rem;
}

/* LEAFLET CLUSTER MARKERS */

div.marker-cluster {
  background: color-mix(in srgb, var(--ghost-accent-color) 60%, transparent);
  width: 32px !important;
  height: 32px !important;
  padding: auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

div.marker-cluster div {
  background: color-mix(in srgb, var(--ghost-accent-color) 80%, transparent);
  color: white;
  height: 24px !important;
  width: 24px !important;
  margin: auto !important;
  padding: auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* SWIPER STYLES */

.popup-swiper .swiper-wrapper {
  padding-bottom: 20px !important;
}

.track-image-carousel .swiper-wrapper img {
}

.track-image-carousel .swiper-wrapper {
}

.popup-swiper .swiper-scrollbar {
  display: none;
  width: 20% !important;
  margin: 0 40% !important; /* Center horizontally */
}

.popup-swiper .swiper-pagination {
  margin-bottom: -8px !important;
}

/* Dot container */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.popup-swiper .swiper-pagination-bullet {
  background: #bbb;
  opacity: 0.5;
}

.track-image-carousel .swiper-pagination-bullet {
  background: #fff;
  opacity: 0.5;
}

/* Active dot */
.popup-swiper .swiper-pagination-bullet-active {
  background: #666;
  opacity: 1;
}

.track-image-carousel .swiper-pagination-bullet-active {
  background: #fff;
  opacity: 1;
}

.popup-swiper .swiper-slide {
  height: 100%;
}

.track-image-carousel .swiper-slide {
}

/* GALLERY STYLES */

.gallery-all-posts-container {
  width: 100vw;
  margin: 1rem 0 0 !important;
  padding: 2px 0;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  overflow: visible;
}

.post-group {
  margin-bottom: 48px;
}

.post-header {
  margin: 0 !important;
  padding: 0.3rem 8px 0.6rem 8px !important;
  text-align: left;
}

.post-header a {
  text-decoration: none !important;
  color: inherit; /* if you also want it to inherit your post-header text color */
}

.post-header a:hover {
  text-decoration: underline !important; /* add underline on hover */
  /*color: #0066cc; /* change color on hover */
}

.post-meta {
  margin: 0 !important;
  color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;
  opacity: 100% !important;
  text-align: left;
}

/*
.post-meta strong {
  color: color-mix(in srgb, var(--color-base) 50%, transparent) !important;
}*/

.grid-container {
  margin: 0 auto;
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
}

.grid-item {
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}

.grid-item:first-child {
  grid-column: span 3;
  grid-row: span 2;
  aspect-ratio: 3 / 2;
}

.grid-item img,
.grid-item video {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background-color: #ccc;
}

.grid-caption {
  display: none;
}

/* PHOTOSWIPE */
/*
.pswp__caption__center {
  font-size: 0.9em;
  font-weight: normal;
  text-align: center;
}

.pswp {
  margin: 0 !important;
}

.pswp__bg {
  opacity: 1 !important;
}
*/

.pswp {
  z-index: 39999999;
}

.pswp__button--share {
  display: none !important;
}


.pswp__caption__center {
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 1.5rem !important;
  margin-bottom: 1.5rem !important;
  max-width: min(800px, calc(100vw - 2rem)) !important;
  color: #FFF !important;
  /*padding: 1rem;
  max-width: 800px;
  margin: 0 auto 1.5rem auto;*/
}

/*
.pswp__caption__center {
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 1.5rem !important;
  color: #FFF !important;
  margin: auto 2vw 1.5rem 2vw !important;
  padding: 1rem !important;
}*/

/* Alternate styling for desktop devices */
@media (min-width: 1024px) {
  .gallery-all-posts-container {
  		width: 100%;
  }
  
  .grid-container {
    grid-template-columns: repeat(4, 1fr);
    gap: 3px;
  }
  
  .post-header {
    padding-left: 0 !important;
  }
}