@charset "utf-8";
/* CSS Document */
@font-face {
  font-family: 'Antenna';
  src: url('../siteart/fonts/ford-antenna-medium.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}



*{-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 ===*/
    --Antenna: "Antenna", sans-serif;

	/*=== Colors ===*/
	--white: #FFFFFF;
	--cream: #F3F3F3;
	--red: #C40000;
    --gray: #767676;
    --black: #1A1A1A;
    --blue: #25408E;
    --dk-blue: #041239;
    
    /*=== 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)}
    .black{color: var(--black)}
    .blue{color: var(--blue)}
    .dk-blue{color: var(--dk-blue)}

    .bg-cream {background: var(--cream);}
    .bg-black {background: var(--black); color: var(--white);}

body {
    position: relative;
	font-family: var(--Antenna), sans-serif !important;
	height: auto !important;
}

.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;
}

p {
    font-size: clamp(16px, 5vw, 18px);
    line-height: 130%;
}


.thick {
    font-weight: 900 !important;
}
.caps {text-transform: uppercase;}
.slant {font-style: italic;}
.fine {font-style: italic; font-size: 10px; }

.center {text-align: center;}

.xl-heading, .lg-heading, .md-heading, .sm-heading, .xs-heading {
	font-family: var(--Antenna);
}


.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;}
.md-padding {padding: 50px 0;}
.lg-padding {padding: 100px 0;}

.width90 {width: 90%; max-width: 1600px; margin: auto;}

/*=== BODY STYLES 
============================================*/
.btn-clear {display: flex; width: 100%; max-width: 220px; justify-content: center; align-items: center; color: var(--blue); background: transparent; border: 1px solid var(--blue); border-radius: 10px; padding: 10px; margin-top: 20px;}
.btn-clear:hover {background: var(--blue); color: var(--white);}

.btn-red {display: flex; width: 100%; max-width: 220px; justify-content: center; align-items: center; color: var(--white); background: var(--red); border: 1px solid var(--red); border-radius: 10px; padding: 10px; margin-top: 20px;}
.btn-red:hover {background: var(--white); color: var(--red);}

/*=== HEADER STYLES 
==============================*/
.header-wrap {position: relative;}
.header {display: flex; justify-content: space-between; align-items: center; background: var(--black); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.05);}

.header-logos {display: flex; justify-content: flex-start; align-items: center; gap: 20px; background: var(--white); padding-left: clamp(0px, 5vw, 5vw);}
.header-logos > img {display: block; object-fit: contain; object-position: center center; max-height: 75px; min-width: 0px;}

.header-slash {height: 100px; width: 100px; background: linear-gradient(60deg, var(--white) 50%, var(--black) 50%);}

.header-phone {display: flex; justify-content: flex-start; align-items: center; gap: 10px; padding-right: clamp(0px, 5vw, 5vw); color: var(--white);}
.header-phone:hover {color: var(--red);}
.header-phone > i {font-size: 24px;}
.header-phone > div {display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; text-transform: uppercase; word-break: keep-all; white-space: nowrap; font-size: clamp(10px, 1.2vw, 18px);}

.blue-bar {width: clamp(200px, 55vw, 700px); height: 50px; background: var(--blue); position: absolute; z-index: 3; right: 0; margin-top: -10px; box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.05); display: flex; justify-content: flex-end; align-items: center; color: var(--white); padding-right: 5vw; gap: 20px; overflow: visible;}
.blue-bar i {font-size: 24px;}
.blue-bar i:hover {color: rgba(255,255,255,0.75);}
.blue-bar::before {content: ''; z-index: 2; display: block; height: 50px; width: 50px;  background: linear-gradient(60deg, transparent 50%, var(--blue) 50%); left: 0; position: absolute; transform: translateX(-100%);}

/*=== FOOTER STYLES 
==============================*/
.footer-runner {background-color: var(--dk-blue); color: var(--white); padding: 10px 0;}
.footer-runner a:hover i {padding-left: 10px;}

.footer-wrap {background: var(--black); padding: 50px 0; color: var(--white);}
.footer-wrap > div {display: flex; justify-content: space-between; align-items: flex-start; gap: 50px; flex-wrap: wrap; }
.footer-wrap > div .footer-quicklinks {display: flex; justify-content: flex-start; align-items: flex-start; gap: 50px;}
.footer-wrap > div .footer-quicklinks ul li {margin-bottom: 10px; display: flex; gap: 10px; width: 115px;}
.footer-wrap > div .footer-quicklinks ul li::after {content: '\f104'; font-family: 'Font Awesome 6 Free'; display: block; color: var(--red); font-weight: 900; font-size: 20px; font-style: normal; line-height: 1; letter-spacing: normal; width: 0px; overflow: hidden; margin-left: 10px;}
.footer-wrap > div .footer-quicklinks ul li:hover::after {display: block; width: 100%; margin-left: auto;}
.footer-wrap > div .footer-contact ul li {margin-bottom: 10px; display: flex; gap: 10px; border-left: 2px solid transparent; padding-left: 10px;}
.footer-wrap > div .footer-contact ul li:hover {border-color: var(--red);}

/*=== HOME PAGE 
==============================*/
.home-hero {position: relative; z-index: 1; overflow: hidden; background-color: var(--blue)}
.hero-stars {position: absolute; z-index: 2; top:0; left: -50%; height: 100%; width: 100%;animation: spin 60s linear infinite;}
.home-hero-background {width: 100%; max-width: 100vw; height: 600px; object-fit: cover;display: block;}
.home-hero-content {position: absolute; z-index: 2; top: 0; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; height: 100%;}
.home-hero-content > *:not(a) {max-width: 600px;}
.home-hero::before {content: ''; position: absolute; top: 0; z-index: 1; display: flex; height: 100%; width: 100%; background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0.25)); background-size: 100%; background-position: left center;}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}


