/*
	Theme Name: www.fosterfwineland.com
	Theme URI: https://sandhills.com
	Author: Sandhills
	Author URI: https://sandhills.com
	Description: Sandhills default template.
	Version: 1.0
	Text Domain: sandhills
	Tags: Sandhills default
*/
/*--------------------------------------------------------------
## Editor class styles
--------------------------------------------------------------*/

/* RESET */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{background: transparent; border: 0; margin: 0; padding: 0;} img{max-width: 100%; height: auto; image-rendering: -webkit-optimize-contrast;}

html, body{font-family: 'Montserrat', sans-serif; font-size: 14px; line-height: 1.5; height: 100%; width: 100%;}
.cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} *{box-sizing: border-box;}

.sidebarColumn, .top-header .sidebarColumn, .top-navigation .sidebarColumn, .bottom-navigation .sidebarColumn{min-height: inherit !important;}
.main{padding: 50px 0;}
.wrap{max-width: 1440px; margin: 0 auto; padding: 0 20px;}

.title-banner{background: #000 url("images/title-bg.png"); padding: 50px 20px; border-bottom: 1px #ddd solid;}
.title-banner h1{font-size: 32px; text-align: center; letter-spacing: 2px; text-transform: uppercase; color: #2a2a2a;}

.grey-box{background: #f5f5f5; padding: 35px !important; border: 2px #ddd solid;}

/* TYPOGRAPHY */

a{color: inherit; transition: all .2s ease-in-out;}

/* HEADER */

.row > * {
    padding-left: calc(var(--bs-gutter-x) * 0.0);
    padding-right: calc(var(--bs-gutter-x) * 0.0);
}
a {
    text-decoration: none;
}
.top-header{background: #cacaca; padding: 5px 0; font-size: 12px; text-align: center;}
.top-header a{display: block; padding: 5px;}
.top-header .prevButton-container-our-locations, .top-header .nextButton-container-our-locations{display: none!important;}
.top-header .post-container-our-locations{display: flex; justify-content: center; flex-wrap: wrap;}
.top-header .column-padding-our-locations{width: auto; margin: 0 15px;}
.top-header .column-padding-our-locations i{margin-right: 5px;}

.header{padding-top: 15px;}
.header .wrap{display: flex; align-items: flex-end; flex-wrap: wrap;}
.header .logo{max-width: 350px; padding-bottom: 15px;}
.header .header-right{display: flex; justify-content: flex-end; flex-wrap: wrap; width: calc(100% - 350px); margin-left: auto; text-align: right;}

.header .top-navigation ul li{display: inline-block; list-style: none; border-right: 1px #000 solid;}
.header .top-navigation ul li:last-child{border-right: none;}
.header .top-navigation ul li a{display: block; padding: 0 10px; font-size: 12px;}

.header .search{width: 100%; margin: 12px 0;}
.header .search form{display: flex; justify-content: flex-end;}
.header .search input[type="text"]{display: block; width: 250px; height: 40px!important; padding: 7px 10px; font-family: 'Montserrat', sans-serif; border: 1px #000 solid; border-radius: 0;}
.header .search input[type="submit"]{display: block; background: #000; padding: 7px 20px; font-family: 'Montserrat', sans-serif; font-weight: 700; text-transform: uppercase; color: #fff; border: 1px #000 solid; border-radius: 0;}

.header .bottom-navigation{display: inline-block; position: relative; background: #F8E63A; width: auto; margin-left: auto; padding: 10px 15px 5px;}
.header .bottom-navigation:before{content: ""; display: inline-block; position: absolute; left: -20px; bottom: 0; width: 0; height: 0; border-style: solid; border-width: 35px 20px 0px 0; border-color: transparent #F8E63A transparent transparent; vertical-align: middle;}
.header .bottom-navigation ul li{display: inline-block; list-style: none; border-right: 1px #000 solid;}
.header .bottom-navigation ul li:last-child{border-right: none;}
.header .bottom-navigation ul li a{display: block; padding: 0 10px; font-size: 12px;}

/* HOME */

.hero{max-width: 1440px; margin: 35px auto; width: 90%; background: #000; display: flex; flex-direction: row; padding: 0;}
.hero .hero-image {width: calc(100% - 300px);}
.hero-image img {width: 100%; height: auto; max-height: 650px; object-fit: cover; aspect-ratio: 4 / 3;}
.hero .hero-links{display: flex; flex-wrap: wrap; height: 100%; background: #000; width: 300px;}
.hero .hero-links aside {width: 100%;}

.hero .home-links {display: flex; flex-direction: column; height: 100%; width: 100%;}
.hero .home-links a{width: 100%; height: 100%; display: flex; flex-wrap: wrap;}
.hero .home-links a button{display: block; width: 100%; padding: 20px; font-size: 20px; line-height: 1.25; color: #F8E63A; background: #000; border: none; cursor: pointer; border-bottom: 3px transparent solid;}
.hero .home-links a button:hover{background: #333; border-bottom: 3px #777 solid; transition: .3s ease-in-out all;}
.hero .home-links a button strong{display: block; font-weight: 700;}
.hero .home-links a button p{display: block; color: #F8E63A;}
.hero .home-links a button span{display: block; position: relative; margin-top: 15px; font-size: 16px; color: #fff;}
.hero .home-links a button span:after{font-family: "Font Awesome 5 Free"; font-size: 14px; font-weight: 900; content: "\f101"; margin-left: 10px;}

.home-categories h2{display: block; background: #000; padding: 20px; font-size: 18px; font-weight: 700; text-align: center; color: #fff;}
.home-categories .post-container-home-categories{display: flex;}
.home-categories .prevButton-container-home-categories, .home-categories .nextButton-container-home-categories{display: none;}

.home-categories .zoom{position: relative; border: 1px #fff solid; overflow: hidden;}
.home-categories .zoom img{display: block; width: 100%; transition: all .5s ease;}
.home-categories .zoom .zoom-caption{display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(248, 230, 58, 0.5); font-size: 18px; font-weight: 700; line-height: 1.25; text-transform: uppercase; text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); color: #fff; transition: all .5s ease; z-index: 10;}
.home-categories .zoom:hover img{transform: scale(1.05);}
.home-categories .zoom:hover .zoom-caption{background: rgba(248, 230, 58, 0);}

.quick-links h2{font-size: 20px; font-weight: 400; text-transform: uppercase; letter-spacing: 1px; text-align: center; margin-bottom: 30px;}
.quick-links ul{display: flex; flex-wrap: wrap; align-items: center; justify-content: center;}
.quick-links li{list-style: none; width: 50%;}
.quick-links li a{display: block; padding: 15px; font-size: 20px; font-weight: 700; text-align: center; text-transform: uppercase;}
.quick-links li a:hover{transform: scale(1.05); color: #000;}

/* BODY */

.post-container-our-locations{display: flex; flex-wrap: wrap;}
.column-padding-our-locations{width: 25%;}
.location-box{background: #f5f5f5; margin: 5px; border: 1px #ddd solid;}
.location-box h2{font-size: 18px; font-weight: 700; text-transform: uppercase; padding: 30px 20px;}
.location-box img{display: block; text-align: center; margin: 0 auto 20px; padding: 0 20px;}
.location-box p{display: block; padding: 0 20px;}
.location-box a{display: block; padding: 20px;}
.location-box iframe{width: 100%; height: 200px;}

.bottom-btns{display: flex; margin: 25px 0;}
.bottom-btns a{flex: 1; display: block; background: #000; margin: 2px; padding: 15px; font-weight: 700; text-transform: uppercase; text-align: center; color: #F8E63A; border: 1px transparent solid;}
.bottom-btns a:hover{background: none; color: #000; border: 1px #000 solid;}

.contactForm h1{display: none;}
.contactForm .btn-success, .contactForm .btn-success:focus, .contactForm .btn-success:hover{background-color: #F8E63A !important; border-color: #F8E63A !important; font-weight: 700; color: #000;}
.contactForm .contactFormLabel{font-size: 14px;}
.contactForm .form-control{height: auto; margin-top: 5px; padding: 10px;}

/* FOOTER */

.footer-locations{background: #000 url("images/locations-bg.jpg") fixed center center no-repeat; background-size: cover; padding: 50px 0;}
.footer-locations h3{font-weight: 700; text-transform: uppercase; text-align: center; color: #F8E63A; margin-bottom: 25px;}
.footer-locations .footer-location{margin: 15px; font-size: 18px; text-align: left; color: #fff;}
.footer-locations .footer-location a{color: #F8E63A;}

.footer{background: #000; padding: 50px 0; color: #fff;}
.footer .wrap{display: flex; flex-wrap: wrap;}

.footer .footer-links{width: 50%; padding-right: 25px;}
.footer .footer-links h3{text-transform: uppercase; text-decoration: underline;}
.footer .footer-links ul{display: flex; flex-wrap: wrap; margin: 15px 0;}
.footer .footer-links ul li{width: 50%; list-style: none;}
.footer .footer-links ul li a{display: block; padding: 5px 0;}

.footer .copyright{width: 50%; font-size: 12px; line-height: 1.75; color: #ccc;}
.footer .copyright a{color: #fff;}

/* RESPONSIVE */

.main .sh-col-sm-6{padding: 0 25px 0 0 !important;}

@media screen and (max-width: 1300px){
	.hero {flex-direction: column-reverse;}
	.hero .hero-image {width: 100%;}
	.hero-image img {max-height: 650px; object-fit: contain; aspect-ratio: auto;}
	.hero .hero-links{width: 100%;}
	.hero .home-links{display: flex; flex-wrap: wrap; flex-direction: row;}
	.hero .home-links a {width: 33.3333%;}
	
}
@media screen and (max-width: 980px){
	.header .top-navigation ul li{border-right: none;}
	.header .top-navigation ul li a{padding: 8px;}
	.header .bottom-navigation{display: none;}
	
	.home-categories .post-container-home-categories{flex-wrap: wrap;}
	.home-categories .zoom{width: 100%; height: 85px;}
	.home-categories .zoom img{width: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
	.home-categories .zoom:hover img{transform: scale(1.05) translate(-50%,-50%);}
	.home-categories .col-sm-3{width: 33.3333%;}
}
@media screen and (max-width: 768px){
	.main{padding: 35px 0;}
	.main .sh-col-sm-6{padding: 15px 0 !important;}
	.header .logo{width: 100%; max-width: 100%; text-align: center;}
	.header .header-right{justify-content: center; width: 100%;}
	.header .top-navigation{text-align: center;}
	.header .search form{justify-content: center;}
	
	.home-categories .col-sm-3{width: 50%;}
	.column-padding-our-locations{width: 50%;}
	
	.hero .home-links, .hero-links{flex-direction: column; height: auto!important;}
	.hero .home-links a {width: 100%;}
	.hero-image {height: auto!important;}
	
	.quick-links{margin-top: 35px;}
	.quick-links ul{padding: 0;}
	.quick-links li{width: 25%;}
	.quick-links li a{padding: 8px; font-size: 16px;}
	.quick-links li i{display: block;}
	
	.column-padding-our-locations{width: 50%;}
	.footer-locations .footer-location{font-size: 14px;}
	
	.footer .footer-links{width: 100%; padding-right: 0;}
	.footer .copyright{width: 100%;}
}
@media screen and (max-width: 480px){
	.home-categories .col-sm-3{width: 100%;}
	.quick-links li{width: 50%;}
	.column-padding-our-locations{width: 100%;}
	
	.column-padding-our-locations{width: 100%;}
	.footer-locations .footer-location{text-align: center;}
	.footer .footer-links ul li{width: 100%;}
}