/* LL Mega Menu - stable layout per spec */
:root {
  --llmm-accent: #C6B375;
  --llmm-inner: 1000px;
}

.llmm { position: relative; }
.llmm * { box-sizing: border-box; }

/* Top row */
.llmm__top{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  justify-content: center;
  gap: 1.25rem;
}

.llmm__topItem{ position: static; }

.llmm__topLinkWrap{ display:flex; align-items:center; gap:.35rem; position: relative; }
.llmm__topLink{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding: 1.05rem .15rem;
  text-decoration:none;
  cursor:pointer;
  white-space:nowrap;
  line-height: 1.1;
  transition: color .15s ease;
}

.llmm__badge{
  display:inline-block;
  font-size:.72em;
  line-height:1;
  padding:.28em .6em;
  border-radius:999px;
  border:1px solid currentColor;
  opacity:.75;
}

.llmm__toggle{
  display:none;
  width: 2.25rem;
  height: 2.25rem;
  border:0;
  background:transparent;
  cursor:pointer;
  position: relative;
  border-radius: .5rem;
}
.llmm__toggle:before{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:.46rem;
  height:.46rem;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform: rotate(45deg);
}

/* ===== Panel: full width, no left indent ===== */
.llmm__panel{
  display:none;
  position: fixed; /* viewport-anchored to avoid header/container transforms */
  left: 0;
  right: 0;
  width: 100%;
  z-index: 9999;

  background:#fff;
  border-top: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 18px 45px rgba(0,0,0,.12);
}

/* Inner container 1000px */
.llmm__panelInner{
  width: 100%;
  max-width: var(--llmm-inner);
  margin: 0 auto;
  padding: 1.4rem 0 1.7rem 0; /* no left padding, per spec */
}

/* 3 columns */
.llmm__cols{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
  align-items:start;
}

.llmm__col{ min-width:0; }
.llmm__colHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.6rem;
  padding: 0 0 .6rem 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
.llmm__colTitle{
  font-weight: 700 !important;
  text-decoration:none;
  line-height:1.15;
  font-size: 1.02rem;
  letter-spacing: .01em;
  transition: color .15s ease;
}

.llmm__links{
  list-style:none;
  margin: .75rem 0 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap: .35rem;
}
.llmm__linkItem{ min-width:0; }
.llmm__link{
  text-decoration:none;
  display:flex;
  align-items:flex-start;
  gap:.5rem;
  padding: .18rem 0 .18rem .75rem;
  line-height:1.25;
  border-radius: .35rem;
  transition: color .15s ease, background-color .15s ease;
}
.llmm__link:before{
  content:"";
  width: .35rem;
  height: .35rem;
  margin-top: .45rem;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.25);
  flex: 0 0 auto;
  opacity: .7;
}

/* Accent hover/focus */
.llmm__topLink:hover,
.llmm__topLink:focus,
.llmm__colTitle:hover,
.llmm__colTitle:focus,
.llmm__link:hover,
.llmm__link:focus{
  color: var(--llmm-accent);
  text-decoration: none;
}

/* Open state */
.llmm__topItem.is-open > .llmm__panel{ display:block; }
.llmm__topItem.is-open > .llmm__topLinkWrap .llmm__topLink{ color: var(--llmm-accent); }

/* Burger (icon only) */
.llmm__burger{
  display:none;
  width: 44px;
  height: 44px;
  align-items:center;
  justify-content:center;
  border:0;
  background:transparent;
  cursor:pointer;
  padding:0;
}
.llmm__burgerIcon{
  position: relative;
  display:block;
  width: 22px;
  height: 2px;
  background: currentColor;
  border-radius: 999px;
}
.llmm__burgerIcon:before,
.llmm__burgerIcon:after{
  content:"";
  position:absolute;
  left:0;
  width: 22px;
  height: 2px;
  background: currentColor;
  border-radius: 999px;
}
.llmm__burgerIcon:before{ top:-7px; }
.llmm__burgerIcon:after{ top:7px; }

/* Responsive */
@media (max-width: 1100px){
  .llmm__panelInner{ max-width: 100%; padding-left: .75rem; padding-right: .75rem; }
  .llmm__cols{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px){
  .llmm__cols{ grid-template-columns: 1fr; }
}

@media (max-width: 991px){
  .llmm__burger{ display:flex; }

  .llmm__top{
    display:none;
    justify-content:flex-start;
    gap:0;
  }

  .llmm.is-mobile-open .llmm__top{
    display:flex;
    position:absolute;
    left:0;
    right:0;
    top:100%;
    background:#fff;
    box-shadow: 0 18px 45px rgba(0,0,0,.12);
    border-top: 1px solid rgba(0,0,0,.08);
    padding: .25rem .75rem;
    z-index: 9999;

    flex-direction:column;
    align-items:stretch;
  }

  .llmm__topLinkWrap{ justify-content: space-between; padding: .15rem 0; }
  .llmm__topLink{ padding: .95rem .25rem; width:100%; justify-content: space-between; }
  .llmm__toggle{ display:inline-flex; margin-right: .25rem; }

  /* panel becomes in-flow on mobile */
  .llmm__panel{ position: static; left:auto; right:auto; width:auto; box-shadow:none; border-top:0; }
  .llmm__panelInner{ padding: .65rem .25rem 1.15rem .25rem; max-width: 100%; }
}
