.mrazen-menu-widget{display:inline-block}.mrazen-menu-trigger{border:0;cursor:pointer;display:inline-flex;gap:10px;align-items:center;padding:12px 18px;border-radius:8px;font-size:16px;line-height:1}.mrazen-burger{width:22px;display:grid;gap:4px}.mrazen-burger span{display:block;height:2px;background:currentColor}.mrazen-menu-panel{position:fixed;inset:0;z-index:999999;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,visibility .28s ease}.mrazen-menu-widget.is-open .mrazen-menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mrazen-menu-panel-inner{height:100vh;overflow:hidden;overscroll-behavior:contain;padding:20px 26px 18px}.mrazen-menu-content{height:100%;min-height:0;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center}.mrazen-menu-close{position:absolute;top:18px;right:20px;width:44px;height:44px;border:0;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-size:34px;line-height:1;cursor:pointer}.mrazen-logo-box{min-height:88px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;padding:14px}.mrazen-logo-box img{max-width:100%;max-height:105px;object-fit:contain}.mrazen-logo-box span{font-size:42px;line-height:1}.mrazen-top-text{font-size:32px;line-height:1.15;margin-bottom:22px}.mrazen-nav{width:100%;margin:0 auto;flex:1 1 auto;min-height:80px;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;overscroll-behavior:contain}.mrazen-scroll-fade .mrazen-nav{-webkit-mask-image:linear-gradient(to bottom,transparent,black 22px,black calc(100% - 22px),transparent);mask-image:linear-gradient(to bottom,transparent,black 22px,black calc(100% - 22px),transparent)}.mrazen-menu-list,.mrazen-menu-list ul{list-style:none;margin:0;padding:0}.mrazen-menu-list li{position:relative;margin:0}.mrazen-menu-list a{text-decoration:none;display:inline-flex;align-items:center;gap:10px;padding:4px 0;font-size:34px;line-height:1.18;transition:color .2s ease,transform .2s ease,text-shadow .2s ease}.mrazen-menu-list .sub-menu{padding-top:6px;padding-bottom:10px}.mrazen-menu-list .sub-menu a{font-size:.72em;opacity:.9}.mrazen-submenu-toggle{border:0;background:transparent;cursor:pointer;font-size:24px;padding:4px 8px;line-height:1;transition:transform .2s ease}.mrazen-submenu-toggle.is-open{transform:rotate(180deg)}.mrazen-submenu-accordion .sub-menu{display:none}.mrazen-submenu-accordion li.is-submenu-open>.sub-menu{display:block}.mrazen-submenu-always_open .sub-menu{display:block}.mrazen-cta{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;text-decoration:none;font-size:28px;line-height:1.15;padding:20px 36px;margin:18px auto 22px;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.mrazen-cta:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.18)}.mrazen-bottom-text{flex:0 0 auto;font-size:22px;line-height:1.25;margin-top:0;padding-top:0;max-width:100%}.mrazen-effect-slide .mrazen-nav a{position:relative}.mrazen-effect-slide .mrazen-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;transform:scaleX(0);transform-origin:right;transition:transform .25s ease}.mrazen-effect-slide .mrazen-nav a:hover::after{transform:scaleX(1);transform-origin:left}.mrazen-effect-shift .mrazen-nav a:hover{transform:translateX(8px)}body.mrazen-menu-lock{overflow:hidden}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-menu-panel-inner{overflow-y:auto}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-menu-content{min-height:100%;height:auto}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-logo-box{min-height:108px;margin-top:12px;margin-bottom:40px;padding:18px}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-logo-box img{max-height:120px}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-top-text{font-size:40px;margin-bottom:52px}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-menu-list a{font-size:40px;line-height:1.2}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-nav{flex:0 0 auto;overflow:visible;margin-bottom:0}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-cta{font-size:34px;padding:28px 46px;margin-top:22px;margin-bottom:48px}.mrazen-menu-widget:not(.mrazen-compact) .mrazen-bottom-text{font-size:28px;margin-top:auto;padding-top:52px}@media (min-width:768px){.mrazen-menu-widget:not(.mrazen-show-desktop){display:none}}@media (max-width:480px){.mrazen-menu-panel-inner{padding-left:20px;padding-right:20px}.mrazen-top-text{font-size:28px}.mrazen-menu-list a{font-size:28px}.mrazen-cta{font-size:22px;padding:16px 26px}.mrazen-bottom-text{font-size:19px}.mrazen-logo-box{min-height:74px;padding:10px}.mrazen-logo-box img{max-height:90px}.mrazen-menu-close{top:14px;right:14px;width:42px;height:42px}}

