/* ============ Main navigation (uppercase, letter-spaced) ============ */
.nav-caps { gap: 2px; }
.nav-caps > li > a {
  text-transform: uppercase; letter-spacing: .09em; font-size: 13.5px; font-weight: 500;
  color: var(--brand-d); padding: 10px 13px; border-radius: 10px; background: none;
}
.nav-caps > li > a:hover, .nav-caps > li > a.active { color: var(--brand); background: var(--cream); }
.nav-caps > li > a.active { box-shadow: inset 0 -2px 0 var(--gold); border-radius: 10px 10px 4px 4px; }
.nav-caps .caret { width: 13px; height: 13px; margin-left: 2px; transition: transform .2s; }
.nav-caps > li:hover .caret, .nav-caps > li:focus-within .caret { transform: rotate(180deg); }

/* "More" dropdown - right aligned, roomy, like a card */
.nav-caps .more-menu {
  left: auto; right: 0; transform: translateY(6px); min-width: 220px;
  padding: 10px; border-radius: 18px; box-shadow: 0 24px 50px -18px rgba(60, 50, 25, .3);
}
.nav-caps > li:hover .more-menu, .nav-caps > li:focus-within .more-menu { transform: translateY(0); }
.nav-caps .more-menu a { padding: 13px 16px; font-size: 15.5px; color: var(--brand-d); border-radius: 12px; }
.nav-caps .more-menu a:hover, .nav-caps .more-menu a.on { background: var(--cream); color: var(--brand); }

/* "Invitations" mega menu - every category with its sub-categories */
.nav-caps .mega { left: 0; transform: translateY(6px); width: min(640px, 80vw); padding: 14px; border-radius: 18px; }
.nav-caps > li:hover .mega, .nav-caps > li:focus-within .mega { transform: translateY(0); }
.mega-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px 12px; margin-top: 6px; }
.mega-grid > div { display: flex; flex-direction: column; padding: 6px 0; }
.mega .mega-head { font-weight: 700; color: var(--brand-d) !important; text-transform: uppercase; letter-spacing: .07em; font-size: 12.5px !important; }
.mega-grid a { padding: 6px 12px !important; font-size: 14px; }
.nav-caps .mega a.all { border-bottom: 1px solid var(--line); margin-bottom: 4px; }

@media (max-width: 1240px) {
  .nav-caps > li > a { padding: 10px 9px; font-size: 12.5px; letter-spacing: .07em; }
  .header .logo small { display: none; }
}

/* Invitations: simple dropdown when there are no sub-categories */
.nav-caps .inv-menu { left: 0; transform: translateY(6px); min-width: 220px; padding: 10px; border-radius: 18px; }
.nav-caps > li:hover .inv-menu, .nav-caps > li:focus-within .inv-menu { transform: translateY(0); }
.nav-caps .inv-menu a { padding: 12px 16px; font-size: 15.5px; color: var(--brand-d); border-radius: 12px; }
.nav-caps .inv-menu a:hover { background: var(--cream); color: var(--brand); }

/* ============ Language & currency switcher ============ */
.lc { position: relative; flex: none; }
.lc-btn { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 12px; border: 1px solid var(--line); border-radius: 99px; background: #fff; color: var(--brand-d); font: 600 13px/1 var(--f-body); letter-spacing: .06em; cursor: pointer; transition: border-color .2s; }
.lc-btn:hover, .lc.open .lc-btn { border-color: var(--gold); }
.lc-btn svg { width: 16px; height: 16px; }
.lc-btn .caret { width: 12px; height: 12px; transition: transform .2s; }
.lc.open .lc-btn .caret { transform: rotate(180deg); }
.lc-menu { position: absolute; right: 0; top: calc(100% + 10px); width: 300px; background: #fff; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 24px 50px -18px rgba(60, 50, 25, .3); padding: 12px; z-index: 60; opacity: 0; visibility: hidden; transform: translateY(6px); transition: .18s; }
.lc.open .lc-menu { opacity: 1; visibility: visible; transform: none; }
.lc-langs { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.lc-langs button, .lc-curs button { border: 0; background: none; text-align: left; padding: 10px 12px; border-radius: 12px; font: 500 15px/1.2 var(--f-body); color: var(--brand-d); cursor: pointer; }
.lc-langs button:hover { background: var(--cream); }
.lc-langs button.on { background: #f3efe6; font-weight: 700; }
.lc-head { margin: 12px 12px 8px; font-size: 11.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-text); }
.lc-curs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lc-curs button { text-align: center; border: 1px solid var(--line); font-size: 13.5px; letter-spacing: .04em; }
.lc-curs button:hover { border-color: var(--gold); }
.lc-curs button.on { background: var(--brand-d); border-color: var(--brand-d); color: #fff; }
.lc-note { margin: 10px 4px 2px; font-size: 12px; line-height: 1.45; color: var(--muted); }

/* Keep Google Translate's own toolbar/tooltips out of the design */
iframe.skiptranslate, .goog-te-banner-frame, #goog-gt-tt, .goog-te-balloon-frame, .goog-tooltip, .VIpgJd-ZVi9od-ORHb-OEVmcd, .VIpgJd-ZVi9od-aZ2wEe-wOHMyf { display: none !important; }
html.is-translated body { top: 0 !important; position: static !important; }
font[style] { background: none !important; box-shadow: none !important; }

@media (max-width: 960px) {
  .lc { margin-left: auto; }
  .lc-btn { height: 40px; padding: 0 10px; font-size: 12px; }
  .lc-btn .caret { display: none; }
  .lc-menu { position: fixed; left: 12px; right: 12px; top: 120px; width: auto; max-height: calc(100vh - 140px); overflow-y: auto; }
  .menu-btn { margin-left: 8px; }
}

/* Translated pages (Google adds .translated-ltr/-rtl): no letter-spacing/uppercase - it breaks Indic & Arabic scripts */
html.translated-ltr .nav-caps > li > a, html.translated-rtl .nav-caps > li > a,
html.translated-ltr .eyebrow, html.translated-rtl .eyebrow,
html.translated-ltr .lc-head, html.translated-ltr .footer h4, html.translated-rtl .footer h4,
html.translated-ltr .badge, html.translated-ltr .price .from { letter-spacing: 0 !important; text-transform: none !important; }
html.translated-ltr .nav-caps > li > a { font-size: 14.5px; }
@media (max-width: 960px) { .header .menu-btn { flex: none; width: 44px; } .header .logo { min-width: 0; } }
@media (max-width: 380px) { .header .logo span { font-size: 20px; } .lc-btn [data-lc-label] { font-size: 11px; } }
.lc-note a { color: var(--muted); text-decoration: underline; }
