.skip-link{position:absolute;top:8px;left:var(--gutter);z-index:5;background:var(--lavender);color:var(--coal);padding:12px 20px;transform:translateY(-160%)}
.skip-link:focus{transform:none;outline-color:var(--pearl)}
.site-header{--menu-duration:180ms;display:grid;grid-template-columns:1fr auto;gap:24px 16px;padding-block:24px 0;align-items:start}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;width:fit-content;max-width:100%;line-height:1.25}
.wordmark{font-family:var(--serif);font-size:28px;font-weight:900;letter-spacing:-.04em;line-height:1.05}
.brand-description{font-size:13px;margin-top:5px}
.menu-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;min-height:44px;min-width:44px;font-size:16px;align-self:start}
.menu-icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square}
.menu-icon-close,.menu-toggle[aria-expanded='true'] .menu-icon-open{display:none}
.menu-toggle[aria-expanded='true'] .menu-icon-close{display:initial}
.main-nav,.footer-nav{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center}
.main-nav{--accent:var(--coal);grid-column:1/-1;flex-direction:column;align-items:stretch;gap:0;margin-inline:calc(-1 * var(--gutter));padding:16px var(--gutter) 24px;background:var(--lavender);color:var(--coal);font-size:24px}
.main-nav a,.footer-nav a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;text-underline-offset:8px;text-decoration-thickness:2px}
.main-nav a{min-height:60px;width:fit-content;max-width:100%}
.main-nav a[aria-current]{text-decoration-line:underline}
.main-nav.is-transitioning{overflow:hidden;min-height:0;flex-wrap:nowrap}
@media(prefers-reduced-motion:reduce){.site-header{--menu-duration:0ms}}
.main-nav a,.footer-nav a,.back-top{transition:color var(--feedback-time) ease-out}
.main-nav a:hover{color:var(--coal);text-decoration:underline;text-underline-offset:8px}
.footer-nav a:hover,.back-top:hover{color:var(--lavender);text-decoration:underline;text-underline-offset:8px}
.arrow{width:24px;height:24px;flex:none;overflow:visible}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;max-width:100%;font-size:var(--action-size);font-weight:600;line-height:1.35;color:var(--accent);transition:color var(--feedback-time) ease-out}
.text-link span{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1.5px;overflow-wrap:anywhere}
.text-link:not([aria-disabled='true']):hover,.text-link:not([aria-disabled='true']):active{color:var(--pearl)}
.text-link:focus-visible{transition:none}
.contact-band{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:16px var(--gutter);min-height:64px;background:var(--lavender);color:var(--coal);font-size:18px;font-weight:600;line-height:1.3;transition:background-color var(--feedback-time) ease-out}
.contact-band:hover,.contact-band:active{background:var(--pearl)}
.contact-band:focus-visible{outline:2px solid var(--pearl);outline-offset:-6px;box-shadow:inset 0 0 0 4px var(--coal);transition:none}
.photo{aspect-ratio:var(--ratio-mobile);position:relative;background:var(--pearl);color:var(--coal)}
.photo picture,.photo img{display:block;width:100%;height:100%}
.photo img{object-fit:cover}
.photo-fallback{position:absolute;inset:0;display:grid;align-content:center;padding:24px;font-size:16px;line-height:1.5}
.photo.is-unavailable picture{visibility:hidden}
@media(max-width:359px){.site-header{gap:16px 8px}.brand-description{font-size:12px}.wordmark{font-size:26px}}
@media(min-width:700px){.wordmark{font-size:30px}.brand-description{font-size:16px}.site-header{padding-top:32px;gap:24px}.menu-toggle{font-size:22px}.main-nav{font-size:28px}.main-nav a{min-height:68px}.contact-band{padding-block:20px;font-size:22px}.arrow{width:28px;height:28px}.photo{aspect-ratio:var(--ratio-tablet)}}
@media(min-width:1100px){.site-header{display:flex;justify-content:space-between;align-items:start;padding-top:24px;gap:32px}.wordmark{font-size:34px}.brand-description{font-size:18px}.main-nav{--accent:var(--lavender);flex-direction:row;align-items:center;margin:0;padding:0;background:transparent;color:inherit;font-size:20px;gap:32px}.main-nav a{min-height:44px;width:auto;max-width:none;color:var(--pearl)}.main-nav a[aria-current],.main-nav a:hover{color:var(--lavender)}.menu-toggle{display:none!important}.contact-band{font-size:28px;min-height:96px}.contact-band .arrow{width:48px;height:48px}.photo{aspect-ratio:var(--ratio-desktop)}}
@media(min-width:1600px){.contact-band{padding-inline:max(var(--gutter),calc((100vw - 1472px)/2))}}
