/* =========================================================================
   IE'27 — Header & footer
   ========================================================================= */

/* ---- Header ---- */
.ie27-header{
  position:sticky;top:0;z-index:50;
  background:rgba(26,35,64,.85);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--ie-line-dark);
}
.ie27-nav{
  display:flex;align-items:center;justify-content:space-between;
  height:var(--ie-header-h);color:#fff;
}
.ie27-brand{
  display:flex;align-items:baseline;gap:.55rem;
  font-family:var(--ie-font-display);font-weight:700;font-size:1.35rem;letter-spacing:-.03em;color:#fff;
}
.ie27-brand__mark span{color:var(--ie-gold)}
.ie27-brand__sub{
  font-family:var(--ie-font-body);font-weight:500;font-size:.66rem;letter-spacing:.18em;
  color:rgba(255,255,255,.55);text-transform:uppercase;
}

/* Menu */
.ie27-menu{display:flex;gap:1.5rem;align-items:center;font-size:.9rem;font-weight:500}
.ie27-menu>li{position:relative}
.ie27-menu a{color:rgba(255,255,255,.82);transition:color .2s;position:relative;display:inline-flex;align-items:center;gap:.3rem;padding:.5rem 0}
.ie27-menu a:hover,.ie27-menu .current-menu-item>a{color:#fff}
.ie27-menu>li>a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--ie-gold);transition:width .25s}
.ie27-menu>li:hover>a::after,.ie27-menu>li.current-menu-item>a::after{width:100%}

/* Dropdowns */
.ie27-menu .sub-menu{
  position:absolute;top:100%;left:0;min-width:220px;
  background:var(--ie-indigo-2);border:1px solid var(--ie-line-dark);
  border-radius:var(--ie-r-sm);padding:.5rem;
  box-shadow:var(--ie-shadow);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .2s,transform .2s,visibility .2s;
  display:flex;flex-direction:column;gap:.15rem;
}
.ie27-menu li:hover>.sub-menu,.ie27-menu li:focus-within>.sub-menu{
  opacity:1;visibility:visible;transform:translateY(0);
}
.ie27-menu .sub-menu a{padding:.55rem .7rem;border-radius:8px;font-size:.88rem}
.ie27-menu .sub-menu a:hover{background:rgba(255,255,255,.06)}
.ie27-menu .menu-item-has-children>a::before{
  content:"";display:inline-block;order:2;margin-left:.25rem;
  width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);opacity:.6;
}

.ie27-nav__cta .ie27-btn{padding:.6rem 1.15rem;font-size:.85rem}

/* Burger */
.ie27-burger{
  display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;
}
.ie27-burger span{width:24px;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .25s}
.ie27-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.ie27-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.ie27-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---- Footer ---- */
.ie27-footer{
  background:var(--ie-indigo);color:rgba(255,255,255,.72);
  padding:64px 0 32px;border-top:1px solid var(--ie-line-dark);
}
.ie27-footer__top{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;
  padding-bottom:40px;border-bottom:1px solid var(--ie-line-dark);
}
.ie27-footer__brand .ie27-brand{margin-bottom:14px}
.ie27-footer__brand p{font-size:.9rem;max-width:34ch}
.ie27-footer__col h5{
  color:#fff;font-family:var(--ie-font-display);font-size:.85rem;
  letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px;
}
.ie27-footer__col a{display:block;font-size:.9rem;padding:5px 0;transition:color .2s}
.ie27-footer__col a:hover{color:var(--ie-gold)}
.ie27-footer__bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:26px;font-size:.82rem;flex-wrap:wrap;gap:12px;
}
.ie27-socials{display:flex;gap:12px}
.ie27-socials a{
  width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.07);
  display:flex;align-items:center;justify-content:center;color:#fff;
  font-family:var(--ie-font-display);font-weight:600;font-size:.8rem;transition:background .2s;
}
.ie27-socials a:hover{background:var(--ie-blue)}

@media (max-width:900px){
  .ie27-burger{display:flex}
  .ie27-nav__cta{display:none}
  .ie27-menu{
    position:fixed;inset:var(--ie-header-h) 0 0 0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--ie-indigo);padding:1rem var(--ie-gutter);
    transform:translateX(100%);transition:transform .3s;overflow-y:auto;
  }
  .ie27-menu.is-open{transform:translateX(0)}
  .ie27-menu>li{border-bottom:1px solid var(--ie-line-dark)}
  .ie27-menu>li>a{padding:1rem 0;font-size:1.05rem}
  .ie27-menu .sub-menu{
    position:static;opacity:1;visibility:visible;transform:none;
    background:transparent;border:0;box-shadow:none;padding:0 0 .75rem 1rem;
  }
  .ie27-footer__top{grid-template-columns:1fr;gap:28px}
}
