/* Organic / Studio header. Compact larger-screen proportions retain the
   original navigation text, flow artwork and attached gold rule. */
.header-band{--header-ink:var(--ink);--header-bg:var(--paper);--header-line:var(--line);--header-art:none;--header-rule-width:5px;position:relative;background:var(--header-bg);color:var(--header-ink);border-bottom:var(--header-rule-width) solid var(--hero-rule,#bd9b60);isolation:isolate;z-index:10}
.header-band:focus-within{z-index:15}
.header-band::before{content:'';position:absolute;inset:0;background-image:var(--header-art);background-size:cover;background-position:center;z-index:-1;pointer-events:none}
.header-band .site-header,.header-band .page-header{color:var(--header-ink);border-bottom-color:var(--header-line)}
.header-band .site-header nav{font-size:13px;gap:24px}
.header-band .page-header nav{font-size:12px}
.header-band nav a,.header-band .menu-toggle{text-transform:uppercase;letter-spacing:.045em;font-weight:600}
.header-band .menu-toggle{font-size:12px;color:inherit}
.header-band nav a{color:var(--header-ink)}
.header-band .nav-contact{border-bottom:0;font-weight:700}
.header-band nav a:hover{color:var(--header-ink);text-decoration:underline;text-underline-offset:6px}
.header-band a:focus-visible,.header-band button:focus-visible{outline-color:var(--header-ink)}
:is(html[data-header="organic"] .header-band:not([data-header]),.header-band[data-header="organic"]){--header-bg:#183a31;--header-ink:#fff;--header-line:#ffffff40;--header-art:url('assets/header-flow.svg')}
:is(html[data-header="structured"] .header-band:not([data-header]),.header-band[data-header="structured"]){--header-bg:#203e37;--header-ink:#fff;--header-line:#ffffff40;--header-art:url('assets/header-interlace.svg')}
.header-band .identity img{filter:none}
/* Keep the symbol and wordmark together at the content's left edge, with
   the navigation at the right. The shorter band preserves the original art. */
@media(min-width:681px){
 .header-band{--header-content-height:85px}
 .header-band .site-header{height:var(--header-content-height)}
 .header-band :is(.site-header,.page-header){gap:clamp(32px,5vw,72px)}
 .header-band .identity{flex:0 0 auto;min-width:0;justify-content:flex-start;padding-left:0;gap:14px}
 .header-band .identity img{width:54px;height:58.5px;flex-shrink:0}
 .header-band .identity>span{font-size:32px;letter-spacing:-1.2px;white-space:nowrap}
 .header-band .identity small{font-size:10.5px;letter-spacing:5.1px;padding-left:3px}
}
@media(min-width:681px) and (max-width:1060px){
 .header-band{--header-content-height:77px}
 .header-band .site-header .identity img{width:50px;height:54.2px}
 .header-band .site-header .identity>span{font-size:30px}
 .header-band .site-header .identity small{font-size:10px;letter-spacing:4.8px}
}
.services-page .header-band{z-index:20}
.services-page .header-band .site-header,body:has(main .project-page,main .about-page) .header-band .site-header{height:var(--header-content-height,106px);border-bottom:0}
@media(max-width:1150px){.header-band .site-header nav{gap:20px}}
@media(max-width:1060px){
 .services-page .header-band .site-header,body:has(main .project-page,main .about-page) .header-band .site-header{height:var(--header-content-height,90px)}
 .header-band .site-header{height:var(--header-content-height,90px);position:relative}
 .header-band .menu-toggle{display:flex;gap:20px;align-items:center;min-height:44px}
 .header-band .menu-toggle span{font-size:24px}
 .header-band .site-header nav{display:none;position:absolute;top:calc(100% + var(--header-rule-width));left:-32px;right:-32px;padding:25px 32px;background:var(--header-bg);color:var(--header-ink);z-index:5;border-bottom:1px solid var(--header-line);box-shadow:0 10px 20px #0002}
 .header-band .site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:5px}
 .header-band .site-header nav a{padding:13px 0;min-height:44px}
 .header-band .site-header .nav-contact{margin-left:0}
 .header-band::before{background-position:20% center}
}
@media(max-width:560px){
 .services-page .header-band .site-header,body:has(main .project-page,main .about-page) .header-band .site-header{height:82px}
 .header-band .site-header{height:82px}
 .header-band .site-header nav{left:-20px;right:-20px;padding:20px}
 .header-band .page-header nav{gap:8px;flex-wrap:wrap}
 .header-band .page-header nav a{min-height:44px}
}
@media(max-width:850px){.header-band .page-header nav{font-size:11px}}
/* Carry the Services leaf-and-route language down the open tablet and phone menus. */
@media(max-width:1060px){
 .header-band .site-header nav::before{content:'';position:absolute;right:7%;top:35%;width:min(31%,150px);aspect-ratio:544/589;background:linear-gradient(145deg,#91ad91 20%,#ba9967 80%);-webkit-mask:url('assets/symbol.3ad651e1b6ef.webp') center/contain no-repeat;mask:url('assets/symbol.3ad651e1b6ef.webp') center/contain no-repeat;opacity:.16;pointer-events:none;z-index:0}
 .header-band .site-header nav::after{content:'';position:absolute;inset:12px 12px 12px auto;width:min(43%,260px);background:url('assets/menu-cultivated-geometry.svg') center/contain no-repeat;pointer-events:none;z-index:0}
 .header-band .site-header nav a{position:relative;z-index:1}
}
@media(max-width:680px){.header-band .site-header nav::before{width:min(31%,120px)}.header-band .site-header nav::after{width:min(43%,180px)}}
@media(forced-colors:active){.header-band .site-header nav::before,.header-band .site-header nav::after{display:none}}
@media(forced-colors:active){.header-band::before{display:none}.header-band{--header-ink:CanvasText!important;--header-bg:Canvas!important;--header-line:CanvasText!important;border-bottom-color:CanvasText}.header-band .identity img{filter:none!important}}
