


@font-face { font-family: 'Montserrat'; src: local('Arial'); font-weight: 100 500; }
@font-face { font-family: 'Montserrat'; src: local('Arial Bold'), local('Arial-BoldMT'); font-weight: 600 700; }
@font-face { font-family: 'Montserrat'; src: local('Arial Italic'), local('Arial-ItalicMT'); font-style: italic; font-weight: 100 500; }
@font-face { font-family: 'Montserrat'; src: local('Arial Bold Italic'), local('Arial-BoldItalicMT'); font-style: italic; font-weight: 600 900; }
@font-face { font-family: 'Poppins'; src: local('Arial'); font-weight: 100 500; }
@font-face { font-family: 'Poppins'; src: local('Arial Bold'), local('Arial-BoldMT'); font-weight: 600 700; }
@font-face { font-family: 'Work Sans'; src: local('Arial'); font-weight: 100 500; }
@font-face { font-family: 'Work Sans'; src: local('Arial Italic'), local('Arial-ItalicMT'); font-style: italic; font-weight: 100 500; }
@font-face { font-family: 'Work Sans'; src: local('Arial Bold'), local('Arial-BoldMT'); font-weight: 600 700; }
@font-face { font-family: 'Work Sans'; src: local('Arial Bold Italic'), local('Arial-BoldItalicMT'); font-style: italic; font-weight: 600 900; }
@font-face { font-family: 'Montserrat'; src: url('/fonts/inter-var-latin.woff2') format('woff2'); font-weight: 800 900; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('/fonts/inter-var-latin.woff2') format('woff2'); font-weight: 800 900; font-display: swap; }
@font-face { font-family: 'Work Sans'; src: url('/fonts/inter-var-latin.woff2') format('woff2'); font-weight: 800 900; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/fonts/inter-var-latin.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }

