.site-header{
  --site-yellow:#ffbe00;
  --site-ink:#0a0a09;
  position:sticky;
  top:0;
  z-index:1000;
  height:112px;
  padding:0 4vw;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  color:var(--site-ink);
  background:var(--site-yellow);
  border-bottom:1px solid var(--site-ink);
  font-family:"DM Sans",system-ui,-apple-system,sans-serif;
  box-sizing:border-box;
  width:100%;
}
.site-header *{box-sizing:border-box}
.site-header__brand{display:block;width:auto;line-height:1;flex:none;text-decoration:none}
.site-header__brand img{display:block;width:100%;height:auto}
.site-header__nav{display:flex;align-items:center;gap:clamp(17px,2.15vw,32px)}
.site-header__nav a{
  position:relative;
  color:inherit;
  text-decoration:none;
  font-size:12px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
}
.site-header__nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:right .2s ease}
.site-header__nav a:hover::after,.site-header__nav a[aria-current="page"]::after{right:0}
.site-header__toggle{display:none;border:1px solid var(--site-ink);background:transparent;color:var(--site-ink);padding:.65rem .8rem;font:600 12px/1 "DM Sans",system-ui,sans-serif;cursor:pointer}
.site-header--internship{position:sticky;top:0}
.site-header--internship .site-header__brand{width:auto}
.site-header--internship .site-header__brand img{max-height:72px;object-fit:contain}
.site-header__jmac{display:block;color:var(--site-ink);font:700 clamp(2.25rem,4vw,3.35rem)/1 "Cinzel",Georgia,serif;letter-spacing:.015em}
.site-header--internship .site-header__nav{gap:clamp(12px,1.5vw,22px)}
.site-header__group{position:relative;display:flex;align-items:center}
.site-header__group>a{display:inline-flex;align-items:center;gap:.35rem}
.site-header__group>a span{font-size:.85em;transition:transform .2s ease}
.site-header__submenu{
  position:absolute;
  top:calc(100% + 18px);
  left:0;
  display:none;
  min-width:230px;
  padding:8px;
  background:var(--site-yellow);
  border:1px solid var(--site-ink);
  box-shadow:10px 10px 0 rgba(10,10,9,.14);
}
.site-header__submenu::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:20px}
.site-header__submenu a{display:block;padding:.85rem .9rem;font-size:12px!important;line-height:1.25}
.site-header__group:hover .site-header__submenu,.site-header__group:focus-within .site-header__submenu{display:block}
.site-header__group:hover>a span,.site-header__group:focus-within>a span{transform:rotate(180deg)}
.site-header__nav .site-header__login{padding:.72rem .9rem;border:1px solid currentColor}
.site-header__nav .site-header__login::after{display:none}
.site-header__nav .site-header__login:hover{background:var(--site-ink);color:var(--site-yellow)}
.site-header-present #root .nav,.site-header-present #root .mobile-menu{display:none!important}

@media(max-width:1360px) and (min-width:761px){
  .site-header{padding-inline:20px;gap:1rem}
  .site-header--internship .site-header__nav{gap:12px}
  .site-header__nav a{font-size:11px}
}

@media(max-width:760px){
  .site-header{height:88px;padding:0 20px;gap:1rem}
  .site-header__brand{width:min(210px,64vw)}
  .site-header--internship .site-header__brand{width:auto}
  .site-header__jmac{font-size:2.35rem}
  .site-header__toggle{display:inline-flex;align-items:center;gap:.45rem}
  .site-header__toggle span{font-size:16px;line-height:.7;transition:transform .2s ease}
  .site-header.is-open .site-header__toggle span{transform:rotate(45deg)}
  .site-header__nav{
    position:absolute;
    top:100%;left:0;right:0;
    display:none;
    padding:20px;
    background:var(--site-yellow);
    border-top:1px solid var(--site-ink);
    border-bottom:1px solid var(--site-ink);
  }
  .site-header.is-open .site-header__nav{display:grid}
  .site-header__nav a{font-size:18px;padding:11px 0;border-bottom:1px solid rgba(10,10,9,.25)}
  .site-header__nav a:last-child{border-bottom:0}
  .site-header__group{display:grid;border-bottom:1px solid rgba(10,10,9,.25)}
  .site-header__group>a{border-bottom:0}
  .site-header__submenu{position:static;display:grid;min-width:0;padding:0 0 .5rem 1rem;border:0;border-left:1px solid rgba(10,10,9,.35);box-shadow:none}
  .site-header__submenu::before{display:none}
  .site-header__submenu a{font-size:16px!important;padding:9px 0;border-bottom:0}
  .site-header__nav .site-header__login{margin-top:.5rem;text-align:center;border:1px solid var(--site-ink)}
  .site-header__nav a::after{display:none}
}

@media(prefers-reduced-motion:reduce){.site-header *{transition:none!important}}
