.nc-megawrap {
  position: absolute; left: 0; right: 0; top: 100%;
  display: flex; justify-content: center;
  padding: 0 var(--nc-gutter);
  z-index: 120;
  opacity: 0; visibility: hidden; transform: translateY(-8px);
  transition: opacity 0.24s var(--nc-ease), transform 0.24s var(--nc-ease), visibility 0.24s;
  pointer-events: none;
}
.nc-header.mega-open .nc-megawrap { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }

.nc-mega {
  width: 100%; max-width: var(--nc-maxw-wide);
  margin-top: 1px;
  background: #fff; border-radius: 0 0 var(--nc-r-xl) var(--nc-r-xl);
  box-shadow: 0 26px 50px -16px rgba(44,33,27,0.22);
  overflow: hidden;
}
.nc-mega__panel { display: none; }
.nc-mega__panel.is-active { display: grid; }

.nc-mega__panel { grid-template-columns: 1fr 380px; }
.nc-mega__main { padding: 30px 34px 32px; }
.nc-mega__rail { position: relative; padding: 30px 30px 32px; overflow: hidden;
  background: radial-gradient(130% 120% at 85% 0%, #46372d 0%, var(--nc-ink) 58%); color: #fff; }

.nc-mega__eyebrow { font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600;
  color: var(--nc-red); display: inline-flex; align-items: center; gap: 8px; margin-bottom: 18px; }
.nc-mega__eyebrow img { width: 13px; height: 13px; }

.nc-mega__cols { display: grid; gap: 14px 30px; }
.nc-mega__cols.c3 { grid-template-columns: repeat(3, 1fr); }
.nc-mega__cols.c2 { grid-template-columns: repeat(2, 1fr); }
.nc-mega__cat { break-inside: avoid; }
.nc-mega__cathead { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.nc-mega__catchip { width: 34px; height: 34px; border-radius: 10px; flex: none;
  background: var(--nc-red-050); color: var(--nc-red); display: inline-flex; align-items: center; justify-content: center; }
.nc-mega__catchip .ic { width: 17px; height: 17px; stroke-width: 2; }
.nc-mega__catname { font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--nc-fg-3); }
.nc-mega__list { display: flex; flex-direction: column; gap: 2px; }
.nc-mega__link { position: relative; display: flex; align-items: center; gap: 8px; padding: 8px 28px 8px 0; border-radius: var(--nc-r-sm); white-space: nowrap;
  font-size: 0.95rem; font-weight: 500; color: var(--nc-ink); transition: color 0.18s; }
.nc-mega__link .ic { width: 16px; height: 16px; color: var(--nc-fg-3); transition: color 0.18s; flex: none; }
.nc-mega__link .arr { position: absolute; right: 4px; top: 50%; margin-top: -7.5px; opacity: 0; transform: translateX(-4px); transition: opacity 0.18s, transform 0.18s; width: 15px; height: 15px; color: var(--nc-red); }
.nc-mega__link:hover { color: var(--nc-red); }
.nc-mega__link:hover .ic { color: var(--nc-red); }
.nc-mega__link:hover .arr { opacity: 1; transform: none; }
.nc-mega__link span.sub { display: block; font-size: 0.8rem; font-weight: 400; color: var(--nc-fg-3); margin-top: 1px; }

.nc-mega__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.nc-mega__card { display: flex; gap: 13px; align-items: flex-start; padding: 14px; border-radius: var(--nc-r-md);
  background: var(--nc-bg-alt); transition: background 0.18s var(--nc-ease), transform 0.18s var(--nc-ease); }
.nc-mega__card:hover { background: var(--nc-n-100); transform: translateY(-2px); }
.nc-mega__card .nc-mega__catchip { width: 40px; height: 40px; border-radius: 12px; background: #fff; color: var(--nc-red); }
.nc-mega__card:hover .nc-mega__catchip { background: #fff; }
.nc-mega__card .nc-mega__catchip .ic { width: 19px; height: 19px; }
.nc-mega__cardbody b { display: flex; align-items: center; gap: 6px; font-size: 0.97rem; font-weight: 650; color: var(--nc-ink); }
.nc-mega__cardbody b .arr { width: 15px; height: 15px; color: var(--nc-red); opacity: 0; transform: translateX(-4px); transition: opacity 0.18s, transform 0.18s; }
.nc-mega__card:hover .nc-mega__cardbody b .arr { opacity: 1; transform: none; }
.nc-mega__cardbody p { font-size: 0.85rem; color: var(--nc-fg-2); margin-top: 3px; line-height: 1.45; }

.nc-mega__rail .star { position: absolute; right: -18px; bottom: -18px; width: 120px; opacity: 0.10; filter: brightness(0) invert(1); }
.nc-mega__raileyebrow { font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600;
  color: #fff; opacity: 0.66; display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; }
.nc-mega__railimg { width: 100%; height: 132px; border-radius: var(--nc-r-md); object-fit: cover; margin-bottom: 16px; }
.nc-mega__rail h4 { font-size: 1.2rem; line-height: 1.18; margin-bottom: 8px; position: relative; }
.nc-mega__rail p { font-size: 0.9rem; color: var(--nc-on-dark-2); line-height: 1.5; position: relative; }
.nc-mega__railcta { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-weight: 600; font-size: 0.95rem; color: #fff; position: relative; }
.nc-mega__railcta .ic { width: 16px; height: 16px; transition: transform 0.2s var(--nc-ease); }
.nc-mega__railcta:hover .ic { transform: translateX(4px); }
.nc-mega__railperson { display: flex; align-items: center; gap: 12px; margin-top: 18px; position: relative; }
.nc-mega__railperson img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.nc-mega__railperson b { display: block; font-size: 0.92rem; }
.nc-mega__railperson span { font-size: 0.8rem; color: var(--nc-on-dark-2); }

.nc-megabackdrop { display: none; }

.nc-nav a.mega-active { color: var(--nc-ink); }
.nc-nav a.mega-active::after { transform: scaleX(1); }
.nc-nav a.mega-active .caret { transform: rotate(180deg); }

@media (max-width: 1080px) {
  .nc-megawrap, .nc-megabackdrop { display: none !important; }
}
