@charset "utf-8";
/* CSS Document */
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}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,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,input,select{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;color:unset}html{scroll-behavior:smooth}a{text-decoration:none;cursor:pointer}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}button{cursor:pointer;border:none;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}img{max-width:100%;}
/*=== END RESET ===*/

/*=== CLEARFIX ===*/
.clear{clear:both}.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}.cf{zoom:1}

/*=== GLOBAL ===*/
.flex-container{display:flex}.flex-vertical{flex-direction:column}.flex-horizontal{flex-direction:row}.flex-width{flex-grow:1;flex-shrink:1;flex-basis:100%}.flex-height{height:100%}.flex-wrap{flex-wrap:wrap}.set-width{flex-grow:0;flex-shrink:0;flex-basis:auto}.justify-center{justify-content:center}.justify-right{justify-content:flex-end}.justify-left{justify-content:flex-start}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.align-center{align-items:center}.align-top{align-items:flex-start}.align-bottom{align-items:flex-end}.align-stretch{align-items:stretch}.align-all-center{align-items:center;justify-content:center}.align-self-center{align-self:center}.align-self-right{align-self:flex-end}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.mobile-only{display: none}.max-width{margin:0 var(--sm-padding)}.map{min-height:350px;line-height:0;}


*,
*::before,
*::after {
    transition: all 0.3s ease;
}
a:hover {cursor: pointer !important;}

/*=== SELECT STYLES ===*/
::selection, ::-moz-selection {
	background: var(--red);
	color: var(--white);
	text-shadow: none;
}

:root {
	/*=== Fonts ===*/
    --Mont: "Montserrat", sans-serif;

	/*=== Colors ===*/
	--white: #FFFFFF;
	--red: #8E121A;
    --gray: #212121;
    
    /*=== Font Sizes ===*/
    --p: clamp(16px, 5vw, 20px);

	/*=== Spacing ===*/
	--lg-padding: clamp(75px, 5vw, 100px);
	--sm-padding: clamp(25px, 2.5%, 2.5%);
}

    .white{color: var(--white)}
    .red{color: var(--red)}
    .gray{color: var(--gray)}

body {
    position: relative;
	font-family: var(--Mont), sans-serif !important;
	height: auto !important;
    background-color: var(--white);
}

.page-shadow {
	max-width: 1920px!important;
    width: 100%!important;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px 0px!important;
    background-color: rgb(255, 255, 255)!important;
    margin: 0 auto!important;
	overflow-x: hidden;
}
strong, b {
	font-family: var(--Mont);
    font-weight: 800;
}
p {
    font-size: clamp(16px, 5vw, 18px);
}

.thick {
	font-family: var(--Mont);
    font-weight: 900 !important;
}

.center {text-align: center;}

.xl-heading, .lg-heading, .md-heading, .sm-heading {
	font-family: var(--Mont);
	text-transform: uppercase;
}

.xl-heading-bold {
	font-family: var(--Mont);
	text-transform: uppercase;
    font-weight: 900 !important;
}


.xs-heading {
	font-family: var(--Mont);
    font-weight: 700;
	text-transform: uppercase;
	padding-top: 5px;
}
.xl-heading {font-size: clamp(56px, 5vw, 64px);line-height: clamp(56px, 5vw, 64px);}
.lg-heading {font-size: clamp(34px, 5vw, 42px);line-height: clamp(34px, 5vw, 42px);}
.md-heading {font-size: clamp(27px, 5vw, 35px);line-height: clamp(27px, 5vw, 35px);}
.sm-heading {font-size: clamp(18px, 5vw, 26px);line-height: clamp(18px, 5vw, 26px);}
.xs-heading {font-size: clamp(16px, 5vw, 18px);line-height: clamp(16px, 5vw, 18px);}

.sm-padding {padding: 20px 0;}

.upper {text-transform: uppercase;}

