*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;width:100%;min-width:0;max-width:100%;overflow-x:hidden;padding-top:82px}
.site-nav{position:fixed;top:0;left:0;right:0;z-index:1000;width:100%;height:82px;min-height:82px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:10px 5%;border-bottom:1px solid rgba(30,70,53,.09);background:rgba(248,246,239,.97);backdrop-filter:blur(16px);box-shadow:0 6px 24px rgba(20,65,45,.04)}
.site-nav .brand{display:flex;align-items:center;gap:11px;min-width:0;width:max-content;max-width:100%;color:#16372a;text-decoration:none}
.site-nav .logo{width:48px;height:48px;min-width:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#35d38d,#0e9a5e);color:#fff;box-shadow:0 12px 28px rgba(14,154,94,.25);font-size:23px}
.site-nav .brand>b,.site-nav .brand span>b{display:block;font-size:18px;line-height:1.1;white-space:nowrap}
.site-nav .brand small{display:block;margin-top:3px;color:#789087;font-size:9px;line-height:1;letter-spacing:1.7px;white-space:nowrap}
.site-nav nav{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;width:100%;margin:0;padding:0}
.site-nav nav a{display:flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:40px;padding:9px 11px;border-radius:11px;color:#587066;text-decoration:none;font-size:13px;font-weight:800;line-height:1;white-space:nowrap;transition:background .2s,color .2s,transform .2s}
.site-nav nav a:hover{color:#0b9b60;background:rgba(35,211,141,.09);transform:translateY(-1px)}
.site-nav .nav-cta{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;border-radius:12px;background:linear-gradient(145deg,#31ce89,#0e9d61);color:#fff;text-decoration:none;font-size:12px;font-weight:900;white-space:nowrap;box-shadow:0 10px 22px rgba(15,157,97,.18)}
.site-nav .mobile-menu-toggle{display:none;width:42px;height:42px;min-width:42px;padding:8px;border:0;border-radius:13px;background:#fff;box-shadow:0 8px 20px rgba(20,65,45,.1);cursor:pointer}
.site-nav .mobile-menu-toggle span{display:block;height:2px;margin:5px 0;border-radius:99px;background:#173d2d}
@media(max-width:1180px){
.site-nav{grid-template-columns:minmax(0,1fr) auto;height:82px;min-height:82px;padding:10px 18px;gap:10px}
.site-nav .brand{min-width:0;width:auto}
.site-nav .brand>b,.site-nav .brand span>b{font-size:16px;overflow:hidden;text-overflow:ellipsis}
.site-nav .brand small{font-size:8px;overflow:hidden;text-overflow:ellipsis}
.site-nav nav,.site-nav .nav-cta{display:none}
.site-nav .mobile-menu-toggle{display:block}
.site-nav nav{position:absolute;top:86px;left:12px;right:12px;width:auto;margin:0;padding:9px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;border:1px solid rgba(30,70,53,.1);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 22px 50px rgba(18,55,39,.18);backdrop-filter:blur(20px)}
body.mobile-menu-open .site-nav nav{display:flex}
.site-nav nav a{justify-content:flex-start;min-height:44px;padding:11px 14px;font-size:13px;white-space:normal}
}
@media(max-width:420px){
.site-nav{padding-left:12px;padding-right:12px}
.site-nav .logo{width:44px;height:44px;min-width:44px;border-radius:13px;font-size:21px}
.site-nav .brand>b,.site-nav .brand span>b{font-size:14px}
.site-nav .brand small{font-size:7px;letter-spacing:1.3px}
}

.site-nav+main{position:relative;z-index:1;min-width:0}.site-nav+main>*{min-width:0}.site-nav~main section[id]{scroll-margin-top:100px}

/* Canonical header lock */
.site-nav{height:82px!important;min-height:82px!important;max-height:82px!important;box-sizing:border-box!important;display:grid!important;flex:none!important;overflow:visible!important}
.site-nav .logo{width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;min-height:48px!important;max-height:48px!important}
.site-nav .mobile-menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;min-height:42px!important;max-height:42px!important}
.site-nav .brand{height:auto!important;min-height:48px!important}
.site-nav nav{height:auto!important;min-height:0!important}
.site-nav nav a{height:40px!important;min-height:40px!important;max-height:40px!important}
.site-nav .nav-cta{height:42px!important;min-height:42px!important;max-height:42px!important}
@media(max-width:1180px){.site-nav{height:82px!important;min-height:82px!important;max-height:82px!important;padding:10px 18px!important}.site-nav .logo{width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;min-height:48px!important;max-height:48px!important}.site-nav .brand>b,.site-nav .brand span>b{font-size:16px!important}.site-nav .brand small{font-size:8px!important}.site-nav nav a{height:44px!important;min-height:44px!important;max-height:44px!important}}
@media(max-width:420px){.site-nav{padding-left:12px!important;padding-right:12px!important}.site-nav .logo{width:44px!important;height:44px!important;min-width:44px!important;max-width:44px!important;min-height:44px!important;max-height:44px!important}.site-nav .brand>b,.site-nav .brand span>b{font-size:14px!important}.site-nav .brand small{font-size:7px!important}.site-nav nav a{height:44px!important;min-height:44px!important;max-height:44px!important}}

/* Final cross-page typography normalization */
.site-nav nav a{font-family:Inter,Segoe UI,Arial,sans-serif!important;font-weight:700!important;font-style:normal!important;text-decoration:none!important;text-rendering:geometricPrecision}
.site-nav nav a:hover,.site-nav nav a:focus,.site-nav nav a:active{font-weight:700!important}
.site-nav .nav-cta{font-family:Inter,Segoe UI,Arial,sans-serif!important;font-weight:800!important;font-style:normal!important}

/* Premium 3D header motion */
.site-nav{
  transform:translateZ(0);
  perspective:900px;
  box-shadow:0 8px 26px rgba(20,65,45,.08),0 2px 5px rgba(20,65,45,.05),inset 0 -1px 0 rgba(255,255,255,.72);
  transition:box-shadow .3s ease,background .3s ease,transform .3s ease;
}
.site-nav:after{
  content:"";
  position:absolute;
  left:5%;right:5%;bottom:-9px;height:12px;
  border-radius:50%;
  background:rgba(20,65,45,.10);
  filter:blur(10px);
  pointer-events:none;
  z-index:-1;
}
.site-nav nav a{
  position:relative;
  transform:translate3d(0,0,0);
  transform-style:preserve-3d;
  will-change:transform,box-shadow;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0),0 2px 0 rgba(20,65,45,0);
  transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.site-nav nav a:before{
  content:"";
  position:absolute;
  left:10px;right:10px;bottom:3px;height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#20bd7b,transparent);
  transform:scaleX(0);
  transform-origin:center;
  opacity:0;
  transition:transform .25s ease,opacity .25s ease;
}
.site-nav nav a:hover{
  color:#078d58;
  background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(224,246,235,.88));
  transform:translate3d(0,-3px,5px);
  box-shadow:0 6px 12px rgba(20,65,45,.12),inset 0 1px 0 rgba(255,255,255,.95);
}
.site-nav nav a:hover:before{transform:scaleX(1);opacity:1}
.site-nav nav a:active{transform:translate3d(0,0,1px);box-shadow:0 2px 5px rgba(20,65,45,.10)}
.site-nav .nav-cta{
  position:relative;
  overflow:hidden;
  transform:translateZ(0);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
.site-nav .nav-cta:before{
  content:"";
  position:absolute;
  top:-70%;left:-35%;width:35%;height:240%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);
  transform:rotate(20deg) translateX(-180%);
  transition:transform .6s ease;
}
.site-nav .nav-cta:hover{
  transform:translateY(-3px) translateZ(6px);
  box-shadow:0 16px 28px rgba(15,157,97,.28),inset 0 1px 0 rgba(255,255,255,.35);
  filter:saturate(1.05);
}
.site-nav .nav-cta:hover:before{transform:rotate(20deg) translateX(500%)}
.site-nav .logo{
  position:relative;
  transform:translateZ(0);
  transition:transform .35s ease,box-shadow .35s ease;
  animation:navLogoFloat 4s ease-in-out infinite;
}
.site-nav .logo:hover{
  transform:translateY(-3px) rotate(-2deg) scale(1.04);
  box-shadow:0 16px 32px rgba(14,154,94,.32);
}
.site-nav.scrolled{
  background:rgba(248,246,239,.985);
  box-shadow:0 12px 34px rgba(20,65,45,.13),0 3px 8px rgba(20,65,45,.06),inset 0 -1px 0 rgba(255,255,255,.8);
}
.site-nav .mobile-menu-toggle{
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.site-nav .mobile-menu-toggle:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 25px rgba(20,65,45,.16);
}
@keyframes navLogoFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-2px)}
}
@media(max-width:1180px){
  .site-nav:after{left:12px;right:12px}
  .site-nav nav a:hover{transform:translate3d(0,-2px,3px)}
}
@media(prefers-reduced-motion:reduce){
  .site-nav,.site-nav nav a,.site-nav .nav-cta,.site-nav .logo,.site-nav .mobile-menu-toggle{animation:none!important;transition:none!important}
}
