/**
 * Color classes and default styling are in /assets/main.css, focus your efforts there
 * @import external fonts at top of this page before default.css
 * remove comment for dark-mode.css if you want to enable that -- will not be 100%, you will need to fix minor things
 */
@import url('https://use.typekit.net/sli2zji.css');
@import url("./assets/default-settings.css");
/** @import url("assets/dark-mode.css"); */

.lead { font-size: 1.75rem; }
p:empty { display: none; }
a, a:visited { text-decoration: none; }
a:not(.btn):not(.nav-link):hover, a:not(.btn):not(.nav-link):focus, a:not(.btn):not(.nav-link):active { text-decoration: underline; }
.btn-sm { --bs-btn-font-size: 1rem; }
.btn { --bs-btn-font-weight: 900; --bs-btn-border-radius: 0; text-transform: uppercase; }
.btn:not(.btn-sm):not(.btn-lg) { --bs-btn-font-size: 1.25rem; }
.btn-lg { --bs-btn-font-size: 1.75rem; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background: #ffffff; color: rgb(var(--bs-primary-rgb)); }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { text-transform: uppercase; line-height: 1.05; }
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 { font-weight: 900; line-height: 1.05; }
body:not(.home) #content { margin-top: 2rem; }

/** navbar */
a.navbar-brand { max-width: min(325px, 75%); }
.brand-logo { max-width: min(325px, 100%); padding: 1rem 0; }
.navbar .container { align-items: flex-end; }
body > header { padding-bottom: 10px; }
#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary { display: block; background: white; position: absolute; top: 50px; width: 100%; height: auto; }
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner, #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before, #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after { background-color: rgb( var(--bs-black-rgb) ); }

/** carousel */
body.home .carousel-caption { position: absolute; background: #d4d5d6; z-index: 10; }
body:not(.home) .carousel-item { max-height: 82px; }
body:not(.home) .carousel-item .aspect-image-inner { position: relative; height: 100%; }
body:not(.home) .carousel-item .aspect-image-inner .carousel-caption { position: relative; top: 50%; transform: translateY(-50%); }
body:not(.home) .carousel-item .aspect-image-inner .carousel-caption h1 { margin: 0; }

/** google reviews widget */
.rpi-slider .rpi-header .rpi-card-inner { background: #f5f5f5; }

/** team */
#team-cardstack .card { border: 0; }
#team-cardstack img { border-radius: 50%; max-width: 300px; margin: auto; }

/** reduce list */
#toggleBtn { position: absolute; bottom: 5px; right: 5px; padding: 5px 10px; font-size: 12px; background: rgba(var(--bs-primary-rgb), 1); color: var(--jwbs-active-text-on-primary-bg-color); border: none; border-radius: 4px; cursor: pointer; z-index: 10; }
#toggleBtn:hover { background: rgba(var(--bs-primary-rgb), .8); }

/** footer */
.concrete-pad { background: url('/wp-content/uploads/2025/06/concrete-pad.jpg') no-repeat center center; background-size: cover; }

/** media queries */
/** Small devices (landscape phones, 576px and up) [-sm] */
@media only screen and (min-width : 576px) {
  .home .aspect-image-inner { position: relative; height: 100%; }
  .home .carousel-caption { position: relative; max-width: 450px; top: 50%; bottom: auto; transform: translateY(-50%); margin-right: calc((100vw - 540px) / 2); left: calc(100vw - ((100vw - 540px) / 2) - 440px); }
}

/** Medium devices (tablets, 768px and up) [-md] */
@media only screen and (min-width : 768px) {
  .home .carousel-caption { margin-right: calc((100vw - 720px) / 2); left: calc(100vw - ((100vw - 720px) / 2) - 430px); }
}

/** Large devices (desktops, 992px and up) [-lg] */
@media only screen and (min-width : 992px) {
  #menu-main-nav > li > a { border-right: 1px solid #000; padding: 0 20px; }
  #menu-main-nav > li:last-of-type > a, #menu-main-nav > li:nth-last-of-type(2) > a { border-right-width: 0; }
  #mainMenuNav.show > .navbar-nav > .menu-item > .dropdown-toggle::after, #mainMenuNav.collapsing > .navbar-nav > .menu-item > .dropdown-toggle::after { right: 12px; }
  .home .carousel-caption { margin-right: calc((100vw - 960px) / 2); left: calc(100vw - ((100vw - 960px) / 2) - 430px); }
  #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { padding-left: 14px !important; padding-right: 14px !important; }
}

/** X-Large devices (large desktops, 1200px and up) [-xl] */
@media only screen and (min-width : 1200px) {
  .home .carousel-caption { margin-right: calc((100vw - 1140px) / 2); left: calc(100vw - ((100vw - 1140px) / 2) - 430px); }
}

/** larger desktops, 1400px and up [-xxl] */
@media only screen and (min-width : 1400px) {
  .home .carousel-caption { margin-right: calc((100vw - 1320px) / 2); left: calc(100vw - ((100vw - 1320px) / 2) - 450px); }
}