.elementor-30210 .elementor-element.elementor-element-fb85fdd{--display:flex;--min-height:10vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-30210 .elementor-element.elementor-element-fb85fdd:not(.elementor-motion-effects-element-type-background), .elementor-30210 .elementor-element.elementor-element-fb85fdd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-text );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-30210 .elementor-element.elementor-element-acd403d{text-align:center;}.elementor-30210 .elementor-element.elementor-element-acd403d .elementor-heading-title{font-family:"Engravers", Sans-serif;font-size:2.5rem;font-weight:400;text-transform:uppercase;color:var( --e-global-color-primary );}.elementor-30210 .elementor-element.elementor-element-c912cce{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:1450px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:736px){.elementor-30210 .elementor-element.elementor-element-fb85fdd{--min-height:25vh;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-30210 .elementor-element.elementor-element-acd403d{width:var( --container-widget-width, 40% );max-width:40%;--container-widget-width:40%;--container-widget-flex-grow:0;}.elementor-30210 .elementor-element.elementor-element-acd403d > .elementor-widget-container{margin:30% 0% 0% 0%;}.elementor-30210 .elementor-element.elementor-element-acd403d .elementor-heading-title{font-size:1.3rem;}}/* Start custom CSS */.store-locator-section {
    color: #404040;
    font:
      400 15px/22px 'Avenir',
      sans-serif;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    height: 90vh;
  }
  .store-locator-section h3{
      font-family: 'Engravers';
      font-size: 1.3rem;
      font-weight: 400;
      color: black;
  }
  
  .store-locator-section p{
      font-family: 'Avenir';
      font-size: 1rem;
      color: black;
  }
  * {
    box-sizing: border-box;
  }

  .sidebar {
    position: absolute;
    width: 33.3333%;
    height: 100%;
    top: 0;
    overflow-y: auto;
    left: 0;
    border-right: 1px solid rgb(0 0 0 / 25%);
  }

  .pad2 {
    padding: 20px;
  }

  #map {
    position: absolute;
    left: 33.3333%;
    width: 66.6666%;
    top: 0;
    bottom: 0;
  }
  

  h1 {
    font-size: 28px;
    margin: 0;
    font-weight: 400;
    line-height: 20px;
    padding: 20px 0px;
    text-align: center;
    font-family: 'Engravers', Sans-Serif;
  }


  .heading {
    background: #fff;
    min-height: 60px;
    line-height: 60px;
    padding: 2rem 0px;
    background-color: black;
    color: #fff;
  }
  .heading-wrapper{
    position: sticky;
    top: 0;
  }

  .tabs{
    width: 100%;
    display: flex;
    flex-direction: row;
  }
  .tablinks{
    flex: 0 0 50%;
    padding: 1rem 1.5rem;
    font-family: "Aptos", Sans-serif;
    font-size: 0.9rem;
    color: black;
    background-color: white;
    border: 1px solid black;
    border-radius: 0px;
    cursor: pointer;
  }
  .tablinks:hover{
    background-color: transparent !important; /* Example: Remove background color change on hover */
    color: inherit !important;
  }

  .tabs .active{
    background-color: #000000;
    color: #fff;
  }
  

  .listings {
    height: 100%;
    overflow: auto;
  }
  .listings h2, p{
      margin: 0.5rem 0rem !important;
  }

  .listings .item {
    border-bottom: 1px solid #eee;
    padding: 10px;
    text-decoration: none;
    display: flex;
    flex-direction: row-reverse;
    height: 22vh;
    align-items: center;

  }
  .listings .item .image-wrapper{
    flex: 1 1 45%;
    margin: auto auto auto 1rem;
  }
  #ADs {
      font-size: 1rem;
      font-family: 'Sans-Serif';
  }
  #ADs a {
      color: inherit; /* blue colors for links too */
      text-decoration: inherit; /* no underline */
      padding: 0.5rem 1rem;
      border: solid 1px black;
  }
  .listings .item .AD-img, .listings .custom-listing .image-wrapper{
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .listings .item img{
    object-fit: cover;
    width: 100%;
    height: 11vw;
  }
  .listings .item .AD-img img{
    width: auto;
    object-fit: cover;
    height: 10vw;
  }
  
  .listings .custom-listing .image-wrapper img{
    object-fit: cover;
    height: 11vw;
    width: 80%;
    object-position: top center;
  }
  #adsListings .first-image{
    object-fit: cover;
    height: 11vw;
    width: 80%;
    object-position: top center;
  }
  .listings .item .info-wrapper{
    flex: 0 0 55%;
    margin: 1rem;
  }


  .listings .item:last-child {
    border-bottom: none;
  }

  .listings .item .title {
    display: block;
    color: black;
    font-weight: 400;
    text-transform: uppercase;
  }

  .listings .item .title small {
    font-weight: 400;
  }

  .listings .item.active {
    background-color: #f8f8f8;
  }

  .listings .item.expanded {
    flex-direction: column-reverse;
    height: auto;
  }

  .listings .item.expanded .image-wrapper {
    flex: 1 1 100%;
    margin: 0 0 1rem 0;
    width: 100%;
  }

  .listings .item.expanded .image-wrapper img {
    height: auto;
    width: 100%;
    object-fit: cover;
  }

  .listings .item.expanded .info-wrapper {
    flex: 1 1 100%;
    margin: 0;
    text-align: center;
  }
  
  ::-webkit-scrollbar {
    width: 3px;
    height: 3px;
    border-left: 0;
    background: rgb(0 0 0 / 10%);
  }

  ::-webkit-scrollbar-track {
    background: none;
  }

  ::-webkit-scrollbar-thumb {
    border-radius: 0;
    border: 0.5px solid black;
  }

  .marker {
    border: none;
    cursor: pointer;
    height: 60px;
    width: 60px;
    background-image: url('https://www.rivaspain.com/wp-content/uploads/2024/03/my_marker@2x.png');
    background-repeat: no-repeat;
    background-size: contain;
  }

  /* Marker tweaks */
  .mapboxgl-popup {
    padding-bottom: 50px;
  }

  .mapboxgl-popup-close-button {
    display: none;
  }

  .mapboxgl-popup-content {
    font:
      400 15px/22px 'Avenir',
      'Helvetica Neue',
      sans-serif;
    padding: 0px !important;
    width: 180px;
  }

  .mapboxgl-popup-content h2, .mapboxgl-popup-content h3 {
    background: black;
    color: #fff;
    margin: 0;
    padding: 0rem 1rem;
    font-size: 1.1rem;
    text-align: center;
  }
  
  .mapboxgl-popup-content h2{
    text-transform: uppercase;
    font-family: 'Engravers';
    padding-top: 0.5rem;
  }

  .mapboxgl-popup-content h4 {
    margin: 0;
    padding: 0px;
    font-weight: 400;
    font-size: 1rem;
    margin: 0.5rem 0rem;
    padding: 0rem 0.5rem;
    text-align: center;
  }

  .mapboxgl-popup-anchor-top > .mapboxgl-popup-content {
    margin-top: 15px;
  }

  .mapboxgl-popup-anchor-top > .mapboxgl-popup-tip {
    border-bottom-color: #91c949;
  }

  .mapboxgl-ctrl-geocoder {
    border-radius: 0;
    position: relative;
    top: 0;
    margin-top: 0;
    border: 0;
  }

  .mapboxgl-ctrl-geocoder > div {
    min-width: 100%;
    margin-left: 0;
  }
  .mapboxgl-ctrl-geocoder--input{
     padding-left: 1rem !important;
     font-size: 1rem;
  }
  .mapboxgl-ctrl-geocoder > svg {
        display: none;
  }
  
  .no-stores-message{
    margin: auto;
    width: 80%;
    height: 15vh;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .no-stores-message p{
    font-size: 1.5rem;
  }

  .geocoder {
    position: absolute;
    top: 4%;
    /*left: calc(33.3333% + 20px);  Adjust the value (20px) to set the desired distance from the sidebar */
    z-index: 11;
    /*width: calc(66.6666% - 40px);  Adjust the value (40px) to set the desired width */
    border-bottom: 1px solid #eee;

  }
  #seeAllStoresButton{
    padding: 0.5rem 1rem;
    background-color: transparent;
    border: 1px solid black;
    margin: 1rem 1rem 0rem 1rem;
    color: black;
    border-radius: 0px;
  }
  .slideshow-container {
    position: relative;
    width: 100%;
    height: 100%;
}

