@import url('https://fonts.googleapis.com/css2?family=Courgette&family=Hammersmith+One&family=Ubuntu:wght@300;400;500;700&display=swap');

/* Shared navigation: intentionally isolated from Bootstrap/template menu styles. */
#nav-placeholder, #navbar-placeholder { position: sticky; top: 0; z-index: 1100; }
body { overflow-x: clip !important; }
.rmg-navigation {
  /* The transparent mark has black artwork, so the shell itself carries a warm light field. */
  --rmg-forest: #D8D6CE;
  --rmg-forest-soft: #8C7A5E;
  --rmg-gold: #8C7A5E;
  --rmg-sand: #3A382F;
  --rmg-cream: #211F1A;
  --rmg-ink: #211F1A;
  --rmg-rule: rgba(58,56,47,.18);
  color: var(--rmg-cream);
  font-family: 'Ubuntu', sans-serif;
  line-height: 1.3;
  position: relative;
  z-index: 1;
}
.rmg-navigation *, .rmg-navigation *::before, .rmg-navigation *::after { box-sizing: border-box; }
.rmg-navigation a { color: inherit; text-decoration: none; }
.rmg-navigation__switch { position: fixed; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.rmg-desktop { position: relative; z-index: 1; background: var(--rmg-forest); box-shadow: 0 4px 18px rgba(58,56,47,.12); }
.rmg-desktop__notice, .rmg-desktop__main { width: min(1320px, calc(100% - 56px)); margin: 0 auto; }
.rmg-desktop__notice { display: flex; align-items: center; justify-content: space-between; min-height: 32px; border-bottom: 1px solid var(--rmg-rule); color: rgba(33,31,26,.68); font-size: 10px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.rmg-desktop__notice i { color: var(--rmg-gold); margin-right: 7px; }
.rmg-desktop__notice a { color: var(--rmg-sand); }
.rmg-desktop__main { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 35px; min-height: 80px; }
.rmg-brand { display: inline-flex; align-items: center; flex-shrink: 0; }
.rmg-brand__mark { display: grid; width: 128px; aspect-ratio: 2 / 1; padding: 0; overflow: hidden; background: transparent; border: 0; place-items: center; }
.rmg-brand__mark img { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; }
.rmg-desktop__links { display: flex; justify-content: center; align-self: stretch; gap: clamp(18px, 2vw, 34px); margin: 0; padding: 0; list-style: none; }
.rmg-desktop__links > li { display: flex; align-items: center; position: relative; }
.rmg-desktop__link, .rmg-desktop summary { display: inline-flex; align-items: center; gap: 7px; min-height: 80px; border: 0; background: transparent; color: var(--rmg-cream); cursor: pointer; font: 500 11px/1 'Ubuntu', sans-serif; letter-spacing: .11em; text-transform: uppercase; list-style: none; }
.rmg-desktop summary::-webkit-details-marker { display: none; }
.rmg-desktop summary::after { content: '\f078'; color: var(--rmg-gold); font: 900 8px/1 'Font Awesome 6 Free'; transition: transform .2s ease; }
.rmg-desktop details[open] summary::after { transform: rotate(180deg); }
.rmg-desktop__link::after { position: absolute; right: 0; bottom: 20px; left: 0; height: 1px; background: var(--rmg-gold); content: ''; transform: scaleX(0); transition: transform .2s ease; }
.rmg-desktop__link:hover::after, .rmg-desktop__link:focus-visible::after, .rmg-desktop__link.active::after { transform: scaleX(1); }
.rmg-desktop__panel { position: absolute; top: calc(100% - 12px); left: 50%; z-index: 20; display: grid; min-width: 225px; margin: 0; padding: 9px; background: #D8D6CE; border: 1px solid rgba(140,122,94,.38); box-shadow: 0 18px 38px rgba(58,56,47,.22); color: var(--rmg-ink); transform: translateX(-50%); }
.rmg-desktop__panel a { display: flex; align-items: center; min-height: 38px; padding: 8px 12px; color: var(--rmg-ink); font-size: 12px; transition: background .18s ease, color .18s ease; }
.rmg-desktop__panel a:hover, .rmg-desktop__panel a:focus-visible { background: #D8D6CE; color: #211F1A; outline: none; }
.rmg-desktop .rmg-mega-panel { width: 625px; min-width: 625px; grid-template-columns: 220px 1fr; padding: 0; overflow: hidden; transform: translateX(-50%); }
.rmg-mega-panel__feature { position: relative; min-height: 255px; overflow: hidden; background: var(--rmg-forest); color: #D8D6CE; }
.rmg-mega-panel__feature::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(33,31,26,.08) 18%, rgba(33,31,26,.89) 100%); content: ''; }
.rmg-mega-panel__feature img { width: 100%; height: 100%; min-height: 255px; object-fit: cover; }
.rmg-mega-panel__feature div { position: absolute; right: 17px; bottom: 17px; left: 17px; z-index: 1; }
.rmg-mega-panel__feature span, .rmg-mega-panel__eyebrow { display: block; margin: 0 0 8px; color: var(--rmg-gold); font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.rmg-mega-panel__feature strong { display: block; max-width: 160px; font-family: 'Hammersmith One', sans-serif; font-size: 17px; line-height: 1.17; }
.rmg-mega-panel__feature p { margin: 9px 0 0; color: rgba(216,214,206,.78); font-size: 10px; line-height: 1.55; }
.rmg-mega-panel__content { padding: 19px 18px 18px; background: #D8D6CE; }
.rmg-mega-panel__content .rmg-mega-panel__eyebrow { margin-left: 9px; }
.rmg-mega-panel__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px; }
.rmg-desktop__panel .rmg-mega-panel__links a { min-height: 45px; padding: 8px 9px; border-bottom: 1px solid rgba(58,56,47,.1); font-size: 11px; font-weight: 500; }
.rmg-desktop__panel .rmg-mega-panel__links a::after { margin-left: auto; color: var(--rmg-gold); content: '→'; font-size: 14px; opacity: 0; transform: translateX(-4px); transition: opacity .18s ease, transform .18s ease; }
.rmg-desktop__panel .rmg-mega-panel__links a:hover::after, .rmg-desktop__panel .rmg-mega-panel__links a:focus-visible::after { opacity: 1; transform: translateX(0); }
.rmg-desktop__language .rmg-desktop__panel { right: 0; left: auto; min-width: 165px; transform: none; }
.rmg-desktop__language .lang-select.is-active,
.rmg-desktop__language .lang-select[aria-current="true"] { background: #D8D6CE; color: #8C7A5E; }
.rmg-desktop__language .lang-select.is-active::after,
.rmg-desktop__language .lang-select[aria-current="true"]::after { margin-left: auto; color: #8C7A5E; content: '✓'; font-size: .72rem; }
.rmg-desktop__cta, .rmg-drawer__cta { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 43px; padding: 0 19px; border: 1px solid var(--rmg-gold); background: transparent; color: var(--rmg-cream); font: 700 10px/1 'Ubuntu', sans-serif; letter-spacing: .13em; text-transform: uppercase; transition: background .2s ease, color .2s ease; }
.rmg-desktop__cta:hover, .rmg-desktop__cta:focus-visible { background: var(--rmg-gold); color: #D8D6CE; outline: none; }

.rmg-mobile { display: none; }
.rmg-backdrop, .rmg-drawer { display: none !important; }

@media (max-width: 1100px) {
  .rmg-desktop { display: none !important; }
  .rmg-mobile { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; min-height: 70px; padding: 10px 17px; background: var(--rmg-forest); box-shadow: 0 4px 18px rgba(58,56,47,.12); }
  .rmg-mobile .rmg-brand__mark { width: 108px; }
  .rmg-mobile__actions { display: flex; align-items: center; gap: 14px; }
  .rmg-mobile__language { position: relative; }
  .rmg-mobile__language summary { display: inline-flex; align-items: center; justify-content: center; min-width: 58px; min-height: 42px; gap: 6px; padding: 0 10px; border: 1px solid rgba(58,56,47,.42); color: var(--rmg-sand); cursor: pointer; font: 700 10px/1 'Ubuntu', sans-serif; letter-spacing: .1em; list-style: none; }
  .rmg-mobile__language summary::-webkit-details-marker { display: none; }
  .rmg-mobile__language summary i { color: var(--rmg-gold); font-size: 13px; }
  .rmg-mobile__language[open] summary { border-color: var(--rmg-gold); background: rgba(216,214,206,.06); }
  .rmg-mobile__language-panel { position: absolute; top: calc(100% + 10px); right: 0; z-index: 1220; display: grid; width: 166px; padding: 8px; border: 1px solid rgba(140,122,94,.45); background: #D8D6CE; box-shadow: 0 18px 38px rgba(58,56,47,.22); }
  .rmg-mobile__language-panel .lang-select { display: flex; align-items: center; min-height: 36px; padding: 7px 10px; color: var(--rmg-ink); font-size: 12px; font-weight: 500; }
  .rmg-mobile__language-panel .lang-select:hover, .rmg-mobile__language-panel .lang-select:focus-visible { background: #D8D6CE; color: #211F1A; outline: none; }
  .rmg-mobile__language-panel .lang-select.is-active, .rmg-mobile__language-panel .lang-select[aria-current="true"] { background: #D8D6CE; color: #8C7A5E; font-weight: 700; }
  .rmg-mobile__language-panel .lang-select.is-active::after, .rmg-mobile__language-panel .lang-select[aria-current="true"]::after { margin-left: auto; content: '✓'; }
  .rmg-mobile__button { display: grid; width: 42px; height: 42px; border: 1px solid rgba(58,56,47,.42); cursor: pointer; place-items: center; }
  .rmg-mobile__button span, .rmg-mobile__button::before, .rmg-mobile__button::after { display: block; width: 19px; height: 1px; background: var(--rmg-ink); content: ''; transition: transform .22s ease, opacity .22s ease; }
  .rmg-mobile__button { grid-template-rows: repeat(3, 1px); gap: 5px; align-content: center; }
  .rmg-navigation__switch:checked ~ .rmg-mobile .rmg-mobile__button::before { transform: translateY(6px) rotate(45deg); }
  .rmg-navigation__switch:checked ~ .rmg-mobile .rmg-mobile__button span { opacity: 0; }
  .rmg-navigation__switch:checked ~ .rmg-mobile .rmg-mobile__button::after { transform: translateY(-6px) rotate(-45deg); }
  .rmg-backdrop { position: fixed; inset: 0; z-index: 1200; display: block !important; visibility: hidden; background: rgba(33,31,26,.68); opacity: 0; pointer-events: none; transition: opacity .22s ease, visibility .22s ease; }
  .rmg-drawer { position: fixed; top: 0; right: 0; bottom: 0; z-index: 1210; display: flex !important; width: min(405px, 91vw); flex-direction: column; overflow-y: auto; background: #D8D6CE; color: var(--rmg-ink); box-shadow: -18px 0 45px rgba(58,56,47,.25); transform: translateX(105%); visibility: hidden; pointer-events: none; transition: transform .27s cubic-bezier(.2,.75,.25,1), visibility .27s; }
  .rmg-navigation__switch:checked ~ .rmg-backdrop { visibility: visible; opacity: 1; pointer-events: auto; }
  .rmg-navigation__switch:checked ~ .rmg-drawer { transform: translateX(0); visibility: visible; pointer-events: auto; }
  .rmg-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: 23px 23px 20px; border-bottom: 1px solid rgba(33,31,26,.15); }
  .rmg-brand--drawer .rmg-brand__mark { width: 142px; }
  .rmg-drawer__close { display: grid; width: 39px; height: 39px; border: 1px solid rgba(33,31,26,.25); color: var(--rmg-ink); cursor: pointer; font-size: 17px; place-items: center; }
  .rmg-drawer__nav { margin: 0; padding: 10px 23px 18px; list-style: none; }
  .rmg-drawer__nav > li, .rmg-drawer__nav details { border-bottom: 1px solid rgba(33,31,26,.12); }
  .rmg-drawer__nav a, .rmg-drawer__nav summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; color: var(--rmg-ink); cursor: pointer; font-size: 12px; font-weight: 700; letter-spacing: .105em; text-transform: uppercase; list-style: none; }
  .rmg-drawer__nav summary::-webkit-details-marker { display: none; }
  .rmg-drawer__nav summary::after { content: '\f078'; color: var(--rmg-gold); font: 900 10px/1 'Font Awesome 6 Free'; transition: transform .2s ease; }
  .rmg-drawer__nav details[open] > summary::after { transform: rotate(180deg); }
  .rmg-drawer__sub { display: grid; gap: 1px; margin: 0 0 14px 12px; padding: 4px 0 5px 16px; border-left: 1px solid var(--rmg-gold); }
  .rmg-drawer__sub a { display: block; min-height: 0; padding: 9px 0; color: #6B685F; font-size: 13px; font-weight: 400; letter-spacing: 0; text-transform: none; }
  .rmg-drawer__sub .lang-select.is-active,
  .rmg-drawer__sub .lang-select[aria-current="true"] { color: #8C7A5E; font-weight: 700; }
  .rmg-drawer__sub .lang-select.is-active::after,
  .rmg-drawer__sub .lang-select[aria-current="true"]::after { float: right; content: '✓'; }
  .rmg-drawer__foot { margin-top: auto; padding: 23px; border-top: 1px solid rgba(33,31,26,.13); }
  .rmg-drawer__foot p { margin: 0 0 17px; color: #6B685F; font-size: 13px; line-height: 1.65; }
  .rmg-navigation .rmg-drawer__cta { width: 100%; background: var(--rmg-forest); color: var(--rmg-ink); }
  .rmg-drawer__contacts { display: flex; gap: 16px; margin-top: 20px; }
  .rmg-drawer__contacts a { color: var(--rmg-forest); font-size: 17px; }
}
@media (min-width: 1101px) and (max-width: 1260px) { .rmg-desktop__main { gap: 22px; } .rmg-desktop__links { gap: 18px; } .rmg-desktop .rmg-mega-panel { width: 570px; min-width: 570px; grid-template-columns: 196px 1fr; } }
@media (max-width: 470px) { .rmg-mobile { min-height: 65px; padding-inline: 14px; } .rmg-mobile .rmg-brand__mark { width: 96px; } .rmg-mobile__actions { gap: 11px; } .rmg-drawer__head, .rmg-drawer__foot { padding-inline: 19px; } .rmg-drawer__nav { padding-inline: 19px; } }
@media (min-width: 1101px) { .rmg-mobile, .rmg-backdrop, .rmg-drawer { display: none !important; } }
@media (prefers-reduced-motion: reduce) { .rmg-navigation *, .rmg-navigation *::before, .rmg-navigation *::after { transition: none !important; } }

/* The translation widget is controlled by the custom language menus. Hide
   Google's injected toolbar so it never shifts or covers the navigation. */
html, body { top: 0 !important; }
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame,
.skiptranslate > iframe,
#goog-gt-tt,
.goog-te-balloon-frame { display: none !important; visibility: hidden !important; }
.goog-text-highlight { background: transparent !important; box-shadow: none !important; }