h1, h2, h3, h4:not(#header h4), h5:not(#header h5), h6, .button, #hero .hero-title, #hero .hero-figure, #hero .hero-submit { font-family: 'Inter', Arial, sans-serif !important; }


@media only screen and (min-width: 981px) {
  #services .list a:nth-child(-n+2) li { width: 48.5%; }
  #services .list a:nth-child(2) li { margin-right: 0; }
  #services .list a:nth-child(n+3) li { width: 31.33%; }
  #services .list a:nth-child(-n+2) li .photo img { width: 100%; height: 100%; object-fit: cover; }
}


#services .list li .fce-go { position: absolute; right: 24px; bottom: 24px; z-index: 5; display: grid; place-items: center; width: 40px; height: 40px; border: 2px solid #D8B98A; border-radius: 50%; background: transparent; color: #D8B98A; box-sizing: border-box; transition: transform 0.2s ease, background 0.2s ease; }
#services .list li .fce-go i { position: static; margin: 0; font-size: 15px; color: #D8B98A; transition: color 0.2s ease; }
#services .list a:hover li .fce-go { transform: translateX(4px); background: #D8B98A; }
#services .list a:hover li .fce-go i { color: #30353A; }
#services .list li .overlay { transition: opacity 0.2s ease; }
#services .list a:hover li .overlay { opacity: 0.62; }
#services .list a:focus-visible { outline: none; }
#services .list a:focus-visible li { outline: 3px solid #D8B98A; outline-offset: 3px; }


#about { padding-top: 20px; }

@media only screen and (min-width: 981px) { #about { padding-bottom: 30px; } }
#about .about-title { margin: 0 0 14px; font-weight: 700; font-size: 22px; line-height: 1.3; color: #D8B98A; text-transform: uppercase; letter-spacing: 1px; }
@media only screen and (max-width: 980px) {
  #about { padding-top: 0; }
  #about .about-icon { display: none; }
  #about .about-title { font-size: 19px; }
}


#call h1 { font-weight: 700; }


#header .logo img, #suppliers img, #footer .underlay img { height: auto; }


@media only screen and (max-width: 980px) {
  #header .logo img { transform: scale(1.08); transform-origin: left center; }
}


@media only screen and (max-width: 980px) {
  :is(#about, #reviews, #gallery, #why-us, #financing, #faq, #quote, #footer) :is(h2, h3) { line-height: 1.2 !important; }
}


#header .menu li.fce-has-sub, #header .menu li.menu-item-has-children { position: relative; }
#header .menu li .fce-sub { display: none; position: absolute; top: 100%; bottom: auto; left: 50%; margin: 0; padding: 8px 0; width: 250px; transform: translateX(-50%); list-style: none; background: #fff; border-top: 3px solid #D8B98A; z-index: 50; box-shadow: 0 10px 34px -17px rgba(30, 34, 38, 0.37); }
#header .menu li:hover .fce-sub, #header .menu li:focus-within .fce-sub { display: block; }
#header .menu li .fce-sub li { float: none; display: block; margin: 0; padding: 0; border: 0; text-align: left; }
#header .menu li .fce-sub li:hover { padding: 0; border: 0; background: #f4f4f4; }
#header .menu li .fce-sub a { display: block; padding: 10px 20px; color: #30353A; text-decoration: none; }
#header .menu li .fce-sub a:focus-visible { outline: 2px solid #30353A; outline-offset: -2px; }
#header .menu .fce-sub-toggle { margin: 0; padding: 0; border: 0; background: none; color: #30353A; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; }
#header .menu .fce-sub-toggle:focus-visible { outline: 2px solid #30353A; outline-offset: 4px; }
#header .menu .fce-sub-toggle i { margin-left: 4px; font-size: 10px; vertical-align: 1px; }


#navigation { background: #fff; overflow-x: hidden; overflow-y: auto; }
#navigation .fce-m { min-height: 100%; padding: 14px 20px 32px; box-sizing: border-box; }
#navigation .fce-m__top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 14px; border-bottom: 1px solid #e2e4e8; }
#navigation .fce-m__logo img { display: block; width: auto; height: 46px; }
#navigation .close { position: static; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: #f4f4f4; color: #30353A; font-size: 18px; cursor: pointer; transition: none; }
#navigation .close:hover { transform: none; background: #e9ebee; }
#navigation .fce-m__list { list-style: none; margin: 0; padding: 0; }
#navigation .fce-m__list > li { margin: 0; padding: 0; border-bottom: 1px solid #e2e4e8; }
#navigation .fce-m__list a, #navigation .fce-m__list summary { display: flex; align-items: center; justify-content: space-between; padding: 16px 2px; font-family: 'Inter', Arial, sans-serif; font-size: 18px; font-weight: 700; color: #30353A; text-decoration: none; cursor: pointer; list-style: none; }
#navigation .fce-m__list summary::-webkit-details-marker { display: none; }
#navigation .fce-m__list summary i { font-size: 14px; color: #8a8f94; transition: transform 0.2s ease; }
#navigation .fce-m__list details[open] summary i { transform: rotate(180deg); }
#navigation .fce-m__sub { list-style: none; margin: 0 0 14px 2px; padding: 0 0 0 16px; border-left: 2px solid #D8B98A; }
#navigation .fce-m__sub li { margin: 0; padding: 0; }
#navigation .fce-m__sub a { padding: 9px 0; font-size: 16px; font-weight: 600; color: #555b61; }
#navigation .fce-m__list a:focus-visible, #navigation .fce-m__list summary:focus-visible, #navigation .fce-m__btn:focus-visible, #navigation .close:focus-visible { outline: 2px solid #30353A; outline-offset: 2px; }
#navigation .fce-m__cta { display: grid; gap: 12px; margin-top: 28px; }
#navigation .fce-m__btn { display: block; padding: 14px 20px; border: 2px solid #30353A; border-radius: 500px; text-align: center; font-family: 'Inter', Arial, sans-serif; font-size: 15px; font-weight: 700; color: #30353A; text-decoration: none; }
#navigation .fce-m__btn--quote { background: #D8B98A; border-color: #D8B98A; font-weight: 800; }
#navigation .fce-m__social { display: flex; justify-content: center; gap: 8px; margin-top: 22px; }
#navigation .fce-m__social a { display: grid; place-items: center; width: 44px; height: 44px; color: #30353A; font-size: 20px; }


@media only screen and (max-width: 980px) {
  #suppliers { padding-bottom: 60px; }
}


#hero + #reviews { padding-top: 50px; }
@media only screen and (max-width: 980px) {
  #hero + #reviews { padding-top: 20px; }
}


@media only screen and (max-width: 479px) {
  #about, #suppliers, #services .list { padding-left: 24px; padding-right: 24px; }
}


#service-four .photo picture { display: block; height: 100%; }
#services .list #service-four .photo img { width: 100%; height: 100%; object-fit: cover; object-position: 80% 42%; }


#services .list li.is-pending { opacity: 0; }
#services .list li.is-in { animation: fce-rise 0.6s cubic-bezier(0.22, 0.61, 0.36, 1) both; }
@keyframes fce-rise {
  from { opacity: 0; transform: translateY(40px); }
  to { opacity: 1; transform: none; }
}
