@charset "UTF-8";
:root {
  color-scheme: dark light;
  /* Default = dark mode */
  --stone-bg: hsl(0, 0%, 3%);
  --stone-bg-elevated: hsla(0, 0%, 100%, 0.08);
  --stone-nav-bg: hsla(0, 0%, 0%, 0.9);
  --stone-nav-bg-secondary: hsla(0, 0%, 3%, 0.8);
  --stone-nav-dropdown: hsla(0, 0%, 0%, 0.95);
  --stone-surface: hsla(0, 0%, 7%, 0.92);
  --stone-surface-hover: hsla(0, 0%, 9%, 0.92);
  --stone-surface-border: hsla(0, 0%, 100%, 0.16);
  --stone-header-block: hsl(216, 49%, 42%); /*hsl(202, 58%, 65%);*/
  --stone-text: hsl(210, 30%, 96%);
  --stone-secondary-text: hsl(202, 57%, 77%);
  --stone-text-muted: hsl(213, 19%, 81%);
  --stone-link: hsl(202, 66%, 72%);
  --stone-emphasis: var(--stone-link);
  --stone-link-accent: var(--stone-link);
  --stone-link-hover: hsl(0, 0%, 100%);
  --stone-overlay-strong: hsla(216, 72%, 14%, 0.88);
  --stone-banner-overlay: var(--stone-overlay-strong);
  --stone-link-accent-hover: hsla(202, 66%, 72%, 0.8);
  --stone-glass-card-bg: hsla(218, 40%, 13%, 0.78);
  --stone-glass-card-border: hsla(202, 66%, 72%, 0.28);
  --stone-glass-card-shadow: 0 6px 10px hsla(0, 0%, 0%, 0.28);
  --stone-shadow: 0 10px 24px hsla(0, 0%, 0%, 0.34);
  --stone-soft-border: hsla(0, 0%, 100%, 0.2);
  --stone-softer-border: hsla(0, 0%, 100%, 0.1);
  --stone-container-gutter: 500vw; /* Effectively infinite gutter to allow edge-to-edge layouts without needing to override padding on each component */
  --stone-slider-arrow-gap: 1rem;
  --stone-home-contact-card-bg: var(--stone-surface);
  --stone-home-contact-card-border: var(--stone-surface-border);
  --stone-home-contact-details-overlay: var(--stone-overlay-strong);
  --stone-home-contact-details-text: hsl(0, 0%, 100%);
  --stone-home-contact-form-text: var(--stone-text);
  --stone-home-contact-form-text-muted: var(--stone-text-muted);
  --stone-home-contact-form-link: var(--stone-link);
  --stone-home-contact-form-input-bg: var(--stone-bg-elevated);
  --stone-home-contact-form-input-border: var(--stone-surface-border);
  --stone-home-contact-form-focus: var(--stone-link);
  --stone-home-contact-form-label: hsla(0, 0%, 100%, 0.9);
  --stone-home-contact-form-placeholder: hsla(0, 0%, 100%, 0.62);
  --stone-home-contact-form-helper: hsla(0, 0%, 100%, 0.78);
  --stone-home-contact-form-focus-ring: hsla(202, 66%, 72%, 0.18);
  --stone-btn-shape-bg: hsl(216, 49%, 42%);
  --stone-btn-shape-overlay: hsl(216, 72%, 14%);
  --stone-btn-shape-hover: hsl(202, 66%, 72%);
  --stone-btn-roller-border: hsl(202, 66%, 72%);
  --stone-btn-roller-bg: hsl(216, 72%, 14%);
  --stone-btn-roller-text: hsl(0, 0%, 100%);
  --stone-btn-roller-hover-text: hsl(216, 72%, 14%);
  --stone-btn-roller-gradient-start: hsl(202, 66%, 72%);
  --stone-btn-roller-gradient-end: hsl(216, 49%, 42%);
  --stone-brand-accent: hsl(205, 56%, 51%);
  --stone-brand-surface: hsl(216, 49%, 42%);
  --stone-brand-surface-half: hsla(216, 49%, 42%, 0.5);
  --stone-brand-deep: hsl(216, 72%, 14%);
  --stone-brand-highlight: hsl(202, 66%, 72%);
  --stone-brand-bright: hsl(199, 83%, 69%);
  /* Base blue gradient set (shared primitives). */
  --stone-gradient-grid-vertical: linear-gradient(hsla(202, 90%, 60%, 0.03) 1px, transparent 1px);
  --stone-gradient-grid-horizontal: linear-gradient(90deg, hsla(202, 90%, 60%, 0.03) 1px, transparent 1px);
  --stone-gradient-widget-blue-soft: linear-gradient(265deg, var(--stone-brand-surface) 0%, var(--stone-brand-highlight) 100%);
  --stone-gradient-widget-blue-soft-reverse: linear-gradient(to bottom, var(--stone-brand-highlight) 0%, var(--stone-brand-surface) 100%);
  --stone-gradient-widget-blue-deep: linear-gradient(251deg, var(--stone-brand-surface), var(--stone-brand-deep));
  --stone-gradient-overlay-blue-90: linear-gradient(90deg, hsl(215, 61%, 20%) 10%, hsla(215, 52%, 35%, 0.8));
  --stone-gradient-overlay-blue-45-fade: linear-gradient(45deg, hsl(215, 61%, 20%) 0%, hsla(215, 52%, 35%, 0) 100%);
  --stone-gradient-footer-glass-blue: linear-gradient(120deg, hsla(214, 44%, 35%, 0.34), hsla(214, 44%, 21%, 0.26));
  --stone-gradient-testimonial-modal-blue: linear-gradient(145deg, hsla(216, 53%, 7%, 0.94), hsla(214, 47%, 12%, 0.9));
  /* Purpose-driven aliases. */
  --stone-widget-bg-gradient: linear-gradient(265deg, var(--stone-brand-surface) 0%, hsl(202, 60%, 60%) 100%);
  --stone-widget-bg-solid: var(--stone-brand-surface);
  --stone-home-rating-card-gradient: var(--stone-widget-bg-gradient);
  --stone-home-video-play-gradient: var(--stone-gradient-widget-blue-soft-reverse);
  --stone-home-features-gradient: var(--stone-gradient-widget-blue-deep);
  --stone-footer-widget-gradient: var(--stone-gradient-footer-glass-blue);
  --stone-cpted-band-gradient: linear-gradient(120deg, var(--stone-header-block), var(--stone-overlay-strong));
  --stone-progress-fill-gradient: linear-gradient(265deg, var(--stone-btn-shape-bg), var(--stone-link));
  --stone-engineering-overlay-gradient: var(--stone-gradient-overlay-blue-90);
  --stone-public-adjusting-overlay-gradient: var(--stone-gradient-overlay-blue-45-fade);
  --stone-testimonial-modal-gradient: var(--stone-gradient-testimonial-modal-blue);
  --stone-btn-roller-gradient: linear-gradient(
    to bottom,
    var(--stone-btn-roller-gradient-start),
    var(--stone-btn-roller-gradient-end)
  );
  --stone-contact-info-icon-bg: var(--stone-brand-surface);
  /* White-backing content wrapper tokens: use only when transparent/dark logos need forced white backing. */
  --stone-content-white-wrap-bg: hsl(0, 0%, 100%);
  --stone-content-white-wrap-frame-bg: var(--stone-surface);
  --stone-content-white-wrap-frame-size: 14px;
  --background-gradient: var(--stone-engineering-overlay-gradient);
}

/* Honor OS/browser preference for light mode */
html,
body,
.site-wrapper,
.site-content {
  background: transparent;
}

body {
  background-color: var(--stone-bg);
  background-image: var(--stone-gradient-grid-vertical), var(--stone-gradient-grid-horizontal);
  background-size: 60px 60px;
  color: var(--stone-text);
}

a {
  color: var(--stone-link);
}

a:hover,
a:focus-visible {
  color: var(--stone-link-hover);
}

.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.l-site {
  min-height: 100vh;
  background: var(--stone-bg);
  color: var(--stone-text);
}

.l-surface {
  background: var(--stone-surface);
  border: 1px solid var(--stone-surface-border);
  box-shadow: var(--stone-shadow);
}

/* Global Gravity Forms baseline; page files should only add exceptions. */
.gform_wrapper .gfield {
  margin-bottom: 1.5rem;
}

@media (min-width: 1536px) {
  .gform_wrapper .gfield {
    margin-bottom: 1.75rem;
  }
}
.gform_wrapper .gform-field-label,
.gform_wrapper .gfield_label {
  font-weight: 600;
}

.gform_wrapper .gfield_required_text {
  display: none;
}

.gform_wrapper .gform_footer,
.gform_wrapper .gform-footer {
  display: block;
  margin-top: 1rem;
  text-align: center;
}

.gform_wrapper .gform_ajax_spinner {
  display: none !important;
}

/* Neutralize legacy wrapper backgrounds from theme/style.css for home-contact form section. */
.home-contact.is-alt .gform_footer,
.home-contact.is-alt .gform-footer,
.home-contact.is-alt .gform_footer:hover,
.home-contact.is-alt .gform-footer:hover {
  background: transparent !important;
}
.home-contact.is-alt .gform_footer::before,
.home-contact.is-alt .gform-footer::before,
.home-contact.is-alt .gform_footer:hover::before,
.home-contact.is-alt .gform-footer:hover::before {
  display: none !important;
}

.banner {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-top: 70px;
  background-size: cover;
}
.banner > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: block;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  object-fit: cover;
}
.banner.is-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-banner-overlay);
}
@media (min-width: 640px) {
  .banner {
    margin-top: 96px;
  }
}
@media (min-width: 1280px) {
  .banner {
    margin-top: 115px;
  }
}

.banner-content {
  display: flex;
  align-items: center;
  min-height: 250px;
  padding-top: 3rem;
  padding-bottom: 3rem;
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.125rem;
  font-weight: 700;
}
.banner-content h1 {
  color: #ffffff;
}
@media (max-width: 639.98px) {
  .banner-content {
    justify-content: center;
    text-align: center;
  }
}
@media (min-width: 640px) {
  .banner-content {
    min-height: 350px;
    font-size: 1.3125rem;
  }
}
@media (min-width: 1024px) {
  .banner-content {
    min-height: 450px;
    font-size: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .banner-content {
    min-height: 480px;
  }
  .banner-content h1 {
    font-size: 3.75rem;
  }
}
@media (min-width: 1024px) {
  .banner-content.is-small h1 {
    font-size: 2.75rem;
  }
}
@media (min-width: 1024px) {
  .banner-content.is-right {
    max-width: 571px;
    margin-left: auto;
  }
}
@media (min-width: 1536px) {
  .banner-content.is-right {
    min-height: 46.875rem;
  }
}

.banner-date {
  display: block;
  margin-top: 0.5rem;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.875rem;
  font-weight: 400;
}

.banner-sr-heading {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.banner-bottom {
  display: none !important; /* Formerly block */
  width: calc(100% + var(--stone-container-gutter));
  max-width: calc(100% + var(--stone-container-gutter));
  margin-left: calc(-1 * var(--stone-container-gutter));
  color: #ffffff;
  font-size: 1rem;
  padding: 0.875rem 1rem 0.625rem calc(1rem + var(--stone-container-gutter));
  background: var(--stone-glass-card-bg);
  border-top-right-radius: 0;
}
@media (max-width: 767.98px) {
  .banner-bottom {
    width: 100vw;
    max-width: 100vw;
    min-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    box-sizing: border-box;
    padding: 0.75rem 1.25rem;
  }
}
.banner-bottom .part-inner {
  position: static;
}
.banner-bottom .part-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.625rem 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767.98px) {
  .banner-bottom .part-list {
    justify-content: center;
    gap: 0.75rem 1.5rem;
  }
}
.banner-bottom .part-item {
  margin: 0;
  padding: 0;
}
.banner-bottom .part-link,
.banner-bottom .part-link:hover,
.banner-bottom .part-link:focus-visible {
  color: #ffffff;
  text-decoration: none;
}
@media (min-width: 992px) {
  .banner-bottom {
    display: none !important; /* Formerly inline-block */
    width: fit-content;
    max-width: calc(100% + var(--stone-container-gutter));
    font-size: 1.125rem;
    padding: 0.875rem 5rem 0.625rem calc(1rem + var(--stone-container-gutter));
    border-top-right-radius: 9999px;
  }
  .banner-bottom .part-item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.28);
    transform: translate(-50%, -50%);
  }
  .banner-bottom .part-item {
    position: relative;
    padding-left: 1rem;
  }
  .banner-bottom .part-item:first-child {
    padding-left: 0;
  }
  .banner-bottom .part-item:first-child::before {
    content: none;
  }
}
@media (min-width: 1024px) {
  .banner-bottom {
    padding-top: 1rem;
    padding-bottom: 0.75rem;
  }
}
@media (min-width: 1280px) {
  .banner-bottom {
    font-size: 1.25rem;
  }
}

.banner-text-responsive {
  width: auto;
}
@media (min-width: 992px) {
  .banner-text-responsive {
    width: auto;
  }
}
@media (min-width: 880px) {
  .banner-text-responsive .part-list {
    flex-wrap: nowrap;
    text-wrap: nowrap;
  }
}

/* Undo legacy theme/style.css homepage hide rule for banner internals. */
.clsFix.home .banner .banner-content {
  display: flex !important;
}
@media (max-width: 767.98px) {
  .clsFix.home .banner {
    height: auto !important;
    min-height: 440px;
  }
  .clsFix.home .banner .banner-bottom {
    display: block !important;
  }
}

.shadow-\[0px_4px_20px_0px_rgba\(0\,21\,121\,0\.1\)\] {
  box-shadow: none !important;
  border: 1px solid var(--stone-soft-border) !important;
}

.testimonials-card .part-media {
  border: 1px solid var(--stone-soft-border) !important;
}

.list-check ul li::before,
ul.list-check li::before {
  color: var(--stone-text);
}

.site-header {
  background: linear-gradient(180deg, var(--stone-nav-bg-secondary) 0%, var(--stone-nav-bg) 100%);
  z-index: 1300; /* Keep nav dropdowns above animated/homepage section layers. */
  border-bottom: 1px solid var(--stone-softer-border);
}
.site-header .part-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.site-header .part-brand {
  display: inline-flex;
  align-items: center;
}
.site-header .part-nav {
  margin-left: auto;
}
.site-header .part-actions {
  display: flex;
  align-items: center;
}
.site-header .part-actions .part-cta {
  box-shadow: none;
  margin-left: 2.5rem;
}
@media (max-width: 767.98px) {
  .site-header .part-actions .part-cta {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 50;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    margin-left: 0;
  }
  .site-header .part-actions .part-cta::before {
    display: none;
  }
}
.site-header .part-toggle {
  order: 1;
  margin-left: 0.75rem;
}
.site-header .part-logo {
  margin-bottom: 0;
  max-width: 8.1875rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 0.15s;
}
@media (min-width: 768px) {
  .site-header .part-logo {
    max-width: 10.1875rem;
  }
}
@media (min-width: 992px) {
  .site-header .part-logo {
    max-width: 12.1875rem;
  }
}
@media (min-width: 1140px) {
  .site-header .part-logo {
    max-width: 14.6875rem;
  }
}
.site-header .part-logo picture {
  margin-bottom: 0;
}
.site-header a,
.site-header .nav-link,
.site-header .dropdown-item {
  text-decoration: none !important;
}
.site-header.stickyHeader {
  z-index: 1300; /* Keep nav dropdowns above animated/homepage section layers. */
  background: linear-gradient(180deg, var(--stone-nav-bg-secondary) 0%, var(--stone-nav-bg) 100%);
  border-bottom: 1px solid var(--stone-softer-border);
}
.site-header.stickyHeader .part-logo {
  display: block;
}
@media (min-width: 1140px) {
  .site-header.stickyHeader .part-logo {
    max-width: 12.25rem;
  }
}
.site-header .navbar .navbar-collapse .navbar-nav > .menu-item .dropdown-menu {
  background-color: var(--stone-nav-dropdown);
  border: 1px solid var(--stone-softer-border);
  box-shadow: var(--stone-shadow);
}
.site-header .nav-item {
  font-size: 1.1875rem;
  font-weight: 500;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 0.15s;
}
@media (min-width: 1140px) {
  .site-header .nav-item {
    margin-left: 1rem;
    display: inline-block;
  }
}
@media (min-width: 1310px) {
  .site-header .nav-item {
    margin-left: 3.125rem;
  }
}
@media (min-width: 1140px) {
  .site-header .nav-item:first-child {
    margin-left: 0;
  }
}
.site-header .nav-item:hover > .nav-link, .site-header .nav-item:hover > .nav-link + .caret::before {
  color: var(--stone-link);
}
.site-header .nav-link {
  padding-bottom: 1px;
  color: var(--stone-text);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 0.15s;
}
@media (max-width: 1139.98px) {
  .site-header .nav-link {
    display: block;
    border-bottom: 1px solid var(--stone-softer-border);
    padding: 1rem;
    line-height: 1.4;
  }
  .site-header .nav-link:first-child {
    border-top: 1px solid var(--stone-softer-border);
  }
}
@media (max-width: 639.98px) {
  .site-header .nav-link {
    padding: 0.75rem 1rem;
    line-height: 1.5;
  }
}
@media (min-width: 1140px) {
  .site-header .nav-link {
    border-color: transparent;
    color: var(--stone-text-muted);
  }
}
@media (min-width: 1140px) {
  .site-header .nav-link:hover,
  .site-header .nav-item:hover > .nav-link,
  .site-header .nav-item:hover > .nav-link + .caret::before,
  .site-header .nav-link:active,
  .site-header .nav-item:active > .nav-link,
  .site-header .nav-item:active > .nav-link + .caret::before,
  .site-header .nav-link:focus,
  .site-header .nav-item:focus > .nav-link,
  .site-header .nav-item:focus > .nav-link + .caret::before,
  .site-header .nav-item.current-menu-item > .nav-link,
  .site-header .nav-item.current-menu-parent > .nav-link,
  .site-header .nav-item.current-menu-ancestor > .nav-link,
  .site-header .nav-item.current_page_item > .nav-link,
  .site-header .nav-item.current_page_parent > .nav-link,
  .site-header .nav-item.current_page_ancestor > .nav-link,
  .site-header .nav-item.current-menu-item > .nav-link + .caret::before,
  .site-header .nav-item.current-menu-parent > .nav-link + .caret::before,
  .site-header .nav-item.current-menu-ancestor > .nav-link + .caret::before,
  .site-header .nav-item.current_page_item > .nav-link + .caret::before,
  .site-header .nav-item.current_page_parent > .nav-link + .caret::before,
  .site-header .nav-item.current_page_ancestor > .nav-link + .caret::before {
    color: var(--stone-link);
  }
}
.site-header .navbar-toggler {
  position: relative;
  display: block;
  width: 36px;
  height: 36px;
  border-radius: 9999px;
  padding: 0.5rem;
}
@media (min-width: 640px) {
  .site-header .navbar-toggler {
    width: 47px;
    height: 48px;
    padding: 0.625rem;
  }
}
@media (min-width: 1140px) {
  .site-header .navbar-toggler {
    display: none;
  }
}
.site-header .navbar-toggler span {
  display: block;
  height: 2px;
  background-color: var(--stone-link);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-duration: 0.15s;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 640px) {
  .site-header .navbar-toggler span {
    height: 3px;
  }
}
.site-header .navbar-toggler span:first-child, .site-header .navbar-toggler span:last-child {
  transform: none;
}
.site-header .navbar-toggler span:nth-child(2) {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}
@media (min-width: 640px) {
  .site-header .navbar-toggler span:nth-child(2) {
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
  }
}
.site-header .navbar-toggler:not(.collapsed) span:first-child {
  transform: translate(0, 2px) rotate(45deg);
}
@media (min-width: 640px) {
  .site-header .navbar-toggler:not(.collapsed) span:first-child {
    transform: translate(0, 3px) rotate(45deg);
  }
}
.site-header .navbar-toggler:not(.collapsed) span:nth-child(2) {
  visibility: hidden;
  margin: 0;
  opacity: 0;
}
.site-header .navbar-toggler:not(.collapsed) span:last-child {
  transform: translate(0, -2px) rotate(-45deg);
}
@media (min-width: 640px) {
  .site-header .navbar-toggler:not(.collapsed) span:last-child {
    transform: translate(0, -3px) rotate(-45deg);
  }
}
.site-header .navbar .navbar-collapse .navbar-nav > .menu-item {
  position: relative;
}
.site-header .navbar .navbar-collapse .navbar-nav > .menu-item > .dropdown-menu .dropdown-item {
  display: block;
  padding: 1rem 1.25rem;
  font-size: 1.0625rem;
  line-height: 1.375rem;
  color: var(--stone-text-muted);
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 0.15s;
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item > .dropdown-menu .dropdown-item {
    border-bottom: 1px solid var(--stone-softer-border);
    font-size: 1.1875rem;
  }
}
.site-header .navbar .navbar-collapse .navbar-nav > .menu-item .dropdown-menu {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item .dropdown-menu {
    visibility: hidden;
    position: absolute;
    top: 130%;
    min-width: 20rem;
    opacity: 0;
    transition-duration: 0.15s;
  }
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item .dropdown-menu .menu-item .dropdown-menu {
    visibility: hidden;
    top: 0;
    left: 100%;
    width: 100%;
    opacity: 0;
  }
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item:last-child .dropdown-menu {
    left: auto;
    right: 0;
  }
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item:last-child .dropdown-menu .dropdown-menu {
    left: auto;
    right: 100%;
  }
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item:hover .dropdown-menu,
  .site-header .navbar .navbar-collapse .navbar-nav > .menu-item .dropdown-menu .menu-item:hover .dropdown-menu {
    visibility: visible;
    opacity: 1;
  }
}
.site-header .navbar .navbar-collapse [class~=menu-item-has-children] > a {
  padding-right: 2.8125rem;
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse [class~=menu-item-has-children] > a {
    padding-right: 1.25rem;
  }
}
.site-header .navbar .navbar-collapse .navbar-nav > [class~=menu-item-has-children] > .caret {
  color: var(--stone-text);
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav > [class~=menu-item-has-children] > .caret {
    right: -0.375rem;
    color: var(--stone-text-muted);
  }
}
.site-header .navbar .navbar-collapse .navbar-nav .dropdown [class~=menu-item-has-children] > a {
  padding-right: 2.5rem;
}
.site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] .caret {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  border-color: var(--stone-softer-border);
  font-size: 0.8125rem;
  line-height: 1;
}
.site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] .caret::before {
  font-family: icomoon;
  content: "\e900";
}
@media (max-width: 1139.98px) {
  .site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] .caret {
    border-left: 1px solid var(--stone-softer-border);
    padding: 1.5rem 0.825rem;
  }
}
@media (max-width: 639.98px) {
  .site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] .caret {
    padding: 1.3125rem 0.625rem;
  }
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] .caret {
    top: 0.8125rem;
  }
}
.site-header .navbar .navbar-collapse .navbar-nav [class~=menu-item-has-children] [class~=menu-item-has-children] .caret::before {
  content: "\e901";
}
.site-header .navbar .navbar-collapse .navbar-nav .dropdown-menu [class~=menu-item-has-children] .caret {
  color: var(--stone-text-muted);
}
.site-header .navbar .navbar-collapse .navbar-nav .dropdown-menu [class~=menu-item-has-children] .caret::before {
  display: inline-block;
}
@media (max-width: 1139.98px) {
  .site-header .navbar .navbar-collapse .navbar-nav .dropdown-menu [class~=menu-item-has-children] .caret {
    padding: 1.25rem 0.825rem;
  }
  .site-header .navbar .navbar-collapse .navbar-nav .dropdown-menu [class~=menu-item-has-children] .caret::before {
    transform: rotate(90deg);
  }
}
@media (min-width: 1140px) {
  .site-header .navbar .navbar-collapse .navbar-nav .dropdown-menu [class~=menu-item-has-children] .caret {
    right: 1.1875rem;
    top: 1.3125rem;
  }
}
.site-header .navbar .dropdown-menu .nav-item {
  position: relative;
  margin-left: 0;
  display: block;
  border-top: 1px solid var(--stone-softer-border);
}
@media (min-width: 1140px) {
  .site-header .navbar .dropdown-menu .nav-item:first-child {
    border-width: 0;
  }
}
@media (min-width: 992px) {
  .site-header .navbar .lg-hidden {
    display: none;
  }
}
@media (max-width: 1139.98px) {
  .site-header .dropdown-menu {
    display: none;
  }
}
@media (max-width: 1139.98px) {
  .site-header .navbar-collapse {
    position: fixed;
    top: 0;
    bottom: 0;
    left: -19rem;
    z-index: 1000;
    display: block;
    width: 100%;
    max-width: 17.5rem;
    height: auto;
    overflow-y: auto;
    border-right: 1px solid var(--stone-softer-border);
    background-color: var(--stone-nav-bg);
    padding-top: 3rem;
    padding-bottom: 3rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 0.15s;
  }
  .site-header .navbar-collapse.show {
    left: 0;
  }
}
.site-header a:hover,
.site-header a:focus-visible,
.site-header .nav-link:hover,
.site-header .nav-link:focus-visible,
.site-header .dropdown-item:hover,
.site-header .dropdown-item:focus-visible {
  text-decoration: none !important;
}

.popup-onload {
  position: fixed;
  inset: 0;
  z-index: 1301;
  display: none;
  align-items: flex-start;
  justify-content: center;
  padding: 50px 1rem 1rem;
  overflow: auto;
  background: rgba(0, 0, 0, 0.7);
}
@media (min-width: 1024px) {
  .popup-onload {
    padding: 50px 1.5rem 1.5rem;
  }
}
.popup-onload .part-dialog {
  position: relative;
  width: min(100%, 56.25rem);
  margin: 0 auto;
  padding: 1rem;
  border-radius: 0.5rem;
  background: var(--stone-glass-card-bg);
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-glass-card-shadow);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
@media (min-width: 1280px) {
  .popup-onload .part-dialog {
    padding: 2rem;
  }
}
.popup-onload .part-dialog ol {
  list-style: decimal;
  padding-left: 1.3rem;
}
.popup-onload .part-dialog iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-top: 1rem;
}
.popup-onload .part-title {
  margin-right: 2.5rem;
}
.popup-onload .part-close {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  display: flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), #ffffff 55%);
  border-radius: 0.375rem;
  background: color-mix(in srgb, var(--stone-glass-card-bg), #ffffff 72%);
  box-shadow: var(--stone-glass-card-shadow);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: var(--stone-nav-bg);
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}
.popup-onload .part-close:hover, .popup-onload .part-close:focus-visible {
  background: color-mix(in srgb, var(--stone-glass-card-bg), #ffffff 82%);
}

.site-footer {
  position: relative;
}
@media (max-width: 767.98px) {
  .site-footer {
    margin-bottom: 2.75rem;
  }
}
.site-footer .part-top {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  padding: 1rem;
  background: var(--stone-footer-widget-gradient);
  border: 1px solid rgba(180, 219, 243, 0.24);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.36);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.site-footer .part-top .gform_wrapper,
.site-footer .part-top .gform_wrapper label {
  color: #eef5fc;
}
@media (max-width: 639.98px) {
  .site-footer .part-top {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
}
@media (min-width: 768px) {
  .site-footer .part-top {
    padding: 2.75rem;
  }
}
@media (min-width: 1280px) {
  .site-footer .part-top {
    padding: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .part-top {
    margin-bottom: -7rem;
  }
}
.site-footer .part-top-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-right: -1rem;
  margin-left: -1rem;
}
.site-footer .part-top-copy,
.site-footer .part-top-form {
  padding-right: 1rem;
  padding-left: 1rem;
}
.site-footer .part-top-copy {
  color: rgba(255, 255, 255, 0.8);
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}
.site-footer .part-top-copy h2 {
  color: #ffffff;
}
@media (min-width: 768px) {
  .site-footer .part-top-copy {
    text-align: left;
  }
}
.site-footer .part-top-form input {
  min-width: 12.75rem;
}
@media (min-width: 640px) {
  .site-footer .part-top-form input {
    min-width: 18.75rem;
  }
}
.site-footer {
  /* Footer newsletter keeps its compact icon submit as a deliberate one-off. */
}
.site-footer .form-subscribe form {
  display: flex;
}
.site-footer .form-subscribe .gform_body,
.site-footer .form-subscribe .gform-body {
  flex: 1 1 0;
}
.site-footer .form-subscribe .gform_fields,
.site-footer .form-subscribe .gform-fields,
.site-footer .form-subscribe .ginput_container,
.site-footer .form-subscribe .ginput-container {
  height: 100%;
}
.site-footer .form-subscribe .gform_wrapper .gfield,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gfield {
  margin-bottom: 0;
}
.site-footer .form-subscribe .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.site-footer .form-subscribe .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) {
  height: 100%;
  background: var(--stone-link-hover);
  color: var(--stone-bg);
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}
@media (min-width: 640px) {
  .site-footer .form-subscribe .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
  .site-footer .form-subscribe .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .form-subscribe .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
  .site-footer .form-subscribe .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]) {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.site-footer .form-subscribe .gform_wrapper .gform_footer,
.site-footer .form-subscribe .gform_wrapper .gform-footer,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_footer,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform-footer {
  margin-top: 0;
  display: flex;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  background: var(--stone-btn-shape-overlay);
  color: var(--stone-link-hover);
  text-transform: none;
  position: relative;
}
.site-footer .form-subscribe .gform_wrapper .gform_footer::after,
.site-footer .form-subscribe .gform_wrapper .gform-footer::after,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_footer::after,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform-footer::after {
  content: "\e915";
  font-family: icomoon;
  font-size: 1rem;
  line-height: 1;
}
@media (min-width: 640px) {
  .site-footer .form-subscribe .gform_wrapper .gform_footer,
  .site-footer .form-subscribe .gform_wrapper .gform-footer,
  .site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_footer,
  .site-footer .form-subscribe .gform_wrapper.gravity-theme .gform-footer {
    width: 56px;
    height: 56px;
  }
}
.site-footer .form-subscribe .gform_wrapper .gform_button,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_button {
  position: absolute;
  inset: 0;
  min-width: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  margin: 0;
  background: transparent;
  color: transparent;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
}
.site-footer .form-subscribe .gform_wrapper .gform_button::before,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_button::before {
  content: none;
}
.site-footer .form-subscribe .gform_wrapper .gform_button:hover,
.site-footer .form-subscribe .gform_wrapper .gform_button:focus-visible,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_button:hover,
.site-footer .form-subscribe .gform_wrapper.gravity-theme .gform_button:focus-visible {
  background: transparent;
  color: transparent;
}
.site-footer .form-subscribe .gform_ajax_spinner {
  display: none !important;
}
.site-footer .part-brand {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #9ca3af;
  text-align: center;
}
@media (min-width: 640px) {
  .site-footer .part-brand {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .part-brand {
    padding-top: 10rem;
  }
}
.site-footer .part-logo {
  max-width: 14.8125rem;
  margin-right: auto;
  margin-bottom: 2.25rem;
  margin-left: auto;
}
@media (min-width: 640px) {
  .site-footer .part-logo {
    max-width: 17.8125rem;
  }
}
@media (min-width: 1024px) {
  .site-footer .part-logo {
    margin-bottom: 3.5rem;
  }
}
.site-footer .part-logo img {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.site-footer .part-contact {
  margin-bottom: 1rem;
  color: var(--stone-text);
  font-size: 1rem;
  font-weight: 500;
}
.site-footer .part-contact ul {
  margin: 0;
  padding: 0;
}
.site-footer .part-contact-item {
  display: inline-block;
  margin-bottom: 0.5rem;
  padding-right: 1rem;
  padding-left: 1rem;
}
.site-footer .part-contact-link {
  display: inline-flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
.site-footer .part-contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5rem;
  padding: 0.5rem;
  border-radius: 999px;
  background: #14487f;
  color: #ffffff;
  font-size: 0.875rem;
}
.site-footer .part-menu {
  font-size: 0.875rem;
}
.site-footer .part-menu ul {
  margin: 0;
  padding: 0;
}
.site-footer .part-menu li {
  position: relative;
  display: inline-block;
  margin-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 640px) {
  .site-footer .part-menu li {
    margin-right: 1.75rem;
    padding-left: 1.25rem;
  }
}
.site-footer .part-menu li:last-child {
  margin-right: 0;
}
.site-footer .part-menu li::before {
  content: "";
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 999px;
  background: var(--stone-link);
}
@media (min-width: 1024px) {
  .site-footer .part-menu li::before {
    top: 0.625rem;
  }
}
.site-footer .part-menu a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
}
.site-footer .part-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-right: -1rem;
  margin-left: -1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-align: center;
}
@media (min-width: 640px) {
  .site-footer .part-bottom {
    padding-bottom: 1.5rem;
    text-align: left;
  }
}
.site-footer .part-bottom-text,
.site-footer .part-social {
  padding-right: 1rem;
  padding-left: 1rem;
}
.site-footer .part-bottom-text p {
  margin-bottom: 0.25rem;
}
@media (min-width: 640px) {
  .site-footer .part-bottom-text p {
    margin-bottom: 0;
  }
}
.site-footer .part-social {
  font-size: 1rem;
}
.site-footer .part-social ul {
  margin: 0;
  padding: 0;
}
.site-footer .part-social-item {
  display: inline-block;
  margin-left: 0.75rem;
}
.site-footer .part-social-link {
  color: rgba(107, 114, 128, 0.7);
  text-decoration: none;
}
.site-footer .part-social-link:hover, .site-footer .part-social-link:focus-visible {
  color: rgba(0, 0, 0, 0.85);
}

.ss-modal.is-quote {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  padding: 0.75rem 0.25rem;
  overflow-y: auto;
}
.ss-modal.is-quote .part-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.54);
}
.ss-modal.is-quote .part-dialog {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 95%;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.ss-modal.is-quote .part-panel {
  position: relative;
  z-index: 0;
  width: 100%;
  max-width: 33.125rem;
  margin-right: auto;
  margin-left: auto;
  border: 2px solid #ffffff;
  border-bottom-width: 4px;
  background: transparent;
  backdrop-filter: blur(12px);
  pointer-events: auto;
}
@media (min-width: 768px) {
  .ss-modal.is-quote .part-panel {
    max-width: 68.25rem;
  }
}
.ss-modal.is-quote .part-close {
  position: absolute;
  top: -16px;
  right: -10px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #53b7e8;
  color: #ffffff;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  transition: color 0.2s ease, transform 0.2s ease;
}
.ss-modal.is-quote .part-close:hover, .ss-modal.is-quote .part-close:focus-visible {
  color: #ef4444;
  transform: scale(1.125);
}
.ss-modal.is-quote .part-inner {
  text-align: center;
}
.ss-modal.is-quote .part-header {
  padding: 1rem;
  background: #ffffff;
}
.ss-modal.is-quote .part-header h2 {
  margin-bottom: 0;
}
.ss-modal.is-quote .part-form-wrap {
  padding: 1rem;
  box-shadow: inset 0 0 30px 15px rgba(255, 255, 255, 0.2);
}
@media (min-width: 1024px) {
  .ss-modal.is-quote .part-form-wrap {
    padding: 2rem;
  }
}
@media (min-width: 1536px) {
  .ss-modal.is-quote .part-form-wrap {
    padding: 3rem;
  }
}

.c-card {
  background: var(--stone-surface);
  border: 1px solid var(--stone-surface-border);
  box-shadow: var(--stone-shadow);
  color: var(--stone-text);
}

.c-card__title {
  color: var(--stone-text);
}

.c-card__text {
  color: var(--stone-text-muted);
}

.c-card--glass-brand {
  background: var(--stone-glass-card-bg);
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-glass-card-shadow);
  color: #ffffff;
  transition: none;
}

