/* Home page menu: mega-menu Experiences dropdown, sliding nav pill, tile-style mobile submenu. */

/* ---- Nav links: sliding pill replaces the underline ---- */
.om-nav-v2{position:relative}
.om-nav-link-v2{z-index:1}
.om-nav-link-v2::after{display:none}
.om-nav-link-v2:focus{outline:none}
.om-nav-link-v2:focus-visible{outline:none;text-decoration:underline;text-decoration-color:#e11d74;text-underline-offset:6px}
.om-mega-pill{position:absolute;left:0;top:0;height:38px;border-radius:9999px;pointer-events:none;z-index:0;opacity:0;
  background:linear-gradient(135deg,rgba(225,29,116,.10),rgba(157,23,77,.10));box-shadow:inset 0 0 0 1px rgba(225,29,116,.14);
  transition:transform .45s cubic-bezier(.34,1.4,.64,1),width .45s cubic-bezier(.34,1.4,.64,1),opacity .25s ease}
.om-mega-pill.is-on{opacity:1}

/* ---- Mega menu (desktop) ---- */
@media (min-width:1025px){
  .om-nav-item-v2{position:static}
  /* Fixed = anchored to the full-width header (its backdrop-filter makes it the containing block), so the menu centres on the page. */
  .om-dropdown-v2{
    position:fixed;top:68px;left:50%;width:min(980px,calc(100vw - 48px));padding:14px;border-radius:26px;
    display:grid;grid-template-columns:250px repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:10px;
    background:#fff;border:1px solid rgba(225,29,116,.10);
    box-shadow:0 30px 80px -20px rgba(74,29,46,.28),0 12px 30px -12px rgba(225,29,116,.22);
    transform:translateX(-50%) translateY(14px) scale(.98);transform-origin:50% 0;
    transition:opacity .3s ease,visibility .3s ease,transform .45s cubic-bezier(.22,1,.36,1)}
  .om-dropdown-v2::before{top:-14px;height:14px}
  .om-nav-item-v2:hover .om-dropdown-v2,.om-nav-item-v2:focus-within .om-dropdown-v2{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0) scale(1)}
  .om-nav-item-v2:focus-within .om-nav-chevron{transform:rotate(180deg)}

  /* Featured panel */
  .om-mega-feature{grid-column:1;grid-row:1 / span 5;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;
    padding:1.4rem;border-radius:20px;text-decoration:none;color:#fff;min-height:100%;
    background:linear-gradient(150deg,#ec4899 0%,#e11d74 38%,#9d174d 100%);box-shadow:0 14px 34px -14px rgba(225,29,116,.6)}
  .om-mega-feature::before{content:'';position:absolute;width:220px;height:220px;border-radius:50%;top:-70px;right:-80px;background:radial-gradient(circle,rgba(255,255,255,.35),transparent 70%);animation:om-mega-orb 6s ease-in-out infinite}
  .om-mega-feature::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);background-size:250% 100%;background-position:200% 0;transition:background-position .9s ease}
  .om-mega-feature:hover::after{background-position:-60% 0}
  .om-mega-feature-label{position:absolute;top:1.1rem;left:1.1rem;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .6rem;border-radius:9999px;background:rgba(255,255,255,.22);backdrop-filter:blur(6px)}
  .om-mega-feature-emoji{font-size:3.2rem;line-height:1;margin-bottom:.4rem;filter:drop-shadow(0 8px 14px rgba(0,0,0,.2));animation:om-mega-bob 3s ease-in-out infinite;align-self:flex-start}
  .om-mega-feature-title{font-size:1.15rem;font-weight:800;line-height:1.2}
  .om-mega-feature-text{font-size:.8rem;line-height:1.45;opacity:.9}
  .om-mega-feature-cta{margin-top:.6rem;align-self:flex-start;display:inline-flex;gap:.35rem;align-items:center;font-size:.8rem;font-weight:800;color:#e11d74;background:#fff;padding:.5rem .9rem;border-radius:9999px;box-shadow:0 6px 16px rgba(0,0,0,.12)}
  .om-mega-feature-cta span{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
  .om-mega-feature:hover .om-mega-feature-cta span{transform:translateX(4px)}

  .om-dropdown-header-v2{grid-column:2 / -1;margin:0;padding:.55rem .6rem .55rem;border-bottom:1px solid rgba(225,29,116,.08)}

  /* Experience tiles */
  .om-drop-item-v2{flex-direction:column;align-items:flex-start;gap:.6rem;padding:.9rem;border-radius:16px;border:1px solid rgba(225,29,116,.08);background:#fffafb;position:relative;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s ease,background .3s ease;
    opacity:0;translate:0 10px}
  .om-nav-item-v2:hover .om-drop-item-v2,.om-nav-item-v2:focus-within .om-drop-item-v2{opacity:1;translate:0 0;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s ease,background .3s ease,opacity .4s ease var(--d,0s),translate .5s cubic-bezier(.22,1,.36,1) var(--d,0s)}
  .om-drop-item-v2:nth-child(3){--d:.04s}.om-drop-item-v2:nth-child(4){--d:.08s}.om-drop-item-v2:nth-child(5){--d:.12s}
  .om-drop-item-v2:nth-child(6){--d:.16s}.om-drop-item-v2:nth-child(7){--d:.2s}.om-drop-item-v2:nth-child(8){--d:.24s}
  .om-drop-item-v2:nth-child(9){--d:.28s}.om-drop-item-v2:nth-child(10){--d:.32s}.om-drop-item-v2:nth-child(11){--d:.36s}
  .om-drop-item-v2:hover,.om-drop-item-v2:focus-visible{transform:translateY(-4px);background:#fff;border-color:rgba(225,29,116,.28);box-shadow:0 14px 30px -12px rgba(225,29,116,.35);outline:none}
  .om-drop-emoji{width:44px;height:44px;border-radius:13px;font-size:1.3rem;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
  .om-drop-item-v2:hover .om-drop-emoji{transform:rotate(-8deg) scale(1.12)}
  .om-drop-title-row{flex-wrap:wrap}
  .om-drop-item-v2 .om-drop-title{font-size:.9rem}
  .om-drop-item-v2:hover .om-drop-title{color:#e11d74}
  .om-drop-item-v2::after{content:'→';position:absolute;top:.85rem;right:.9rem;font-weight:800;color:#e11d74;opacity:0;transform:translateX(-6px);transition:opacity .25s ease,transform .3s ease}
  .om-drop-item-v2:hover::after{opacity:1;transform:none}

  .om-drop-footer{grid-column:2 / -1;margin:0;padding-top:.4rem;border-top:1px solid rgba(225,29,116,.08)}
  .om-drop-view-all{background:linear-gradient(135deg,#fff1f4,#fdf0f5)}
  .om-drop-view-all:hover{background:linear-gradient(135deg,#fde2ea,#fce4ee)}
}

@keyframes om-mega-orb{0%,100%{transform:translate(0,0)}50%{transform:translate(-20px,18px)}}
@keyframes om-mega-bob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-6px) rotate(4deg)}}

/* ---- Mobile menu: matching tile grid ---- */
.om-mobile-link:focus:not(:focus-visible),.om-mobile-subitem:focus:not(:focus-visible){outline:none}
.om-mobile-link:focus-visible,.om-mobile-subitem:focus-visible{outline:2px solid #e11d74;outline-offset:2px}
.om-mobile-link{border:1px solid transparent}
.om-mobile-section.expanded>.om-mobile-link{background:linear-gradient(135deg,rgba(225,29,116,.08),rgba(157,23,77,.08));color:#e11d74;border-color:rgba(225,29,116,.12)}
.om-mobile-submenu{padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.om-mobile-section.expanded .om-mobile-submenu{padding:.6rem 0 .4rem}
.om-mobile-subitem{position:relative;flex-direction:column;align-items:flex-start;gap:.5rem;margin:0;padding:.8rem;border-radius:14px;border:1px solid rgba(225,29,116,.1);background:#fffafb;font-size:.84rem;font-weight:600;color:#4a1d2e;line-height:1.25}
.om-mobile-subitem:active,.om-mobile-subitem:hover{transform:scale(.97);background:#fff;border-color:rgba(225,29,116,.3);box-shadow:0 8px 20px -10px rgba(225,29,116,.4)}
.om-mobile-sub-emoji{width:38px;height:38px;border-radius:11px;font-size:1.1rem}
.om-mobile-subitem .om-mobile-badge{position:absolute;top:.6rem;right:.6rem;margin:0}
.om-mobile-subitem{opacity:0;translate:0 8px;transition:all .25s ease,opacity .35s ease,translate .45s cubic-bezier(.22,1,.36,1)}
.om-mobile-menu-v2.active .om-mobile-section.expanded .om-mobile-subitem{opacity:1;translate:0 0}
.om-mobile-subitem:nth-child(1){transition-delay:0s,.2s,.2s}.om-mobile-subitem:nth-child(2){transition-delay:0s,.24s,.24s}
.om-mobile-subitem:nth-child(3){transition-delay:0s,.28s,.28s}.om-mobile-subitem:nth-child(4){transition-delay:0s,.32s,.32s}
.om-mobile-subitem:nth-child(5){transition-delay:0s,.36s,.36s}.om-mobile-subitem:nth-child(6){transition-delay:0s,.4s,.4s}
.om-mobile-subitem:nth-child(7){transition-delay:0s,.44s,.44s}.om-mobile-subitem:nth-child(8){transition-delay:0s,.48s,.48s}
.om-mobile-subitem:nth-child(9){transition-delay:0s,.52s,.52s}

@media (prefers-reduced-motion:reduce){
  .om-mega-feature::before,.om-mega-feature-emoji{animation:none}
  .om-drop-item-v2,.om-mobile-subitem{opacity:1!important;translate:none!important}
  .om-mega-pill{transition:none}
}
