	:root {
  --primary: #FE6700;
  --primary-rgb: 254,103,0;
  --primary-dark: #b24800;
  --secondary: #01104b;
  --secondary-rgb: 0,0,0;
  --tertiary: #243e8f;
  --tertiary-rgb: 36, 62, 143;
  --dark: var(--secondary);
  --dark-rgb: var(--secondary-rgb);
  --light: var(--primary);
  --yellow: #ffc11b;
  --gray: #EBEBEB;
  --gray-md: #CED2DB;
  --gray-muted: #F1F4F8;
  --gray-dark: #181f28;
  --gray-darker: #000;
  --gray-light: #64708d;
  --gradient: linear-gradient(to right, var(--gray-md) 0%,var(--gray) 100%);
  --gradient-reverse: linear-gradient(to left, var(--gray-md) 0%,var(--gray) 100%);
  --border-color: #cfcfcf;
  --muted: var(--border-color);
  --body-text: #000;
  --text-dark: #000;
  --primary-font: 'Public Sans', sans-serif;
  --secondary-font: var(--secondary-font), sans-serif;
  --font-awesome: 'Font Awesome 6 Pro';
  --default-fs: min(1.125rem, 18px);
  --box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 3px 1px -2px rgb(0 0 0 / 12%), 0 1px 5px 0 rgb(0 0 0 / 20%);
  --box-shadow-dark: 12px 12px 0 0 var(--gray-darker);
  --box-shadow-sm: 8px 8px 0 0 var(--gray-dark);
  --box-shadow-sm-dark: 8px 8px 0 0 var(--dark);
  --box-shadow-sm-dark: 8px 8px 0 0 var(--gray-darker);
  --box-shadow-vertical: 0 12px 0 0 var(--gray-dark);
  --nhw-border-radius: 36px;
  --nhw-border-radius-lg: 0;
}
html { }
body { font-family: var(--primary-font); font-size: var(--default-fs); color: var(--body-text); line-height: 1.5; font-weight:400; letter-spacing: normal; }
main {  }
main > h1 { padding: 300px 15px 150px; text-align: center; }
* { scroll-behavior: auto!important; }

@media (max-width: 992px){
  main { overflow: hidden; }
}

/* Font Styles
============================================================================= */
h1, h2, .display-1 { font-family: var(--secondary-font); font-size: 42px; color: var(--body-text); font-weight: 800; letter-spacing: normal; line-height: 120%; text-transform: capitalize; margin: 0 0 min(3rem, 48px); }
.display-1--sm { font-size: 32px; }
.display-1__sm, .display-pre { font-family: var(--primary-font); font-size: 18px; font-weight:500; text-transform: none; margin-bottom: 5px; display:block; }
.display-pre { font-size: var(--default-fs); }
h1 + h2, h2 + h3, .display-2 { font-size: var(--default-fs); font-family: var(--primary-font); font-weight: 500; line-height: 1.2; margin: min(-1.125rem, 18px) 0 min(2.25rem, 36px); }
h3, .display-3 {font-size: min(1.5em, 28px);margin: 40px 0 8px;color: var(--dark);font-family: var(--secondary-font);font-weight: 700;line-height: normal;letter-spacing: normal;}
h4, .display-4 { font-size: 20px; margin: 25px 0 5px; font-family: var(--secondary-font); line-height: 1.2; font-weight:600; }
h5, .display-5 { font-family: var(--primary-font); font-size: var(--default-fs); font-weight: 400; line-height: 1.55; margin: 0 0 min(1.25rem, 24px); }
p { margin-bottom: 25px; }
@media (min-width:992px) {
  h1, h2, .display-1:not(.display-1--sm) { font-size: clamp(36px, 3vw, 48px); }
  .display-1--md { font-size: 40px!important; margin: 0 0 min(2rem, 32px); }
}
@media (max-width:575px) {
  h1, h2, .display-1 { font-size: 36px; }
  .display-1--sm { font-size: 30px; }
  h3, .display-3 { font-size: 20px; }
}

/* Links
============================================================================= */
*:focus { outline-color: var(--primary); }
a { color: var(--secondary); text-decoration: none; transition: all 0.5s; }
a:hover, a:active, a:focus-visible { color: var(--primary-dark); text-decoration: none; }
a:focus-visible, .nav-link:focus-visible, button:focus-visible, a:focus:focus-visible { outline: none; -moz-outline-style: none; outline-offset: 10px; box-shadow: 0 0 2px 2px rgba(var(--primary-rgb),.7)!important; transition: .2s; }


/* Buttons
============================================================================= */
.btn {--btn-color: #000;--btn-bg: var(--light);--btn-hover: 255, 255, 255;font-family: var(--primary-font);position: relative;background-color: var(--btn-bg);color: var(--btn-color)!important;border: 1px solid var(--btn-bg);height: 44px;line-height: 1.25rem;border-radius: 56px;padding: 12px 20px;font-size: min(1.25rem, 18px);font-weight: 600;text-transform: capitalize;display: inline-flex;align-items: center;justify-content: center;gap: 16px;min-width: 174px;overflow: hidden;z-index: 3;}
.btn i, .btn img { font-size: 24px; width: 24px; height: 24px; }
.btn::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: calc(200% + 1px); z-index: -1; transform: translateY(0); transition: transform 0.27s ease-out; transform-origin: bottom; background: rgb(var(--btn-hover)); background: -moz-linear-gradient(bottom, rgba(var(--btn-hover), 1) 0%, rgba(var(--btn-hover), 1) 50%, var(--btn-bg) 50%, var(--btn-bg) 100%); background: -webkit-linear-gradient(bottom, rgba(var(--btn-hover), 1) 0%, rgba(var(--btn-hover), 1) 50%, var(--btn-bg) 50%, var(--btn-bg) 100%); background: linear-gradient(to top, rgba(var(--btn-hover), 1) 0%, rgba(var(--btn-hover), 1) 50%, var(--btn-bg) 50%, var(--btn-bg) 100%); }
.btn:is(:hover,:focus-visible) { color: var(--btn-color)!important; border-color: var(--btn-color); background-color: var(--btn-hover); box-shadow: 4px 4px 0 0 var(--btn-color); }
.btn:is(:hover,:focus-visible)::before { transform: translateY(-50%); transition: transform 0.27s ease-out; }
.btn--hover-bg:is(:hover,:focus-visible) { border-color: rgba(var(--btn-hover), 1); }