.c-date-tag {
  display: inline-block;
  padding: 0.625rem;
  border: 1px solid var(--stone-surface-border);
  background: var(--stone-bg-elevated);
  color: var(--stone-text);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
}

.c-date-tag--wide {
  text-align: center;
}

@media (min-width: 640px) {
  .c-date-tag {
    font-size: 0.9375rem;
  }
}
@media (min-width: 1024px) {
  .c-date-tag {
    font-size: 1rem;
  }
}
@media (min-width: 1536px) {
  .c-date-tag--wide {
    min-width: 19.5rem;
  }
}
/* Bridge existing markup while templates are migrated off Tailwind classes */
#insight_blogs .insights-blog-card {
  background: var(--stone-glass-card-bg);
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-glass-card-shadow);
}

.c-post-card.is-blog {
  background: var(--stone-glass-card-bg);
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-glass-card-shadow);
  color: #ffffff;
  transition: none;
  padding: 1rem;
}
.c-post-card.is-blog .part-title {
  color: var(--stone-text);
}
.c-post-card.is-blog .part-excerpt {
  margin-top: 0.75rem;
}
.c-post-card.is-blog .part-link {
  margin-top: auto;
  color: var(--stone-link);
}
.c-post-card.is-blog .part-link:hover, .c-post-card.is-blog .part-link:focus-visible, .c-post-card.is-blog .part-link:hover .part-link-icon, .c-post-card.is-blog .part-link:focus-visible .part-link-icon {
  color: #ffffff;
}

.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
  min-width: 2.5rem;
  padding: 0.5rem 0.875rem;
  border: 1px solid var(--stone-surface-border);
  background: var(--stone-bg-elevated);
  color: var(--stone-text);
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.c-btn:hover,
.c-btn:focus-visible {
  background: var(--stone-link);
  color: var(--stone-brand-deep);
}

.btn-has-shape,
.btn-has-shape:hover,
.btn-has-shape:focus-visible,
.c-cta-button,
.c-cta-button:hover,
.c-cta-button:focus-visible {
  text-decoration: none !important;
}

.c-btn--shape-primary,
.c-btn--call-now {
  text-decoration: none;
  position: relative;
  z-index: 0;
  display: inline-block;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  border: 1px solid transparent;
  background: var(--stone-btn-shape-bg);
  color: #ffffff;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  isolation: isolate;
}

.c-btn--shape-primary::before,
.c-btn--call-now::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3px;
  width: 100%;
  background: var(--stone-btn-shape-overlay);
  clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%);
  transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
}

.c-btn--shape-primary:hover::before,
.c-btn--shape-primary:focus-visible::before,
.c-btn--call-now:hover::before,
.c-btn--call-now:focus-visible::before {
  bottom: 100%;
}

.c-btn--shape-primary:hover,
.c-btn--shape-primary:focus-visible,
.c-btn--call-now:hover,
.c-btn--call-now:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: #ffffff;
  text-decoration: none;
}

@media (min-width: 1024px) {
  .c-btn--shape-primary,
  .c-btn--call-now {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
/* Naming alias: shutter is the current primary CTA system. */
.btn-primary.btn-shutter {
  text-decoration: none;
}

.formBtn-has-shape .gform_button {
  display: inline-block;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  border: 1px solid transparent;
  background: var(--stone-btn-shape-bg);
  color: #ffffff;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.formBtn-has-shape .gform_button:hover,
.formBtn-has-shape .gform_button:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: #ffffff;
  text-decoration: none;
}

@media (min-width: 1024px) {
  .formBtn-has-shape .gform_button {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
.btn-roller {
  border: 2px solid var(--stone-btn-roller-border);
  background-color: var(--stone-btn-roller-bg);
  color: var(--stone-btn-roller-text);
  box-shadow: 0 0 0 0 var(--stone-btn-roller-border) inset;
  text-decoration: none;
}

.btn-roller:not([data-hover]):hover,
.btn-roller:not([data-hover]):focus-visible {
  color: var(--stone-btn-roller-hover-text);
  box-shadow: 0 0 0 1.5em var(--stone-btn-roller-border) inset;
  text-decoration: none;
}

.btn-roller[data-hover] {
  border: none;
  padding: 13px 27px;
  position: relative;
  color: transparent;
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: uppercase;
  box-shadow: 0 0 0 2px var(--stone-btn-roller-border) inset;
  background-color: var(--stone-btn-roller-bg);
  background-image: var(--stone-btn-roller-gradient);
  background-repeat: no-repeat;
  background-position: left 4em;
  background-size: 100% 100%;
  transition: background-position 380ms ease, box-shadow 320ms ease;
}

.btn-roller[data-hover]::after,
.btn-roller[data-hover]::before {
  content: attr(data-hover);
  color: var(--stone-btn-roller-text);
}

.btn-roller[data-hover]::before {
  transform: translate3d(0, 0, 0);
  transition: all 380ms ease;
}

.btn-roller[data-hover]::after {
  transform: translate3d(0, -101%, 0);
  transition: all 380ms ease;
}

.btn-roller[data-hover]:hover,
.btn-roller[data-hover]:focus-visible {
  box-shadow: 0 0 0 2px transparent inset;
  background-position: left 0;
  transition: background-position 340ms ease-out, box-shadow 280ms ease 150ms;
}

.btn-roller[data-hover]:hover::before,
.btn-roller[data-hover]:focus-visible::before {
  transform: translate3d(0, 101%, 0);
}

.btn-roller[data-hover]:hover::after,
.btn-roller[data-hover]:focus-visible::after {
  transform: translate3d(0, 0, 0);
  transition: all 0.4s ease-out 85ms;
}

.gform_wrapper,
.gform_wrapper form {
  margin: 0;
}

.gform_wrapper .gfield,
.gform_wrapper.gravity-theme .gfield {
  margin-bottom: 1rem;
}

.gform_wrapper .gfield_label,
.gform_wrapper .gform-field-label,
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme .gform-field-label,
.gform_wrapper.gravity-theme .gfield_consent_label,
.gform_wrapper .gfield_consent_label {
  color: var(--stone-home-contact-form-label);
}

.gform_wrapper .gfield_required_asterisk,
.gform_wrapper .gfield_required,
.gform_wrapper.gravity-theme .gfield_required_asterisk,
.gform_wrapper.gravity-theme .gfield_required {
  color: var(--stone-home-contact-form-focus) !important;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.gform_wrapper select,
.gform_wrapper textarea,
.gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea {
  border: 1px solid var(--stone-home-contact-form-input-border);
  background: var(--stone-home-contact-form-input-bg);
  color: var(--stone-home-contact-form-text);
}

.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder,
.gform_wrapper.gravity-theme input::placeholder,
.gform_wrapper.gravity-theme textarea::placeholder {
  color: var(--stone-home-contact-form-placeholder);
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus,
.gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme textarea:focus {
  border-color: var(--stone-home-contact-form-focus);
  box-shadow: 0 0 0 2px var(--stone-home-contact-form-focus-ring);
  outline: 0;
}

.gform_wrapper .gfield_consent_label,
.gform_wrapper.gravity-theme .gfield_consent_label {
  font-size: 0.875rem;
  line-height: 1.6;
}

.gform_wrapper .gfield_description,
.gform_wrapper .gform-field-description,
.gform_wrapper .instruction,
.gform_wrapper.gravity-theme .gfield_description,
.gform_wrapper.gravity-theme .gform-field-description,
.gform_wrapper.gravity-theme .instruction,
.gform_wrapper .gfield_validation_message,
.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper .validation_message,
.gform_wrapper.gravity-theme .validation_message {
  color: var(--stone-home-contact-form-helper);
}

.gform_wrapper .gfield_consent_label a,
.gform_wrapper.gravity-theme .gfield_consent_label a {
  color: var(--stone-home-contact-form-link);
}

.gform_wrapper .ginput_recaptcha,
.gform_wrapper.gravity-theme .ginput_recaptcha {
  overflow: hidden;
}

.gform_wrapper .gform_footer,
.gform_wrapper .gform-footer,
.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform-footer {
  margin-top: 1.25rem;
  text-align: center;
  text-transform: none;
}

.gform_wrapper .gform_button,
.gform_wrapper.gravity-theme .gform_button {
  position: relative;
  z-index: 0;
  display: inline-block;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  border: 1px solid transparent;
  background: var(--stone-btn-shape-bg);
  color: var(--stone-home-contact-form-text);
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  isolation: isolate;
}

.gform_wrapper .gform_button::before,
.gform_wrapper.gravity-theme .gform_button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3px;
  width: 100%;
  background: var(--stone-btn-shape-overlay);
  clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%);
  transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
}

.gform_wrapper .gform_button:hover::before,
.gform_wrapper .gform_button:focus-visible::before,
.gform_wrapper.gravity-theme .gform_button:hover::before,
.gform_wrapper.gravity-theme .gform_button:focus-visible::before {
  bottom: 100%;
}

.gform_wrapper .gform_button:hover,
.gform_wrapper .gform_button:focus-visible,
.gform_wrapper.gravity-theme .gform_button:hover,
.gform_wrapper.gravity-theme .gform_button:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: var(--stone-home-contact-form-text);
  text-decoration: none !important;
}

@media (min-width: 1024px) {
  .gform_wrapper .gform_button,
  .gform_wrapper.gravity-theme .gform_button {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
.wp-theme-stonetheme .gform_wrapper.gravity-theme .gf_progressbar {
  background: transparent;
  background-color: transparent;
  background-image: linear-gradient(hsl(0, 0%, 100%), hsl(0, 0%, 100%));
  background-repeat: no-repeat;
  background-position: 10.5px 0;
  background-size: calc(100% - 10.5px) 100%;
}

.c-slider-arrow,
.slick-slider .slick-arrow {
  position: absolute;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid var(--stone-soft-border);
  border-radius: 0;
  background: var(--stone-btn-roller-bg);
  color: var(--stone-btn-roller-text);
  font-size: 0;
  transition: all 0.3s ease;
}

.c-slider-arrow::before,
.slick-slider .slick-arrow::before {
  z-index: 1;
  font-family: inherit;
  color: currentColor;
  opacity: 1;
  font-size: 1.125rem;
  line-height: 1;
  content: "→";
}

.damages-services-widget .damages-services-categories .slick-arrow.slick-prev::before,
.c-slider-arrow.slick-prev::before,
.slick-slider .slick-arrow.slick-prev::before {
  content: "→";
}

.damages-services-widget .damages-services-categories .slick-arrow.slick-next::before,
.c-slider-arrow.slick-next::before,
.slick-slider .slick-arrow.slick-next::before {
  content: "→";
}

.c-slider-arrow::after,
.slick-slider .slick-arrow::after {
  content: none;
  display: none;
  background: none;
  clip-path: none;
}

.c-slider-arrow:hover,
.slick-slider .slick-arrow:hover,
.c-slider-arrow:focus-visible,
.slick-slider .slick-arrow:focus-visible {
  border-color: var(--stone-link);
  background: var(--stone-link);
  color: var(--stone-btn-roller-hover-text);
}

.c-slider-arrow.slick-disabled,
.slick-slider .slick-arrow.slick-disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.slider-arrow-wrap.is-centered .slick-arrow {
  top: auto;
  bottom: 0;
  margin: 0;
  transform: none;
}
.slider-arrow-wrap.is-centered .slick-prev {
  left: auto;
  right: calc(50% + var(--stone-slider-arrow-gap) / 2);
}
.slider-arrow-wrap.is-centered .slick-next {
  right: auto;
  left: calc(50% + var(--stone-slider-arrow-gap) / 2);
}

.award-section {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .award-section {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
}
@media (min-width: 1280px) {
  .award-section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .award-section {
    padding-top: 6rem;
    padding-bottom: 3rem;
  }
}
.award-section .part-badge {
  margin-bottom: 1.5rem;
}
.award-section .part-badge img {
  max-width: 160px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .award-section .part-badge {
    margin-bottom: 2rem;
  }
  .award-section .part-badge img {
    max-width: 200px;
  }
}
@media (min-width: 1280px) {
  .award-section .part-badge {
    margin-bottom: 3rem;
  }
  .award-section .part-badge img {
    max-width: 237px;
  }
}
.award-section .part-title {
  margin-bottom: 0;
  overflow: hidden;
  color: #ffffff;
  font-size: 22px;
  font-weight: 600;
}
@media (min-width: 640px) {
  .award-section .part-title {
    font-size: 24px;
  }
}
@media (min-width: 1024px) {
  .award-section .part-title {
    font-size: 30px;
  }
}
.award-section .part-line {
  position: relative;
  display: block;
}

#requestQuote-1.ss-modal.is-quote .part-panel {
  border-color: var(--stone-surface-border);
  background: var(--stone-surface);
}
#requestQuote-1.ss-modal.is-quote .part-header {
  background: var(--stone-bg);
}
#requestQuote-1.ss-modal.is-quote .part-header h2 {
  color: var(--stone-text);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark {
  background: var(--stone-bg);
  box-shadow: none;
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper select,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper textarea,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme select,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme textarea {
  border-color: var(--stone-surface-border);
  color: var(--stone-text);
  background: var(--stone-bg-elevated);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper select:focus,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper textarea:focus,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme select:focus,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme textarea:focus {
  border-color: var(--stone-link);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper input::placeholder,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper select::placeholder,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper textarea::placeholder,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme input::placeholder,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme select::placeholder,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme textarea::placeholder {
  color: var(--stone-text-muted);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gform-field-label,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gchoice label,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gfield_label,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gform-field-label,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gchoice label,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gfield_label {
  color: var(--stone-text);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gchoice label::after,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gchoice label::before,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gchoice label::after,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gchoice label::before {
  border-color: var(--stone-surface-border);
  background-color: transparent;
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gchoice input:checked ~ label::after,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gchoice input:checked ~ label::after {
  background-color: var(--stone-link);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gform_button,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gform_button {
  border-color: var(--stone-surface-border);
  background: var(--stone-bg-elevated);
  color: var(--stone-text);
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gform_button::before,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gform_button::before {
  content: none;
}
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gform_button:hover,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper .gform_button:focus-visible,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gform_button:hover,
#requestQuote-1.ss-modal.is-quote .form-theme-quote-dark .gform_wrapper.gravity-theme .gform_button:focus-visible {
  border-color: var(--stone-link);
  background: var(--stone-btn-roller-bg);
  color: var(--stone-link-hover);
}

/* Smash Balloon Reviews Feed overrides */
/*
Use this file for all review widget styling overrides.
Recommended pattern:
1) Wrap shortcode output in a page-scoped parent class.
2) Keep selectors low-specificity and avoid !important unless required.
*/
/* Common Smash Balloon Reviews Feed root selectors. */
#sb-reviews,
.sb-reviews-feed,
.sbr-feed {
  /* Feed-level overrides go here. */
}
/* Reviews widget nav placement and color overrides. */
.sbr-feed {
  --sbr-nav-size: 2.25rem;
  --sbr-nav-gutter: 1.5rem;
  --sbr-nav-cyan: #0096cc;
  --sbr-nav-inside-offset: 0.5rem;
}
.sbr-feed .sb-feed-posts.sbr_carousel {
  position: relative;
  overflow: visible;
  padding-right: 0;
  padding-left: 0;
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav {
  position: static;
  display: block;
  visibility: visible;
  opacity: 1;
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev,
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--sbr-nav-size);
  height: var(--sbr-nav-size);
  border: 1px solid var(--sbr-nav-cyan);
  border-radius: 999px;
  background: rgba(0, 150, 204, 0.2);
  color: var(--sbr-nav-cyan);
  transform: translateY(-50%);
  transition: background-color 0.2s ease, color 0.2s ease;
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev svg,
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next svg {
  width: 0.875rem;
  height: 0.875rem;
  color: currentColor;
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev:hover, .sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev:focus-visible,
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next:hover,
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next:focus-visible {
  background: rgba(0, 150, 204, 0.35);
  color: #43c7f4;
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav {
  /* Default: keep controls inside if space is tight. */
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev {
  left: var(--sbr-nav-inside-offset);
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next {
  right: var(--sbr-nav-inside-offset);
}
.sbr-feed {
  /*
   * Room-aware placement:
   * push controls outside by (button width + gutter) only when viewport-side room exists,
   * otherwise keep them inside.
   */
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-prev {
  left: calc(var(--sbr-nav-inside-offset) - min(var(--sbr-nav-size) + var(--sbr-nav-gutter), max(0px, (100vw - 100%) / 2 - var(--sbr-nav-inside-offset))));
}
.sbr-feed .sb-feed-posts.sbr_carousel .sbr-owl-nav .sbr-owl-next {
  right: calc(var(--sbr-nav-inside-offset) - min(var(--sbr-nav-size) + var(--sbr-nav-gutter), max(0px, (100vw - 100%) / 2 - var(--sbr-nav-inside-offset))));
}
.sbr-feed {
  /* Keep header subtext visible when admin font size is increased. */
}
.sbr-feed .sb-feed-header-rating-subtext {
  display: inline-block;
  max-width: 100%;
  line-height: 1.25;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  vertical-align: middle;
}

.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)),
.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)):hover,
.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)):focus,
.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)):focus-visible,
.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)):active,
.global-youtube-embed-widget a.gev-overlay-play:where(:not(.wp-element-button)):visited {
  text-decoration: none;
}

.faq-widget.faq-widget-sp {
  position: relative;
  margin-bottom: 4rem;
}
.faq-widget.faq-widget-sp .section-heading {
  margin-bottom: 2rem;
  text-align: center;
}
.faq-widget.faq-widget-sp .section-heading .heading {
  color: var(--stone-text);
  margin-bottom: 0;
}
.faq-widget.faq-widget-sp .faq-content {
  display: block;
  max-width: 65rem;
  margin: 0 auto;
}
.faq-widget.faq-widget-sp .faq-content .faq-item {
  margin: 0 0 1rem;
  border: 1px solid color-mix(in srgb, var(--stone-link), transparent 72%);
  border-radius: 0.625rem;
  background: transparent;
  color: var(--stone-text);
  overflow: hidden;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  padding: 0;
}
.faq-widget.faq-widget-sp .faq-content .faq-item.is-active {
  border-color: var(--stone-brand-surface);
  background: var(--stone-brand-surface);
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3 {
  position: relative;
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: 1.5rem 4.75rem 1.5rem 1.5rem;
  color: inherit;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.25;
  background: transparent;
  transition: background-color 0.2s ease;
  cursor: pointer;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3:focus {
  outline: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3::before {
  content: "";
  position: absolute;
  left: auto;
  right: 1.5rem;
  top: 50%;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 999px;
  transform: translateY(-50%);
  background-color: var(--stone-text);
  background-image: linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep)), linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep));
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.62rem 0.12rem, 0.12rem 0.62rem;
  z-index: 2;
  pointer-events: none;
  margin-right: 0.75rem;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3::after {
  content: "";
  position: absolute;
  left: auto;
  right: 1.35rem;
  top: 50%;
  width: 1.25rem;
  height: 1.25rem;
  transform: translateY(-50%);
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3.ui-state-active, .faq-widget.faq-widget-sp .faq-content .faq-item > h3[aria-selected=true] {
  padding-bottom: 1rem;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3.ui-state-active::before, .faq-widget.faq-widget-sp .faq-content .faq-item > h3[aria-selected=true]::before {
  background-image: linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep));
  background-size: 0.62rem 0.12rem;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > h3 > [class*=ui-accordion-header-icon],
.faq-widget.faq-widget-sp .faq-content .faq-item > h3 > span {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc {
  display: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  color: inherit;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder {
  border-left: 0;
  margin: 0;
  padding: 0;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .invisible {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-none ~ .js-view-more, .faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-none ~ .js-view-less {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-more ~ .js-view-more {
  display: inline-flex;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-more ~ .js-view-less {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-less {
  overflow: visible;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-less ~ .js-view-less {
  display: inline-flex;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder .view-less ~ .js-view-more {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder a {
  color: var(--stone-text);
  text-decoration: underline;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder__inner,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .text-holder__inner p,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .visible,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .invisible,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .visible p,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .invisible p {
  color: var(--stone-text);
  font-size: 1rem;
  line-height: 1.7;
  margin-bottom: 0;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .js-view-more,
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .js-view-less {
  display: none;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.15rem;
  color: var(--stone-link);
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  cursor: pointer;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc .plus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  border-radius: 2px;
  background: var(--stone-link);
  color: var(--stone-text);
  font-size: 0.75rem;
  line-height: 1;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc.ui-accordion-content {
  padding: 1rem 1.5rem 1.5rem;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc[aria-hidden=false] {
  display: block;
}
.faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc[aria-hidden=true] {
  display: none;
}
.faq-widget.faq-widget-sp .faq-content .ui-icon {
  display: none;
}
@media (max-width: 767.98px) {
  .faq-widget.faq-widget-sp .faq-content .faq-item > h3 {
    padding: 1.05rem 4.35rem 1.05rem 1.05rem;
    font-size: 1.05rem;
  }
  .faq-widget.faq-widget-sp .faq-content .faq-item > h3.ui-state-active, .faq-widget.faq-widget-sp .faq-content .faq-item > h3[aria-selected=true] {
    padding-bottom: 0.7rem;
  }
  .faq-widget.faq-widget-sp .faq-content .faq-item > h3::before {
    left: auto;
    right: 1rem;
  }
  .faq-widget.faq-widget-sp .faq-content .faq-item > h3::after {
    left: auto;
    right: 1rem;
    width: 1.1rem;
    height: 1.1rem;
  }
  .faq-widget.faq-widget-sp .faq-content .faq-item > .faq-desc.ui-accordion-content {
    padding: 0.6rem 1.05rem 1rem;
  }
}

.svc-links {
  margin: 5rem 0 6rem;
}
.svc-links .container {
  padding: 1rem;
  border: 1px solid var(--stone-glass-card-border);
  border-radius: 0.75rem;
  background: var(--stone-glass-card-bg);
}
.svc-links .section-heading h2.heading {
  color: var(--stone-text);
  font-size: 32px;
  text-align: left;
}
.svc-links .section-heading::after {
  margin-bottom: 1rem;
  background: color-mix(in srgb, var(--stone-link), transparent 58%);
}
.svc-links .svc-links-wrap {
  max-width: 76rem;
  margin: 0 auto;
}
.svc-links .svc-links-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  list-style: none;
  margin: 0;
  padding: 0;
  column-gap: 0.9rem;
  row-gap: 0.95rem;
}
.svc-links .svc-links-item {
  min-width: 0;
  position: relative;
}
.svc-links .svc-links-item:not(:nth-child(3n+1))::before {
  content: "";
  position: absolute;
  left: -0.45rem;
  top: 50%;
  width: 1px;
  height: clamp(3.3rem, 7vw, 5.4rem);
  transform: translateY(-50%);
  background: color-mix(in srgb, var(--stone-link), transparent 58%);
}
.svc-links .svc-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 8.4rem;
  padding: 1rem 0.75rem;
  border: 0;
  border-radius: 0.5rem;
  color: var(--stone-text);
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease;
}
.svc-links .svc-link:hover, .svc-links .svc-link:focus-visible {
  background: color-mix(in srgb, var(--stone-link), transparent 88%);
  text-decoration: none;
}
.svc-links .svc-link-ic {
  display: inline-flex;
  width: 3.6rem;
  height: 3.6rem;
  margin-bottom: 0.95rem;
  color: var(--stone-link);
}
.svc-links .svc-link-ic svg {
  width: 100%;
  height: 100%;
  display: block;
}
.svc-links .svc-link-ic svg *[stroke] {
  stroke-width: 0.5;
}
.svc-links .svc-link-tx {
  display: block;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  font-weight: 700;
  line-height: 1.2;
  text-wrap: balance;
}
@media (max-width: 1023.98px) {
  .svc-links .svc-links-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .svc-links .svc-links-item:not(:nth-child(3n+1))::before {
    display: none;
  }
  .svc-links .svc-links-item:not(:nth-child(2n+1))::before {
    display: block;
    content: "";
    position: absolute;
    left: -0.45rem;
    top: 50%;
    width: 1px;
    height: clamp(3rem, 10vw, 5rem);
    transform: translateY(-50%);
    background: color-mix(in srgb, var(--stone-link), transparent 58%);
  }
}
@media (max-width: 767.98px) {
  .svc-links {
    margin: 1rem 0 1.8rem;
  }
  .svc-links .svc-links-list {
    column-gap: 0.75rem;
    row-gap: 0.7rem;
  }
  .svc-links .svc-link {
    min-height: 7.25rem;
    padding: 0.85rem 0.55rem;
  }
  .svc-links .svc-link-ic {
    width: 2.8rem;
    height: 2.8rem;
    margin-bottom: 0.7rem;
  }
  .svc-links .svc-link-tx {
    font-size: 0.98rem;
  }
}
@media (max-width: 639.98px) {
  .svc-links .svc-links-list {
    grid-template-columns: minmax(0, 1fr);
  }
  .svc-links .svc-links-item::before, .svc-links .svc-links-item:not(:nth-child(2n+1))::before {
    display: none;
  }
}

.county-cta {
  margin: 4rem auto;
}
.county-cta .county-cta-box {
  max-width: 78rem;
  margin: 0 auto;
  padding: clamp(1.15rem, 2.5vw, 2rem);
  border: 1px solid color-mix(in srgb, var(--stone-link), transparent 65%);
  border-radius: 0.75rem;
  background: linear-gradient(145deg, color-mix(in srgb, var(--stone-brand-deep), transparent 12%), color-mix(in srgb, var(--stone-brand-surface), transparent 35%));
  box-shadow: 0 14px 28px color-mix(in srgb, var(--stone-brand-deep), transparent 72%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.1rem 1.4rem;
}
.county-cta .county-cta-tx {
  margin: 0;
  color: var(--stone-text);
  font-size: clamp(1rem, 1.6vw, 1.22rem);
  line-height: 1.55;
  font-weight: 600;
  max-width: 48rem;
}
.county-cta .county-cta-ph,
.county-cta .county-cta-rq {
  color: var(--stone-link);
  text-decoration: none;
  font-weight: 700;
}
.county-cta .county-cta-ph:hover, .county-cta .county-cta-ph:focus-visible,
.county-cta .county-cta-rq:hover,
.county-cta .county-cta-rq:focus-visible {
  text-decoration: none;
  color: var(--stone-link-hover);
}
.county-cta .county-cta-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  min-height: 3.48rem;
  padding: 0.744rem 1.38rem;
  border: 1px solid color-mix(in srgb, var(--stone-text), transparent 48%);
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--stone-text), transparent 86%);
  color: var(--stone-text);
  text-decoration: none;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--stone-link), transparent 82%), 0 10px 18px color-mix(in srgb, var(--stone-brand-deep), transparent 78%);
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.county-cta .county-cta-btn:visited {
  color: var(--stone-text);
}
.county-cta .county-cta-btn:hover, .county-cta .county-cta-btn:focus-visible {
  border-color: var(--stone-link);
  background: var(--stone-link);
  color: var(--stone-brand-deep);
  text-decoration: none;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--stone-brand-deep), transparent 82%), 0 14px 24px color-mix(in srgb, var(--stone-brand-deep), transparent 70%);
}
.county-cta .county-cta-btn:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--stone-text), transparent 20%);
  outline-offset: 2px;
}
@media (max-width: 1023.98px) {
  .county-cta .county-cta-box {
    flex-direction: column;
    align-items: flex-start;
  }
  .county-cta .county-cta-tx {
    max-width: none;
  }
}
@media (max-width: 639.98px) {
  .county-cta {
    margin: 1rem 0 2rem;
  }
  .county-cta .county-cta-box {
    padding: 1rem;
    border-radius: 0.55rem;
  }
  .county-cta .county-cta-btn {
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}

#insight_blogs.p-insight-blogs {
  position: relative;
  z-index: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-size: cover;
}
#insight_blogs.p-insight-blogs .part-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}
#insight_blogs.p-insight-blogs .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  #insight_blogs.p-insight-blogs .part-header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  #insight_blogs.p-insight-blogs .part-header {
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 1536px) {
  #insight_blogs.p-insight-blogs .part-header {
    margin-bottom: 3.5rem;
  }
}
#insight_blogs.p-insight-blogs .part-header .h2 {
  color: #ffffff;
}
#insight_blogs.p-insight-blogs .part-slider {
  padding-bottom: 4rem;
}
@media (min-width: 768px) {
  #insight_blogs.p-insight-blogs .part-slider {
    padding-bottom: 5rem;
  }
}
@media (min-width: 1280px) {
  #insight_blogs.p-insight-blogs .part-slider {
    padding-bottom: 6rem;
  }
}
#insight_blogs.p-insight-blogs .part-slider .slick-list {
  margin-right: -1.25rem;
  margin-left: -1.25rem;
  padding-bottom: 0.75rem;
}
@media (min-width: 1024px) {
  #insight_blogs.p-insight-blogs .part-slider .slick-list {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
#insight_blogs.p-insight-blogs .part-slider .slick-track {
  display: flex;
}
#insight_blogs.p-insight-blogs .part-slider .slick-slide {
  height: inherit;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}
#insight_blogs.p-insight-blogs .part-slider .slick-dots {
  display: none !important;
}
#insight_blogs.p-insight-blogs .c-post-card .part-media.is-insights {
  margin: -0.375rem;
  margin-bottom: 1.25rem;
  height: 190px;
}
#insight_blogs.p-insight-blogs .c-post-card .part-media.is-insights::before {
  display: none;
}
#insight_blogs.p-insight-blogs .c-post-card .part-title.is-insights {
  margin-bottom: 0.25rem;
}
#insight_blogs.p-insight-blogs .c-post-card .part-excerpt.is-insights {
  margin-top: 0.75rem;
}
#insight_blogs.p-insight-blogs .c-post-card .part-link-icon.is-insights {
  margin-left: 0.25rem;
}
#insight_blogs.p-insight-blogs .part-card,
#insight_blogs.p-insight-blogs .part-card:hover,
#insight_blogs.p-insight-blogs .part-card:focus-within {
  box-shadow: var(--stone-glass-card-shadow) !important;
}
#insight_blogs.p-insight-blogs .part-card {
  transition: none;
}
#insight_blogs.p-insight-blogs .part-card .part-link {
  color: var(--stone-link);
}
#insight_blogs.p-insight-blogs .part-card .part-link:hover, #insight_blogs.p-insight-blogs .part-card .part-link:focus-visible, #insight_blogs.p-insight-blogs .part-card .part-link:hover .part-link-icon, #insight_blogs.p-insight-blogs .part-card .part-link:focus-visible .part-link-icon {
  color: #ffffff;
}

