/* Kutlwano Holdings fluorspar site: shared navigation. Loaded after each page's inline styles. */
.skip-link{position:absolute;left:-999px;top:0;z-index:1000;background:var(--slate-black);color:#fff;padding:.6rem 1rem;font-family:var(--font-head);font-weight:700;text-decoration:none}
.skip-link:focus{left:1rem;top:1rem;outline:2px solid var(--emerald)}

.site-header{position:sticky;top:0;z-index:100;background:var(--bg);border-bottom:var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:64px;transition:box-shadow .25s var(--ease)}
.site-header.scrolled{box-shadow:0 6px 24px rgba(15,23,42,.10)}
.header-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--slate-black)}
.header-logo img{height:36px;width:auto}

.header-nav{display:flex;align-items:stretch;gap:0;height:64px}
.header-nav>a,.nav-group-btn{font-family:var(--font-head);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:0 1.15rem;height:64px;display:flex;align-items:center;gap:.4rem;border:0;border-left:1px solid var(--border-light);background:none;color:var(--slate-black);position:relative;cursor:pointer;text-decoration:none;transition:color .2s ease;white-space:nowrap}
.header-nav>a::after,.nav-group-btn::after{content:'';position:absolute;bottom:-2px;left:1.15rem;right:1.15rem;height:3px;background:var(--emerald);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.header-nav>a:hover,.nav-group-btn:hover,.nav-group.open .nav-group-btn{color:var(--emerald)}
.header-nav>a:hover::after,.nav-group-btn:hover::after,.nav-group.open .nav-group-btn::after{transform:scaleX(1)}
.header-nav>a[aria-current="page"]{color:var(--slate-black)}
.header-nav>a[aria-current="page"]::after{transform:scaleX(1);background:var(--slate-black)}
.header-nav>a:focus-visible,.nav-group-btn:focus-visible,.nav-menu a:focus-visible,.hamburger:focus-visible,.mobile-nav a:focus-visible,.sub-nav a:focus-visible,.footer-nav a:focus-visible{outline:2px solid var(--emerald);outline-offset:-2px}

.nav-group{position:relative;display:flex}
.nav-group-btn svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .25s var(--ease)}
.nav-group.open .nav-group-btn svg{transform:rotate(180deg)}
.nav-menu{position:absolute;top:64px;left:0;min-width:220px;background:#fff;border:var(--border);border-top:0;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s ease,transform .25s var(--ease),visibility 0s linear .25s;box-shadow:0 18px 40px rgba(15,23,42,.14)}
.nav-group.open .nav-menu{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease,transform .25s var(--ease)}
.nav-menu a{font-family:var(--font-head);font-weight:600;font-size:.85rem;padding:.8rem 1.1rem;color:var(--slate-black);text-decoration:none;border-bottom:1px solid var(--border-light);display:flex;flex-direction:column;gap:.15rem;transition:background .15s ease,color .15s ease}
.nav-menu a:last-child{border-bottom:0}
.nav-menu a small{font-family:var(--font-body);font-weight:400;font-size:.75rem;color:var(--slate-text)}
.nav-menu a:hover{background:var(--bg);color:var(--emerald)}

.header-nav>a.nav-cta{margin-left:.75rem;align-self:center;height:38px!important;padding:0 1.1rem!important;border:2px solid var(--slate-black)!important;background:var(--slate-black);color:#fff!important;border-radius:2px;transition:background .2s ease,transform .15s var(--ease)!important}
.header-nav>a.nav-cta::after{display:none}
.header-nav>a.nav-cta:hover{background:var(--emerald);border-color:var(--emerald)!important;transform:translateY(-1px)}

.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 10px;border:0;background:none;cursor:pointer;z-index:110}
.hamburger span{display:block;width:24px;height:2px;background:var(--slate-black);transition:transform .3s var(--ease),opacity .2s ease}
.hamburger[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hamburger[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

.mobile-nav{display:none;position:fixed;top:64px;left:0;right:0;bottom:0;background:var(--bg);z-index:99;flex-direction:column;padding:1.25rem 1.5rem 2rem;border-top:var(--border);transform:translateY(-8px);opacity:0;transition:transform .35s var(--ease),opacity .25s ease;pointer-events:none;overflow-y:auto}
.mobile-nav.open{transform:translateY(0);opacity:1;pointer-events:all}
.mobile-nav a{font-family:var(--font-head);font-weight:700;font-size:1.35rem;text-transform:uppercase;letter-spacing:-.01em;padding:.85rem 0;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;color:var(--slate-black);text-decoration:none;cursor:pointer}
.mobile-nav a[aria-current="page"]{color:var(--emerald)}
.mobile-nav a svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;opacity:.5}
.mobile-nav .mobile-group{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--amber-dark);margin:1.4rem 0 .2rem}
.mobile-nav .mobile-group+a,.mobile-nav .mobile-group~a.sub{font-size:1.05rem;font-weight:600;text-transform:none;letter-spacing:0;padding:.7rem 0}
.mobile-nav .mobile-cta{margin-top:1.4rem;border:2px solid var(--slate-black);background:var(--slate-black);color:#fff;justify-content:center;font-size:1rem;letter-spacing:.06em;padding:.9rem 1rem;border-radius:2px}
.mobile-nav .mobile-meta{margin-top:1.4rem;font-family:var(--font-body);font-size:.85rem;color:var(--slate-text);line-height:1.6}
.mobile-nav .mobile-meta a{display:inline;font:inherit;text-transform:none;letter-spacing:0;padding:0;border:0;color:var(--slate-black)}
body.nav-open{overflow:hidden}

.sub-nav{position:sticky;top:64px;z-index:90;display:flex;gap:0;background:var(--bg);border-bottom:1px solid var(--border-light);margin:0 -1.5rem 1.5rem;padding:0 1.5rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sub-nav::-webkit-scrollbar{display:none}
@media (max-width:860px){.sub-nav{-webkit-mask-image:linear-gradient(to right,#000 88%,transparent);mask-image:linear-gradient(to right,#000 88%,transparent)}}
.sub-nav a{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--slate-text);text-decoration:none;padding:.9rem 1rem .8rem 0;margin-right:1rem;border-bottom:3px solid transparent;white-space:nowrap;transition:color .2s ease,border-color .2s ease}
.sub-nav a:hover{color:var(--slate-black)}
.sub-nav a.active{color:var(--slate-black);border-bottom-color:var(--emerald)}
.page h2[id]{scroll-margin-top:124px}
.page .note[id]{scroll-margin-top:124px}
.page{padding-top:2.5rem!important}

.footer-nav{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.25rem 1.6rem;padding-bottom:1.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-light)}
.footer-nav a{font-family:var(--font-head);font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--slate-black);position:relative;padding:.3rem 0}
.footer-nav a::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--emerald);transition:width .25s var(--ease)}
.footer-nav a:hover::after{width:100%}
.footer-nav .footer-signing{flex-basis:100%;font-family:var(--font-body);font-size:.8rem;text-transform:none;letter-spacing:0;font-weight:400;opacity:.8;margin-top:.3rem}

@media (max-width:1100px){.header-nav>a,.nav-group-btn{padding:0 .85rem;font-size:.74rem}.nav-cta{margin-left:.4rem}}
@media (max-width:860px){
  .site-header{padding:0 1.25rem}
  .header-nav{display:none}
  .hamburger{display:flex}
  .mobile-nav{display:flex}
}
@media (prefers-reduced-motion:reduce){.site-header,.header-nav>a::after,.nav-menu,.mobile-nav,.hamburger span,.nav-cta,.footer-nav a::after{transition:none!important}}
