html{scroll-padding-top:110px}.site-header{position:sticky;top:0;z-index:40;isolation:isolate;background:#eeede7f2;border-bottom:1px solid #c3cab680;backdrop-filter:blur(18px);transition:height .35s ease,background .35s ease,box-shadow .35s ease}.site-header:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:#697f50;transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}.site-header .brand{display:flex;align-items:center;gap:15px;font-weight:600}.site-header .brand .brand-copy{display:block;font-size:29px;letter-spacing:-1.8px;line-height:1;margin:0;text-align:left}.brand-copy small{display:block;font-size:8px;letter-spacing:2px;font-weight:500;margin-top:10px}.site-header .brand .brand-mark{display:flex;align-items:center;gap:4px;height:42px;width:32px;flex-shrink:0;margin:0}.brand-mark i{display:block;width:4px;height:30px;border-radius:2px;background:#57694a;transform-origin:center;transition:height .35s ease,transform .35s ease}.brand-mark i:nth-child(2){height:40px}.brand-mark i:nth-child(3){height:35px}.brand-mark i:nth-child(4){height:25px}.site-header .brand:hover .brand-mark i:nth-child(odd){transform:translateY(-3px)}.site-header .brand:hover .brand-mark i:nth-child(even){transform:translateY(3px)}
@media(min-width:851px){.site-header{height:100px;padding-inline:4.5%}.site-header.is-scrolled{height:78px;background:#f3f3edf0;box-shadow:0 6px 28px #1b2a1d12}.site-header nav{position:relative;gap:8px}.site-header nav>a:not(.nav-contact){position:relative;z-index:1;min-height:44px;padding:13px 18px;border-radius:8px;font-size:12px;transition:color .2s ease,background .2s ease}.site-header nav>a:not(.nav-contact):hover{color:#344c25;background:#dfe6d633}.site-header nav>a[aria-current="location"]{color:#38522b}.nav-indicator{position:absolute;left:0;top:0;height:44px;border:1px solid #bbc9ac80;border-radius:9px;background:#dce5d17a;opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.2,.7,.2,1),width .3s cubic-bezier(.2,.7,.2,1),opacity .2s ease;z-index:0}.site-header .nav-contact{margin-left:20px;position:relative;overflow:hidden;background:#263225;border-color:#263225}.site-header .nav-contact:before{content:'';position:absolute;inset:-30% auto -30% -60%;width:35%;transform:skewX(-25deg);background:linear-gradient(90deg,transparent,#ffffff1a,transparent);transition:left .5s ease;pointer-events:none}.site-header .nav-contact:hover:before{left:130%}.site-header .nav-contact>span{background:#ffffff0d}.site-header.is-scrolled .brand-mark i{height:26px}.site-header.is-scrolled .brand-mark i:nth-child(2){height:34px}.site-header.is-scrolled .brand .brand-copy{font-size:27px}.hero{min-height:calc(100svh - 100px)}}
@media(max-width:850px){.nav-indicator{display:none}.site-header{height:78px}.site-header nav{top:78px;border-radius:0 0 16px 16px;background:#f1f2eb;border-bottom:1px solid #c3cab6}.site-header .brand{gap:10px}.site-header .brand .brand-copy{font-size:25px}.brand-copy small{font-size:7px;margin-top:8px}.site-header .brand .brand-mark{width:26px;gap:3px;transform:scale(.85);transform-origin:left}.site-header.is-scrolled{box-shadow:0 4px 18px #1b2a1d12}.site-header nav>a[aria-current="location"]{color:#456631}html{scroll-padding-top:95px}}
@media(prefers-reduced-motion:reduce){.site-header,.brand-mark i,.site-header nav>a,.nav-indicator,.site-header .nav-contact:before{transition:none!important}.site-header .brand:hover .brand-mark i{transform:none}}

/* The navigation switches to its mobile layout at the same 850px breakpoint. */
@media(min-width:701px) and (max-width:850px){.site-header .menu{display:flex;gap:13px;align-items:center;font:11px Arial}.site-header .menu span{font-size:20px}.site-header nav{display:none;position:absolute;z-index:10;left:0;right:0;padding:25px 6%;box-shadow:0 10px 20px #0002}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.site-header .nav-contact{width:fit-content}}
@media(min-width:851px) and (max-width:1100px){.site-header{padding-inline:3%}.site-header nav{gap:2px}.site-header nav>a:not(.nav-contact){padding-inline:9px;font-size:11px}.site-header .nav-contact{margin-left:6px}.site-header .brand .brand-copy{font-size:25px}.site-header .brand{gap:10px}}
