/* KAVIREN DOMAIN MASTER HEADER V3
   Single canonical global header frame. Page-level navigation remains in each page body.
*/
:root{
  --kv-master-header-h:72px;
  --head:var(--kv-master-header-h);
  --header-h:var(--kv-master-header-h);
  --kv-global-head:var(--kv-master-header-h);
  --m4-global-h:var(--kv-master-header-h);
  --m4-stack-h:calc(var(--kv-master-header-h) + var(--m4-journey-h,48px));
}
html{scroll-padding-top:var(--kv-master-header-h);}
body{overflow-x:hidden;}
body>.kv-master-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  height:var(--kv-master-header-h) !important;
  min-height:var(--kv-master-header-h) !important;
  padding:0 !important;
  margin:0 !important;
  z-index:2147483000 !important;
  display:block !important;
  box-sizing:border-box !important;
  background:rgba(2,8,5,.985) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
  contain:layout paint !important;
  isolation:isolate !important;
}
body>.kv-master-header .kv-master-nav{
  width:min(1280px,calc(100% - 56px)) !important;
  max-width:none !important;
  height:100% !important;
  min-height:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  box-sizing:border-box !important;
}
body>.kv-master-header .kv-master-brand{
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
  height:64px !important;
  min-height:64px !important;
  max-height:64px !important;
  flex:0 0 72px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:visible !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
body>.kv-master-header .kv-master-brand img{
  display:block !important;
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  max-width:58px !important;
  min-height:58px !important;
  max-height:58px !important;
  flex:0 0 58px !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  transition:none !important;
  animation:none !important;
}
body>.kv-master-header .kv-master-links{
  margin-left:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:28px !important;
  min-width:0 !important;
  height:100% !important;
}
body>.kv-master-header .kv-master-links a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  white-space:nowrap !important;
  text-transform:uppercase !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.13em !important;
  color:#f4df9b !important;
  text-decoration:none !important;
  transform:none !important;
}
body>.kv-master-header .kv-master-links a:hover,
body>.kv-master-header .kv-master-links a:focus-visible{color:#fff !important;}
body>.kv-master-header .kv-master-links .gateway{color:#f4df9b !important;}

/* Page-specific navigation starts below the master header. */
.m4-journey{top:var(--kv-master-header-h) !important;}
:root{--m4-global-h:var(--kv-master-header-h);--m4-journey-h:48px;--m4-stack-h:calc(var(--kv-master-header-h) + var(--m4-journey-h));}
body{scroll-padding-top:var(--kv-master-header-h);}
section[id]{scroll-margin-top:calc(var(--kv-master-header-h) + 18px);}

@media (max-width:820px){
  :root{
    --kv-master-header-h:64px;
    --head:64px;
    --header-h:64px;
    --kv-global-head:64px;
    --m4-global-h:64px;
    --m4-journey-h:46px;
    --m4-stack-h:110px;
  }
  html{scroll-padding-top:64px;}
  body>.kv-master-header .kv-master-nav{
    width:calc(100% - 28px) !important;
    gap:12px !important;
  }
  body>.kv-master-header .kv-master-brand{
    width:58px !important;
    min-width:58px !important;
    max-width:58px !important;
    height:58px !important;
    flex-basis:58px !important;
  }
  body>.kv-master-header .kv-master-brand img{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    max-width:50px !important;
    min-height:50px !important;
    max-height:50px !important;
  }
  body>.kv-master-header .kv-master-links{
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
  }
  body>.kv-master-header .kv-master-links::-webkit-scrollbar{display:none !important;}
  body>.kv-master-header .kv-master-links a{
    min-height:40px !important;
    font-size:9px !important;
    letter-spacing:.10em !important;
    flex:0 0 auto !important;
  }
  .m4-journey{top:64px !important;}
}

/* KAVIREN MOBILE REMEDIATION M1 — 2026-10-04
   Mobile/tablet only. Desktop >=821px is intentionally untouched. */
@media (max-width:820px){
  :root{
    --kv-master-header-h:96px !important;
    --head:96px !important;
    --header-h:96px !important;
    --kv-global-head:96px !important;
    --m4-global-h:96px !important;
    --m4-stack-h:calc(96px + var(--m4-journey-h,46px)) !important;
  }
  html{scroll-padding-top:96px !important;}
  html body > header.kv-master-header{
    height:96px !important;
    min-height:96px !important;
    max-height:96px !important;
    overflow:hidden !important;
  }
  html body > header.kv-master-header .kv-master-nav{
    width:calc(100% - 20px) !important;
    height:96px !important;
    min-height:96px !important;
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) !important;
    align-items:center !important;
    gap:8px !important;
  }
  html body > header.kv-master-header .kv-master-brand{
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    flex-basis:46px !important;
    align-self:start !important;
    margin-top:7px !important;
  }
  html body > header.kv-master-header .kv-master-brand img{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    min-height:44px !important;
    max-height:44px !important;
  }
  html body > header.kv-master-header .kv-master-links{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:5px 0 !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
    grid-auto-rows:38px !important;
    align-content:center !important;
    align-items:stretch !important;
    justify-content:stretch !important;
    gap:2px 5px !important;
    overflow:visible !important;
    white-space:normal !important;
    scrollbar-width:none !important;
  }
  html body > header.kv-master-header .kv-master-links a,
  html body > header.kv-master-header .kv-master-links a:visited{
    min-width:0 !important;
    min-height:36px !important;
    height:auto !important;
    padding:3px 2px !important;
    white-space:normal !important;
    text-align:center !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:.055em !important;
    overflow-wrap:anywhere !important;
  }
  html body > header.kv-master-header .kv-master-links a:last-child{
    color:#f4df9b !important;
  }
  .m4-journey{top:96px !important;}
  section[id]{scroll-margin-top:114px !important;}
}
@media (max-width:430px){
  html body > header.kv-master-header .kv-master-nav{width:calc(100% - 14px) !important;grid-template-columns:42px minmax(0,1fr) !important;gap:5px !important;}
  html body > header.kv-master-header .kv-master-brand{width:42px !important;min-width:42px !important;max-width:42px !important;}
  html body > header.kv-master-header .kv-master-brand img{width:40px !important;height:40px !important;min-width:40px !important;max-width:40px !important;min-height:40px !important;max-height:40px !important;}
  html body > header.kv-master-header .kv-master-links{gap:2px 3px !important;}
  html body > header.kv-master-header .kv-master-links a,
  html body > header.kv-master-header .kv-master-links a:visited{font-size:8px !important;letter-spacing:.035em !important;}
}

/* KAVIREN WORDMARK LOCKUP V2 — 2026-10-06
   Refined metallic-gold KAVIREN name beside the existing logo.
   CSS-only; no per-page HTML changes. */
body>.kv-master-header .kv-master-brand::after{
  content:"KAVIREN";
  display:block;
  margin-left:9px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  line-height:1;
  font-weight:600;
  letter-spacing:.135em;
  white-space:nowrap;
  color:#e9c86a;
  background:linear-gradient(180deg,#fff3bd 0%,#f5d87c 22%,#d6a83e 52%,#f4d978 76%,#b98224 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 1px 0 rgba(255,242,181,.22)) drop-shadow(0 0 5px rgba(213,164,54,.16));
  pointer-events:none;
}
@media (min-width:821px){
  body>.kv-master-header .kv-master-brand{
    width:178px !important;
    min-width:178px !important;
    max-width:178px !important;
    flex:0 0 178px !important;
  }
}
@media (max-width:820px){
  html body > header.kv-master-header .kv-master-brand::after{
    margin-left:5px;
    font-size:11px;
    font-weight:600;
    letter-spacing:.075em;
    filter:drop-shadow(0 0 4px rgba(213,164,54,.14));
  }
  html body > header.kv-master-header .kv-master-nav{
    grid-template-columns:102px minmax(0,1fr) !important;
  }
  html body > header.kv-master-header .kv-master-brand{
    width:102px !important;
    min-width:102px !important;
    max-width:102px !important;
    flex-basis:102px !important;
  }
}
@media (max-width:430px){
  html body > header.kv-master-header .kv-master-nav{
    grid-template-columns:90px minmax(0,1fr) !important;
  }
  html body > header.kv-master-header .kv-master-brand{
    width:90px !important;
    min-width:90px !important;
    max-width:90px !important;
    flex-basis:90px !important;
  }
  html body > header.kv-master-header .kv-master-brand::after{
    margin-left:4px;
    font-size:9px;
    letter-spacing:.055em;
  }
}

/* KAVIREN GOLD LOGO ENHANCEMENT V1 — 2026-10-06
   Render-only enhancement of the approved logo asset: warmer metallic gold,
   slightly stronger dimensional contrast, and restrained luminosity. */
body>.kv-master-header .kv-master-brand img{
  filter:
    saturate(1.18)
    contrast(1.08)
    brightness(1.07)
    sepia(.08)
    drop-shadow(0 0 4px rgba(231,184,72,.28))
    drop-shadow(0 2px 7px rgba(184,123,20,.18)) !important;
}

@media (max-width:820px){
  html body > header.kv-master-header .kv-master-brand img{
    filter:
      saturate(1.14)
      contrast(1.06)
      brightness(1.05)
      sepia(.06)
      drop-shadow(0 0 3px rgba(231,184,72,.22))
      drop-shadow(0 1px 5px rgba(184,123,20,.14)) !important;
  }
}

/* KAVIREN GOLD LOCKUP V4 — brand-link decoration guard only.
   Prevent page-level anchor decoration rules from painting an underline/shade
   beneath the global KAVIREN brand lockup. No geometry or navigation changes. */
body > .kv-master-header .kv-master-brand,
body > .kv-master-header .kv-master-brand:link,
body > .kv-master-header .kv-master-brand:visited,
body > .kv-master-header .kv-master-brand:hover,
body > .kv-master-header .kv-master-brand:focus,
body > .kv-master-header .kv-master-brand:focus-visible,
body > .kv-master-header .kv-master-brand:active {
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

body > .kv-master-header .kv-master-brand::after {
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
