@font-face{font-family:Montserrat;src:url('assets/montserrat-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-garamond-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-garamond-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
/* All component selectors are scoped to ems- for easy integration. */
:root{--ems-violet:#181322;--ems-ivory:#faf5ec;--ems-gold:#e9c574;--ems-focus:#ffe4a0}
body{margin:0;background:var(--ems-ivory)}
.ems-header,.ems-header *{box-sizing:border-box}
.ems-header{position:relative;z-index:20;background:linear-gradient(110deg,var(--ems-violet) 25%,#241a2e 65%,#3c2841 100%);border-bottom:1px solid rgba(221,188,122,.48);color:var(--ems-ivory);font-family:Montserrat,Arial,sans-serif}
.ems-header__inner{max-width:1440px;min-height:74px;margin-inline:auto;padding-inline:54px 114px;display:flex;align-items:center;gap:44px}
.ems-brand{display:flex;align-items:center;flex:0 0 286px;line-height:0;text-decoration:none}
.ems-brand img{display:block;width:100%;height:60px;object-fit:contain}
.ems-navigation{flex:1;display:flex;align-items:center;justify-content:space-between;gap:40px}
.ems-navigation__links{display:flex;align-items:center;justify-content:space-between;flex:1;gap:20px;list-style:none;padding:0;margin:0}
.ems-navigation__links a{position:relative;display:flex;align-items:center;min-height:44px;color:#f6eff8;text-decoration:none;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.4}
.ems-navigation__links a::after{content:'';position:absolute;left:0;right:0;bottom:10px;height:1px;background:var(--ems-gold);transform:scaleX(0);transition:transform .18s ease}
.ems-navigation__links a[aria-current]::after{transform:scaleX(.65);opacity:.65}
.ems-navigation__links a:hover{color:var(--ems-gold)}
.ems-navigation__links a:hover::after{transform:scaleX(1)}
.ems-cta{display:inline-flex;align-items:center;justify-content:center;flex:0 0 260px;min-height:46px;padding:12px 24px;border:1px solid #d5ab53;border-radius:999px;background:linear-gradient(110deg,#f4d88d 0%,#edc973 48%,#e1b660 100%);box-shadow:inset 0 1px 1px #fff3c89c,0 2px 10px #b7812b13;color:#292020;text-decoration:none;text-transform:uppercase;white-space:nowrap;font-size:14px;line-height:1.25;font-weight:700;letter-spacing:.025em;transition:filter .18s ease,box-shadow .18s ease}
.ems-cta:hover{filter:brightness(1.08);box-shadow:inset 0 1px 1px #fff3c89c,0 2px 14px #d4a95833}
.ems-header :is(a,button):focus-visible{outline:2px solid var(--ems-focus);outline-offset:5px;border-radius:4px}
.ems-header .ems-cta:focus-visible{border-radius:999px}
.ems-menu-toggle{display:none}
@media(max-width:1279px) and (min-width:1051px){
 .ems-header__inner{padding-inline:32px;gap:24px}
 .ems-brand{flex-basis:246px}
 .ems-navigation{gap:24px}
 .ems-navigation__links{gap:14px}
 .ems-navigation__links a{font-size:11px}
 .ems-cta{flex-basis:198px;font-size:12px}
}
@media(max-width:1050px){
 .ems-header__inner{min-height:76px;padding:8px 24px;flex-wrap:wrap;justify-content:space-between;gap:0}
 .ems-brand{flex:0 1 250px}
 .ems-brand img{height:58px}
 .ems-menu-toggle:not([hidden]){display:flex;align-items:center;gap:12px;min-width:44px;min-height:44px;padding:8px 0 8px 12px;border:0;background:none;color:var(--ems-ivory);cursor:pointer;font:500 11px Montserrat,Arial,sans-serif;letter-spacing:.04em}
 .ems-menu-toggle__icon{display:flex;position:relative;width:22px;height:18px;flex-direction:column;justify-content:center;gap:6px}
 .ems-menu-toggle__icon span{display:block;height:1px;background:var(--ems-gold);width:22px;transition:transform .18s ease}
 .ems-menu-toggle[aria-expanded='true'] .ems-menu-toggle__icon span:first-child{transform:translateY(3.5px) rotate(45deg)}
 .ems-menu-toggle[aria-expanded='true'] .ems-menu-toggle__icon span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .ems-navigation{flex:0 0 100%;align-items:stretch;flex-direction:column;gap:18px;padding:18px 0 20px;border-top:1px solid #e9c57430;margin-top:8px}
 .ems-header--enhanced .ems-navigation:not(.is-open){display:none}
 .ems-navigation__links{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .ems-navigation__links a{font-size:14px;min-height:48px;padding-inline:8px}
 .ems-navigation__links a::after{display:none}
 .ems-navigation__links a[aria-current]{color:var(--ems-gold)}
 .ems-cta{flex:auto;align-self:stretch;min-height:48px;font-size:12px}
}
@media(max-width:380px){.ems-header__inner{padding-inline:18px}.ems-brand{flex-basis:220px}.ems-menu-toggle__label{display:none}}
@media(prefers-reduced-motion:reduce){.ems-header *,.ems-header *::after{transition:none!important}}
/* Keep the horizontal lockup large while hiding only its surrounding background. */
.ems-brand{height:70px;overflow:hidden}
.ems-brand img{height:auto;mix-blend-mode:lighten}
@media(max-width:1050px){.ems-brand{height:58px}.ems-brand img{height:auto;mix-blend-mode:lighten}}
