/*-----------------------------------------------------------------------------
author:    www.visityakima.com
-----------------------------------------------------------------------------*/


/* =Yakima Valley Tourism Listings
-----------------------------------------------------------------------------*/
.listingsTitle {
    margin:0 0 .5em 0;
    }

ul.listings {
    margin:0 0 2em 0;
    }
    
ul.listings li {
    -webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
    font-size: 80%;
    }
    
ul.listings li:hover {
    opacity:0.50;
    filter:alpha(opacity=50); /* For IE8 and earlier */
    }
    
ul.listings li a {
    text-decoration: none;
    }
    
ul.listings li img {
    padding:2%;
    background:#eee9e3;
    margin:0 0 .5em 0;
    }
    
ul.listings li a h2 {
    color:#8c182d;
    }
    
ul.listings li a h3 {
    color:#000;
    }
    
ul.listings li a p {
    padding:0 0 0 0;
    margin:0 0 0 0;
    color:#000;
    font-weight: bold;
    }
    
section ul.listings li p{
    padding: 0 0 0 0;
    }
    
ul.listingsFourUp {
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap:2rem;
    margin:0 0 3em 0;
	}
    
ul.listingsFiveUp {
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-gap:2rem;
    margin:0 0 3em 0;
	}

.crowdriffMap {
	margin:0 0 2em 0;
	}

ul.FourColumnListings {
  display: grid;
  /* Creates 4 columns of equal width */
  grid-template-columns: repeat(4, 1fr); 
  gap: 0rem; /* Optional spacing between items */
  padding:.5em 0 2em 1.5em;
	list-style: disc;
}
	
.FourColumnListings li {
	padding:0 0 .5em 0;
	}

.FourColumnListings a {
	color:#0f3e52;
	padding:1px 1px;
	font-weight:bold;
	-webkit-transition: background 0.4s ease-in-out;
	-moz-transition: background 0.4s ease-in-out;
	-o-transition: background 0.4s ease-in-out;
	transition: background 0.4s ease-in-out;
	}

.FourColumnListings a:link, .FourColumnListings a:visited {
	text-decoration:underline;
	}

.FourColumnListings a:hover, .FourColumnListings a:active {
	color:#ffffff;
	background:#0f3e52;
	}
    

    

/* =Listing Detail Page
-----------------------------------------------------------------------------*/

ul.listingPics {
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap:0;
	}

ul.listingPics li {
    overflow: hidden;   /* This is the 'mask' or 'frame' */
  	position: relative; /* Keeps the image anchored correctly */
	}

ul.listingPics li img {
    display: block;
  	width: 100%;
  	height: 100%;
  	object-fit: cover;
	/* Scale the image up just enough to cover rounding errors */
 	/* 1.01 or 1.02 (1-2%) is usually plenty */
  	transform: scale(1.02); 
  	/* Ensures the 'extra' image is distributed evenly on all sides */
  	transform-origin: center;
	}
    
.listingBio {
    padding:0 0 2em 0;
    }
    
.listingContact {
    display: inline-block;
    padding:0 1em 0 0;
    width:50%;
    align: top;
    }
    
section .listingContact h2 {
    margin:0 0 .1em 0;
    }
    
.listingConnect {
    display: inline-block;
    padding:0 0 0 2em;
    border-left: solid 1px #8c182d;
    }
    
.listingConnect a.wineBtn {
    margin:0 0 0 0;
    font-size:1.25em;
    padding:15px 15px 13px 15px;
    }
    
.listingSocial {
    padding: .15em 0 .25em 0;
    font-size: 225%;
	}
    
.listingRightSide iframe {
    width:100%;
    margin:0 0 2em 0;
    }

/* =Hotel Lodging Options */

ul.lodgingOptions {
    padding:.25em 0 2em 0;
    }

ul.lodgingOptions li {
	color:#8c182d;
    background:none;;
    padding:5px 5px 5px 5px;
    display:inline-block;
    border:solid 1px #8c182d;
    margin:0 .25em .35em 0;
    -webkit-border-radius: 5px 5px 5px 5px;
    border-radius: 5px 5px 5px 5px;
    font-size:1em;
	font-family: 'bebasneuepro-bold', Arial, sans-serif;text-transform: uppercase;
    }

/* =non member open/close box
-----------------------------------------------------------------------------*/

/* 1. Hide the checkbox */
.nonMember-toggle-input {
  display: none !important;
}