@media (min-width: 1024px) {
  #insight_blogs.p-insight-blogs {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  #insight_blogs.p-insight-blogs {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
#insight_blogs.p-insight-blogs::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}

#insight_awards.p-insight-awards {
  position: relative;
  z-index: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  color: #ffffff;
  overflow: hidden;
}
#insight_awards.p-insight-awards .part-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#insight_awards.p-insight-awards .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
@media (min-width: 768px) {
  #insight_awards.p-insight-awards .part-header {
    margin-bottom: 3rem;
  }
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-header {
    margin-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  #insight_awards.p-insight-awards .part-header {
    margin-bottom: 5rem;
  }
}
#insight_awards.p-insight-awards .part-header h2 {
  color: #ffffff;
}
#insight_awards.p-insight-awards .part-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-grid {
    margin-right: -1rem;
    margin-left: -1rem;
  }
}
@media (min-width: 1536px) {
  #insight_awards.p-insight-awards .part-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
#insight_awards.p-insight-awards .part-item {
  width: 100%;
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 640px) {
  #insight_awards.p-insight-awards .part-item {
    width: 50%;
  }
}
@media (min-width: 768px) {
  #insight_awards.p-insight-awards .part-item {
    width: 33.333333%;
    margin-top: 4rem;
  }
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-item {
    width: 25%;
    margin-top: 4.5rem;
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1536px) {
  #insight_awards.p-insight-awards .part-item {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
#insight_awards.p-insight-awards .part-card {
  height: 100%;
  padding: 1.5rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(10, 31, 62, 0.7);
  text-align: center;
  line-height: 1.33;
  transition: border-color 0.3s ease, transform 0.3s ease;
}
@media (min-width: 768px) {
  #insight_awards.p-insight-awards .part-card {
    padding: 1.5rem;
  }
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-card {
    padding: 2rem;
  }
}
@media (min-width: 1024px) {
  #insight_awards.p-insight-awards .part-card:hover {
    border-color: rgba(255, 255, 255, 0.7);
    transform: translateY(-0.75rem);
  }
}
#insight_awards.p-insight-awards .part-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  max-width: 90px;
  margin: -4.625rem auto 1rem;
  padding: 0.5rem;
  border: 4px solid #bae6fd;
  border-radius: 999px;
  background: #ffffff;
}
@media (min-width: 768px) {
  #insight_awards.p-insight-awards .part-badge {
    width: 120px;
    height: 120px;
    max-width: 120px;
    margin-top: -5.25rem;
  }
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-badge {
    width: 148px;
    height: 148px;
    max-width: 148px;
    margin-top: -6.5rem;
  }
}
#insight_awards.p-insight-awards .part-badge-image {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  margin: auto;
  object-fit: contain;
}
#insight_awards.p-insight-awards .part-title {
  margin-bottom: 0.75rem;
  color: #ffffff;
  font-size: 1.125rem;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  #insight_awards.p-insight-awards .part-title {
    font-size: 1.25rem;
  }
}
@media (min-width: 1280px) {
  #insight_awards.p-insight-awards .part-title {
    font-size: 1.375rem;
  }
}
#insight_awards.p-insight-awards .part-date {
  display: block;
  margin-bottom: 0.5rem;
  line-height: 1.2;
}
#insight_awards.p-insight-awards .part-desc {
  margin-bottom: 0;
}

@media (min-width: 640px) {
  #insight_awards.p-insight-awards {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
@media (min-width: 1024px) {
  #insight_awards.p-insight-awards {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
}
#insight_awards.p-insight-awards::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}

#insight_new.p-insight-news {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  #insight_new.p-insight-news {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  #insight_new.p-insight-news {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  #insight_new.p-insight-news {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
#insight_new.p-insight-news .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  #insight_new.p-insight-news .part-header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  #insight_new.p-insight-news .part-header {
    margin-bottom: 3rem;
  }
}
#insight_new.p-insight-news .part-slider {
  padding-bottom: 4rem;
}
@media (min-width: 1024px) {
  #insight_new.p-insight-news .part-slider {
    padding-right: 4rem;
    padding-bottom: 0;
    padding-left: 4rem;
  }
}
@media (min-width: 1280px) {
  #insight_new.p-insight-news .part-slider {
    padding-right: 5rem;
    padding-left: 5rem;
  }
}
@media (min-width: 1536px) {
  #insight_new.p-insight-news .part-slider {
    padding-right: 6rem;
    padding-left: 6rem;
  }
}
#insight_new.p-insight-news .part-slider .slick-dots {
  display: none !important;
}
#insight_new.p-insight-news .part-slider .slick-arrow:hover {
  background-color: #3b82f6;
}
#insight_new.p-insight-news .part-card {
  position: relative;
  z-index: 0;
  padding: 2rem 1rem;
  color: #ffffff;
  background-size: cover;
  font-weight: 500;
  line-height: 1.5;
}
@media (min-width: 768px) {
  #insight_new.p-insight-news .part-card {
    padding: 3rem 1.5rem;
  }
}
@media (min-width: 1024px) {
  #insight_new.p-insight-news .part-card {
    line-height: 1.7;
  }
}
@media (min-width: 1280px) {
  #insight_new.p-insight-news .part-card {
    padding: 5rem 2.5rem;
    font-size: 20px;
  }
}
#insight_new.p-insight-news .part-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}
#insight_new.p-insight-news .part-card h4 {
  color: #ffffff;
  font-weight: 600;
}
#insight_new.p-insight-news .part-card a:not(.btn) {
  color: #ffffff;
  text-decoration: underline;
  overflow-wrap: anywhere;
}
#insight_new.p-insight-news .part-card a:not(.btn):hover {
  text-decoration: none;
}
#insight_new.p-insight-news .part-date {
  display: inline-block;
  margin-bottom: 1.5rem;
  padding: 10px;
  color: #3b82f6;
  background-color: #ffffff;
  font-size: 14px;
  font-weight: 500;
}
@media (min-width: 640px) {
  #insight_new.p-insight-news .part-date {
    font-size: 15px;
  }
}
@media (min-width: 1024px) {
  #insight_new.p-insight-news .part-date {
    font-size: 16px;
  }
}
#insight_new.p-insight-news .part-content > * + * {
  margin-top: 1rem;
}
@media (min-width: 768px) {
  #insight_new.p-insight-news .part-content > * + * {
    margin-top: 1.5rem;
  }
}
@media (min-width: 1280px) {
  #insight_new.p-insight-news .part-content > * + * {
    margin-top: 2rem;
  }
}

#insight_recognitions.p-insight-recognitions {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  #insight_recognitions.p-insight-recognitions {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  #insight_recognitions.p-insight-recognitions {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
#insight_recognitions.p-insight-recognitions .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  #insight_recognitions.p-insight-recognitions .part-header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-header {
    margin-bottom: 3rem;
  }
}
#insight_recognitions.p-insight-recognitions .part-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 1.5rem;
}
@media (min-width: 1024px) {
  #insight_recognitions.p-insight-recognitions .part-grid {
    gap: 2rem;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-grid {
    gap: 2.5rem;
  }
}
#insight_recognitions.p-insight-recognitions .part-item {
  flex: 1 1 320px;
  width: 100%;
  max-width: 520px;
  min-width: 0;
  border: 1px solid rgba(55, 98, 161, 0.2);
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-item {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  #insight_recognitions.p-insight-recognitions .part-item:hover .part-content {
    background: var(--stone-surface-hover);
  }
}
#insight_recognitions.p-insight-recognitions .part-button {
  position: relative;
  margin-bottom: 0;
  padding: 1rem 1rem;
  padding-right: 3rem;
  background: var(--stone-header-block);
  color: #ffffff;
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.41;
}
#insight_recognitions.p-insight-recognitions .part-button::after {
  content: "\e900";
  position: absolute;
  top: 1rem;
  right: 0.5rem;
  display: inline-block;
  font-family: icomoon;
  transition: transform 0.2s ease;
}
#insight_recognitions.p-insight-recognitions .part-button.active::after {
  transform: rotate(180deg);
}
@media (min-width: 768px) {
  #insight_recognitions.p-insight-recognitions .part-button {
    padding: 1.25rem 1.25rem;
    padding-right: 1.25rem;
    font-size: 1.25rem;
    pointer-events: none;
  }
  #insight_recognitions.p-insight-recognitions .part-button::after {
    display: none;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-button {
    padding: 2.25rem 2rem;
    font-size: 1.5rem;
  }
}
#insight_recognitions.p-insight-recognitions .part-content {
  display: none;
  padding: 1.25rem 1rem;
  background: var(--stone-surface);
}
@media (min-width: 768px) {
  #insight_recognitions.p-insight-recognitions .part-content {
    display: block;
    padding: 1.5rem 1.25rem;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-content {
    padding: 2.25rem 2rem;
  }
}
#insight_recognitions.p-insight-recognitions .part-content ul > li + li {
  margin-top: 1rem;
}
@media (min-width: 768px) {
  #insight_recognitions.p-insight-recognitions .part-content ul > li + li {
    margin-top: 1.5rem;
  }
}
@media (min-width: 1280px) {
  #insight_recognitions.p-insight-recognitions .part-content ul > li + li {
    margin-top: 2rem;
  }
}

.p-insight-icons {
  position: relative;
  z-index: 0;
  margin-bottom: 2rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  color: #ffffff;
  background-size: cover;
}