/* Close button */
.mrazen-menu-close{
    background:#000 !important;
    color:#fff !important;
    width:60px;
    height:60px;
    border:none;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:42px;
    font-weight:300;
    line-height:1;
    padding:0;
    margin:0;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(0,0,0,.15);
    padding-bottom:4px;
}

/* Hover */
.mrazen-menu-close:hover{
    background:#222 !important;
    transform:scale(1.05);
    transition:all .25s ease;
}
.mrazen-menu-widget.mrazen-external-trigger-only>.mrazen-menu-trigger{display:none!important}


/* dev21: reliable viewport sizing + layout templates */
.mrazen-menu-panel{
    height:100vh;
    height:100dvh;
}
.mrazen-menu-panel-inner{
    box-sizing:border-box;
    height:100vh;
    height:100dvh;
    max-height:100dvh;
    padding-bottom:max(18px, env(safe-area-inset-bottom));
}
.mrazen-menu-content{
    box-sizing:border-box;
    width:100%;
}
.mrazen-menu-widget.mrazen-compact .mrazen-bottom-text{
    position:relative;
    z-index:1;
}

/* Template 2: Modern Card */
.mrazen-template-modern_card .mrazen-menu-content{
    justify-content:flex-start;
}
.mrazen-template-modern_card .mrazen-logo-box{
    background:transparent!important;
    min-height:72px;
    margin-bottom:8px;
    padding:6px 12px;
}
.mrazen-template-modern_card .mrazen-top-text{
    margin-bottom:16px;
}
.mrazen-template-modern_card .mrazen-nav{
    flex:1 1 auto;
    width:100%;
    min-height:0;
    padding:14px 22px;
    border:1px solid rgba(127,127,127,.22);
    border-radius:24px;
    background:rgba(127,127,127,.055);
    box-shadow:0 18px 50px rgba(0,0,0,.07);
}
.mrazen-template-modern_card .mrazen-menu-list > li + li{
    border-top:1px solid rgba(127,127,127,.16);
}
.mrazen-template-modern_card .mrazen-menu-list > li > a{
    width:100%;
    justify-content:center;
    padding:10px 4px;
}
.mrazen-template-modern_card .mrazen-cta{
    width:min(100%, 320px);
    box-sizing:border-box;
    margin-top:16px;
    margin-bottom:14px;
}
.mrazen-template-modern_card .mrazen-bottom-text{
    padding:0 8px max(4px, env(safe-area-inset-bottom));
    opacity:.88;
}

/* Template 3: Editorial */
.mrazen-template-editorial .mrazen-menu-content{
    align-items:stretch;
    text-align:left;
}
.mrazen-template-editorial .mrazen-logo-box{
    margin-left:0;
    margin-right:0;
    justify-content:flex-start;
    background:transparent!important;
    min-height:64px;
    padding:4px 0;
}
.mrazen-template-editorial .mrazen-logo-box img{
    object-position:left center;
}
.mrazen-template-editorial .mrazen-top-text{
    text-align:left;
    margin-bottom:14px;
}
.mrazen-template-editorial .mrazen-nav{
    flex:1 1 auto;
    width:100%;
    min-height:0;
    padding:4px 0;
}
.mrazen-template-editorial .mrazen-menu-list > li{
    border-bottom:1px solid rgba(127,127,127,.24);
}
.mrazen-template-editorial .mrazen-menu-list > li > a{
    display:flex;
    width:100%;
    justify-content:flex-start;
    box-sizing:border-box;
    padding:9px 0;
}
.mrazen-template-editorial .mrazen-submenu-toggle{
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
}
.mrazen-template-editorial .mrazen-submenu-toggle.is-open{
    transform:translateY(-50%) rotate(180deg);
}
.mrazen-template-editorial .mrazen-menu-list .sub-menu{
    padding-left:18px;
}
.mrazen-template-editorial .mrazen-cta{
    align-self:flex-start;
    margin:16px 0 12px;
}
.mrazen-template-editorial .mrazen-bottom-text{
    width:100%;
    box-sizing:border-box;
    border-top:1px solid rgba(127,127,127,.24);
    padding-top:12px;
    padding-bottom:max(4px, env(safe-area-inset-bottom));
    text-align:left;
    opacity:.9;
}

