@import url("project-compositions.css");
@import url("architectural-headings.css");
@import url("header-persistent.css");
/* Isolated homepage header component. No page-body or gallery styles are imported. */
@font-face{font-family:"Diligent Nav";src:url("../assets/editorial/fonts/source-sans.woff2") format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:"Diligent Nav Heading";src:url("../assets/editorial/fonts/manrope.woff2") format("woff2");font-weight:200 800;font-display:swap}
/* Important declarations in this isolated layer take precedence over legacy header patches only. */
@layer diligent-header-motion,diligent-header;
@layer diligent-header {
body>.header.diligent-header,body>.header.diligent-header *,body>.header.diligent-header *::before,body>.header.diligent-header *::after{all:revert!important;box-sizing:border-box!important}
body>.header.diligent-header{--ink:#1d1d1d;--line:#dfdfdb;--paper:#f6f6f4;--gold:#d5ab64;--gutter:clamp(22px,4.6vw,86px);--header:88px;--ease:cubic-bezier(.22,1,.36,1);padding:0!important;margin:0!important;font:400 17px/1.65 "Diligent Nav",Arial,sans-serif!important;-webkit-font-smoothing:antialiased!important}
body>.header.diligent-header a{color:inherit!important;text-decoration:none!important}
body>.header.diligent-header button{font:inherit!important;color:inherit!important;cursor:pointer!important;min-height:44px!important}
body>.header.diligent-header img{max-width:100%!important;object-fit:contain!important}
body>.header.diligent-header a,body>.header.diligent-header button{-webkit-tap-highlight-color:transparent!important}
body>.header.diligent-header a:focus-visible,body>.header.diligent-header button:focus-visible{outline:3px solid #d5ab64!important;outline-offset:4px!important}
body>.header.diligent-header{position:fixed!important;inset:0 0 auto!important;z-index:100!important;height:var(--header)!important;display:flex!important;align-items:stretch!important;background:rgba(18,18,18,.62)!important;color:#fff!important;border-bottom:1px solid #ffffff38!important;transition:transform .3s var(--ease),background .25s,color .25s!important;isolation:isolate!important}
body>.header.diligent-header .brand{display:flex!important;align-items:center!important;padding:20px var(--gutter)!important;flex:0 0 clamp(215px,24vw,350px)!important;border-right:1px solid #ffffff38!important;transition:background .25s!important}
body>.header.diligent-header .brand img{display:block!important;width:184px!important;height:auto!important}
body>.header.diligent-header .nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:1!important;gap:clamp(18px,2.2vw,38px)!important;padding-right:var(--gutter)!important}
body>.header.diligent-header .nav>a,body>.header.diligent-header .services-main-link{position:relative!important;display:flex!important;align-items:center!important;min-height:44px!important;font-size:15px!important;white-space:nowrap!important}
body>.header.diligent-header .nav>a:after,body>.header.diligent-header .services-main-link:after{content:''!important;position:absolute!important;bottom:5px!important;left:0!important;right:0!important;height:1px!important;background:currentColor!important;transform:scaleX(0)!important;transform-origin:left!important;transition:transform .3s var(--ease)!important}
body>.header.diligent-header .nav>a:hover:after,body>.header.diligent-header .nav>a[aria-current=page]:after,body>.header.diligent-header .services-main-link:hover:after{transform:scaleX(1)!important}
body>.header.diligent-header .nav>a:last-child{padding:0 18px!important;border-left:1px solid #ffffff4a!important;align-self:stretch!important}
body>.header.diligent-header .nav>a:last-child:after{content:none!important}
body>.header.diligent-header .nav>a:last-child:hover{background:#ffffff12!important}
body>.header.diligent-header.solid{background:#fff!important;color:var(--ink)!important;border-color:var(--line)!important}
body>.header.diligent-header.solid .brand{background:#1b1b1b!important;border-color:#363636!important}
body>.header.diligent-header.solid .nav>a:last-child{border-color:var(--line)!important}
body>.header.diligent-header.solid .nav>a:last-child:hover{background:var(--paper)!important}
body>.header.diligent-header.nav-hidden{transform:translateY(-102%)!important}
body>.header.diligent-header a:focus-visible,body>.header.diligent-header button:focus-visible{outline-color:var(--gold)!important}
body>.header.diligent-header.solid .nav a:focus-visible,body>.header.diligent-header.solid .nav button:focus-visible{outline-color:#8c692f!important}
body>.header.diligent-header .services-dropdown{display:flex!important;align-items:center!important;gap:3px!important}
body>.header.diligent-header .services-caret{background:none!important;border:0!important;font-size:20px!important;color:inherit!important;min-width:32px!important;transition:transform .2s!important}
body>.header.diligent-header .services-caret[aria-expanded=true]{transform:rotate(180deg)!important}
body>.header.diligent-header .services-submenu{position:absolute!important;top:100%!important;left:0!important;right:0!important;max-height:calc(100dvh - var(--header))!important;overflow:auto!important;display:grid!important;grid-template-columns:clamp(215px,24vw,350px) 1fr!important;background:#fff!important;color:var(--ink)!important;border-bottom:1px solid var(--line)!important;box-shadow:0 12px 22px #0000000a!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-6px)!important;transition:opacity .25s,transform .35s var(--ease),visibility .25s!important}
body>.header.diligent-header .expanded .services-submenu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
body>.header.diligent-header .menu-intro{padding:35px 25px 35px var(--gutter)!important;background:var(--paper)!important;display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:25px!important;border-right:1px solid var(--line)!important}
body>.header.diligent-header .menu-heading{font-family:"Diligent Nav Heading",sans-serif!important;font-size:27px!important;letter-spacing:-.025em!important}
body>.header.diligent-header .services-all{font-size:14px!important;border-bottom:1px solid #999!important;padding-bottom:8px!important}
body>.header.diligent-header .menu-links{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 40px!important;padding:24px var(--gutter) 30px 40px!important}
body>.header.diligent-header .menu-links a{padding:11px 0!important;border-bottom:1px solid #e8e8e3!important;font-size:15px!important;line-height:1.6!important;transition:padding .25s,color .25s!important}
body>.header.diligent-header .menu-links a:hover{padding-left:6px!important;color:#806437!important}
body>.header.diligent-header .menu-toggle{display:none!important}
@media(max-width:1150px){body>.header.diligent-header .nav{gap:18px!important}
body>.header.diligent-header .nav>a,body>.header.diligent-header .services-main-link{font-size:14px!important}
body>.header.diligent-header .brand{flex-basis:245px!important}
body>.header.diligent-header .brand{padding-inline:35px!important}
}
@media(max-width:1000px){body>.header.diligent-header{background:rgba(18,18,18,.62)!important;justify-content:space-between!important}
body>.header.diligent-header .brand{flex:0 1 215px!important;min-width:0!important;padding:17px 28px!important}
body>.header.diligent-header .brand img{width:160px!important}
body>.header.diligent-header .menu-toggle{display:flex!important;align-items:center!important;gap:18px!important;background:none!important;border:0!important;font-size:15px!important;padding:0 28px!important;min-height:44px!important}
body>.header.diligent-header .menu-icon{width:22px!important;height:15px!important;border-block:1px solid currentColor!important;position:relative!important}
body>.header.diligent-header .menu-icon:before{content:''!important;position:absolute!important;left:0!important;right:0!important;top:6px!important;height:1px!important;background:currentColor!important}
body>.header.diligent-header .menu-toggle[aria-expanded=true] .menu-icon{border:0!important;transform:rotate(45deg)!important}
body>.header.diligent-header .menu-toggle[aria-expanded=true] .menu-icon:after{content:''!important;position:absolute!important;left:11px!important;top:-4px!important;width:1px!important;height:22px!important;background:currentColor!important}
body>.header.diligent-header .nav{position:absolute!important;top:100%!important;left:0!important;right:0!important;display:flex!important;align-items:stretch!important;flex-direction:column!important;justify-content:flex-start!important;gap:0!important;padding:20px var(--gutter) 35px!important;background:#fff!important;color:var(--ink)!important;height:calc(100dvh - var(--header))!important;overflow:auto!important;border-bottom:1px solid var(--line)!important;opacity:0!important;visibility:hidden!important;transform:translateY(-8px)!important;pointer-events:none!important;transition:opacity .23s,transform .3s var(--ease),visibility .23s!important}
body>.header.diligent-header .nav:not(.open){transition:none!important}
body>.header.diligent-header .nav.open{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
body>.header.diligent-header .nav>a,body>.header.diligent-header .services-main-link{font-family:"Diligent Nav Heading",sans-serif!important;font-size:24px!important;line-height:1.5!important;padding:15px 0!important;white-space:normal!important}
body>.header.diligent-header .nav>a{border-bottom:1px solid var(--line)!important}
body>.header.diligent-header .nav>a:after,body>.header.diligent-header .services-main-link:after{content:none!important}
body>.header.diligent-header .nav>a[aria-current=page]{color:#806437!important}
body>.header.diligent-header .nav>a:last-child{align-self:auto!important;border:1px solid #b1b1a6!important;padding:15px!important;margin-top:20px!important;text-align:center!important;justify-content:center!important;font-size:17px!important}
body>.header.diligent-header .services-dropdown{flex-wrap:wrap!important;justify-content:space-between!important;border-bottom:1px solid var(--line)!important}
body>.header.diligent-header .services-caret{color:var(--ink)!important;width:48px!important;min-height:60px!important}
body>.header.diligent-header .services-submenu{position:static!important;width:100%!important;height:0!important;max-height:none!important;overflow:hidden!important;display:block!important;border:0!important;box-shadow:none!important;transform:none!important}
body>.header.diligent-header .expanded .services-submenu{height:auto!important;padding-bottom:18px!important}
body>.header.diligent-header .menu-intro{padding:10px 0!important;background:none!important;border:0!important;display:block!important}
body>.header.diligent-header .menu-heading{display:none!important}
body>.header.diligent-header .menu-links{display:block!important;padding:0!important}
body>.header.diligent-header .menu-links a{display:block!important;font-size:16px!important;padding:12px 0!important}
body>.header.diligent-header .nav a:focus-visible,body>.header.diligent-header .nav button:focus-visible{outline-color:#8c692f!important}
}
@media(max-width:1000px){body>.header.diligent-header{--header:74px}body>.header.diligent-header:not([data-nav-ready]){position:relative!important;height:auto!important;flex-wrap:wrap!important;background:white!important;color:#1d1d1d!important}body>.header.diligent-header:not([data-nav-ready]) .nav{position:static!important;height:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;width:100%!important}body>.header.diligent-header:not([data-nav-ready]) .menu-toggle{display:none!important}}
@media(max-width:650px){body>.header.diligent-header{--gutter:22px}}
@media(prefers-reduced-motion:reduce){body>.header.diligent-header,body>.header.diligent-header *,body>.header.diligent-header *::before,body>.header.diligent-header *::after{animation:none!important;transition:none!important}body>.header.diligent-header.nav-hidden{transform:none!important}}
}
@layer diligent-header{body>.header.diligent-header:not([data-nav-ready]) .services-dropdown:is(:hover,:focus-within) .services-submenu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;height:auto!important}}
body.shared-nav-open{overflow:hidden!important}

@layer diligent-header-motion{@media(prefers-reduced-motion:reduce){body>.header.diligent-header,body>.header.diligent-header *,body>.header.diligent-header *::before,body>.header.diligent-header *::after{animation:none!important;transition:none!important}body>.header.diligent-header.nav-hidden{transform:none!important}}}
/* Reserve the fixed header band on standalone project pages so their original back link stays accessible. */
body.diligent-project-detail>.header.diligent-header+main{padding-top:88px}
@media(max-width:1000px){body.diligent-project-detail>.header.diligent-header+main{padding-top:74px}}
