/* Shared site shell. Content pages retain their own editorial layouts. */
html{scroll-padding-top:104px}
.site-header{height:88px;padding:0;display:block}
.site-header.is-fixed{height:88px;background:#fff;color:var(--ink)}
.header-inner{width:min(1240px,90%);height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:32px}
.site-header .brand{display:flex;align-items:center;gap:10px;flex-shrink:0;white-space:nowrap}
.site-header .brand>svg{width:40px;height:35px;fill:var(--brand-mark);stroke:none;flex-shrink:0}
.home-page .site-header:not(.is-fixed) .brand>svg{fill:#fff}
.site-header .brand>span{font:400 22px/1.5 var(--serif);letter-spacing:.04em}
.site-header .desktop-nav{display:flex;align-items:center;gap:34px;font:400 14px/1.6 var(--sans);white-space:nowrap}
.site-header .desktop-nav>a{padding:15px 0;position:relative}
.site-header .desktop-nav>a::after{bottom:7px}
.site-header .desktop-nav>a[aria-current]::after{transform:scaleX(1)}
.site-header.is-fixed .desktop-nav>a[aria-current],.inner-page .desktop-nav>a[aria-current]{color:var(--green)}
.inner-page .site-header{position:sticky;top:0;z-index:20;opacity:1;transform:none;transition:none;background:#fff;color:var(--ink);box-shadow:0 1px 0 #e6e3dd}
.site-header .menu-toggle{display:none;width:44px;height:44px;flex-shrink:0}
.site-header .menu-toggle span{left:10px;top:17px;width:24px}
.site-header .menu-toggle span+span{left:16px;top:25px;width:18px}
.menu-dialog .dialog-close,.content-dialog .dialog-close{width:44px;height:44px;top:18px;right:20px}
.menu-dialog .dialog-close>span,.content-dialog .dialog-close>span{left:10px;top:22px;width:24px}
.menu-dialog .menu-content{padding:64px 24px;min-height:100%;overflow:auto}
.menu-brand{display:flex;flex-direction:column;align-items:center;gap:17px;font:400 23px/1.5 var(--serif);margin-bottom:36px}
.menu-brand>svg{width:58px;height:50px;fill:var(--brand-mark);stroke:none;flex-shrink:0}
.menu-dialog .menu-content nav{gap:13px;font-size:26px}
.menu-content nav>a{padding:8px 0;align-self:center;border-bottom:1px solid transparent;line-height:1.6}
.menu-content nav>a[aria-current]{color:var(--green);border-color:#a7b19b}
.menu-dialog .menu-content>p{font-size:11px;margin-top:35px;color:#837a6e}
.inner-page .breadcrumbs{padding-top:30px;font-size:11px;line-height:1.7;gap:10px}
.inner-page .site-footer{margin-top:80px}
.site-footer{max-width:none;margin:0;padding:0;border-top:1px solid var(--line);background:#fcfcf9}
.footer-shell{width:min(1240px,90%);margin:0 auto;padding:48px 0 28px}
.site-footer .footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 0 34px}
.site-footer .footer-brand{display:flex;align-items:center;gap:10px;font:400 24px/1.5 var(--serif);letter-spacing:.04em}
.site-footer .footer-brand>svg{width:40px;height:35px;fill:var(--brand-mark);stroke:none;flex-shrink:0}
.hero-symbol{width:50px;height:43px;fill:#fff;stroke:none}
.section-mark{width:44px;height:38px;fill:var(--brand-mark);stroke:none}
.loading-grain{width:230px;height:198px}
.site-footer .footer-tagline{font:400 12px/1.9 var(--serif);color:#81776b;margin-top:11px}
.footer-nav{display:flex;gap:25px;font-size:12px;line-height:1.8;flex-wrap:wrap}
.footer-nav a{padding:8px 0}
.footer-nav a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:6px}
.footer-business{font-size:11px;color:#746b5e;line-height:1.9;margin-bottom:25px}
.footer-business p{display:flex;flex-wrap:wrap;gap:3px 22px;line-height:1.9;margin:0}
.footer-business p+p{margin-top:7px}
.footer-business a{text-underline-offset:4px}
.footer-business a:hover{text-decoration:underline}
.site-footer .footer-bottom{border-top:1px solid var(--line);padding-top:21px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.site-footer .preview-info{max-width:800px;font-size:10px;line-height:1.9;gap:9px 18px;color:#807568}
.site-footer .preview-info button{font-size:10px;min-height:24px}
.site-footer .credit{font-size:11px;line-height:1.9;white-space:nowrap;color:#746b5e}
.skip-link{top:0;transform:translateY(-110%)}
.skip-link:focus,.inner-page .skip-link:focus{top:12px;transform:none}
@media(max-width:1000px){.site-header .desktop-nav{gap:25px;font-size:13px}.footer-nav{gap:20px}}
@media(max-width:900px){
 html{scroll-padding-top:88px}
 .site-header,.site-header.is-fixed,.inner-page .site-header{height:72px}
 .header-inner{width:calc(100% - 48px);gap:20px}
 .site-header .brand>svg{width:34px;height:30px}
 .loading-grain{width:200px;height:172px}
 .site-header .brand>span{font-size:19px}
 .site-header .desktop-nav{display:none}
 .site-header .menu-toggle{display:block}
 .inner-page .breadcrumbs{padding-top:24px;font-size:10px}
 .inner-page .site-footer{margin-top:64px}
 .footer-shell{width:calc(100% - 48px);padding:34px 0 25px}
 .site-footer .footer-top{flex-direction:column;align-items:flex-start;gap:23px;margin-bottom:25px}
 .site-footer .footer-brand{font-size:23px}
 .site-footer .footer-tagline{font-size:12px;margin-top:9px}
 .footer-nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;font-size:12px}
 .footer-nav a{min-height:36px;padding:8px 0}
 .footer-business{font-size:10px;margin-bottom:22px}
 .footer-business p{gap:4px 15px}
 .footer-business p+p{margin-top:7px}
 .site-footer .footer-bottom{flex-direction:column;gap:18px;padding-top:19px}
 .site-footer .preview-info{max-width:none;width:100%;font-size:9px;gap:7px 16px}
 .site-footer .preview-info>span{width:100%}
 .site-footer .preview-info button{font-size:10px}
 .site-footer .credit{font-size:10px}
}
@media(max-height:600px) and (max-width:900px){.menu-dialog .menu-content{justify-content:flex-start;padding-top:40px}.menu-brand{flex-direction:row;gap:12px;margin-bottom:15px}.menu-brand>svg{width:40px;height:35px}.menu-dialog .menu-content nav{gap:2px;font-size:23px}.menu-dialog .menu-content>p{margin-top:20px}}