@media (max-width:480px){
    .mrazen-template-modern_card .mrazen-nav{padding:10px 16px;border-radius:20px}
    .mrazen-template-modern_card .mrazen-menu-list > li > a{padding:8px 4px}
    .mrazen-template-editorial .mrazen-menu-list > li > a{padding:7px 0}
}

/* dev22: isolate submenu toggle from theme/Elementor button styles */
.mrazen-menu-widget .mrazen-submenu-toggle,
.mrazen-menu-widget .mrazen-submenu-toggle:hover,
.mrazen-menu-widget .mrazen-submenu-toggle:focus,
.mrazen-menu-widget .mrazen-submenu-toggle:active{
    -webkit-appearance:none!important;
    appearance:none!important;
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:none;
    min-width:0!important;
    min-height:0!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:4px 8px!important;
    font:inherit;
    font-size:24px;
    line-height:1;
    color:inherit;
}
.mrazen-menu-widget .mrazen-submenu-toggle:focus-visible{
    outline:2px solid currentColor!important;
    outline-offset:3px;
    border-radius:4px!important;
}

/* dev31.15: two additional, reusable visual templates. No brand-specific styles. */
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-cta{
    text-decoration:none;
    transition:background-color .24s ease,color .24s ease,border-color .24s ease,box-shadow .24s ease,transform .24s ease;
}
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-cta:hover,
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-cta:focus-visible{
    text-decoration:none;
}
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-cta:focus-visible{
    outline:2px solid currentColor;
    outline-offset:3px;
}

/* Aurora Glass: floating translucent navigation over soft lights. */
.mrazen-template-aurora_glass .mrazen-menu-panel{
    isolation:isolate;
}
.mrazen-template-aurora_glass .mrazen-menu-panel::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:
        radial-gradient(ellipse at 5% 8%,rgba(255,255,255,.20),transparent 48%),
        radial-gradient(ellipse at 94% 71%,rgba(255,178,91,.20),transparent 49%),
        linear-gradient(140deg,rgba(19,24,55,.13),rgba(0,0,0,.07));
}
.mrazen-template-aurora_glass .mrazen-menu-content{
    justify-content:flex-start;
    gap:0;
}
.mrazen-template-aurora_glass .mrazen-logo-box{
    min-height:62px;
    padding:5px 10px;
    margin-bottom:8px;
    background:transparent!important;
}
.mrazen-template-aurora_glass .mrazen-top-text{
    font-size:clamp(14px,3.5vw,20px);
    letter-spacing:.015em;
    opacity:.92;
    margin-bottom:15px;
}
.mrazen-template-aurora_glass .mrazen-nav{
    flex:1 1 auto;
    min-height:0;
    width:100%;
    padding:12px 14px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:24px;
    background:rgba(255,255,255,.10);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
    box-shadow:0 12px 48px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.16);
}
.mrazen-template-aurora_glass .mrazen-menu-list>li+li{border-top:1px solid rgba(255,255,255,.13)}
.mrazen-template-aurora_glass .mrazen-menu-list>li>a{
    display:flex;
    justify-content:center;
    width:100%;
    box-sizing:border-box;
    padding:9px 5px;
    font-size:clamp(20px,5.2vw,31px);
    letter-spacing:-.025em;
    font-weight:600;
}
.mrazen-template-aurora_glass .mrazen-cta{
    align-self:center;
    max-width:100%;
    padding:13px 28px;
    margin:15px auto 12px;
    border-radius:14px;
}
.mrazen-template-aurora_glass .mrazen-bottom-text{
    font-size:clamp(11px,2.7vw,15px);
    line-height:1.45;
    opacity:.9;
    padding:4px 10px max(4px,env(safe-area-inset-bottom));
}
.mrazen-template-aurora_glass .mrazen-menu-close{
    box-shadow:0 9px 28px rgba(0,0,0,.2);
}