/*=== BODY STYLES 
============================================*/
.width90 {width: 90%; max-width: 1600px; margin: auto;}

.btn-red {color: var(--white); background: var(--red); display: flex; padding: 10px; width: 100%; max-width: 220px; justify-content: center; text-align: center;}
.btn-red:hover {background: var(--white); color: var(--red);}

.btn-phone::after {content:''; height: 3px; width: 0px; background: var(--red); display: block; margin-top: 2px;}
.btn-phone:hover::after {width: 100%;}

/*=== HEADER STYLES 
==============================*/
header {background: linear-gradient(to right, var(--white) 0%, var(--white) 20%, var(--gray) 20%, var(--gray) 100%); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.15);}
header > div {display: flex; justify-content: space-between; align-items: stretch; gap: 50px;}
.header-logo {display: flex; align-items: stretch; background: var(--white);}
.header-logo img {max-height: 200px; object-fit: contain; padding: 20px 0;}
.header-logo > span {display: inline-block; width: 100px !important; 
    background: linear-gradient(
        120deg,
        var(--white) 0%,
        var(--white) 50%,
        var(--gray) 50%,
        var(--gray) 100%
    ); }
header i.fa-facebook-square {font-size: 45px ; padding-top: 20px;}
header i.fa-facebook-square:hover {color: var(--red);}
header .header-locations {display: flex; justify-content: flex-start; align-items: center; gap: 20px; flex-wrap: wrap; padding: 20px 0;}
header .location-box {display: flex; flex-direction: column; gap: 10px; justify-content: flex-start; align-items: flex-start; color: var(--white);}


/*=== FOOTER STYLES 
==============================*/
.footer-wrap {backkground: var(--white); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.15);}
.footer-wrap > div {display: flex; justify-content: space-between; align-items: flex-start; gap: 25px; padding: 50px 0; flex-wrap: wrap;}
.footer-wrap > div > div {flex: 1 1 0;}
.footer-logo {display: flex; flex-direction: column; gap: 10px; justify-content: flex-start; }
.footer-logo img {height: 100%; max-height: 75px; width: auto;}
.footer-logo i {font-size: 30px;}
.footer-about {max-width: 600px;}
.footer-locations {display: flex; flex-wrap: wrap; gap: 20px; justify-content: flex-end;}
.copyright {display: flex; text-align: center; padding: 20px; border-top: 1px solid #ebebeb; width: 100%;}


.locations-toggle {display: none;}
@media screen and (max-width: 1000px) {
    header {background: var(--white);}
    header > div {flex-direction: column; width: 100% !important; gap: 0;}
    header .header-logo {width: 100%; justify-content: center; background: var(--white); padding: 0 20px;}
    header div div:has(a .fa-facebook-square) {order: 2 !important; text-align: center;}
    header div div a .fa-facebook-square {color: var(--gray);}
    header .header-logo span {display: none;}
    .locations-toggle {order: 3; display: flex; justify-content: center; align-items: center; gap: 20px; width: 100%; padding: 18px 5%; background: var(--white); color: var(--gray); font-family: var(--Mont); font-weight: 700; text-transform: uppercase; font-size: 18px;}
    .locations-toggle i {transition: transform .3s ease;}
    .locations-toggle.active i {transform: rotate(180deg);}
    .header-locations {order: 4; background: var(--gray); flex-direction: column; align-items: stretch !important; gap: 20px !important; padding: 0 5% !important; max-height: 0; overflow: hidden; transition: max-height .4s ease;}
    .header-locations.active {max-height: 1200px; padding: 20px 5% !important;}
    .header-locations .location-box {width: 100%; border-bottom: 1px solid rgba(255,255,255,.15); padding-bottom: 20px;}
    .header-locations .location-box:last-child {border-bottom: none;}
    .footer-wrap > div {flex-direction: column; gap: 50px;}
    .footer-locations {justify-content: flex-start;}
}

