.slideshow-container img {
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

    .slideshow-container img:first-child {
    display: block;
}

    .prev,
    .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    font-weight: bold;
    padding: 16px;
    color: white !important;
    cursor: pointer;
    display: none; /* Initially hide navigation buttons */
}

    .next {
    right: 0;
}

    .listings .item.expanded img {
      height: 25vw;
      width: 100%;
      object-fit: cover;
      object-position: center center;
    }

    .listings .item.expanded .prev,
    .listings .item.expanded .next {
    display: flex; /* Show navigation buttons when expanded */
}

    #load-more{
        border: solid 1px black;
        background: transparent;
        color: black;
        font-family: 'Engravers';
        border-radius: 0px;
    }
    #retailersListings{
        display: flex;
        flex-direction: column;
    }


    .listings .item .first-image-wrapper {
        flex: 1 1 45%;
        margin: auto auto auto 1rem;
    }
    
    .listings .item.expanded .first-image-wrapper {
        display: none;
    }
    
    .listings .item .first-image {
        object-fit: cover;
        width: 100%;
        height: 11vw;
    }



  /* Styles for non-phone versions */
  @media screen and (min-width: 1129px) {
    .heading-wrapper {
      display: flex;
      flex-direction: column;
      align-items: center;
      background-color: black;
    }

    .heading-wrapper .heading {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 100%;
    }

    #geocoder {
      width: 100%;
      z-index: 2;
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .mapboxgl-ctrl-geocoder--input {
      width: 100%;
    }

    .mapboxgl-ctrl {
      width: 50%;
      max-width: 100% !important;
      margin: 0.5rem 0rem;
    }

    .mapboxgl-ctrl-geocoder--suggestion {
      z-index: 100; /* Ensure suggestions appear on top */
      position: relative;
    }

    /* Ensure parent elements have relative positioning */
    .heading-wrapper, .store-locator-section {
      position: relative;
    }

  }

  /* MOBILE VERSION */
  @media screen and (max-width: 1128px){
    .store-locator-section {
      display: flex;
      flex-direction: column;
      height: 100vh;
      position: relative;
    }

    .geocoder {
      order: 1;
      position: static;
      width: 90%;
      margin-bottom: 10px;
      margin-left: 5%;
      border: 0.5px solid black;
    }
    .mapboxgl-ctrl-geocoder{
      width: 100%;
      max-width: 100% !important; /*So we do not heritage the max-width from mapbox styles*/
      height: 2rem;
    }
    .mapboxgl-ctrl-geocoder--input{
      font-size: 0.8rem !important;
      height: 2rem !important;

    }

    .mapboxgl-ctrl-geocoder--suggestion {
      z-index: 100; /* Ensure suggestions appear on top */
      position: relative;
    }
    .heading-wrapper{
        background-color: black;
    }
            /* Ensure parent elements have relative positioning */
    .heading-wrapper, .store-locator-section {
      position: relative;
    }

    .sidebar {
      order: 2;
      position: static;
      width: 100%;
      height: auto;
      border-right: none;
      margin-top: 0;
    }

    .map {
      display: none;
    }

    #seeAllStoresButton{
      margin: 1rem;
    }

    .store-locator-section h3 {
      font-size: 1rem;
      margin: 0;
    }
    
    .store-locator-section p {
      font-size: 0.8rem;
      margin: 0;
    }

    .ads-tab a {
      padding: 0.2 0.4rem;
    }
    
    .listings {
      display: flex;
      flex-direction: column;
      height: 70vh;
    }

    .listings h2, p {
      margin: 0.2rem 0rem !important;
    }

    .heading-wrapper .heading {
      display: none;
    }

    .tablinks {
      padding: 0.4rem 1.5rem;
    }

    .listings .item {
      display: flex;
      flex-direction: row-reverse;
      align-items: center;
      justify-content: space-between;
      text-align: left;
      height: auto;
      padding: 1rem;
    }

    .listings .item img, .listings .item .first-image {
      height: 25vw;
      object-fit: cover;
    }

    .listings .item.expanded img {
      height: 70vw;
      object-fit: cover;
      object-position: center center;
    }

    .listings .item .AD-img img,
    .listings .custom-listing .image-wrapper img {
      width: 25vw !important;
      height: 160px;
      object-fit: contain;
    }

    .listings .item .info-wrapper {
      height: auto;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 0;
      font-size: 0.9rem;
      flex: 0 0 60%;
      margin-top: 0;
      margin-right: 1rem;
    }

    .listings .item .image-wrapper, .listings .item .first-image-wrapper {
      display: flex;
      flex: 0 0 35%;
      align-items: center;
      margin-left: 0.5rem;
    }

    .mapboxgl-ctrl-geocoder > svg {
      display: none;
    }
			.prev, .next{
				display: flex;
			}
  }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Engravers';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.rivaspain.com/wp-content/uploads/2023/07/Engravers-Gothic-BT-Font.ttf') format('truetype');
}
/* End Custom Fonts CSS */