/*----------------Core---------------------------*/
html, body { overflow-x: hidden; }

html { height: 100%; }

body {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 100%;
	background: #fff;
	color: #231F20;
	font: 400 16px 'Albert Sans', sans-serif;
	line-height: 1.4em;
	margin: 0px;
    min-height: 100%;
}

body.page-thank-you, body.page-error { align-items: center; }

body.hamburger-active { overflow: hidden; }

img { height: auto; max-width: 100%; }
img[src=""], img:not([src]) { visibility: hidden; }

a { color: #A37E31; word-break: break-all; }
a:focus { outline: 0; }
a:hover { color: #A37E31; }

form { margin: 0px; padding: 0px; }

h1, h2, h3, h4, h5, h6 { color: #A37E31; font-family: 'Anton SC', sans-serif; font-weight: 400; line-height: 1.2em; margin-bottom: 30px; margin-top: 0; }

p { color: #231F20; line-height: 1.4em; margin-bottom: 20px; }

ul, ol { margin-bottom: 20px; }
ul li, ol li { color: #231F20; line-height: 1.4em; }

input:-webkit-autofill, input:-webkit-autofill:focus { transition: background-color 0s 600000s, color 0s 600000s !important; }

#main { overflow: hidden; }
.max-width-1440 { max-width: 1440px; }
.max-width-950 { max-width: 950px; }
.max-width-825 { max-width: 825px; }
.max-width-600 { max-width: 600px; }
.max-width-350 { max-width: 350px; }

.margin-center { margin-left: auto; margin-right: auto; }

.container { max-width: 1296px !important; }
.flexspace { position: relative; }

.background-img { background-position: center; background-repeat: no-repeat; background-size: cover; }

.highlight { color: #fff; }
.highlight.gradient-1 { background: linear-gradient(90deg, #C5AA46 0%, #E1CA76 100%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.highlight.blue { color: #203663; }

.top-title { display: flex; flex-wrap: wrap; align-items: center; color: #A37E31; font-size: 20px; font-family: 'Albert Sans', sans-serif; font-weight: 500; line-height: 1.2em; position: relative; text-transform: capitalize; }

.top-title span { flex: 0 0 auto; margin-left: 25px; margin-right: 25px; }
.top-title.text-left span { margin-left: 0; }
.top-title .line { flex: 1 1 0; background-color: #E8D280; height: 1px; margin: 0; }
.top-title.text-color-gold-3 .line { background-color: #A07B2F; }
.top-title { color: #E8D280; margin-bottom: 20px; }

.title { color: #A37E31; font-size: 60px; }
.subtitle { color: #fff; font-size: 44px; }
.text > *:last-child { margin-bottom: 0; }

.text-color-gold-2 { color: #CDB454; }
.text-color-gold-3 { color: #A07B2F; }
.text-color-blue { color: #203663; }

.font-size-48 { font-size: 48px; }
.font-size-32 { font-size: 32px; }

.content > *:last-child { margin-bottom: 0; }

label { color: #231F20; display: block; font-weight: bold; font-size: 12px; font-weight: 800; left: 37px; line-height: 1em; opacity: 1; position: absolute; text-transform: uppercase; top: 15px; z-index: 1; }

.form-control { background-color: transparent; border: 1px solid #C4C4C4; border-radius: 10px; color: #231F20; font-size: 18px; line-height: 1.2em; padding: 18px 25px;  }
.form-control.active { padding-bottom: 12px; padding-top: 24px; }
.form-group { margin-bottom: 22px; position: relative; }
textarea.form-control { height: auto; }

.form-control:focus { background-color: transparent; border-color: #C4C4C4; box-shadow: none; color: #231F20; }

.form-control::-webkit-input-placeholder { color: #231F20; }
.form-control::-moz-placeholder { color: #231F20; }
.form-control:-ms-input-placeholder { color: #231F20; }
.form-control:-moz-placeholder { color: #231F20; }

.cta { margin-top: 50px; }
.btn { background: linear-gradient(90deg, #A07B2F 0%, #C5AA45 100%); border-radius: 100px; color: #fff; font-family: 'Neue Haas Grotesk Display Pro', sans-sans-serif; font-weight: 600; line-height: 1em; padding: 17px 32px; position: relative; transition: opacity 0.4s ease; }
.btn:hover { color: #fff !important; opacity: 0.75; }

.btn-transparent { background: transparent; border: 1px solid #fff; }
.btn-transparent:hover { border: 1px solid #fff; }

.btn-arrow { padding: 8px 12px 8px 32px; }
.btn-arrow:after { content: url('../assets/images/arrow.svg'); display: inline-block; height: 33px; margin-left: 24px; vertical-align: middle; }

.list-check ul { list-style: none; margin: 0; padding: 0; }
.list-check ul li { margin-bottom: 20px; padding-left: 27px; position: relative; text-align: left; }
.list-check ul li:last-child { margin-bottom: 0; }
.list-check ul li:before { background-image: url('../assets/images/check-icon.svg'); background-size: cover; background-repeat: no-repeat; content: ''; height: 12px; left: 0; position: absolute; top: 7px; width: 17px; }

.progress-msg, .success-msg, .error-msg { font-weight: 700; text-transform: uppercase; letter-spacing: 1px; border-radius: 2px; font-size: 14px; margin: 15px auto; padding: 8px; border: 0px solid #eee; background: #fff; text-align: center; }
.success-msg { color: #5cb85c; }
.error-msg { color: #fff; background-color: #FF474D; border-color: #FF0000; }
.progress-msg { color: #fff; }

.group { position: relative; }
.group.wow { opacity: 0; }
.group.wow.done { opacity: 1; }

/*------------ HEADER ----------------------*/
#header { left: 0; position: absolute; top: 42px; width: 100%; z-index: 10; }
    /* Logo */
    #header .logo { flex: 0 0 auto; width: auto; }

    /* Background Color */
    .page-thank-you #header, .page-error #header { background-color: #203663; padding: 25px 0; position: relative; top: auto; }

/*------------ FOOTER ----------------------*/
#footer { background-color: #171F2B; padding: 75px 0 45px; position: relative; }
    #footer ul { list-style: none; margin: 0; padding: 0; }
    #footer ul li { color: #203663; margin-bottom: 30px; position: relative; }
    #footer ul li:last-child { margin-bottom: 0; }
    #footer ul li a { color: inherit; font: inherit; text-decoration: none; transition: opacity 0.4s ease; }
    #footer ul li a:hover { opacity: 0.5; }

    /* Logo */
    #footer .logo { margin-bottom: 50px; text-align: center; }

    /* Copyright */
    #footer .copyright { color: #fff; font-size: 12px; line-height: 1.2em; text-transform: uppercase; }
    #footer .copyright span:after { content: '|'; margin: 0 10px; }
    #footer .copyright span:last-child:after { display: none; }
    
/*------------ BANNER DEFAULT ----------------------*/
#banner-d { background-color: #0F2547; }
    #banner-d .wow { opacity: 0; }
    #banner-d .wow.done { opacity: 1; }

    #banner-d .row { --bs-gutter-x: 0; }

    /* Content */
    #banner-d .content { padding-left: 7%; width: 45%; }
    #banner-d .title, #banner-d .subtitle { text-transform: uppercase; }
    #banner-d .title { margin-bottom: 10px; }
    #banner-d .subtitle { margin-bottom: 20px; }
    #banner-d .text * { color: #fff; }

    /* Image */
    #banner-d .img { overflow: hidden; position: relative; width: 55%; }
    #banner-d .slant { background-color: #0F2547; height: 200%; left: 50px; pointer-events: none; position: absolute; top: 50%; width: 200px; transform: rotate(-10deg) translateY(-50%); }
    #banner-d .slant:before { background-color: #C5A945; content: ''; height: 100%; right: 0; position: absolute; top: 0; width: 15px; }

/*------------ CARDS DEFAULT ----------------------*/
#cards-d { position: relative; }
    #cards-d .wow { opacity: 0; }
    #cards-d .wow.done { opacity: 1; }

    #cards-d .row { --bs-gutter-y: 24px; }

    #cards-d .background-img { border-radius: 20px; height: 0; padding-top: 75%; }

/*------------ CARDS LIST ----------------------*/
#cards-l { padding: 95px 0 150px; position: relative; }
    #cards-l .wow { opacity: 0; }
    #cards-l .wow.done { opacity: 1; }

    #cards-l .row { --bs-gutter-y: 40px; }

    #cards-l .content { text-align: center; }
    #cards-l .title { color: #203663; text-transform: uppercase; }

    /* Item */
    #cards-l .item .box { display: flex; flex-wrap: wrap; align-items: center; background: linear-gradient(90deg, #A07B2F 0%, #C5AA45 100%); border-radius: 5px; height: 100%; min-height: 80px; padding: 12px 24px; }
    #cards-l .item .icon { flex: 0 0 auto; }
    #cards-l .item .title { flex: 1 1 0; color: #fff; font-size: 20px; font-weight: 600; line-height: 1.4em; padding-left: 15px; text-transform: none; }

/*------------ CONTENT DEFAULT ----------------------*/
.content-d { position: relative; text-align: center; }
    .content-d .title { text-transform: uppercase; }

/*------------ HERO BACKGROUND ----------------------*/
.hero-bg { position: relative; }
    .hero-bg .wow { opacity: 0; }
    .hero-bg .wow.done { opacity: 1; }

    .hero-bg .container > .box { background: linear-gradient(180deg, #202F62 0%, #0F2547 100%); border-radius: 50px; padding: 120px 100px; position: relative; }

    /* Content */
    .hero-bg .title, .hero-bg .text { color: #fff; text-align: center; }
    .hero-bg .title { text-transform: uppercase; }
    .hero-bg .text * { color: #fff; font-size: 20px; }

    /* Photo Content */
    .hero-bg .photo-content .title { color: #E8D280; font-family: 'Albert Sans', sans-serif; font-weight: 700; text-align: left; text-transform: none; }
    .hero-bg .photo-content .text { text-align: left; }

/*------------ HERO SLANT ----------------------*/
.hero-s { position: relative; }
    .hero-s .wow { opacity: 0; }
    .hero-s .wow.done { opacity: 1; }

    .hero-s .overlay { height: 125%; left: 50%; overflow: hidden; padding-top: 15px; position: absolute; top: 0; width: 125%; transform: translateX(-50%) rotate(-2.5deg); }
    .hero-s .overlay:before { background-color: #171F2B; content: ''; height: 15px; left: 0; position: absolute; top: 0; width: 100%; z-index: 2; }
    .hero-s .overlay .background-img { background-color: #171F2B; height: 100%; left: 50%; position: absolute; top: -50px; width: 100%; transform: translateX(-50%) rotate(2.5deg); }
    .hero-s .overlay .background-img:before { background-image: url('../assets/images/hero-img.jpg'); background-position: center; background-repeat: no-repeat; background-size: cover; content: ''; height: 100%; left: 0; mix-blend-mode: luminosity; opacity: 0.25; position: absolute; top: 0; width: 100%; }
    .hero-s .container > .box { border-radius: 0; padding: 140px 100px 120px; }
    .hero-s .container > .box:before { display: none; }

    .hero-s .content { position: relative; }
    .hero-s .title, .hero-s .text { color: #fff; text-align: center; }
    .hero-s .title { text-transform: uppercase; }
    .hero-s .text * { color: #fff; font-size: 20px; }

    /* Testimonials */
    .hero-s.testimonials .container > .box { padding: 140px 0 120px; }
    .hero-s.testimonials .slider { position: relative; }
    .hero-s.testimonials .swiper .swiper-slide { height: auto; }
    .hero-s.testimonials .swiper .box { display: flex; flex-wrap: wrap; background: #FFF; border-radius: 10px; box-shadow: 0px 4px 50px 0px rgba(0, 0, 0, 0.10); height: 100%; padding: 25px 40px; }
    .hero-s.testimonials .swiper .top { flex: 0 1 auto; width: 100%; 
    }
    .hero-s.testimonials .swiper .row { --bs-gutter-x: 0; }

    .hero-s.testimonials .swiper .content { padding: 37px 50px; }
    .hero-s.testimonials .swiper .title { color: #A07B2F; font-size: 24px; font-weight: 700; line-height: 1.2em; margin-bottom: 20px; text-align: left; text-transform: capitalize; }
    .hero-s.testimonials .swiper .text { margin-bottom: 30px; text-align: left; }
    .hero-s.testimonials .swiper .text * { color: #203663; font-size: 16px; }
    .hero-s.testimonials .swiper .quote { margin-bottom: 25px; text-align: left; }

    .hero-s.testimonials .swiper .rating { flex: 0 1 auto; align-self: flex-end; display: flex; flex-wrap: wrap; align-items: center; width: 100%; }
    .hero-s.testimonials .swiper .google-logo { flex: 0 0 auto; }

    .hero-s.testimonials .swiper .star-name { padding-left: 10px; }
    .hero-s.testimonials .swiper .name { color: #203663; line-height: 1em; margin-bottom: 5px; }
    .hero-s.testimonials .swiper .star svg { vertical-align: baseline; }

    .hero-s.testimonials .arrow-left, .hero-s.testimonials .arrow-right { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; }
    .hero-s.testimonials .arrow-left svg, .hero-s.testimonials .arrow-right svg { width: 40px; }
    .hero-s.testimonials .arrow-left { right: calc(100% + 10px); }
    .hero-s.testimonials .arrow-right { left: calc(100% + 10px); }

/*------------ PHOTO CONTENT ----------------------*/
.photo-content { position: relative; }
    .photo-content .wow { opacity: 0; }
    .photo-content .wow.done { opacity: 1; }
    .photo-content .row { --bs-gutter-x: 0; }

    /* Image */
    .photo-content .img { padding-right: 25px; }
    .photo-content .img img { width: 100%; }

    /* Content */
    .photo-content .content { padding-left: 25px; }
    .photo-content .title { font-family: 'Albert Sans', sans-serif !important; font-size: 32px; font-weight: 700 !important; margin-bottom: 20px; }
    .photo-content .border-box { margin-top: 40px; }
    .photo-content .border-box p { color: #fff; }

    /* Content Left */
    .photo-content.content-left .img { padding-left: 25px; padding-right: 0; }
    .photo-content.content-left .content { padding-left: 0; padding-right: 25px; }

/*------------ CARDS ----------------------*/
.cards .row { --bs-gutter-y: 24px; }
    .cards .wow { opacity: 0; }
    .cards .wow.done { opacity: 1; }
    .cards .item .box { border: 2px solid #BCAB7A; border-radius: 10px; height: 100%; padding: 38px 30px; }
    .cards .item .icon { margin-bottom: 17px; }
    .cards .item .title { font-family: 'Albert Sans', sans-serif; font-weight: 700; margin-bottom: 27px; }
    .cards .item .box > *:last-child { margin-bottom: 0; }

/*------------ NEWSLETTER ----------------------*/
#newsletter-d { margin-bottom: -1px; position: relative; }
    #newsletter-d .wow { opacity: 0; }
    #newsletter-d .wow.done { opacity: 1; }

    #newsletter-d:before { background-color: #6C7EAF; clip-path: polygon(0 0, 100% 40%, 100% 100%, 0% 100%); content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
    #newsletter-d .bg { background-position: center bottom; clip-path: polygon(0 20%, 100% 0, 100% 100%, 0% 100%); padding: 170px 0 100px; position: relative; }
    #newsletter-d .content { text-align: center; }
    #newsletter-d .title { color: #fff; text-transform: uppercase; }
    #newsletter-d .text * { color: #fff; font-size: 20px; }

/*------------ 404 ----------------------*/
#error-404 { position: relative; }
	#error-404 .title { font-size: 250px; margin-bottom: 0; }

/*------------ POPUP FORM ----------------------*/
.popup-form { backdrop-filter: blur(15px) saturate(100%); -webkit-backdrop-filter: blur(15px) saturate(100%); background-color: rgba(255, 255, 255, 0.25); height: 100%; left: 0; opacity: 0; position: fixed; top: 0; visibility: hidden; width: 100%; z-index: 15; transition: all 0.4s ease; }
.popup-form.active { opacity: 1; visibility: visible; overflow-y: auto; }
	.popup-form .container { --bs-gutter-x: 0; display: flex; flex-wrap: wrap; align-items: center; height: 100%; }
	.popup-form .box { background: linear-gradient(180deg, #202F62 0%, #0F2547 100%); border-radius: 20px; margin: 0 auto; max-width: 600px; padding: 100px 40px 40px; position: relative; width: 100%; z-index: 2; }
	.popup-form .close { cursor: pointer; position: absolute; right: 40px; top: 20px; }
	.popup-form .close i { color: #fff; opacity: 0.3; font-size: 36px; }
	.popup-form .title { color: #fff; font-size: 28px; font-weight: 700; line-height: 1.2em; margin-bottom: 20px; }
	.popup-form .form-group { margin-bottom: 15px; }
    .popup-form .form-group label { color: #000; left: 25px; }
    .popup-form .form-control { background-color: #fff; border-color: #000; color: #231F20; }
	.popup-form .form-action { text-align: center; }
	.popup-form .btn { display: block; text-align: center; width: 100%; border-radius: 4px; }
    .popup-form .progress-msg { color: #fff; }
	.popup-form .overlay { min-height: 100%; left: 0; position: absolute; top: 0; width: 100%; }
	.fineprint { font-size: 11px; line-height: 1.1em; padding-top: 15px; border-top: 1px solid rgba(255,255,255,0.1); text-transform:uppercase; letter-spacing:1px; color: #fff; margin-top: 45px; opacity: 0.8;  }

/*------------ MEDIA 1399.98px ----------------------*/
@media only screen and (max-width: 1399.98px) {
	.container { width: 90%; }
}

/*------------ MEDIA 1199.98px ----------------------*/
@media only screen and (max-width: 1199.98px) {
    /* Banner Default */
    #banner-d .slant { transform: rotate(-8deg) translateY(-50%); }

    /* Hero Background */
    .hero-bg .container > .box { padding: 100px 50px; }
}

/*------------ MEDIA 1023px ----------------------*/
@media only screen and (max-width: 1023px) {

}

/*------------ MEDIA 991.98px ----------------------*/
@media only screen and (max-width: 991.98px) {
    /* Header */
    #header .logo { flex: 0 1 auto; text-align: center; width: 100%; }

    /* Banner Default */
    #banner-d .content { padding: 0 calc(5% + 12px); text-align: center; width: 100%; }
    #banner-d .title, #banner-d .text { max-width: none; }
    #banner-d .img { border-top: 15px solid #C5A945; height: 0; padding-top: 56.25%; width: 100%; }
    #banner-d .slant { display: none; }

    /* Hero Background */
    .hero-bg .photo-content .title { text-align: center; }

    /* Hero Testimonials */
    .hero-s.testimonials .container { --bs-gutter-x: 0; padding: 0 calc(5% + 12px); width: 100%; }
    .hero-s.testimonials .swiper .quote, .hero-s.testimonials .swiper .title, .hero-s.testimonials .swiper .text { text-align: center; }
    .hero-s.testimonials .swiper .google-logo { flex: 0 1 auto; margin-bottom: 10px; text-align: center; width: 100%; }
    .hero-s.testimonials .swiper .star-name { flex: 0 1 auto; padding: 0; text-align: center; width: 100%; }
    .hero-s.testimonials .arrow-left { right: calc(100% + 5px); }
    .hero-s.testimonials .arrow-right { left: calc(100% + 5px); }

    /* Photo Content */
    .photo-content .content, .photo-content.content-left .content { padding: 0; text-align: center; }
    .photo-content .img, .photo-content.content-left .img { margin-bottom: 30px; padding: 0; }

    /* Newsletter Default */
    #newsletter-d .bg { clip-path: polygon(0 10%, 100% 0, 100% 100%, 0% 100%); }
    #newsletter-d:before { clip-path: polygon(0 0, 100% 30%, 100% 100%, 0% 100%); }
}

/*------------ MEDIA 767.98px ----------------------*/
@media only screen and (max-width: 767.98px) {
    /* Hero Background */
    .hero-bg .container { --bs-gutter-x: 0; width: 100%; }
    .hero-bg .container > .box { border-radius: 0; padding: 60px 30px; }

    /* Cards List */
    #cards-l .row { --bs-gutter-y: 24px; }

    /* Hero Testimonials */
    .hero-s.testimonials .container { padding: 0 50px; }
    .hero-s.testimonials .swiper .box { padding: 25px; }
    .hero-s.testimonials .arrow-left svg, .hero-s.testimonials .arrow-right svg { width: 30px; }
    .hero-s.testimonials .arrow-left { right: calc(100% + 10px); }
    .hero-s.testimonials .arrow-right { left: calc(100% + 10px); }

    /* Newsletter Default */
    #newsletter-d .bg { clip-path: polygon(0 7%, 100% 0, 100% 100%, 0% 100%); padding: 150px 0 100px; }
    #newsletter-d:before { clip-path: polygon(0 0, 100% 20%, 100% 100%, 0% 100%); }
}

/*------------ MEDIA 575.98px ----------------------*/
@media only screen and (max-width: 575.98px) {
    .top-title span { margin-left: 10px; margin-right: 10px; }
    .title.heading-1 { font-size: 40px; }
    .title, .title.font-size-48, .subtitle { font-size: 36px; }

    /* Footer */
    #footer .copyright span { display: block; }
    #footer .copyright span:after { display: none; }

    /* Banner Default */
    #banner-d .img { padding-top: 100%; }

    /* Cards List */
    #cards-l .item .box { padding: 12px; }
    #cards-l .item .icon svg { width: 23px; }
    #cards-l .item .title { line-height: 1.2em; }

    /* Cards Default */
    #cards-d .background-img { padding-top: 100%; }

    /* Hero Testimonials */
    .hero-s.testimonials .swiper .name strong { display: block; margin-bottom: 5px; }

    /* Newsletter Default */
    #newsletter-d .bg { clip-path: polygon(0 5%, 100% 0, 100% 100%, 0% 100%); padding: 125px 0 100px; }
    #newsletter-d:before { clip-path: polygon(0 0, 100% 15%, 100% 100%, 0% 100%); }

    /* Popup Form */
	.popup-form .box { padding: 60px 15px 30px; }
	.popup-form .close { right: 15px; top: 15px; }
	.popup-form .close i { font-size: 22px; }
}