.search-outer-container {display: flex; justify-content: flex-end; align-items: stretch;}
.inv-search {display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap;}
.header-search {display: flex; gap: 0px;}
#slide-search-input {padding: 10px 20px; border: 1px solid #ebebeb; border-radius: 5px 0 0 5px; width: clamp(220px, 40vw, 1000px);}
#mobile-form-submit {height: 100%; aspect-ratio: 1/1; border-radius: 0 5px 5px 0; background: var(--dk-blue); color: var(--white);}
#mobile-form-submit:hover {background: var(--blue);}

section:has(.qlSwiper) {overflow: hidden;}
.qlSwiper {overflow: visible;}
.qlSwiper .swiper-wrapper {display: flex; align-items: stretch; overflow: visible;}
.qlSwiper .swiper-slide {display: flex; flex-direction: column; align-items: stretch; height: auto; border: 1px solid #ebebeb; border-radius: 5px; overflow: hidden; transition: 0.3s ease all;}
.qlSwiper .swiper-slide:hover {transform: translateY(-10px); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.05);}
.qlSwiper .swiper-slide > img {display: block; height: 100%; width: 100%; object-fit: contain; object-position: center center;}
.qlSwiper .swiper-slide > img.cover {object-fit: cover !important;}
.qlSwiper .swiper-slide > div {padding: 10px 20px; border-top: 1px solid #ebebeb; background: linear-gradient(to top, #f6f6f6, #ffffff 50%);}
.qlSwiper .swiper-slide > div p {margin-top: 10px; font-size: 16px;}
.quicklink-nav {position: relative; display: flex; justify-content: flex-start; gap: 10px; padding: 20px 0;}
.quicklink-nav .swiper-button-prev, .quicklink-nav .swiper-button-next {position: relative; border: 1px solid #ebebeb; padding: 5px; border-radius: 5px; color: var(--black);}

.half-photo {display: flex; justify-content: space-between; align-items: stretch; gap: 50px;}
.half-photo > .half-photo-text {flex: 1 1 0;}
.half-photo > .half-photo-img {flex: 1.25 1 0; position: relative;}
.half-photo > .half-photo-img img {display: block; height: 100%; width: 100%; object-fit: cover; object-position: center center; border-radius: 5px;}
.half-photo > .half-photo-img img.cutout {position: absolute; right: 5%; bottom: -5%; height: 80%; min-height: 0px; width: auto;}
.half-photo > .half-photo-img iframe {display: block; height: 100%; width: 100%; object-fit: cover; object-position: center center; border-radius: 5px;}
.half-photo > .half-photo-text p a {border-left: 2px solid transparent; display: block;}
.half-photo > .half-photo-text p a:hover {border-color: var(--red); padding-left: 5px;}

.ad-banner {display: flex; justify-content: space-between; align-items: stretch; border-radius: 5px; overflow: hidden;}
.ad-banner:hover .ad-banner-img img {transform: scale(1.05); transition: 1s ease all;}
.ad-banner > .ad-banner-text {flex: 1 1 0; padding: 50px 50px;}
.ad-banner > .ad-banner-img {flex: 1.5 1 0; position: relative; overflow: hidden;}
.ad-banner > .ad-banner-img::before {content: ''; position: absolute; z-index: 2; display: flex; height: 100%; width: 100%; background: linear-gradient(to left, var(--black), transparent 30%);}
.ad-banner > .ad-banner-img img {display: block; height: 100%; width: 100%; object-fit: cover; object-position: center center; border-radius: 5px; position: relative; z-index: 1; transition: 1s ease all;}
.ad-banner > .ad-banner-img iframe {display: block; height: 100%; width: 100%; object-fit: cover; object-position: center center; border-radius: 5px;}
.ad-banner > .ad-banner-text p a {border-left: 2px solid transparent; display: block;}
.ad-banner > .ad-banner-text p a:hover {border-color: var(--red); padding-left: 5px;}

/*=== ABOUT PAGE
==============================*/
#staffIframe {width: clamp(0px, 100%, 1000px); height: 500px; position: relative; left: 50%; transform: translateX(-50%);}

.subpage-hero {height: 300px;border-bottom: 1px solid #ebebeb;}
.subpage-hero > div {display: flex; justify-content: space-between; align-items: stretch; height: 100%; width: 95%; margin-left: auto; }
.subpage-hero > div > div {flex: 1 1 0; display: flex; flex-direction: column; justify-content: center; height: 100%;}
.subpage-hero > div > div:has(img) {flex: 1.5 1 0;}
.subpage-hero > div > div:has(img) {position: relative; z-index: 1; }
.subpage-hero > div > div:has(img)::after {position: absolute; z-index: 2; content: ''; display: flex; height: 100%; width: 100%; background: linear-gradient(60deg, #fff 20%, rgba(0,0,0,0.5));}
.subpage-hero > div > div img {display: block; height: 100%; object-fit: cover; object-position: center center;}

.awardsSwiper:hover {cursor: grab;}
.awardsSwiper:active {cursor: grabbing;}
.awardsSwiper > .swiper-wrapper {display: flex; align-items: stretch;}
.awardsSwiper .swiper-slide {display: flex; flex-direction: column; border: 1px solid #aaa; border-radius: 5px; height: auto; background: var(--white);}
.awardsSwiper .swiper-slide > img {display: block; height: 200px; object-fit: contain; object-position: center center; padding: 10px;}
.awardsSwiper .swiper-slide > img.cover {object-fit: cover !important; padding: 0;}
.awardsSwiper .swiper-slide > div {border-top: 1px solid #aaa; padding: 20px;}
.awardsSwiper .swiper-slide > div > p {margin-top: 10px; font-size: 12px; letter-spacing: 10%; line-height: 150%; color: var(--gray);}

/*=== FINANCE PAGE
==============================*/
#creditIframe {width: clamp(0px, 100%, 1000px); height: 500px; position: relative; left: 50%; transform: translateX(-50%);}

/*=== CONTACT PAGE
==============================*/
.contact-box {display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 10px; padding: 20px; background: var(--gray-light); border-radius: 10px;}
.contact-box span {font-family: "Big Shoulders"; font-size: 18px; text-transform: uppercase; color: var(--navy); font-weight: 800; letter-spacing: 5%;}
/*.contact-box a::after {content: '\f105'; font-family: "Font Awesome 6 Free";}*/

.flex-form { width: 100%; margin: 0 auto 2rem auto; padding: 25px; background: #fff; border-radius: 8px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); font-size: 15px; }
.flex-form label { display: block; margin-bottom: 0.5rem; font-weight: 600; color: #222; letter-spacing: 0.02em; }
.flex-form input,
.flex-form select,
.flex-form textarea { width: 100%; padding: 12px 14px; margin-bottom: 1.2rem; border: 1px solid #ccc; border-radius: 5px; font-family: var(--body-font); background: #ffffff; font-size: 15px; color: #333; transition: border-color 0.2s; box-sizing: border-box; }
.flex-form input:focus,
.flex-form select:focus,
.flex-form textarea:focus { border-color: var(--primary); outline: none; }
.flex-form textarea { min-height: 100px; resize: vertical; }
.flex-form .form-row { display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; }
.flex-form .form-note { font-size: 13px; color: #888; margin-bottom: 1rem; }
.flex-form .flex-row { display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; }
.flex-form .form-whole { width: 100%; }
.flex-form .form-half { width: calc(50% - 0.5rem); }
.flex-form .form-third { width: calc(33.333% - 0.67rem); }

@media (max-width: 900px) {
    .form-half,
    .form-third { width: 100%; }
}
@media (max-width: 600px) {
    #formpage .flex-row {flex-direction: column; width: 100%; max-width: none;}
    #formpage .flex-row .form-half {width: 100%;}
    #formpage .flex-row .form-third {width: 100%;}
}



/*=== MEDIA BREAKS
==============================*/
@media screen and (max-width: 1000px) {
    .half-photo {flex-direction: column;}
    .half-photo-text {order: 1 !important;}
    .half-photo-img {order: 2 !important;}
    .half-photo-img img {min-height: 300px;}
    .half-photo-img iframe {min-height: 300px;}
    
    .ad-banner {flex-direction: column;}
    .ad-banner-text {order: 1 !important;}
    .ad-banner-img {order: 2 !important; overflow: visible !important;}
    .ad-banner:hover img {transform: none !important;}
    .ad-banner > .ad-banner-img::before {background: linear-gradient(to bottom, var(--black), transparent 30%);}
    .ad-banner-img img {min-height: 300px;}
    .ad-banner-img iframe {min-height: 300px;}
}

@media screen and (max-width: 600px) {
    .header-phone {display: none;}
    
    .subpage-hero {background: var(--cream); color: var(--black);}
    .subpage-hero > div > div:has(img) {display: none;}
}




