@media (min-width: 640px) {
  .p-insight-icons {
    margin-bottom: 3rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .p-insight-icons {
    margin-bottom: 4rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .p-insight-icons {
    margin-bottom: 5rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .p-insight-icons {
    margin-bottom: 6rem;
    padding-top: 9rem;
  }
}
.p-insight-icons::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}

.p-insight-icons .part-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 1023.98px) {
  .p-insight-icons .part-wrap {
    max-width: 500px;
  }
}
.p-insight-icons .part-slider .slick-list {
  margin-right: -1rem;
  margin-left: -1rem;
}
@media (min-width: 1280px) {
  .p-insight-icons .part-slider .slick-list {
    margin-right: -1.5rem;
    margin-left: -1.5rem;
  }
}
@media (min-width: 1536px) {
  .p-insight-icons .part-slider .slick-list {
    margin-right: -3rem;
    margin-left: -3rem;
  }
}
.p-insight-icons .part-slider .slick-arrow {
  display: none !important;
}
.p-insight-icons .part-slider .slick-dots li:only-child {
  display: none !important;
}
.p-insight-icons .part-slide {
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 1280px) {
  .p-insight-icons .part-slide {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .p-insight-icons .part-slide {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
.p-insight-icons .part-card {
  position: relative;
  text-align: center;
}
.p-insight-icons .part-card:hover .part-icon {
  background: #8ec5eb;
}
.p-insight-icons .part-icon-wrap {
  position: relative;
  z-index: 1;
  display: inline-block;
  width: 90px;
  height: 90px;
  margin-right: auto;
  margin-bottom: 1rem;
  margin-left: auto;
  font-size: 2rem;
}
@media (min-width: 640px) {
  .p-insight-icons .part-icon-wrap {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .p-insight-icons .part-icon-wrap {
    margin-bottom: 2rem;
    font-size: 2.375rem;
  }
}
.p-insight-icons .part-icon {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  color: var(--stone-link);
  box-shadow: 0 3px 27px rgba(0, 0, 0, 0.09);
  transition: background-color 0.25s ease;
}
.p-insight-icons .part-title {
  margin-bottom: 0;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .p-insight-icons .part-title {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1536px) {
  .p-insight-icons .part-title {
    font-size: 1.125rem;
  }
}

/* Not blog-only, but this code might be nice to add to the blog section. */
.archive-posts {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 640px) {
  .archive-posts {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .archive-posts {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .archive-posts {
    padding-top: 6rem;
    padding-bottom: 4rem;
  }
}
.archive-posts .part-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  row-gap: 1.5rem;
}
@media (min-width: 1280px) {
  .archive-posts .part-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
    row-gap: 2.5rem;
  }
}
.archive-posts .part-pagination {
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .archive-posts .part-pagination {
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .archive-posts .part-pagination {
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .archive-posts .part-pagination {
    padding-bottom: 5rem;
  }
}
.archive-posts .part-col {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 640px) {
  .archive-posts .part-col {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .archive-posts .part-col {
    width: 33.3333%;
  }
}
@media (min-width: 1280px) {
  .archive-posts .part-col {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.archive-posts .part-col.is-compact {
  margin-bottom: 1rem;
}

.pagination-wrap {
  margin-bottom: 2rem;
}
.pagination-wrap .page-numbers {
  text-decoration: none;
}
.pagination-wrap .page-numbers:hover, .pagination-wrap .page-numbers:focus-visible {
  text-decoration: none;
}

.c-post-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1rem;
  padding-bottom: 1rem;
  border: 1px solid var(--stone-surface-border);
  background: var(--stone-surface);
  color: var(--stone-text);
  line-height: 1.7;
  font-weight: 500;
}

@media (min-width: 768px) {
  .c-post-card {
    padding-bottom: 1.5rem;
    font-size: 1.125rem;
  }
}
@media (min-width: 1280px) {
  .c-post-card {
    padding-bottom: 2rem;
    font-size: 1.25rem;
  }
}
.c-post-card .part-media-wrap {
  position: relative;
}
.c-post-card .part-media {
  position: relative;
  display: block;
  margin: -0.375rem;
  margin-bottom: 1.25rem;
  overflow: hidden;
}
.c-post-card .part-media::before {
  content: "";
  display: block;
  padding-top: 40%;
}
.c-post-card .part-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.c-post-card .part-media.is-content {
  margin: 0;
}
.c-post-card .part-media.is-content::before {
  padding-top: 80%;
}
.c-post-card .part-media.is-index {
  margin: -0.375rem;
  margin-bottom: 1.25rem;
  height: 190px;
}
.c-post-card .part-media.is-index::before {
  display: none;
}
.c-post-card:hover .part-media img {
  transform: scale(1.1);
}
.c-post-card .part-date-badge {
  position: absolute;
  top: 0.625rem;
  left: 0.625rem;
  display: inline-block;
  margin-bottom: 1.5rem;
  padding: 0.625rem;
  background: var(--stone-bg-elevated);
  color: var(--stone-link);
  font-weight: 500;
  font-size: 0.875rem;
}
@media (min-width: 640px) {
  .c-post-card .part-date-badge {
    font-size: 0.9375rem;
  }
}
@media (min-width: 1024px) {
  .c-post-card .part-date-badge {
    font-size: 1rem;
  }
}
.c-post-card .part-title {
  margin: 0;
  color: var(--stone-text);
  line-height: 1.4;
  font-weight: 600;
}
.c-post-card .part-title.is-content {
  color: var(--stone-link);
  transition: color 0.25s ease;
  font-size: 1.125rem;
}
@media (min-width: 1024px) {
  .c-post-card .part-title.is-content {
    font-size: 1.25rem;
    line-height: 1.25;
  }
}
.c-post-card .part-title.is-index {
  color: var(--stone-text);
}
.c-post-card.is-content:hover .part-title.is-content {
  color: var(--stone-link-hover);
}
.c-post-card .part-excerpt {
  margin-top: 0.75rem;
  margin-bottom: 0;
  color: var(--stone-text-muted);
}
@media (min-width: 640px) {
  .c-post-card .part-excerpt {
    font-size: 0.875rem;
  }
}
.c-post-card .part-excerpt.is-content {
  margin-top: 0.5rem;
  margin-bottom: 0;
}
.c-post-card .part-excerpt.is-index {
  margin-top: 0.75rem;
}
.c-post-card .part-link {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  color: var(--stone-link);
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
}
.c-post-card .part-link:hover, .c-post-card .part-link:focus-visible {
  color: var(--stone-link-hover);
}
.c-post-card .part-link.is-content {
  margin-top: 0.75rem;
}
.c-post-card .part-link.is-content:hover .part-link-icon, .c-post-card .part-link.is-content:focus-visible .part-link-icon {
  transform: translateX(0.2rem);
}
.c-post-card .part-link.is-index {
  margin-top: auto;
}
.c-post-card .part-link-icon {
  position: relative;
  top: 0.125rem;
  margin-left: 0.25rem;
  font-weight: 700;
  transform: scale(1.05);
}
.c-post-card .part-link-icon.is-content {
  margin-left: 0.5rem;
  font-size: 1.375rem;
  transition: transform 0.25s ease;
}
.c-post-card .part-body.is-content {
  padding: 1rem 0.5rem 1rem;
  line-height: 1.6;
}
@media (min-width: 640px) {
  .c-post-card .part-body.is-content {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .c-post-card .part-body.is-content {
    padding-top: 1.5rem;
    padding-right: 2rem;
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .c-post-card .part-body.is-content {
    padding-right: 3rem;
  }
}
.c-post-card.is-content {
  overflow: hidden;
  padding: 0.5rem;
}
.c-post-card.is-index {
  padding: 1rem;
  background: rgba(20, 30, 47, 0.78);
  border-color: rgba(137, 197, 231, 0.28);
}

.c-event-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--stone-bg-elevated);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.7;
}

.c-event-card .part-media {
  position: relative;
  display: block;
  margin-bottom: 0;
}
.c-event-card .part-media::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.c-event-card .part-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-event-card .part-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1rem;
  border: 1px solid var(--stone-surface-border);
  border-top: 0;
}
.c-event-card .part-body.is-inperson {
  font-size: 1rem;
}
.c-event-card .part-title {
  margin: 0;
  color: var(--stone-link);
  line-height: 1.5;
}
.c-event-card .part-title-link {
  color: inherit;
  text-decoration: none;
}
.c-event-card .part-title-link:hover, .c-event-card .part-title-link:focus-visible {
  color: var(--stone-link-hover);
}
.c-event-card .part-excerpt {
  margin-top: 0.75rem;
  margin-bottom: 0;
  color: var(--stone-text-muted);
}
.c-event-card .part-meta-list {
  margin-top: 0.75rem;
  margin-bottom: 1rem;
  padding: 0;
  list-style: none;
}
.c-event-card .part-meta-item i {
  margin-right: 0.25rem;
  position: relative;
  top: 1px;
}
.c-event-card .part-cta {
  z-index: 0;
  display: inline-block;
  margin-top: auto;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  background: var(--stone-link);
  color: #ffffff;
  text-align: center;
  text-transform: uppercase;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
}
@media (min-width: 1024px) {
  .c-event-card .part-cta {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
.c-event-card .part-cta:hover, .c-event-card .part-cta:focus-visible {
  color: #ffffff;
  background: var(--stone-link-hover);
}

.blog-index-intro {
  padding-top: 2rem;
  text-align: center;
}

@media (min-width: 768px) {
  .blog-index-intro {
    padding-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .blog-index-intro {
    padding-top: 4rem;
  }
}
@media (min-width: 1280px) {
  .blog-index-intro {
    padding-top: 5rem;
  }
}
.blog-index-section {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.blog-index-section .part-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  row-gap: 1.5rem;
}
@media (min-width: 1280px) {
  .blog-index-section .part-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
    row-gap: 2.5rem;
  }
}
.blog-index-section .part-col {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 640px) {
  .blog-index-section .part-col {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .blog-index-section .part-col {
    width: 33.3333%;
  }
}
@media (min-width: 1280px) {
  .blog-index-section .part-col {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}

@media (min-width: 768px) {
  .blog-index-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .blog-index-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .blog-index-section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.blog-index-section.is-highlight {
  position: relative;
  z-index: 0;
  background-size: cover;
  background-position: center;
}
.blog-index-section.is-highlight::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}
.blog-index-section .part-bg-image {
  display: none;
}
.blog-index-section.is-last {
  padding-bottom: 2rem;
}
@media (min-width: 1536px) {
  .blog-index-section.is-last {
    padding-bottom: 6rem;
  }
}

.blog-index-pagination {
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .blog-index-pagination {
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .blog-index-pagination {
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .blog-index-pagination {
    padding-bottom: 5rem;
  }
}
/*
html[data-theme="light"] .c-post-card {
  &.is-index {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(55, 98, 161, 0.32);
  }
}

@media (prefers-color-scheme: light) {
  html:not([data-theme="dark"]) .c-post-card {
    &.is-index {
      background: rgba(255, 255, 255, 0.92);
      border-color: rgba(55, 98, 161, 0.32);
    }
  }
}
*/
.news-page.part-intro {
  padding-top: 2rem;
  text-align: center;
}
@media (min-width: 768px) {
  .news-page.part-intro {
    padding-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .news-page.part-intro {
    padding-top: 4rem;
  }
}
@media (min-width: 1280px) {
  .news-page.part-intro {
    padding-top: 5rem;
  }
}
.news-page.part-featured-section {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
@media (min-width: 768px) {
  .news-page.part-featured-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .news-page.part-featured-section {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
}
@media (min-width: 1280px) {
  .news-page.part-featured-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
.news-page .part-featured-slider {
  padding-right: 0;
  padding-bottom: 4rem;
  padding-left: 0;
}
@media (min-width: 1024px) {
  .news-page .part-featured-slider {
    padding-right: 4rem;
    padding-bottom: 0;
    padding-left: 4rem;
  }
}
@media (min-width: 1280px) {
  .news-page .part-featured-slider {
    padding-right: 5rem;
    padding-left: 5rem;
  }
}
@media (min-width: 1536px) {
  .news-page .part-featured-slider {
    padding-right: 6rem;
    padding-left: 6rem;
  }
}
.news-page .part-featured-slider .slick-dots {
  display: none !important;
}
.news-page .part-featured-slider .slick-track {
  display: flex;
}
.news-page .part-featured-slider .slick-slide {
  height: inherit !important;
}
.news-page .part-featured-slider .slick-slide > div {
  height: 100%;
}
.news-page .part-featured-item {
  height: 100%;
}
.news-page .part-featured-card {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  min-height: 18.75rem;
  padding: 1.5rem 1rem;
  background-size: cover;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  overflow: hidden;
}
@media (min-width: 768px) {
  .news-page .part-featured-card {
    min-height: 17.5rem;
    padding: 1.5rem 1.25rem;
  }
}
@media (min-width: 1280px) {
  .news-page .part-featured-card {
    min-height: 16.75rem;
    padding: 1.75rem 1.5rem;
    font-size: 1.25rem;
  }
}
.news-page .part-featured-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(3, 23, 54, 0.8);
}
.news-page .part-featured-card a:not(.btn) {
  color: #ffffff;
  text-decoration: underline;
  overflow-wrap: anywhere;
}
.news-page .part-featured-card a:not(.btn):hover {
  text-decoration: none;
}
.news-page .part-featured-bg-image {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-page .part-featured-title {
  margin: 0;
  color: #ffffff;
  font-weight: 600;
  line-height: 1.25;
  max-height: 2.5em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.news-page .part-featured-date {
  align-self: flex-start;
  margin-top: 1rem;
  margin-bottom: 1.5rem;
}
.news-page .part-featured-content {
  margin-bottom: 0;
}
.news-page .part-featured-content p {
  margin-bottom: 0;
  max-height: 4.5em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}
.news-page .part-featured-content p + p {
  display: none;
}
.news-page .part-featured-link {
  display: inline-block;
  margin-top: auto;
  padding-top: 0.875rem;
}
.news-page.part-video-section {
  padding-top: 2rem;
  padding-bottom: 3rem;
}
@media (min-width: 1024px) {
  .news-page.part-video-section {
    padding-right: 1.25rem;
    padding-bottom: 3rem;
    padding-left: 1.25rem;
  }
}
@media (min-width: 1536px) {
  .news-page.part-video-section {
    padding-bottom: 5rem;
    max-width: 1350px;
  }
}
.news-page.part-video-section iframe {
  width: 100%;
}
.news-page.part-intro + .news-page.part-video-section {
  margin-top: 3rem;
}
@media (min-width: 1024px) {
  .news-page.part-intro + .news-page.part-video-section {
    margin-top: 4rem;
  }
}
@media (min-width: 1536px) {
  .news-page.part-intro + .news-page.part-video-section {
    margin-top: 6rem;
  }
}
.news-page.part-posts-section {
  padding-top: 1rem;
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .news-page.part-posts-section {
    padding-top: 1.5rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .news-page.part-posts-section {
    padding-top: 2rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .news-page.part-posts-section {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
  }
}

.archive-posts .part-grid.is-center {
  justify-content: center;
}

.news-page .part-posts-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  row-gap: 1.5rem;
  justify-content: center;
}
.news-page .part-posts-grid .part-col {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 640px) {
  .news-page .part-posts-grid .part-col {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .news-page .part-posts-grid .part-col {
    width: 33.3333%;
  }
}
@media (min-width: 1280px) {
  .news-page .part-posts-grid .part-col {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media (min-width: 1280px) {
  .news-page .part-posts-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
    row-gap: 2.5rem;
  }
}
.news-page .part-loadmore-wrap {
  margin-top: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .news-page .part-loadmore-wrap {
    margin-top: 2rem;
  }
}
@media (min-width: 1280px) {
  .news-page .part-loadmore-wrap {
    margin-top: 2.5rem;
  }
}
.news-page .part-loadmore-wrap .c-cta-button {
  z-index: 0;
  display: inline-block;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  background: var(--stone-link);
  color: #ffffff;
  text-transform: uppercase;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
}
@media (min-width: 1024px) {
  .news-page .part-loadmore-wrap .c-cta-button {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
.news-page .part-loadmore-wrap .c-cta-button:hover, .news-page .part-loadmore-wrap .c-cta-button:focus-visible {
  color: #ffffff;
  text-decoration: none;
}
.news-page .part-loadmore-wrap .c-cta-button__label {
  position: relative;
  z-index: 1;
}
.news-page .part-no-more-post {
  display: none;
}

.events-page-intro {
  padding-top: 2rem;
  text-align: center;
}

@media (min-width: 768px) {
  .events-page-intro {
    padding-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .events-page-intro {
    padding-top: 4rem;
  }
}
@media (min-width: 1280px) {
  .events-page-intro {
    padding-top: 5rem;
  }
}
.events-page__header {
  margin-bottom: 1.5rem;
  text-align: center;
}

@media (min-width: 768px) {
  .events-page__header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .events-page__header {
    margin-bottom: 2.5rem;
  }
}
.events-page-feature {
  padding-top: 2rem;
  padding-bottom: 1rem;
}

@media (min-width: 768px) {
  .events-page-feature {
    padding-top: 3rem;
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .events-page-feature {
    padding-top: 4rem;
    padding-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .events-page-feature {
    padding-top: 5rem;
    padding-bottom: 2.5rem;
  }
}
.events-feature-card {
  display: flex;
  flex-wrap: wrap;
  border: 1px solid rgba(137, 197, 231, 0.4);
  background: var(--stone-bg-elevated);
}

@media (min-width: 1024px) {
  .events-feature-card {
    flex-direction: row-reverse;
  }
}
.events-feature-card__media-col,
.events-feature-card__content {
  width: 100%;
}

@media (min-width: 1024px) {
  .events-feature-card__media-col,
  .events-feature-card__content {
    width: 50%;
  }
  .events-feature-card__media-col {
    padding-left: 1.25rem;
  }
}
.events-feature-card__media {
  position: relative;
  display: block;
  margin-bottom: 0;
}

.events-feature-card__media::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}

.events-feature-card__media--square::before {
  padding-top: 100%;
}

.events-feature-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.events-feature-card__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem 1rem;
}

@media (min-width: 768px) {
  .events-feature-card__content {
    padding: 2rem 1.5rem;
  }
}
@media (min-width: 1280px) {
  .events-feature-card__content {
    padding: 2.5rem 2rem;
  }
}
.events-feature-card__content-inner {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--stone-text);
}

.events-feature-card__content-inner--inperson {
  font-size: 1rem;
}

@media (min-width: 768px) {
  .events-feature-card__content-inner--inperson {
    font-size: 1.125rem;
  }
}
@media (min-width: 1280px) {
  .events-feature-card__content-inner--inperson {
    font-size: 1.25rem;
  }
}
.events-feature-card__title {
  color: var(--stone-link);
}

.events-feature-card__description {
  margin-top: 1rem;
  color: var(--stone-text-muted);
}

.events-feature-card__description > * + * {
  margin-top: 1.25rem;
}

.events-feature-card__description ul {
  margin: 0;
  padding-left: 1.25rem;
  list-style: disc;
}

.events-feature-card__description ol {
  margin: 0;
  padding-left: 1.25rem;
  list-style: decimal;
}

.events-feature-card__description li + li {
  margin-top: 1rem;
}

.events-feature-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.25rem;
  margin-bottom: 0;
  padding: 0;
  list-style: none;
  font-size: 0.75rem;
}

@media (min-width: 640px) {
  .events-feature-card__meta {
    font-size: 0.875rem;
  }
}
@media (min-width: 1024px) {
  .events-feature-card__meta {
    font-size: 1rem;
  }
}
.events-feature-card__meta i {
  margin-right: 0.25rem;
  color: var(--stone-link);
  position: relative;
  top: 1px;
}

.events-feature-card__cta {
  margin-top: 1.5rem;
}

@media (min-width: 1280px) {
  .events-feature-card__cta {
    margin-top: 2rem;
  }
}
.events-page-list--virtual {
  padding-top: 1rem;
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .events-page-list--virtual {
    padding-top: 1.5rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .events-page-list--virtual {
    padding-top: 2rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .events-page-list--virtual {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
  }
}
.events-page-feature-band {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background: rgba(137, 197, 231, 0.14);
}

/*
html[data-theme="light"] .events-page-feature-band {
  background: #dbf1fa;
}
*/
.events-page-list--inperson {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .events-page-list--inperson {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .events-page-list--inperson {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .events-page-list--inperson {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .events-page-list--inperson {
    padding-bottom: 6rem;
  }
}
.events-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 1.5rem;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}

.events-page-list__grid {
  justify-content: center;
}

.events-grid__card {
  height: 100%;
}

.events-page-list__actions {
  margin-top: 1.5rem;
  text-align: center;
}

.events-page-list__loadmore,
.events-page-list__no-more {
  text-align: center;
}

.events-page-list__actions--hidden {
  display: none;
}

@media (min-width: 768px) {
  .events-page-list__actions {
    margin-top: 2rem;
  }
}
@media (min-width: 1280px) {
  .events-page-list__actions {
    margin-top: 2.5rem;
  }
}
.videos-page {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 640px) {
  .videos-page {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .videos-page {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .videos-page {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.videos-page .part-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}
@media (min-width: 1024px) {
  .videos-page .part-grid {
    margin-right: -1rem;
    margin-left: -1rem;
  }
}
.videos-page .part-col {
  width: 100%;
  margin-bottom: 1rem;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
@media (min-width: 768px) {
  .videos-page .part-col {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .videos-page .part-col {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}

.video-card {
  position: relative;
  text-align: center;
}

.video-card .part-media-wrap {
  position: relative;
  z-index: 0;
}
.video-card .part-media-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.7);
}
.video-card .part-media {
  position: relative;
  display: block;
  overflow: hidden;
  margin-bottom: 0;
}
.video-card .part-media::before {
  content: "";
  display: block;
  padding-top: 70%;
}
.video-card .part-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.video-card .part-play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  text-decoration: none !important;
  transition: margin-top 0.2s ease;
}
.video-card .part-play:hover {
  margin-top: -0.25rem;
}
.video-card .part-play:focus-visible, .video-card .part-play:active {
  text-decoration: none !important;
}
.video-card .part-play-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
  padding-left: 0.375rem;
  border-radius: 999px;
  background: #ffffff;
  color: var(--stone-link);
  text-decoration: none !important;
  line-height: 1;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  .video-card .part-play-icon {
    width: 5.625rem;
    height: 5.625rem;
    font-size: 2.125rem;
  }
}
@media (min-width: 1536px) {
  .video-card .part-play-icon {
    width: 7.25rem;
    height: 7.25rem;
    padding-left: 0.625rem;
    font-size: 3rem;
  }
}
.video-card .part-body {
  padding: 1rem;
  text-align: center;
}
@media (min-width: 1024px) {
  .video-card .part-body {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
.video-card .part-title {
  color: var(--stone-link);
}

.post-type-archive-ss_webinars .part-webinar-title-link,
.post-type-archive-ss_webinars .part-webinar-title-link:hover,
.post-type-archive-ss_webinars .part-webinar-title-link:focus-visible,
.page-template-archive-ss_webinars .part-webinar-title-link,
.page-template-archive-ss_webinars .part-webinar-title-link:hover,
.page-template-archive-ss_webinars .part-webinar-title-link:focus-visible,
.page-template-archive-ss_webinars-php .part-webinar-title-link,
.page-template-archive-ss_webinars-php .part-webinar-title-link:hover,
.page-template-archive-ss_webinars-php .part-webinar-title-link:focus-visible {
  text-decoration: none;
}
.post-type-archive-ss_webinars .part-webinar-date,
.page-template-archive-ss_webinars .part-webinar-date,
.page-template-archive-ss_webinars-php .part-webinar-date {
  border-radius: 0.375rem;
  border: 1px solid var(--stone-glass-card-border);
  background: var(--stone-glass-card-bg);
  color: var(--stone-text-muted);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.locations-page-intro {
  padding-top: 3rem;
  padding-bottom: 3rem;
  max-width: 1240px;
}

@media (min-width: 1024px) {
  .locations-page-intro {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .locations-page-intro {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.locations-page-intro__header {
  max-width: 1000px;
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  text-align: center;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--stone-text-muted);
}

@media (min-width: 1024px) {
  .locations-page-intro__header {
    margin-bottom: 3rem;
    line-height: 1.75;
  }
}
.locations-page-intro__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (min-width: 640px) {
  .locations-page-intro__gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .locations-page-intro__gallery {
    gap: 2rem;
  }
}
.locations-page-intro__gallery-item {
  margin-bottom: 0;
}

.locations-page-intro__gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.locations-page-offices {
  position: relative;
  z-index: 1;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.locations-page-offices::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(55, 98, 161, 0.08);
}

@media (min-width: 1024px) {
  .locations-page-offices {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .locations-page-offices {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.locations-page-offices__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  margin-bottom: 0;
  opacity: 0.05;
}

.locations-page-offices__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.locations-page-offices__header {
  margin-bottom: 2rem;
  text-align: center;
}

@media (min-width: 1024px) {
  .locations-page-offices__header {
    margin-bottom: 3rem;
  }
}
.locations-page-offices__list {
  display: grid;
  gap: 3rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--stone-text-muted);
}

@media (min-width: 1024px) {
  .locations-page-offices__list {
    gap: 4rem;
    line-height: 1.75;
  }
}
.location-office {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-right: -1rem;
  margin-left: -1rem;
  row-gap: 2rem;
}

.location-office--reverse {
  flex-direction: row;
}

@media (min-width: 1024px) {
  .location-office--reverse {
    flex-direction: row-reverse;
  }
}
.location-office__media-col,
.location-office__content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 1024px) {
  .location-office__media-col {
    width: 48%;
  }
  .location-office__content {
    width: 52%;
  }
}
.location-office__media {
  margin-bottom: 0;
}

.location-office__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 1023.98px) {
  .location-office__media img {
    margin-right: auto;
    margin-left: auto;
  }
}
.location-office__content h3 {
  color: var(--stone-text);
}

@media (min-width: 1024px) {
  .location-office__content h3 {
    font-size: 2rem;
  }
}
.location-office__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
  row-gap: 1rem;
}

@media (min-width: 1536px) {
  .location-office__meta {
    margin-top: 2rem;
    margin-bottom: 2rem;
    padding-top: 0.5rem;
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
.location-office__meta-item {
  display: flex;
  align-items: center;
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

@media (min-width: 640px) {
  .location-office__meta-item--address {
    width: 59%;
  }
  .location-office__meta-item--phone {
    justify-content: center;
    width: 41%;
  }
  .location-office__meta-item--address .location-office__meta-link,
  .location-office__meta-item--phone .location-office__meta-link {
    min-height: 100%;
    align-items: center;
  }
  .location-office__meta-item--address .location-office__meta-text,
  .location-office__meta-item--phone .location-office__meta-text {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 1536px) {
  .location-office__meta-item {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.location-office__meta-link {
  display: flex;
  width: 100%;
  align-items: center;
  color: var(--stone-text-muted);
  font-size: 0.9375rem;
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.location-office__meta-link:hover,
.location-office__meta-link:focus-visible,
.location-office__meta-link:active {
  color: var(--stone-link);
  text-decoration: none !important;
}

@media (min-width: 1536px) {
  .location-office__meta-link {
    font-size: 1rem;
  }
}
.location-office__meta-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin-right: 0.5rem;
  border-radius: 999px;
  background: var(--contact-info-icon-bg, #14487f);
  color: #ffffff;
  text-decoration: none !important;
}

.location-office__meta-text {
  color: inherit;
  line-height: 1.3;
  text-decoration: none !important;
}

.location-office__meta-link:hover .location-office__meta-text,
.location-office__meta-link:focus-visible .location-office__meta-text {
  color: inherit;
  text-decoration: none !important;
}

.location-office__meta-icon + .location-office__meta-text {
  margin-bottom: 2px;
}

@media (min-width: 1536px) {
  .location-office__meta-icon {
    width: 2.75rem;
    height: 2.75rem;
    margin-right: 0.875rem;
    font-size: 1.25rem;
  }
}
.location-office__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

@media (min-width: 1536px) {
  .location-office__actions {
    column-gap: 2.5rem;
  }
}
.location-office__learn-more {
  text-decoration: none;
}
.location-office__learn-more.is-learn-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 10.5rem;
  min-height: 3.25rem;
  padding: 1rem 2rem;
  border: 1px solid var(--stone-link);
  background: var(--stone-surface);
  color: var(--stone-link);
  text-align: center;
  text-transform: lowercase;
  line-height: 1.2;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  opacity: 0.9;
}
.location-office__learn-more.is-learn-more:hover, .location-office__learn-more.is-learn-more:focus-visible {
  background: var(--stone-surface-hover);
  border-color: var(--stone-link-hover);
  color: var(--stone-link-hover);
  opacity: 1;
}

.location-office__map-btn {
  text-decoration: none;
}

.locations-page-contact {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 1024px) {
  .locations-page-contact {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .locations-page-contact {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.locations-page-contact__header {
  max-width: 755px;
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  text-align: center;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--stone-text-muted);
}

@media (min-width: 1024px) {
  .locations-page-contact__header {
    margin-bottom: 3rem;
    line-height: 1.75;
  }
}
.locations-page-contact__form {
  max-width: 1110px;
  margin-right: auto;
  margin-left: auto;
}

.contact-info {
  display: flex;
  width: 100%;
  align-items: flex-start;
  gap: 1rem;
}
.contact-info.contact-info__item-link, .contact-info:hover, .contact-info:focus-visible {
  text-decoration: none !important;
}
.contact-info .part-icon {
  display: inline-flex;
  flex: 0 0 auto;
}
.contact-info .part-icon .contact-info__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  color: #ffffff;
  font-size: 24px;
  background-color: var(--stone-contact-info-icon-bg);
}
@media (min-width: 1024px) {
  .contact-info .part-icon .contact-info__icon {
    width: 60px;
    height: 60px;
    font-size: 30px;
  }
}
.contact-info .part-content {
  flex: 1 1 auto;
  align-self: center;
}
.contact-info .part-title {
  display: block;
  margin-bottom: 0.25rem;
  color: #89c5e7;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.25;
}
.contact-info .part-body,
.contact-info .part-body p,
.contact-info .part-body li {
  color: rgba(255, 255, 255, 0.92);
}
.contact-info .part-body p:last-child,
.contact-info .part-body ul:last-child {
  margin-bottom: 0;
}
.contact-info.contact-info__item-link .part-body, .contact-info.contact-info__item-link .part-body p, .contact-info.contact-info__item-link .part-body li {
  color: #ffffff;
}
.contact-info.contact-info__item-link:hover .part-body, .contact-info.contact-info__item-link:hover .part-body p, .contact-info.contact-info__item-link:hover .part-body li, .contact-info.contact-info__item-link:focus-visible .part-body, .contact-info.contact-info__item-link:focus-visible .part-body p, .contact-info.contact-info__item-link:focus-visible .part-body li {
  color: #89c5e7;
}

.contact-info__content,
.contact-info__content p,
.contact-info__content li {
  color: rgba(255, 255, 255, 0.92);
}

.contact-info__content a {
  color: #ffffff;
  text-decoration: none !important;
}

.contact-info__content a:hover,
.contact-info__content a:focus-visible {
  color: #89c5e7 !important;
  text-decoration: none !important;
}

.contact-us__form {
  max-width: 1110px;
}

.contact-us__form .gform_wrapper.gravity-theme .gform_required_legend,
.contact-us__form .gform_wrapper.gravity-theme .gfield_label,
.contact-us__form .gform_wrapper.gravity-theme .gfield_consent_label,
.contact-us__form .gform_wrapper.gravity-theme .gform-field-label {
  color: rgba(255, 255, 255, 0.9);
}

.contact-us__form .gform_wrapper.gravity-theme .gfield_required_asterisk,
.contact-us__form .gform_wrapper.gravity-theme .gfield_required {
  color: #89c5e7;
}

.contact-us__form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.contact-us__form .gform_wrapper.gravity-theme select,
.contact-us__form .gform_wrapper.gravity-theme textarea,
.contact-us__form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.contact-us__form .gform_wrapper select,
.contact-us__form .gform_wrapper textarea {
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.06);
  color: #ffffff;
}

.contact-us__form .gform_wrapper.gravity-theme input::placeholder,
.contact-us__form .gform_wrapper.gravity-theme textarea::placeholder,
.contact-us__form .gform_wrapper input::placeholder,
.contact-us__form .gform_wrapper textarea::placeholder {
  color: rgba(255, 255, 255, 0.62);
}

.contact-us__form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.contact-us__form .gform_wrapper.gravity-theme select:focus,
.contact-us__form .gform_wrapper.gravity-theme textarea:focus,
.contact-us__form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.contact-us__form .gform_wrapper select:focus,
.contact-us__form .gform_wrapper textarea:focus {
  border-color: #89c5e7;
  box-shadow: 0 0 0 2px rgba(137, 197, 231, 0.18);
  outline: 0;
}

.contact-us__form .gform_wrapper.gravity-theme .gfield_consent_label,
.contact-us__form .gform_wrapper .gfield_consent_label {
  font-size: 0.875rem;
  line-height: 1.6;
}

.contact-us__form .gform_wrapper.gravity-theme .gfield_consent_label a,
.contact-us__form .gform_wrapper .gfield_consent_label a {
  color: #89c5e7;
}

.contact-us__form .gform_wrapper.gravity-theme .ginput_recaptcha,
.contact-us__form .gform_wrapper .ginput_recaptcha {
  overflow: hidden;
}

.location-single-grey {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background: transparent;
  color: rgba(224, 234, 245, 0.86);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

body.postid-2244 .location-single-grey,
body.postid-2245 .location-single-grey,
body.postid-2246 .location-single-grey {
  background: transparent;
}

.location-single-grey h2,
.location-single-grey h3 {
  color: #f2f6fb;
}

@media (min-width: 1024px) {
  .location-single-grey {
    padding-top: 4rem;
    padding-bottom: 4rem;
    line-height: 1.75;
  }
}
@media (min-width: 1536px) {
  .location-single-grey {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.location-single-grey__header {
  max-width: 1160px;
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  text-align: center;
}

@media (min-width: 1024px) {
  .location-single-grey__header {
    margin-bottom: 3rem;
  }
}
@media (min-width: 1536px) {
  .location-single-grey__header {
    margin-bottom: 4rem;
  }
}
.location-single-grey__rows {
  display: grid;
  gap: 3rem;
}

@media (min-width: 1024px) {
  .location-single-grey__rows {
    gap: 4rem;
  }
}
@media (min-width: 1536px) {
  .location-single-grey__rows {
    gap: 6rem;
  }
}
.location-single-grey__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
  margin-right: -1rem;
  margin-left: -1rem;
}

@media (min-width: 1024px) {
  .location-single-grey__row--reverse {
    flex-direction: row-reverse;
  }
}
.location-single-grey__media-col,
.location-single-grey__content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 1024px) {
  .location-single-grey__media-col {
    width: 49%;
  }
  .location-single-grey__content {
    width: 51%;
    line-height: 1.625;
  }
}
.location-single-grey__media {
  margin-bottom: 0;
}

.location-single-grey__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 1023.98px) {
  .location-single-grey__media img {
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 1024px) {
  .location-single-grey__content h3 {
    font-size: 1.875rem;
  }
}
.location-single-grey__content ul,
.location-single-grey__scroll ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.location-single-grey__content ul {
  display: grid;
  gap: 1rem;
}

.location-single-grey__scroll ul {
  display: grid;
  gap: 1.25rem;
}

.location-single-grey__content li,
.location-single-grey__scroll li {
  padding: 1rem;
  border: 1px solid rgba(137, 197, 231, 0.32);
  border-radius: 0.375rem;
}

@media (min-width: 1536px) {
  .location-single-grey__content li,
  .location-single-grey__scroll li {
    padding: 1.25rem;
  }
}
.location-single-grey__content li strong,
.location-single-grey__scroll li strong {
  color: #f2f6fb;
  font-weight: 500;
}

.location-single-grey__scroll {
  max-height: 300px;
  padding-right: 1rem;
  overflow-y: auto;
}

@media (min-width: 1536px) {
  .location-single-grey__scroll {
    max-height: 340px;
  }
}
.location-single-videos {
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.625;
}

.location-single-videos__header {
  margin-bottom: 2rem;
  text-align: center;
}

@media (min-width: 1024px) {
  .location-single-videos__header {
    margin-bottom: 2.75rem;
  }
}
.location-single-videos__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 2rem;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}

@media (min-width: 1536px) {
  .location-single-videos__grid {
    margin-right: -1rem;
    margin-left: -1rem;
  }
}
.location-single-videos__col {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

@media (min-width: 640px) {
  .location-single-videos__col {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .location-single-videos__col {
    width: 33.3333%;
  }
}
@media (min-width: 1280px) {
  .location-single-videos__col {
    width: 20%;
  }
}
@media (min-width: 1536px) {
  .location-single-videos__col {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
.location-single-video-card {
  position: relative;
}

@media (max-width: 639.98px) {
  .location-single-video-card {
    max-width: 300px;
    margin-right: auto;
    margin-left: auto;
  }
}
.location-single-video-card__media {
  position: relative;
  height: 300px;
  margin-bottom: 0.75rem;
  overflow: hidden;
  border-radius: 0.75rem;
}

@media (min-width: 1536px) {
  .location-single-video-card__media {
    height: 410px;
  }
}
.location-single-video-card__media::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3.5rem;
  height: 2.5rem;
  transform: translate(-50%, -50%);
  background: url("../../images/yt-logo.svg") left top/100% 100% no-repeat;
}

@media (min-width: 1536px) {
  .location-single-video-card__media::after {
    width: 4.5rem;
    height: 3.1875rem;
  }
}
.location-single-video-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}

.location-single-video-card__meta {
  display: block;
  margin-bottom: 0.5rem;
  color: var(--stone-text-muted);
  font-size: 0.75rem;
  font-weight: 500;
}

.location-single-video-card__link {
  display: block;
  margin-right: 0;
  color: var(--stone-link);
  font-weight: 500;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

@media (min-width: 1536px) {
  .location-single-video-card__link {
    margin-right: 1.5rem;
  }
}
.location-single-video-card__link:hover,
.location-single-video-card__link:focus-visible {
  color: var(--stone-link-hover);
  text-decoration: none !important;
}

.location-single-tci {
  padding-top: 3rem;
  padding-bottom: 3rem;
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .location-single-tci {
    padding-top: 4rem;
    padding-bottom: 4rem;
    line-height: 1.75;
  }
}
@media (min-width: 1536px) {
  .location-single-tci {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.location-single-tci__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
  margin-right: -1rem;
  margin-left: -1rem;
}

@media (min-width: 1536px) {
  .location-single-tci__row {
    margin-right: -1.75rem;
    margin-left: -1.75rem;
  }
}
.location-single-tci__media-col,
.location-single-tci__content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 1024px) {
  .location-single-tci__media-col,
  .location-single-tci__content {
    width: 50%;
  }
}
@media (min-width: 1536px) {
  .location-single-tci__media-col,
  .location-single-tci__content {
    padding-right: 1.75rem;
    padding-left: 1.75rem;
  }
}
.location-single-tci__media {
  margin-bottom: 0;
}

.location-single-tci__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 1023.98px) {
  .location-single-tci__media img {
    margin-right: auto;
    margin-left: auto;
  }
}
.location-single-tci__meta-link {
  display: flex;
  width: 100%;
  align-items: center;
  margin-top: 0.5rem;
  color: var(--stone-text-muted);
  font-size: 0.9375rem;
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.location-single-tci__meta-link:hover,
.location-single-tci__meta-link:focus-visible,
.location-single-tci__meta-link:active {
  color: var(--stone-link);
  text-decoration: none !important;
}

@media (min-width: 1536px) {
  .location-single-tci__meta-link {
    margin-top: 1rem;
    font-size: 1rem;
  }
}
.location-single-tci__meta-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin-right: 0.5rem;
  border-radius: 999px;
  background: var(--contact-info-icon-bg, #14487f);
  color: #ffffff;
}

@media (min-width: 1536px) {
  .location-single-tci__meta-icon {
    width: 2.75rem;
    height: 2.75rem;
    margin-right: 0.875rem;
    font-size: 1.25rem;
  }
}
.location-single-tci__meta-text {
  color: inherit;
  line-height: 1.3;
  text-decoration: none !important;
}

.location-single-tci-two {
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .location-single-tci-two {
    line-height: 1.625;
  }
}
.location-single-tci-two--top {
  padding-top: 3rem;
}

@media (min-width: 1024px) {
  .location-single-tci-two--top {
    padding-top: 4rem;
  }
}
@media (min-width: 1536px) {
  .location-single-tci-two--top {
    padding-top: 6rem;
  }
}
.location-single-tci-two--full {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 1024px) {
  .location-single-tci-two--full {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .location-single-tci-two--full {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.location-single-tci-two__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
  margin-right: -1rem;
  margin-left: -1rem;
}

@media (min-width: 1536px) {
  .location-single-tci-two__row {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
.location-single-tci-two__media-col,
.location-single-tci-two__content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 1024px) {
  .location-single-tci-two__media-col {
    width: 48%;
  }
  .location-single-tci-two__content {
    width: 52%;
  }
}
@media (min-width: 1536px) {
  .location-single-tci-two__media-col,
  .location-single-tci-two__content {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.location-single-tci-two__media {
  margin-bottom: 0;
}

.location-single-tci-two__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 1023.98px) {
  .location-single-tci-two__media img {
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 1024px) {
  .location-single-tci-two__content h3 {
    font-size: 2rem;
  }
}
.location-single-tci-two__content a:not(.btn) {
  color: var(--stone-link);
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.location-single-tci-two__content a:not(.btn):hover,
.location-single-tci-two__content a:not(.btn):focus-visible {
  color: var(--stone-link-hover);
  text-decoration: none !important;
}

.location-single-content-repeater {
  padding-top: 3rem;
  padding-bottom: 3rem;
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .location-single-content-repeater {
    padding-top: 4rem;
    padding-bottom: 4rem;
    line-height: 1.75;
  }
}
@media (min-width: 1536px) {
  .location-single-content-repeater {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.location-single-content-repeater__header {
  max-width: 1205px;
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  padding-bottom: 2rem;
  border-bottom: 1px solid #e5e7eb;
  text-align: center;
}

@media (min-width: 1024px) {
  .location-single-content-repeater__header {
    margin-bottom: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1536px) {
  .location-single-content-repeater__header {
    margin-bottom: 4rem;
  }
}
.location-single-content-repeater__header p:last-of-type {
  margin-bottom: 0;
}

.location-single-content-repeater__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
  margin-right: -1rem;
  margin-left: -1rem;
}

.location-single-content-repeater__row--spaced {
  margin-bottom: 3rem;
}

@media (min-width: 1024px) {
  .location-single-content-repeater__row--spaced {
    margin-bottom: 4rem;
  }
  .location-single-content-repeater__row--reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1536px) {
  .location-single-content-repeater__row--spaced {
    margin-bottom: 6rem;
  }
  .location-single-content-repeater__row {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
.location-single-content-repeater__media-col,
.location-single-content-repeater__content {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 1024px) {
  .location-single-content-repeater__media-col {
    width: 48%;
  }
  .location-single-content-repeater__content {
    width: 52%;
    line-height: 1.625;
  }
  .location-single-content-repeater__content h3 {
    font-size: 2rem;
  }
}
@media (min-width: 1536px) {
  .location-single-content-repeater__media-col,
  .location-single-content-repeater__content {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.location-single-content-repeater__media {
  margin-bottom: 0;
}

.location-single-content-repeater__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 1023.98px) {
  .location-single-content-repeater__media img {
    margin-right: auto;
    margin-left: auto;
  }
}
.location-single-content-repeater__content ul {
  margin-bottom: 1rem;
}

.location-single-content-repeater__content li strong {
  color: var(--stone-text);
  font-weight: 500;
}

.location-single-content-repeater__content--bullet ul {
  padding-left: 1rem;
  list-style: disc;
}

.location-single-content-repeater__content--bullet ul li {
  margin-bottom: 0.875rem;
}

.location-single-content-repeater__content--bullet ul li::marker {
  color: var(--stone-link);
}

.location-single-content-repeater__content--cards ul {
  padding-left: 0;
  list-style: none;
}

.location-single-content-repeater__content--cards ul li {
  margin-bottom: 1rem;
  padding: 1rem;
  border: 1px solid rgba(137, 197, 231, 0.32);
  border-radius: 0.375rem;
}

@media (min-width: 1536px) {
  .location-single-content-repeater__content--cards ul li {
    padding: 1.25rem;
  }
}
.location-single-content-repeater__cta {
  display: inline-block;
  margin-top: 0.5rem;
}

@media (min-width: 1024px) {
  .location-single-content-repeater__cta {
    margin-top: 1rem;
  }
}
@media (min-width: 1536px) {
  .location-single-content-repeater__cta {
    margin-top: 1.5rem;
  }
}
.location-single-definition {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 640px) {
  .location-single-definition {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .location-single-definition {
    padding-top: 4rem;
    padding-bottom: 0;
    margin-bottom: 5rem;
  }
}
@media (min-width: 1280px) {
  .location-single-definition {
    padding-top: 6rem;
    margin-bottom: 6rem;
  }
}
.location-single-definition__content {
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .location-single-definition__content {
    line-height: 1.75;
  }
}
.location-single-definition__header {
  margin-bottom: 2rem;
  text-align: center;
}

@media (min-width: 1024px) {
  .location-single-definition__header {
    margin-bottom: 3rem;
  }
}
@media (min-width: 1536px) {
  .location-single-definition__header {
    margin-bottom: 4rem;
  }
}
.location-single-definition__content ul {
  margin-bottom: 1rem;
  padding-left: 0;
  list-style-position: inside;
  list-style-type: decimal;
}

.location-single-contact {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 1024px) {
  .location-single-contact {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .location-single-contact {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.location-single-contact__header {
  max-width: 755px;
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  text-align: center;
  color: var(--stone-text-muted);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

@media (min-width: 1024px) {
  .location-single-contact__header {
    margin-bottom: 3rem;
    line-height: 1.75;
  }
}
.location-single-contact__form {
  max-width: 1110px;
  margin-right: auto;
  margin-left: auto;
}

body.page-id-6228 {
  /* ── HUB PAGE STYLES ── */
  color: var(--stone-text);
}
body.page-id-6228 section .map-wrap {
  margin: 4rem 0;
  overflow: hidden;
  position: relative;
  height: 520px;
}
body.page-id-6228 section .map-wrap iframe {
  position: absolute;
  left: 0;
  top: -60px;
  width: 100%;
  height: calc(100% + 60px);
}
body.page-id-6228 section.container.default-block {
  padding: 1rem 0 0 0 !important;
}
body.page-id-6228 .wysiwyg__block.wysiwyg.container {
  margin-top: 0;
  margin-bottom: 0;
}
body.page-id-6228 .stone-hero {
  background: linear-gradient(145deg, var(--stone-brand-deep), var(--stone-brand-surface));
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), transparent 20%);
  box-shadow: 0 12px 28px hsla(0, 0%, 0%, 0.28);
  border-radius: 0;
  padding: 4.25rem 2rem 3.5rem;
  text-align: center;
  margin-top: 1.5rem;
}
body.page-id-6228 .stone-hero-headline {
  font-size: clamp(2.85rem, 6vw, 4.4rem);
  font-weight: 700;
  color: var(--stone-text);
  letter-spacing: 0.03em;
  line-height: 1.15;
  margin-bottom: 1.15rem;
}
body.page-id-6228 .stone-hero-sub {
  font-size: clamp(0.98rem, 1.55vw, 1.18rem);
  font-weight: 400;
  color: color-mix(in srgb, var(--stone-secondary-text), transparent 4%);
  max-width: 46rem;
  margin: 0 auto 1.85rem;
  line-height: 1.58;
}
body.page-id-6228 .stone-hero-stat {
  font-size: 0.74rem;
  font-weight: 500;
  color: color-mix(in srgb, var(--stone-secondary-text), transparent 38%);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body.page-id-6228 .stone-map-wrap {
  width: 100%;
  max-width: 76rem;
  margin: 2.25rem auto 2.5rem;
  border-radius: 0;
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), transparent 20%);
  overflow: hidden;
  box-shadow: 0 8px 22px hsla(0, 0%, 0%, 0.26);
}
body.page-id-6228 .stone-map-wrap iframe {
  width: 100%;
  height: 480px;
  border: 0;
  display: block;
}
body.page-id-6228 .stone-state-head {
  font-size: 1.24rem;
  font-weight: 700;
  color: var(--stone-secondary-text);
  letter-spacing: 0.13em;
  text-transform: uppercase;
  border-bottom: 1px solid color-mix(in srgb, var(--stone-brand-surface), transparent 30%);
  padding-bottom: 0.72rem;
  margin: 2.45rem 0 1.2rem;
}
body.page-id-6228 .stone-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: 1.1rem;
  margin-bottom: 2.15rem;
}
body.page-id-6228 .stone-card {
  display: flex;
  flex-direction: column;
  background: color-mix(in srgb, var(--stone-glass-card-bg), transparent 8%);
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), transparent 24%);
  border-top: 2px solid color-mix(in srgb, var(--stone-link), transparent 22%);
  border-radius: 0;
  min-height: 14rem;
  padding: 1.35rem 1.35rem 1.2rem;
  box-shadow: 0 6px 14px hsla(0, 0%, 0%, 0.2);
  backdrop-filter: blur(3px);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
body.page-id-6228 .stone-card:hover {
  background: color-mix(in srgb, var(--stone-glass-card-bg), transparent 2%);
  border-color: color-mix(in srgb, var(--stone-link), transparent 38%);
  box-shadow: 0 10px 20px hsla(0, 0%, 0%, 0.25);
}
body.page-id-6228 .stone-card p {
  margin: 0;
}
body.page-id-6228 .stone-card-city {
  font-size: 1.34rem;
  font-weight: 700;
  color: var(--stone-text);
  margin-bottom: 0.28rem;
}
body.page-id-6228 .stone-card-county {
  font-size: 0.86rem;
  font-weight: 500;
  color: color-mix(in srgb, var(--stone-text-muted), transparent 6%);
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.72rem;
}
body.page-id-6228 .stone-card-proof {
  font-size: 0.92rem;
  font-style: italic;
  color: color-mix(in srgb, var(--stone-text-muted), transparent 8%);
  line-height: 1.5;
  margin-bottom: 0.8rem;
  min-height: 3.4em;
}
body.page-id-6228 .stone-card > p {
  margin-top: auto;
}
body.page-id-6228 .stone-card-link {
  display: inline-flex;
  align-items: center;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--stone-link);
  text-decoration: none;
  letter-spacing: 0.04em;
}
body.page-id-6228 .stone-card-link:hover {
  color: var(--stone-link-hover);
  text-decoration: underline;
}
body.page-id-6228 .stone-coverage {
  background: color-mix(in srgb, var(--stone-glass-card-bg), transparent 3%);
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), transparent 18%);
  border-left: 3px solid color-mix(in srgb, var(--stone-link), transparent 18%);
  border-radius: 0;
  padding: 1.35rem 1.5rem;
  margin: 1.95rem 0 2.25rem;
  font-size: 0.86rem;
  color: color-mix(in srgb, var(--stone-text), transparent 8%);
  line-height: 1.65;
}
@media (max-width: 992px) {
  body.page-id-6228 .stone-hero {
    padding: 3.25rem 1.2rem 2.8rem;
  }
  body.page-id-6228 .stone-grid {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  }
}
@media (max-width: 576px) {
  body.page-id-6228 .stone-state-head {
    font-size: 1.02rem;
    letter-spacing: 0.11em;
  }
  body.page-id-6228 .stone-grid {
    grid-template-columns: 1fr;
    gap: 0.85rem;
  }
  body.page-id-6228 .stone-card {
    min-height: 0;
  }
}

body.parent-pageid-6228 section.container.default-block.\32 xl\:pb-20 {
  padding-bottom: 0 !important;
}

.testimonials-page.part-letters, .testimonials-page.part-reviews,
.testimonials-page .part-letters,
.testimonials-page .part-reviews {
  margin-bottom: 3rem;
}
.testimonials-page.part-video,
.testimonials-page .part-video {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.testimonials-page .part-video-frame {
  width: 100%;
}
@media (min-width: 1024px) {
  .testimonials-page.part-letters, .testimonials-page.part-reviews,
  .testimonials-page .part-letters,
  .testimonials-page .part-reviews {
    margin-bottom: 4rem;
  }
  .testimonials-page.part-video,
  .testimonials-page .part-video {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
  .testimonials-page.part-video,
  .testimonials-page .part-video {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page.part-letters, .testimonials-page.part-reviews,
  .testimonials-page .part-letters,
  .testimonials-page .part-reviews {
    margin-bottom: 6rem;
  }
  .testimonials-page.part-video,
  .testimonials-page .part-video {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
  .testimonials-page.part-video,
  .testimonials-page .part-video {
    max-width: 84.375rem;
  }
}
.testimonials-page .part-primary {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.testimonials-page .part-primary-slider {
  padding-bottom: 3rem;
}
.testimonials-page .part-primary-slider .slick-list {
  margin-right: -1rem;
  margin-left: -1rem;
}
.testimonials-page .part-primary-slider .slick-dots {
  display: none !important;
}
@media (min-width: 1024px) {
  .testimonials-page .part-primary {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
  .testimonials-page .part-primary-slider .slick-prev {
    left: -1.25rem;
  }
  .testimonials-page .part-primary-slider .slick-next {
    right: -1.25rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-primary {
    max-width: 84.375rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.testimonials-page .part-primary-slide {
  padding: 1rem;
}
.testimonials-page .part-primary-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}
.testimonials-page .part-media-col,
.testimonials-page .part-quote-col {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
@media (max-width: 1023.98px) {
  .testimonials-page .part-media-col {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .testimonials-page .part-media-col,
  .testimonials-page .part-quote-col {
    width: 50%;
  }
}
.testimonials-page .part-quote {
  height: 100%;
  padding: 1.5rem 1rem;
  font-size: 1rem;
  line-height: 1.7;
  border: 1px solid var(--stone-softer-border);
}
.testimonials-page .part-quote p:last-of-type {
  margin-bottom: 0;
}
@media (min-width: 640px) {
  .testimonials-page .part-quote {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-quote {
    line-height: 2;
  }
}
.testimonials-page .part-quote-title {
  display: block;
  margin-bottom: 0.625rem;
  font-size: 1.125rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  .testimonials-page .part-quote-title {
    font-size: 1.25rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-quote-title {
    font-size: 1.5rem;
  }
}
.testimonials-page .part-quote-meta {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
  column-gap: 1rem;
  line-height: 1;
}
.testimonials-page .part-stars {
  display: flex;
  column-gap: 0.25rem;
  color: #facc15;
}
.testimonials-page .part-quote-link {
  color: var(--stone-link-accent);
}
.testimonials-page .part-quote-link--visible {
  display: inline-block;
}
.testimonials-page .part-quote-link--hidden {
  display: none;
}
.testimonials-page .part-quote-link:hover,
.testimonials-page .part-quote-link:focus-visible {
  color: var(--stone-link-accent-hover);
}
.testimonials-page .part-media-frame {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  margin-bottom: 0;
  padding: 1rem;
}
.testimonials-page .part-quote-logo {
  margin-bottom: 0;
}
.testimonials-page .part-popup {
  width: 100%;
  max-width: 50rem;
}
.testimonials-page .part-popup--hidden {
  display: none;
}
.testimonials-page .part-popup-quote {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.7;
}
.testimonials-page .part-popup-quote p:last-of-type {
  margin-bottom: 0;
}
.testimonials-page .part-popup-title {
  display: block;
  margin-bottom: 0.625rem;
  font-size: 1.125rem;
  line-height: 1.2;
}
.testimonials-page .part-popup-meta {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
  column-gap: 1rem;
  line-height: 1;
}
@media (max-width: 639.98px) {
  .testimonials-page .part-popup {
    padding-right: 1rem;
    padding-bottom: 2rem;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .testimonials-page .part-popup-quote {
    line-height: 1.7;
  }
  .testimonials-page .part-popup-title {
    font-size: 1.25rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-popup-quote {
    line-height: 2;
  }
  .testimonials-page .part-popup-title {
    font-size: 1.5rem;
  }
}
.testimonials-page .part-letters-header,
.testimonials-page .part-reviews-header {
  margin-bottom: 2rem;
}
@media (min-width: 1536px) {
  .testimonials-page .part-letters-header,
  .testimonials-page .part-reviews-header {
    margin-bottom: 2.5rem;
  }
}
.testimonials-page .part-letters-title,
.testimonials-page .part-reviews-title {
  font-size: 1.25rem;
}
@media (min-width: 640px) {
  .testimonials-page .part-letters-title,
  .testimonials-page .part-reviews-title {
    font-size: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-letters-title,
  .testimonials-page .part-reviews-title {
    font-size: 2rem;
  }
}
.testimonials-page .part-letters-slider {
  padding-bottom: 4rem;
}
.testimonials-page .part-letters-slider .slick-dots {
  display: none !important;
}
.testimonials-page .part-letters-slider .slick-list {
  margin-right: -1rem;
  margin-left: -1rem;
}
.testimonials-page .part-letters-slider .slick-slide {
  height: inherit !important;
}
.testimonials-page .part-letters-slider .slick-track {
  display: flex;
}
.testimonials-page .part-letters-slider .slick-arrow {
  top: auto;
  bottom: 0;
  margin-right: 0.375rem;
  margin-left: 0.375rem;
  transform: translateY(0);
}
.testimonials-page .part-letters-slider .slick-prev {
  right: 50%;
  left: auto;
}
.testimonials-page .part-letters-slider .slick-next {
  right: auto;
  left: 50%;
}
@media (min-width: 1536px) {
  .testimonials-page .part-letters-slider {
    padding-bottom: 5rem;
  }
}
.testimonials-page .part-letter-item {
  padding-right: 1rem;
  padding-left: 1rem;
}
.testimonials-page .part-letter-card {
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 2rem 1rem;
  color: #ffffff;
  background-image: var(--testimonials-letter-bg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.testimonials-page .part-letter-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-overlay-strong);
}
@media (min-width: 640px) {
  .testimonials-page .part-letter-card {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-letter-card {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
.testimonials-page .part-letter-name span {
  display: block;
  margin-top: 0.375rem;
  font-weight: 500;
}
.testimonials-page .part-letter-readmore {
  margin-top: 2rem;
  font-weight: 500;
  line-height: 1.7;
}
.testimonials-page .part-letter-readmore a,
.testimonials-page .part-letter-readmore a:hover,
.testimonials-page .part-letter-readmore a:focus-visible {
  text-decoration: underline;
}
.testimonials-page .part-letter-readmore p + p {
  margin-top: 1rem;
}
.testimonials-page .part-letter-more {
  margin-top: 0;
}
.testimonials-page .part-letter-more--hidden {
  display: none;
}
.testimonials-page .part-letter-toggle {
  display: inline-flex;
  align-items: center;
  margin-top: 0.5rem;
  color: var(--stone-link-accent);
  line-height: 1;
  transition: color 0.2s ease-in-out;
}
.testimonials-page .part-letter-toggle:hover {
  color: var(--stone-link-accent-hover);
}
.testimonials-page .part-letter-toggle::after {
  content: "\e932";
  display: inline-block;
  padding-left: 0.75rem;
  font-family: "icomoon";
}
.testimonials-page .part-letter-toggle.active::after {
  padding-top: 1rem;
  padding-left: 0;
  transform: rotate(-90deg);
}
@media (min-width: 1024px) {
  .testimonials-page .part-letter-toggle {
    margin-top: 1rem;
  }
}
@media (min-width: 1536px) {
  .testimonials-page .part-letter-readmore {
    margin-top: 2.5rem;
    line-height: 1.778;
  }
  .testimonials-page .part-letter-readmore p + p {
    margin-top: 1.5rem;
  }
  .testimonials-page .part-letter-more {
    margin-top: 1.5rem;
  }
  .testimonials-page .part-letter-toggle {
    margin-top: 1.5rem;
  }
}

/* Fancybox moves popup nodes out of .testimonials-page, so modal styles must be global. */
.fancybox-slide--html [id^=testimonialsPopup].part-popup.fancybox-content {
  width: min(50rem, 100vw - 2rem);
  max-height: calc(100vh - 3rem);
  padding: 2rem 1.5rem;
  color: #f8fbff;
  background: var(--stone-testimonial-modal-gradient) !important;
  border: 1px solid rgba(170, 198, 231, 0.22);
  border-radius: 0.5rem;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(8px);
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-popup-quote {
  line-height: 1.8;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-popup-title {
  margin-bottom: 0.75rem;
  color: #ffffff;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-popup-meta {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  margin-bottom: 1rem;
  column-gap: 0.75rem;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-stars {
  display: flex;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-stars li {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-quote-logo {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .part-popup-quote p {
  color: rgba(240, 246, 255, 0.92);
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .fancybox-close-small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  color: #dbe8fb;
  background: rgba(167, 194, 222, 0.18);
  border: 1px solid rgba(203, 224, 246, 0.28);
  border-radius: 0.35rem;
}

.fancybox-slide--html [id^=testimonialsPopup].part-popup .fancybox-close-small:hover,
.fancybox-slide--html [id^=testimonialsPopup].part-popup .fancybox-close-small:focus-visible {
  color: #ffffff;
  background: rgba(167, 194, 222, 0.28);
}

@media (max-width: 639.98px) {
  .fancybox-slide--html [id^=testimonialsPopup].part-popup.fancybox-content {
    width: calc(100vw - 1rem);
    padding: 1.25rem 1rem;
  }
  .fancybox-slide--html [id^=testimonialsPopup].part-popup .part-popup-meta {
    column-gap: 0.5rem;
  }
}
.home .banner {
  border-bottom: 1px solid var(--stone-softer-border);
}
.home .banner > img {
  max-width: 2000px;
  margin: auto;
}
.home .home-video header h2 small {
  font-size: 1.375rem;
}
.home section > header, .home section > header small, .home section > header h2 small,
.home section header, .home section header small, .home section header h2 small,
.home section > h2 small,
.home section h2 small {
  color: var(--stone-link);
}
.home .home-list .part-content ul {
  width: fit-content;
  max-width: calc(1180px + 2rem);
  margin-right: auto;
  margin-left: auto;
}
.home .home-list .part-content ul > li {
  display: block;
  width: auto;
  min-width: 0;
  max-width: 590px;
  break-inside: avoid-column;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
}
.home .home-list .part-content .part-content-columns {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0 2rem;
  width: fit-content;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.home .home-list .part-content .part-content-column {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 295px;
  width: min(100%, 590px);
  max-width: calc(590px + 2rem);
}
.home .home-list .part-content .part-content-column ul {
  width: 100%;
  max-width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.home-services {
  margin-top: 2rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-size: cover;
  background-position: center;
}

@media (min-width: 768px) {
  .home-services {
    margin-top: 3rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-services {
    margin-top: 4rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .home-services {
    margin-top: 5rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.home-services .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
.home-services .part-header small {
  display: block;
  margin-bottom: 1rem;
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .home-services .part-header {
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 1280px) {
  .home-services .part-header {
    margin-bottom: 4rem;
  }
}
.home-services .part-orbit {
  position: relative;
  z-index: 1;
  max-width: 51.75rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
.home-services .part-orbit::before {
  content: "";
  position: absolute;
  top: 6rem;
  left: 50%;
  right: 0;
  z-index: -1;
  width: 36.875rem;
  height: 36.875rem;
  transform: translateX(-50%);
  background: var(--home-services-orbit-lines-image, url("../../images/round-shape.png")) no-repeat;
  background-size: 100%;
}
@media (max-width: 767.98px) {
  .home-services .part-orbit::before {
    display: none;
  }
}
.home-services .part-orbit-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.home-services .part-orbit-row.is-single {
  justify-content: center;
}
@media (min-width: 768px) {
  .home-services .part-orbit-row.is-middle {
    margin-top: -3.5rem;
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-services .part-orbit-row.is-middle {
    margin-top: -5.5rem;
    padding-right: 5rem;
    padding-left: 5rem;
  }
}
.home-services .part-orbit-col {
  flex-basis: 17.25rem;
  max-width: 17.25rem;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (max-width: 767.98px) {
  .home-services .part-orbit-col {
    margin-right: auto;
    margin-left: auto;
  }
}
.home-services .part-orbit-col h3 {
  color: #ffffff;
  font-size: 1.125rem;
  text-transform: uppercase;
}
.home-services .part-orbit-col a {
  color: #ffffff !important;
}
.home-services .part-icon-wrap {
  display: flex;
  width: 6rem;
  height: 6rem;
  align-items: center;
  justify-content: center;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 1.25rem;
  padding: 1.5rem;
  border: 2px solid #89c5e7;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgb(5, 107, 206) 0%, rgb(2, 31, 84) 67%, rgb(2, 31, 84) 100%);
}
@media (min-width: 1024px) {
  .home-services .part-icon-wrap {
    width: 7rem;
    height: 7rem;
  }
}
.home-services .part-icon-wrap i {
  color: #89c5e7;
  font-size: 2.5625rem;
}
@media (min-width: 1024px) {
  .home-services .part-icon-wrap i {
    font-size: 3rem;
  }
}
.home-services .part-main-item {
  max-width: 11.875rem;
  margin-right: auto;
  margin-left: auto;
}
.home-services .part-main-item h3 {
  color: #ffffff;
  font-size: 1.375rem;
  line-height: 1.3;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .home-services .part-main-item {
    margin-top: -11rem;
  }
}
.home-services .part-main-icon-wrap {
  margin-top: 2rem;
}
.home-services .part-main-icon-wrap .part-main-logo-image {
  display: block;
  width: 8.75rem;
  height: auto;
  position: relative;
  top: 1rem;
  margin: 0 auto;
}
.home-services .part-main-icon-wrap i {
  color: var(--stone-link);
  font-size: 8.75rem;
}
@media (min-width: 640px) {
  .home-services .part-main-icon-wrap .part-main-logo-image {
    width: 11.3125rem;
  }
  .home-services .part-main-icon-wrap i {
    font-size: 11.3125rem;
  }
}
.home-services .part-hand-image {
  margin-top: 3rem;
  text-align: center;
}
.home-services .part-hand-image img {
  position: relative;
  right: -3.5rem;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .home-services .part-hand-image img {
    right: -5rem;
  }
}
@media (max-width: 639.98px) {
  .home-services .part-hand-image {
    display: none;
  }
}

.home-about {
  padding-top: 1rem;
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .home-about {
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-about {
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .home-about {
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .home-about {
    padding-bottom: 6rem;
  }
}
.home-about .part-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}
.home-about .home-map .part-media-col,
.home-about .part-content-col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.home-about .part-media-wrap {
  position: relative;
}
.home-about .part-rating-card {
  width: 100%;
  padding: 2rem 1rem 1rem;
  text-align: center;
  background: var(--stone-home-rating-card-gradient);
}
.home-about .part-avatars ul {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.home-about .part-avatars li {
  margin-left: -0.75rem;
}
.home-about .part-avatars li:first-child {
  margin-left: 0;
}
@media (min-width: 1024px) {
  .home-about .part-row {
    flex-direction: row-reverse;
  }
  .home-about .part-media-col,
  .home-about .part-content-col {
    width: 50%;
  }
}
@media (max-width: 1023.98px) {
  .home-about .part-media-wrap {
    margin-bottom: 2rem;
  }
}
@media (max-width: 639.98px) {
  .home-about .part-media-wrap picture {
    margin-bottom: 0;
  }
  .home-about .part-rating-card {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 640px) {
  .home-about .part-rating-card {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 15rem;
    border: 0.5625rem solid #ffffff;
  }
}

.home-dual-panel {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.home-dual-panel .home-dual-panel__grid {
  display: grid;
  gap: 2rem;
}
.home-dual-panel .home-dual-panel__column {
  min-width: 0;
}
.home-dual-panel .home-dual-panel__column > *:first-child {
  margin-top: 0;
}
@media (min-width: 768px) {
  .home-dual-panel {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-dual-panel {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .home-dual-panel .home-dual-panel__column--left {
    padding: 0 1.5rem 1.5rem 1.5rem;
  }
  .home-dual-panel .home-dual-panel__column--right {
    padding-right: 1.5rem;
  }
  .home-dual-panel .home-dual-panel__grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 2.5rem;
  }
}
@media (min-width: 1280px) {
  .home-dual-panel {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .home-dual-panel {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.home-map {
  display: flex;
  flex-wrap: wrap;
  padding-top: 3rem;
  padding-bottom: 3rem;
  overflow: hidden;
  background-image: url("/wp-content/uploads/bckg-figure-areas-we-cover-transparent.png"), url("/wp-content/uploads/map-grid-transparent.png");
  background-repeat: no-repeat;
  background-position: left bottom, right 5% center;
  background-size: 350px, 900px;
}

@media (max-width: 1023.98px) {
  .home-map {
    background: none;
  }
}
@media (min-width: 1024px) {
  .home-map {
    padding-top: 4rem;
    padding-bottom: 4rem;
    background-position: left bottom, right top 100px;
    background-size: 200px, contain;
  }
}
@media (min-width: 1280px) {
  .home-map {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background-position: left bottom, right 5% 50%;
    background-size: 150px, contain;
  }
}
@media (min-width: 1536px) {
  .home-map {
    padding-top: 6rem;
    padding-bottom: 6rem;
    background-size: 440px, contain;
  }
}
.home-map .part-row {
  display: flex;
  flex-wrap: wrap;
}
.home-map .part-details,
.home-map .part-content {
  width: 100%;
  margin-top: 1.5rem;
}
.home-map .part-details {
  position: relative;
  order: 2;
  padding: 0 0.9375rem;
  color: #64748b;
}
.home-map .part-content {
  position: relative;
  order: 1;
  padding-left: 0.9375rem;
}
.home-map .part-heading {
  position: relative;
  margin-bottom: 0.75rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 400;
}
.home-map .part-heading::after {
  content: "";
  display: block;
  width: 3rem;
  height: 1px;
  margin-top: 0.5rem;
  margin-right: auto;
  margin-left: auto;
  background: #1e40af;
}
.home-map .part-heading h2 {
  margin-bottom: 0;
}
.home-map .part-title {
  margin-bottom: 0;
}
.home-map .part-heading small {
  display: block;
  font-size: 1.125rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-map .part-details-box {
  position: relative;
  display: block;
}
.home-map .part-state {
  padding-bottom: 1rem;
}
.home-map .part-state span {
  color: #1e40af;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.15;
}
.home-map .part-details-list {
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
  margin: 0;
  padding: 0;
}

.home-map .part-details-list .part-detail-item {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.home-map .part-details-list .part-detail-item p {
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.15;
}
.home-map .part-details-list .part-detail-item p + p {
  margin-top: 0.25rem;
  font-size: 1rem;
  font-weight: 400;
}
.home-map .part-details-list .part-detail-item + .part-detail-item {
  clear: left;
}
.home-map .part-map {
  position: relative;
}
.home-map .part-map .part-state-label,
.home-map .part-map .state {
  display: inline-block;
  min-width: auto;
  margin-left: -2.675rem;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  white-space: nowrap;
  color: #ffffff;
  letter-spacing: 0;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 2;
  background-color: var(--stone-brand-deep);
}
.home-map .part-map .part-pin {
  display: block;
  width: 2.1875rem;
  height: 3.4375rem;
  margin-left: 0.75rem;
  padding-top: 0.25rem;
  object-fit: contain;
}
.home-map .part-svg-wrap {
  position: relative;
}
.home-map .part-info-box {
  position: absolute;
  z-index: 2;
  display: none;
  width: 2.25rem;
  height: 5.625rem;
  border: 1px solid transparent;
  border-radius: 50%;
  text-align: center;
}
.home-map .part-info-box.is-visible {
  display: block;
}
.home-map .part-info-box.is-last-visited {
  display: block !important;
}
.home-map .part-selector-label {
  display: none;
}
.home-map .part-selector-label-text {
  display: inline-flex;
  width: 100%;
  padding: 15px 20px 1px 15px;
  color: #89c5e7;
  text-transform: uppercase;
  font-size: 1rem;
}
.home-map .part-selector {
  display: flex;
  flex: 1 1 0%;
  flex-wrap: wrap;
  width: 100%;
  margin-top: -2rem;
  padding: 45px 20px 15px 15px;
  border-width: 0 !important;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  color: #0a1f3e;
  font-size: 18px;
  cursor: pointer;
  outline-width: 0 !important;
  appearance: none;
}
.home-map .part-svg {
  position: relative;
  width: 100%;
  max-width: 100%;
}
.home-map .part-svg path[data-last-visited="1"] {
  fill: #0a1f3e !important;
}
.home-map .part-svg path[data-active="1"] {
  fill: #a2abb8;
}
.home-map .part-svg .fl-fill-override,
.home-map .part-svg path[data-active="1"]:hover {
  fill: #0a1f3e !important;
}
.home-map .part-svg #TX:after {
  position: absolute;
  width: auto;
  content: "";
}
.home-map .part-city-area {
  z-index: 1;
}
.home-map .part-city-area .part-state-label i,
.home-map .part-city-area .state i,
.home-map .city-area .state i {
  font-size: 0.875rem;
}
.home-map .part-info-box.part-state-texas,
.home-map .part-info-box.texas,
.home-map .part-city-dallas,
.home-map .city-dallas {
  top: auto !important;
  bottom: 2.125rem;
  left: 6.375rem !important;
}
.home-map .part-info-box.part-state-florida,
.home-map .part-info-box.florida,
.home-map .part-city-orlando,
.home-map .city-orlando {
  top: auto !important;
  right: 4.25rem;
  bottom: 1.1875rem;
  left: auto !important;
}
.home-map .part-map .footnote-map-info {
  margin-top: 1.25rem;
  padding-right: 1rem;
  font-size: 0.875rem;
  font-style: italic;
  text-align: right;
}
.home-map .part-details-repeater {
  display: none;
}
.home-map .part-stats {
  display: flex;
  flex-wrap: wrap;
  max-width: 800px;
  margin-top: 3rem;
  margin-left: auto;
  font-size: 1.0625rem;
  font-weight: 700;
}
.home-map .part-stats .part-stat-item {
  width: 100%;
}
.home-map .part-stats h3 {
  margin-bottom: 0;
  padding: 1rem;
  background: var(--stone-header-block);
  color: #ffffff;
  text-align: center;
  font-size: 1rem;
}
.home-map .part-cta-button {
  margin-top: 0.5rem;
}

@media (min-width: 1536px) {
  .home-map .part-cta-button {
    min-width: 168px;
  }
}
@media (min-width: 640px) {
  .home-map .part-info-box.part-state-texas,
  .home-map .part-info-box.texas,
  .home-map .part-city-dallas,
  .home-map .city-dallas {
    left: 14.2125rem !important;
    bottom: 4.5625rem;
  }
  .home-map .part-info-box.part-state-florida,
  .home-map .part-info-box.florida,
  .home-map .part-city-orlando,
  .home-map .city-orlando {
    right: 8rem;
    bottom: 2.8125rem;
  }
  .home-map .part-stats {
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .home-map .part-details-list .part-detail-item p {
    font-size: 1.625rem;
    font-weight: 700;
  }
  .home-map .part-details-list .part-detail-item + .part-detail-item {
    padding-top: 1rem;
  }
  .home-map .part-details {
    width: 33.333333%;
    margin-top: 4.6875rem;
    order: 0;
    padding: 35px 0 20px 15px;
  }
  .home-map .part-content {
    width: 66.666667%;
    margin-top: 4.6875rem;
    order: 0;
    padding-left: 0;
  }
  .home-map .part-details-box {
    padding-left: 1.75rem;
  }
  .home-map .part-details-box::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 1px;
    background: #1e40af;
  }
  .home-map .part-state {
    padding-bottom: 1.5rem;
  }
  .home-map .part-details-list {
    flex-flow: column nowrap;
  }
  .home-map .part-map .part-state-label,
  .home-map .part-map .state {
    font-size: 0.75rem;
  }
  .home-map .part-map .part-pin {
    margin-left: 0;
  }
  .home-map .part-info-box.part-state-texas,
  .home-map .part-info-box.texas,
  .home-map .part-city-dallas,
  .home-map .city-dallas {
    left: 17.8125rem !important;
    bottom: 4.5rem;
  }
  .home-map .part-info-box.part-state-florida,
  .home-map .part-info-box.florida,
  .home-map .part-city-orlando,
  .home-map .city-orlando {
    right: 9.1125rem;
  }
  .home-map .part-map .footnote-map-info {
    padding-right: 6.875rem;
    padding-left: 0;
  }
  .home-map .part-stats .part-stat-item {
    width: 50%;
    padding: 0 1.25rem;
  }
}
@media (min-width: 768px) {
  .home-map .part-details-list .part-detail-item p {
    font-size: 1.875rem;
  }
  .home-map .part-info-box.part-state-texas,
  .home-map .part-info-box.texas,
  .home-map .part-city-dallas,
  .home-map .city-dallas {
    left: 19.7125rem !important;
    bottom: 6rem;
  }
  .home-map .part-info-box.part-state-florida,
  .home-map .part-info-box.florida,
  .home-map .part-city-orlando,
  .home-map .city-orlando {
    right: 10.7125rem;
    bottom: 3.625rem;
  }
  .home-map .part-map .footnote-map-info {
    padding-left: 7.5rem;
  }
  .home-map .part-state span {
    font-size: 2.375rem;
  }
}
@media (min-width: 1280px) {
  .home-map .part-heading {
    margin-bottom: 1.75rem;
    font-size: 1.5rem;
  }
  .home-map .part-heading small {
    font-size: 1.375rem;
  }
  .home-map .part-state span {
    font-size: 3rem;
  }
  .home-map .part-info-box.part-state-texas,
  .home-map .part-info-box.texas,
  .home-map .part-city-dallas,
  .home-map .city-dallas {
    left: 20.8125rem !important;
    bottom: 5.5rem;
  }
  .home-map .part-info-box.part-state-florida,
  .home-map .part-info-box.florida,
  .home-map .part-city-orlando,
  .home-map .city-orlando {
    right: 11.1125rem;
  }
  .home-map .part-map {
    transform: translate(2.5rem, 1.25rem);
  }
}
@media (max-width: 1023.98px) {
  .home-map .part-details-list .part-detail-item {
    width: 50%;
    padding: 0 5px 15px;
  }
  .home-map .part-details-list .part-detail-item p {
    text-align: center;
  }
  .home-map .part-details-list .part-detail-item + .part-detail-item {
    padding: 0 5px 15px !important;
  }
  .home-map .part-info-box {
    display: none !important;
    transform-origin: bottom center;
    transform: scale(0.5);
  }
  .home-map .part-selector-label {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    width: calc(100% - 15px);
    margin-right: 1rem;
    margin-bottom: 1.25rem;
    border: 2px solid #89c5e7;
    border-radius: 0.125rem;
    background-color: #ffffff;
  }
  .home-map .part-selector-label:after {
    content: "\e901";
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 3.125rem;
    height: 5rem;
    transform: rotate(90deg);
    background-color: #ffffff;
    color: inherit;
    text-align: center;
    font-family: icomoon;
    font-size: 1rem;
    line-height: 80px;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .home-map .part-selector-label:hover:after {
    color: #89c5e7;
  }
  .home-map .part-state {
    text-align: center;
  }
  .home-map .part-details-box::before {
    content: none;
  }
}
@media (max-width: 639.98px) {
  .home-map .part-svg-wrap {
    max-width: 16.875rem;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 1536px) {
  .home-map .part-map .part-state-label,
  .home-map .part-map .state {
    min-width: 11.25rem;
    margin-left: -4.6875rem;
    font-size: 1.125rem;
  }
  .home-map .part-details-list .part-detail-item p {
    font-size: 2.5rem;
  }
  .home-map .part-info-box.part-state-texas,
  .home-map .part-info-box.texas,
  .home-map .part-city-dallas,
  .home-map .city-dallas {
    left: 24rem !important;
    bottom: 7rem;
  }
  .home-map .part-info-box.part-state-florida,
  .home-map .part-info-box.florida,
  .home-map .part-city-orlando,
  .home-map .city-orlando {
    right: 12.3125rem;
    bottom: 4.4625rem;
  }
  .home-map .part-stats {
    font-size: 1.375rem;
  }
  .home-map .part-stats h3 {
    font-size: 1.125rem;
  }
}
.home-about .part-avatars img {
  width: 2.875rem;
  height: 2.875rem;
  border: 0.125rem solid #ffffff;
  border-radius: 999px;
  object-fit: cover;
}
.home-about .part-stars {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
.home-about .part-stars li {
  display: inline-block;
  margin-right: 0.125rem;
  margin-left: 0.125rem;
}
.home-about .part-stars i {
  position: relative;
  color: rgba(255, 255, 255, 0.2);
}
.home-about .part-stars i::after {
  content: "\e907";
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: transparent;
}
.home-about .part-rating-copy {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.875rem;
}
.home-about .part-rating-copy h3 {
  margin-bottom: 0.25rem;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 600;
}
.home-about .part-content-col small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-about .part-list-wrap {
  margin-top: 1rem;
  font-weight: 700;
}
.home-about .part-list-wrap ul {
  margin: 0;
  padding: 0;
}
.home-about .part-list-wrap li {
  position: relative;
  margin-bottom: 1.25rem;
  padding-left: 2.25rem;
}
.home-about .part-list-wrap li i {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.625rem;
}
.home-about .part-list-wrap h3 {
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .home-about .part-list-wrap {
    margin-top: 2rem;
  }
}
@media (min-width: 1024px) {
  .home-about .part-stars {
    margin-top: 0;
    margin-bottom: 0;
  }
}
@media (min-width: 1280px) {
  .home-about .part-list-wrap li {
    margin-bottom: 2.5rem;
  }
}

.home-about-flipbook .part-flipbook-header {
  margin-bottom: 2rem;
  text-align: center;
}
.home-about-flipbook .part-flipbook-header small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 1280px) {
  .home-about-flipbook .part-flipbook-header {
    margin-bottom: 3rem;
  }
}

.home-video {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .home-video {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-video {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .home-video {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .home-video {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.home-video .part-header {
  text-align: center;
}
.home-video .part-header h2 {
  display: block;
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-video .part-panel {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-top: 1rem;
  padding: 1rem 0;
  border: 1px solid rgba(34, 149, 214, 0.4);
}
.home-video .part-media-col,
.home-video .part-content-col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.home-video .part-media-col {
  position: relative;
}
.home-video .part-media-col img {
  width: 100%;
}
.home-video .part-media-col picture {
  margin-bottom: 0;
}
.home-video .part-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #ffffff !important;
  font-size: 1.375rem;
  line-height: 1;
  transform: translate(-50%, -50%);
  padding: 1rem 0.9rem 1rem 1.1rem;
  text-decoration: none;
  background: var(--stone-home-video-play-gradient);
}
.home-video .part-play-btn i {
  text-decoration: none;
}
.home-video .part-lead {
  margin-bottom: 1.75rem;
  padding: 1.5rem 1.25rem;
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.5;
  background: var(--stone-widget-bg-gradient);
}
.home-video .part-lead p {
  margin-bottom: 0;
}
.home-video .part-description {
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.5;
}
.home-video .part-description h5 {
  color: #000000;
  font-size: 1.25rem;
  font-weight: 700;
}
.home-video .part-cta {
  z-index: 0;
  display: inline-block;
  margin-top: 0.75rem;
  padding: 1rem 2rem;
}
.home-video .part-cta::before {
  z-index: -1;
}

@media (min-width: 640px) {
  .home-video .part-panel {
    padding: 2rem 1rem;
  }
  .home-video .part-play-btn {
    font-size: 1.875rem;
    padding: 1rem 0.7rem 1rem 1.3rem;
  }
  .home-video .part-lead {
    font-size: 1.25rem;
  }
  .home-video .part-description {
    font-size: 1.1875rem;
  }
  .home-video .part-description h5 {
    font-size: 1.375rem;
  }
}
@media (min-width: 768px) {
  .home-video .part-description {
    font-size: 1.375rem;
  }
}
@media (min-width: 1024px) {
  .home-video .part-header {
    text-align: left;
  }
  .home-video .part-media-col {
    width: 45%;
    order: 2;
  }
  .home-video .part-content-col {
    width: 55%;
    order: 1;
  }
  .home-video .part-cta {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
@media (min-width: 1280px) {
  .home-video .part-cta {
    margin-top: 1.25rem;
  }
}
@media (min-width: 1536px) {
  .home-video .part-cta {
    min-width: 168px;
    margin-top: 2.25rem;
  }
}
.home-contact {
  padding-top: 3rem;
  padding-bottom: 3rem;
  background-image: var(--home-contact-bg, url("/wp-content/uploads/form-block-bg.jpg"));
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media (min-width: 768px) {
  .home-contact {
    padding-top: 6rem;
    margin-bottom: 12rem;
  }
}
.home-contact .part-card-wrap {
  display: inline-block;
}
.home-contact .part-card {
  display: flex;
  flex-wrap: wrap;
  background-color: var(--stone-home-contact-card-bg);
  border: 1px solid var(--stone-home-contact-card-border);
  color: var(--stone-home-contact-form-text);
  box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2);
}
.home-contact .part-details,
.home-contact .part-form {
  width: 100%;
}
.home-contact .part-details {
  position: relative;
  z-index: 0;
  padding: 2.5rem 1rem;
  background-image: var(--home-contact-details-bg, url("/wp-content/uploads/form-left-bg.jpg"));
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.home-contact .part-details::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-home-contact-details-overlay);
}
.home-contact .part-details h2 {
  font-weight: 600;
}
.home-contact .part-details ul {
  line-height: 1.35;
}
.home-contact .part-details li {
  margin-bottom: 1rem;
  color: var(--stone-home-contact-details-text);
  font-weight: 700;
}
.home-contact .part-details a {
  display: flex;
  width: 100%;
  align-items: center;
  color: var(--stone-home-contact-details-text);
  text-decoration: none !important;
}
.home-contact .part-details a:hover,
.home-contact .part-details a:focus-visible {
  color: var(--stone-link-accent);
  text-decoration: none !important;
}
.home-contact .part-details i {
  margin-right: 0.75rem;
  padding: 0.75rem;
  border-radius: 999px;
  color: #ffffff;
  font-size: 1.25rem;
  background: var(--contact-info-icon-bg, #174580);
}
.home-contact .part-form {
  padding: 2.25rem 1rem;
}
.home-contact .part-form h2 {
  margin-bottom: 1.25rem;
}
.home-contact .part-form .gform_wrapper,
.home-contact .part-form .gform_wrapper form {
  margin: 0;
}
.home-contact .part-form .gform_wrapper .gfield,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield {
  margin-bottom: 1rem;
}
.home-contact .part-form .gform_wrapper .gfield_label,
.home-contact .part-form .gform_wrapper .gform-field-label,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield_label,
.home-contact .part-form .gform_wrapper.gravity-theme .gform-field-label {
  margin-bottom: 0.5rem;
  color: var(--stone-home-contact-form-text);
  font-size: 0.9375rem;
  line-height: 1.35;
}
.home-contact .part-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.home-contact .part-form .gform_wrapper select,
.home-contact .part-form .gform_wrapper textarea,
.home-contact .part-form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]),
.home-contact .part-form .gform_wrapper.gravity-theme select,
.home-contact .part-form .gform_wrapper.gravity-theme textarea {
  border: 1px solid var(--stone-home-contact-form-input-border);
  background: var(--stone-home-contact-form-input-bg);
  color: var(--stone-home-contact-form-text);
}
.home-contact .part-form .gform_wrapper input::placeholder,
.home-contact .part-form .gform_wrapper textarea::placeholder,
.home-contact .part-form .gform_wrapper.gravity-theme input::placeholder,
.home-contact .part-form .gform_wrapper.gravity-theme textarea::placeholder {
  color: var(--stone-home-contact-form-text-muted);
}
.home-contact .part-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.home-contact .part-form .gform_wrapper select:focus,
.home-contact .part-form .gform_wrapper textarea:focus,
.home-contact .part-form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.home-contact .part-form .gform_wrapper.gravity-theme select:focus,
.home-contact .part-form .gform_wrapper.gravity-theme textarea:focus {
  border-color: var(--stone-home-contact-form-focus);
  box-shadow: 0 0 0 2px rgba(137, 197, 231, 0.2);
  outline: 0;
}
.home-contact .part-form .gform_wrapper .gfield_required_asterisk,
.home-contact .part-form .gform_wrapper .gfield_required,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield_required_asterisk,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield_required {
  color: var(--stone-home-contact-form-link);
}
.home-contact .part-form .gform_wrapper .gfield_consent_label,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield_consent_label {
  color: var(--stone-home-contact-form-text-muted);
  font-size: 0.875rem;
  line-height: 1.6;
}
.home-contact .part-form .gform_wrapper .gfield_consent_label a,
.home-contact .part-form .gform_wrapper.gravity-theme .gfield_consent_label a {
  color: var(--stone-home-contact-form-link);
}
.home-contact .part-form .gform_wrapper .gform_footer,
.home-contact .part-form .gform_wrapper .gform-footer,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_footer,
.home-contact .part-form .gform_wrapper.gravity-theme .gform-footer {
  margin-top: 1.25rem;
  text-align: center;
  text-transform: none;
}
.home-contact .part-form .gform_wrapper .gform_footer::before,
.home-contact .part-form .gform_wrapper .gform-footer::before,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_footer::before,
.home-contact .part-form .gform_wrapper.gravity-theme .gform-footer::before {
  content: none;
  display: none;
}
.home-contact .part-form.formBtn-has-shape .gform_button,
.home-contact .part-form .gform_wrapper .gform_button,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button {
  position: relative;
  z-index: 0;
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 1rem 2rem;
  border: 1px solid transparent;
  background: var(--stone-btn-shape-bg);
  color: #ffffff;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  isolation: isolate;
}
.home-contact .part-form.formBtn-has-shape .gform_button::before,
.home-contact .part-form .gform_wrapper .gform_button::before,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3px;
  width: 100%;
  background: var(--stone-btn-shape-overlay);
  clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%);
  transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
}
.home-contact .part-form.formBtn-has-shape .gform_button:hover::before, .home-contact .part-form.formBtn-has-shape .gform_button:focus-visible::before,
.home-contact .part-form .gform_wrapper .gform_button:hover::before,
.home-contact .part-form .gform_wrapper .gform_button:focus-visible::before,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button:hover::before,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button:focus-visible::before {
  bottom: 100%;
}
.home-contact .part-form.formBtn-has-shape .gform_button:hover, .home-contact .part-form.formBtn-has-shape .gform_button:focus-visible,
.home-contact .part-form .gform_wrapper .gform_button:hover,
.home-contact .part-form .gform_wrapper .gform_button:focus-visible,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button:hover,
.home-contact .part-form .gform_wrapper.gravity-theme .gform_button:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: #ffffff;
  text-decoration: none !important;
}
.home-contact .part-form .gform_wrapper .ginput_recaptcha,
.home-contact .part-form .gform_wrapper.gravity-theme .ginput_recaptcha {
  overflow: hidden;
}
.home-contact .part-form .gform_ajax_spinner {
  display: none !important;
}

@media (min-width: 768px) {
  .home-contact .part-card-wrap {
    margin-bottom: -6rem;
  }
}
@media (min-width: 640px) {
  .home-contact .part-details {
    padding-right: 2rem;
    padding-left: 2rem;
  }
  .home-contact .part-form {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
@media (min-width: 1024px) {
  .home-contact .part-details {
    width: 40%;
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }
  .home-contact .part-details h2 {
    margin-bottom: 2.5rem;
    font-size: 2.5rem;
  }
  .home-contact .part-details li {
    margin-bottom: 1.5rem;
  }
  .home-contact .part-details i {
    margin-right: 1.25rem;
    font-size: 1.5rem;
  }
  .home-contact .part-form {
    width: 60%;
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
    padding-right: 3.5rem;
    padding-left: 3.5rem;
  }
  .home-contact .part-form.formBtn-has-shape .gform_button,
  .home-contact .part-form .gform_wrapper .gform_button,
  .home-contact .part-form .gform_wrapper.gravity-theme .gform_button {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
@media (min-width: 1280px) {
  .home-contact .part-details {
    padding-right: 3.5rem;
    padding-left: 3.5rem;
  }
}
.home-list {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .home-list {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-list {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .home-list {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 1536px) {
  .home-list {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.home-list .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
.home-list .part-header small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-list .part-content {
  font-size: 1.1875rem;
  font-weight: 700;
}
.home-list .part-content ul {
  break-inside: avoid-column;
}
.home-list .part-content li {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 2.5rem;
}
.home-list .part-content li::before {
  content: "\e902";
  position: absolute;
  top: 0;
  left: 0;
  color: var(--stone-link);
  font-family: "icomoon";
  font-size: 1.625rem;
  line-height: 1;
}
@media (min-width: 768px) {
  .home-list .part-content li::before {
    top: 0.375rem;
  }
}
@media (min-width: 1024px) {
  .home-list .part-content {
    font-size: 1.375rem;
  }
  .home-list .part-content li::before {
    font-size: 1.875rem;
  }
}
@media (min-width: 1280px) {
  .home-list .part-header {
    margin-bottom: 3rem;
  }
}

.home-features {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}

.home-features .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
.home-features .part-header small {
  display: block;
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-features .part-slider {
  padding-bottom: 4rem;
}
.home-features .part-slider .slick-dots {
  display: none !important;
}
.home-features .part-item {
  padding-right: 1rem;
  padding-left: 1rem;
}
.home-features .part-card {
  position: relative;
}
.home-features .part-card::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  height: 10.1875rem;
  background: transparent linear-gradient(180deg, rgba(0, 0, 0, 0), #000000) 0 0 no-repeat padding-box;
}
.home-features .part-media img {
  width: 100%;
  height: 28.5rem;
  object-fit: cover;
}
.home-features .part-title {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  margin-bottom: 0;
  padding: 1.75rem 1.25rem;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 600;
  transition: opacity 0.3s ease;
  opacity: 0;
}
.home-features .part-hover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.75rem 1.25rem;
  color: rgba(255, 255, 255, 0.7);
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
  background: rgba(32, 72, 129, 0.92);
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.home-features .part-hover h4 {
  color: #ffffff;
  font-size: 1.25rem;
  line-height: 1.4;
}
.home-features .part-shape::before,
.home-features .part-shape::after {
  content: "";
  position: absolute;
  width: 2.25rem;
  height: 2.25rem;
  border-color: #ffffff;
}
.home-features .part-shape.is-top::before {
  top: 1rem;
  left: 1rem;
  border-top: 4px solid;
  border-left: 4px solid;
}
.home-features .part-shape.is-top::after {
  top: 1rem;
  right: 1rem;
  border-top: 4px solid;
  border-right: 4px solid;
}
.home-features .part-shape.is-bottom::before {
  bottom: 1rem;
  left: 1rem;
  border-bottom: 4px solid;
  border-left: 4px solid;
}
.home-features .part-shape.is-bottom::after {
  right: 1rem;
  bottom: 1rem;
  border-right: 4px solid;
  border-bottom: 4px solid;
}
.home-features .part-hover-content {
  max-height: 90%;
  overflow-y: auto;
}
@media (min-width: 640px) {
  .home-features .part-hover {
    padding-right: 2.25rem;
    padding-left: 2.25rem;
  }
  .home-features .part-hover h4 {
    line-height: 1.8;
  }
}
@media (min-width: 1024px) {
  .home-features .part-title {
    opacity: 1;
  }
  .home-features .part-hover {
    opacity: 0;
    visibility: hidden;
  }
  .home-features .part-card:hover .part-title {
    opacity: 0;
  }
  .home-features .part-card:hover .part-hover {
    opacity: 1;
    visibility: visible;
  }
  .home-features .part-header {
    margin-bottom: 3rem;
  }
  .home-features .part-slider {
    padding-bottom: 6rem;
  }
}

.home-flipbook {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.home-flipbook .part-inner {
  display: grid;
  gap: 2rem;
}
.home-flipbook .part-panel {
  width: 100%;
  min-width: 0;
}
.home-flipbook .part-panel.is-right {
  padding: 0;
}
.home-flipbook .panel-right-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
}
.home-flipbook .panel-right-inner div {
  display: flex;
  align-items: center;
  align-content: center;
  background: transparent;
  width: 100%;
  max-width: 1244px;
  margin: 0 auto;
}
.home-flipbook .panel-right-inner iframe {
  width: 100% !important;
  max-width: 1244px !important;
  max-height: 700px !important;
  height: auto !important;
  aspect-ratio: 16/9;
  display: block;
  margin: 0 auto;
}
.home-flipbook .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
.home-flipbook h2 {
  border-bottom: 1px solid rgba(188, 188, 194, 0.45);
  padding-bottom: 1.25rem;
  margin-left: 2rem;
  margin-right: 2rem;
}
.home-flipbook .part-header h2 small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-flipbook .part-content {
  color: var(--stone-text-muted);
  line-height: 1.6;
}
.home-flipbook .part-content h2,
.home-flipbook .part-content h3,
.home-flipbook .part-content h4 {
  color: var(--stone-text);
}
@media (max-width: 767.98px) {
  .home-flipbook {
    padding-top: 0;
    padding-bottom: 0;
  }
  .home-flipbook h2 {
    padding-bottom: 0.75rem;
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
  .home-flipbook .part-header {
    margin-bottom: 1.25rem;
  }
  .home-flipbook .ss-embed-card {
    width: 100%;
    background: #0f1015;
    overflow: hidden;
    display: block;
  }
  .home-flipbook .ss-embed-card .embed-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
    border-radius: 0;
  }
  .home-flipbook .ss-embed-card .embed-wrap iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
  }
}
@media (min-width: 768px) {
  .home-flipbook {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .home-flipbook {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .home-flipbook .part-panel.is-left {
    padding: 0 1.5rem 1.5rem 1.5rem;
  }
  .home-flipbook .part-panel.is-right {
    padding-right: 1.5rem;
  }
  .home-flipbook .part-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 2.5rem;
  }
}
@media (min-width: 1280px) {
  .home-flipbook {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .home-flipbook .part-header {
    margin-bottom: 3rem;
  }
}
@media (min-width: 1536px) {
  .home-flipbook {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.home-about-hero {
  padding-top: 1rem;
  padding-bottom: 2rem;
}

.home-about-hero .part-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}
.home-about-hero .part-media-col,
.home-about-hero .part-content-col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.home-about-hero .part-media-wrap {
  position: relative;
}
.home-about-hero .part-rating-card {
  width: 100%;
  margin-bottom: 1.5rem;
  padding: 2rem 1rem 1rem;
  text-align: center;
  background: var(--stone-home-rating-card-gradient);
}
.home-about-hero .part-avatars ul {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.home-about-hero .part-avatars li {
  margin-left: -0.75rem;
}
.home-about-hero .part-avatars li:first-child {
  margin-left: 0;
}
.home-about-hero .part-avatars img {
  width: 2.875rem;
  height: 2.875rem;
  border: 0.125rem solid #ffffff;
  border-radius: 999px;
  object-fit: cover;
}
.home-about-hero .part-stars {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
.home-about-hero .part-stars li {
  display: inline-block;
  margin-right: 0.125rem;
  margin-left: 0.125rem;
}
.home-about-hero .part-stars i {
  position: relative;
  color: rgba(255, 255, 255, 0.2);
}
.home-about-hero .part-stars i::after {
  content: "\e907";
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: transparent;
}
.home-about-hero .part-rating-copy {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.875rem;
}
.home-about-hero .part-rating-copy h3 {
  margin-bottom: 0.25rem;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 600;
}
.home-about-hero .part-content-col small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
.home-about-hero .part-list-wrap {
  margin-top: 1rem;
  font-weight: 700;
}
.home-about-hero .part-list-wrap li {
  position: relative;
  margin-bottom: 1.25rem;
  padding-left: 2.25rem;
}
.home-about-hero .part-list-wrap li i {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.625rem;
}
.home-about-hero .part-list-wrap h3 {
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
@media (max-width: 639.98px) {
  .home-about-hero .part-media-wrap picture {
    margin-bottom: 0;
  }
}
@media (min-width: 640px) {
  .home-about-hero .part-rating-card {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 15rem;
    margin-bottom: 0;
    border: 0.5625rem solid #ffffff;
  }
}

@media (min-width: 768px) {
  .home-about-hero {
    padding-bottom: 3rem;
  }
  .home-about-hero .part-list-wrap {
    margin-top: 2rem;
  }
}
@media (min-width: 1024px) {
  .home-about-hero {
    padding-bottom: 4rem;
  }
  .home-about-hero .part-row {
    flex-direction: row-reverse;
  }
  .home-about-hero .part-media-col,
  .home-about-hero .part-content-col {
    width: 50%;
  }
}
@media (min-width: 1280px) {
  .home-about-hero {
    padding-bottom: 5rem;
  }
  .home-about-hero .part-list-wrap li {
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 1536px) {
  .home-about-hero {
    padding-bottom: 6rem;
  }
}
.home-testimonial-card {
  width: 100%;
  margin-bottom: 1.5rem;
  padding: 2rem 1rem 1rem;
  text-align: center;
  background: var(--stone-home-rating-card-gradient);
}

.home-testimonial-card .part-avatars ul {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.home-testimonial-card .part-avatars li {
  margin-left: -0.75rem;
}
.home-testimonial-card .part-avatars li:first-child {
  margin-left: 0;
}
.home-testimonial-card .part-avatars img {
  width: 2.875rem;
  height: 2.875rem;
  border: 0.125rem solid #ffffff;
  border-radius: 999px;
  object-fit: cover;
}
.home-testimonial-card .part-stars {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
.home-testimonial-card .part-stars li {
  display: inline-block;
  margin-right: 0.125rem;
  margin-left: 0.125rem;
}
.home-testimonial-card .part-stars i {
  position: relative;
  color: rgba(255, 255, 255, 0.2);
}
.home-testimonial-card .part-stars i::after {
  content: "\e907";
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: transparent;
}
.home-testimonial-card .part-copy {
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.875rem;
}
.home-testimonial-card .part-copy h3 {
  margin-bottom: 0.25rem;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 600;
}
.home-testimonial-card .home-features {
  background: transparent;
}

@media (min-width: 640px) {
  .home-testimonial-card {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 15rem;
    margin-bottom: 0;
    border: 0.5625rem solid #ffffff;
  }
}
.page-template-front-page .award-section {
  background: transparent;
}

.adjusting-video {
  padding-top: 3rem;
  padding-bottom: 6rem;
}

.adjusting-numbers {
  position: relative;
  z-index: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  overflow: hidden;
  color: #ffffff;
  background-size: cover;
}
.adjusting-numbers::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
}
.adjusting-numbers .part-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.adjusting-numbers .container {
  position: relative;
  z-index: 1;
}
.adjusting-numbers .part-inner {
  max-width: 944px;
}
.adjusting-numbers .part-header {
  margin-bottom: 2rem;
  text-align: center;
}
.adjusting-numbers .part-header h2 {
  color: #ffffff;
}
.adjusting-numbers .part-grid {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
@media (max-width: 767.98px) {
  .adjusting-numbers .part-grid {
    row-gap: 1rem;
  }
}
.adjusting-numbers .part-item {
  position: relative;
  width: 100%;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  text-align: center;
}
.adjusting-numbers .part-item h3 {
  margin-bottom: 0.75rem;
  color: #ffffff;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.2 !important;
}
.adjusting-numbers .part-item p:last-of-type {
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  .adjusting-numbers .part-item {
    padding: 1rem;
    border: 1px solid #ffffff;
  }
}
.adjusting-numbers .part-cta-wrap {
  margin-top: 2rem;
  text-align: center;
}
.adjusting-numbers .part-cta {
  display: inline-block;
  padding: 1rem;
  border: 1px solid transparent;
  background: #ffffff;
  color: #3762a1;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.adjusting-numbers .part-cta:hover, .adjusting-numbers .part-cta:focus-visible {
  border-color: #ffffff;
  background: #14487f;
  color: #ffffff;
  text-decoration: none;
}

.adjusting-stories {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.adjusting-stories .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
.adjusting-stories .part-header h2 small {
  display: block;
  color: #3762a1;
  font-size: 1.25rem;
  font-weight: 500;
  text-transform: uppercase;
}

.adjusting-video a.part-play,
.adjusting-stories a.part-play {
  text-decoration: none;
}
.adjusting-video .part-frame,
.adjusting-stories .part-frame {
  position: relative;
  max-width: 56.25rem;
  margin-right: auto;
  margin-left: auto;
  z-index: 0;
}
.adjusting-video .part-frame::before,
.adjusting-stories .part-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.5);
}
.adjusting-video .part-media,
.adjusting-stories .part-media {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 0;
  overflow: hidden;
}
.adjusting-video .part-media::before,
.adjusting-stories .part-media::before {
  content: "";
  display: block;
  padding-top: 56%;
}
.adjusting-video .part-media img,
.adjusting-stories .part-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.2s ease-in-out;
}
.adjusting-video .part-play,
.adjusting-stories .part-play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  transition: margin-top 0.2s ease-in-out;
}
.adjusting-video .part-play:hover,
.adjusting-stories .part-play:hover {
  margin-top: -0.25rem;
}
.adjusting-video .part-play-icon,
.adjusting-stories .part-play-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
  border-radius: 999px;
  background: #ffffff;
  color: #3762a1;
  font-size: 1.25rem;
}

.adjusting-video .part-frame::before {
  background: rgba(0, 0, 0, 0.7);
}

.adjusting-cases {
  position: relative;
  z-index: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  overflow: hidden;
  background-size: cover;
}
.adjusting-cases::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-public-adjusting-overlay-gradient);
}
.adjusting-cases .part-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.adjusting-cases .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
.adjusting-cases .part-header h2 {
  text-transform: uppercase;
  color: #ffffff;
}
.adjusting-cases .part-header h2 small {
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 500;
}
.adjusting-cases .heading {
  color: #ffffff;
}
.adjusting-cases .part-slider {
  max-width: 25rem;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 4rem;
}
.adjusting-cases .part-slider .slick-list {
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0.875rem;
  padding-left: 0;
}
.adjusting-cases .part-slider .slick-slide {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.adjusting-cases .part-slider .slick-slide > div + div {
  margin-top: 1rem;
}
.adjusting-cases .part-slider .slick-dots {
  display: none !important;
}
.adjusting-cases .part-slider .slick-track {
  display: flex;
}
.adjusting-cases .part-card {
  position: relative;
  padding: 0.625rem 0.625rem 1rem;
  line-height: 1.7;
}
.adjusting-cases .part-media-wrap {
  position: relative;
}
.adjusting-cases .part-media {
  position: relative;
  margin-bottom: 0.75rem;
}
.adjusting-cases .part-media::before {
  content: "";
  display: block;
  padding-top: 64%;
}
.adjusting-cases .part-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.adjusting-cases .part-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  color: #ffffff;
  text-align: center;
  background: rgba(10, 23, 51, 0.94);
  font-weight: 400;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
}
.adjusting-cases .part-overlay h5 {
  margin-bottom: 0.25rem;
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 700;
}
.adjusting-cases .part-overlay-list {
  width: 100%;
}
.adjusting-cases .part-overlay-list li + li {
  margin-top: 1rem;
}
.adjusting-cases .part-title {
  margin-bottom: 0;
  color: #ffffff;
  font-weight: 600;
}
.adjusting-cases .part-link {
  color: var(--stone-link);
  font-size: 1rem;
  text-decoration: none !important;
}
.adjusting-cases .part-link:visited,
.adjusting-cases .part-link .part-link-icon {
  color: var(--stone-link);
}
.adjusting-cases .part-link:hover, .adjusting-cases .part-link:focus-visible {
  color: #ffffff;
  text-decoration: none !important;
}
.adjusting-cases .part-link:hover .part-link-icon, .adjusting-cases .part-link:focus-visible .part-link-icon {
  color: #ffffff;
}
.adjusting-cases .part-link::after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  pointer-events: auto;
}
.adjusting-cases .part-link-icon {
  position: relative;
  top: 0.125rem;
  margin-left: 0.25rem;
  font-weight: 700;
}

.adjusting-reviews {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.adjusting-reviews .part-header {
  margin-bottom: 1.5rem;
  text-align: center;
}
.adjusting-reviews .part-header h2 small {
  display: block;
  color: #3762a1;
  font-size: 1.25rem;
  font-weight: 500;
  text-transform: uppercase;
}
.adjusting-reviews .part-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
  row-gap: 1.5rem;
}
.adjusting-reviews .part-video-col,
.adjusting-reviews .part-content-col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.adjusting-reviews .part-video-frame {
  position: relative;
  max-width: 56.25rem;
  margin-right: auto;
  margin-left: auto;
  z-index: 0;
}
.adjusting-reviews .part-video-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.5);
}
.adjusting-reviews .part-video-media {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 0;
  overflow: hidden;
}
.adjusting-reviews .part-video-media::before {
  content: "";
  display: block;
  padding-top: 56%;
}
.adjusting-reviews .part-video-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.2s ease-in-out;
}
.adjusting-reviews .part-video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  transition: margin-top 0.2s ease-in-out;
}
.adjusting-reviews .part-video-play:hover {
  margin-top: -0.25rem;
}
.adjusting-reviews .part-play-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
  border-radius: 999px;
  background: #ffffff;
  color: #3762a1;
  font-size: 1.25rem;
}
.adjusting-reviews .part-content-card {
  position: relative;
  z-index: 1;
  padding: 2rem 1rem;
  color: #ffffff;
  background-image: var(--adjusting-reviews-bg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.adjusting-reviews .part-content-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-overlay-strong);
}
.adjusting-reviews .part-content-title {
  color: #ffffff;
}
.adjusting-reviews .part-content-title span {
  display: block;
  margin-top: 0.375rem;
  font-weight: 500;
}
.adjusting-reviews .part-content-date {
  text-align: center;
}
.adjusting-reviews .part-read-more {
  margin-top: 2rem;
  font-weight: 500;
  line-height: 1.7;
}
.adjusting-reviews .part-read-more p + p {
  margin-top: 1rem;
}
.adjusting-reviews .part-read-more a,
.adjusting-reviews .part-read-more a:hover,
.adjusting-reviews .part-read-more a:focus-visible {
  text-decoration: underline;
}
.adjusting-reviews .part-more-content {
  margin-top: 0;
}
.adjusting-reviews .part-more-content.is-hidden {
  display: none;
}
.adjusting-reviews .part-toggle {
  display: inline-flex;
  align-items: center;
  margin-top: 0.5rem;
  color: var(--stone-link-accent);
  line-height: 1;
  transition: color 0.2s ease-in-out;
}
.adjusting-reviews .part-toggle:hover {
  color: var(--stone-link-accent-hover);
}
.adjusting-reviews .part-toggle::after {
  content: "\e932";
  display: inline-block;
  padding-left: 0.75rem;
  font-family: "icomoon";
}
.adjusting-reviews .part-toggle.active::after {
  padding-top: 1rem;
  padding-left: 0;
  transform: rotate(-90deg);
}

@media (min-width: 768px) {
  .adjusting-numbers {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .adjusting-numbers .part-header {
    margin-bottom: 3rem;
  }
  .adjusting-numbers .part-item {
    right: -1px;
    width: 33.3333%;
    padding-right: 0.75rem;
    padding-left: 0.75rem;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
  }
  .adjusting-numbers .part-item:last-child {
    border-right: 0;
  }
  .adjusting-numbers .part-item h3 {
    font-size: 2.25rem;
  }
  .adjusting-numbers .part-cta-wrap {
    margin-top: 2.5rem;
  }
  .adjusting-video,
  .adjusting-stories,
  .adjusting-reviews {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .adjusting-stories .part-header,
  .adjusting-reviews .part-header {
    margin-bottom: 2.5rem;
  }
  .adjusting-cases {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .adjusting-cases .part-header {
    margin-bottom: 2rem;
  }
  .adjusting-cases .part-slider {
    padding-bottom: 5rem;
  }
  .adjusting-reviews .part-content-card {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
@media (min-width: 1024px) {
  .adjusting-numbers .part-inner {
    margin-left: auto;
  }
  .adjusting-numbers .part-cta {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .adjusting-video .part-play-icon,
  .adjusting-stories .part-play-icon,
  .adjusting-reviews .part-play-icon {
    width: 4.25rem;
    height: 4.25rem;
    font-size: 1.5rem;
  }
  .adjusting-stories .part-header,
  .adjusting-reviews .part-header {
    margin-bottom: 3rem;
  }
  .adjusting-reviews .part-video-col,
  .adjusting-reviews .part-content-col {
    width: 50%;
  }
  .adjusting-reviews .part-toggle {
    margin-top: 1rem;
  }
  .adjusting-cases .part-header {
    text-align: left;
  }
  .adjusting-cases .part-slider {
    max-width: 25rem;
    margin-right: 0;
    margin-left: 0;
    padding-bottom: 6rem;
  }
  .adjusting-cases .part-slider .slick-list {
    padding-bottom: 1rem;
  }
  .adjusting-cases .part-slider .slick-slide > div + div {
    margin-top: 2rem;
  }
  .adjusting-cases .part-card {
    padding-bottom: 1.5rem;
  }
}
@media (min-width: 1280px) {
  .adjusting-numbers {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .adjusting-numbers .part-header {
    margin-bottom: 4rem;
  }
  .adjusting-numbers .part-item {
    padding-right: 1rem;
    padding-left: 1rem;
    font-size: 1.25rem;
  }
  .adjusting-numbers .part-item h3 {
    font-size: 3rem;
  }
  .adjusting-numbers .part-cta-wrap {
    margin-top: 3.5rem;
  }
  .adjusting-video,
  .adjusting-stories,
  .adjusting-reviews {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .adjusting-stories .part-header,
  .adjusting-reviews .part-header {
    margin-bottom: 3.5rem;
  }
  .adjusting-stories .part-header h2 small,
  .adjusting-reviews .part-header h2 small {
    font-size: 1.375rem;
  }
  .adjusting-cases .part-header {
    margin-bottom: 2.5rem;
  }
  .adjusting-cases .part-header h2 small {
    font-size: 1.375rem;
  }
  .adjusting-cases .part-slider {
    padding-bottom: 7rem;
  }
  .adjusting-cases .part-card {
    padding-bottom: 2rem;
  }
  .adjusting-cases .part-overlay h5 {
    font-size: 1.5rem;
  }
  .adjusting-reviews .part-content-card {
    padding-right: 3rem;
    padding-left: 3rem;
  }
  .adjusting-reviews .part-read-more {
    margin-top: 2.5rem;
    line-height: 1.778;
  }
  .adjusting-reviews .part-read-more p + p {
    margin-top: 1.5rem;
  }
  .adjusting-reviews .part-more-content {
    margin-top: 1.5rem;
  }
  .adjusting-reviews .part-toggle {
    margin-top: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .adjusting-video {
    padding-top: 3rem;
    padding-bottom: 6rem;
  }
  .adjusting-stories,
  .adjusting-reviews {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .adjusting-numbers .part-item h3 {
    font-size: 3.75rem;
  }
  .adjusting-numbers .part-cta {
    min-width: 168px;
  }
  .adjusting-cases .part-overlay {
    opacity: 0;
    visibility: hidden;
  }
  .adjusting-cases .part-card:hover .part-overlay {
    opacity: 1;
    visibility: visible;
  }
}
.page-template-tpl-public-adjusting .bg-blue-gradient-dark {
  background: transparent;
}

.page-engineering .part-eng-top,
.page-engineering .part-eng-assessment,
.page-engineering .part-eng-milestone,
.page-engineering .part-eng-forensics,
.page-engineering .part-eng-const,
.page-engineering .part-eng-video,
.page-engineering .part-eng-cta,
.page-engineering .part-eng-know {
  position: relative;
}
.page-engineering .part-eng-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-row.is-reverse {
    flex-direction: row-reverse;
  }
}
@media (max-width: 1023.98px) {
  .page-engineering .part-eng-row {
    text-align: center;
  }
}
.page-engineering .part-eng-media,
.page-engineering .part-eng-copy {
  width: 100%;
  flex: 0 0 auto;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-media,
  .page-engineering .part-eng-copy {
    width: 50%;
  }
}
.page-engineering .part-eng-media-shot,
.page-engineering .part-eng-media-shot img {
  display: block;
  width: 100%;
}
.page-engineering .part-eng-copy {
  line-height: 1.6;
}
.page-engineering .part-eng-copy.is-strong {
  font-weight: 700;
}
.page-engineering .part-eng-copy p:last-child {
  margin-bottom: 0;
}
.page-engineering .part-eng-copy p + p {
  margin-top: 1.25rem;
}
.page-engineering .part-eng-copy h2 + p {
  margin-top: 1.5rem;
}
.page-engineering .part-eng-head {
  text-align: center;
  margin-bottom: 1.5rem;
}
.page-engineering .part-eng-head h2 {
  text-transform: uppercase;
}
.page-engineering .part-eng-head small {
  color: var(--stone-brand-accent);
  font-size: 1.25rem;
  font-weight: 500;
}
.page-engineering .part-eng-head.is-light {
  color: #ffffff;
}
.page-engineering .part-eng-head.is-light h2,
.page-engineering .part-eng-head.is-light p {
  color: #ffffff;
}
.page-engineering .part-eng-grid .slick-list {
  margin-left: -1rem;
  margin-right: -1rem;
}
.page-engineering .part-eng-grid .slick-arrow {
  display: none !important;
}
.page-engineering .part-eng-grid .slick-dots li:only-child {
  display: none !important;
}
.page-engineering .part-eng-col {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 1280px) {
  .page-engineering .part-eng-col {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.page-engineering .part-eng-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
}
.page-engineering .part-eng-card:hover, .page-engineering .part-eng-card:focus, .page-engineering .part-eng-card:focus-visible, .page-engineering .part-eng-card:active, .page-engineering .part-eng-card:visited {
  text-decoration: none;
}
.page-engineering .part-eng-card:hover .part-eng-icon-wrap, .page-engineering .part-eng-card:focus-within .part-eng-icon-wrap {
  padding: 0.125rem;
}
.page-engineering .part-eng-icon-wrap {
  position: relative;
  display: inline-flex;
  width: 5rem;
  height: 5rem;
  margin: 0 auto 1rem;
  padding: 0.375rem;
  transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}
.page-engineering .part-eng-icon-wrap::before, .page-engineering .part-eng-icon-wrap::after {
  content: "";
  position: absolute;
  width: 2.75rem;
  height: 2.75rem;
  background: var(--stone-brand-accent);
  z-index: 0;
}
.page-engineering .part-eng-icon-wrap::before {
  top: 0;
  left: 0;
}
.page-engineering .part-eng-icon-wrap::after {
  right: 0;
  bottom: 0;
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-icon-wrap {
    width: 5.9375rem;
    height: 5.9375rem;
  }
}
.page-engineering .part-eng-icon {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: var(--stone-brand-accent);
  background: #ffffff;
  box-shadow: 0 3px 27px rgba(0, 0, 0, 0.09);
  transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}
.page-engineering .part-eng-label {
  margin-bottom: 0;
  color: var(--stone-brand-surface);
  font-size: 1rem;
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-label {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-label {
    font-size: 1.125rem;
  }
}
.page-engineering .part-eng-assessment {
  overflow: visible;
  isolation: isolate;
  color: #ffffff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}
.page-engineering .part-eng-assessment h2 {
  color: #ffffff;
}
.page-engineering .part-eng-assessment::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(10, 31, 62, 0.87);
}
.page-engineering .part-eng-assessment > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  margin: 0;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-assessment {
    padding-top: 4rem;
    margin-bottom: 7rem;
  }
}
.page-engineering .part-eng-media-stack {
  position: relative;
  z-index: 2;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-media-stack {
    margin-left: 2rem;
    margin-bottom: -7rem;
  }
}
.page-engineering .part-eng-media-fill {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
}
.page-engineering .part-eng-media-fill img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 14rem;
  object-fit: cover;
  border: 15px solid white;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-media-fill img {
    min-height: 18rem;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-const {
    margin-top: -1.5rem;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-const .part-eng-row {
    align-items: stretch;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-const .part-eng-media {
    padding-right: 1rem;
  }
}
.page-engineering .part-eng-const .part-eng-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-const .part-eng-copy {
    padding-left: 1rem;
  }
}
.page-engineering .part-eng-media-shot {
  max-width: 25.8125rem;
  margin-bottom: 1.25rem;
}
.page-engineering .part-eng-media-shot img {
  border: 5px solid #ffffff;
}
@media (min-width: 640px) {
  .page-engineering .part-eng-media-shot img {
    border-width: 10px;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-media-shot img {
    border-width: 15px;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-media-shot img {
    border-width: 20px;
  }
}
.page-engineering .part-eng-media-shot.is-offset {
  margin-left: auto;
}
.page-engineering .part-eng-media-shot.part-eng-media-shot--full {
  max-width: none;
  width: 100%;
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-milestone .part-eng-media {
    padding-right: 1rem;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-milestone .part-eng-copy {
    padding-left: 1rem;
  }
}
.page-engineering .part-eng-forensics {
  overflow: hidden;
  color: #ffffff;
  font-size: 1rem;
  padding-top: 2rem;
  padding-bottom: 1.5rem;
  margin-bottom: 2rem;
}
.page-engineering .part-eng-forensics h2 {
  color: #ffffff;
  text-transform: none;
  margin-bottom: 0.75rem;
}
.page-engineering .part-eng-forensics .part-eng-head {
  margin-bottom: 1.5rem;
}
.page-engineering .part-eng-forensics .part-eng-head p {
  font-weight: 700;
}
@media (min-width: 1280px) {
  .page-engineering .part-eng-forensics .part-eng-list {
    font-size: 1.375rem;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-forensics .part-eng-list {
    font-size: 1.625rem;
  }
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-forensics {
    padding-top: 4rem;
    padding-bottom: 2rem;
    margin-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-forensics {
    font-size: 1.375rem;
  }
}
.page-engineering .part-eng-shell {
  max-width: 69.375rem;
}
.page-engineering .part-eng-feature {
  display: block;
  max-width: 56.25rem;
  margin-left: auto;
  margin-right: auto;
  border: 5px solid #ffffff;
}
.page-engineering .part-eng-feature img {
  width: 100%;
  display: block;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-feature {
    border-width: 10px;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-feature {
    border-width: 15px;
  }
}
.page-engineering .part-eng-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2rem;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-list {
    margin-top: 3rem;
  }
}
.page-engineering .part-eng-list-item {
  position: relative;
  width: 100%;
  padding: 0 1rem;
  margin-bottom: 1rem;
}
.page-engineering .part-eng-list-item::before {
  content: "";
  position: absolute;
  top: 0.75rem;
  right: 0;
  width: 1px;
  height: 0.75rem;
  background: var(--stone-brand-bright);
  display: none;
}
.page-engineering .part-eng-list-item:last-child::before {
  display: none;
}
@media (min-width: 640px) {
  .page-engineering .part-eng-list-item {
    width: 50%;
    margin-bottom: 1.5rem;
  }
  .page-engineering .part-eng-list-item::before {
    display: block;
  }
  .page-engineering .part-eng-list-item:nth-child(2n)::before {
    display: none;
  }
}
@media (min-width: 768px) {
  .page-engineering .part-eng-list-item {
    width: 33.3333%;
  }
  .page-engineering .part-eng-list-item:nth-child(2n)::before {
    display: block;
  }
  .page-engineering .part-eng-list-item:nth-child(3n)::before {
    display: none;
  }
}
.page-engineering .part-eng-video {
  overflow: hidden;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.page-engineering .part-eng-video-frame {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.page-engineering .part-eng-video-media {
  position: relative;
  border: 5px solid #ffffff;
}
.page-engineering .part-eng-video-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.7);
}
.page-engineering .part-eng-video-pic {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
}
.page-engineering .part-eng-video-pic::before {
  content: "";
  display: block;
  padding-top: 50%;
}
@media (min-width: 768px) {
  .page-engineering .part-eng-video-pic::before {
    padding-top: 42%;
  }
}
.page-engineering .part-eng-video-pic img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-engineering .part-eng-video-play {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-decoration: none;
}
.page-engineering .part-eng-video-play i {
  display: flex;
  width: 3.125rem;
  height: 3.125rem;
  align-items: center;
  justify-content: center;
  padding-left: 0.375rem;
  font-size: 1.25rem;
  color: var(--stone-brand-accent);
  background: #ffffff;
  border-radius: 9999px;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-video-play i {
    width: 5.625rem;
    height: 5.625rem;
    font-size: 2.125rem;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-video-play i {
    width: 7.25rem;
    height: 7.25rem;
    font-size: 3rem;
  }
}
.page-engineering .part-eng-cta,
.page-engineering .part-eng-know {
  overflow: hidden;
  isolation: isolate;
  color: #ffffff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}
.page-engineering .part-eng-cta::before,
.page-engineering .part-eng-know::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: transparent;
}
.page-engineering .part-eng-cta h2,
.page-engineering .part-eng-know h2 {
  color: #ffffff;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-cta,
  .page-engineering .part-eng-know {
    padding-top: 4rem;
    padding-bottom: 4rem;
    margin-bottom: 4rem;
  }
}
.page-engineering .part-eng-cta > img,
.page-engineering .part-eng-know > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  margin: 0;
}
.page-engineering .part-eng-cta::before {
  opacity: 0.92;
}
.page-engineering .part-eng-cta-inner {
  max-width: 56.25rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  position: relative;
  z-index: 2;
}
.page-engineering .part-eng-btn {
  position: relative;
  z-index: 0;
  display: inline-block;
  margin-top: 1rem;
  padding: 1rem 2rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  background: var(--stone-brand-accent);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-decoration: none;
}
.page-engineering .part-eng-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 3px;
  z-index: -1;
  background: var(--stone-brand-deep);
  clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%);
  transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.page-engineering .part-eng-btn span {
  position: relative;
  z-index: 1;
  color: inherit;
}
.page-engineering .part-eng-btn:hover, .page-engineering .part-eng-btn:focus-visible {
  color: #ffffff;
  background: var(--stone-brand-bright);
}
.page-engineering .part-eng-btn:hover::before, .page-engineering .part-eng-btn:focus-visible::before {
  bottom: 100%;
}
.page-engineering .part-eng-know-copy {
  font-size: 1rem;
  position: relative;
  z-index: 2;
}
.page-engineering .part-eng-know-copy h2 small {
  display: block;
  margin-top: 0.75rem;
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 500;
}
@media (min-width: 640px) {
  .page-engineering .part-eng-know-copy h2 small {
    margin-top: 1rem;
  }
}
@media (min-width: 1536px) {
  .page-engineering .part-eng-know-copy h2 small {
    margin-top: 1.25rem;
    font-size: 1.375rem;
  }
}
.page-engineering .part-eng-know-copy ul {
  margin-top: 1.5rem;
  list-style: none;
  padding-left: 0;
}
.page-engineering .part-eng-know-copy li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.7;
}
.page-engineering .part-eng-know-copy li::before {
  content: "";
  position: absolute;
  top: 0.1875rem;
  left: 0;
  width: 0.875rem;
  height: 0.875rem;
  background-image: url("../../images/focus-icon.png");
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media (min-width: 1024px) {
  .page-engineering .part-eng-know-copy li::before {
    top: 0.5rem;
    width: 1rem;
    height: 1rem;
  }
}
.page-engineering .part-eng-know-copy li:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023.98px) {
  .page-engineering .part-eng-milestone,
  .page-engineering .part-eng-const {
    text-align: center;
  }
}
.page-engineering .primary-gradient {
  background: transparent;
}

@media (min-width: 768px) {
  .page-cm .part-cm-title {
    line-height: 3.5rem !important;
  }
}
@media (min-width: 1280px) {
  .page-cm .part-cm-title {
    line-height: 3.5rem !important;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-title {
    line-height: 3.5rem !important;
  }
}
.page-cm .part-cm-title {
  line-height: 3.5rem !important;
}
.page-cm .wysiwyg a {
  color: var(--stone-link);
  text-decoration: none;
  transition: color 0.2s ease;
}
.page-cm .wysiwyg a:hover, .page-cm .wysiwyg a:focus-visible {
  color: var(--stone-link-hover);
  text-decoration: none;
}
.page-cm .wysiwyg__block {
  max-width: none;
}
.page-cm .ss-content {
  color: var(--stone-text);
}
.page-cm .part-cm-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-position: 20% bottom;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 350px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-cm .part-cm-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-overlay-strong);
}
@media (min-width: 640px) {
  .page-cm .part-cm-hero {
    background-position: left bottom;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-hero {
    min-height: 450px;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-hero {
    min-height: 480px;
  }
}
.page-cm .part-cm-content {
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
  padding-top: 3rem;
  padding-bottom: 3rem;
  min-height: 250px;
}
@media (min-width: 640px) {
  .page-cm .part-cm-content {
    min-height: 350px;
    font-size: 1.3125rem;
    text-align: left;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-content {
    min-height: 450px;
    font-size: 1.5rem;
  }
}
.page-cm .part-cm-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 0;
  color: #ffffff;
}
@media (min-width: 640px) {
  .page-cm .part-cm-title {
    justify-content: flex-start;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-title {
    font-size: 2.75rem;
  }
}
.page-cm .part-cm-section {
  position: relative;
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-section {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-section {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
.page-cm .part-cm-head {
  text-align: center;
  margin-bottom: 2rem;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-head {
    margin-bottom: 2.5rem;
  }
}
.page-cm .part-cm-head-copy {
  max-width: 46.875rem;
  margin-left: auto;
  margin-right: auto;
}
.page-cm .part-cm-head-copy p:last-child {
  margin-bottom: 0;
}
.page-cm .part-cm-head-title {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (min-width: 640px) {
  .page-cm .part-cm-head-title {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
}
.page-cm .part-cm-icons-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  overflow: hidden;
  row-gap: 2rem;
}
.page-cm .part-cm-icons-item {
  position: relative;
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
}
.page-cm .part-cm-icons-item::before, .page-cm .part-cm-icons-item::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  background: color-mix(in srgb, var(--stone-brand-surface) 20%, transparent);
}
.page-cm .part-cm-icons-item::before {
  left: -1px;
}
.page-cm .part-cm-icons-item::after {
  right: -1px;
}
@media (min-width: 640px) {
  .page-cm .part-cm-icons-item {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-icons-item {
    width: 33.3333%;
  }
}
.page-cm .part-cm-icons-icon {
  display: block;
  color: var(--stone-brand-surface);
  font-size: 2rem;
}
@media (min-width: 1536px) {
  .page-cm .part-cm-icons-icon {
    font-size: 2.75rem;
  }
}
.page-cm .part-cm-icons-label {
  display: block;
  margin-top: 1rem;
  color: rgba(232, 237, 242, 0.9);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (min-width: 1536px) {
  .page-cm .part-cm-icons-label {
    font-size: 1.25rem;
  }
}
.page-cm .part-cm-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 0.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 640px) {
  .page-cm .part-cm-links {
    row-gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-links {
    margin-bottom: 3rem;
  }
}
.page-cm .part-cm-links-col {
  width: 50%;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
@media (min-width: 768px) {
  .page-cm .part-cm-links-col {
    width: 33.3333%;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-links-col {
    width: 25%;
  }
}
@media (min-width: 1280px) {
  .page-cm .part-cm-links-col {
    width: 20%;
  }
}
.page-cm .part-cm-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  height: 100%;
  padding: 1.5rem 0.5rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.2;
  color: #1f2937;
  background: #ffffff;
  border: 1px solid color-mix(in srgb, #1f2937 18%, transparent);
  box-shadow: 0 4px 84px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}
.page-cm .part-cm-link:hover, .page-cm .part-cm-link:focus-visible {
  background: var(--stone-widget-bg-solid);
  color: #ffffff;
}
.page-cm .part-cm-link:hover .part-cm-link-icon, .page-cm .part-cm-link:focus-visible .part-cm-link-icon {
  color: #ffffff;
}
.page-cm .part-cm-link-icon {
  color: #111111;
  font-size: 1.5rem;
  transition: color 0.2s ease;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-link-icon {
    font-size: 2rem;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-link-icon {
    font-size: 2.5rem;
  }
}
.page-cm .part-cm-form-wrap {
  position: relative;
  max-width: 69.375rem;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 640px) {
  .page-cm .part-cm-form-wrap .gform_footer,
  .page-cm .part-cm-form-wrap .gform-footer {
    width: 50%;
    text-align: right;
  }
}
.page-cm .part-cm-form-cta {
  margin-top: 1rem;
}
@media (min-width: 640px) {
  .page-cm .part-cm-form-cta {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
    padding-left: 0.5rem;
  }
}
.page-cm .part-cm-btn {
  display: inline-block;
  text-decoration: none;
}
.page-cm .part-cm-two-col {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-two-col {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
.page-cm .part-cm-two-col .part-cm-two-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 2rem;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-wrap {
    flex-wrap: nowrap;
    row-gap: 0;
  }
}
.page-cm .part-cm-two-col .part-cm-two-media,
.page-cm .part-cm-two-col .part-cm-two-copy {
  width: 100%;
  flex: 0 0 auto;
  box-sizing: border-box;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-media {
    width: 50%;
    padding-right: 1rem;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-copy {
    width: 50%;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-media[data-width=narrow] {
    width: 48%;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-copy[data-width=wide] {
    width: 52%;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-media[data-width=compact] {
    width: 46%;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col .part-cm-two-wrap > .part-cm-two-copy[data-width=wide] {
    width: 54%;
  }
}
.page-cm .part-cm-two-col picture,
.page-cm .part-cm-two-col img {
  display: block;
  width: 100%;
  margin: 0;
}
.page-cm .part-cm-two-col picture {
  border: 5px solid #ffffff;
}
@media (min-width: 640px) {
  .page-cm .part-cm-two-col picture {
    border-width: 10px;
  }
}
@media (min-width: 1536px) {
  .page-cm .part-cm-two-col picture {
    border-width: 15px;
  }
}
.page-cm .part-cm-two-col .part-cm-two-copy {
  line-height: 1.7;
}
.page-cm .part-cm-two-col .part-cm-two-copy p:last-child {
  margin-bottom: 0;
}
.page-cm .part-cm-two-col .part-cm-two-copy strong {
  color: var(--stone-brand-surface);
}
.page-cm .part-cm-two-col ul {
  margin-left: 1.25rem;
  list-style: disc;
  margin-bottom: 0.75rem;
}
.page-cm .part-cm-two-col.is-bulleted .part-cm-two-copy p + p {
  margin-top: -1rem;
}
.page-cm .part-cm-two-col.is-bulleted .part-cm-two-copy p + ul,
.page-cm .part-cm-two-col.is-bulleted .part-cm-two-copy h2 + p {
  margin-top: 1.5rem;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col.is-reverse .part-cm-two-wrap {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col.is-reverse .part-cm-two-media {
    padding-right: 0;
    padding-left: 1rem;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-two-col.is-reverse .part-cm-two-copy {
    padding-left: 0;
    padding-right: 1rem;
  }
}
.page-cm .part-cm-two-col.is-muted {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h1,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h2,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h3,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h4,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h5,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h6,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy strong,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy b {
  color: #ffffff !important;
}
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h1,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h2,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h3,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h4,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h5,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy h6 {
  color: var(--stone-brand-highlight) !important;
}
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy p,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy li,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy span,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy a,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy em,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy small {
  color: rgba(255, 255, 255, 0.88) !important;
}
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy strong,
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy b {
  color: #ffffff !important;
}
.page-cm .part-cm-two-col.is-muted .part-cm-two-copy a {
  text-decoration-color: currentColor;
}
.page-cm .part-cm-two-col.is-accent {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.page-cm .part-cm-two-col.is-accent .part-cm-two-copy,
.page-cm .part-cm-two-col.is-accent .part-cm-two-copy h2 {
  color: #ffffff;
}
.page-cm .part-cm-two-col.is-accent .part-cm-two-copy strong {
  color: #ffffff;
}
.page-cm .part-cm-specs {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
@media (min-width: 640px) {
  .page-cm .part-cm-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.page-cm .part-cm-spec {
  display: flex;
  gap: 1rem;
  line-height: 1.3;
}
.page-cm .part-cm-box-grid .part-cm-box-shell {
  position: relative;
  display: grid;
  gap: 2.75rem;
  padding: 2rem 1rem;
  color: #ffffff;
}
@media (min-width: 640px) {
  .page-cm .part-cm-box-grid .part-cm-box-shell {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .page-cm .part-cm-box-grid .part-cm-box-shell {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .page-cm .part-cm-box-grid .part-cm-box-shell::before {
    content: "";
    position: absolute;
    top: 3.5rem;
    bottom: 3.5rem;
    left: 50%;
    width: 0.375rem;
    transform: translateX(-50%);
  }
}
.page-cm .part-cm-box-grid .part-cm-box-item {
  position: relative;
  height: 100%;
  text-align: center;
  color: #ffffff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.page-cm .part-cm-box-grid .part-cm-box-item::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: rgba(0, 0, 0, 0.75);
}
@media (max-width: 1023.98px) {
  .page-cm .part-cm-box-grid .part-cm-box-item {
    margin-bottom: 4rem;
  }
  .page-cm .part-cm-box-grid .part-cm-box-item:last-child {
    margin-bottom: 0;
  }
  .page-cm .part-cm-box-grid .part-cm-box-item::after {
    content: "";
    position: absolute;
    left: 0.5rem;
    right: 0.5rem;
    bottom: -2.25rem;
    height: 0.375rem;
    border-top: 1px solid #0f4b8f;
    border-bottom: 1px solid #0f4b8f;
  }
  .page-cm .part-cm-box-grid .part-cm-box-item:last-child::after {
    display: none;
  }
}
.page-cm .part-cm-box-grid .part-cm-box-title,
.page-cm .part-cm-box-grid .part-cm-box-copy {
  position: relative;
  z-index: 1;
}
.page-cm .part-cm-box-grid .part-cm-box-title {
  display: block;
  padding: 1rem;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  background: var(--stone-brand-accent);
}
@media (min-width: 1536px) {
  .page-cm .part-cm-box-grid .part-cm-box-title {
    font-size: 1.5rem;
  }
}
.page-cm .part-cm-box-grid .part-cm-box-copy {
  padding: 2rem 1rem;
  font-size: 1rem;
  line-height: 1.6;
}
.page-cm .part-cm-box-grid .part-cm-box-copy p:last-child {
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .page-cm .part-cm-box-grid .part-cm-box-copy {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.page-cm .part-cm-quote {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  text-align: center;
  background: var(--stone-widget-bg-solid);
}
.page-cm .part-cm-quote .part-cm-quote-text {
  margin-bottom: 0;
  color: #ffffff;
  font-style: italic;
  font-weight: 600;
}
@media (min-width: 1536px) {
  .page-cm .part-cm-quote .part-cm-quote-text {
    font-size: 2.625rem;
  }
}
@media (max-width: 639.98px) {
  .page-cm .part-cm-title {
    flex-direction: column;
    text-align: center;
  }
}
.page-cm .page-cm .part-cm-two-col.is-muted {
  background: transparent;
}

.page-id-6343 {
  /* Capital Improvement Oversight page styles */
}
.page-id-6343 #ownersrep {
  scroll-margin-top: 90px;
}
.page-id-6343 .default-block {
  padding-top: 5rem;
  padding-bottom: 1rem;
}

.page-cpted .part-cpted-section {
  color: var(--stone-text-muted);
}
.page-cpted .part-cpted-intro {
  color: var(--stone-text-muted);
}
.page-cpted .part-cpted-intro-emphasis {
  color: var(--stone-link);
}
.page-cpted .part-cpted-how-it-works {
  color: var(--stone-text-muted);
}
.page-cpted .part-cpted-btn {
  text-decoration: none;
}
.page-cpted .part-cpted-band {
  position: relative;
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-band.is-primary {
  background: var(--stone-cpted-band-gradient);
}
.page-cpted {
  /* Fallback for legacy CPTED markup still using utility class stacks. */
}
.page-cpted .part-cpted-section.part-cpted-band.is-primary {
  padding-top: 2.5rem;
  padding-bottom: 3rem;
}
.page-cpted .part-cpted-section.part-cpted-band.is-primary .mt-12.bg-cover.bg-center.bg-no-repeat {
  margin-top: 1.75rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page-cpted .part-cpted-package.part-cpted-section.part-cpted-band.is-primary.is-no-cards {
  padding-top: 0;
  padding-bottom: 0;
}
.page-cpted .part-cpted-package {
  padding-top: 2.5rem;
  padding-bottom: 3rem;
}
.page-cpted .part-cpted-package.is-with-cards .part-cpted-highlight {
  margin-top: 1.75rem;
}
.page-cpted .part-cpted-package.is-no-cards .part-cpted-highlight {
  margin-top: 0;
  width: 100%;
  min-height: 0;
}
.page-cpted .part-cpted-package.is-no-cards {
  padding-top: 0;
  padding-bottom: 0;
}
.page-cpted .part-cpted-package.is-no-cards > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
.page-cpted .part-cpted-highlight {
  position: relative;
  z-index: 0;
  color: var(--stone-home-contact-details-text);
  font-weight: 400;
  line-height: 1.65;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 2rem 1rem;
  overflow: hidden;
}
.page-cpted .part-cpted-highlight h1,
.page-cpted .part-cpted-highlight h2,
.page-cpted .part-cpted-highlight h3,
.page-cpted .part-cpted-highlight h4,
.page-cpted .part-cpted-highlight h5,
.page-cpted .part-cpted-highlight h6 {
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-highlight p {
  margin-bottom: 0.5rem;
}
.page-cpted .part-cpted-highlight.is-center {
  text-align: center;
}
.page-cpted .part-cpted-test .part-cpted-highlight {
  margin-top: 1.75rem;
  padding: 2rem 1rem 0 1rem;
}
.page-cpted .part-cpted-test .form-free-test {
  padding: 0 1rem 1rem 1rem;
}
.page-cpted .part-cpted-test .form-free-test .gform_wrapper,
.page-cpted .part-cpted-test .form-free-test .gform_wrapper.gravity-theme {
  background: color-mix(in srgb, var(--stone-glass-card-bg), var(--stone-brand-deep) 22%);
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), #ffffff 16%);
  box-shadow: 0 14px 28px color-mix(in srgb, var(--stone-overlay-strong), transparent 40%);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 1rem;
  padding: 2rem;
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-test .form-free-test .gform_heading,
.page-cpted .part-cpted-test .form-free-test .gform-body,
.page-cpted .part-cpted-test .form-free-test .gform_body,
.page-cpted .part-cpted-test .form-free-test .gfield,
.page-cpted .part-cpted-test .form-free-test .gfield_label,
.page-cpted .part-cpted-test .form-free-test .gform_title,
.page-cpted .part-cpted-test .form-free-test .gform_description,
.page-cpted .part-cpted-test .form-free-test .gfield_radio label,
.page-cpted .part-cpted-test .form-free-test .ginput_container,
.page-cpted .part-cpted-test .form-free-test .gf_progressbar_title,
.page-cpted .part-cpted-test .form-free-test .gf_step,
.page-cpted .part-cpted-test .form-free-test .gf_step_label,
.page-cpted .part-cpted-test .form-free-test .gf_step_number,
.page-cpted .part-cpted-test .form-free-test .gf_page_steps {
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-test .form-free-test .gf_progressbar_wrapper {
  display: block;
  margin-top: 0.25rem;
  margin-bottom: 1rem;
}
.page-cpted .part-cpted-test .form-free-test .gf_progressbar_title {
  font-size: 0.875rem;
  text-align: right;
}
.page-cpted .part-cpted-test .form-free-test .gf_progressbar {
  height: 0.875rem;
  background: color-mix(in srgb, var(--stone-glass-card-border), transparent 60%);
  overflow: hidden;
}
.page-cpted .part-cpted-test .form-free-test .gf_progressbar_percentage {
  background: var(--stone-progress-fill-gradient);
  color: #ffffff;
  min-height: 100%;
  height: 100%;
  font-size: 0.6875rem;
  line-height: 1;
  padding-right: 0.375rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  white-space: nowrap;
}
.page-cpted .part-cpted-test .form-free-test .gform_page_footer,
.page-cpted .part-cpted-test .form-free-test .gform-page-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
.page-cpted .part-cpted-test .form-free-test .gform_previous_button,
.page-cpted .part-cpted-test .form-free-test .gform_next_button,
.page-cpted .part-cpted-test .form-free-test .gform_button,
.page-cpted .part-cpted-test .form-free-test #cta,
.page-cpted .part-cpted-test .form-free-test a#cta {
  appearance: none;
  min-width: 5.75rem;
  height: 2.125rem;
  padding: 0 0.875rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.page-cpted .part-cpted-test .form-free-test .gform_previous_button {
  background: color-mix(in srgb, var(--stone-btn-shape-bg), #ffffff 24%);
  border-color: color-mix(in srgb, var(--stone-btn-shape-bg), #ffffff 36%);
  color: var(--stone-home-contact-form-text);
  box-shadow: none;
}
.page-cpted .part-cpted-test .form-free-test .gform_previous_button::before {
  content: "←";
  margin-right: 0.375rem;
  font-weight: 700;
}
.page-cpted .part-cpted-test .form-free-test .gform_next_button,
.page-cpted .part-cpted-test .form-free-test .gform_button,
.page-cpted .part-cpted-test .form-free-test #cta,
.page-cpted .part-cpted-test .form-free-test a#cta {
  border-color: transparent;
  background: var(--stone-btn-shape-bg);
  color: var(--stone-home-contact-form-text);
  text-transform: none;
  text-decoration: none;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--stone-overlay-strong), transparent 45%);
}
.page-cpted .part-cpted-test .form-free-test .gform_previous_button:hover,
.page-cpted .part-cpted-test .form-free-test .gform_previous_button:focus-visible {
  background: color-mix(in srgb, var(--stone-btn-shape-hover), #ffffff 18%);
  border-color: color-mix(in srgb, var(--stone-btn-shape-hover), #ffffff 28%);
  color: var(--stone-home-contact-form-text);
  box-shadow: 0 0 0 3px var(--stone-home-contact-form-focus-ring);
  outline: none;
}
.page-cpted .part-cpted-test .form-free-test .gform_next_button:hover,
.page-cpted .part-cpted-test .form-free-test .gform_next_button:focus-visible,
.page-cpted .part-cpted-test .form-free-test .gform_button:hover,
.page-cpted .part-cpted-test .form-free-test .gform_button:focus-visible,
.page-cpted .part-cpted-test .form-free-test #cta:hover,
.page-cpted .part-cpted-test .form-free-test #cta:focus-visible,
.page-cpted .part-cpted-test .form-free-test a#cta:hover,
.page-cpted .part-cpted-test .form-free-test a#cta:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: var(--stone-home-contact-form-text);
  box-shadow: 0 0 0 3px var(--stone-home-contact-form-focus-ring), 0 12px 24px color-mix(in srgb, var(--stone-overlay-strong), transparent 38%);
  transform: translateY(-1px);
  outline: none;
  text-decoration: none;
}
.page-cpted .part-cpted-test .form-free-test .gform_previous_button[disabled],
.page-cpted .part-cpted-test .form-free-test .gform_next_button[disabled],
.page-cpted .part-cpted-test .form-free-test .gform_button[disabled],
.page-cpted .part-cpted-test .form-free-test #cta[disabled],
.page-cpted .part-cpted-test .form-free-test a#cta[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
@media (min-width: 640px) {
  .page-cpted .part-cpted-highlight {
    padding: 2.25rem 2rem;
  }
  .page-cpted .part-cpted-test .form-free-test {
    padding: 1rem;
  }
  .page-cpted .part-cpted-test .form-free-test .gform_wrapper,
  .page-cpted .part-cpted-test .form-free-test .gform_wrapper.gravity-theme {
    padding: 2rem 2rem 2.25rem;
  }
  .page-cpted .part-cpted-test .form-free-test .gform_page_footer,
  .page-cpted .part-cpted-test .form-free-test .gform-page-footer {
    margin-top: 2rem;
  }
  .page-cpted .part-cpted-test .form-free-test .gform_previous_button,
  .page-cpted .part-cpted-test .form-free-test .gform_next_button,
  .page-cpted .part-cpted-test .form-free-test .gform_button,
  .page-cpted .part-cpted-test .form-free-test #cta,
  .page-cpted .part-cpted-test .form-free-test a#cta {
    min-width: 6rem;
  }
  .page-cpted .part-cpted-test .form-free-test .gform_next_button,
  .page-cpted .part-cpted-test .form-free-test .gform_button,
  .page-cpted .part-cpted-test .form-free-test #cta,
  .page-cpted .part-cpted-test .form-free-test a#cta {
    min-width: 6rem;
  }
}
@media (min-width: 1024px) {
  .page-cpted .part-cpted-package {
    padding-top: 3rem;
    padding-bottom: 3.5rem;
  }
  .page-cpted .part-cpted-package.is-with-cards .part-cpted-highlight,
  .page-cpted .part-cpted-test .part-cpted-highlight {
    margin-top: 2rem;
  }
  .page-cpted .part-cpted-package.is-no-cards {
    padding-top: 0;
    padding-bottom: 0;
  }
  .page-cpted .part-cpted-package.is-no-cards > .container {
    padding-left: 0;
    padding-right: 0;
  }
  .page-cpted .part-cpted-package.is-no-cards .part-cpted-highlight {
    min-height: 0;
  }
  .page-cpted .part-cpted-highlight {
    padding: 5rem 2.5rem;
  }
  .page-cpted .part-cpted-section.part-cpted-band.is-primary .mt-12.bg-cover.bg-center.bg-no-repeat {
    margin-top: 2rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
.page-cpted .part-cpted-highlight::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--stone-overlay-strong);
}
@media (min-width: 1280px) {
  .page-cpted .part-cpted-highlight.is-center h3 {
    font-size: 32px;
  }
}
.page-cpted .part-cpted-card-btn {
  width: 100%;
  min-width: 0;
}
.page-cpted .part-cpted-package-card {
  background: var(--stone-glass-card-bg);
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-glass-card-shadow);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-package-card:hover,
.page-cpted .part-cpted-package-card:focus-within {
  background: color-mix(in srgb, var(--stone-glass-card-bg), #ffffff 8%);
  border-color: color-mix(in srgb, var(--stone-glass-card-border), #ffffff 32%);
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-package-title {
  color: var(--stone-home-contact-details-text);
}
.page-cpted .part-cpted-package-icon {
  background: color-mix(in srgb, var(--stone-bg-elevated), transparent 18%);
  color: var(--stone-home-contact-details-text);
  border: 1px solid color-mix(in srgb, var(--stone-glass-card-border), transparent 20%);
}
.page-cpted .part-cpted-package-card .list-check li::before {
  color: var(--stone-link);
}
.page-cpted .part-cpted-blog-card {
  color: var(--stone-text-muted);
}
.page-cpted .part-cpted-blog-card .part-media {
  margin-bottom: 1rem;
}
.page-cpted .part-cpted-blog-card .part-title {
  text-transform: none;
  line-height: 1.4;
  font-weight: 600;
}
.page-cpted .part-cpted-blog-card .part-link .part-link-icon {
  display: inline-block;
  position: relative;
  top: 0.125rem;
  margin-left: 0.25rem;
  font-weight: 700;
  transform: scale(1.05);
}
.page-cpted a#cta {
  position: relative;
  z-index: 0;
  display: inline-block;
  min-width: 10.5rem;
  padding: 1rem 2rem;
  border: 1px solid transparent;
  background: var(--stone-btn-shape-bg);
  color: var(--stone-home-contact-form-text);
  text-align: center;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  isolation: isolate;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.page-cpted a#cta::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3px;
  width: 100%;
  background: var(--stone-btn-shape-overlay);
  clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%);
  transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
}
.page-cpted a#cta:hover::before,
.page-cpted a#cta:focus-visible::before {
  bottom: 100%;
}
.page-cpted a#cta:hover,
.page-cpted a#cta:focus-visible {
  border-color: transparent;
  background: var(--stone-btn-shape-hover);
  color: var(--stone-home-contact-form-text);
  text-decoration: none;
}
.page-cpted .part-cpted-quote-head {
  color: var(--stone-text-muted);
}
.page-cpted .part-cpted-band.is-primary {
  background: transparent;
}

.page-damage-claims .slide-animation-block {
  background: transparent;
}
.page-damage-claims .video-text {
  background: transparent;
  background-color: transparent;
  background-image: none;
}
.page-damage-claims .video-text .heading,
.page-damage-claims .video-text .section-heading {
  color: var(--stone-text);
}
.page-damage-claims .case-studies .heading,
.page-damage-claims .case-studies .section-heading {
  color: var(--stone-text);
}
.page-damage-claims .case-studies .case-studies--inner {
  margin-bottom: 1rem;
}
.page-damage-claims .case-studies .case-studies--description .subheading {
  color: inherit;
  font-size: inherit;
}
.page-damage-claims .case-studies .case-studies--description .subheading a {
  color: inherit;
  font-size: inherit;
  text-decoration: none;
}
.page-damage-claims .case-studies .part-copy {
  max-width: 650px;
  min-width: 40vw;
}
@media (max-width: 767.98px) {
  .page-damage-claims .case-studies .part-copy {
    padding: 1rem;
  }
}
.page-damage-claims .case-studies .part-copy h3.subheading {
  font-size: 1.8rem;
  font-weight: bold;
}
.page-damage-claims .case-studies .part-copy h3.subheading a {
  text-decoration: none;
}
.page-damage-claims .m-our-story,
.page-damage-claims .m-video-text,
.page-damage-claims .m-content-banner,
.page-damage-claims .m-case-studies,
.page-damage-claims .m-damage-types {
  position: relative;
}
.page-damage-claims .m-our-story.is-dc-spacing,
.page-damage-claims .m-video-text.is-dc-spacing,
.page-damage-claims .m-content-banner.is-dc-spacing,
.page-damage-claims .m-case-studies.is-dc-spacing,
.page-damage-claims .m-damage-types.is-dc-spacing {
  padding-top: clamp(2rem, 4vw, 4rem);
  padding-bottom: clamp(2rem, 4vw, 4rem);
}
.page-damage-claims .part-header .heading,
.page-damage-claims .part-header .subheading {
  text-wrap: balance;
}
.page-damage-claims .m-content-banner .part-content,
.page-damage-claims .m-case-studies .part-content {
  background: var(--stone-glass-card-bg);
  box-shadow: var(--stone-glass-card-shadow);
}
.page-damage-claims .m-case-studies .case-studies--content[style*=background-image] {
  position: relative;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.page-damage-claims .m-case-studies .case-studies--content[style*=background-image]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--stone-overlay-strong);
  pointer-events: none;
}
.page-damage-claims .m-case-studies .case-studies--content[style*=background-image] > .container {
  position: relative;
  z-index: 1;
}
.page-damage-claims .m-video-text .part-inner {
  row-gap: 1.5rem;
}
.page-damage-claims .m-video-text .part-copy {
  max-width: 44rem;
}
.page-damage-claims .m-our-story:not(.blog-widget) {
  background: var(--background-gradient);
}
.page-damage-claims .m-our-story .part-content {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--stone-text);
}
.page-damage-claims .m-our-story .part-header .heading,
.page-damage-claims .m-our-story .part-header .subheading {
  color: var(--stone-text);
}
.page-damage-claims .m-our-story .part-grid {
  row-gap: 1.5rem;
}
.page-damage-claims .m-our-story .part-copy {
  color: var(--stone-text);
}
.page-damage-claims .m-our-story .part-copy h3,
.page-damage-claims .m-our-story .part-copy p,
.page-damage-claims .m-our-story .part-copy li {
  color: var(--stone-text);
}
.page-damage-claims .m-our-story .part-copy a {
  color: var(--stone-link);
}
.page-damage-claims .m-our-story .part-copy a:hover, .page-damage-claims .m-our-story .part-copy a:focus-visible {
  color: var(--stone-link-hover);
}
.page-damage-claims .m-our-story .part-media {
  overflow: hidden;
  border: 1px solid var(--stone-glass-card-border);
  box-shadow: var(--stone-shadow);
}
.page-damage-claims .m-damage-types .part-categories picture {
  margin: 0;
}
.page-damage-claims .m-damage-types .part-categories .slick-arrow.slick-prev::before {
  content: "\\e907";
}
@media not all and (min-width: 992px) {
  .page-damage-claims .m-damage-types .part-categories .slick-arrow.slick-next {
    left: auto;
  }
}
.page-damage-claims .m-damage-types .part-item-bg picture {
  margin-bottom: 0;
}
.page-damage-claims .m-damage-types .part-item {
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.page-damage-claims .m-damage-types .part-item-name {
  color: #ffffff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}
@media (max-width: 767px) {
  .page-damage-claims .insurance-claims-content__item {
    width: auto;
  }
}
.page-damage-claims .swiper-slide,
.page-damage-claims .slick-slide {
  height: inherit;
}
.page-damage-claims .slick-list {
  height: inherit !important;
}
.page-damage-claims .part-cta-wrap .part-cta {
  text-decoration: none;
}
.page-damage-claims .case-studies-cta-wrap {
  margin-bottom: 1rem;
}
@media (max-width: 991.98px) {
  .page-damage-claims .m-content-banner .part-content,
  .page-damage-claims .m-case-studies .part-content {
    margin-right: 1rem;
    margin-left: 1rem;
  }
}
.page-damage-claims .m-our-story:not(.blog-widget) {
  background: transparent;
}

/*
 * Buildings We Serve precision scope.
 *
 * Use this file for launch-safe, page-scoped fixes.
 * Keep selectors local to avoid cross-page regressions.
 *
 * Button direction:
 * - Reuse the shape-based arrow treatment (clipped gradient via ::after),
 *   matching Insights/legacy style behavior.
 * - Avoid glyph-only fallback for this slider unless explicitly required.
 */
.page-buildings-we-serve .faq-widget {
  padding-bottom: clamp(3rem, 5vw, 5rem);
}
.page-buildings-we-serve .faq-widget .section-heading {
  text-align: center;
}
.page-buildings-we-serve .faq-widget .section-heading .heading {
  color: var(--stone-text);
}
.page-buildings-we-serve .faq-widget .section-heading::after {
  display: block;
  position: static;
  margin: 1rem auto;
  background-color: var(--stone-brand-highlight);
}
.page-buildings-we-serve .faq-widget .faq-content {
  display: block;
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3 {
  position: relative;
  margin: 0 0 0.75rem;
  padding: 1.5rem 3.75rem;
  border: 1px solid var(--stone-surface-border);
  background: transparent;
  color: var(--stone-text);
  font-size: clamp(1.1rem, 1.8vw, 2rem);
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.25rem;
  display: inline-flex;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  transform: translateY(-50%);
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.25rem;
  width: 1.5rem;
  height: 1.5rem;
  transform: translateY(-50%);
  background: linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep)) center/0.72rem 0.12rem no-repeat, linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep)) center/0.12rem 0.72rem no-repeat;
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3.ui-state-active {
  border-color: var(--stone-brand-surface);
  background: var(--stone-brand-surface);
  border-bottom: 0;
  margin-bottom: 0;
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3.ui-state-active::before {
  content: "";
}
.page-buildings-we-serve .faq-widget .faq-content.accordion > h3.ui-state-active::after {
  background: linear-gradient(var(--stone-brand-deep), var(--stone-brand-deep)) center/0.72rem 0.12rem no-repeat;
}
.page-buildings-we-serve .faq-widget .faq-content__description {
  margin-top: 0;
  margin-bottom: 0.75rem;
  padding: 0 3rem 1.5rem;
  border: 1px solid var(--stone-brand-surface);
  border-top: 0;
  background: var(--stone-brand-surface);
  color: var(--stone-text);
  text-align: center;
}
.page-buildings-we-serve .faq-widget .faq-content__description .text-holder {
  margin: 0;
  padding: 0;
  border-left: 0;
  text-align: center;
}
.page-buildings-we-serve .faq-widget .faq-content__description .text-holder__inner,
.page-buildings-we-serve .faq-widget .faq-content__description .text-holder__inner p {
  text-align: center;
}
.page-buildings-we-serve .faq-widget .faq-content__description .js-view-more,
.page-buildings-we-serve .faq-widget .faq-content__description .js-view-less {
  color: var(--stone-text);
  justify-content: center;
}
.page-buildings-we-serve .faq-widget .faq-content__description .plus {
  background: var(--stone-content-white-wrap-bg);
  color: var(--stone-brand-deep);
}
@media (min-width: 1024px) {
  .page-buildings-we-serve .faq-widget {
    padding-bottom: 7rem;
  }
}
.page-buildings-we-serve .site-footer {
  margin-top: 1.5rem;
}
@media (min-width: 1024px) {
  .page-buildings-we-serve .site-footer .part-top {
    margin-bottom: -3.5rem;
  }
  .page-buildings-we-serve .site-footer .part-brand {
    padding-top: 6rem;
  }
}
.page-buildings-we-serve {
  /* Buildings We Serve hero claims slider color cleanup. */
}
.page-buildings-we-serve .insurance-claims .section-heading .heading,
.page-buildings-we-serve .insurance-claims .section-heading .subheading {
  color: var(--stone-text);
}
.page-buildings-we-serve .insurance-claims .insurance-claims-content {
  background: linear-gradient(to left, #0f2a4e 0%, #3a4c65 40%, #3a4c65 71%, transparent 71%);
}
.page-buildings-we-serve .insurance-claims .insurance-claims-content__menu {
  background-color: transparent;
}
.page-buildings-we-serve .insurance-claims .insurance-claims-content__menu .swiper-wrapper {
  padding: 1rem;
  background: rgb(20, 50, 82);
}
.page-buildings-we-serve .insurance-claims .insurance-claims-content__menu .swiper-wrapper p {
  margin-bottom: 0;
}
.page-buildings-we-serve .insurance-claims .insurance-claims-content__menu .swiper-slide p {
  color: var(--stone-text);
}
.page-buildings-we-serve .insurance-claims a,
.page-buildings-we-serve .insurance-claims a:link,
.page-buildings-we-serve .insurance-claims a:visited,
.page-buildings-we-serve .insurance-claims .btn-primary,
.page-buildings-we-serve .insurance-claims .btn-primary:link,
.page-buildings-we-serve .insurance-claims .btn-primary:visited {
  text-decoration: none;
}
.page-buildings-we-serve .damages-services-widget .section-heading .heading,
.page-buildings-we-serve .damages-services-widget .section-heading .subheading {
  color: var(--stone-text);
}
.page-buildings-we-serve .damages-services-widget .damages-services-categories .slick-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.page-buildings-we-serve .damages-services-widget .damages-services-categories .slick-arrow::before {
  content: "";
  display: block;
  width: 0.875rem;
  height: 0.875rem;
  margin: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3 8h9' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M9 4l4 4-4 4' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: none;
}
.page-buildings-we-serve .damages-services-widget .damages-services-categories .slick-arrow.slick-prev::before {
  transform: scaleX(-1);
}
.page-buildings-we-serve .damages-services-widget .damages-services-content::before {
  background-image: linear-gradient(to right, rgb(0, 0, 0), rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
}
.page-buildings-we-serve .damages-services-widget .damages-services-content::after {
  background-image: linear-gradient(to left, rgb(0, 0, 0), rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
}
.page-buildings-we-serve .services-type-a {
  background-color: transparent;
}
.page-buildings-we-serve .services-type-a .widget-content,
.page-buildings-we-serve .services-type-a .services-type-a-wrap {
  background-color: transparent;
}
.page-buildings-we-serve .services-type-a .section-heading .heading,
.page-buildings-we-serve .services-type-a .section-heading .subheading {
  color: #fff;
}
.page-buildings-we-serve .slide-animation-block .container figure img {
  display: inline;
}
.page-buildings-we-serve .ui-accordion-content .text-holder .invisible {
  visibility: visible;
}
.page-buildings-we-serve .ui-state-default a,
.page-buildings-we-serve .ui-state-default a:link,
.page-buildings-we-serve .ui-state-default a:visited,
.page-buildings-we-serve a.ui-button,
.page-buildings-we-serve a:link.ui-button,
.page-buildings-we-serve a:visited.ui-button,
.page-buildings-we-serve .ui-button {
  color: var(--stone-text);
}
.page-buildings-we-serve .ui-state-default,
.page-buildings-we-serve .ui-widget-content .ui-state-default,
.page-buildings-we-serve .ui-widget-header .ui-state-default,
.page-buildings-we-serve .ui-button,
.page-buildings-we-serve html .ui-button.ui-state-disabled:hover,
.page-buildings-we-serve html .ui-button.ui-state-disabled:active {
  background: transparent;
  border: 0;
}
.page-buildings-we-serve .ui-icon,
.page-buildings-we-serve .ui-widget-content .ui-icon {
  display: none;
}
.page-buildings-we-serve .case-studies-wrap .case-img-overlay h1,
.page-buildings-we-serve .case-studies-wrap .case-img-overlay h2,
.page-buildings-we-serve .case-studies-wrap .case-img-overlay h3,
.page-buildings-we-serve .case-studies-wrap .case-img-overlay h4,
.page-buildings-we-serve .case-studies-wrap .case-img-overlay h5,
.page-buildings-we-serve .advances-data-showcase h1,
.page-buildings-we-serve .advances-data-showcase h2,
.page-buildings-we-serve .advances-data-showcase h3,
.page-buildings-we-serve .advances-data-showcase h4,
.page-buildings-we-serve .advances-data-showcase h5,
.page-buildings-we-serve .advances-data-showcase h2 {
  color: var(--stone-text);
}
.page-buildings-we-serve section.default-block {
  margin-top: 115px;
  padding-top: 0;
  padding-bottom: 0;
}
.page-buildings-we-serve section.banner-hero .banner-hero--inner {
  padding-top: 20px;
}
@media (max-width: 1023.98px) {
  .page-buildings-we-serve .banner-hero {
    height: inherit;
  }
}
@media (max-width: 767.98px) {
  .page-buildings-we-serve .banner-hero--inner {
    padding: 40px 20px;
  }
  .page-buildings-we-serve .ui-accordion .ui-accordion-content {
    padding: 0.5em;
  }
}

/*
 * Precision Success Stories overrides.
 *
 * Keep launch-window tweaks scoped here and avoid broad/global selectors.
 */
body.page-success-stories .single-case-study-top-info-content .single-case-study-top-info-content__description .text-holder,
.case-studies-page .single-case-study-top-info-content .single-case-study-top-info-content__description .text-holder,
.single-case_studies .single-case-study-top-info-content .single-case-study-top-info-content__description .text-holder {
  color: var(--stone-text);
}
body.page-success-stories,
.case-studies-page,
.single-case_studies {
  /* Intentionally empty scaffold for targeted success-stories edits. */
}
body.page-success-stories .section-heading.container,
body.page-success-stories .heading,
.case-studies-page .section-heading.container,
.case-studies-page .heading,
.single-case_studies .section-heading.container,
.single-case_studies .heading {
  color: var(--stone-text);
}
body.page-success-stories .services-type-a, body.page-success-stories .forms.light,
.case-studies-page .services-type-a,
.case-studies-page .forms.light,
.single-case_studies .services-type-a,
.single-case_studies .forms.light {
  background-color: transparent;
  color: var(--stone-text);
}
body.page-success-stories .video-text,
.case-studies-page .video-text,
.single-case_studies .video-text {
  background-color: var(--stone-glass-card-bg);
}
body.page-success-stories .section-heading,
.case-studies-page .section-heading,
.single-case_studies .section-heading {
  color: white;
}
body.page-success-stories .slide-animation-block,
.case-studies-page .slide-animation-block,
.single-case_studies .slide-animation-block {
  background: transparent;
}
body.page-success-stories,
.case-studies-page,
.single-case_studies {
  /* Keep layout order intact; align image to the right inside picture wrapper. */
}
body.page-success-stories .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture,
.case-studies-page .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture,
.single-case_studies .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
body.page-success-stories .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture img,
.case-studies-page .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture img,
.single-case_studies .single-case-study-top-info-content .single-case-study-top-info-content__description .image-holder picture img {
  margin-left: auto;
}

.page-template-tpl-government .part-gov-logos-container picture,
.page-template-template-pages-tpl-government-php .part-gov-logos-container picture {
  margin-bottom: 0;
}
.page-template-tpl-government .part-gov-logos-section,
.page-template-template-pages-tpl-government-php .part-gov-logos-section {
  position: relative;
  display: block;
  padding-top: 2rem;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-logos-section,
  .page-template-template-pages-tpl-government-php .part-gov-logos-section {
    padding-top: 3rem;
  }
}
@media (min-width: 768px) {
  .page-template-tpl-government .part-gov-logos-section,
  .page-template-template-pages-tpl-government-php .part-gov-logos-section {
    padding-top: 0;
    margin-top: -3rem;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-logos-section,
  .page-template-template-pages-tpl-government-php .part-gov-logos-section {
    margin-top: -5rem;
  }
}
.page-template-tpl-government .part-gov-logos-container,
.page-template-template-pages-tpl-government-php .part-gov-logos-container {
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-logos-container,
  .page-template-template-pages-tpl-government-php .part-gov-logos-container {
    max-width: 1000px;
  }
}
.page-template-tpl-government .part-gov-logos-grid,
.page-template-template-pages-tpl-government-php .part-gov-logos-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-right: -1rem;
  margin-left: -1rem;
  row-gap: 1rem;
}
.page-template-tpl-government .part-gov-logo-item,
.page-template-template-pages-tpl-government-php .part-gov-logo-item {
  width: 50%;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-logo-item,
  .page-template-template-pages-tpl-government-php .part-gov-logo-item {
    width: 33.3333%;
  }
  .page-template-tpl-government .part-gov-logos-grid,
  .page-template-template-pages-tpl-government-php .part-gov-logos-grid {
    row-gap: 0;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-logos-grid,
  .page-template-template-pages-tpl-government-php .part-gov-logos-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
  .page-template-tpl-government .part-gov-logo-item,
  .page-template-template-pages-tpl-government-php .part-gov-logo-item {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.page-template-tpl-government .part-gov-logo-frame,
.page-template-template-pages-tpl-government-php .part-gov-logo-frame {
  height: 100%;
  padding: var(--stone-content-white-wrap-frame-size);
  background: var(--stone-content-white-wrap-frame-bg);
}
.page-template-tpl-government .part-gov-logo-surface,
.page-template-template-pages-tpl-government-php .part-gov-logo-surface {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 9.5rem;
  padding: 0.875rem 1rem;
  background: var(--stone-content-white-wrap-bg);
}
.page-template-tpl-government .part-gov-logo-image,
.page-template-template-pages-tpl-government-php .part-gov-logo-image {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 7.5rem;
  object-fit: contain;
}
.page-template-tpl-government .part-gov-services-section,
.page-template-template-pages-tpl-government-php .part-gov-services-section {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-services-section,
  .page-template-template-pages-tpl-government-php .part-gov-services-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-services-section,
  .page-template-template-pages-tpl-government-php .part-gov-services-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-services-section,
  .page-template-template-pages-tpl-government-php .part-gov-services-section {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-services-section,
  .page-template-template-pages-tpl-government-php .part-gov-services-section {
    padding-bottom: 8rem;
  }
}
.page-template-tpl-government .part-gov-services-header,
.page-template-template-pages-tpl-government-php .part-gov-services-header {
  margin-bottom: 1rem;
  text-align: center;
}
.page-template-tpl-government .part-gov-services-header small,
.page-template-template-pages-tpl-government-php .part-gov-services-header small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-services-header,
  .page-template-template-pages-tpl-government-php .part-gov-services-header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-services-header,
  .page-template-template-pages-tpl-government-php .part-gov-services-header {
    margin-bottom: 3.5rem;
  }
}
.page-template-tpl-government .part-gov-services-slider,
.page-template-template-pages-tpl-government-php .part-gov-services-slider {
  margin-bottom: 2rem;
}
.page-template-tpl-government .part-gov-services-slider .slick-list,
.page-template-template-pages-tpl-government-php .part-gov-services-slider .slick-list {
  margin-right: -1rem;
  margin-left: -1rem;
}
.page-template-tpl-government .part-gov-services-slider .slick-arrow,
.page-template-template-pages-tpl-government-php .part-gov-services-slider .slick-arrow {
  display: none !important;
}
.page-template-tpl-government .part-gov-services-slider .slick-dots li:only-child,
.page-template-template-pages-tpl-government-php .part-gov-services-slider .slick-dots li:only-child {
  display: none !important;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-services-slider,
  .page-template-template-pages-tpl-government-php .part-gov-services-slider {
    margin-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-services-slider,
  .page-template-template-pages-tpl-government-php .part-gov-services-slider {
    margin-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-services-slider,
  .page-template-template-pages-tpl-government-php .part-gov-services-slider {
    margin-bottom: 6rem;
  }
  .page-template-tpl-government .part-gov-services-slider .slick-list,
  .page-template-template-pages-tpl-government-php .part-gov-services-slider .slick-list {
    margin-right: -1.5rem;
    margin-left: -1.5rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-services-slider .slick-list,
  .page-template-template-pages-tpl-government-php .part-gov-services-slider .slick-list {
    margin-right: -3rem;
    margin-left: -3rem;
  }
}
.page-template-tpl-government .part-gov-services-slide,
.page-template-template-pages-tpl-government-php .part-gov-services-slide {
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-services-slide,
  .page-template-template-pages-tpl-government-php .part-gov-services-slide {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-services-slide,
  .page-template-template-pages-tpl-government-php .part-gov-services-slide {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
.page-template-tpl-government .part-gov-service-card,
.page-template-template-pages-tpl-government-php .part-gov-service-card {
  position: relative;
  text-align: center;
}
.page-template-tpl-government .part-gov-service-card:hover .part-gov-service-icon-wrap,
.page-template-template-pages-tpl-government-php .part-gov-service-card:hover .part-gov-service-icon-wrap {
  padding: 2px;
}
.page-template-tpl-government .part-gov-service-title,
.page-template-template-pages-tpl-government-php .part-gov-service-title {
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-service-title,
  .page-template-template-pages-tpl-government-php .part-gov-service-title {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-service-title,
  .page-template-template-pages-tpl-government-php .part-gov-service-title {
    font-size: 1.125rem;
  }
}
.page-template-tpl-government .part-gov-service-icon-wrap,
.page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap {
  position: relative;
  z-index: 1;
  display: inline-block;
  width: 5rem;
  height: 5rem;
  margin-bottom: 1rem;
  margin-right: auto;
  margin-left: auto;
  padding: 0.375rem;
  font-size: 2rem;
  transition: all 0.25s ease;
}
.page-template-tpl-government .part-gov-service-icon-wrap::before, .page-template-tpl-government .part-gov-service-icon-wrap::after,
.page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::before,
.page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 2.75rem;
  height: 2.75rem;
  background: var(--stone-link);
}
.page-template-tpl-government .part-gov-service-icon-wrap::before,
.page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::before {
  top: 0;
  left: 0;
}
.page-template-tpl-government .part-gov-service-icon-wrap::after,
.page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::after {
  right: 0;
  bottom: 0;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-service-icon-wrap,
  .page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-service-icon-wrap,
  .page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap {
    width: 95px;
    height: 95px;
    margin-bottom: 2rem;
    padding: 0.5rem;
    font-size: 2.625rem;
  }
  .page-template-tpl-government .part-gov-service-icon-wrap::before, .page-template-tpl-government .part-gov-service-icon-wrap::after,
  .page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::before,
  .page-template-template-pages-tpl-government-php .part-gov-service-icon-wrap::after {
    width: 52px;
    height: 52px;
  }
}
.page-template-tpl-government .part-gov-service-icon,
.page-template-template-pages-tpl-government-php .part-gov-service-icon {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  color: var(--stone-link);
  box-shadow: 0 3px 27px rgba(0, 0, 0, 0.09);
  transition: all 0.25s ease;
}
.page-template-tpl-government .part-gov-service-detail,
.page-template-template-pages-tpl-government-php .part-gov-service-detail {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-right: -1rem;
  margin-bottom: 0.625rem;
  margin-left: -1rem;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-service-detail,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail {
    margin-bottom: 4rem;
  }
  .page-template-tpl-government .part-gov-service-detail--reverse,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail--reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-service-detail,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail {
    margin-bottom: 6rem;
  }
}
.page-template-tpl-government .part-gov-service-detail__media-col,
.page-template-tpl-government .part-gov-service-detail__content,
.page-template-template-pages-tpl-government-php .part-gov-service-detail__media-col,
.page-template-template-pages-tpl-government-php .part-gov-service-detail__content {
  flex: 0 0 100%;
  max-width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-service-detail__media-col,
  .page-template-tpl-government .part-gov-service-detail__content,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__media-col,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__content {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
.page-template-tpl-government .part-gov-service-detail__media,
.page-template-template-pages-tpl-government-php .part-gov-service-detail__media {
  margin-bottom: 0;
}
.page-template-tpl-government .part-gov-service-detail__media img,
.page-template-template-pages-tpl-government-php .part-gov-service-detail__media img {
  width: 100%;
}
.page-template-tpl-government .part-gov-service-detail__copy h2,
.page-template-template-pages-tpl-government-php .part-gov-service-detail__copy h2 {
  margin-bottom: 1.25rem;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-service-detail__copy,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__copy {
    font-size: 1.25rem;
    line-height: 1.8;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-service-detail__content--default,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__content--default {
    padding-left: 1rem;
  }
  .page-template-tpl-government .part-gov-service-detail__content--reverse,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__content--reverse {
    padding-right: 1rem;
  }
}
@media (min-width: 1536px) {
  .page-template-tpl-government .part-gov-service-detail__content--default,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__content--default {
    padding-left: 6rem;
  }
  .page-template-tpl-government .part-gov-service-detail__content--reverse,
  .page-template-template-pages-tpl-government-php .part-gov-service-detail__content--reverse {
    padding-right: 6rem;
  }
}
.page-template-tpl-government .part-gov-projects-section,
.page-template-template-pages-tpl-government-php .part-gov-projects-section {
  position: relative;
  z-index: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.page-template-tpl-government .part-gov-projects-section::before,
.page-template-template-pages-tpl-government-php .part-gov-projects-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: transparent;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-projects-section,
  .page-template-template-pages-tpl-government-php .part-gov-projects-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-projects-section,
  .page-template-template-pages-tpl-government-php .part-gov-projects-section {
    padding-top: 4rem;
    padding-bottom: 0;
    margin-bottom: 5rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-projects-section,
  .page-template-template-pages-tpl-government-php .part-gov-projects-section {
    padding-top: 6rem;
    margin-bottom: 6rem;
  }
}
.page-template-tpl-government .part-gov-projects-header,
.page-template-template-pages-tpl-government-php .part-gov-projects-header {
  margin-bottom: 1rem;
}
.page-template-tpl-government .part-gov-projects-header h2,
.page-template-template-pages-tpl-government-php .part-gov-projects-header h2 {
  color: #ffffff;
}
.page-template-tpl-government .part-gov-projects-header small,
.page-template-template-pages-tpl-government-php .part-gov-projects-header small {
  display: block;
  color: #89c5e7;
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-projects-header,
  .page-template-template-pages-tpl-government-php .part-gov-projects-header {
    margin-bottom: 1.5rem;
  }
}
.page-template-tpl-government .part-gov-projects-intro,
.page-template-tpl-government .part-gov-projects-text,
.page-template-template-pages-tpl-government-php .part-gov-projects-intro,
.page-template-template-pages-tpl-government-php .part-gov-projects-text {
  color: rgba(255, 255, 255, 0.8);
}
.page-template-tpl-government .part-gov-projects-top-row,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-row {
  margin-bottom: 1.5rem;
}
.page-template-tpl-government .part-gov-projects-top-content-col,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-content-col {
  width: 100%;
}
.page-template-tpl-government .part-gov-projects-top-content-col::after,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-content-col::after {
  content: "";
  display: table;
  clear: both;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-projects-top-row,
  .page-template-template-pages-tpl-government-php .part-gov-projects-top-row {
    margin-bottom: 2.25rem;
  }
}
.page-template-tpl-government .part-gov-projects-top-media-frame,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-media-frame {
  display: block;
  margin-bottom: 0;
  padding: 1rem;
  background: #ffffff;
}
.page-template-tpl-government .part-gov-projects-top-media-frame img,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-media-frame img {
  display: block;
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  object-position: left center;
}
.page-template-tpl-government .part-gov-projects-top-media-float,
.page-template-template-pages-tpl-government-php .part-gov-projects-top-media-float {
  float: left;
  width: min(43%, 520px);
  margin-right: 1.5rem;
  margin-bottom: 1rem;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-projects-top-media-float,
  .page-template-template-pages-tpl-government-php .part-gov-projects-top-media-float {
    margin-right: 2rem;
  }
}
@media (max-width: 1023.98px) {
  .page-template-tpl-government .part-gov-projects-top-media-float,
  .page-template-template-pages-tpl-government-php .part-gov-projects-top-media-float {
    float: none;
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 1rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-projects-intro,
  .page-template-tpl-government .part-gov-projects-text,
  .page-template-template-pages-tpl-government-php .part-gov-projects-intro,
  .page-template-template-pages-tpl-government-php .part-gov-projects-text {
    font-size: 1.25rem;
    line-height: 2.25rem;
  }
}
.page-template-tpl-government .part-gov-projects-row,
.page-template-template-pages-tpl-government-php .part-gov-projects-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}
.page-template-tpl-government .part-gov-projects-text-col,
.page-template-tpl-government .part-gov-projects-media-col,
.page-template-template-pages-tpl-government-php .part-gov-projects-text-col,
.page-template-template-pages-tpl-government-php .part-gov-projects-media-col {
  flex: 0 0 100%;
  max-width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-projects-text-col,
  .page-template-template-pages-tpl-government-php .part-gov-projects-text-col {
    flex: 0 0 60%;
    max-width: 60%;
  }
  .page-template-tpl-government .part-gov-projects-media-col,
  .page-template-template-pages-tpl-government-php .part-gov-projects-media-col {
    flex: 0 0 40%;
    max-width: 40%;
    align-self: flex-end;
    margin-bottom: -5rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-projects-media-col,
  .page-template-template-pages-tpl-government-php .part-gov-projects-media-col {
    margin-bottom: -6rem;
  }
}
.page-template-tpl-government .part-gov-projects-media-frame,
.page-template-template-pages-tpl-government-php .part-gov-projects-media-frame {
  margin-bottom: 0;
  padding: 1.25rem 18px;
  background: #ffffff;
}
.page-template-tpl-government .part-gov-projects-media-frame img,
.page-template-template-pages-tpl-government-php .part-gov-projects-media-frame img {
  width: 100%;
}
.page-template-tpl-government .part-gov-featured-section,
.page-template-template-pages-tpl-government-php .part-gov-featured-section {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 640px) {
  .page-template-tpl-government .part-gov-featured-section,
  .page-template-template-pages-tpl-government-php .part-gov-featured-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-featured-section,
  .page-template-template-pages-tpl-government-php .part-gov-featured-section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-featured-section,
  .page-template-template-pages-tpl-government-php .part-gov-featured-section {
    padding-top: 5rem;
    padding-bottom: 6rem;
  }
}
.page-template-tpl-government .part-gov-featured-header,
.page-template-template-pages-tpl-government-php .part-gov-featured-header {
  margin-bottom: 1rem;
  text-align: center;
}
.page-template-tpl-government .part-gov-featured-header small,
.page-template-template-pages-tpl-government-php .part-gov-featured-header small {
  display: block;
  color: var(--stone-link);
  font-size: 1.375rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-featured-header,
  .page-template-template-pages-tpl-government-php .part-gov-featured-header {
    margin-bottom: 2rem;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-featured-header,
  .page-template-template-pages-tpl-government-php .part-gov-featured-header {
    margin-bottom: 3rem;
  }
}
.page-template-tpl-government .part-gov-featured-grid,
.page-template-template-pages-tpl-government-php .part-gov-featured-grid {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-featured-grid,
  .page-template-template-pages-tpl-government-php .part-gov-featured-grid {
    margin-right: -1.25rem;
    margin-left: -1.25rem;
  }
}
.page-template-tpl-government .part-gov-featured-col,
.page-template-template-pages-tpl-government-php .part-gov-featured-col {
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 1rem;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 768px) {
  .page-template-tpl-government .part-gov-featured-col,
  .page-template-template-pages-tpl-government-php .part-gov-featured-col {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-featured-col,
  .page-template-template-pages-tpl-government-php .part-gov-featured-col {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}
.page-template-tpl-government .part-gov-featured-card,
.page-template-template-pages-tpl-government-php .part-gov-featured-card {
  position: relative;
  height: 100%;
  padding: 0.625rem;
  border: 1px solid rgba(55, 98, 161, 0.4);
}
.page-template-tpl-government .part-gov-featured-media,
.page-template-template-pages-tpl-government-php .part-gov-featured-media {
  margin-bottom: 1rem;
}
.page-template-tpl-government .part-gov-featured-media img,
.page-template-template-pages-tpl-government-php .part-gov-featured-media img {
  width: 100%;
}
@media (min-width: 1280px) {
  .page-template-tpl-government .part-gov-featured-media,
  .page-template-template-pages-tpl-government-php .part-gov-featured-media {
    margin-bottom: 1.5rem;
  }
}
.page-template-tpl-government .part-gov-featured-copy,
.page-template-template-pages-tpl-government-php .part-gov-featured-copy {
  padding-right: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.625rem;
  font-weight: 700;
}
.page-template-tpl-government .part-gov-featured-copy h4,
.page-template-template-pages-tpl-government-php .part-gov-featured-copy h4 {
  color: var(--stone-text);
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-featured-copy,
  .page-template-template-pages-tpl-government-php .part-gov-featured-copy {
    padding-right: 1.25rem;
    padding-bottom: 1.25rem;
    padding-left: 1.25rem;
  }
}
.page-template-tpl-government .part-gov-featured-link,
.page-template-template-pages-tpl-government-php .part-gov-featured-link {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  color: var(--stone-link);
  font-size: 1rem;
  font-weight: 600;
}
.page-template-tpl-government .part-gov-featured-link i,
.page-template-template-pages-tpl-government-php .part-gov-featured-link i {
  margin-left: 0.375rem;
  transition: all 0.25s ease;
}
.page-template-tpl-government .part-gov-featured-link:hover, .page-template-tpl-government .part-gov-featured-link:focus-visible,
.page-template-template-pages-tpl-government-php .part-gov-featured-link:hover,
.page-template-template-pages-tpl-government-php .part-gov-featured-link:focus-visible {
  color: var(--stone-link-hover);
  text-decoration: none;
}
.page-template-tpl-government .part-gov-featured-link:hover i, .page-template-tpl-government .part-gov-featured-link:focus-visible i,
.page-template-template-pages-tpl-government-php .part-gov-featured-link:hover i,
.page-template-template-pages-tpl-government-php .part-gov-featured-link:focus-visible i {
  padding-left: 0.25rem;
}
.page-template-tpl-government .part-gov-featured-cta-wrap,
.page-template-template-pages-tpl-government-php .part-gov-featured-cta-wrap {
  margin-top: 1rem;
  text-align: center;
}
@media (min-width: 1024px) {
  .page-template-tpl-government .part-gov-featured-cta-wrap,
  .page-template-template-pages-tpl-government-php .part-gov-featured-cta-wrap {
    margin-top: 2rem;
  }
}

.page-template-tpl-appraisals .stone-video-player a {
  text-decoration: none;
}
.page-template-tpl-appraisals .stone-fema-market-val a {
  text-decoration: none;
}
.page-template-tpl-appraisals .primary-gradient {
  background: transparent;
}

body[class*=page-template-tpl-reserve-studies] .ssModalToggle,
body[class*=page-template-tpl-reserve-studies] .ssModalToggle:hover,
body[class*=page-template-tpl-reserve-studies] .ssModalToggle:focus,
body[class*=page-template-tpl-reserve-studies] .ssModalToggle:focus-visible,
body[class*=page-template-tpl-reserve-studies] [data-fancybox],
body[class*=page-template-tpl-reserve-studies] [data-fancybox]:hover,
body[class*=page-template-tpl-reserve-studies] [data-fancybox]:focus,
body[class*=page-template-tpl-reserve-studies] [data-fancybox]:focus-visible {
  text-decoration: none;
}
body[class*=page-template-tpl-reserve-studies] .rs-must {
  margin-top: 0;
  padding-top: 4rem;
  padding-bottom: 3rem;
  background: transparent;
}
body[class*=page-template-tpl-reserve-studies] .rs-must__head {
  margin-bottom: 0.75rem;
}
@media (min-width: 1024px) {
  body[class*=page-template-tpl-reserve-studies] .rs-must__head {
    margin-bottom: 1.25rem;
  }
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy {
  line-height: 1.35;
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy > * {
  margin-top: 0;
  margin-bottom: 0;
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy > * + * {
  margin-top: 1.25rem;
}
@media (min-width: 1024px) {
  body[class*=page-template-tpl-reserve-studies] .rs-must__copy > * + * {
    margin-top: 1.5rem;
  }
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy h2,
body[class*=page-template-tpl-reserve-studies] .rs-must__copy h3 {
  line-height: 1.15;
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy h2:not(:first-child),
body[class*=page-template-tpl-reserve-studies] .rs-must__copy h3:not(:first-child) {
  margin-top: 2.75rem;
}
@media (min-width: 1024px) {
  body[class*=page-template-tpl-reserve-studies] .rs-must__copy h2:not(:first-child),
  body[class*=page-template-tpl-reserve-studies] .rs-must__copy h3:not(:first-child) {
    margin-top: 2.75rem;
  }
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy ul {
  column-gap: 2rem;
}
@media (min-width: 640px) {
  body[class*=page-template-tpl-reserve-studies] .rs-must__copy ul {
    columns: 2;
  }
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy li {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 1.5rem;
  break-inside: avoid-column;
}
body[class*=page-template-tpl-reserve-studies] .rs-must__copy li::before {
  content: "";
  position: absolute;
  top: 0.3rem;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--stone-brand-surface);
}

.page-template-tpl-reserve-studies .primary-gradient {
  background: transparent;
}

body.page-id-2487 {
  /* Florida Reserve Studies page-specific styles go here. */
}

body.starting-2026 article ul {
  list-style: disc outside;
}
body.starting-2026 article ol {
  list-style: decimal outside;
}
body.starting-2026 article ul, body.starting-2026 article ol {
  padding-left: 1.5em;
  margin-bottom: 1em;
}
body.starting-2026 article ul > li, body.starting-2026 article ul > :not([hidden]) ~ :not([hidden]), body.starting-2026 article ol > li, body.starting-2026 article ol > :not([hidden]) ~ :not([hidden]) { /* The latter bit is needed to override old Tailwind code. */
  margin-top: 0;
  margin-bottom: 0;
}

.post-more-in {
  margin-top: 3rem;
}

.u-theme-surface {
  background: var(--stone-surface) !important;
  border-color: var(--stone-surface-border) !important;
}

.u-theme-text {
  color: var(--stone-text) !important;
}