/* 2. Container and Header Styles */
.nonMember-accordion-item {
  margin-bottom: 2em;
}

.nonMember-toggle-header {
  display: flex;
  /*justify-content: space-between;*/
  align-items: center;
  cursor: pointer;
  padding: 10px 0;
}

.nonMember-toggle-header h3 {
  margin:0 .25em 0 0;
}

/* 3. The Plus/Minus Icon */
.nonMember-icon {
  position: relative;
  width: 16px;
  height: 16px;
}

.nonMember-icon::before, 
.nonMember-icon::after {
  content: "";
  position: absolute;
  background-color: currentColor; /* Matches text color */
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Horizontal line (The Minus) */
.nonMember-icon::before {
  width: 100%;
  height: 2px;
  top: 7px;
  left: 0;
}

/* Vertical line (The Plus part) */
.nonMember-icon::after {
  width: 2px;
  height: 100%;
  left: 7px;
  top: 0;
}

/* 4. State Changes (When Checked) */

/* Rotate/Hide the vertical bar to leave only a minus */
.nonMember-toggle-input:checked + .nonMember-toggle-header .nonMember-icon::after {
  transform: rotate(90deg);
  opacity: 0;
}


/* Updated Smooth Height Transition */
.nonMember-toggle-content {
  display: grid;
  grid-template-rows: 0fr; /* The magic "collapsed" state */
  transition: grid-template-rows 0.4s ease, visibility 0.4s;
  overflow: hidden;
  visibility: hidden; /* Added: Ensures it is invisible to the eye and screen readers */
  min-height: 0;      /* Added: Forces any theme-level min-heights to be ignored */
}

/* Updated State Change */
.nonMember-toggle-input:checked ~ .nonMember-toggle-content {
  grid-template-rows: 1fr; /* The "expanded" state */
  visibility: visible;    /* Added: Becomes visible immediately when clicked */
}

/* Ensure the inner wrapper doesn't have an awkward height */
.nonMember-content-inner {
  min-height: 0;
  padding: 0 10px; /* Moves padding here to prevent "jumps" during animation */
  color: #444;
}

/* Optional: Add padding only when open to keep the transition smooth */
.nonMember-toggle-input:checked ~ .nonMember-toggle-content .nonMember-content-inner {
  padding-bottom: 15px;
  padding-top: 10px;
}

@media all and (max-width: 1550px) {

.listingContact {
    width:55%;
    }
	
}
	
@media all and (max-width: 1350px) {

.listingContact {
    width:50%;
    }

section .listingContact h2 {
	font-size:1.5em;
	}
	
}

@media all and (max-width: 1250px) {

ul.listingsFourUp {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap:2rem;
	} 
    
ul.listingsFiveUp {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap:2rem;
	}

	
}

@media all and (max-width: 1200px) {
	

	
}

@media all and (max-width: 1000px) {
	
ul.FourColumnListings {
  /* Creates 2 columns of equal width */
  grid-template-columns: repeat(2, 1fr); 
}

ul.listingPics {
    grid-template-columns: 1fr 1fr 1fr;
	}
    
ul.listingPics li:nth-child(3) {
    display:none;
	}
    
.listingContact {
    display:block;
    padding:0 0 0 0;
    width:100%;
    }
    
.listingConnect {
    display:block;
    padding:1em 0 0 0;
    border-left:none;
    }
	
}


	
@media all and (max-width: 875px) {



}

@media screen and (max-width: 750px) {
	
ul.FourColumnListings {
  /* Creates 1 column of equal width */
  grid-template-columns: repeat(1, 1fr); 
}

.listingContact {
    display: inline-block;
    padding:0 1em 0 0;
    width:50%;
    align: top;
    }
    
.listingConnect {
    display: inline-block;
    padding:0 0 0 2em;
    border-left: solid 1px #8c182d;
    }
	
}

@media all and (max-width: 700px) {

ul.listingPics {
    grid-template-columns: 1fr 1fr;
	}
    
ul.listingPics li:nth-child(3) {
    display:block;
	}
	
}

@media all and (max-width: 650px) {

ul.listingsFourUp {
    grid-template-columns: 1fr 1fr;
    grid-gap:2rem;
	}
    
ul.listingsFiveUp {
    grid-template-columns: 1fr 1fr;
    grid-gap:2rem;
	}
    
section .listingContact h2 {
	font-size:1.25em;
	}
    
.listingConnect a.wineBtn {
    font-size:1em;
    padding:10px 10px 9px 10px;
    }
	
}