/* Button Colors */
.btn--secondary, .btn--accent { --btn-color: #fff; --btn-bg: var(--secondary); border: 1px solid #fff; }
.btn--secondary:is(:hover,:focus-visible), .btn--accent:is(:hover,:focus-visible) { --btn-color: var(--secondary)!important; }

/* Button Direction To Right */
.btn--right::before {width: calc(200% + 1px);height: 100%;transform: translateX(-50%);transform-origin: right;background: rgb(var(--btn-hover));background: linear-gradient(to right, rgba(var(--btn-hover), 1) 0%, rgba(var(--btn-hover), 1) 50%, var(--btn-bg) 50%, var(--btn-bg) 100%);}
.btn--right:is(:hover,:focus-visible)::before {transform: translateX(0);}

/*  */
.btn--white { background-color: #fff; color: var(--primary) !important; border: 1px solid #fff; }
.btn--white:hover, .btn--white:focus-visible { background-color: var(--primary); color: #fff !important; border: 1px solid var(--primary); }

/*  */
.btn--arrow { padding-right: 60px; }
.btn--arrow::after { content: '\f061'; position: absolute; right: 20px; transition: .3s; font-family: var(--font-awesome); }
.btn--arrow:hover::after { transform: translateX(5px); transition: .3s; }

/*  */
.btn--up-right { padding-right: 48px; }
.btn--up-right::after { content: '\e09f'; font-family: var(--font-awesome); height: auto; width: auto; }


/* Inverted Buttons - Outline Only */
[class*='btn--outline'] { --btn-border: var(--primary); --btn-bg: transparent; --btn-hover: var(--primary-rgb); background-color: transparent; border-color: var(--btn-border); }
[class*='btn--outline']:is(:hover, :focus, :focus-visible) { border-color: var(--primary); }
.btn--outline-white {--btn-border: #fff; color: var(--btn-border)!important; }
.btn--outline-primary { --btn-bg: #fff; --btn-hover: var(--primary); }
.btn--outline-primary:hover { }
.btn--outline-secondary { --btn-border: var(--secondary); }
.btn--outline-secondary:hover { }

/* Button Sizes */
.btn--lg { height: 67px; min-width: 273px; }
.btn--sm { height: 34px; font-size: min(1.175rem, 14px); min-width: 142px; text-transform: uppercase; }

/* Button Lists */
.btn-list { display: inline-flex; flex-wrap: wrap; gap: 15px; }

@media (max-width: 525px){
  .btn { font-size: 16px; }
}
@media (max-width:420px) {
  .btn:not(.btn--arrow) { white-space: normal; height: auto; padding: 10px 20px; line-height: 1.2; }
}

/* ==========================================================================
   Header
============================================================================= */
:root { --header-height: calc(104px + var(--header-top-height)); --header-affix-height: 52px; --header-top-height: 44px; }
#header { height: var(--header-height); border-top: var(--header-top-height) solid #fff; font-family: var(--secondary-font); background-color: #fff; transition: background-color 0.4s ease-out, box-shadow 0.2s ease-out; position: absolute; top: 0; left: 0; width: 100%; z-index: 99; }
#header .container-fluid { position: relative; height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(17, 17, 17, 0.10); border-bottom: 1px solid rgba(17, 17, 17, 0.10); }
#header .links { display: flex; flex-wrap: wrap; flex-direction: row-reverse; justify-content: space-between; align-items: center; gap: 15px 30px; flex: 1 1 auto; }
#header .logo { max-width: 60vw; }
#header .logo img { max-height: 125px; max-width: 350px; }
#header .contact { display: flex; justify-content: end; align-items: center; gap: 30px; width: 300px; font-size: var(--default-fs); text-align: right; }
#header .contact .phone:hover .phone__icon { background-color: #fff; color: var(--primary); transition: .3s; }
#header :is(.phone, .logins) { display: inline-flex; gap: 12px; align-items: center; }
#header :is(.phone, .logins) a { color: inherit; transition: 0.4s;}
#header :is(.phone, .logins) i, #header :where(.phone, .logins:has(.login-dropdown.show)) a:is(:hover,:focus-visible) { color: var(--dark); }
#header .phone a { font-size: 20px; font-weight: 700; }
#header .logins { height: 44px; min-width: 109px; background-color: var(--primary); border-radius: 56px; justify-content: center; border: 1px solid var(--primary); transition: .3s; font-weight: 600; font-size: 18px; }
#header .logins:hover { background: #fff; transition: .3s;  }
#header .logins .login__icon { margin-left: 10px; }
#header .phone__icon { font-size: 14px; height: 40px; width: 40px; border-radius: 50%; background-color: var(--primary); display: flex; justify-content: center; align-items: center; border: 1px solid var(--primary); transition: .3s; }
#header .login-dropdown {position: absolute;top: 50%;right: max(5vw, 15px);width: 150px;font-size: 1rem;text-align: center;z-index: 1000;}
#header .login-dropdown ul {list-style: none;padding: 0;margin: 0; border-radius: 12px; overflow: hidden; }
#header .login__link {background-color: var(--gray);display: block;width: 100%;padding: 6px;-webkit-transition: 0.4s;-o-transition: 0.4s;transition: 0.4s;}
#header .login__link:hover { background-color: var(--primary);}
#header .launch-menu-button { display: none; color: inherit; font-family: var(--primary-font);white-space: nowrap; }
#header:not(.affix) .phone-default, #header:not(.affix) .phone-other { display: none;}
#header .header-info { position: absolute; width: 100%; top: -34px; left: 0; display: flex; justify-content: space-between; align-items: center; font-size: 14px; font-weight: 400; }
#header .header-info ul { list-style: none; display: flex; gap: 22px; margin: 0; padding: 0; }
#header .header-info ul li address { display: flex; margin: 0; }
#header .header-info ul li address > span { margin-left: 4px; }
#header .header-contact svg { width: 20px; height: 20px; margin-right: 10px; }
#header .header-social span, #header .header-social a:not(:last-child) { margin-right: 16px; }
#header .header-social a i { font-size: 18px; }

/* #header .phone-other { display: none;} */

@media (max-width: 2000px){
  #header .header-info { padding-left: max(10vw, 15px); padding-right: max(10vw, 15px); }
}
@media (min-width: 1200px) {
  #header .logo { min-width: 215px; }
}
@media (min-width: 1100px) {
  #header .login-dropdown {right: max(10vw, 15px);}
}
@media (min-width: 1500px) {
  #header .login-dropdown {top: calc(50% + 16px);}
}
@media (min-width: 2001px) {
  #header .login-dropdown {right: 0;}
}
@media (max-width: 1099px){
  #header .header-info {padding-left: max(5vw, 15px); padding-right: max(5vw, 15px); }
}
@media (max-width:991px) {
  :root { --header-height: 135px; }
  #header .launch-menu-button { display: block; }
  #header .links { flex-direction: column; align-items: flex-end; }
  #header .logins, #header .nav { display: none; }
  #header .logo img { max-width: 100%; }
}
@media (max-width:699px) {
  #header .contact { width: auto; }
  #header .phone { font-size: 22px; }
}
@media (max-width: 599px) {
  :root { --header-height: 130px; --header-top-height: 10px; }
  #header { }
  #header:not(.affix) .container-fluid { flex-wrap: wrap; justify-content: center; padding: 35px 0 0; gap: 5px 0; border-top: 1px solid transparent; }
  #header:not(.affix) .phone { flex: 0 0 100%; color: #000; padding: 0 clamp(12px, 6vw, 32px); }
  #header:not(.affix) .phone a { font-size: 16px; }
  #header:not(.affix) .phone a:hover { color: var(--body-text); }
  #header:not(.affix) .logo img { max-width: 100%; width: auto; max-height: 56px; }
  #header:not(.affix) .phone-scroll.phone-other { display: none;}
  #header .contact { position: absolute; top: 0; width: 100%; }
  #header :is(.phone, .logins) i { color: var(--dark); }
  #header .phone__icon { width: 24px; height: 24px; }
  #header .logo { padding-left: clamp(12px, 6vw, 32px); }
  #header .launch-menu-button { padding-right: clamp(12px, 6vw, 32px); }
  #header .header-info { justify-content: end; top: 0; padding-bottom: 35px; border-bottom: 1px solid #E8E8E8; }
  #header .header-info .header-social { position: relative; z-index: 2; }
  #header .header-info .header-social a { color: #a0a0a0; }
  #header .header-info .header-social a:hover { color: var(--body-text); }
  #header .header-info .header-contact { display: none; }
}
@media (max-width: 375px){
   #header .header-social a:not(:last-child) { margin-right: 5px; }
}

/* Header Affix */
#header.affix { height: var(--header-affix-height); background-color: rgba(255, 255, 255, 1); transition: background-color 0.4s ease-in, box-shadow 0.2s ease-in; box-shadow: var(--box-shadow); border-top: 0; }
#header.affix .contact, #header.affix .header-info { display: none; }
#header.affix .logo {  }
#header.affix .logo img { max-height: 30px; }
/* #header.affix .phone-scroll { display: inline-flex;} */
#header.affix .launch-menu-button { display: block; margin: 35px 0; }
#header.affix .nav { display: none; }

.affix-menu { gap: 35px;}

@media(max-width: 525px) {
  #header.affix .phone-scroll { display: none;}
}

/* ==========================================================================
   #Nav
============================================================================= */
#header .nav { list-style: none; padding: 0; margin: 0 -10px; font-weight: 500; font-size: min(1rem, 16px); text-transform: capitalize; justify-content: center; gap: min(0.5vw,20px); }
#header .nav__item { position: relative; padding: 0 15px; line-height: 29px; }
#header .nav > .nav__item { padding: 0; background: #fff; }
#header .nav__item.launch-only { display:none; }
#header .nav__item a { color: var(--body-text); padding: 10px; }
#header .nav__item a::after { content: ""; position: absolute; display: block; border: 0 solid transparent; width: 0%; height: 0%; transition: all 0.5s ease; }
#header .nav__item a::after { bottom: 0; left: 0; border-left: 2px solid transparent; }
#header .nav__item > a:is([aria-expanded='true'],:hover,:focus-visible)::after, #header .nav__item:is(.active) > a::after { width: 10px; height: 28px; border-color: var(--primary); }
#header .nav__dropdown { display: none; list-style: none; padding: 0; margin: 0; position: absolute; top: 100%; left: -6px; background-color: var(--gray); border-radius: 12px; overflow: hidden; box-shadow: var(--box-shadow); font-family: var(--primary-font); }
#header .nav__dropdown > li { white-space: nowrap; line-height: 35px; padding: 0 20px; }
#header .nav__dropdown > li > a { color: var(--body-text); }
#header .nav__dropdown > li:hover { background-color: var(--light); }
#header .nav__item:not(.dropdown):hover .nav__dropdown { display: block; }
#header .nav__dropdown--lg { --col-num: 1; --max-width: 1150px; width:calc(var(--max-width) * var(--col-num)/4); padding: 30px 10px; left: -106px; }
#header .nav__dropdown--lg:has(.col:nth-child(2)) { --col-num: 2; }
#header .nav__dropdown--lg:has(.col:nth-child(3)) { --col-num: 3; }
#header .nav__dropdown--lg:has(.col:nth-child(4)) { --col-num: 4; }
#header .nav__dropdown--lg ul { list-style: none; padding: 0; margin: 0; }
#header .nav__dropdown--lg .nav__item, #header .nav__dropdown--lg li { margin: 0 0 15px!important; }
#header .nav__dropdown--lg .nav__item a { display: block; line-height: 1.3; padding: 0 15px; color:var(--body-text); position: relative; z-index: 2; }
#header .nav__dropdown--lg .nav__item a::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 2px solid transparent; border-top: 0; border-left: 0; border-right:0; transform: none; z-index: -1; transition: 0.3s ease-out; }
#header .nav__dropdown--lg .nav__item a::after { border: 0; }
#header .nav__dropdown--lg .nav__item a:is(:hover,:focus-visible)::before { border-color: var(--primary); transform: translate(4px, 4px); transition: 0.2s ease-in; }
#header .nav__dropdown--lg .nav__item li:hover a, #header .nav__dropdown--lg .nav__item li:focus-visible a { color: var(--body-text); }
#header .nav__dropdown--lg .nav__item > ul { padding: 0 15px; }
#header .nav__dropdown--lg .nav__item.service-title > a { font-weight: bold;margin-bottom:15px; }
#header .nav__dropdown--lg .nav__item ul > li > a { font-weight:400; }
#header .nav__dropdown--lg [class*="col"]:not(:last-of-type) { border-right:1px solid var(--primary); }
@media (max-width: 1699px) {
	#header .nav { font-size: 15px; }
  #header .nav__dropdown--lg { --max-width: 950px; left: 100%; transform: translateX(-50%); }
}
@media (max-width:1499px) {
  #header .nav__item:nth-last-child(2) .nav__dropdown  { left: auto; right: -15px; }
}
@media (max-width:1199px) {
  #header .nav { gap: 0; }
  /* #header .nav__item:hover > a::after, #header .nav__item.active > a::after, #header .nav__item:focus-visible > a::after { display: none; } */
}

.launch-menu { position:fixed; top:0; bottom:0; right:0; width:300px; background:#fff; padding-bottom: 50px; z-index:9999; transform: translateX(100%); transition: 0.5s ease-out; text-align: center; overflow-y: scroll; box-shadow: var(--box-shadow); }
.launch-menu.open { transform: translateX(0%); transition: 0.5s ease; }
.launch-menu-mask { background: rgba(0,0,0,0.8); position: fixed; top:0; left:0; height: 100%; width: 100%; z-index: 9998; display: none; }

/* Home Banner
============================================================================= */
#home-banner { position: relative; height: auto; min-height: 307px; padding-top: var(--header-height); background-color: #fff; background-size: cover; background-position: center; }
#home-banner .container-fluid { position: relative; z-index: 9; height: 100%; display: flex; flex-direction: column; }

/* Home Banner Prompt */
#home-banner .prompt {position: relative;margin: clamp(28px, 2.4vw, 48px) 0;padding: clamp(28px, 2.4vw, 48px) 0;width: 100%;color: var(--secondary);font-family: var(--secondary-font);display: flex;flex-direction: row;gap: 36px; align-items: center; }
#home-banner .prompt .lead {color: inherit;font-family: inherit;font-size: clamp(48px, 3vw, 60px);line-height: normal;margin: 0; font-weight: 800; flex-shrink: 0; }
#home-banner .prompt .lead__sm { display: block; margin: 0 0 min(1em, 20px); font-family: var(--primary-font); font-size: min(0.35em, 18px); font-weight: 500; }
#home-banner .prompt .sub {color: inherit;font-family: var(--primary-font);font-size: min(1.25rem, 20px);font-weight: 400;line-height: 1.5;margin: 0;}

@media (min-width: 992px){
  #home-banner .prompt { text-align: left; }
  #home-banner .prompt .sub-container { max-width: 435px; margin-left: auto; }
}
@media (max-width: 991px){
  #home-banner .prompt { flex-direction: column; align-items: start; }
}
@media (max-width: 649px) {
  #home-banner .prompt .sub { font-size: 16px; }
}
@media (max-width: 575px){
  #home-banner { display: flex; flex-direction: column; }
  #home-banner .container-fluid { order: -1; }

}
@media (max-width: 375px){
  #home-banner .prompt .lead { font-size: 28px; }
}

/* Home Banner Carousel */
#home-banner-carousel {  }
#home-banner-carousel .carousel-inner { border-radius: 36px; }
#home-banner-carousel .carousel-inner img {max-height: 550px; }


/* Hide Carousel on Mobile if more than 1 .carousel-item */
@media (max-width: 575px) {
  #home-banner-carousel { z-index: 2; margin-bottom: -248px; order: 1; }
  #home-banner-carousel .carousel-inner img { min-height: 480px; }
  #home-banner-carousel:has(.carousel-item:nth-of-type(2)) { display: none; }
  #home-banner:has(.carousel-item:nth-of-type(2)) { background-image: url('/images/banner-1-sm.webp'); }
}

/* Home CTAs
============================================================================= */
#home-ctas {margin: 0 0 -300px; position: relative; }
#home-ctas .ctas { padding: 55px 0 370px; }
@media (max-width: 1200px){
  #home-ctas { margin: 0 0 -120px; }
  #home-ctas .ctas { padding-bottom: 170px;}
}
@media (max-width: 575px){
  #home-ctas { margin: 0; order: 2; }
  #home-ctas .ctas { padding: 309px 0 80px; }
}


/* CTAs */
.ctas { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; gap: 40px 20px; font-size: clamp(16px, 1.2vw, 20px); }
.ctas .cta {background: #01104b;position: relative;display: flex;flex-direction: column;justify-content: flex-start;gap: 24px;width: 100%;padding: 0;color: #fff;transition: 0.3s ease-out;border: 1px solid transparent; border-radius: 36px; }
.ctas .cta-header {display: flex;justify-content: start;align-items: center;gap: 13px; padding-bottom: 20px; border-bottom: 1px solid rgba(255, 255, 255, 0.20); }
.ctas .cta__icon { width: 48px; height: 48px; background: var(--primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ctas .cta__title { color: inherit; font-size: clamp(1.125rem, 1.5vw, 24px); letter-spacing:0; text-transform: capitalize; margin: 0; }
.ctas .cta__link {position: relative;padding:0;color: inherit;line-height: 1;overflow: hidden;z-index: 1;}
.ctas .cta__link::before { content: url('/images/icon-caret.svg'); font-family: var(--font-awesome); position: absolute; left: 0; color: #fff; transform: translateX(-25px); opacity: 0; transition: all 0.4s ease .2s; }
/* CTA Hover */
.ctas .cta__link:is(:hover,:focus-visible) { padding-left: 18px; transition: 0.4s ease; }
.ctas .cta__link:is(:hover,:focus-visible)::before { transform: translateX(0); opacity: 1; transition: all 0.4s ease .2s; }


@media (max-width: 991px) {
  .ctas { flex-wrap: wrap; }
  .ctas .cta { flex: 0 1 calc(50% - 24px); }
  .ctas .cta__link::after { opacity: 1; right: 0; }
}
@media (min-width: 768px){
  .ctas .cta { max-width: 322px; }
}
@media (max-width: 600px){
  .ctas .cta { flex: 0 1 auto; }
}
@media (max-width: 425px){
  .ctas { grid-template-columns: auto; }
}


/* Secondary Banner
================================================== */
#secondary-banner { position: relative; height: auto; min-height: 560px; overflow: hidden; background-size: cover; background-attachment: fixed; background-repeat: no-repeat; background-position: top center; display: flex; flex-direction: column; justify-content: center; border-radius: 36px; width: 1800px; max-width: 100%; margin: calc(var(--header-height) + 36px) auto 0; }
#secondary-banner::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; background: linear-gradient(0deg, rgba(17, 17, 17, 0.70) 0%, rgba(17, 17, 17, 0.70) 100%); border-radius: 36px; border: 1px solid #EDEDED; }
#secondary-banner .image-list { display: none !important; }
#secondary-banner .container-fluid { position: relative; z-index: 9; margin: clamp(28px, 2.4vw, 48px) auto; text-align: center; }
#secondary-banner .prompt { padding: clamp(28px, 2.4vw, 48px); width: min(100%, 963px); margin: 0 auto; color: #fff; }
#secondary-banner .prompt .hero__lead { margin: 0; color: inherit; font-size: min(3.5rem, 56px); font-weight: 800; line-height: 1.2; color: inherit;}
#secondary-banner .prompt .hero-lead__sm, #secondary-banner .prompt .hero__lead small { font-size: .436em; display:block; }
#secondary-banner .prompt .hero__sub { margin: 0 0 24px; color: inherit; font-family: var(--primary-font); font-size: min(1.375rem, 22px); line-height: 1.27; text-transform: none; color: inherit; font-weight: 400; }
#secondary-banner .prompt > .btn, #secondary-banner .prompt .btn-list { margin-top: 35px; }
#secondary-banner .amp__form { margin-left: auto; margin-right: auto; margin-top: 36px; }
#secondary-banner.hide-btns .prompt .btn-list, #secondary-banner.hide-btns .prompt .btn { display: none; }
#secondary-banner .prompt:has( .hero__lead + *:not(.d-none)) .hero__lead { margin-bottom: 24px; }
@media (min-width: 2001px){
  #secondary-banner { background-size: cover; }
}
@media (max-width: 991px){
  #secondary-banner { background-size: cover; background-attachment: scroll; }
}
@media (max-width: 849px){
  #secondary-banner { min-height: 450px; }
  #secondary-banner .prompt .hero__lead { font-size: 24px; }
  #secondary-banner .prompt .hero__sub { font-size: 18px; }
}
@media (max-width: 768px){
  #secondary-banner .prompt { padding: clamp(28px, 2.4vw, 48px) 0; }
  #secondary-banner .container-fluid { padding: 0; }
}

/* No Hero Image */
body.no-hero #secondary-banner { display: none; }
main.no-hero, body.no-hero main { margin-top:var(--header-height); }


/* ==========================================================================
  #Services Page(s)
============================================================================= */
.intro {padding-top: var(--subNavHeight);padding-bottom: 85px;font-size: min(1.25rem,18px);}
.intro__content :is(p, li) > a:not(.btn) { font-weight: bold; }
.intro__lead { font-size: min(3rem, 48px); }
.intro__content h3 { margin: 20px 0 12px; }
.intro__content h3.mb-lg { margin-bottom: 20px; }
.intro hr { margin: 24px 0 56px; opacity: 1; border-top: 1px solid #111; }
.intro [class*='form-container'] .ion-form .ion-form-group:not(.ion-form-group-checkbox,.ion-form-group-radio) label { color: #fff; }

.intro .box { text-align: center; border: 0; background: var(--gray); font-size: 18px; padding: 50px 2.5vw; }

.image-wrapper { position: relative; height: 0; width: 100%; padding-top: 42.39%; overflow: hidden; margin-bottom: 35px; }
.image-wrapper img { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }

.form-cta {position: relative;margin-top: 56px;font-family: var(--secondary-font);font-size: min(1.63rem, 26px);line-height: 1.5;font-weight: 400;}
.form-cta p { line-height: 1.6!important; }
@media (min-width: 992px){
  .intro__content h3 { margin: 56px 0 28px; }
  .intro__content h3.mb-lg { margin-bottom: 56px; }
}
@media (min-width: 1200px){
  .intro {padding-top: 72px;}
  /* #contact { flex:0 0 calc(35.3333% - 10px); max-width:calc(35.3333% - 10px); } */
  #contact .form-container { position:sticky!important; top:90px; left:auto; transition:none; }
}
@media (max-width: 1199px){
  .intro row > div[class*='col']:not(:has(#sub-nav)) { padding-top: calc(50px + 1.5rem)!important; }
}
@media (max-width: 991px){
	.form-cta { margin-bottom: 60px; }
}

/* AMP
============================================================================= */
.amp { text-align: center; padding-top: 5px; }
.amp a { color: inherit; }
.amp a:hover { color: var(--primary); }
.amp__lead { font-size: 42px; font-family: var(--primary-font); line-height: 1; margin-top: 15px; }
.amp__sub { font-size: 20px; line-height: 1.5; margin-top: 15px; }
.amp__form {max-width: 712px;min-height: 60px;}
.amp__form .ion-form {
	display: flex;justify-content: center;position:relative;flex-wrap: wrap;gap: 15px;
	& .ion-form-group { width:100%; max-width:100%;margin-bottom:0; }
	& label { display: none; }
	& input { width:100%; border: 1px solid #abaaaa !important; line-height: 1; height: 60px; padding: 0 10px 1rem!important; background:#fff; border-radius:60px !important; display:block; }
	& input::-webkit-input-placeholder { font-size: 18px; color: var(--dark); font-family: var(--primary-font); font-weight:400; text-align: center; white-space: pre-line; }
  & button {width: 102px;height: 44px;line-height: 1em;border-radius:56px;color: var(--body-text);background: var(--primary);border-color: var(--primary);text-transform: capitalize;padding: 12px 24px;letter-spacing: normal;font-family: var(--primary-font);display: flex;justify-content: center;align-items: center;gap: 12px; font-size: 18px; font-weight: 600; }
  & button:hover {background-color: var(--dark); color: var(--light); border-color: var(--dark);}
}
@media (min-width:789px){
  .amp__form .ion-form input { height: 60px; padding: 0 10px!important; }
}
@media (min-width:992px){
  .amp__form .ion-form input { padding: 0 9px 0 32px!important; }
	.amp__form .ion-form input::-webkit-input-placeholder { text-align: left; }
	.amp__form .ion-form button {position:absolute;top:50%;transform:translateY(-50%);right:9px;}
}
@media (max-width: 600px){
	.amp__lead { font-size: 34px; }
	.amp__sub { font-size: 20px; }
	.amp__form .ion-form { flex-wrap: wrap; }
	.amp__form .ion-form button { width: 100%; }
  .amp__form .ion-form input { border-radius: 20px!important; }
}
@media (max-width: 482px){
  .amp__form .ion-form input { height: 125px; padding-bottom: 2.5rem!important; }
}
@media (max-width: 367px){
  .amp__form .ion-form input { padding-bottom: 4.5rem!important; }
}



/* Cluster Content
============================================================================= */
:root { --subNavHeight: 61px; }
.hide-sub-nav #sub-nav { display: none!Important; }
#hero { position: relative; padding-bottom: var(--subNavHeight); }
#hero:has(#secondary-banner) { padding-left: 12px; padding-right: 12px; }

/* Sub Nav */
#sub-nav { position: absolute; bottom: 33px; left: 50%; transform: translateX(-50%); height: var(--subNavHeight); color: var(--dark); text-transform: capitalize; background-color: var(--primary); width: 1520px; max-width: 98%; border-radius: 61px; z-index: 90; }
#sub-nav::before { content: '';  position: absolute; top: 0; bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; max-width: 100%; z-index: -1; transition: 0.5s; }
#sub-nav .nav { height: 100%; padding: 0 clamp(28px, 4vw, 78px); }
#sub-nav .nav-item { display: flex; justify-content: center; align-items: center; text-transform: capitalize; }
#sub-nav .nav-link { color: inherit; }
#sub-nav .nav-link:hover, #sub-nav .nav-item.active .nav-link { transition: text-shadow 0.3s; text-shadow: 0.5px 0 0 currentColor; }
#sub-nav.affix { position: fixed; height: 50px; line-height: 1; top: var(--header-affix-height); left: 50%; right: 0; padding: 5px 0; z-index: 99; border-radius: 0 0 61px 61px; }
#sub-nav.affix::before { transition: 0.5s;  }
@media (min-width:1200px) and (max-width:1310px) {
	#sub-nav { font-size: 15px; }
	#sub-nav .nav-link { padding: .5rem; }
}
@media (max-width:1199px) {
	#sub-nav .nav-item, #sub-nav .nav-item.prev:before  { display: none; }
	#sub-nav .nav-item.prev, #sub-nav .nav-item.next, #sub-nav .nav-item.active { display: inherit; }
	#sub-nav .nav-item.prev::before { content: '\f053'; display: inline-block; font-family: "Font Awesome 6 Pro"; font-style: normal; font-weight: 300; -webkit-font-smoothing: antialiased; font-size: 16px; }
	#sub-nav .nav-item.next::after { content: '\f054'; display: inline-block; font-family: "Font Awesome 6 Pro"; font-style: normal; font-weight: 300; -webkit-font-smoothing: antialiased; font-size: 16px; }
}
@media (max-width:768px) {
	#sub-nav .nav-item.active:not(:first-child):not(:last-child) { display: none; }
}
@media (max-width:500px) {
  #sub-nav { background-color: var(--dark); color: #fff; }
	#sub-nav .nav-item { font-size: 0; }
	#sub-nav .nav-item.prev .nav-link::before { content: 'Prev'; font-size: 16px; }
	#sub-nav .nav-item.next .nav-link::after { content: 'Next'; font-size: 16px; }
	#sub-nav .nav-item.active, #sub-nav .nav-item.next:nth-child(2)::before  { display: none; }
}

/* Calculator Hero Banner
============================================================================= */
.calc-hero {  background-color: var(--dark); color: #fff; padding: 0 5vw; padding-top: 0; background-repeat: no-repeat; background-position: center right; }
.calc-hero__prompt { font-size: 40px; padding: 80px 0; width: 1350px; max-width: 100%; margin: auto; }
.calc-hero__heading { font-size: 1em; text-transform: uppercase; margin: 0; width: 485px; display: inline-block; color: inherit; max-width: 100%; line-height: 1; letter-spacing: .05em; font-weight: 400; font-family: var(--secondary-font,'depot-new-web', sans-serif);}
.calc-hero__sub { font-size: .5em; font-style: italic; font-family: var(--secondary-font,'depot-new-web', sans-serif); margin: 10px 0 0; color: inherit; }
.calc-hero__description { font-size: 1rem; margin: 10px 0 0; color: inherit; }

@media (min-width: 992px) {
  .calc-hero { height: 555px; display: flex; justify-content: center; align-items: center; background-image: url('https://resources.nesthub.com/images/rentsellcalc-banner.png'); }
  .calc-hero__prompt { font-size: 60px; }
  .calc-hero__description { max-width: 600px;}
}
@media (max-width: 991px) {
  .calc-hero { text-align: center; }
}

/* Utilities - Helper Classes
============================================================================= */
[class*='mw-'] { max-width: 100%; margin-left: auto!important; margin-right: auto!important; }

.mw-450 { width: 450px; }
.mw-600 { width: 600px; }
.mw-650 { width: 650px; }
.mw-700 { width: 700px; }
.mw-750 { width: 750px; }
.mw-900 { width: 900px; }
.mw-960 { width: 960px; }
.mw-1000 { width: 1000px; }
.mw-1060 { width: 1060px; }
.mw-1160 { width: 1160px; }
.mw-1200 { width: 1200px; }
.mw-1350 { width: 1350px; }
.mw-1400 { width: 1400px; }
.mw-1550 { width: 1550px; }
.mw-1600 { width: 1600px; }
.mw-1700 { width: 1700px; }
.mw-1800 { width: 1800px; }

/* Padding Relative to Screen Width on containers */
/* Math: (2000px (design width) - 1000px (content width) / 2 (sides)) / 2000px (design width) * 100 = VW */

@media (min-width:2001px) {
  [class*='pw-'] { max-width: 100%; margin-left: auto; margin-right: auto; padding-left: 0; padding-right: 0; }
  .pw-1000 { width: 1000px; }
  .pw-1400 { width: 1400px; }
  .pw-1500 { width: 1500px; }
  .pw-1600 { width: 1600px; }
  .pw-1700 { width: 1700px; }
  .pw-1800 { width: 1800px; }
}
@media (max-width:2000px) {
  .pw-1000 { padding-left: max(25vw, 15px); padding-right: max(25vw, 15px); }
  .pw-1400 { padding-left: max(16vw, 15px); padding-right: max(16vw, 15px); }
  .pw-1500 { padding-left: max(12.5vw, 15px); padding-right: max(12.5vw, 15px); }
  .pw-1600 { padding-left: max(10vw, 15px); padding-right: max(10vw, 15px); }
  .pw-1700 { padding-left: max(8vw, 15px); padding-right: max(8vw, 15px); }
  .pw-1800 { padding-left: max(5vw, 15px); padding-right: max(5vw, 15px); }
}
@media (max-width:1099px) {
  .pw-1000,.pw-1400, .pw-1500, .pw-1600, .pw-1700 { padding-left: max(5vw, 15px); padding-right: max(5vw, 15px); }
}

/* Responsive Padding */
.px-5vw { padding-right: 5vw!important; padding-left: 5vw!important; }
.px-6vw { padding-right: 6vw!important; padding-left: 6vw!important; }
.px-7vw { padding-right: 7vw!important; padding-left: 7vw!important; }
.px-8vw { padding-right: 8vw!important; padding-left: 8vw!important; }
.px-9vw { padding-right: 9vw!important; padding-left: 9vw!important; }
.ps-5vw { padding-left: 5vw!important; }
.ps-6vw { padding-left: 6vw!important; }
.ps-7vw { padding-left: 7vw!important; }
.ps-8vw { padding-left: 8vw!important; }
.ps-9vw { padding-left: 9vw!important; }
.pe-5vw { padding-right: 5vw!important; }
.pe-6vw { padding-right: 6vw!important; }
.pe-7vw { padding-right: 7vw!important; }
.pe-8vw { padding-right: 8vw!important; }
.pe-9vw { padding-right: 9vw!important; }

/* BS5 Gutter Extensions */
.g-6, .gx-6 { --bs-gutter-x: 6rem; }
.g-6, .gy-6 { --bs-gutter-y: 6rem; }
.g-7, .gx-7 { --bs-gutter-x: 9rem; }
.g-7, .gy-7 { --bs-gutter-y: 9rem; }

/* BS5 Padding Extensions */
.p-6 { padding: 6rem !important; }
.p-7 { padding: 9rem !important; }
.px-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
.px-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
.py-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
.py-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
.pt-6 { padding-top: 6rem !important; }
.pt-7 { padding-top: 9rem !important; }
.pe-6 { padding-right: 6rem !important; }
.pe-7 { padding-right: 9rem !important; }
.pb-6 { padding-bottom: 6rem !important; }
.pb-7 { padding-bottom: 9rem !important; }
.ps-6 { padding-left: 6rem !important; }
.ps-7 { padding-left: 9rem !important; }

/* BS5 Margin Extensions */
.m-6 { margin: 6rem !important; }
.m-7 { margin: 9rem !important; }
.mx-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
.mx-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
.my-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
.my-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
.mt-6 { margin-top: 6rem !important; }
.mt-7 { margin-top: 9rem !important; }
.me-6 { margin-right: 6rem !important; }
.me-7 { margin-right: 9rem !important; }
.mb-6 { margin-bottom: 6rem !important; }
.mb-7 { margin-bottom: 9rem !important; }
.ms-6 { margin-left: 6rem !important; }
.ms-7 { margin-left: 9rem !important; }

/* // Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  /* Gutters */
  .g-sm-6, .gx-sm-6 { --bs-gutter-x: 6rem; }
  .g-sm-6, .gy-sm-6 { --bs-gutter-y: 6rem; }
  .g-sm-7, .gx-sm-7 { --bs-gutter-x: 9rem; }
  .g-sm-7, .gy-sm-7 { --bs-gutter-y: 9rem; }
  /* Padding */
  .p-sm-6 { padding: 6rem !important; }
  .p-sm-7 { padding: 9rem !important; }
  .px-sm-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
  .px-sm-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
  .py-sm-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
  .py-sm-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
  .pt-sm-6 { padding-top: 6rem !important; }
  .pt-sm-7 { padding-top: 9rem !important; }
  .pe-sm-6 { padding-right: 6rem !important; }
  .pe-sm-7 { padding-right: 9rem !important; }
  .pb-sm-6 { padding-bottom: 6rem !important; }
  .pb-sm-7 { padding-bottom: 9rem !important; }
  .ps-sm-6 { padding-left: 6rem !important; }
  .ps-sm-7 { padding-left: 9rem !important; }
  /* Margin */
  .m-sm-6 { margin: 6rem !important; }
  .m-sm-7 { margin: 9rem !important; }
  .mx-sm-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
  .mx-sm-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
  .my-sm-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
  .my-sm-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
  .mt-sm-6 { margin-top: 6rem !important; }
  .mt-sm-7 { margin-top: 9rem !important; }
  .me-sm-6 { margin-right: 6rem !important; }
  .me-sm-7 { margin-right: 9rem !important; }
  .mb-sm-6 { margin-bottom: 6rem !important; }
  .mb-sm-7 { margin-bottom: 9rem !important; }
  .ms-sm-6 { margin-left: 6rem !important; }
  .ms-sm-7 { margin-left: 9rem !important; }
}

/* // Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  /* Gutters */
  .g-md-6, .gx-md-6 { --bs-gutter-x: 6rem; }
  .g-md-6, .gy-md-6 { --bs-gutter-y: 6rem; }
  .g-md-7, .gx-md-7 { --bs-gutter-x: 9rem; }
  .g-md-7, .gy-md-7 { --bs-gutter-y: 9rem; }
  /* Padding */
  .p-md-6 { padding: 6rem !important; }
  .p-md-7 { padding: 9rem !important; }
  .px-md-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
  .px-md-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
  .py-md-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
  .py-md-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
  .pt-md-6 { padding-top: 6rem !important; }
  .pt-md-7 { padding-top: 9rem !important; }
  .pe-md-6 { padding-right: 6rem !important; }
  .pe-md-7 { padding-right: 9rem !important; }
  .pb-md-6 { padding-bottom: 6rem !important; }
  .pb-md-7 { padding-bottom: 9rem !important; }
  .ps-md-6 { padding-left: 6rem !important; }
  .ps-md-7 { padding-left: 9rem !important; }
  /* Margin */
  .m-md-6 { margin: 6rem !important; }
  .m-md-7 { margin: 9rem !important; }
  .mx-md-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
  .mx-md-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
  .my-md-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
  .my-md-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
  .mt-md-6 { margin-top: 6rem !important; }
  .mt-md-7 { margin-top: 9rem !important; }
  .me-md-6 { margin-right: 6rem !important; }
  .me-md-7 { margin-right: 9rem !important; }
  .mb-md-6 { margin-bottom: 6rem !important; }
  .mb-md-7 { margin-bottom: 9rem !important; }
  .ms-md-6 { margin-left: 6rem !important; }
  .ms-md-7 { margin-left: 9rem !important; }
  /* Responsive Padding */
  .px-md-5vw { padding-right: 5vw!important; padding-left: 5vw!important; }
  .px-md-6vw { padding-right: 6vw!important; padding-left: 6vw!important; }
  .px-md-7vw { padding-right: 7vw!important; padding-left: 7vw!important; }
  .px-md-8vw { padding-right: 8vw!important; padding-left: 8vw!important; }
  .px-md-9vw { padding-right: 9vw!important; padding-left: 9vw!important; }
  .ps-md-5vw { padding-left: 5vw!important; }
  .ps-md-6vw { padding-left: 6vw!important; }
  .ps-md-7vw { padding-left: 7vw!important; }
  .ps-md-8vw { padding-left: 8vw!important; }
  .ps-md-9vw { padding-left: 9vw!important; }
  .pe-md-5vw { padding-right: 5vw!important; }
  .pe-md-6vw { padding-right: 6vw!important; }
  .pe-md-7vw { padding-right: 7vw!important; }
  .pe-md-8vw { padding-right: 8vw!important; }
  .pe-md-9vw { padding-right: 9vw!important; }
}

/* // Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  /* Gutters */
  .g-lg-6, .gx-lg-6 { --bs-gutter-x: 6rem; }
  .g-lg-6, .gy-lg-6 { --bs-gutter-y: 6rem; }
  .g-lg-7, .gx-lg-7 { --bs-gutter-x: 9rem; }
  .g-lg-7, .gy-lg-7 { --bs-gutter-y: 9rem; }
  /* Padding */
  .p-lg-6 { padding: 6rem !important; }
  .p-lg-7 { padding: 9rem !important; }
  .px-lg-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
  .px-lg-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
  .py-lg-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
  .py-lg-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
  .pt-lg-6 { padding-top: 6rem !important; }
  .pt-lg-7 { padding-top: 9rem !important; }
  .pe-lg-6 { padding-right: 6rem !important; }
  .pe-lg-7 { padding-right: 9rem !important; }
  .pb-lg-6 { padding-bottom: 6rem !important; }
  .pb-lg-7 { padding-bottom: 9rem !important; }
  .ps-lg-6 { padding-left: 6rem !important; }
  .ps-lg-7 { padding-left: 9rem !important; }
  /* Margin */
  .m-lg-6 { margin: 6rem !important; }
  .m-lg-7 { margin: 9rem !important; }
  .mx-lg-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
  .mx-lg-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
  .my-lg-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
  .my-lg-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
  .mt-lg-6 { margin-top: 6rem !important; }
  .mt-lg-7 { margin-top: 9rem !important; }
  .me-lg-6 { margin-right: 6rem !important; }
  .me-lg-7 { margin-right: 9rem !important; }
  .mb-lg-6 { margin-bottom: 6rem !important; }
  .mb-lg-7 { margin-bottom: 9rem !important; }
  .ms-lg-6 { margin-left: 6rem !important; }
  .ms-lg-7 { margin-left: 9rem !important; }
  /* Responsive Padding */
  .px-lg-5vw { padding-right: 5vw!important; padding-left: 5vw!important; }
  .px-lg-6vw { padding-right: 6vw!important; padding-left: 6vw!important; }
  .px-lg-7vw { padding-right: 7vw!important; padding-left: 7vw!important; }
  .px-lg-8vw { padding-right: 8vw!important; padding-left: 8vw!important; }
  .px-lg-9vw { padding-right: 9vw!important; padding-left: 9vw!important; }
  .ps-lg-5vw { padding-left: 5vw!important; }
  .ps-lg-6vw { padding-left: 6vw!important; }
  .ps-lg-7vw { padding-left: 7vw!important; }
  .ps-lg-8vw { padding-left: 8vw!important; }
  .ps-lg-9vw { padding-left: 9vw!important; }
  .pe-lg-5vw { padding-right: 5vw!important; }
  .pe-lg-6vw { padding-right: 6vw!important; }
  .pe-lg-7vw { padding-right: 7vw!important; }
  .pe-lg-8vw { padding-right: 8vw!important; }
  .pe-lg-9vw { padding-right: 9vw!important; }
}

/* // X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  /* Gutters */
  .g-xl-6, .gx-xl-6 { --bs-gutter-x: 6rem; }
  .g-xl-6, .gy-xl-6 { --bs-gutter-y: 6rem; }
  .g-xl-7, .gx-xl-7 { --bs-gutter-x: 9rem; }
  .g-xl-7, .gy-xl-7 { --bs-gutter-y: 9rem; }
  /* Padding */
  .p-xl-6 { padding: 6rem !important; }
  .p-xl-7 { padding: 9rem !important; }
  .px-xl-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
  .px-xl-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
  .py-xl-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
  .py-xl-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
  .pt-xl-6 { padding-top: 6rem !important; }
  .pt-xl-7 { padding-top: 9rem !important; }
  .pe-xl-6 { padding-right: 6rem !important; }
  .pe-xl-7 { padding-right: 9rem !important; }
  .pb-xl-6 { padding-bottom: 6rem !important; }
  .pb-xl-7 { padding-bottom: 9rem !important; }
  .ps-xl-6 { padding-left: 6rem !important; }
  .ps-xl-7 { padding-left: 9rem !important; }
  /* Margin */
  .m-xl-6 { margin: 6rem !important; }
  .m-xl-7 { margin: 9rem !important; }
  .mx-xl-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
  .mx-xl-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
  .my-xl-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
  .my-xl-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
  .mt-xl-6 { margin-top: 6rem !important; }
  .mt-xl-7 { margin-top: 9rem !important; }
  .me-xl-6 { margin-right: 6rem !important; }
  .me-xl-7 { margin-right: 9rem !important; }
  .mb-xl-6 { margin-bottom: 6rem !important; }
  .mb-xl-7 { margin-bottom: 9rem !important; }
  .ms-xl-6 { margin-left: 6rem !important; }
  .ms-xl-7 { margin-left: 9rem !important; }
  /* Responsive Padding */
  .px-xl-5vw { padding-right: 5vw!important; padding-left: 5vw!important; }
  .px-xl-6vw { padding-right: 6vw!important; padding-left: 6vw!important; }
  .px-xl-7vw { padding-right: 7vw!important; padding-left: 7vw!important; }
  .px-xl-8vw { padding-right: 8vw!important; padding-left: 8vw!important; }
  .px-xl-9vw { padding-right: 9vw!important; padding-left: 9vw!important; }
  .ps-xl-5vw { padding-left: 5vw!important; }
  .ps-xl-6vw { padding-left: 6vw!important; }
  .ps-xl-7vw { padding-left: 7vw!important; }
  .ps-xl-8vw { padding-left: 8vw!important; }
  .ps-xl-9vw { padding-left: 9vw!important; }
  .pe-xl-5vw { padding-right: 5vw!important; }
  .pe-xl-6vw { padding-right: 6vw!important; }
  .pe-xl-7vw { padding-right: 7vw!important; }
  .pe-xl-8vw { padding-right: 8vw!important; }
  .pe-xl-9vw { padding-right: 9vw!important; }
}

/* // XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
  /* Gutters */
  .g-xxl-6, .gx-xxl-6 { --bs-gutter-x: 6rem; }
  .g-xxl-6, .gy-xxl-6 { --bs-gutter-y: 6rem; }
  .g-xxl-7, .gx-xxl-7 { --bs-gutter-x: 9rem; }
  .g-xxl-7, .gy-xxl-7 { --bs-gutter-y: 9rem; }
  /* Padding */
  .p-xxl-6 { padding: 6rem !important; }
  .p-xxl-7 { padding: 9rem !important; }
  .px-xxl-6 { padding-right: 6rem !important; padding-left: 6rem !important; }
  .px-xxl-7 { padding-right: 9rem !important; padding-left: 9rem !important; }
  .py-xxl-6 { padding-top: 6rem !important; padding-bottom: 6rem !important; }
  .py-xxl-7 { padding-top: 9rem !important; padding-bottom: 9rem !important; }
  .pt-xxl-6 { padding-top: 6rem !important; }
  .pt-xxl-7 { padding-top: 9rem !important; }
  .pe-xxl-6 { padding-right: 6rem !important; }
  .pe-xxl-7 { padding-right: 9rem !important; }
  .pb-xxl-6 { padding-bottom: 6rem !important; }
  .pb-xxl-7 { padding-bottom: 9rem !important; }
  .ps-xxl-6 { padding-left: 6rem !important; }
  .ps-xxl-7 { padding-left: 9rem !important; }
  /* Margin */
  .m-xxl-6 { margin: 6rem !important; }
  .m-xxl-7 { margin: 9rem !important; }
  .mx-xxl-6 { margin-right: 6rem !important; margin-left: 6rem !important; }
  .mx-xxl-7 { margin-right: 9rem !important; margin-left: 9rem !important; }
  .my-xxl-6 { margin-top: 6rem !important; margin-bottom: 6rem !important; }
  .my-xxl-7 { margin-top: 9rem !important; margin-bottom: 9rem !important; }
  .mt-xxl-6 { margin-top: 6rem !important; }
  .mt-xxl-7 { margin-top: 9rem !important; }
  .me-xxl-6 { margin-right: 6rem !important; }
  .me-xxl-7 { margin-right: 9rem !important; }
  .mb-xxl-6 { margin-bottom: 6rem !important; }
  .mb-xxl-7 { margin-bottom: 9rem !important; }
  .ms-xxl-6 { margin-left: 6rem !important; }
  .ms-xxl-7 { margin-left: 9rem !important; }
  /* Responsive Padding */
  .px-xxl-5vw { padding-right: 5vw!important; padding-left: 5vw!important; }
  .px-xxl-6vw { padding-right: 6vw!important; padding-left: 6vw!important; }
  .px-xxl-7vw { padding-right: 7vw!important; padding-left: 7vw!important; }
  .px-xxl-8vw { padding-right: 8vw!important; padding-left: 8vw!important; }
  .px-xxl-9vw { padding-right: 9vw!important; padding-left: 9vw!important; }
  .ps-xxl-5vw { padding-left: 5vw!important; }
  .ps-xxl-6vw { padding-left: 6vw!important; }
  .ps-xxl-7vw { padding-left: 7vw!important; }
  .ps-xxl-8vw { padding-left: 8vw!important; }
  .ps-xxl-9vw { padding-left: 9vw!important; }
  .pe-xxl-5vw { padding-right: 5vw!important; }
  .pe-xxl-6vw { padding-right: 6vw!important; }
  .pe-xxl-7vw { padding-right: 7vw!important; }
  .pe-xxl-8vw { padding-right: 8vw!important; }
  .pe-xxl-9vw { padding-right: 9vw!important; }
}

/* Animations */
@media (min-width: 992px) and (prefers-reduced-motion: no-preference) {

:root {
  --animation-x: 0;
  --animation-y: 0;
  --animation-z: 0;
  --animation-rotate-y: 0deg;
  --animation-rotate-x: 0deg;
  --animation-perspective: none;
  --animation-opacity: 1;
  --animation-scale: 1;
  --animation-distance: 15%;
  --animation-distance-min: 5%;
  --animation-distance-full: 100%;
  --animation-distance-neg: calc(var(--animation-distance) - var(--animation-distance) * 2);
  --animation-scale-min: .8;
  --animation-scale-min-neg: calc(var(--animation-scale-min) - var(--animation-scale-min) * 2);
}

[data-lazy], [data-stagger], [data-animation] { opacity: 0; transition: opacity 0.5s ease; }
[data-lazy][class*='animated'], [data-stagger]:has([class*='animated']), [data-animation]:has([class*='animated']) { opacity: 1; }

[class*="animated"] { -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration: var(--animation-duration); animation-duration: var(--animation-duration); }
[class*="animate-"], [data-delay] { animation-delay: var(--animation-delay); -webkit-animation-delay: var(--animation-delay); }

.animated-fast { --animation-duration: .5s; }
.animated { --animation-duration: 1s; }
.animated-slow { --animation-duration: 1.5s; }
.animated-slower { --animation-duration: 2s; }
.animated-slowest { --animation-duration: 2.5s; }

.animated.infinite { -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }
.animated.hinge { --animation-duration: 2s; }
.animated.flipOutX, .animated.flipOutY, .animated.bounceIn, .animated.bounceOut { --animation-duration: .75s; }

/* Animation Delay */
.animate-1 { -webkit-animation-delay: 0.25s; animation-delay: 0.25s; }
.animate-2 { -webkit-animation-delay: 0.5s; animation-delay: 0.5s; }
.animate-3 { -webkit-animation-delay: 0.75s; animation-delay: 0.75s; }
.animate-4 { -webkit-animation-delay: 1s; animation-delay: 1s; }
.animate-5 { -webkit-animation-delay: 1.25s; animation-delay: 1.25s; }
.animate-6 { -webkit-animation-delay: 1.5s; animation-delay: 1.5s; }
.animate-7 { -webkit-animation-delay: 1.75s; animation-delay: 1.75s; }
.animate-8 { -webkit-animation-delay: 2s; animation-delay: 2s; }
.animate-9 { -webkit-animation-delay: 2.25s; animation-delay: 2.25s; }
.animate-10 { -webkit-animation-delay: 2.5s; animation-delay: 2.5s; }

/* Animate In - All Animations */
@-webkit-keyframes animateIn {
  from {
    opacity: var(--animation-opacity);
    -webkit-transform: translate3d(var(--animation-x), var(--animation-y), 0) scale3d(var(--animation-scale), var(--animation-scale), var(--animation-scale)) rotateY(var(--animation-rotate-y)) rotateX(var(--animation-rotate-x)) perspective(var(--animation-perspective));
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateY(0deg) rotateX(0deg) perspective(var(--animation-perspective));
  }
}

@keyframes animateIn {
  from {
    opacity: var(--animation-opacity);
    transform: translate3d(var(--animation-x), var(--animation-y), 0) scale3d(var(--animation-scale), var(--animation-scale), var(--animation-scale)) rotateY(var(--animation-rotate-y)) rotateX(var(--animation-rotate-x)) perspective(var(--animation-perspective));
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateY(0deg) rotateX(0deg) perspective(var(--animation-perspective));
  }
}

/* Fade In - Fade Only - no motion */
@-webkit-keyframes fadeIn {
  from { opacity: var(--animation-opacity); }
  to { opacity: 1; }
}
@keyframes fadeIn {
  from { opacity: var(--animation-opacity); }
  to { opacity: 1; }
}


[class*='slideIn'], [class*='fade']:not(.fadeIn), [class*='zoomIn'] {
  --animation-opacity: 0;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
  -webkit-animation-name: animateIn;
  animation-name: animateIn;
}

.fadeIn {
  --animation-opacity: 0;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

/* Direction Mods */
[class*='slideIn'] { --animation-opacity: 1; }
[class*='zoomIn'] { --animation-scale: .8; }
[class*='Far'] { --animation-distance: 100%; }
[class*='Down'] { --animation-y:  calc(var(--animation-distance) * -1); }
[class*='Up'] { --animation-y: var(--animation-distance); }
[class*='Left'] { --animation-x: calc(var(--animation-distance) * -1); }
[class*='Right'] { --animation-x: var(--animation-distance); }
[class*='Min']:has([class*='zoomIn']), .zoomInMin { --animation-scale: .95; }
[class*='Min'] { --animation-distance: 5%; }
[class*='Big'] { --animation-distance: 2000px; }

}
