/* =========================================
   Home Page Locations Widget
   SAFE SCOPED VERSION
   Only affects .alts-home-widget
========================================= */

.alts-home-widget{
  background:#e0dfd8;
  font-family:proxima-nova,sans-serif;
  overflow:hidden;
}

/* -----------------------------------------
   GENERAL LAYOUT
----------------------------------------- */

.alts-home-widget .our-locations-inner,
.alts-home-widget .our-locations-wrapper,
.alts-home-widget .alts-home-locations-row{
  align-items:stretch;
}

.alts-home-widget .alts-home-left,
.alts-home-widget .alts-home-right{
  min-width:0;
}

.alts-home-widget .alts-home-mapwrap{
  width:100%;
  display:flex;
  height:100%;
  min-height:100%;
}

.alts-home-widget #locationsMap{
  width:100%;
  display:block;
  position:relative !important;
  top:auto !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  border:0;
}

/* heading */
.alts-home-widget .desktop-header-content{
  margin-top:-19px;
}

.alts-home-widget .headeraashok{
  font-size:42px;
  line-height:1.1;
  font-family:meno-banner,serif;
  font-weight:500;
  color:#111;
  margin:0 0 10px 0;
}

.alts-home-widget .fourtyfiveash{
  color:#43403b;
  margin:0 0 15px 0;
  font-size:16px;
  line-height:1.6;
}

/* list container */
.alts-home-widget .locations-list{
  margin-top:10px;
}

/* rows */
.alts-home-widget .location-row-wrap{
  padding-left:15px;
  transition:all .25s ease;
}

.alts-home-widget .location-row-link{
  text-decoration:none;
  color:inherit;
  display:block;
}

.alts-home-widget .location-row{
  display:grid;
  grid-template-columns:1fr auto 35px;
  align-items:center;
  padding:18px 0 !important;
}

.alts-home-widget .location-name h3{
  margin:0;
  font-size:20px;
  font-family:meno-banner,serif;
  font-weight:300;
  color:#111;
  transition:color .25s ease;
}

.alts-home-widget .location-name h3:hover{
  color:#fff !important;
}

.alts-home-widget .studio-count{
  font-size:14px;
  color:#333;
  text-decoration:underline;
  text-underline-offset:5px;
  margin-right:20px;
  white-space:nowrap;
  transition:color .25s ease;
}

.alts-home-widget .location-arrow i{
  font-size:40px;
  color:#808080;
  transition:color .25s ease;
}

/* divider */
.alts-home-widget .location-divider{
  height:2px;
  background:#7f7f7f;
  opacity:.25;
  transition:all .25s ease;
}

/* hover */
.alts-home-widget .location-row-wrap:hover{
  background:#5a5a5a;
  color:#fff;
}

.alts-home-widget .location-row-wrap:hover .location-name h3,
.alts-home-widget .location-row-wrap:hover .studio-count,
.alts-home-widget .location-row-wrap:hover .location-arrow i{
  color:#fff !important;
}

.alts-home-widget .location-row-wrap:hover .location-divider{
  display:none;
}

/* hide mobile tabs on desktop */
.alts-home-widget .mobile-tabs-nav{
  display:none;
}

/* -----------------------------------------
   DESKTOP
----------------------------------------- */

@media (min-width:769px){

  .alts-home-widget .our-locations-inner,
  .alts-home-widget .our-locations-wrapper,
  .alts-home-widget .alts-home-locations-row{
    display:flex;
    align-items:stretch;
  }

  .alts-home-widget .alts-home-left,
  .alts-home-widget .alts-home-right{
    display:flex;
    flex-direction:column;
  }

  .alts-home-widget .alts-home-right,
  .alts-home-widget .alts-home-mapwrap{
    height:100%;
  }

  .alts-home-widget #locationsMap{
    height:100% !important;
    min-height:795px !important;
    max-height:none !important;
  }
}

/* -----------------------------------------
   MOBILE
----------------------------------------- */

@media (max-width:768px){

  .alts-home-widget{
    overflow:hidden;
  }

  /* hide desktop heading */
  .alts-home-widget .desktop-header-content{
    display:none;
  }

  /* mobile tabs */
  .alts-home-widget .mobile-tabs-nav{
    display:flex;
    width:calc(100% - 32px);
    margin:0 auto 10px;
  }

  .alts-home-widget .mobile-tabs-nav .tab-btn{
    flex:1;
    padding:10px 15px;
    background:#e0dfd8;
    border:none;
    border-bottom:3px solid transparent;
    font-size:16px;
    font-weight:600;
    color:#666;
    text-transform:uppercase;
    cursor:pointer;
  }

  .alts-home-widget .mobile-tabs-nav .tab-btn.active{
    color:#000;
    border-bottom:3px solid #000;
  }

  /* tab visibility */
  .alts-home-widget #tab-list,
  .alts-home-widget #tab-map{
    display:none;
  }

  .alts-home-widget #tab-list.active-tab-content,
  .alts-home-widget #tab-map.active-tab-content{
    display:block;
  }

  /* rows mobile */
  .alts-home-widget .location-row{
    grid-template-columns:1fr auto 24px;
    padding:16px 0;
  }

  .alts-home-widget .location-name h3{
    font-size:18px;
  }

  .alts-home-widget .location-region-name{
    font-size:20px !important;
    font-family:meno-banner,serif !important;
    font-weight:300 !important;
  }

  .alts-home-widget .studio-count{
    font-size:13px;
    margin-right:10px;
  }

  .alts-home-widget .location-arrow i{
    font-size:28px;
  }

  /* mobile map */
  .alts-home-widget .alts-home-mapwrap{
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    overflow:hidden;
  }

  .alts-home-widget #locationsMap{
    width:100% !important;
    height:52vh !important;
    min-height:320px !important;
    max-height:480px !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    position:relative !important;
    top:auto !important;
    overflow:hidden !important;
  }

  .alts-home-widget .google-map{
    height:100% !important;
    min-height:320px !important;
    max-height:none !important;
  }
}