/* Shared Graphite identity and navigation. */
nav.site-nav{position:fixed;inset:0 0 auto;z-index:50;background:#fff!important;color:#141b20;border-bottom:1px solid #edf0f2;backdrop-filter:none!important;font-family:'Geist',sans-serif}
.site-nav .shell-inner{max-width:1400px;padding:0 clamp(24px,4vw,64px);height:88px;margin:auto;display:flex;align-items:center;gap:clamp(28px,5vw,76px)}
a.graphite-wordmark{display:inline-flex;align-items:baseline;font-family:'Geist',sans-serif;font-size:31px;font-weight:600;letter-spacing:-1.8px;line-height:1;text-decoration:none;color:#162027;flex-shrink:0}
.graphite-wordmark>span{color:#7695a5;margin-left:1px}
.shell-navigation{display:flex;align-items:center;gap:34px;margin-left:auto}
.shell-navigation>a,.suite-menu>summary{font-size:13px;color:#49545b;text-decoration:none;cursor:pointer;font-weight:400}
.suite-menu>summary{list-style:none;display:flex;align-items:center;gap:11px;padding:15px 0}
.suite-menu>summary::-webkit-details-marker{display:none}
.suite-menu>summary>.suite-chevron{display:block;flex:0 0 7px;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.suite-menu[open]>summary>.suite-chevron{transform:translateY(2px) rotate(225deg)}
.site-nav a.shell-action{font-size:12px;display:inline-flex;align-items:center;gap:24px;color:#182128;text-decoration:none;border:1px solid #d8dfe3;border-radius:999px;padding:11px 18px;font-weight:500;white-space:nowrap;transition:background .2s}
.site-nav a.shell-action:hover{background:#edf4f7}
.suite-dropdown{max-height:calc(100dvh - 112px);overflow:auto;position:absolute;top:calc(100% + 12px);right:clamp(20px,4vw,64px);width:min(900px,calc(100vw - 40px));padding:32px;background:#fff;border:1px solid #e3e9ed;border-radius:12px;box-shadow:0 18px 60px #142f4520;display:grid;grid-template-columns:1fr 2.4fr;gap:30px}
.suite-menu-intro{font-size:24px;letter-spacing:-1px;line-height:1.2;padding-top:12px;color:#24333d}
.suite-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.suite-menu-links a{display:grid;grid-template-columns:64px minmax(0,1fr) auto;column-gap:10px;row-gap:4px;align-items:center;text-decoration:none;padding:14px 10px;border-radius:5px;color:#202b32}
.suite-menu-links a:hover,.suite-menu-links a[aria-current]{background:#eff5f8}
.suite-menu-links strong{grid-column:2;align-self:end;font-size:14px;font-weight:500}
.suite-menu-links span{font-size:11px;color:#69777f;grid-column:2;align-self:start}
.suite-menu-links i{grid-column:3;grid-row:1/3;align-self:center;font-style:normal;font-size:14px}
.suite-overview{grid-column:1/-1;display:flex;justify-content:space-between;text-decoration:none;font-size:12px;padding-top:20px;border-top:1px solid #ecf0f2;color:#50616d}
footer.site-footer,body[data-page="home"] footer.site-footer{background:#fff;color:#17222a;padding:72px 0 26px;border-top:1px solid #e8eef1;font-family:'Geist',sans-serif}
.shell-footer-inner{max-width:1280px;margin:auto;padding-inline:clamp(24px,5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:60px}
.footer-signature p{margin:24px 0 0;font-size:14px;line-height:1.6;color:#60707a;opacity:1}
.footer-service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-content:start}
.footer-service-links a{font-size:13px;text-decoration:none;color:#45545e}
.footer-baseline{grid-column:1/-1;display:flex;justify-content:space-between;color:#7b878e;font-size:11px;border-top:1px solid #edf0f2;padding-top:24px}
.footer-baseline a{color:inherit;text-decoration:none}
body[data-page="home"] .layer-nav{top:88px}
body[data-page="home"] .chapter{scroll-margin-top:154px}
a:focus-visible,summary:focus-visible{outline:2px solid #48798f;outline-offset:5px}
.skip-link{position:fixed;top:8px;left:12px;z-index:100;background:#fff;color:#111;padding:12px 20px;transform:translateY(-150%)}
.skip-link:focus{transform:none}
@media(max-width:760px){
 .site-nav .shell-inner{height:76px;gap:20px;padding-inline:24px}
 a.graphite-wordmark{font-size:28px}
 .shell-navigation{margin-left:auto}
 .shell-about,.site-nav a.shell-action{display:none}
 .suite-dropdown{right:16px;width:calc(100vw - 32px);padding:20px;gap:18px;grid-template-columns:1fr}
 .suite-menu-intro{font-size:21px;padding:0}
 .suite-menu-intro br{display:none}
 .suite-menu-links{gap:5px}
 .suite-menu-links a{padding:14px 8px}
 .shell-footer-inner{grid-template-columns:1fr;gap:40px}
 .footer-baseline{gap:24px}
 body[data-page="home"] .layer-nav{top:76px}
 body[data-page="home"] .chapter{scroll-margin-top:137px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.suite-menu>summary>span,.site-nav a.shell-action{transition:none}}

/* The same six sculptural objects used throughout the suite. */
.suite-menu-links .menu-service-icon{grid-column:1;grid-row:1/3;width:64px;height:64px;object-fit:contain;mask-size:100% 100%;mask-repeat:no-repeat}
.menu-icon-moraine{mask-image:url('../img/service-concepts/moraine-mask.svg')}
.menu-icon-ablation{mask-image:url('../img/service-concepts/ablation-mask.svg')}
.menu-icon-tarn{mask-image:url('../img/service-concepts/tarn-mask.svg')}
@media(max-width:760px){
 .suite-menu-links{grid-template-columns:1fr}
 .suite-menu-links a{grid-template-columns:56px minmax(0,1fr) auto;padding:7px 8px}
 .suite-menu-links .menu-service-icon{width:56px;height:56px}
}