/* Bold Chapters: left-aligned, high-contrast editorial navigation. */
.mrazen-template-bold_chapters .mrazen-menu-panel{
    isolation:isolate;
}
.mrazen-template-bold_chapters .mrazen-menu-panel::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:6px;
    z-index:-1;
    pointer-events:none;
    background:linear-gradient(to bottom,rgba(255,255,255,.65),rgba(255,255,255,.04));
}
.mrazen-template-bold_chapters .mrazen-menu-content{
    align-items:stretch;
    text-align:left;
    max-width:680px;
}
.mrazen-template-bold_chapters .mrazen-logo-box{
    justify-content:flex-start;
    margin:0 0 8px;
    padding:5px 0;
    min-height:58px;
    background:transparent!important;
}
.mrazen-template-bold_chapters .mrazen-logo-box img{object-position:left center}
.mrazen-template-bold_chapters .mrazen-top-text{
    font-size:clamp(13px,3.1vw,18px);
    line-height:1.5;
    opacity:.82;
    margin-bottom:14px;
}
.mrazen-template-bold_chapters .mrazen-nav{
    flex:1 1 auto;
    min-height:0;
    width:100%;
    padding:2px 0 8px;
}
.mrazen-template-bold_chapters .mrazen-menu-list>li{
    border-bottom:1px solid rgba(255,255,255,.25);
}
.mrazen-template-bold_chapters .mrazen-menu-list>li>a{
    display:flex;
    width:100%;
    box-sizing:border-box;
    justify-content:flex-start;
    padding:10px 4px;
    font-size:clamp(25px,7vw,45px);
    line-height:1.1;
    letter-spacing:-.045em;
    font-weight:700;
}
.mrazen-template-bold_chapters .mrazen-menu-list>li>a:hover{transform:translateX(5px)}
.mrazen-template-bold_chapters .mrazen-menu-list .sub-menu{padding-left:15px}
.mrazen-template-bold_chapters .mrazen-submenu-toggle{
    position:absolute;
    right:0;
    top:6px;
}
.mrazen-template-bold_chapters .mrazen-cta{
    align-self:flex-start;
    max-width:100%;
    margin:18px 0 13px;
    padding:14px 27px;
    border-radius:12px;
}
.mrazen-template-bold_chapters .mrazen-bottom-text{
    font-size:clamp(11px,2.5vw,14px);
    line-height:1.5;
    opacity:.85;
    padding-top:13px;
    border-top:1px solid rgba(255,255,255,.24);
}

/* Keep design presets usable on short landscape devices and older mobile screens. */
@media (max-width:480px){
    .mrazen-template-aurora_glass .mrazen-nav{padding:9px 12px;border-radius:19px}
    .mrazen-template-aurora_glass .mrazen-menu-list>li>a{padding:7px 3px}
    .mrazen-template-bold_chapters .mrazen-menu-list>li>a{padding:7px 3px}
}
@media (prefers-reduced-motion:reduce){
    .mrazen-template-aurora_glass .mrazen-menu-list a,
    .mrazen-template-bold_chapters .mrazen-menu-list a,
    .mrazen-menu-widget .mrazen-menu-panel a.mrazen-cta{transition:none!important}
}

/* dev31.17: fullscreen backdrop always spans the entire open menu,
   independently of the template's inner navigation card and decorations. */
.mrazen-menu-widget.mrazen-bg-solid > .mrazen-menu-panel,
.mrazen-menu-widget.mrazen-bg-gradient > .mrazen-menu-panel {
    inset: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-size: cover;
}
/* Aurora's light effects should sit on top of the chosen background,
   not replace it. The fullscreen backdrop remains the base layer. */
.mrazen-template-aurora_glass .mrazen-menu-panel::before {
    z-index: 0;
}
.mrazen-template-aurora_glass .mrazen-menu-panel-inner {
    position: relative;
    z-index: 1;
}

/* dev31.18: optional linked image below CTA and up to three centered footer social icons. */
.mrazen-menu-widget .mrazen-cta-extra-image{display:flex;flex:0 0 auto;justify-content:center;align-items:center;max-width:100%;margin:0 auto 14px;}
.mrazen-menu-widget .mrazen-cta-extra-image a{display:inline-flex;align-items:center;justify-content:center;max-width:100%;line-height:0;}
.mrazen-menu-widget .mrazen-cta-extra-image img{display:block;width:auto;max-width:min(100%,220px);max-height:110px;height:auto;object-fit:contain;}
.mrazen-menu-widget .mrazen-footer-socials{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;width:100%;margin:16px auto 0;padding-bottom:8px;}
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-footer-social-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:36px;min-height:36px;padding:7px;border-radius:8px;text-decoration:none;font-size:21px;line-height:1;color:inherit;transition:color .2s ease,background-color .2s ease,transform .2s ease;}
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-footer-social-link:hover{transform:translateY(-2px);text-decoration:none;}
.mrazen-menu-widget .mrazen-menu-panel a.mrazen-footer-social-link:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
.mrazen-menu-widget .mrazen-footer-social-link svg{width:1em;height:1em;fill:currentColor;}
