.elementor-kit-309{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-weight:500;}.elementor-kit-309 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --ink:#090402; --accent:#f52001; --text-body:rgba(0,0,0,0.7); --bg:#ffffff; --bg-alt:#f7f7f7; --line:rgba(0,0,0,0.2); --line-dark:rgba(255,255,255,0.18); --text-on-dark-muted:rgba(255,255,255,0.6); --font-display:Outfit; --font-body:Outfit; --font-logo:Roboto Condensed; --side-pad:clamp(22px, 5.7vw, 110px); --section-pad:clamp(64px, 7vw, 109px); --max-width:1700px; }
/* Start custom CSS *//* --- Single Project: body text inside Post Content --- */
.elementor-element-5fed9357 h3{font-family:var(--font-display);font-weight:500;font-size:12px;line-height:1.75;letter-spacing:1.92px;text-transform:uppercase;color:rgba(0,0,0,.5);margin:0 0 14px}
.elementor-element-5fed9357 p{font-family:var(--font-body);font-weight:400;font-size:15.5px;line-height:1.75;color:rgba(0,0,0,.66);margin:0 0 34px}
.elementor-element-5fed9357 p:last-child{margin-bottom:0}
.elementor-element-5fed9357 a{color:var(--ink);text-decoration:underline}

/* Both project galleries must fill the content column, not shrink to content. */
.elementor-element-a8795bd,.elementor-element-a1f6f1d{width:100%!important;flex:1 1 100%!important}

/* PAIR ROW (gallery #1) = images 1-2 only, 610x540 */
.elementor-element-a8795bd .e-gallery-item:nth-child(n+3){display:none!important}
.elementor-element-a8795bd .elementor-gallery__container{--hgap:40px!important;--vgap:40px!important;--aspect-ratio:88.52%!important;--container-aspect-ratio:auto!important;height:auto!important}

/* GALLERY ROW (gallery #2) = images 3 onward, 610x458 */
.elementor-element-a1f6f1d .e-gallery-item:nth-child(-n+2){display:none!important}
.elementor-element-a1f6f1d .elementor-gallery__container{--hgap:40px!important;--vgap:40px!important;--aspect-ratio:75.08%!important;--container-aspect-ratio:auto!important;height:auto!important}

@media(max-width:767px){
.elementor-element-a8795bd .elementor-gallery__container,
.elementor-element-a1f6f1d .elementor-gallery__container{--columns:1!important;--hgap:24px!important;--vgap:24px!important}
}

/* --- Project filters --- */
.pf-filters > *{padding:0!important}
.pf-filters a{display:block!important;padding:9px 23px!important;color:inherit!important;text-decoration:none!important;line-height:1.5!important;cursor:pointer}
.pf-filters .pf-active{background-color:var(--ink)!important;border-color:var(--ink)!important;color:#ffffff!important}
.pf-filters .pf-active a{color:#ffffff!important}
.pf-grid{transition:opacity .2s ease}
.pf-grid.pf-loading{opacity:.3}

/* ====================================================================
   ABOUT PAGE - transcribed from the old site's own stylesheet.
   ==================================================================== */
.ab-hero-sec > .rc-inner{max-width:none!important;padding:0!important;display:block!important}
.ab-hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ab-val:last-child{border-bottom:1px solid rgba(0,0,0,.2)}
.ab-body .ab-para + .ab-para{margin-top:18px}
.ab-person:hover .ab-photo,.ab-person:focus-within .ab-photo{filter:grayscale(0)}

@media(max-width:1024px){
.ab-people{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:860px){
.ab-hero-grid{grid-template-columns:1fr!important;min-height:0!important}
.ab-hero-img{min-height:60vh!important}
.ab-hero-text{padding:90px clamp(22px,5.7vw,110px) 50px!important}
.ab-row2,.ab-stats-grid{grid-template-columns:1fr!important}
.ab-people{grid-template-columns:repeat(2,1fr)!important}
.ab-h2{max-width:none!important}
}

/* --- Contact --- */
.ct-val a{color:#090402;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.28);padding-bottom:2px}
.ct-val a:hover{color:#8a8a8a;border-color:#8a8a8a}
.ct-row:first-child{border-top:1px solid rgba(0,0,0,.2)}

/* ====================================================================
   INSIGHTS / STORIES / JOURNALS
   The old site's "flip" is overridden in its own stylesheet to a plain
   cross-fade: the magazine cover sits contained on grey, and the project
   photo fades in over it on hover.
   ==================================================================== */
.ins-card:hover .ins-flip-front,.ins-card:focus-within .ins-flip-front{opacity:0}
.ins-card:hover .ins-flip-back,.ins-card:focus-within .ins-flip-back{opacity:1}
.ins-card:hover .ins-ph{opacity:.9}
.ins-ph,.ins-flip{transition:opacity .4s}
.cat-crumb a{color:inherit;text-decoration:none;transition:color .25s}
.cat-crumb a:hover{color:#8a8a8a}
.ins-more:hover{color:#8a8a8a!important}
.ins-block + .ins-block{margin-top:clamp(48px,5vw,82px)}

@media(max-width:1024px){
.ins-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:640px){
.ins-grid{grid-template-columns:1fr!important}
}
/* --- About: team bio drawer typography = Outfit via the font variables --- */
.rwacc{font-family:var(--font-body)}
.rwacc .rwacc-eye,.rwacc .rwacc-name{font-family:var(--font-display) !important}
.rwacc .rwacc-role,.rwacc .rwacc-text,.rwacc .rwacc-text p,.rwacc .rwacc-meta span,.rwacc .rwacc-meta a{font-family:var(--font-body) !important}
/* --- Elementor's default 10px box padding off inside page text blocks (keeps the About hero's own gutter) --- */
.ab-body:not(.ab-hero-text){padding-inline:0 !important}
/* --- Mobile: reading columns sit inside an already-padded section, so drop their own gutter (22px total, like the old site) --- */
@media (max-width:767px){.rc-section:not(.art-hero-sec) .art-wrap,.rc-section .tm-wrap{padding-inline:0 !important}.art-layout{padding-inline:0 !important}}
/* --- Nav menu + buttons on the font variables (old site: menu = display, submenu = body, .btn = display). Was falling through to Elementor's default Roboto / the system font. --- */
.elementor-nav-menu .elementor-item{font-family:var(--font-display) !important}
.elementor-nav-menu .elementor-sub-item{font-family:var(--font-body) !important}
.e-button-base{font-family:var(--font-display)}
/* --- Defaults on the font variables for atomic text + form parts that carry no class of their own (were rendering in the system font) --- */
.e-paragraph-base,.e-form-label-base,.e-form-input-base,.e-form-textarea-base,.e-form-select-base{font-family:var(--font-body)}
/* --- Project galleries: no zoom-in as images lazy-load (Elementor starts them at scale(.5)); keep only a soft fade --- */
.e-gallery--lazyload .e-gallery-image:not(.e-gallery-image-loaded){transform:none !important}
.elementor-gallery-item__image.e-gallery-image,.e-gallery-image{transform:none !important;transition-property:filter !important}/* End custom CSS */