html, body { overflow-x: clip; }
body { letter-spacing: 0; }
header.d3v-location-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 100; background: rgba(52, 69, 94, .8); }
header.d3v-location-header > header { background: rgba(52, 69, 94, .8) !important; margin: 0 !important; }
.d3v-section, .e-con, [id] { scroll-margin-top: 110px; }
.d3v-invisible { visibility: visible; }
.d3v-widget-nav-menu .d3v-menu-toggle { cursor: pointer; }
.d3v-widget-nav-menu .d3v-nav-menu--dropdown { position: absolute; left: 0; top: 100%; width: 100%; z-index: 120; display: none; max-height: 75vh; overflow-y: auto; }
.d3v-widget-nav-menu .d3v-nav-menu--dropdown.menu-open { display: block; transform: none; max-height: 75vh; }
.d3v-location-footer .d3v-element-4c7e73e { display: none; }
.d3v-location-footer .d3v-element-6cf0259 { display: none; }
.d3v-post__thumbnail img { width: 100%; height: 100%; object-fit: cover; }
/* Both project lists and related projects reserve thumbnail height only once. */
:is(.d3v-location-archive, .d3v-location-single) .d3v-element:is(.d3v-widget-archive-posts, .d3v-widget-posts) .d3v-posts-container .d3v-post__thumbnail { position: relative; padding-bottom: 0; aspect-ratio: 3 / 2; }
:is(.d3v-location-archive, .d3v-location-single) .d3v-posts-container .d3v-post__thumbnail img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: none; }
:is(.d3v-location-archive, .d3v-location-single) .d3v-element:is(.d3v-widget-archive-posts, .d3v-widget-posts) .d3v-posts-container .d3v-post__thumbnail__link { margin-bottom: 0; }
.d3v-location-single .project-more .d3v-post__card .d3v-post__text { margin-top: 0; }
.d3v-share-btn { cursor: pointer; }
.d3v-posts-container { align-items: stretch; }
.d3v-post { min-width: 0; }
.d3v-post__title { overflow-wrap: anywhere; }
.d3v-load-more-button { display: none; }
.contact-form { width: 100%; }
.contact-form .contact-submit { color: white; background: #16c48a; border: none; }
.contact-form .contact-submit:hover { background: #11986b; }
.d3v-location-footer .d3v-widget-form .contact-form .contact-submit { font: 600 20px/1 'Montserrat', sans-serif; padding: 15px 30px; }
.contact-form .contact-field input, .contact-form .contact-field textarea { font-family: 'Open Sans', sans-serif; font-size: 14px; }
.contact-form .contact-field label, .contact-form .contact-privacy, .contact-form .contact-status, .contact-form .contact-alternative, .contact-form .contact-privacy a, .contact-form .contact-alternative a { color: white; }
@media (max-width: 1024px) {
  .d3v-widget-nav-menu { position: static; }
  .d3v-widget-nav-menu .d3v-nav-menu--main { display: none; }
  .d3v-nav-menu--dropdown .d3v-item { padding: 14px 24px; }
  header #mobile-menu { position: fixed; left: 0; top: var(--header-height, 60px); width: 100%; max-width: none; background: #34455e; max-height: calc(100dvh - var(--header-height, 60px)); }
  header #mobile-menu ul { display: block; width: 100%; }
  header #mobile-menu li { display: block; width: 100%; }
  header #mobile-menu a { display: block; color: white; background: #34455e; white-space: normal; padding: 14px 24px; font: 600 14px/1.5 'Montserrat', sans-serif; }
  header #mobile-menu a:hover, header #mobile-menu a:focus-visible { background: #16c48a; }
}
