/* v0.5: the hero typography follows the site palette automatically. */
.trivo-site.trivo-theme-light .trivo-hero{color:#171717!important}
.trivo-site.trivo-theme-dark .trivo-hero{color:#fff!important}
.trivo-site .trivo-hero .trivo-eyebrow,
.trivo-site .trivo-hero .trivo-hero-sub,
.trivo-site .trivo-hero .trivo-hero-sub p,
.trivo-site .trivo-hero .trivo-hero-sub small,
.trivo-site .trivo-hero h1{color:inherit!important}
.trivo-site .trivo-hero-sub{border-left-color:currentColor}

/* The justified rows have zero empty grid cells and reflect the original aspect ratios. */
.trivo-site .trivo-gallery-batch.trivo-gallery-batch--justified{display:flex!important;flex-direction:column;gap:8px;grid-template-columns:none!important;grid-auto-rows:auto!important;direction:ltr!important;width:100%;min-width:0}
.trivo-site .trivo-gallery-row{display:flex;align-items:stretch;width:100%;min-width:0;overflow:hidden}
.trivo-site .trivo-gallery-batch--justified .trivo-gallery-item,
.trivo-site .trivo-gallery-batch--justified .trivo-gallery-item:nth-child(n+9),
.trivo-site .trivo-gallery-batch--justified .trivo-gallery-item:last-child:nth-child(odd){display:block;min-width:0;max-width:none;min-height:0;aspect-ratio:auto!important;grid-column:auto!important;grid-row:auto!important;width:auto!important;flex-shrink:0;overflow:hidden}
.trivo-site .trivo-gallery-batch--justified .trivo-gallery-item picture,
.trivo-site .trivo-gallery-batch--justified .trivo-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* The dialog always displays the whole original photograph before the user zooms in. */
.trivo-lightbox .trivo-lightbox-viewport{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden}
.trivo-lightbox .trivo-lightbox-viewport>img{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center center!important;flex:none}

/* Balanced, deliberate heading breaks. Keep 'ou' with its surrounding words. */
.trivo-site .trivo-footer-map h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.025em;line-height:1.13;text-wrap:balance}
.trivo-site .trivo-footer-map h2>span{display:block;white-space:nowrap}
.trivo-site .trivo-section-head h2,.trivo-site .trivo-about-content h2,.trivo-site .trivo-architects h2{text-wrap:balance}

/* Remove the grey frame and padding around the embedded map. */
.trivo-site .trivo-map-lazy{box-sizing:border-box;display:flex;width:100%;height:225px;margin:0;padding:0;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:hidden}
.trivo-site .trivo-map-lazy[data-loaded="1"]{display:block;background:transparent!important}
.trivo-site .trivo-map-lazy iframe{display:block;width:100%!important;height:100%!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;max-width:none!important;object-fit:cover}

@media(max-width:767px){
 .trivo-site .trivo-gallery-batch.trivo-gallery-batch--justified{gap:5px}
 .trivo-site .trivo-gallery-batch--justified:not(:first-child){display:none!important}
 .trivo-site .trivo-gallery.expanded .trivo-gallery-batch--justified:not(:first-child){display:flex!important}
 .trivo-site .trivo-footer-map h2{font-size:clamp(21px,5.6vw,28px);line-height:1.18}
}
