.site-header{position:sticky;top:0;z-index:20;background:var(--ivory);border-bottom:1px solid transparent;transition:border-color .2s}.site-header.scrolled{border-color:var(--line)}.brand-link{display:inline-block;flex:none;padding:8px 3px}.brand-logo{width:300px;max-width:none}.header-panel nav:not(.languages) a{font-size:.75rem;white-space:nowrap;display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid transparent}.header-panel nav:not(.languages) a:hover,.header-panel nav:not(.languages) a[aria-current="location"]{border-color:var(--bronze)}
.languages{display:flex;align-items:center;gap:2px;font-size:.6875rem;white-space:nowrap}.languages a{display:inline-flex;align-items:center;justify-content:center;background:transparent;padding:0;min-width:32px;min-height:44px;color:var(--slate);border-bottom:1px solid transparent}.languages a[aria-current=page]{border-color:var(--bronze);color:var(--navy);font-weight:800}.languages>span{color:var(--slate)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:16px 22px;min-height:52px;background:var(--navy);color:var(--ivory);font-size:.8125rem;font-weight:500;line-height:1.5;border:1px solid var(--navy);transition:background .2s,color .2s}.button:hover{background:transparent;color:var(--navy)}.button:focus-visible{outline-offset:4px}.header-cta{min-height:44px;font-size:.6875rem;padding:10px 14px;gap:var(--s2)}.text-link{display:inline-flex;gap:var(--s4);align-items:center;min-height:48px;padding-block:var(--s1);border-bottom:1px solid var(--bronze);font-size:.8125rem;font-weight:600}.text-link:hover .arrow,.button:hover .arrow{transform:translate(2px,-2px)}.arrow{display:inline-block;transition:transform .2s;font-size:1.15rem;font-weight:400;flex:none}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s4);margin-top:var(--s4)}
.menu-toggle{display:none;align-items:center;gap:var(--s2);min-height:44px;background:transparent;font-size:.75rem;padding:8px 0}.menu-icon{width:24px;height:12px;border-block:1px solid var(--navy);position:relative}.menu-toggle[aria-expanded=true] .menu-icon{border-bottom:0;transform:rotate(45deg);height:0}.menu-toggle[aria-expanded=true] .menu-icon::after{content:'';position:absolute;width:24px;border-top:1px solid var(--navy);transform:rotate(90deg);top:-1px}
.hero .eyebrow{margin-bottom:var(--s5)}.hero-rule{width:14%;height:1px;background:var(--bronze);margin-bottom:14px}.hero-aside p{font-size:.8125rem;line-height:1.8}.hero-aside .signature-small{color:var(--navy);margin-top:var(--s3);font-family:var(--heading);font-size:1.25rem}.scope-line{display:grid;grid-template-columns:repeat(4,1fr) 24px;gap:var(--s3);padding-block:var(--s4);border-block:1px solid var(--line)}.scope-line a{display:flex;align-items:center;gap:var(--s2);font-size:.8125rem;min-height:44px}.scope-number{font-size:.625rem;color:var(--slate);border-top:1px solid var(--bronze);padding-top:4px}.scope-end{align-self:center}
.criteria{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--s4);margin-top:var(--s4)}.criteria>div{display:flex;gap:var(--s3);border-bottom:1px solid var(--line);padding-block:var(--s2);font-size:.8125rem}.editorial-line{margin-top:var(--s4);font-family:var(--heading);font-size:1.5rem;color:var(--navy);line-height:1.4}.editorial-line span{display:block}
.services-section{background:var(--wash);border-block:1px solid var(--line)}.service{padding:var(--s4);padding-bottom:0;border-left:1px solid var(--line);min-width:0}.service:first-child{padding-left:0;border-left:0}.service:last-child{padding-right:0}.service-number{display:block;font-family:var(--heading);font-size:2.25rem;line-height:1;color:var(--bronze);margin-bottom:var(--s5)}.service h3{margin-bottom:var(--s2)}.service p{font-size:.875rem;line-height:1.8}
.process-section{border-bottom:1px solid var(--line)}.process-number{font-family:var(--heading);font-size:2rem;color:var(--bronze);display:block;border-bottom:1px solid var(--line);padding-bottom:var(--s3);margin-bottom:var(--s3)}.process-grid h3{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--s2)}.process-grid p{font-size:.8125rem;line-height:1.75}
.project-status{display:flex;align-items:center;gap:12px;font-size:.75rem;color:var(--navy);margin-block:var(--s4)}.project-status>span:first-child{width:6px;height:6px;background:var(--bronze);border-radius:50%}.project-demo{margin-top:var(--s3)}.project-board{position:relative;background:var(--navy);color:var(--ivory);min-height:380px;padding:var(--s5);display:flex;flex-direction:column;overflow:hidden}.project-board .eyebrow{color:var(--ivory);position:relative;z-index:1}.board-lines{position:absolute;inset:0;pointer-events:none;opacity:.3}.board-lines span{position:absolute;border:1px solid var(--bronze);width:75%;height:150%;transform:rotate(32deg);top:-30%;left:50%}.board-lines span:nth-child(2){left:62%}.board-lines span:nth-child(3){left:74%}.board-note{font-family:var(--heading);font-size:2rem;line-height:1.25;white-space:pre-line;color:var(--ivory);margin-top:auto;position:relative;max-width:20rem}.board-foot{display:flex;justify-content:space-between;gap:var(--s3);color:var(--ivory);border-top:1px solid rgb(245 241 232 / 30%);padding-top:var(--s3);margin-top:var(--s5);font-size:.6875rem;position:relative}
.landowners-section{border-block:1px solid var(--line);background:var(--wash)}.landowners-inner .text-link{margin-top:var(--s4)}.landowners-inner .caption{margin-top:var(--s3)}.about-pull{font-family:var(--heading);font-size:1.5rem;color:var(--slate);margin-top:var(--s4)}.about-body>p+p{margin-top:var(--s4);font-size:.9375rem;line-height:1.8}.principles-section{border-block:1px solid var(--line);padding-block:var(--s8);text-align:center}.principles-section .eyebrow{justify-content:center}.principles-section .eyebrow::before{display:none}.principles-list{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--s3) var(--s4);margin-top:var(--s4)}.principles-list li{font-size:.75rem;display:flex;gap:var(--s4);align-items:center}.principles-list li+li::before{content:'';width:3px;height:3px;background:var(--bronze)}
.contact-intro h2{margin-bottom:var(--s4);max-width:25rem}.contact-note{font-family:var(--heading);font-size:1.5rem;max-width:18rem;margin-top:var(--s8);color:var(--navy)}.field{display:flex;flex-direction:column;gap:var(--s1);min-width:0}.field label{font-size:.75rem;font-weight:600}.field small{color:var(--slate);font-weight:400;font-size:.6875rem}.field input,.field select,.field textarea{width:100%;min-width:0;background:transparent;border:1px solid var(--slate);padding:12px;min-height:48px;font-size:1rem}.field option{color:var(--navy);background:var(--ivory)}.field-error{font-size:.75rem;color:var(--navy)}.field [aria-invalid=true]{border-width:2px}.preview-note{margin-block:var(--s2) var(--s3)}.form-status:not(:empty){margin-top:var(--s3);padding:var(--s2);border-left:2px solid var(--bronze);font-size:.875rem;background:var(--wash)}
.site-footer{border-top:1px solid var(--line)}.footer-scope{font-size:.75rem;margin-top:var(--s3)}.footer-signature{font-family:var(--heading);font-size:1.5rem;color:var(--navy);margin-top:var(--s2)}.footer-main nav a{font-size:.8125rem;min-height:44px;display:flex;align-items:center}.footer-main nav a:hover{text-decoration:underline;text-decoration-color:var(--bronze);text-underline-offset:6px}.error-page{padding-block:var(--s16)}.error-page p:not(.eyebrow){margin-block:var(--s4);max-width:36rem}
.reveal-in{animation:reveal .55s ease-out both}@keyframes reveal{from{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.contact-email{margin-top:var(--s3)}.contact-handling{margin-top:var(--s3);max-width:28rem}

/* Direct contact submission states retain the existing form styling. */
#form-status{white-space:pre-line}#contact-form button:disabled{cursor:wait;opacity:.7}#form-fallback{margin-top:var(--s2);user-select:text}
