/* IzziGo Site Shell 0.9.7 workspace-aware place-language contract. */
.izzigo-shell-header, .izzigo-shell-footer, .izzigo-shell-bottom-navigation{box-sizing:border-box}
:root{
    --izzigo-shell-green: #18483d;
    --izzigo-shell-green-dark: #10372f;
    --izzigo-shell-cream: #f7f4ee;
    --izzigo-shell-surface: #ffffff;
    --izzigo-shell-text: #1f2926;
    --izzigo-shell-muted: #66736e;
    --izzigo-shell-line: #dce3df;
    --izzigo-shell-accent: #d95f4f;
    --izzigo-shell-radius: 8px;
    --izzigo-shell-shadow: 0 14px 40px rgba(18, 47, 40, .12);
    --izzigo-shell-bottom-height: 72px;
}

*{
    box-sizing: border-box;
}

html{
    scroll-behavior: smooth;
}































.izzigo-logo{
    display: inline-flex;
    align-items: baseline;
    color: var(--izzigo-shell-green-dark);
    font-size: 29px;
    font-weight: 700;
    letter-spacing: -.06em;
    line-height: 1;
    text-decoration: none;
}

.izzigo-logo strong{
    color: var(--izzigo-shell-accent);
    font-weight: 800;
}

.izzigo-logo-has-image{
    letter-spacing: normal;
}

.izzigo-logo-image{
    display: block;
    width: auto;
    max-width: 138px;
    height: 42px;
    object-fit: contain;
}

.izzigo-site-header{
    position: sticky;
    z-index: 1000;
    top: 0px;
    border-bottom: 1px solid var(--izzigo-shell-line);
    background: rgba(255, 255, 255, .97);
    backdrop-filter: blur(12px);
}


.admin-bar .izzigo-site-header, .admin-bar .izzigo-immersive-header{
    top: calc(0px + 32px);
}

.admin-bar .izzigo-mobile-drawer{
    top: calc(0px + 32px);
}

.admin-bar .izzigo-drawer-backdrop{
    inset: calc(0px + 32px) 0 0;
}

.izzigo-header-desktop{
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 72px;
    align-items: center;
    gap: 34px;
    width: min(1280px, calc(100% - 48px));
    margin: 0 auto;
}

.izzigo-header-desktop nav{
    display: flex;
    align-items: center;
    gap: 25px;
}

.izzigo-header-desktop nav a, .izzigo-header-actions a, .izzigo-account-button{
    color: var(--izzigo-shell-text);
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
}

.izzigo-header-desktop nav a:hover, .izzigo-header-desktop nav a:focus-visible{
    color: var(--izzigo-shell-green);
}

.izzigo-header-actions, .izzigo-mobile-actions{
    display: flex;
    align-items: center;
    gap: 8px;
}

.izzigo-icon-button, .izzigo-account-button{
    position: relative;
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 12px;
    border: 0;
    border-radius: 999px;
    color: var(--izzigo-shell-text);
    background: transparent;
    cursor: pointer;
}

.izzigo-icon-button:hover, .izzigo-account-button:hover{
    background: var(--izzigo-shell-header-hover-bg, #eef3f0);
}

.izzigo-icon-button svg, .izzigo-account-button svg, .izzigo-bottom-nav svg{
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-notification-button > span{
    position: absolute;
    top: 3px;
    right: 1px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border: 2px solid var(--izzigo-shell-notification-badge-border, #fff);
    border-radius: 999px;
    color: var(--izzigo-shell-notification-badge-text, #fff);
    background: var(--izzigo-shell-notification-badge-bg, var(--izzigo-shell-accent));
    font-size: 10px;
    line-height: 14px;
}

.izzigo-header-mobile{
    display: none;
    min-height: 62px;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 10px;
}

.izzigo-header-mobile > .izzigo-icon-button{
    justify-self: start;
}

.izzigo-header-mobile > .izzigo-logo{
    justify-self: center;
    font-size: 27px;
}

.izzigo-mobile-actions{
    justify-self: end;
}

.izzigo-mobile-actions .izzigo-icon-button{
    min-width: 40px;
    min-height: 40px;
    padding: 7px;
}

.izzigo-drawer-backdrop{
    position: fixed;
    z-index: 1998;
    inset: 0px 0 0;
    background: rgba(9, 22, 18, .48);
}

.izzigo-mobile-drawer{
    position: fixed;
    z-index: 1999;
    top: 0px;
    bottom: 0;
    left: 0;
    width: min(340px, 88vw);
    padding: max(18px, env(safe-area-inset-top)) 18px 24px;
    overflow-y: auto;
    background: #fff;
    box-shadow: 20px 0 50px rgba(0, 0, 0, .2);
    transform: translateX(-105%);
    transition: transform .22s ease;
}

.izzigo-mobile-drawer.is-open{
    transform: translateX(0);
}

.izzigo-drawer-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--izzigo-shell-line);
}

.izzigo-mobile-drawer nav{
    display: grid;
    gap: 4px;
    padding-top: 18px;
}

.izzigo-mobile-drawer nav a{
    padding: 13px 10px;
    border-radius: 8px;
    color: var(--izzigo-shell-text);
    font-weight: 650;
    text-decoration: none;
}

.izzigo-mobile-drawer nav a:hover, .izzigo-mobile-drawer nav a:focus-visible{
    background: var(--izzigo-shell-header-hover-bg, #eef3f0);
}

.izzigo-minimal-header{
    display: flex;
    min-height: 72px;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid var(--izzigo-shell-line);
    background: var(--izzigo-shell-header-bg, #fff);
}

.izzigo-immersive-header{
    position: sticky;
    z-index: 1000;
    top: 0px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    min-height: 62px;
    align-items: center;
    gap: 12px;
    padding: 0 18px;
    color: #fff;
    background: var(--izzigo-shell-green-dark);
}

.izzigo-immersive-header a{
    color: #fff;
    text-decoration: none;
}

.izzigo-immersive-header strong{
    justify-self: center;
}

.izzigo-immersive-header button{
    justify-self: end;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 999px;
    color: #fff;
    background: transparent;
}

.izzigo-shell-main{
    min-height: 62vh;
}













.izzigo-demo-card, .izzigo-audit-card{
    padding: 26px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: var(--izzigo-shell-radius);
    background: var(--izzigo-shell-surface);
    box-shadow: 0 8px 22px rgba(18, 47, 40, .05);
}

.izzigo-demo-icon{
    display: inline-grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    color: var(--izzigo-shell-green-dark);
    background: #e5efe9;
    font-size: 25px;
}

.izzigo-demo-card h2, .izzigo-audit-card h2{
    margin: 20px 0 10px;
    color: var(--izzigo-shell-green-dark);
    font-size: 23px;
}

.izzigo-demo-card p{
    min-height: 76px;
    color: var(--izzigo-shell-muted);
    font-family: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    line-height: 1.55;
}

.izzigo-demo-card a{
    color: var(--izzigo-shell-green);
    font-weight: 750;
}

.izzigo-audit-card{
    margin-top: 18px;
}

.izzigo-audit-card h2{
    margin-top: 0;
}

.izzigo-audit-card dl{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
}

.izzigo-audit-card dl > div{
    padding: 15px;
    border-radius: 8px;
    background: #f1f5f3;
}

.izzigo-audit-card dt{
    color: var(--izzigo-shell-muted);
    font: 12px var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    text-transform: uppercase;
}

.izzigo-audit-card dd{
    margin: 6px 0 0;
    color: var(--izzigo-shell-green-dark);
    font-size: 17px;
    font-weight: 750;
}

.izzigo-site-footer{
    padding: 60px max(24px, calc((100% - 1180px) / 2));
    color: #e9f2ee;
    background: var(--izzigo-shell-green-dark);
}

.izzigo-site-footer .izzigo-logo{
    color: #fff;
}

.izzigo-footer-brand p{
    max-width: 560px;
    margin: 18px 0 42px;
    color: #bed0c9;
    font-family: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    line-height: 1.6;
}

.izzigo-footer-columns{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px;
}

.izzigo-footer-columns section{
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.izzigo-footer-columns h2{
    margin: 0 0 7px;
    color: #fff;
    font-size: 15px;
}

.izzigo-footer-columns a, .izzigo-footer-columns button{
    width: fit-content;
    padding: 0;
    border: 0;
    color: #bed0c9;
    background: transparent;
    font: 14px Arial, sans-serif;
    text-decoration: none;
    cursor: pointer;
}

.izzigo-footer-columns a:hover, .izzigo-footer-columns button:hover{
    color: #fff;
}

.izzigo-footer-bottom{
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-top: 48px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, .14);
    color: #94aaa1;
    font: 13px Arial, sans-serif;
}

.izzigo-compact-footer{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;
    padding: 26px 20px;
    border-top: 1px solid var(--izzigo-shell-line);
    color: var(--izzigo-shell-muted);
    background: #fff;
    font: 13px Arial, sans-serif;
}

.izzigo-compact-footer a{
    color: var(--izzigo-shell-green);
}

.izzigo-bottom-nav{
    position: fixed;
    z-index: 1200;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    min-height: calc(var(--izzigo-shell-bottom-height) + env(safe-area-inset-bottom));
    padding: 6px 5px env(safe-area-inset-bottom);
    border-top: 1px solid var(--izzigo-shell-line);
    background: var(--izzigo-shell-bottom-bg, #fff);
    box-shadow: 0 -10px 30px rgba(15, 48, 39, .1);
    backdrop-filter: blur(14px);
}

.izzigo-bottom-nav a{
    display: flex;
    min-width: 0;
    flex: 1 1 20%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 8px;
    color: var(--izzigo-shell-bottom-text, #65736d);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
}

.izzigo-bottom-nav a[aria-current="page"]{
    color: var(--izzigo-shell-green-dark);
    background: var(--izzigo-shell-bottom-active-bg, #eaf1ed);
}

.izzigo-bottom-nav.is-keyboard-open{
    display: none !important;
}













/* Forced mobile simulation uses the same rules as a real mobile viewport. */
























@media (max-width: 782px) {
    :root{
    }

    

    

    .admin-bar .izzigo-site-header, .admin-bar .izzigo-immersive-header{
        top: calc(0px + 46px);
    }

    .admin-bar .izzigo-mobile-drawer{
        top: calc(0px + 46px);
    }

    .admin-bar .izzigo-drawer-backdrop{
        inset: calc(0px + 46px) 0 0;
    }


    
}

@media (max-width: 760px) {
    .izzigo-header-desktop{
        display: none;
    }

    .izzigo-header-mobile{
        display: grid;
    }

    

    

    

    .izzigo-audit-card dl, .izzigo-footer-columns{
        grid-template-columns: 1fr;
    }

    .izzigo-demo-card p{
        min-height: 0;
    }

    .izzigo-site-footer{
        padding: 42px 22px calc(38px + var(--izzigo-shell-bottom-height));
    }

    .izzigo-footer-columns section{
        padding: 14px 0;
        border-top: 1px solid rgba(255, 255, 255, .14);
    }

    .izzigo-footer-bottom{
        flex-direction: column;
    }

    .izzigo-bottom-nav{
        display: flex;
    }

    .izzigo-shell-mode-minimal .izzigo-bottom-nav, .izzigo-shell-mode-immersive .izzigo-bottom-nav{
        display: none;
    }
}

@media (max-width: 520px) {
    

    

    
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after{
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* --------------------------------------------------------------------------
 * v0.1.1 isolated test-page refinements.
 * -------------------------------------------------------------------------- */
:root{
}

























.izzigo-reset-preview svg{
    width: 15px;
    height: 15px;
    margin-right: 5px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-shell-component-hidden{
    display: none !important;
}

.izzigo-header-desktop nav a[aria-current="page"], .izzigo-header-actions a[aria-current="page"]{
    color: var(--izzigo-shell-green-dark);
}

.izzigo-header-desktop nav a[aria-current="page"]{
    position: relative;
}

.izzigo-header-desktop nav a[aria-current="page"]::after{
    position: absolute;
    right: 0;
    bottom: -12px;
    left: 0;
    height: 3px;
    border-radius: 999px;
    background: var(--izzigo-shell-green);
    content: "";
}

.izzigo-header-actions a[aria-current="page"], .izzigo-mobile-actions a[aria-current="page"]{
    background: var(--izzigo-shell-bottom-active-bg, #eaf1ed);
}

.izzigo-mobile-drawer nav a[aria-current="page"]{
    color: var(--izzigo-shell-green-dark);
    background: var(--izzigo-shell-bottom-active-bg, #eaf1ed);
}

.izzigo-drawer-note{
    display: grid;
    gap: 5px;
    margin-top: 22px;
    padding: 14px;
    border-radius: 8px;
    color: var(--izzigo-shell-muted);
    background: #f1f5f3;
    font: 12px/1.45 Arial, sans-serif;
}

.izzigo-drawer-note strong{
    color: var(--izzigo-shell-green-dark);
}

.izzigo-route-preview{
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    align-items: center;
    gap: 10px 16px;
    margin: -10px 0 28px;
    padding: 16px 18px;
    border: 1px solid #cddbd4;
    border-radius: var(--izzigo-shell-radius);
    background: #edf5f1;
}

.izzigo-route-preview > span{
    color: var(--izzigo-shell-muted);
    font: 12px var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.izzigo-route-preview > strong{
    color: var(--izzigo-shell-green-dark);
    font-size: 15px;
}

.izzigo-route-preview code{
    min-width: 0;
    overflow: hidden;
    color: #51615b;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-app-checks{
    display: grid;
    gap: 9px;
    margin-top: 24px;
    color: var(--izzigo-shell-green-dark);
    font: 14px Arial, sans-serif;
}

/* Tablet simulation: compact header and web bottom navigation on a 768px stage. */
























/* Mobile simulation refinements. */








@media (max-width: 782px) {
    :root{
    }

    
}

@media (max-width: 520px) {
    :root{
    }

    

    

    
}





/* --------------------------------------------------------------------------
 * v0.2.0 complete isolated header system.
 * -------------------------------------------------------------------------- */
[hidden]{
    display: none !important;
}

.izzigo-primary-nav{
    overflow: visible;
}

.izzigo-primary-link, .izzigo-nav-dropdown-button{
    position: relative;
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 8px 2px;
    border: 0;
    color: var(--izzigo-shell-text);
    background: transparent;
    font: inherit;
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
    cursor: pointer;
}

.izzigo-nav-dropdown-button svg, .izzigo-account-button svg:last-child{
    width: 14px;
    height: 14px;
    transition: transform .18s ease;
}

.izzigo-dropdown.is-open .izzigo-nav-dropdown-button svg, .izzigo-dropdown.is-open .izzigo-account-button svg:last-child{
    transform: rotate(180deg);
}

.izzigo-primary-link:hover, .izzigo-primary-link:focus-visible, .izzigo-nav-dropdown-button:hover, .izzigo-nav-dropdown-button:focus-visible, .izzigo-dropdown.is-active > .izzigo-nav-dropdown-button, .izzigo-dropdown.is-open > .izzigo-nav-dropdown-button{
    color: var(--izzigo-shell-green);
}

.izzigo-primary-link[aria-current="page"], .izzigo-dropdown.is-active > .izzigo-nav-dropdown-button{
    color: var(--izzigo-shell-green-dark);
}

.izzigo-primary-link[aria-current="page"]::after, .izzigo-dropdown.is-active > .izzigo-nav-dropdown-button::after{
    position: absolute;
    right: 0;
    bottom: -3px;
    left: 0;
    height: 3px;
    border-radius: 999px;
    background: var(--izzigo-shell-green);
    content: "";
}

.izzigo-dropdown{
    position: relative;
}

.izzigo-dropdown-panel{
    position: absolute;
    z-index: 2200;
    top: calc(100% + 12px);
    left: 0;
    width: 310px;
    max-height: min(620px, calc(100vh - 0px - 100px));
    padding: 12px;
    overflow-y: auto;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 22px 55px rgba(13, 43, 35, .18);
}

.izzigo-dropdown-align-right > .izzigo-dropdown-panel{
    right: 0;
    left: auto;
}

.izzigo-dropdown-panel::before{
    position: absolute;
    top: -7px;
    left: 30px;
    width: 12px;
    height: 12px;
    border-top: 1px solid var(--izzigo-shell-line);
    border-left: 1px solid var(--izzigo-shell-line);
    background: #fff;
    content: "";
    transform: rotate(45deg);
}

.izzigo-dropdown-align-right > .izzigo-dropdown-panel::before{
    right: 30px;
    left: auto;
}

.izzigo-dropdown-panel.is-mega{
    display: grid;
    width: min(680px, calc(100vw - 48px));
    grid-template-columns: minmax(185px, .75fr) minmax(300px, 1.35fr);
    gap: 10px;
    padding: 16px;
}

.izzigo-dropdown-group{
    min-width: 0;
}

.izzigo-dropdown-group + .izzigo-dropdown-group{
    padding-left: 14px;
    border-left: 1px solid var(--izzigo-shell-line);
}

.izzigo-dropdown-group h2{
    margin: 4px 8px 9px;
    color: var(--izzigo-shell-muted);
    font: 11px Arial, sans-serif;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.izzigo-dropdown-links{
    display: grid;
    gap: 3px;
}

.izzigo-dropdown-panel.is-mega .izzigo-dropdown-group:last-child .izzigo-dropdown-links{
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.izzigo-dropdown-link{
    display: grid !important;
    min-height: 46px;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 7px 9px !important;
    border-radius: 8px;
    color: var(--izzigo-shell-text) !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    text-decoration: none;
}

.izzigo-dropdown-link:hover, .izzigo-dropdown-link:focus-visible, .izzigo-dropdown-link[aria-current="page"]{
    color: var(--izzigo-shell-green-dark) !important;
    background: #edf4f0;
}

.izzigo-menu-item-icon{
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 8px;
    color: var(--izzigo-shell-green-dark);
    background: #e7f0eb;
}

.izzigo-menu-item-icon svg{
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-account-dropdown .izzigo-account-button{
    font: inherit;
    font-size: 14px;
    font-weight: 650;
}

.izzigo-account-panel{
    width: 292px;
}

.izzigo-account-summary, .izzigo-drawer-role{
    display: flex;
    align-items: center;
    gap: 11px;
}

.izzigo-account-summary{
    margin: 2px 2px 10px;
    padding: 10px;
    border-bottom: 1px solid var(--izzigo-shell-line);
}

.izzigo-account-avatar, .izzigo-drawer-role > span{
    display: grid;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--izzigo-shell-green);
    font-size: 16px;
    font-weight: 800;
}

.izzigo-account-summary > div, .izzigo-drawer-role > div{
    display: grid;
    gap: 2px;
}

.izzigo-account-summary strong, .izzigo-drawer-role strong{
    color: var(--izzigo-shell-green-dark);
    font-size: 14px;
}

.izzigo-account-summary small, .izzigo-drawer-role small{
    color: var(--izzigo-shell-muted);
    font: 11px Arial, sans-serif;
}

.izzigo-notification-panel{
    width: min(370px, calc(100vw - 30px));
    padding: 0;
    overflow: hidden;
}

.izzigo-notification-heading{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px 12px;
    border-bottom: 1px solid var(--izzigo-shell-line);
}

.izzigo-notification-heading strong{
    color: var(--izzigo-shell-green-dark);
    font-size: 16px;
}

.izzigo-notification-heading small{
    padding: 4px 7px;
    border-radius: 999px;
    color: #74695a;
    background: #f3ede2;
    font: 10px Arial, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
}

.izzigo-notification-list{
    display: grid;
}

.izzigo-notification-list > a{
    display: grid;
    grid-template-columns: 9px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid #edf1ef;
    color: var(--izzigo-shell-text);
    text-decoration: none;
}

.izzigo-notification-list > a:hover, .izzigo-notification-list > a:focus-visible{
    background: #f5f8f6;
}

.izzigo-notification-list > a > span:last-child{
    display: grid;
    gap: 4px;
}

.izzigo-notification-list strong{
    font-size: 13px;
    line-height: 1.35;
}

.izzigo-notification-list small{
    color: var(--izzigo-shell-muted);
    font: 11px Arial, sans-serif;
}

.izzigo-notification-dot{
    width: 7px;
    height: 7px;
    margin-top: 5px;
    border-radius: 50%;
    background: var(--izzigo-shell-accent);
}

.izzigo-empty-notifications{
    display: grid;
    justify-items: center;
    gap: 7px;
    padding: 28px 20px;
    color: var(--izzigo-shell-muted);
    font: 13px Arial, sans-serif;
}

.izzigo-empty-notifications > span{
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 50%;
    color: var(--izzigo-shell-green-dark);
    background: #e5efe9;
    font-size: 18px;
}

.izzigo-empty-notifications p{
    margin: 0;
}

.izzigo-view-all-notifications{
    display: flex;
    justify-content: center;
    padding: 12px 16px;
    color: var(--izzigo-shell-green) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-decoration: none;
}

.izzigo-mobile-actions{
    position: relative;
}

.izzigo-mobile-actions .izzigo-dropdown-panel{
    top: calc(100% + 8px);
}

.izzigo-drawer-role{
    margin: 18px 0 6px;
    padding: 12px;
    border-radius: 10px;
    background: #f0f5f2;
}

.izzigo-mobile-drawer nav h2{
    margin: 20px 10px 6px;
    color: var(--izzigo-shell-muted);
    font: 10px Arial, sans-serif;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.izzigo-mobile-drawer nav a{
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
}

.izzigo-mobile-drawer nav a.izzigo-drawer-simple-link{
    display: block;
    padding-left: 52px;
}

.izzigo-route-preview{
    grid-template-columns: auto auto minmax(0, 1fr) auto;
}

.izzigo-status-chip, .izzigo-route-summary span{
    display: inline-flex;
    width: fit-content;
    min-height: 25px;
    align-items: center;
    padding: 4px 8px;
    border-radius: 999px;
    font: 10px Arial, sans-serif;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.izzigo-status-chip.is-ready, .izzigo-route-summary .is-ready{
    color: #165c3c;
    background: #dff2e7;
}

.izzigo-status-chip.is-integration, .izzigo-route-summary .is-integration{
    color: #7a5511;
    background: #fff0cb;
}

.izzigo-status-chip.is-missing, .izzigo-route-summary .is-missing{
    color: #8b3328;
    background: #f9dfdb;
}

.izzigo-route-audit-card{
    margin-top: 18px;
    padding: 26px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: var(--izzigo-shell-radius);
    background: #fff;
    box-shadow: 0 8px 22px rgba(18, 47, 40, .05);
}

.izzigo-route-audit-heading{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.izzigo-route-audit-heading h2{
    margin: 0;
    color: var(--izzigo-shell-green-dark);
    font-size: 28px;
}

.izzigo-route-audit-heading p{
    max-width: 760px;
    margin: 9px 0 0;
    color: var(--izzigo-shell-muted);
    font: 14px/1.55 Arial, sans-serif;
}

.izzigo-route-summary{
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 7px;
}

.izzigo-route-table-wrap{
    overflow-x: auto;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 8px;
}

.izzigo-route-table{
    width: 100%;
    min-width: 880px;
    border-collapse: collapse;
    font: 12px/1.45 Arial, sans-serif;
}

.izzigo-route-table th, .izzigo-route-table td{
    padding: 11px 12px;
    border-bottom: 1px solid #e8eeeb;
    text-align: left;
    vertical-align: top;
}

.izzigo-route-table thead th{
    position: sticky;
    top: 0;
    color: #fff;
    background: var(--izzigo-shell-green-dark);
    font-weight: 750;
}

.izzigo-route-table tbody th{
    min-width: 165px;
    color: var(--izzigo-shell-green-dark);
}

.izzigo-route-table tbody tr:last-child th, .izzigo-route-table tbody tr:last-child td{
    border-bottom: 0;
}

.izzigo-route-table tbody tr.is-current{
    background: #edf5f1;
}

.izzigo-route-table code{
    display: block;
    max-width: 320px;
    overflow: hidden;
    color: #56645f;
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}











@media (max-width: 1100px) {
    .izzigo-header-desktop{
        gap: 22px;
        width: min(1280px, calc(100% - 30px));
    }

    .izzigo-header-desktop nav{
        gap: 16px;
    }

    .izzigo-primary-link, .izzigo-nav-dropdown-button, .izzigo-account-dropdown .izzigo-account-button{
        font-size: 13px;
    }
}

@media (max-width: 880px) {
    .izzigo-header-desktop{
        display: none;
    }

    .izzigo-header-mobile{
        display: grid;
    }
}

@media (max-width: 760px) {
    .izzigo-route-audit-heading{
        align-items: flex-start;
        flex-direction: column;
    }

    .izzigo-route-summary{
        justify-content: flex-start;
    }
}

@media (max-width: 520px) {
    .izzigo-mobile-actions .izzigo-notification-panel{
        right: -50px;
    }
}

.izzigo-header-desktop nav .izzigo-primary-link[aria-current="page"]::after{
    bottom: -3px;
}

.izzigo-header-desktop nav .izzigo-dropdown-panel a[aria-current="page"]::after{
    content: none !important;
}

/* --------------------------------------------------------------------------
 * v0.2.1 header refinement and WordPress/theme conflict protection.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-header-height: 68px;
    --izzigo-shell-content-width: 1240px;
}

/* Prevent global theme/Elementor button styles from distorting shell controls. */




.izzigo-site-header{
    isolation: isolate;
}

.izzigo-header-desktop{
    width: min(var(--izzigo-shell-content-width), calc(100% - 40px));
    min-height: var(--izzigo-shell-header-height);
    grid-template-columns: minmax(104px, auto) minmax(0, 1fr) auto;
    gap: clamp(16px, 2.1vw, 30px);
}

.izzigo-header-desktop .izzigo-logo{
    min-width: 104px;
}

.izzigo-logo-image{
    max-width: 122px;
    height: 36px;
}

.izzigo-header-desktop nav{
    min-width: 0;
    justify-content: flex-start;
    gap: clamp(13px, 1.6vw, 22px);
    white-space: nowrap;
}

.izzigo-header-actions{
    min-width: max-content;
    gap: 5px;
}

.izzigo-header-cta{
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    border: 1px solid var(--izzigo-shell-green);
    border-radius: 999px;
    color: #fff !important;
    background: var(--izzigo-shell-green);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
}

.izzigo-header-cta:hover, .izzigo-header-cta:focus-visible, .izzigo-header-cta[aria-current="page"]{
    border-color: var(--izzigo-shell-green-dark);
    color: #fff !important;
    background: var(--izzigo-shell-green-dark);
}

.izzigo-header-cta::after{
    content: none !important;
}

.izzigo-primary-link, .izzigo-nav-dropdown-button{
    padding-right: 1px;
    padding-left: 1px;
    font-size: 13px;
}

.izzigo-account-button{
    min-height: 40px;
    padding: 7px 10px;
}

.izzigo-account-button > span{
    max-width: 94px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-dropdown-panel{
    top: calc(100% + 10px);
    max-width: min(680px, calc(100vw - 32px));
    border-radius: 10px;
    box-shadow: 0 18px 46px rgba(13, 43, 35, .16);
}

.izzigo-dropdown-panel.is-mega{
    width: min(640px, calc(100vw - 40px));
    grid-template-columns: minmax(170px, .72fr) minmax(290px, 1.28fr);
    gap: 8px;
}

.izzigo-dropdown-link{
    min-height: 44px;
}

.izzigo-account-summary.is-guest .izzigo-account-avatar{
    color: var(--izzigo-shell-green-dark);
    background: #e7f0eb;
}

.izzigo-account-summary.is-guest .izzigo-account-avatar svg{
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-notification-provider-note{
    margin: 0;
    padding: 10px 16px;
    border-top: 1px solid #edf1ef;
    color: var(--izzigo-shell-muted);
    background: #f8faf9;
    font: 10px/1.45 Arial, sans-serif;
}











body.izzigo-header-fit-overflow .izzigo-site-header{
    box-shadow: inset 0 -3px 0 #b94b3f;
}

body.izzigo-header-fit-tight .izzigo-site-header{
    box-shadow: inset 0 -2px 0 #c28c30;
}

.izzigo-route-table{
    min-width: 1040px;
}

.izzigo-route-table tbody td:nth-child(3){
    min-width: 150px;
    color: #3f4f49;
    font-weight: 700;
}

.izzigo-header-mobile{
    min-height: 60px;
}

.izzigo-header-mobile .izzigo-logo-image{
    max-width: 110px;
    height: 32px;
}



@media (max-width: 1180px) and (min-width: 1041px) {
    .izzigo-header-desktop{
        width: calc(100% - 26px);
        gap: 14px;
    }

    .izzigo-header-desktop nav{
        gap: 12px;
    }

    /* Keep the real avatar visible in the compressed desktop header.
       Earlier versions hid every direct span here, which also hid the avatar. */
    .izzigo-account-button > .izzigo-account-name{
        display: none !important;
    }

    .izzigo-account-button > .izzigo-account-avatar-trigger{
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .izzigo-account-button svg:last-child{
        display: none;
    }

    .izzigo-header-cta{
        padding-right: 11px;
        padding-left: 11px;
    }
}

@media (max-width: 1040px) {
    .izzigo-header-desktop{
        display: none;
    }

    .izzigo-header-mobile{
        display: grid;
    }
}

@media (max-width: 520px) {
    .izzigo-notification-panel{
        width: min(350px, calc(100vw - 22px));
    }
}

/* --------------------------------------------------------------------------
 * v0.3.0 mobile-web bottom navigation system.
 * -------------------------------------------------------------------------- */

.izzigo-bottom-nav{
    isolation: isolate;
    align-items: stretch;
    justify-content: stretch;
    padding-bottom: max(6px, env(safe-area-inset-bottom));
}

.izzigo-bottom-nav a{
    position: relative;
    min-height: 58px;
    padding: 6px 3px 5px;
    outline: 0;
    -webkit-tap-highlight-color: transparent;
}

.izzigo-bottom-nav a::before{
    position: absolute;
    top: 2px;
    left: 50%;
    width: 22px;
    height: 3px;
    border-radius: 999px;
    background: transparent;
    content: "";
    transform: translateX(-50%);
}

.izzigo-bottom-nav a[aria-current="page"]::before{
    background: currentColor;
}

.izzigo-bottom-nav a:focus-visible{
    outline: 3px solid rgba(24, 72, 61, .24);
    outline-offset: -3px;
}

.izzigo-bottom-nav-icon{
    display: grid;
    width: 25px;
    height: 25px;
    place-items: center;
}

.izzigo-bottom-nav-icon svg{
    width: 22px;
    height: 22px;
}

.izzigo-bottom-nav-label{
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-bottom-nav.is-runtime-hidden, body.izzigo-bottom-runtime-hidden .izzigo-bottom-nav, body.izzigo-shell-keyboard-open .izzigo-bottom-nav, body.izzigo-shell-surface-business_wizard .izzigo-bottom-nav, body.izzigo-shell-surface-checkout .izzigo-bottom-nav, body.izzigo-shell-surface-izzimap_fullscreen .izzigo-bottom-nav, body.izzigo-shell-surface-route_builder .izzigo-bottom-nav, body.izzigo-shell-surface-auth .izzigo-bottom-nav, body.izzigo-shell-surface-onboarding .izzigo-bottom-nav, body.izzigo-shell-surface-modal .izzigo-bottom-nav{
    display: none !important;
    pointer-events: none;
}

.izzigo-inline-audit-button{
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    padding: 8px 12px;
    border: 1px solid var(--izzigo-shell-green);
    border-radius: 7px;
    color: var(--izzigo-shell-green-dark);
    background: #fff;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}

.izzigo-inline-audit-button:hover, .izzigo-inline-audit-button:focus-visible, .izzigo-inline-audit-button[aria-pressed="true"]{
    color: #fff;
    background: var(--izzigo-shell-green);
}

[data-izzigo-bottom-duplicate-audit][data-status="ready"]{
    color: #17643f;
    font-weight: 750;
}

[data-izzigo-bottom-duplicate-audit][data-status="duplicate"]{
    color: #a33b31;
    font-weight: 800;
}

[data-izzigo-bottom-duplicate-audit][data-status="hidden"]{
    color: var(--izzigo-shell-muted);
}



.izzigo-simulated-legacy-nav{
    position: fixed;
    z-index: 1199;
    right: 12px;
    bottom: calc(var(--izzigo-shell-bottom-height) + env(safe-area-inset-bottom) + 12px);
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    border: 2px dashed #a33b31;
    border-radius: 8px;
    color: #7a2821;
    background: #fff2f0;
    box-shadow: var(--izzigo-shell-shadow);
    font: 700 12px Arial, sans-serif;
}

.izzigo-bottom-role-table{
    min-width: 980px;
}

.izzigo-bottom-role-table td small{
    display: block;
    margin-top: 3px;
    color: var(--izzigo-shell-muted);
    font-size: 11px;
    font-weight: 400;
}

.izzigo-surface-rule-grid{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.izzigo-surface-rule-grid article{
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
    padding: 14px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 8px;
    background: #fff;
}

.izzigo-surface-rule-grid article.is-visible{
    border-color: #abcabc;
    background: #eff8f3;
}

.izzigo-surface-rule-grid article.is-excluded{
    background: #f7f6f3;
}

.izzigo-surface-rule-grid strong{
    font-size: 14px;
}

.izzigo-surface-rule-grid span{
    color: var(--izzigo-shell-muted);
    font-size: 12px;
}

.izzigo-surface-selector select{
    max-width: 190px;
}

/* Remove reserved bottom-bar space whenever the bar is intentionally absent. */




@media (max-width: 900px) {
    .izzigo-surface-rule-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    

    body.izzigo-bottom-runtime-hidden .izzigo-site-footer, body.izzigo-shell-keyboard-open .izzigo-site-footer, body.izzigo-shell-surface-business_wizard .izzigo-site-footer, body.izzigo-shell-surface-checkout .izzigo-site-footer, body.izzigo-shell-surface-izzimap_fullscreen .izzigo-site-footer, body.izzigo-shell-surface-route_builder .izzigo-site-footer, body.izzigo-shell-surface-auth .izzigo-site-footer, body.izzigo-shell-surface-onboarding .izzigo-site-footer, body.izzigo-shell-surface-modal .izzigo-site-footer{
        padding-bottom: 38px;
    }
}

@media (max-width: 560px) {
    .izzigo-surface-rule-grid{
        grid-template-columns: 1fr;
    }

    .izzigo-bottom-nav-label{
        font-size: 10px;
    }
}

/* --------------------------------------------------------------------------
 * v0.3.1 premium public header redesign.
 * Visible discovery navigation on desktop and tablet; drawer only on mobile.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-premium-header-height: 78px;
    --izzigo-shell-premium-line: rgba(16, 55, 47, .11);
    --izzigo-shell-premium-shadow: 0 18px 48px rgba(13, 43, 35, .13);
}

.izzigo-site-header{
    border-bottom-color: var(--izzigo-shell-premium-line);
    background: rgba(255, 255, 255, .985);
    box-shadow: 0 1px 0 rgba(16, 55, 47, .025);
    backdrop-filter: blur(18px) saturate(140%);
}

.izzigo-header-desktop{
    width: min(1420px, calc(100% - 56px));
    min-height: var(--izzigo-shell-premium-header-height);
    grid-template-columns: minmax(118px, auto) minmax(360px, 1fr) auto;
    gap: clamp(24px, 3vw, 48px);
}

.izzigo-header-desktop > .izzigo-logo{
    align-self: center;
}

.izzigo-header-desktop .izzigo-logo-image{
    max-width: 132px;
    height: 39px;
}

.izzigo-primary-nav{
    display: flex;
    min-width: 0;
    align-items: stretch;
    justify-content: center !important;
    gap: clamp(24px, 2.6vw, 42px) !important;
}

.izzigo-primary-link, .izzigo-nav-dropdown-button{
    min-height: var(--izzigo-shell-premium-header-height);
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #17332c !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: -.012em;
}

.izzigo-primary-link::before, .izzigo-nav-dropdown-button::before{
    content: none !important;
}

.izzigo-nav-dropdown-button svg{
    width: 13px;
    height: 13px;
    margin-left: 2px;
    opacity: .72;
}

.izzigo-primary-link:hover, .izzigo-primary-link:focus-visible, .izzigo-nav-dropdown-button:hover, .izzigo-nav-dropdown-button:focus-visible, .izzigo-dropdown.is-open > .izzigo-nav-dropdown-button{
    color: var(--izzigo-shell-green) !important;
}

.izzigo-primary-link[aria-current="page"]::after, .izzigo-dropdown.is-active > .izzigo-nav-dropdown-button::after{
    right: 0;
    bottom: 16px;
    left: 0;
    height: 2px;
    background: var(--izzigo-shell-green);
}

.izzigo-header-actions{
    min-width: max-content;
    gap: 9px;
}

.izzigo-header-search{
    width: 42px;
    height: 42px;
    min-width: 42px;
    min-height: 42px;
    padding: 0 !important;
    border: 0 !important;
    color: #17332c !important;
    background: transparent !important;
    box-shadow: none !important;
}

.izzigo-header-search:hover, .izzigo-header-search:focus-visible{
    background: #f0f5f2 !important;
}

.izzigo-business-link, .izzigo-signin-button{
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    text-decoration: none !important;
}

.izzigo-business-link{
    padding: 0 9px;
    border: 0 !important;
    color: #17332c !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.izzigo-business-link:hover, .izzigo-business-link:focus-visible, .izzigo-business-link[aria-current="page"]{
    color: var(--izzigo-shell-green) !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 5px !important;
}

.izzigo-signin-button{
    min-width: 92px;
    padding: 0 20px;
    border: 1px solid var(--izzigo-shell-green-dark) !important;
    border-radius: 999px !important;
    color: #fff !important;
    background: var(--izzigo-shell-green-dark) !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 750 !important;
}

.izzigo-signin-button:hover, .izzigo-signin-button:focus-visible, .izzigo-signin-button[aria-current="page"]{
    border-color: #082a23 !important;
    color: #fff !important;
    background: #082a23 !important;
    transform: translateY(-1px);
}

.izzigo-business-link::before, .izzigo-business-link::after, .izzigo-signin-button::before, .izzigo-signin-button::after{
    content: none !important;
}

.izzigo-dropdown-panel{
    top: calc(100% + 4px);
    padding: 17px;
    border-color: rgba(16, 55, 47, .10);
    border-radius: 16px;
    box-shadow: var(--izzigo-shell-premium-shadow);
}

.izzigo-dropdown-panel::before{
    display: none;
}

.izzigo-dropdown-panel.is-mega{
    width: min(660px, calc(100vw - 48px));
    gap: 20px;
    padding: 20px;
}

.izzigo-dropdown-group + .izzigo-dropdown-group{
    padding-left: 20px;
    border-left-color: rgba(16, 55, 47, .09);
}

.izzigo-dropdown-group h2{
    margin: 2px 10px 11px;
    color: #6c7773;
    font-size: 10px;
    letter-spacing: .1em;
}

.izzigo-dropdown-link{
    min-height: 43px;
    grid-template-columns: 27px minmax(0, 1fr);
    gap: 9px;
    padding: 7px 9px !important;
    border-radius: 10px;
    font-size: 13px !important;
}

.izzigo-menu-item-icon{
    width: 27px;
    height: 27px;
    border-radius: 0;
    color: var(--izzigo-shell-green);
    background: transparent;
}

.izzigo-menu-item-icon svg{
    width: 18px;
    height: 18px;
}

.izzigo-dropdown-link:hover, .izzigo-dropdown-link:focus-visible, .izzigo-dropdown-link[aria-current="page"]{
    background: #f1f6f3;
}

/* Premium tablet header: visible navigation in a calm second row. */
@media (min-width: 721px) and (max-width: 1040px) {
    .izzigo-header-desktop{
        display: grid;
        width: 100%;
        min-height: 118px;
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-areas:
            "logo actions"
            "nav nav";
        gap: 0 24px;
        padding: 0 24px;
    }

    .izzigo-header-desktop > .izzigo-logo{
        grid-area: logo;
        align-self: center;
    }

    .izzigo-header-actions{
        grid-area: actions;
        align-self: center;
        justify-self: end;
    }

    .izzigo-primary-nav{
        grid-area: nav;
        min-height: 50px;
        justify-content: flex-start !important;
        gap: 34px !important;
        border-top: 1px solid var(--izzigo-shell-premium-line);
    }

    .izzigo-primary-link, .izzigo-nav-dropdown-button{
        min-height: 50px;
        font-size: 14px !important;
    }

    .izzigo-primary-link[aria-current="page"]::after, .izzigo-dropdown.is-active > .izzigo-nav-dropdown-button::after{
        bottom: 7px;
    }

    .izzigo-header-mobile{
        display: none;
    }

    .izzigo-dropdown-panel{
        top: calc(100% + 2px);
    }
}

@media (max-width: 860px) and (min-width: 721px) {
    .izzigo-business-link{
        font-size: 12px !important;
    }

    .izzigo-signin-button{
        min-width: 84px;
        padding-right: 16px;
        padding-left: 16px;
    }

    .izzigo-header-actions.is-member-actions .izzigo-header-cta{
        display: none;
    }
}

/* The actual mobile header begins only at phone width. */
@media (max-width: 720px) {
    .izzigo-header-desktop{
        display: none;
    }

    .izzigo-header-mobile{
        display: grid;
    }
}

/* The protected viewport simulator must follow the same design contract. */
























/* Mobile drawer is retained for phones, but styled as a premium discovery panel. */
.izzigo-mobile-drawer{
    width: min(360px, 91vw);
    padding: max(20px, env(safe-area-inset-top)) 22px 30px;
    background: #fff;
    box-shadow: 28px 0 70px rgba(7, 30, 24, .21);
}

.izzigo-drawer-head{
    min-height: 56px;
    padding-bottom: 16px;
    border-bottom-color: var(--izzigo-shell-premium-line);
}





.izzigo-drawer-welcome{
    display: grid;
    gap: 8px;
    margin: 20px 0 2px;
    padding: 20px;
    border: 1px solid rgba(16, 55, 47, .08);
    border-radius: 16px;
    background: linear-gradient(145deg, #f4f8f5, #fbfaf6);
}

.izzigo-drawer-welcome-kicker{
    color: var(--izzigo-shell-green);
    font: 700 10px/1.2 Arial, sans-serif;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.izzigo-drawer-welcome strong{
    color: var(--izzigo-shell-green-dark);
    font-size: 17px;
    line-height: 1.35;
}

.izzigo-mobile-drawer nav{
    gap: 0;
    padding-top: 9px;
}

.izzigo-mobile-drawer nav h2{
    margin: 24px 8px 7px;
    color: #78817d;
    letter-spacing: .11em;
}

.izzigo-mobile-drawer nav a{
    min-height: 51px;
    grid-template-columns: 29px minmax(0, 1fr);
    gap: 10px;
    padding: 10px 8px;
    border-bottom: 1px solid rgba(16, 55, 47, .055);
    border-radius: 0;
    color: #17332c;
    font-size: 14px;
}

.izzigo-mobile-drawer nav a:hover, .izzigo-mobile-drawer nav a:focus-visible, .izzigo-mobile-drawer nav a[aria-current="page"]{
    color: var(--izzigo-shell-green-dark);
    background: #f3f7f4;
}

.izzigo-mobile-drawer .izzigo-menu-item-icon{
    width: 29px;
    height: 29px;
}

.izzigo-mobile-drawer nav a.izzigo-drawer-simple-link{
    display: block;
    min-height: 43px;
    padding: 11px 8px;
}

.izzigo-drawer-role{
    margin-top: 20px;
    border: 1px solid rgba(16, 55, 47, .08);
    border-radius: 14px;
    background: #f4f8f5;
}

/* --------------------------------------------------------------------------
 * v0.9.31 simplified public footer.
 * One continuous surface: brand + four navigation columns + quiet copyright.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-footer-cream: #f5f3ed;
    --izzigo-footer-ink: #123d35;
    --izzigo-footer-muted: #5e716b;
    --izzigo-footer-line: rgba(18, 61, 53, .13);
}

.izzigo-shell-footer.is-runtime-hidden{
    display: none !important;
}

.izzigo-site-footer.izzigo-shell-footer{
    padding: 0;
    color: var(--izzigo-footer-ink);
    background: var(--izzigo-footer-cream);
    font-family: var(--izzigo-shell-font-family, var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif));
}

.izzigo-shell-footer .izzigo-footer-shell{
    width: min(1240px, calc(100% - 64px));
    margin: 0 auto;
    padding: 0;
}

.izzigo-shell-footer .izzigo-footer-columns{
    display: grid;
    grid-template-columns: minmax(150px, .9fr) minmax(150px, 1.25fr) repeat(3, minmax(150px, 1fr));
    gap: clamp(34px, 4vw, 72px);
    padding: 54px 0 42px;
}

.izzigo-shell-footer .izzigo-footer-brand-column{
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
}

.izzigo-shell-footer .izzigo-footer-brand{
    min-width: 0;
}

.izzigo-shell-footer .izzigo-footer-brand .izzigo-logo{
    display: inline-flex;
    width: fit-content;
    min-height: 0;
    align-items: center;
    color: var(--izzigo-footer-ink);
}

.izzigo-shell-footer .izzigo-footer-brand .izzigo-logo-image{
    width: auto;
    max-width: 126px;
    max-height: 42px;
    object-fit: contain;
}

.izzigo-shell-footer .izzigo-footer-socials{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.izzigo-shell-footer .izzigo-footer-socials a,
.izzigo-shell-footer .izzigo-footer-socials > span{
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--izzigo-footer-line);
    border-radius: 50%;
    color: var(--izzigo-footer-muted);
    background: transparent;
    text-decoration: none;
    transition: color .15s ease, border-color .15s ease;
}

.izzigo-shell-footer .izzigo-footer-socials a:hover,
.izzigo-shell-footer .izzigo-footer-socials a:focus-visible{
    border-color: currentColor;
    color: var(--izzigo-footer-link-hover, var(--izzigo-footer-ink));
    background: transparent;
    transform: none;
}

.izzigo-shell-footer .izzigo-footer-socials > span.is-unconfigured{
    color: #9da8a3;
    cursor: help;
    opacity: .7;
}

.izzigo-shell-footer .izzigo-footer-socials svg{
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-shell-footer .izzigo-footer-section{
    display: block;
    min-width: 0;
    padding: 0;
    border: 0;
}

.izzigo-shell-footer .izzigo-footer-section-toggle,
.izzigo-shell-footer .izzigo-footer-section-toggle:hover,
.izzigo-shell-footer .izzigo-footer-section-toggle:focus,
.izzigo-shell-footer .izzigo-footer-section-toggle:active{
    display: flex;
    width: 100%;
    min-height: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 13px;
    padding: 0;
    border: 0;
    border-radius: 0;
    color: var(--izzigo-footer-ink);
    background: transparent;
    box-shadow: none;
    font: inherit;
    text-align: left;
    text-decoration: none;
    transform: none;
    transition: none;
    cursor: default;
    appearance: none;
}

.izzigo-shell-footer .izzigo-footer-section-toggle span{
    color: inherit;
    font-size: 15px;
    font-weight: 800;
}

.izzigo-shell-footer .izzigo-footer-section-toggle svg{
    display: none;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.izzigo-shell-footer .izzigo-footer-section-panel{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.izzigo-shell-footer .izzigo-footer-section-panel a,
.izzigo-shell-footer .izzigo-footer-section-panel button{
    width: fit-content;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    color: var(--izzigo-footer-muted);
    background: transparent;
    box-shadow: none;
    font-family: inherit;
    font-size: 14px;
    line-height: 1.45;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    appearance: none;
    transition: color .15s ease;
}

.izzigo-shell-footer .izzigo-footer-section-panel a:hover,
.izzigo-shell-footer .izzigo-footer-section-panel a:focus-visible,
.izzigo-shell-footer .izzigo-footer-section-panel button:hover,
.izzigo-shell-footer .izzigo-footer-section-panel button:focus-visible{
    color: var(--izzigo-footer-link-hover, var(--izzigo-footer-ink));
    background: transparent;
    text-decoration: none;
    transform: none;
}

.izzigo-shell-footer .izzigo-footer-section-panel a[aria-current="page"]{
    color: var(--izzigo-footer-ink);
    font-weight: 700;
}

.izzigo-shell-footer .izzigo-footer-bottom{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin: 0;
    padding: 20px 0 34px;
    border-top: 1px solid var(--izzigo-footer-line);
    color: var(--izzigo-footer-muted);
    background: transparent;
    font-family: inherit;
    font-size: 13px;
    line-height: 1.45;
}

.izzigo-shell-footer .izzigo-footer-bottom-main{
    display: flex;
    align-items: center;
    min-width: 0;
}

.izzigo-shell-footer .izzigo-footer-privacy-feedback{
    min-width: 0;
    color: var(--izzigo-footer-muted);
    text-align: right;
}

.izzigo-shell-footer .izzigo-footer-privacy-feedback:empty{
    display: none;
}

.izzigo-compact-footer.izzigo-shell-footer{
    display: block;
    padding: 0;
    border-top: 1px solid var(--izzigo-footer-line);
    color: var(--izzigo-footer-muted);
    background: #faf9f6;
    font-family: var(--izzigo-shell-font-family, var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif));
    font-size: 13px;
    line-height: 1.4;
}

.izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
    display: flex;
    width: min(1180px, calc(100% - 40px));
    min-height: 68px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 0 auto;
}

.izzigo-compact-footer.izzigo-shell-footer nav{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 18px;
}

.izzigo-compact-footer.izzigo-shell-footer a,
.izzigo-compact-footer.izzigo-shell-footer button{
    min-height: 0;
    padding: 0;
    border: 0;
    color: var(--izzigo-footer-ink);
    background: transparent;
    box-shadow: none;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
}

.izzigo-compact-footer.izzigo-shell-footer a:hover,
.izzigo-compact-footer.izzigo-shell-footer button:hover{
    color: var(--izzigo-footer-link-hover, var(--izzigo-footer-ink));
    text-decoration: none;
}

.izzigo-compact-footer.izzigo-shell-footer.is-legal .izzigo-compact-footer-inner{
    justify-content: center;
}

.izzigo-footer-audit-card{
    margin-top: 22px;
}

.izzigo-footer-audit-metrics, .izzigo-footer-rule-grid{
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.izzigo-footer-audit-metrics{
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.izzigo-footer-rule-grid{
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.izzigo-footer-audit-metrics article, .izzigo-footer-rule-grid article{
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
    padding: 15px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 10px;
    background: #fff;
}

.izzigo-footer-audit-metrics span, .izzigo-footer-rule-grid span{
    color: var(--izzigo-shell-muted);
    font-family: var(--izzigo-shell-font-family, var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif));
    font-size: 12px;
    line-height: 1.35;
}

.izzigo-footer-audit-metrics strong, .izzigo-footer-rule-grid strong{
    color: var(--izzigo-shell-green-dark);
    font-size: 15px;
}

.izzigo-footer-rule-grid article.is-visible{
    border-color: #b6d1c5;
    background: #f0f7f3;
}

.izzigo-footer-rule-grid article.is-excluded{
    background: #f7f6f3;
}

.izzigo-footer-integration-row{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    margin-top: 18px;
    padding: 16px;
    border-radius: 10px;
    background: #eef4f1;
}

.izzigo-footer-integration-row > div{
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.izzigo-footer-integration-row span{
    color: var(--izzigo-shell-muted);
    font-family: var(--izzigo-shell-font-family, var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif));
    font-size: 13px;
    line-height: 1.4;
}

.izzigo-footer-integration-row > button{
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid var(--izzigo-footer-ink);
    border-radius: 999px;
    color: #fff;
    background: var(--izzigo-footer-ink);
    font-weight: 750;
    cursor: pointer;
}

.izzigo-footer-integration-message{
    grid-column: 1 / -1;
    min-height: 18px;
}

[data-izzigo-footer-audit-status][data-status="ready"]{
    color: var(--izzigo-shell-green);
}

[data-izzigo-footer-audit-status][data-status="duplicate"]{
    color: #a34730;
}

/* Forced tablet preview uses a balanced three-column footer. */










/* Mobile accordion rules apply to the forced phone preview and real phones. */






























@media (min-width: 761px) {
    .izzigo-shell-footer .izzigo-footer-section-toggle{
        pointer-events: none;
    }
}

@media (max-width: 1040px) {
    /* The fixed responsive bottom menu owns 1040px and below. Keep the
     * copyright row safely above its measured reservation without creating a
     * second visual footer layer. */
    body:not(.izzigo-bottom-runtime-hidden):not(.izzigo-shell-keyboard-open):not(.izzigo-component-bottom-off)
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom{
        padding-bottom: calc(34px + var(--izzigo-shell-bottom-reserved, 0px));
    }

    body.izzigo-bottom-runtime-hidden .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom,
    body.izzigo-shell-keyboard-open .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom,
    body.izzigo-component-bottom-off .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom{
        padding-bottom: 34px;
    }
}

@media (max-width: 960px) {
    .izzigo-shell-footer .izzigo-footer-columns{
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 38px 44px;
    }

    .izzigo-footer-audit-metrics{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .izzigo-footer-rule-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .izzigo-shell-footer .izzigo-footer-shell{
        width: calc(100% - 36px);
    }

    .izzigo-shell-footer .izzigo-footer-columns{
        display: block;
        padding: 38px 0 22px;
    }

    .izzigo-shell-footer .izzigo-footer-brand-column{
        gap: 18px;
        margin-bottom: 30px;
    }

    .izzigo-shell-footer .izzigo-footer-brand .izzigo-logo-image{
        max-width: 118px;
        max-height: 40px;
    }

    .izzigo-shell-footer .izzigo-footer-section{
        padding: 0;
        border-top: 1px solid var(--izzigo-footer-line);
    }

    .izzigo-shell-footer .izzigo-footer-section:last-child{
        border-bottom: 1px solid var(--izzigo-footer-line);
    }

    .izzigo-shell-footer .izzigo-footer-section-toggle,
    .izzigo-shell-footer .izzigo-footer-section-toggle:hover,
    .izzigo-shell-footer .izzigo-footer-section-toggle:focus,
    .izzigo-shell-footer .izzigo-footer-section-toggle:active{
        min-height: 56px;
        margin: 0;
        pointer-events: auto;
        cursor: pointer;
    }

    .izzigo-shell-footer .izzigo-footer-section-toggle svg{
        display: block;
        transition: transform .18s ease;
    }

    .izzigo-shell-footer .izzigo-footer-section.is-open .izzigo-footer-section-toggle svg{
        transform: rotate(180deg);
    }

    .izzigo-shell-footer .izzigo-footer-section-panel{
        gap: 12px;
        padding: 0 0 21px;
    }

    .izzigo-shell-footer .izzigo-footer-bottom{
        align-items: flex-start;
        text-align: left;
    }

    .izzigo-shell-footer .izzigo-footer-privacy-feedback{
        text-align: left;
    }

    .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
        width: calc(100% - 34px);
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        padding: 22px 0 calc(22px + var(--izzigo-shell-bottom-height) + env(safe-area-inset-bottom));
    }

    .izzigo-compact-footer.izzigo-shell-footer nav{
        justify-content: flex-start;
        gap: 14px 18px;
    }

    .izzigo-footer-rule-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .izzigo-footer-integration-row{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .izzigo-footer-audit-metrics, .izzigo-footer-rule-grid{
        grid-template-columns: 1fr;
    }
}

/* v0.4.0 specificity safeguards against older preview rules. */






@media (max-width: 760px) {
    .izzigo-site-footer.izzigo-shell-footer{
        padding: 0;
    }

    body.izzigo-shell-mode-minimal .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner, body.izzigo-bottom-runtime-hidden .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner, body.izzigo-shell-keyboard-open .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
        padding-bottom: 22px;
    }

    body.izzigo-bottom-runtime-hidden .izzigo-shell-footer .izzigo-footer-bottom, body.izzigo-shell-keyboard-open .izzigo-shell-footer .izzigo-footer-bottom{
        padding-bottom: 20px;
    }
}

/* Checkout, login, registration, and all legal-only footer variants never reserve bottom-menu space. */
body.izzigo-shell-surface-checkout .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner, body.izzigo-shell-surface-auth .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner, body.izzigo-shell-surface-onboarding .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner, .izzigo-compact-footer.izzigo-shell-footer.is-legal .izzigo-compact-footer-inner{
    padding-bottom: 22px;
}

.izzigo-footer-rule-title{
    margin: 24px 0 -6px;
    color: var(--izzigo-shell-green-dark);
    font-size: 16px;
}

.izzigo-footer-surface-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 960px) {
    .izzigo-footer-surface-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .izzigo-footer-surface-grid{
        grid-template-columns: 1fr;
    }
}

.izzigo-shell-footer .izzigo-footer-slogan{
    font-family: inherit;
}

/* v0.4.1 legacy footer refinement — public presentation consolidated into
 * the v0.9.31 one-surface block above. Keep only shared reservation/audit
 * behavior here for backward-compatible admin diagnostics. */
:root{
    --izzigo-shell-bottom-reserved: 0px;
}

.izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
    min-height: 62px;
}

.izzigo-compact-footer.izzigo-shell-footer nav{
    gap: 14px 18px;
}

.izzigo-footer-audit-metrics{
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.izzigo-footer-clearance-audit{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 12px;
    padding: 14px 16px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 10px;
    background: #fff;
}

.izzigo-footer-clearance-audit span{
    color: var(--izzigo-shell-muted);
    font-family: var(--izzigo-shell-font-family, var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif));
    font-size: 13px;
    line-height: 1.4;
    text-align: right;
}

.izzigo-footer-clearance-audit span[data-status="ready"]{
    color: var(--izzigo-shell-green);
}

.izzigo-compact-footer.izzigo-shell-footer.is-legal .izzigo-compact-footer-inner{
    padding-bottom: 20px;
}

@media (max-width: 960px) {
    .izzigo-footer-audit-metrics{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
        padding-bottom: calc(20px + var(--izzigo-shell-bottom-reserved));
    }

    .izzigo-footer-clearance-audit{
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .izzigo-footer-clearance-audit span{
        text-align: left;
    }
}

@media (max-width: 560px) {
    .izzigo-footer-audit-metrics{
        grid-template-columns: 1fr;
    }
}

/* --------------------------------------------------------------------------
 * v0.5.1 first live-rollout refinement.
 * Precise legacy replacement, measured offsets, live audit and admin status.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-admin-bar-height: 0px;
    --izzigo-shell-live-header-height: 0px;
}

body.izzigo-shell-live-active .izzigo-shell-legacy-hidden{
    display: none !important;
}

body.izzigo-shell-live-active.izzigo-shell-sticky-header .izzigo-site-header, body.izzigo-shell-live-active.izzigo-shell-sticky-header .izzigo-minimal-header{
    position: sticky;
    top: var(--izzigo-shell-admin-bar-height);
}

body.izzigo-shell-live-active.izzigo-shell-static-header .izzigo-site-header, body.izzigo-shell-live-active.izzigo-shell-static-header .izzigo-minimal-header{
    position: relative;
    top: auto;
}

body.izzigo-shell-live-active .izzigo-site-header.izzigo-shell-header{
    transition: box-shadow .2s ease, border-color .2s ease, background-color .2s ease;
}

body.izzigo-shell-live-active .izzigo-site-header.izzigo-shell-header.is-scrolled{
    border-bottom-color: rgba(16, 55, 47, .08);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 10px 30px rgba(13, 43, 35, .09);
}

body.izzigo-shell-live-active .izzigo-mobile-drawer{
    top: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-live-header-height));
    max-height: calc(100dvh - var(--izzigo-shell-admin-bar-height) - var(--izzigo-shell-live-header-height));
}

body.izzigo-shell-live-active .izzigo-drawer-backdrop{
    inset: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-live-header-height)) 0 0;
}

body.izzigo-shell-live-active.izzigo-shell-content-clearance-needed{
    padding-bottom: var(--izzigo-shell-bottom-reserved);
}

.izzigo-shell-admin-status{
    position: fixed;
    z-index: 2147482000;
    right: 18px;
    bottom: calc(18px + var(--izzigo-shell-bottom-reserved));
    width: min(340px, calc(100vw - 36px));
    color: #17332c;
    font: 13px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.izzigo-shell-admin-status > button{
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    gap: 9px;
    float: right;
    margin: 0;
    padding: 0 14px;
    border: 1px solid rgba(16, 55, 47, .18);
    border-radius: 999px;
    color: #17332c;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 8px 24px rgba(13, 43, 35, .14);
    cursor: pointer;
    font: inherit;
    font-weight: 700;
}

.izzigo-shell-admin-status > button:hover, .izzigo-shell-admin-status > button:focus-visible{
    border-color: rgba(16, 55, 47, .36);
    background: #fff;
}

.izzigo-shell-admin-status-dot{
    width: 9px;
    height: 9px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #2d806b;
    box-shadow: 0 0 0 4px rgba(45, 128, 107, .12);
}

.izzigo-shell-admin-status[data-status="suppressed"] .izzigo-shell-admin-status-dot{
    background: #a56b17;
    box-shadow: 0 0 0 4px rgba(165, 107, 23, .13);
}

.izzigo-shell-admin-status[data-status="conflict"] .izzigo-shell-admin-status-dot{
    background: #b42318;
    box-shadow: 0 0 0 4px rgba(180, 35, 24, .12);
}

.izzigo-shell-admin-status [data-izzigo-live-status-panel]{
    clear: both;
    margin-bottom: 10px;
    padding: 18px;
    border: 1px solid rgba(16, 55, 47, .13);
    border-radius: 16px;
    background: rgba(255, 255, 255, .99);
    box-shadow: 0 22px 60px rgba(13, 43, 35, .18);
}

.izzigo-shell-admin-status [data-izzigo-live-status-panel][hidden]{
    display: none !important;
}

.izzigo-shell-admin-status [data-izzigo-live-status-panel] > strong{
    display: block;
    margin-bottom: 12px;
    color: #0d3b31;
    font-size: 15px;
}

.izzigo-shell-admin-status dl{
    display: grid;
    gap: 8px;
    margin: 0;
}

.izzigo-shell-admin-status dl > div{
    display: grid;
    grid-template-columns: minmax(88px, .8fr) minmax(0, 1.4fr);
    gap: 12px;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(16, 55, 47, .08);
}

.izzigo-shell-admin-status dt{
    color: #66756f;
}

.izzigo-shell-admin-status dd{
    margin: 0;
    color: #17332c;
    font-weight: 650;
    text-align: right;
}

.izzigo-shell-admin-status dd[data-status="suppressed"]{
    color: #8a5b17;
}

.izzigo-shell-admin-status dd[data-status="conflict"], .izzigo-shell-admin-status dd[data-status="missing"]{
    color: #b42318;
}

.izzigo-shell-admin-status [data-izzigo-live-audit-summary]{
    margin: 13px 0 10px;
    color: #536861;
    font-size: 12px;
}

.izzigo-shell-admin-status a{
    color: #176d5a;
    font-weight: 700;
    text-decoration: none;
}

.izzigo-shell-admin-status a:hover, .izzigo-shell-admin-status a:focus-visible{
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 782px) {
    .izzigo-shell-admin-status{
        right: 12px;
        bottom: calc(12px + var(--izzigo-shell-bottom-reserved));
        width: min(320px, calc(100vw - 24px));
    }

    .izzigo-shell-admin-status [data-izzigo-live-status-panel]{
        padding: 15px;
    }
}

/* --------------------------------------------------------------------------
 * v0.5.2 live visual correction and alignment layer.
 * Content-width matching, smart sticky movement, viewport-safe dropdowns,
 * mobile browser viewport sizing, and stronger live theme protection.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-content-width: 1280px;
    --izzigo-shell-horizontal-padding: 28px;
    --izzigo-shell-desktop-logo-width: 132px;
    --izzigo-shell-mobile-logo-width: 112px;
    --izzigo-shell-visual-viewport-height: 100dvh;
    --izzigo-shell-visual-viewport-offset-top: 0px;
}

body.izzigo-shell-live-active .izzigo-header-desktop{
    width: min(var(--izzigo-shell-content-width), calc(100% - (var(--izzigo-shell-horizontal-padding) * 2)));
}

body.izzigo-shell-live-active .izzigo-header-desktop .izzigo-logo-image{
    width: auto;
    max-width: var(--izzigo-shell-desktop-logo-width);
    object-fit: contain;
}

body.izzigo-shell-live-active .izzigo-header-mobile .izzigo-logo-image, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-logo-image{
    width: auto;
    max-width: var(--izzigo-shell-mobile-logo-width);
    object-fit: contain;
}

body.izzigo-shell-live-active .izzigo-shell-footer .izzigo-footer-shell, body.izzigo-shell-live-active .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
    width: min(var(--izzigo-shell-content-width), calc(100% - (var(--izzigo-shell-horizontal-padding) * 2)));
}

body.izzigo-shell-live-active .izzigo-site-header.izzigo-shell-header, body.izzigo-shell-live-active .izzigo-minimal-header.izzigo-shell-header{
    will-change: transform;
    transition: transform .24s cubic-bezier(.22, .61, .36, 1), box-shadow .2s ease, border-color .2s ease, background-color .2s ease;
}

body.izzigo-shell-live-active.izzigo-shell-smart-sticky-header.izzigo-shell-smart-header-hidden .izzigo-site-header.izzigo-shell-header, body.izzigo-shell-live-active.izzigo-shell-smart-sticky-header.izzigo-shell-smart-header-hidden .izzigo-minimal-header.izzigo-shell-header{
    pointer-events: none;
    transform: translateY(calc(-100% - 2px));
}

body.izzigo-shell-live-active.izzigo-drawer-is-open .izzigo-site-header.izzigo-shell-header, body.izzigo-shell-live-active:has(.izzigo-dropdown.is-open) .izzigo-site-header.izzigo-shell-header{
    pointer-events: auto;
    transform: translateY(0);
}

body.izzigo-shell-live-active .izzigo-dropdown-panel{
    max-width: calc(100vw - 24px);
    transform: translateX(var(--izzigo-dropdown-shift-x, 0px));
    transition: transform .12s ease, opacity .12s ease;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer{
    top: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-live-header-height) + var(--izzigo-shell-visual-viewport-offset-top));
    height: auto;
    max-height: calc(var(--izzigo-shell-visual-viewport-height) - var(--izzigo-shell-admin-bar-height) - var(--izzigo-shell-live-header-height));
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

body.izzigo-shell-live-active .izzigo-drawer-backdrop{
    inset: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-live-header-height) + var(--izzigo-shell-visual-viewport-offset-top)) 0 0;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close], body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible{
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border: 1px solid rgba(16, 55, 47, .16) !important;
    border-radius: 50% !important;
    color: var(--izzigo-shell-green-dark) !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]::before, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]::after{
    content: none !important;
}

.izzigo-shell-admin-status [data-izzigo-live-layout-status][data-status="aligned"], .izzigo-shell-admin-status [data-izzigo-live-dropdown-status][data-status="ready"]{
    color: #176247;
}

.izzigo-shell-admin-status [data-izzigo-live-layout-status][data-status="fallback"], .izzigo-shell-admin-status [data-izzigo-live-dropdown-status][data-status="adjusted"]{
    color: #8a5b12;
}

@media (min-width: 721px) and (max-width: 1040px) {
    body.izzigo-shell-live-active .izzigo-header-desktop{
        width: 100%;
        padding-right: max(20px, var(--izzigo-shell-horizontal-padding));
        padding-left: max(20px, var(--izzigo-shell-horizontal-padding));
    }
}

@media (max-width: 720px) {
    body.izzigo-shell-live-active .izzigo-shell-footer .izzigo-footer-shell, body.izzigo-shell-live-active .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
        width: calc(100% - 32px);
    }
}

@media (prefers-reduced-motion: reduce) {
    body.izzigo-shell-live-active .izzigo-site-header.izzigo-shell-header, body.izzigo-shell-live-active .izzigo-minimal-header.izzigo-shell-header, body.izzigo-shell-live-active .izzigo-dropdown-panel{
        transition: none !important;
    }
}

/* --------------------------------------------------------------------------
 * v0.7.0 dashboard shell integration.
 * Compact Traveler/Business headers, role-led navigation, and strict wizard
 * separation. Dashboard plugins remain the owners of dashboard content.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-dashboard-integrated{
    --izzigo-dashboard-accent: var(--izzigo-shell-green);
    --izzigo-dashboard-accent-soft: rgba(24, 72, 61, .08);
}

body.izzigo-shell-dashboard-traveler{
    --izzigo-dashboard-accent: var(--izzigo-shell-traveler-accent, #b84f43);
    --izzigo-dashboard-accent-soft: rgba(184, 79, 67, .08);
}

body.izzigo-shell-dashboard-business{
    --izzigo-dashboard-accent: var(--izzigo-shell-business-accent, #176247);
    --izzigo-dashboard-accent-soft: rgba(23, 98, 71, .08);
}

.izzigo-dashboard-header.izzigo-shell-header{
    border-bottom-color: rgba(16, 55, 47, .12);
    background: rgba(255, 255, 255, .985);
}

.izzigo-dashboard-header-inner{
    min-height: 68px;
    gap: 24px;
}

.izzigo-dashboard-brand{
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.izzigo-dashboard-brand-divider{
    width: 1px;
    height: 28px;
    background: rgba(16, 55, 47, .16);
}

.izzigo-dashboard-brand-title{
    color: #40534d;
    font-size: 13px;
    font-weight: 750;
    letter-spacing: .015em;
    white-space: nowrap;
}

.izzigo-dashboard-primary-nav{
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 3px;
}

.izzigo-dashboard-nav-link{
    position: relative;
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border-radius: 9px;
    color: #42544e;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    transition: color .16s ease, background-color .16s ease;
}

.izzigo-dashboard-nav-link:hover, .izzigo-dashboard-nav-link:focus-visible{
    color: var(--izzigo-dashboard-accent);
    background: var(--izzigo-dashboard-accent-soft);
}

.izzigo-dashboard-nav-link[aria-current="page"]{
    color: var(--izzigo-dashboard-accent);
    background: var(--izzigo-dashboard-accent-soft);
}

.izzigo-dashboard-nav-link[aria-current="page"]::after{
    position: absolute;
    right: 12px;
    bottom: 3px;
    left: 12px;
    height: 2px;
    border-radius: 2px;
    background: var(--izzigo-dashboard-accent);
    content: "";
}

.izzigo-dashboard-nav-icon{
    display: inline-flex;
    width: 17px;
    height: 17px;
    align-items: center;
    justify-content: center;
}

.izzigo-dashboard-nav-icon svg{
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.izzigo-dashboard-header .izzigo-account-button{
    max-width: 190px;
}

.izzigo-dashboard-header .izzigo-account-button > span:not(.izzigo-account-avatar){
    max-width: 108px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-dashboard-mobile-brand{
    position: absolute;
    left: 50%;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    transform: translateX(-50%);
}

.izzigo-dashboard-mobile-brand .izzigo-logo{
    position: static;
    transform: none;
}

.izzigo-dashboard-mobile-brand small{
    color: var(--izzigo-dashboard-accent);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
}

.izzigo-dashboard-drawer-heading{
    display: grid;
    gap: 4px;
    margin: 4px 18px 12px;
    padding: 15px 16px;
    border: 1px solid rgba(16, 55, 47, .1);
    border-radius: 12px;
    background: var(--izzigo-dashboard-accent-soft);
}

.izzigo-dashboard-drawer-heading span{
    color: #71817b;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.izzigo-dashboard-drawer-heading strong{
    color: var(--izzigo-dashboard-accent);
    font-size: 16px;
}

body.izzigo-shell-dashboard-integrated .izzigo-compact-footer.izzigo-shell-footer .izzigo-compact-footer-inner{
    border-top-color: rgba(16, 55, 47, .1);
}

body.izzigo-shell-business-wizard-excluded .izzigo-site-header, body.izzigo-shell-business-wizard-excluded .izzigo-bottom-nav, body.izzigo-shell-business-wizard-excluded .izzigo-site-footer, body.izzigo-shell-business-wizard-excluded .izzigo-compact-footer{
    display: none !important;
}

@media (max-width: 1180px) and (min-width: 721px) {
    .izzigo-dashboard-header-inner{
        gap: 14px;
    }

    .izzigo-dashboard-brand-title, .izzigo-dashboard-nav-icon{
        display: none;
    }

    .izzigo-dashboard-nav-link{
        padding-right: 9px;
        padding-left: 9px;
        font-size: 12px;
    }

    .izzigo-dashboard-header .izzigo-account-button > span{
        display: none;
    }
}

@media (max-width: 920px) and (min-width: 721px) {
    .izzigo-dashboard-primary-nav{
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .izzigo-dashboard-primary-nav::-webkit-scrollbar{
        display: none;
    }

    .izzigo-dashboard-nav-link{
        flex: 0 0 auto;
    }
}

@media (max-width: 720px) {
    .izzigo-dashboard-header-mobile{
        min-height: 62px;
    }

    .izzigo-dashboard-mobile-brand .izzigo-logo-image{
        max-height: 29px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .izzigo-dashboard-nav-link{
        transition: none;
    }
}





@media (min-width: 721px) and (max-width: 1040px) {
    .izzigo-dashboard-header-inner{
        display: flex;
        min-height: 72px;
        grid-template: none;
        grid-template-areas: none;
        gap: 14px;
    }

    .izzigo-dashboard-header-inner .izzigo-header-actions{
        margin-left: auto;
        justify-self: auto;
    }

    .izzigo-dashboard-primary-nav{
        min-height: 0;
        border-top: 0;
    }
}








/* --------------------------------------------------------------------------
 * v0.7.1 administrator Brand & Content Studio integration.
 * Values are supplied as sanitized CSS variables through inline styles.
 * -------------------------------------------------------------------------- */
.izzigo-drawer-graphic{
    margin: 14px 18px 0;
    overflow: hidden;
    border-radius: 14px;
    background: var(--izzigo-shell-cream);
}

.izzigo-drawer-graphic-image{
    display: block;
    width: 100%;
    max-height: 180px;
    object-fit: cover;
}

.izzigo-logo-context-footer .izzigo-logo-image{
    max-height: 48px;
}

.izzigo-site-footer.izzigo-shell-footer{
    color: var(--izzigo-footer-ink);
    background-color: var(--izzigo-footer-cream);
}

.izzigo-bottom-nav{
    color: var(--izzigo-shell-bottom-text, #65736d);
    background-color: var(--izzigo-shell-bottom-bg, #fff);
}

.izzigo-bottom-nav a{
    color: var(--izzigo-shell-bottom-text, #65736d);
}

.izzigo-bottom-nav a[aria-current="page"]{
    background-color: var(--izzigo-shell-bottom-active-bg, #eaf1ed);
}

@media (max-width: 760px) {
    .izzigo-drawer-graphic{
        margin-right: 14px;
        margin-left: 14px;
    }
}


/* v0.7.2 Brand Studio social styles and visual refinements */
.izzigo-footer-socials.izzigo-social-style-filled a, .izzigo-footer-socials.izzigo-social-style-filled > span{
    color: #fff;
    border-color: var(--izzigo-shell-green);
    background: var(--izzigo-shell-green);
}
.izzigo-footer-socials.izzigo-social-style-filled a:hover, .izzigo-footer-socials.izzigo-social-style-filled a:focus-visible{
    color: #fff;
    border-color: var(--izzigo-shell-green-dark);
    background: var(--izzigo-shell-green-dark);
}
.izzigo-footer-socials.izzigo-social-style-minimal a, .izzigo-footer-socials.izzigo-social-style-minimal > span{
    width: 30px;
    height: 30px;
    border-color: transparent;
    background: transparent;
}
.izzigo-footer-socials.izzigo-social-style-minimal a:hover, .izzigo-footer-socials.izzigo-social-style-minimal a:focus-visible{
    border-color: transparent;
    background: rgba(255,255,255,.5);
}
.izzigo-shell-header .izzigo-dashboard-primary-nav a, .izzigo-shell-header .izzigo-dashboard-mobile-nav a{
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}
.izzigo-shell-footer .izzigo-footer-brand-row{ align-items:flex-start; }

/* --------------------------------------------------------------------------
 * v0.8.1 Premium Navigation Manager device visibility.
 * The protected preview can simulate tablet or phone layouts on a wide
 * browser, so natural media-query rules are disabled while a forced preview
 * class is active.
 * -------------------------------------------------------------------------- */
@media (min-width: 1181px) {
    
}

@media (min-width: 721px) and (max-width: 1180px) {
    
}

@media (max-width: 720px) {
    
}



/* --------------------------------------------------------------------------
 * v0.8.2 Premium Global Search
 * -------------------------------------------------------------------------- */
body.izzigo-search-is-open{
    overflow: hidden !important;
}

body.izzigo-search-is-open .izzigo-bottom-nav{
    transform: translateY(120%) !important;
    pointer-events: none !important;
}

.izzigo-global-search[hidden]{
    display: none !important;
}

.izzigo-global-search{
    position: fixed;
    z-index: 100100;
    inset: 0;
    display: grid;
    place-items: start center;
    padding: max(34px, calc(var(--izzigo-shell-admin-offset, 0px) + 22px)) 24px 34px;
    font-family: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
}

.izzigo-search-backdrop{
    position: absolute;
    inset: 0;
    background: rgba(10, 27, 23, .58);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.izzigo-search-dialog{
    position: relative;
    width: min(1020px, 100%);
    max-height: calc(100dvh - max(68px, var(--izzigo-shell-admin-offset, 0px)));
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 24px;
    color: var(--izzigo-shell-text);
    background: color-mix(in srgb, var(--izzigo-shell-surface) 97%, var(--izzigo-shell-cream));
    box-shadow: 0 34px 90px rgba(8, 31, 25, .32);
    animation: izzigo-search-enter .2s ease-out both;
}

@keyframes izzigo-search-enter {
    from { opacity: 0; transform: translateY(-12px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.izzigo-search-dialog-head{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 28px 30px 18px;
}

.izzigo-search-kicker{
    display: block;
    margin-bottom: 5px;
    color: var(--izzigo-shell-green);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.izzigo-search-dialog h2{
    margin: 0;
    color: var(--izzigo-shell-text);
    font: inherit;
    font-size: clamp(24px, 3vw, 38px);
    font-weight: 800;
    line-height: 1.08;
}

.izzigo-search-close, .izzigo-search-dialog button{
    appearance: none;
    box-shadow: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    font: inherit;
}

.izzigo-search-close{
    display: grid;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    place-items: center;
    margin: 0;
    padding: 0;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 999px;
    color: var(--izzigo-shell-text);
    background: var(--izzigo-shell-surface);
    cursor: pointer;
}

.izzigo-search-close svg, .izzigo-search-input-icon svg, .izzigo-search-result-icon svg, .izzigo-search-group-icon svg{
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.izzigo-search-close:hover, .izzigo-search-close:focus-visible{
    border-color: var(--izzigo-shell-green);
    color: var(--izzigo-shell-green);
    background: var(--izzigo-shell-cream);
}

.izzigo-search-form{
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    margin: 0 30px;
    padding: 7px 8px 7px 17px;
    border: 1px solid color-mix(in srgb, var(--izzigo-shell-green) 35%, var(--izzigo-shell-line));
    border-radius: 999px;
    background: var(--izzigo-shell-surface);
    box-shadow: 0 10px 28px rgba(18, 62, 51, .08);
}

.izzigo-search-form:focus-within{
    border-color: var(--izzigo-shell-green);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--izzigo-shell-green) 12%, transparent), 0 12px 34px rgba(18, 62, 51, .1);
}

.izzigo-search-input-icon{
    display: inline-grid;
    place-items: center;
    color: var(--izzigo-shell-green);
}

.izzigo-search-form input[type="search"]{
    min-width: 0;
    width: 100%;
    height: 48px;
    margin: 0;
    padding: 0 4px;
    border: 0 !important;
    outline: 0 !important;
    color: var(--izzigo-shell-text);
    background: transparent !important;
    box-shadow: none !important;
    font: inherit;
    font-size: 17px;
    font-weight: 600;
}

.izzigo-search-form input[type="search"]::-webkit-search-cancel-button{
    display: none;
}

.izzigo-search-form input::placeholder{
    color: color-mix(in srgb, var(--izzigo-shell-muted) 86%, transparent);
    opacity: 1;
}

.izzigo-search-clear{
    min-height: 36px;
    padding: 0 10px;
    border: 0;
    color: var(--izzigo-shell-muted);
    background: transparent;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.izzigo-search-submit{
    min-height: 44px;
    padding: 0 24px;
    border: 1px solid var(--izzigo-shell-green);
    border-radius: 999px;
    color: #fff;
    background: var(--izzigo-shell-green);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.izzigo-search-submit:hover, .izzigo-search-submit:focus-visible{
    border-color: var(--izzigo-shell-green-dark);
    background: var(--izzigo-shell-green-dark);
}

.izzigo-search-helper{
    margin: 10px 32px 0;
    color: var(--izzigo-shell-muted);
    font-size: 13px;
    line-height: 1.5;
}

.izzigo-search-content{
    max-height: min(58vh, 620px);
    overflow: auto;
    overscroll-behavior: contain;
    padding: 22px 30px 26px;
    scrollbar-width: thin;
    scrollbar-color: var(--izzigo-shell-line) transparent;
}

.izzigo-search-start-section + .izzigo-search-start-section{
    margin-top: 25px;
    padding-top: 23px;
    border-top: 1px solid var(--izzigo-shell-line);
}

.izzigo-search-section-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 12px;
}

.izzigo-search-section-head h3, .izzigo-search-result-group > h3{
    margin: 0;
    color: var(--izzigo-shell-text);
    font: inherit;
    font-size: 14px;
    font-weight: 800;
}

.izzigo-search-clear-recent{
    padding: 0;
    border: 0;
    color: var(--izzigo-shell-muted);
    background: transparent;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.izzigo-search-clear-recent:hover, .izzigo-search-clear-recent:focus-visible{
    color: var(--izzigo-shell-green);
    text-decoration: underline;
}

.izzigo-search-suggestions{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.izzigo-search-suggestion, .izzigo-search-recents button{
    display: flex;
    min-width: 0;
    min-height: 54px;
    align-items: center;
    gap: 11px;
    padding: 11px 14px;
    border: 1px solid var(--izzigo-shell-line);
    border-radius: 14px;
    color: var(--izzigo-shell-text);
    background: var(--izzigo-shell-surface);
    box-shadow: none;
    font: inherit;
    font-size: 14px;
    font-weight: 750;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.izzigo-search-suggestion:hover, .izzigo-search-suggestion:focus-visible, .izzigo-search-recents button:hover, .izzigo-search-recents button:focus-visible{
    border-color: color-mix(in srgb, var(--izzigo-shell-green) 50%, var(--izzigo-shell-line));
    color: var(--izzigo-shell-green);
    background: var(--izzigo-shell-cream);
    transform: translateY(-1px);
}

.izzigo-search-suggestion .izzigo-search-result-icon, .izzigo-search-recents .izzigo-search-result-icon{
    display: grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 10px;
    color: var(--izzigo-shell-green);
    background: color-mix(in srgb, var(--izzigo-shell-green) 9%, var(--izzigo-shell-surface));
}

.izzigo-search-recents{
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.izzigo-search-recents button{
    min-height: 44px;
    padding: 7px 13px 7px 8px;
    border-radius: 999px;
}

.izzigo-search-recents .izzigo-search-result-icon{
    flex-basis: 29px;
    width: 29px;
    height: 29px;
    border-radius: 999px;
}

.izzigo-search-recents .izzigo-search-result-icon svg{
    width: 17px;
    height: 17px;
}

.izzigo-search-result-group + .izzigo-search-result-group{
    margin-top: 25px;
    padding-top: 23px;
    border-top: 1px solid var(--izzigo-shell-line);
}

.izzigo-search-result-group > h3{
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 11px;
}

.izzigo-search-result-group > h3 small{
    display: grid;
    min-width: 22px;
    height: 22px;
    place-items: center;
    margin-left: auto;
    border-radius: 999px;
    color: var(--izzigo-shell-muted);
    background: var(--izzigo-shell-cream);
    font-size: 11px;
}

.izzigo-search-group-icon{
    display: inline-grid;
    place-items: center;
    color: var(--izzigo-shell-green);
}

.izzigo-search-group-icon svg{
    width: 18px;
    height: 18px;
}

.izzigo-search-result-list{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.izzigo-search-result{
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    min-width: 0;
    min-height: 66px;
    align-items: center;
    gap: 12px;
    padding: 8px 12px 8px 8px;
    border: 1px solid transparent;
    border-radius: 14px;
    color: var(--izzigo-shell-text);
    background: transparent;
    text-decoration: none;
}

.izzigo-search-result:hover, .izzigo-search-result:focus-visible{
    border-color: var(--izzigo-shell-line);
    color: var(--izzigo-shell-green);
    background: var(--izzigo-shell-surface);
    box-shadow: 0 8px 24px rgba(20, 57, 48, .08);
}

.izzigo-search-result > img, .izzigo-search-result > .izzigo-search-result-icon{
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 12px;
    color: var(--izzigo-shell-green);
    background: color-mix(in srgb, var(--izzigo-shell-green) 9%, var(--izzigo-shell-surface));
    object-fit: cover;
}

.izzigo-search-result-copy{
    display: block;
    min-width: 0;
}

.izzigo-search-result-copy strong, .izzigo-search-result-copy small{
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-search-result-copy strong{
    font-size: 14px;
    line-height: 1.35;
}

.izzigo-search-result-copy small{
    margin-top: 3px;
    color: var(--izzigo-shell-muted);
    font-size: 11px;
    font-weight: 600;
}

.izzigo-search-result-arrow{
    color: var(--izzigo-shell-muted);
    font-size: 18px;
}

.izzigo-search-loading, .izzigo-search-empty{
    display: flex;
    min-height: 190px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 30px;
    color: var(--izzigo-shell-muted);
    text-align: center;
}

.izzigo-search-loading > span{
    width: 34px;
    height: 34px;
    border: 3px solid var(--izzigo-shell-line);
    border-top-color: var(--izzigo-shell-green);
    border-radius: 999px;
    animation: izzigo-search-spin .7s linear infinite;
}

@keyframes izzigo-search-spin { to { transform: rotate(360deg); } }

.izzigo-search-empty > .izzigo-search-result-icon{
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 16px;
    color: var(--izzigo-shell-green);
    background: var(--izzigo-shell-cream);
}

.izzigo-search-empty strong{
    color: var(--izzigo-shell-text);
    font-size: 16px;
}

.izzigo-search-empty a{
    color: var(--izzigo-shell-green);
    font-size: 13px;
    font-weight: 800;
}

.izzigo-search-minimum{
    margin: 0;
    padding: 30px 20px;
    color: var(--izzigo-shell-muted);
    text-align: center;
}

.izzigo-search-footer{
    display: flex;
    min-height: 58px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 12px 30px;
    border-top: 1px solid var(--izzigo-shell-line);
    background: color-mix(in srgb, var(--izzigo-shell-cream) 75%, var(--izzigo-shell-surface));
}

.izzigo-search-footer a{
    color: var(--izzigo-shell-green);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.izzigo-search-footer > span{
    color: var(--izzigo-shell-muted);
    font-size: 11px;
}

.izzigo-global-search :focus-visible{
    outline: 3px solid color-mix(in srgb, var(--izzigo-shell-green) 38%, transparent);
    outline-offset: 2px;
}

@media (max-width: 820px), (max-height: 680px) {
    .izzigo-global-search{
        display: block;
        padding: 0;
    }

    .izzigo-search-backdrop{
        display: none;
    }

    .izzigo-search-dialog{
        width: 100%;
        height: 100dvh;
        max-height: none;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        animation: izzigo-search-mobile-enter .18s ease-out both;
    }

    @keyframes izzigo-search-mobile-enter {
        from { opacity: 0; transform: translateY(12px); }
        to { opacity: 1; transform: translateY(0); }
    }

    .admin-bar .izzigo-search-dialog{
        height: calc(100dvh - var(--izzigo-shell-admin-offset, 0px));
        margin-top: var(--izzigo-shell-admin-offset, 0px);
    }

    .izzigo-search-dialog-head{
        align-items: center;
        padding: 18px 18px 14px;
    }

    .izzigo-search-kicker{
        display: none;
    }

    .izzigo-search-dialog h2{
        font-size: 22px;
    }

    .izzigo-search-form{
        grid-template-columns: auto minmax(0, 1fr) auto;
        margin: 0 16px;
        padding-left: 14px;
        border-radius: 16px;
    }

    .izzigo-search-form input[type="search"]{
        height: 46px;
        font-size: 16px;
    }

    .izzigo-search-submit{
        display: none;
    }

    .izzigo-search-helper{
        margin: 9px 18px 0;
        font-size: 12px;
    }

    .izzigo-search-content{
        max-height: calc(100dvh - 185px - var(--izzigo-shell-admin-offset, 0px));
        padding: 20px 16px 26px;
    }

    .izzigo-search-suggestions, .izzigo-search-result-list{
        grid-template-columns: 1fr;
    }

    .izzigo-search-suggestion{
        min-height: 50px;
    }

    .izzigo-search-result{
        grid-template-columns: 46px minmax(0, 1fr) auto;
        min-height: 62px;
        padding-right: 7px;
    }

    .izzigo-search-result > img, .izzigo-search-result > .izzigo-search-result-icon{
        width: 46px;
        height: 46px;
    }

    .izzigo-search-footer{
        position: sticky;
        bottom: 0;
        min-height: 52px;
        padding: 10px 17px calc(10px + env(safe-area-inset-bottom));
    }

    .izzigo-search-footer > span{
        display: none;
    }
}







@media (prefers-reduced-motion: reduce) {
    .izzigo-search-dialog, .izzigo-search-loading > span, .izzigo-search-suggestion, .izzigo-search-result{
        animation: none !important;
        transition: none !important;
    }
}

.izzigo-global-search .screen-reader-text{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* --------------------------------------------------------------------------
 * v0.8.3 — Accessibility hardening
 * -------------------------------------------------------------------------- */
.izzigo-shell-a11y-enabled .screen-reader-text, .izzigo-shell-a11y-enabled .izzigo-screen-reader-text{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.izzigo-skip-links{
    position: fixed;
    inset-block-start: calc(var(--wp-admin--admin-bar--height, 0px) + 8px);
    inset-inline-start: 12px;
    z-index: 2147483646;
}

.izzigo-skip-links a{
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 16px;
    border: 2px solid currentColor;
    border-radius: 10px;
    background: var(--izzigo-shell-surface, #fff);
    color: var(--izzigo-shell-text, #1f2926);
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 8px 26px rgba(16, 55, 47, .2);
    transform: translateY(calc(-100% - 24px));
    transition: transform .16s ease;
}

.izzigo-skip-links a:focus, .izzigo-skip-links a:focus-visible{
    transform: translateY(0);
    outline: 3px solid var(--izzigo-shell-green, #18483d);
    outline-offset: 3px;
}

.izzigo-skip-links a[aria-disabled="true"]{
    display: none;
}

.izzigo-shell-a11y-enabled [data-izzigo-main-target]:focus{
    outline: 3px solid var(--izzigo-shell-green, #18483d);
    outline-offset: 5px;
}



.izzigo-shell-a11y-enabled :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-link,
    .izzigo-account-button,
    .izzigo-icon-button,
    .izzigo-header-cta,
    .izzigo-business-link,
    .izzigo-signin-button,
    .izzigo-dashboard-nav-link,
    .izzigo-mobile-drawer nav a,
    .izzigo-bottom-nav a,
    .izzigo-footer-section-toggle,
    .izzigo-footer-section-panel a,
    .izzigo-footer-section-panel button,
    .izzigo-footer-socials a,
    .izzigo-search-close,
    .izzigo-search-clear,
    .izzigo-search-submit,
    .izzigo-search-suggestion,
    .izzigo-search-result
){
    min-block-size: 44px;
}

.izzigo-shell-a11y-enabled .izzigo-footer-section-panel a, .izzigo-shell-a11y-enabled .izzigo-footer-section-panel button{
    display: flex;
    align-items: center;
}

.izzigo-shell-a11y-enabled :where(
    .izzigo-header-desktop,
    .izzigo-header-actions,
    .izzigo-primary-nav,
    .izzigo-dashboard-nav,
    .izzigo-footer-shell,
    .izzigo-footer-columns,
    .izzigo-footer-section,
    .izzigo-search-dialog,
    .izzigo-search-content
){
    min-width: 0;
}

.izzigo-shell-a11y-enabled :where(
    .izzigo-dropdown-link,
    .izzigo-mobile-drawer a,
    .izzigo-footer-section-panel a,
    .izzigo-search-result-title,
    .izzigo-search-result-subtitle
){
    overflow-wrap: anywhere;
}

.izzigo-accessibility-runtime-card .izzigo-a11y-metrics{
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.izzigo-a11y-issue-list{
    margin: 18px 0 0;
    padding: 16px 18px 16px 38px;
    border: 1px solid var(--izzigo-shell-line, #dce3df);
    border-radius: 12px;
    background: var(--izzigo-shell-cream, #f7f4ee);
}

.izzigo-a11y-issue-list li + li{
    margin-top: 8px;
}

[data-izzigo-a11y-runtime-status][data-status="ready"]{
    background: #e8f3ed;
    color: #18513e;
}

[data-izzigo-a11y-runtime-status][data-status="warning"]{
    background: #fff3d6;
    color: #6d4b00;
}

@media (prefers-reduced-motion: reduce) {
    body.izzigo-a11y-motion :where(
        .izzigo-site-header,
        .izzigo-mobile-drawer,
        .izzigo-drawer-backdrop,
        .izzigo-dropdown-panel,
        .izzigo-bottom-nav,
        .izzigo-site-footer,
        .izzigo-global-search,
        .izzigo-search-dialog,
        .izzigo-skip-links a
    ), body.izzigo-a11y-motion :where(
        .izzigo-site-header,
        .izzigo-mobile-drawer,
        .izzigo-drawer-backdrop,
        .izzigo-dropdown-panel,
        .izzigo-bottom-nav,
        .izzigo-site-footer,
        .izzigo-global-search,
        .izzigo-search-dialog,
        .izzigo-skip-links a
    )::before, body.izzigo-a11y-motion :where(
        .izzigo-site-header,
        .izzigo-mobile-drawer,
        .izzigo-drawer-backdrop,
        .izzigo-dropdown-panel,
        .izzigo-bottom-nav,
        .izzigo-site-footer,
        .izzigo-global-search,
        .izzigo-search-dialog,
        .izzigo-skip-links a
    )::after{
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
        transition-delay: 0ms !important;
    }
}

@media (forced-colors: active) {
    body.izzigo-a11y-forced-colors :where(
        .izzigo-site-header,
        .izzigo-minimal-header,
        .izzigo-mobile-drawer,
        .izzigo-bottom-nav,
        .izzigo-site-footer,
        .izzigo-compact-footer,
        .izzigo-dropdown-panel,
        .izzigo-search-dialog,
        .izzigo-skip-links a
    ){
        border: 1px solid CanvasText;
        background: Canvas;
        color: CanvasText;
        box-shadow: none;
        forced-color-adjust: auto;
    }

    body.izzigo-a11y-forced-colors :where(a, button, input, select, textarea):focus-visible{
        outline: 3px solid Highlight !important;
        outline-offset: 3px !important;
        box-shadow: none !important;
    }

    body.izzigo-a11y-forced-colors :where(
        .izzigo-bottom-nav a[aria-current="page"],
        .izzigo-primary-link[aria-current="page"],
        .izzigo-dashboard-nav-link[aria-current="page"],
        .izzigo-dropdown-link[aria-current="page"]
    ){
        border: 2px solid Highlight;
        color: LinkText;
    }

    body.izzigo-a11y-forced-colors svg{
        forced-color-adjust: auto;
    }
}

@media (max-width: 720px) {
    .izzigo-shell-a11y-enabled .izzigo-footer-section-panel a, .izzigo-shell-a11y-enabled .izzigo-footer-section-panel button{
        min-block-size: 48px;
    }
}

/* v0.8.4 — Performance and stability ---------------------------------- */
.izzigo-site-footer.has-lazy-background{
    background-color: var(--izzigo-footer-cream, #f5f3ed);
}

.izzigo-site-footer.has-lazy-background.is-background-loaded{
    transition: background-color .2s ease;
}

.izzigo-performance-runtime{
    position: fixed;
    right: 18px;
    bottom: calc(18px + env(safe-area-inset-bottom));
    z-index: 100050;
    max-width: min(360px, calc(100vw - 32px));
    font: 500 13px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #17231f;
}

.izzigo-performance-runtime > button{
    float: right;
    border: 1px solid rgba(23, 98, 71, .22) !important;
    border-radius: 999px !important;
    padding: 8px 13px !important;
    background: #fff !important;
    color: #176247 !important;
    box-shadow: 0 8px 24px rgba(16, 55, 47, .14) !important;
    cursor: pointer;
    font: inherit !important;
}

.izzigo-performance-runtime [data-izzigo-performance-panel]{
    clear: both;
    margin-top: 8px;
    padding: 16px;
    border: 1px solid rgba(23, 98, 71, .18);
    border-radius: 16px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 18px 48px rgba(16, 55, 47, .18);
}

.izzigo-performance-runtime dl{
    margin: 12px 0;
}

.izzigo-performance-runtime dl > div{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    padding: 6px 0;
    border-bottom: 1px solid #edf1ef;
}

.izzigo-performance-runtime dt, .izzigo-performance-runtime dd{
    margin: 0;
}

.izzigo-performance-runtime dd{
    font-weight: 700;
    text-align: right;
}

.izzigo-performance-runtime p{
    margin: 10px 0 0;
    color: #5f6e68;
}

body.izzigo-shell-keyboard-open .izzigo-performance-runtime{
    display: none;
}

@media (max-width: 760px) {
    .izzigo-performance-runtime{
        right: 12px;
        bottom: calc(var(--izzigo-bottom-nav-height, 72px) + 12px + env(safe-area-inset-bottom));
    }
}

@media (prefers-reduced-motion: reduce) {
    .izzigo-site-footer.has-lazy-background.is-background-loaded{
        transition: none;
    }
}

/* v0.8.5 — Contextual premium header variants ----------------------------- */
.izzigo-site-header.izzigo-shell-header{
    --izzigo-variant-bg: var(--izzigo-shell-header-bg, #fff);
    --izzigo-variant-text: var(--izzigo-shell-header-text, #1f2926);
    --izzigo-variant-accent: var(--izzigo-shell-green, #18483d);
    --izzigo-variant-hover: var(--izzigo-shell-header-hover-bg, #eef3f0);
    --izzigo-variant-border: var(--izzigo-shell-line, #dce3df);
    --izzigo-variant-solid-bg: var(--izzigo-variant-bg);
    --izzigo-variant-solid-text: var(--izzigo-variant-text);
    border-bottom-color: var(--izzigo-variant-border);
    background: var(--izzigo-variant-bg);
    color: var(--izzigo-variant-text);
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .24s cubic-bezier(.22,.61,.36,1);
}

.izzigo-site-header.izzigo-shell-header :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button,.izzigo-signin-button,.izzigo-dashboard-nav-link){
    color: var(--izzigo-variant-text);
}

.izzigo-site-header.izzigo-shell-header :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button,.izzigo-dashboard-nav-link):hover, .izzigo-site-header.izzigo-shell-header :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button,.izzigo-dashboard-nav-link):focus-visible{
    background: var(--izzigo-variant-hover);
}

.izzigo-site-header.izzigo-shell-header :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-dashboard-nav-link)[aria-current="page"]::after, .izzigo-site-header.izzigo-shell-header .izzigo-dropdown.is-active > .izzigo-dropdown-toggle::after{
    background: var(--izzigo-variant-accent);
}

.izzigo-site-header.izzigo-shell-header .izzigo-signin-button{
    border-color: var(--izzigo-variant-accent);
    background: var(--izzigo-variant-accent);
    color: #fff;
}

.izzigo-site-header.izzigo-shell-header .izzigo-signin-button:hover, .izzigo-site-header.izzigo-shell-header .izzigo-signin-button:focus-visible{
    filter: brightness(.94);
}

.izzigo-header-variant-culture{
    box-shadow: 0 5px 20px rgba(74,54,41,.045);
}

.izzigo-header-variant-culture .izzigo-primary-nav{
    letter-spacing: .01em;
}

.izzigo-header-variant-culture .izzigo-primary-link[aria-current="page"], .izzigo-header-variant-culture .izzigo-dropdown.is-active > .izzigo-dropdown-toggle{
    color: var(--izzigo-variant-accent);
}

.izzigo-header-variant-offers{
    box-shadow: 0 5px 22px rgba(139,62,49,.05);
}

.izzigo-header-variant-offers .izzigo-signin-button{
    box-shadow: 0 7px 18px color-mix(in srgb, var(--izzigo-variant-accent) 24%, transparent);
}

.izzigo-site-header.izzigo-header-variant-map .izzigo-header-desktop{
    min-height: var(--izzigo-shell-premium-header-height, 78px);
    padding-top: 0;
    padding-bottom: 0;
}

.izzigo-site-header.izzigo-header-variant-map .izzigo-logo-image{
    max-height: 38px;
}

.izzigo-site-header.izzigo-header-variant-dashboard{
    background: var(--izzigo-variant-bg);
    color: var(--izzigo-variant-text);
    border-bottom-color: var(--izzigo-variant-border);
}

.izzigo-site-header.izzigo-header-variant-dashboard .izzigo-dashboard-nav-link[aria-current="page"]{
    color: var(--izzigo-variant-accent);
    background: color-mix(in srgb, var(--izzigo-variant-accent) 8%, transparent);
}

.izzigo-variant-logo-pair{
    position: relative;
    display: inline-grid;
    align-items: center;
}

.izzigo-variant-logo-pair .izzigo-variant-logo-layer{
    grid-area: 1 / 1;
    display: inline-flex;
    align-items: center;
    transition: opacity .18s ease, visibility .18s ease;
}

.izzigo-variant-logo-pair .izzigo-variant-logo-layer.is-dark{
    visibility: hidden;
    opacity: 0;
}

.izzigo-header-variant-transparent.is-variant-solid .izzigo-variant-logo-pair .izzigo-variant-logo-layer.is-light{
    visibility: hidden;
    opacity: 0;
}

.izzigo-header-variant-transparent.is-variant-solid .izzigo-variant-logo-pair .izzigo-variant-logo-layer.is-dark{
    visibility: visible;
    opacity: 1;
}

.izzigo-site-header.izzigo-header-variant-transparent{
    border-bottom-color: transparent;
    background: transparent;
    color: var(--izzigo-variant-text);
    box-shadow: none;
}

.izzigo-site-header.izzigo-header-variant-transparent :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button){
    color: var(--izzigo-variant-text);
}

.izzigo-site-header.izzigo-header-variant-transparent :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button):hover, .izzigo-site-header.izzigo-header-variant-transparent :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button):focus-visible{
    background: color-mix(in srgb, var(--izzigo-variant-hover) 17%, transparent);
}

.izzigo-site-header.izzigo-header-variant-transparent .izzigo-signin-button{
    border-color: color-mix(in srgb, var(--izzigo-variant-text) 75%, transparent);
    background: color-mix(in srgb, var(--izzigo-variant-text) 16%, transparent);
    color: var(--izzigo-variant-text);
    backdrop-filter: blur(12px);
}

.izzigo-site-header.izzigo-header-variant-transparent .izzigo-logo:not(.izzigo-logo-has-image){
    color: var(--izzigo-variant-text);
}

.izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid{
    border-bottom-color: var(--izzigo-variant-border);
    background: color-mix(in srgb, var(--izzigo-variant-solid-bg) 96%, transparent);
    color: var(--izzigo-variant-solid-text);
    box-shadow: 0 10px 30px rgba(13,43,35,.1);
    backdrop-filter: blur(16px);
}

.izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button){
    color: var(--izzigo-variant-solid-text);
}

.izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button):hover, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(.izzigo-primary-link,.izzigo-dropdown-toggle,.izzigo-business-link,.izzigo-icon-button,.izzigo-account-button):focus-visible{
    background: var(--izzigo-variant-hover);
}

.izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid .izzigo-signin-button{
    border-color: var(--izzigo-variant-accent);
    background: var(--izzigo-variant-accent);
    color: #fff;
    backdrop-filter: none;
}

body.izzigo-shell-live-active.izzigo-shell-sticky-header .izzigo-site-header.izzigo-header-variant-transparent{
    position: absolute;
    z-index: 10020;
    top: var(--izzigo-shell-admin-bar-height);
    right: 0;
    left: 0;
    width: 100%;
}

body.izzigo-shell-live-active.izzigo-shell-sticky-header .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid{
    position: fixed;
}

body.izzigo-shell-live-active.izzigo-shell-static-header .izzigo-site-header.izzigo-header-variant-transparent{
    position: absolute;
    z-index: 10020;
    top: var(--izzigo-shell-admin-bar-height);
    right: 0;
    left: 0;
    width: 100%;
}









.izzigo-site-header.izzigo-shell-header .izzigo-dropdown-panel, .izzigo-site-header.izzigo-shell-header .izzigo-account-panel, .izzigo-site-header.izzigo-shell-header .izzigo-notification-panel{
    color: var(--izzigo-shell-text, #1f2926);
    background: var(--izzigo-shell-surface, #fff);
}

@media (max-width:720px) {
    .izzigo-site-header.izzigo-header-variant-map .izzigo-header-mobile{
        min-height: 62px;
    }
    .izzigo-site-header.izzigo-header-variant-transparent .izzigo-header-mobile{
        background: transparent;
    }
    .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid .izzigo-header-mobile{
        background: transparent;
    }
}

@media (prefers-reduced-motion:reduce) {
    .izzigo-site-header.izzigo-shell-header, .izzigo-variant-logo-pair .izzigo-variant-logo-layer{
        transition: none!important;
    }
}

@media (forced-colors:active) {
    .izzigo-site-header.izzigo-shell-header{
        border-color: CanvasText;
        background: Canvas;
        color: CanvasText;
    }
}


/* v0.8.6 — Consent-aware navigation analytics --------------------------- */
.izzigo-analytics-runtime{
    position: fixed;
    right: 18px;
    bottom: calc(62px + env(safe-area-inset-bottom));
    z-index: 100051;
    max-width: min(380px, calc(100vw - 32px));
    font: 500 13px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #17231f;
}
.izzigo-analytics-runtime > button{
    float: right;
    border: 1px solid rgba(93, 69, 140, .24) !important;
    border-radius: 999px !important;
    padding: 8px 13px !important;
    background: #fff !important;
    color: #5d458c !important;
    box-shadow: 0 8px 24px rgba(55, 38, 88, .14) !important;
    cursor: pointer;
    font: inherit !important;
}
.izzigo-analytics-runtime [data-izzigo-analytics-panel]{
    clear: both;
    margin-top: 8px;
    padding: 16px;
    border: 1px solid rgba(93, 69, 140, .18);
    border-radius: 16px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 18px 48px rgba(55, 38, 88, .18);
}
.izzigo-analytics-runtime dl{ margin: 12px 0; }
.izzigo-analytics-runtime dl > div{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    padding: 6px 0;
    border-bottom: 1px solid #eeeaf5;
}
.izzigo-analytics-runtime dt, .izzigo-analytics-runtime dd{ margin: 0; }
.izzigo-analytics-runtime dd{ font-weight: 700; text-align: right; }
.izzigo-analytics-runtime p{ margin: 10px 0 0; color: #655d70; }
body.izzigo-shell-keyboard-open .izzigo-analytics-runtime{ display: none; }
@media (max-width: 760px) {
    .izzigo-analytics-runtime{
        right: 12px;
        bottom: calc(var(--izzigo-bottom-nav-height, 72px) + 56px + env(safe-area-inset-bottom));
    }
}


/* --------------------------------------------------------------------------
 * v0.8.8 — IzziGo brand consistency fixes
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-font-family: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    --izzigo-shell-signin-bg: var(--izzigo-shell-accent, #d95f4f);
}

/* Apply the IzziGo typeface to the complete shell without changing page content. */
body.izzigo-shell-live-active :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-bottom-nav,
    .izzigo-site-footer,
    .izzigo-compact-footer,
    .izzigo-global-search,
    .izzigo-shell-live-status
){
    font-family: var(--izzigo-shell-font-family) !important;
}

body.izzigo-shell-live-active :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-bottom-nav,
    .izzigo-site-footer,
    .izzigo-compact-footer,
    .izzigo-global-search,
    .izzigo-shell-live-status
) :where(button, input, select, textarea){
    font-family: inherit !important;
}

/* Keep every logo link above decorative layers and reliably clickable. */
a.izzigo-logo[data-izzigo-logo-home]{
    position: relative;
    z-index: 3;
    pointer-events: auto;
    cursor: pointer;
}

a.izzigo-logo[data-izzigo-logo-home] > *{
    pointer-events: auto;
    cursor: pointer;
}

/* Sign In always uses the IzziGo red, including transparent/context headers. */
.izzigo-site-header .izzigo-signin-button, .izzigo-site-header.izzigo-shell-header .izzigo-signin-button, .izzigo-site-header.izzigo-header-variant-transparent .izzigo-signin-button, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid .izzigo-signin-button{
    border-color: var(--izzigo-shell-signin-bg) !important;
    color: #fff !important;
    background: var(--izzigo-shell-signin-bg) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.izzigo-site-header .izzigo-signin-button:hover, .izzigo-site-header .izzigo-signin-button:focus-visible, .izzigo-site-header .izzigo-signin-button[aria-current="page"]{
    border-color: var(--izzigo-shell-signin-bg) !important;
    color: #fff !important;
    background: var(--izzigo-shell-signin-bg) !important;
    filter: brightness(.9);
}


/* --------------------------------------------------------------------------
 * v0.8.10 — Native app shell suppression
 * Visibility is non-destructive: page/dashboard containers stay mounted so
 * WebView navigation, AJAX rendering, and skeleton completion can continue.
 * The wp_head bootstrap also emits these rules early for Elementor templates.
 * -------------------------------------------------------------------------- */
body:is(.izzigo-app, .izzigo-shell-environment-app) :is(
    [data-izzigo-shell-component],
    [data-izzigo-shell-header],
    [data-izzigo-bottom-nav],
    [data-izzigo-footer],
    .izzigo-minimal-header,
    .izzigo-mobile-drawer,
    [data-izzigo-drawer-backdrop],
    .izzigo-global-search,
    .izzigo-shell-admin-status,
    .izzigo-performance-runtime,
    .izzigo-analytics-runtime,
    .izzigo-skip-links,
    header.elementor-location-header,
    .elementor-location-header,
    [data-elementor-type="header"],
    header#masthead,
    #site-header,
    header.site-header,
    .ct-header,
    #kadence-header,
    .main-header-bar,
    .wp-site-blocks > header,
    footer.elementor-location-footer,
    .elementor-location-footer,
    [data-elementor-type="footer"],
    footer#colophon,
    #site-footer,
    footer.site-footer,
    .ct-footer,
    #colophon,
    .wp-site-blocks > footer,
    div.before-footer,
    div.footer,
    div.header,
    .traveler-dashboard > .header,
    .traveler-dashboard > .footer,
    .traveler-dashboard > .before-footer,
    .business-dashboard > .header,
    .business-dashboard > .footer,
    .business-dashboard > .before-footer,
    .izzigo-traveler-dashboard-bottom-nav,
    .izzigo-business-dashboard-bottom-nav,
    .izzigo-traveler-mobile-nav,
    .izzigo-business-mobile-nav,
    .traveler-dashboard-bottom-bar,
    .business-dashboard-bottom-bar,
    [data-izzigo-traveler-navigation],
    [data-izzigo-business-navigation],
    [data-dashboard-bottom-navigation]
), html.izzigo-app-prepaint body :is(
    [data-izzigo-shell-component],
    [data-izzigo-shell-header],
    [data-izzigo-bottom-nav],
    [data-izzigo-footer],
    .izzigo-minimal-header,
    .izzigo-mobile-drawer,
    [data-izzigo-drawer-backdrop],
    .izzigo-global-search,
    .izzigo-shell-admin-status,
    .izzigo-performance-runtime,
    .izzigo-analytics-runtime,
    .izzigo-skip-links,
    header.elementor-location-header,
    .elementor-location-header,
    [data-elementor-type="header"],
    header#masthead,
    #site-header,
    header.site-header,
    .ct-header,
    #kadence-header,
    .main-header-bar,
    .wp-site-blocks > header,
    footer.elementor-location-footer,
    .elementor-location-footer,
    [data-elementor-type="footer"],
    footer#colophon,
    #site-footer,
    footer.site-footer,
    .ct-footer,
    #colophon,
    .wp-site-blocks > footer,
    div.before-footer,
    div.footer,
    div.header,
    .traveler-dashboard > .header,
    .traveler-dashboard > .footer,
    .traveler-dashboard > .before-footer,
    .business-dashboard > .header,
    .business-dashboard > .footer,
    .business-dashboard > .before-footer,
    .izzigo-traveler-dashboard-bottom-nav,
    .izzigo-business-dashboard-bottom-nav,
    .izzigo-traveler-mobile-nav,
    .izzigo-business-mobile-nav,
    .traveler-dashboard-bottom-bar,
    .business-dashboard-bottom-bar,
    [data-izzigo-traveler-navigation],
    [data-izzigo-business-navigation],
    [data-dashboard-bottom-navigation]
){
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body:is(.izzigo-app, .izzigo-shell-environment-app), html.izzigo-app-prepaint body{
    --izzigo-shell-live-header-height: 0px !important;
    --izzigo-shell-bottom-reserved: 0px !important;
    --izzigo-bottom-nav-height: 0px !important;
    --izzigo-shell-bottom-height: 0px !important;
}

body:is(.izzigo-app, .izzigo-shell-environment-app).izzigo-shell-content-clearance-needed, html.izzigo-app-prepaint body.izzigo-shell-content-clearance-needed{
    padding-bottom: 0 !important;
}


/* --------------------------------------------------------------------------
 * v0.8.11 — Central Site Shell color controls
 * Standard header, shared controls, footer and mobile-web navigation now use
 * explicit default, hover/focus and active/current-page color variables.
 * Contextual transparent/editorial header backgrounds remain managed by the
 * Header Variants screen, while shared button and state colors stay global.
 * -------------------------------------------------------------------------- */

:root{
    --izzigo-shell-header-border: #dce3df;
    --izzigo-shell-header-hover-text: #18483d;
    --izzigo-shell-header-active-bg: #eaf1ed;
    --izzigo-shell-header-active-text: #10372f;
    --izzigo-shell-header-active-indicator: #18483d;
    --izzigo-shell-button-bg: #18483d;
    --izzigo-shell-button-text: #ffffff;
    --izzigo-shell-button-border: #18483d;
    --izzigo-shell-button-hover-bg: #10372f;
    --izzigo-shell-button-hover-text: #ffffff;
    --izzigo-shell-button-hover-border: #10372f;
    --izzigo-shell-button-active-bg: #0b2d26;
    --izzigo-shell-button-active-text: #ffffff;
    --izzigo-shell-button-active-border: #0b2d26;
    --izzigo-shell-signin-text: #ffffff;
    --izzigo-shell-signin-hover-bg: #c74f42;
    --izzigo-shell-signin-hover-text: #ffffff;
    --izzigo-shell-signin-active-bg: #ad4137;
    --izzigo-shell-signin-active-text: #ffffff;
    --izzigo-footer-link-hover: #123d35;
    --izzigo-footer-active-bg: #ece8de;
    --izzigo-footer-active-text: #123d35;
    --izzigo-footer-button-bg: #ffffff;
    --izzigo-footer-button-text: #123d35;
    --izzigo-footer-button-border: #d9d5ca;
    --izzigo-footer-button-hover-bg: #ffffff;
    --izzigo-footer-button-hover-text: #092f2a;
    --izzigo-footer-bottom-text: #d7e2de;
    --izzigo-shell-bottom-border: #dce3df;
    --izzigo-shell-bottom-hover-bg: #f4f7f5;
    --izzigo-shell-bottom-hover-text: #18483d;
    --izzigo-shell-bottom-active-text: #10372f;
}

/*
 * All solid header variants use the Brand Studio header palette.
 * Route variants still control layout/presentation, but no longer replace the
 * administrator-selected header background with their old white defaults.
 */
.izzigo-site-header.izzigo-shell-header:not(.izzigo-header-variant-transparent), .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid{
    --izzigo-variant-bg: var(--izzigo-shell-header-bg) !important;
    --izzigo-variant-text: var(--izzigo-shell-header-text) !important;
    --izzigo-variant-border: var(--izzigo-shell-header-border) !important;
    --izzigo-variant-solid-bg: var(--izzigo-shell-header-bg) !important;
    --izzigo-variant-solid-text: var(--izzigo-shell-header-text) !important;
}

.izzigo-site-header.izzigo-shell-header:not(.izzigo-header-variant-transparent), .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid, .izzigo-minimal-header, .izzigo-dashboard-header{
    border-bottom-color: var(--izzigo-shell-header-border) !important;
    color: var(--izzigo-shell-header-text);
    background-color: var(--izzigo-shell-header-bg);
}

.izzigo-mobile-drawer{
    color: var(--izzigo-shell-header-text);
    background-color: var(--izzigo-shell-header-bg);
}

.izzigo-drawer-head, .izzigo-dropdown-panel{
    border-color: var(--izzigo-shell-header-border);
}

.izzigo-site-header:not(.izzigo-header-variant-transparent) :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
), .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
), .izzigo-mobile-drawer nav a, .izzigo-mobile-drawer .izzigo-icon-button{
    color: var(--izzigo-shell-header-text) !important;
}

.izzigo-site-header:not(.izzigo-header-variant-transparent) :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
):hover, .izzigo-site-header:not(.izzigo-header-variant-transparent) :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
):focus-visible, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
):hover, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
):focus-visible, .izzigo-mobile-drawer nav a:hover, .izzigo-mobile-drawer nav a:focus-visible, .izzigo-mobile-drawer .izzigo-icon-button:hover, .izzigo-mobile-drawer .izzigo-icon-button:focus-visible{
    color: var(--izzigo-shell-header-hover-text) !important;
    background-color: var(--izzigo-shell-header-hover-bg) !important;
}

.izzigo-site-header:not(.izzigo-header-variant-transparent) :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
)[aria-current="page"], .izzigo-site-header:not(.izzigo-header-variant-transparent) .izzigo-dropdown.is-active > :where(.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle), .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
)[aria-current="page"], .izzigo-mobile-drawer nav a[aria-current="page"]{
    color: var(--izzigo-shell-header-active-text) !important;
    background-color: var(--izzigo-shell-header-active-bg) !important;
}

.izzigo-site-header :where(.izzigo-primary-link,.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle,.izzigo-dashboard-nav-link)[aria-current="page"]::after, .izzigo-site-header .izzigo-dropdown.is-active > :where(.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle)::after{
    background-color: var(--izzigo-shell-header-active-indicator) !important;
}

/* Shared primary Site Shell buttons. */
.izzigo-header-cta, .izzigo-search-submit{
    border-color: var(--izzigo-shell-button-border) !important;
    color: var(--izzigo-shell-button-text) !important;
    background-color: var(--izzigo-shell-button-bg) !important;
}

.izzigo-header-cta:hover, .izzigo-header-cta:focus-visible, .izzigo-search-submit:hover, .izzigo-search-submit:focus-visible{
    border-color: var(--izzigo-shell-button-hover-border) !important;
    color: var(--izzigo-shell-button-hover-text) !important;
    background-color: var(--izzigo-shell-button-hover-bg) !important;
}

.izzigo-header-cta:active, .izzigo-header-cta[aria-current="page"], .izzigo-search-submit:active{
    border-color: var(--izzigo-shell-button-active-border) !important;
    color: var(--izzigo-shell-button-active-text) !important;
    background-color: var(--izzigo-shell-button-active-bg) !important;
}

/* Guest Sign In retains its own independently configurable palette. */
.izzigo-site-header .izzigo-signin-button, .izzigo-site-header.izzigo-shell-header .izzigo-signin-button, .izzigo-site-header.izzigo-header-variant-transparent .izzigo-signin-button, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid .izzigo-signin-button{
    border-color: var(--izzigo-shell-signin-bg) !important;
    color: var(--izzigo-shell-signin-text) !important;
    background-color: var(--izzigo-shell-signin-bg) !important;
    filter: none !important;
}

.izzigo-site-header .izzigo-signin-button:hover, .izzigo-site-header .izzigo-signin-button:focus-visible{
    border-color: var(--izzigo-shell-signin-hover-bg) !important;
    color: var(--izzigo-shell-signin-hover-text) !important;
    background-color: var(--izzigo-shell-signin-hover-bg) !important;
    filter: none !important;
}

.izzigo-site-header .izzigo-signin-button:active, .izzigo-site-header .izzigo-signin-button[aria-current="page"]{
    border-color: var(--izzigo-shell-signin-active-bg) !important;
    color: var(--izzigo-shell-signin-active-text) !important;
    background-color: var(--izzigo-shell-signin-active-bg) !important;
    filter: none !important;
}

/* Footer surface, links, controls and lower bar. */
.izzigo-site-footer.izzigo-shell-footer{
    color: var(--izzigo-footer-ink);
    background-color: var(--izzigo-footer-cream);
}

.izzigo-shell-footer .izzigo-footer-brand-row, .izzigo-shell-footer .izzigo-footer-section{
    border-color: var(--izzigo-footer-line);
}

.izzigo-shell-footer :where(.izzigo-footer-slogan,.izzigo-footer-section-toggle,.izzigo-footer-brand .izzigo-logo){
    color: var(--izzigo-footer-ink) !important;
}

.izzigo-shell-footer :where(.izzigo-footer-note,.izzigo-footer-social-column > span,.izzigo-footer-section-panel a,.izzigo-footer-section-panel button){
    color: var(--izzigo-footer-muted);
}

.izzigo-shell-footer :where(.izzigo-footer-section-panel a,.izzigo-footer-section-panel button):hover, .izzigo-shell-footer :where(.izzigo-footer-section-panel a,.izzigo-footer-section-panel button):focus-visible{
    color: var(--izzigo-footer-link-hover) !important;
}

.izzigo-shell-footer .izzigo-footer-section-panel a[aria-current="page"]{
    margin: 0;
    padding: 0;
    border-radius: 0;
    color: var(--izzigo-footer-active-text) !important;
    background-color: transparent !important;
    font-weight: 700;
}

.izzigo-shell-footer .izzigo-footer-socials a, .izzigo-shell-footer .izzigo-footer-socials > span{
    border-color: var(--izzigo-footer-button-border) !important;
    color: var(--izzigo-footer-button-text) !important;
    background-color: var(--izzigo-footer-button-bg) !important;
}

.izzigo-shell-footer .izzigo-footer-socials a:hover, .izzigo-shell-footer .izzigo-footer-socials a:focus-visible{
    border-color: var(--izzigo-footer-button-hover-text) !important;
    color: var(--izzigo-footer-button-hover-text) !important;
    background-color: var(--izzigo-footer-button-hover-bg) !important;
}

.izzigo-shell-footer .izzigo-footer-bottom{
    border-top-color: var(--izzigo-footer-line) !important;
    color: var(--izzigo-footer-muted) !important;
    background-color: transparent !important;
}

.izzigo-shell-footer .izzigo-footer-bottom-main > :last-child,
.izzigo-shell-footer .izzigo-footer-bottom > :last-child{
    color: var(--izzigo-footer-muted) !important;
}

.izzigo-compact-footer.izzigo-shell-footer{
    border-color: var(--izzigo-footer-line);
    color: var(--izzigo-footer-muted);
    background-color: var(--izzigo-footer-cream);
}

/* Mobile-web bottom navigation. */
.izzigo-bottom-nav{
    border-top-color: var(--izzigo-shell-bottom-border) !important;
    color: var(--izzigo-shell-bottom-text);
    background-color: var(--izzigo-shell-bottom-bg) !important;
}

.izzigo-bottom-nav a{
    color: var(--izzigo-shell-bottom-text) !important;
}

.izzigo-bottom-nav a:hover, .izzigo-bottom-nav a:focus-visible{
    color: var(--izzigo-shell-bottom-hover-text) !important;
    background-color: var(--izzigo-shell-bottom-hover-bg) !important;
}

.izzigo-bottom-nav a[aria-current="page"]{
    color: var(--izzigo-shell-bottom-active-text) !important;
    background-color: var(--izzigo-shell-bottom-active-bg) !important;
}


/* v0.8.12 — route-consistent solid header palette
 * IzziMap, Offers, Culture and Dashboard variants now inherit the same
 * administrator-selected solid header surface as Standard pages.
 */


/* --------------------------------------------------------------------------
 * v0.8.13 — route-consistent header dimensions
 * The contextual variants may change presentation, but they no longer reduce
 * the web header from the 78px premium desktop contract. Responsive tablet
 * and phone layouts keep their own shared heights across every route.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-header-height: 78px;
    --izzigo-shell-premium-header-height: 78px;
}

.izzigo-minimal-header{
    min-height: var(--izzigo-shell-premium-header-height) !important;
}

@media (min-width: 1041px) {
    .izzigo-site-header .izzigo-header-desktop, .izzigo-site-header.izzigo-header-variant-map .izzigo-header-desktop, .izzigo-site-header.izzigo-header-variant-dashboard .izzigo-header-desktop{
        min-height: var(--izzigo-shell-premium-header-height) !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .izzigo-site-header .izzigo-primary-nav, .izzigo-site-header :where(.izzigo-primary-link,.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle,.izzigo-dashboard-nav-link){
        min-height: var(--izzigo-shell-premium-header-height) !important;
    }

    .izzigo-site-header.izzigo-header-variant-map .izzigo-logo-image, .izzigo-site-header.izzigo-header-variant-dashboard .izzigo-logo-image{
        max-height: 39px;
    }
}

/* Keep route changes from changing the phone header height. */
@media (max-width: 720px) {
    .izzigo-site-header .izzigo-header-mobile, .izzigo-site-header.izzigo-header-variant-map .izzigo-header-mobile, .izzigo-site-header.izzigo-header-variant-dashboard .izzigo-header-mobile{
        min-height: 62px;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.14 — active underline control without hover/open decoration
 * The administrator-selected underline color belongs only to the current page
 * or active navigation group. Hovering/focusing a menu control, or opening a
 * dropdown which is not the current section, must not add a bottom line.
 * -------------------------------------------------------------------------- */
.izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):is(:hover, :focus-visible):not([aria-current="page"]){
    border-bottom-color: transparent !important;
    text-decoration: none !important;
}

.izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):is(:hover, :focus-visible):not([aria-current="page"])::after, .izzigo-site-header .izzigo-dropdown.is-open:not(.is-active) > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    content: none !important;
}

.izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::after, .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: block !important;
    width: auto !important;
    height: 2px !important;
    background-color: var(--izzigo-shell-header-active-indicator) !important;
    content: "" !important;
}


/* --------------------------------------------------------------------------
 * v0.8.15 — global active-menu underline mode
 * Color mode uses the selected Brand Studio color. Transparent mode keeps the
 * indicator state invisible. None removes the indicator entirely. This final
 * rule is deliberately authoritative across every header route variant.
 * -------------------------------------------------------------------------- */
.izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::after, .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: var(--izzigo-shell-header-active-indicator-display, block) !important;
    height: var(--izzigo-shell-header-active-indicator-height, 2px) !important;
    border: 0 !important;
    border-bottom: 0 !important;
    background: var(--izzigo-shell-header-active-indicator, transparent) !important;
    background-color: var(--izzigo-shell-header-active-indicator, transparent) !important;
    box-shadow: none !important;
}

/* --------------------------------------------------------------------------
 * v0.8.16 — deterministic active-indicator modes
 *
 * v0.8.15 exposed the correct setting, but the frontend still depended on a
 * custom property being honoured inside display/background declarations for
 * an existing pseudo-element. On installations with combined/minified CSS or
 * retained route-variant rules, that old pseudo-element could remain visible
 * as a white strip. The explicit body classes below fully reset the real link
 * and both pseudo-elements, then opt back into the selected mode only.
 * -------------------------------------------------------------------------- */

/* Never use a real border, inset shadow, outline or background image as the
 * menu indicator. This prevents theme/Elementor link rules from creating a
 * second bottom line independently of the Site Shell setting. */
body:is(
    .izzigo-shell-indicator-color,
    .izzigo-shell-indicator-transparent,
    .izzigo-shell-indicator-none
) .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
), body:is(
    .izzigo-shell-indicator-color,
    .izzigo-shell-indicator-transparent,
    .izzigo-shell-indicator-none
) .izzigo-site-header .izzigo-dropdown > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
){
    border-bottom: 0 !important;
    border-bottom-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* Clear both pseudo-elements first. Some themes use ::before while the Site
 * Shell historically used ::after. */
body:is(
    .izzigo-shell-indicator-color,
    .izzigo-shell-indicator-transparent,
    .izzigo-shell-indicator-none
) .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)::before, body:is(
    .izzigo-shell-indicator-color,
    .izzigo-shell-indicator-transparent,
    .izzigo-shell-indicator-none
) .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)::after{
    border: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* None means no indicator node at all. */
body.izzigo-shell-indicator-none .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::before, body.izzigo-shell-indicator-none .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::after, body.izzigo-shell-indicator-none .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::before, body.izzigo-shell-indicator-none .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    opacity: 0 !important;
    content: none !important;
}

/* Transparent keeps the state geometry for future animation/layout use, but
 * guarantees that no visible line, border or shadow can be painted. */
body.izzigo-shell-indicator-transparent .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::after, body.izzigo-shell-indicator-transparent .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: block !important;
    visibility: hidden !important;
    height: 2px !important;
    opacity: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    content: "" !important;
}

/* Color is the only mode that paints the active indicator. */
body.izzigo-shell-indicator-color .izzigo-site-header :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]::after, body.izzigo-shell-indicator-color .izzigo-site-header .izzigo-dropdown.is-active > :where(
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle
)::after{
    display: block !important;
    visibility: visible !important;
    height: 2px !important;
    opacity: 1 !important;
    border: 0 !important;
    background: var(--izzigo-shell-header-active-indicator) !important;
    background-color: var(--izzigo-shell-header-active-indicator) !important;
    box-shadow: none !important;
    content: "" !important;
}


/* --------------------------------------------------------------------------
 * v0.8.17 — remove the full-width header bottom divider globally
 * The former administrator header-border color (including #661a22) is retired.
 * Active-menu indicators remain independently controlled by their own mode.
 * -------------------------------------------------------------------------- */
.izzigo-site-header, .izzigo-site-header.izzigo-shell-header, .izzigo-site-header.izzigo-header-variant-transparent, .izzigo-site-header.izzigo-header-variant-transparent.is-variant-solid, .izzigo-minimal-header, .izzigo-dashboard-header{
    --izzigo-variant-border: transparent !important;
    border-bottom: 0 !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

/* --------------------------------------------------------------------------
 * v0.8.19 — anchor-owned complete logo hit area
 * The previous pointer-enabled pseudo-element could inherit an offset from
 * older logo rules. The anchor now owns the complete rectangle directly;
 * every visual child is pointer-transparent so image/theme handlers cannot
 * intercept clicks on visible logo pixels.
 * -------------------------------------------------------------------------- */
body :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-site-footer,
    .izzigo-compact-footer
) a.izzigo-logo[data-izzigo-logo-home]{
    position: relative !important;
    isolation: isolate;
    z-index: 50 !important;
    display: inline-flex !important;
    align-items: center;
    inline-size: max-content;
    max-inline-size: 100%;
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

/* Remove every decorative/pseudo hit target. The real anchor is the target. */
body :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-site-footer,
    .izzigo-compact-footer
) a.izzigo-logo[data-izzigo-logo-home]::before, body :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-site-footer,
    .izzigo-compact-footer
) a.izzigo-logo[data-izzigo-logo-home]::after{
    content: none !important;
    display: none !important;
    pointer-events: none !important;
}

/* The image remains visible, but the link—not the image—receives the click. */
body :where(
    .izzigo-site-header,
    .izzigo-minimal-header,
    .izzigo-dashboard-header,
    .izzigo-mobile-drawer,
    .izzigo-site-footer,
    .izzigo-compact-footer
) a.izzigo-logo[data-izzigo-logo-home] :where(
    .izzigo-logo-image,
    .izzigo-variant-logo-layer,
    span,
    strong,
    img,
    picture,
    svg,
    use,
    path
){
    pointer-events: none !important;
    cursor: inherit !important;
    user-select: none;
    -webkit-user-drag: none;
}


/* --------------------------------------------------------------------------
 * v0.8.20 — desktop hand pointer for the complete coordinate-protected logo
 * hit area. The temporary root class is activated only while a fine pointer
 * is physically inside a measured Site Shell logo rectangle. A universal
 * cursor override is intentional here because a transparent Elementor/theme
 * layer may be the topmost element above part of the logo.
 * -------------------------------------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
    html.izzigo-logo-pointer-active, html.izzigo-logo-pointer-active body, html.izzigo-logo-pointer-active body *{
        cursor: pointer !important;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.21 — clean mobile controls and reliable account hit target
 * The hamburger keeps a full accessible touch target but has no visible
 * border, fill, shadow, or pill. The account link is elevated above temporary
 * theme/Elementor overlays and remains a direct login/profile/account link.
 * -------------------------------------------------------------------------- */
.izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:hover, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:focus, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:focus-visible, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:active, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button[aria-expanded="true"]{
    min-width: 48px !important;
    min-height: 48px !important;
    padding: 10px !important;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline-offset: 3px;
    color: var(--izzigo-variant-text, var(--izzigo-shell-header-text, #1f2926)) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    -webkit-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
}

.izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button::before, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button::after{
    content: none !important;
    display: none !important;
}

.izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:hover, .izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button:focus-visible{
    color: var(--izzigo-shell-header-hover-text, var(--izzigo-shell-header-text, #1f2926)) !important;
}

.izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions{
    position: relative !important;
    z-index: 80 !important;
    pointer-events: auto !important;
}

.izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button[data-izzigo-mobile-account]{
    position: relative !important;
    z-index: 81 !important;
    display: inline-flex !important;
    min-width: 48px !important;
    min-height: 48px !important;
    align-items: center;
    justify-content: center;
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

.izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button[data-izzigo-mobile-account] :where(svg, path, circle){
    pointer-events: none !important;
}

/* --------------------------------------------------------------------------
 * v0.8.22 — reliable mobile drawer activation
 * Keep the icon-only hamburger above temporary theme layers and make the
 * selected drawer/backdrop state explicit. JavaScript owns aria/inert state;
 * these rules ensure cached theme CSS cannot leave an opened drawer off-screen.
 * -------------------------------------------------------------------------- */
.izzigo-site-header .izzigo-header-mobile{
    position: relative;
    isolation: isolate;
}

.izzigo-site-header .izzigo-header-mobile > button.izzigo-mobile-menu-button{
    position: relative !important;
    z-index: 90 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation;
}

.izzigo-mobile-drawer:not(.is-open){
    pointer-events: none;
}

.izzigo-mobile-drawer.is-open{
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
}

.izzigo-drawer-backdrop[hidden]{
    display: none !important;
}

.izzigo-drawer-backdrop:not([hidden]){
    display: block !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

body.izzigo-drawer-is-open{
    overflow: hidden;
    overscroll-behavior: none;
}

/* --------------------------------------------------------------------------
 * v0.8.23 — mobile drawer layering and transparent controls
 * The opened drawer owns the complete mobile viewport above the website
 * header. Branding surfaces stay transparent and the close control is an
 * icon-only touch target without a painted button container.
 * -------------------------------------------------------------------------- */
.izzigo-mobile-drawer .izzigo-drawer-head, .izzigo-mobile-drawer .izzigo-drawer-head .izzigo-logo, .izzigo-mobile-drawer .izzigo-drawer-head .izzigo-logo-image, .izzigo-mobile-drawer .izzigo-drawer-graphic{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Remove the divider directly below the drawer logo/header row. */
.izzigo-mobile-drawer .izzigo-drawer-head{
    border-bottom: 0 !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

/* The live drawer and backdrop must sit above every Site Shell header variant. */
body.izzigo-shell-live-active .izzigo-drawer-backdrop{
    z-index: 2147482998 !important;
    inset: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-visual-viewport-offset-top)) 0 0 !important;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer{
    z-index: 2147482999 !important;
    top: calc(var(--izzigo-shell-admin-bar-height) + var(--izzigo-shell-visual-viewport-offset-top)) !important;
    bottom: 0 !important;
    height: auto !important;
    max-height: calc(var(--izzigo-shell-visual-viewport-height) - var(--izzigo-shell-admin-bar-height)) !important;
}

/* Icon-only close control; retain a generous accessible touch target. */
body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close], body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible, body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:active{
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--izzigo-shell-header-text, var(--izzigo-shell-green-dark)) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover{
    opacity: .72;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible{
    outline: 2px solid currentColor !important;
    outline-offset: 2px !important;
}


/* --------------------------------------------------------------------------
 * v0.8.24 — single-brand mobile drawer
 * The drawer now uses only the compact logo in its top row. Any legacy or
 * cached secondary drawer graphic is suppressed, and the welcome card moves
 * closer to the primary brand row for a cleaner hierarchy.
 * -------------------------------------------------------------------------- */
.izzigo-mobile-drawer .izzigo-drawer-graphic, .izzigo-mobile-drawer .izzigo-drawer-graphic-image{
    display: none !important;
}

.izzigo-mobile-drawer .izzigo-drawer-welcome{
    margin-top: 12px;
}

.izzigo-mobile-drawer .izzigo-drawer-head + .izzigo-drawer-welcome{
    margin-top: 10px;
}

/* --------------------------------------------------------------------------
 * v0.8.25 — transparent signed-in account control with avatar fallback
 * The desktop account trigger is no longer a filled button. It uses the
 * user's circular profile image when available and Unicode-safe initials when
 * no profile image exists. The same identity is repeated in the dropdown.
 * -------------------------------------------------------------------------- */
.izzigo-site-header .izzigo-account-dropdown .izzigo-account-button, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button, .izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:hover, .izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:focus, .izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:focus-visible, .izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:active, .izzigo-site-header .izzigo-account-dropdown.is-open .izzigo-account-button, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:hover, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:focus, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:focus-visible, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:active, .izzigo-dashboard-header .izzigo-account-dropdown.is-open .izzigo-account-button{
    min-height: 44px !important;
    padding: 4px 2px 4px 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--izzigo-shell-account-text, var(--izzigo-shell-header-text)) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
}

.izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:hover, .izzigo-site-header .izzigo-account-dropdown .izzigo-account-button:focus-visible, .izzigo-site-header .izzigo-account-dropdown.is-open .izzigo-account-button, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:hover, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button:focus-visible, .izzigo-dashboard-header .izzigo-account-dropdown.is-open .izzigo-account-button{
    color: var(--izzigo-shell-account-hover-text, var(--izzigo-shell-header-hover-text)) !important;
}

.izzigo-account-button > .izzigo-account-name{
    max-width: 180px !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.izzigo-account-button-avatar-only{
    min-width: 44px !important;
    width: 44px !important;
    padding: 0 !important;
    gap: 0 !important;
    justify-content: center !important;
    align-items: center !important;
}

.izzigo-account-button-avatar-only > .izzigo-account-name, .izzigo-account-button-avatar-only > svg:last-child{
    display: none !important;
}

.izzigo-account-button-avatar-only .izzigo-account-avatar-trigger{
    margin: 0 !important;
}

.izzigo-account-button > svg:last-child{
    width: 16px;
    height: 16px;
}

.izzigo-account-avatar{
    display: grid;
    overflow: hidden;
    flex: 0 0 auto;
    place-items: center;
    border: 2px solid var(--izzigo-shell-account-avatar-border, #ffffff);
    border-radius: 50%;
    color: var(--izzigo-shell-account-avatar-text, #ffffff);
    background: var(--izzigo-shell-account-avatar-bg, var(--izzigo-shell-accent));
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.izzigo-account-avatar-trigger{
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    font-size: 12px;
    letter-spacing: .02em;
}

.izzigo-account-avatar-summary{
    width: 42px;
    height: 42px;
    flex-basis: 42px;
    font-size: 15px;
    letter-spacing: .025em;
}

.izzigo-account-avatar.has-image{
    background: transparent;
}

.izzigo-account-avatar > img{
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    border: 0;
    border-radius: inherit;
    object-fit: cover;
}

.izzigo-account-summary .izzigo-account-avatar{
    color: var(--izzigo-shell-account-avatar-text, #ffffff);
    background-color: var(--izzigo-shell-account-avatar-bg, var(--izzigo-shell-accent));
}

@media (max-width: 1180px) {
    .izzigo-account-button > .izzigo-account-name{
        max-width: 120px !important;
    }
}


/* v0.8.26 — administrator-controlled notification count badge colors. */
.izzigo-notification-button > span{
    border-color: var(--izzigo-shell-notification-badge-border, #fff);
    color: var(--izzigo-shell-notification-badge-text, #fff);
    background: var(--izzigo-shell-notification-badge-bg, var(--izzigo-shell-accent));
}


/* v0.8.27 — avatar-only desktop account trigger. */
.izzigo-site-header .izzigo-account-dropdown .izzigo-account-button-avatar-only, .izzigo-dashboard-header .izzigo-account-dropdown .izzigo-account-button-avatar-only{
    border-radius: 999px !important;
}


/* --------------------------------------------------------------------------
 * v0.8.28 — administrator-controlled desktop header scale.
 * The 78px header height remains fixed; only the content scale and spacing
 * change. Mobile-web rules remain untouched.
 * -------------------------------------------------------------------------- */
@media (min-width: 981px) {
    .izzigo-header-desktop .izzigo-logo-image, .izzigo-dashboard-header-inner .izzigo-logo-image{
        width: auto !important;
        max-width: var(--izzigo-shell-desktop-logo-width, 156px) !important;
        height: var(--izzigo-shell-desktop-logo-height, 50px) !important;
        max-height: var(--izzigo-shell-desktop-logo-height, 50px) !important;
        object-fit: contain !important;
    }

    .izzigo-primary-nav{
        gap: var(--izzigo-shell-desktop-nav-gap, 36px) !important;
    }

    .izzigo-primary-link, .izzigo-nav-dropdown-button, .izzigo-dashboard-nav-link{
        font-size: var(--izzigo-shell-desktop-nav-font-size, 17px) !important;
    }

    .izzigo-header-actions{
        gap: var(--izzigo-shell-header-actions-gap, 12px) !important;
    }

    .izzigo-site-header .izzigo-header-actions > .izzigo-icon-button, .izzigo-dashboard-header .izzigo-header-actions > .izzigo-icon-button{
        min-width: 46px !important;
        width: 46px !important;
        min-height: 46px !important;
        height: 46px !important;
        padding: 0 !important;
    }

    .izzigo-site-header .izzigo-header-actions > .izzigo-icon-button > svg, .izzigo-dashboard-header .izzigo-header-actions > .izzigo-icon-button > svg{
        width: var(--izzigo-shell-desktop-icon-size, 24px) !important;
        height: var(--izzigo-shell-desktop-icon-size, 24px) !important;
    }

    .izzigo-account-button-avatar-only{
        min-width: max(46px, calc(var(--izzigo-shell-desktop-avatar-size, 42px) + 4px)) !important;
        width: max(46px, calc(var(--izzigo-shell-desktop-avatar-size, 42px) + 4px)) !important;
        min-height: max(46px, calc(var(--izzigo-shell-desktop-avatar-size, 42px) + 4px)) !important;
        height: max(46px, calc(var(--izzigo-shell-desktop-avatar-size, 42px) + 4px)) !important;
    }

    .izzigo-account-avatar-trigger{
        width: var(--izzigo-shell-desktop-avatar-size, 42px) !important;
        height: var(--izzigo-shell-desktop-avatar-size, 42px) !important;
        flex-basis: var(--izzigo-shell-desktop-avatar-size, 42px) !important;
        font-size: var(--izzigo-shell-desktop-avatar-font-size, 14px) !important;
    }

    .izzigo-notification-button > span{
        top: 0 !important;
        right: -1px !important;
        min-width: var(--izzigo-shell-notification-badge-size, 19px) !important;
        height: var(--izzigo-shell-notification-badge-size, 19px) !important;
        padding: 0 4px !important;
        font-size: clamp(10px, calc(var(--izzigo-shell-notification-badge-size, 19px) * .58), 12px) !important;
        line-height: calc(var(--izzigo-shell-notification-badge-size, 19px) - 4px) !important;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.29 — balanced signed-in mobile dashboard header.
 * The former absolutely positioned role logo could collide with the bell and
 * account action. The header now uses equal side tracks, a logo-only center,
 * compact actions, and the same profile photo/initials identity as desktop.
 * -------------------------------------------------------------------------- */
.izzigo-account-avatar-mobile{
    width: 36px;
    height: 36px;
    flex-basis: 36px;
    border-width: 2px;
    font-size: 12px;
    letter-spacing: .02em;
}

.izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar{
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 4px !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
}

.izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar:hover, .izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar:focus-visible, .izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar:active, .izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar[aria-current="page"]{
    background: transparent !important;
}

.izzigo-site-header .izzigo-header-mobile a.izzigo-mobile-account-button.has-account-avatar :where(.izzigo-account-avatar, img, span){
    pointer-events: none !important;
}

@media (max-width: 720px) {
    .izzigo-dashboard-header-mobile{
        display: grid !important;
        min-height: 68px !important;
        grid-template-columns: 96px minmax(0, 1fr) 96px !important;
        align-items: center !important;
        padding: 0 10px !important;
    }

    .izzigo-dashboard-header-mobile > .izzigo-mobile-menu-button{
        grid-column: 1;
        justify-self: start !important;
    }

    .izzigo-dashboard-mobile-brand{
        position: static !important;
        left: auto !important;
        grid-column: 2;
        grid-row: 1;
        display: flex !important;
        width: 100%;
        min-width: 0;
        align-items: center;
        justify-content: center;
        transform: none !important;
    }

    .izzigo-dashboard-mobile-brand .izzigo-logo{
        max-width: 100% !important;
        justify-content: center;
    }

    .izzigo-dashboard-mobile-brand .izzigo-logo-image{
        width: auto !important;
        max-width: 96px !important;
        height: auto !important;
        max-height: 35px !important;
        object-fit: contain !important;
    }

    .izzigo-dashboard-mobile-brand small{
        display: none !important;
    }

    .izzigo-dashboard-header-mobile > .izzigo-mobile-actions{
        grid-column: 3;
        grid-row: 1;
        display: flex !important;
        min-width: 96px;
        align-items: center;
        justify-content: flex-end !important;
        gap: 4px !important;
    }

    .izzigo-dashboard-header-mobile .izzigo-mobile-actions .izzigo-icon-button{
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        padding: 6px !important;
    }

    .izzigo-dashboard-header-mobile .izzigo-mobile-actions .izzigo-icon-button > svg{
        width: 22px !important;
        height: 22px !important;
    }

    .izzigo-dashboard-header-mobile .izzigo-notification-button > span{
        top: -1px !important;
        right: -1px !important;
        min-width: 18px !important;
        height: 18px !important;
        padding: 0 3px !important;
        font-size: 9px !important;
        line-height: 14px !important;
    }
}

@media (max-width: 350px) {
    .izzigo-dashboard-header-mobile{
        grid-template-columns: 88px minmax(0, 1fr) 88px !important;
        padding-right: 6px !important;
        padding-left: 6px !important;
    }

    .izzigo-dashboard-header-mobile > .izzigo-mobile-actions{
        min-width: 88px;
        gap: 0 !important;
    }

    .izzigo-dashboard-mobile-brand .izzigo-logo-image{
        max-width: 88px !important;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.32 — notification-only signed-in mobile header and avatar account tab.
 * Traveler and Business identity moves from the top header into the mobile
 * bottom navigation. The account destination uses the real profile image or
 * initials in a circular Booking-style control labelled "My Account".
 * -------------------------------------------------------------------------- */
.izzigo-header-mobile .izzigo-mobile-actions.is-notification-only{
    min-width: 48px !important;
    justify-content: flex-end !important;
    gap: 0 !important;
}

.izzigo-header-mobile .izzigo-mobile-actions.is-notification-only .izzigo-notification-button{
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 6px !important;
}

.izzigo-account-avatar-bottom{
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-width: 2px;
    font-size: 11px;
    letter-spacing: .02em;
}

.izzigo-bottom-nav a.izzigo-bottom-nav-account{
    gap: 3px;
    background: transparent !important;
}

.izzigo-bottom-nav a.izzigo-bottom-nav-account::before{
    display: none !important;
}

.izzigo-bottom-nav-account .izzigo-bottom-nav-icon{
    width: 38px;
    height: 38px;
    overflow: visible;
    border-radius: 999px;
}

.izzigo-bottom-nav-account .izzigo-bottom-nav-icon .izzigo-account-avatar{
    pointer-events: none;
}

.izzigo-bottom-nav-account .izzigo-bottom-nav-label{
    max-width: none;
    font-size: 11px;
    white-space: nowrap;
}

.izzigo-bottom-nav a.izzigo-bottom-nav-account[aria-current="page"]{
    color: var(--izzigo-shell-bottom-active-text) !important;
    background: transparent !important;
}

.izzigo-bottom-nav a.izzigo-bottom-nav-account[aria-current="page"] .izzigo-account-avatar-bottom{
    border-color: var(--izzigo-shell-bottom-active-text) !important;
    box-shadow: 0 0 0 2px var(--izzigo-shell-bottom-active-bg);
}

.izzigo-bottom-nav a.izzigo-bottom-nav-account:hover, .izzigo-bottom-nav a.izzigo-bottom-nav-account:focus-visible{
    background: transparent !important;
}

@media (max-width: 720px) {
    .izzigo-dashboard-header-mobile{
        grid-template-columns: 64px minmax(0, 1fr) 64px !important;
    }

    .izzigo-dashboard-header-mobile > .izzigo-mobile-actions{
        min-width: 64px !important;
        gap: 0 !important;
    }
}

@media (max-width: 350px) {
    .izzigo-dashboard-header-mobile{
        grid-template-columns: 56px minmax(0, 1fr) 56px !important;
    }

    .izzigo-dashboard-header-mobile > .izzigo-mobile-actions{
        min-width: 56px !important;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.33 — shared profile-photo resolution and role-aware account fallback.
 * Real profile images stay unchanged. Initials use Business dark green or
 * Traveler red so account identity matches each dashboard family.
 * -------------------------------------------------------------------------- */
.izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-account-avatar-bottom.has-initials{
    background: var(--izzigo-shell-business-accent, #176247) !important;
}

.izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-account-avatar-bottom.has-initials{
    background: var(--izzigo-shell-traveler-accent, #b84f43) !important;
}

.izzigo-bottom-nav[data-izzigo-role="business"] a.izzigo-bottom-nav-account[aria-current="page"] .izzigo-account-avatar-bottom{
    border-color: var(--izzigo-shell-business-accent, #176247) !important;
}

.izzigo-bottom-nav[data-izzigo-role="traveler"] a.izzigo-bottom-nav-account[aria-current="page"] .izzigo-account-avatar-bottom{
    border-color: var(--izzigo-shell-traveler-accent, #b84f43) !important;
}


/* --------------------------------------------------------------------------
 * v0.8.33 — role-aware My Account avatar and profile-photo synchronization.
 * -------------------------------------------------------------------------- */
.izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-account-avatar-bottom.has-initials{
    color: #fff !important;
    background: var(--izzigo-shell-business-accent, #176247) !important;
    border-color: var(--izzigo-shell-business-accent, #176247) !important;
}

.izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-account-avatar-bottom.has-initials{
    color: #fff !important;
    background: var(--izzigo-shell-traveler-accent, #b84f43) !important;
    border-color: var(--izzigo-shell-traveler-accent, #b84f43) !important;
}

.izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-account-avatar-bottom.has-image{
    background: transparent !important;
    border-color: var(--izzigo-shell-business-accent, #176247) !important;
}

.izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-account-avatar-bottom.has-image{
    background: transparent !important;
    border-color: var(--izzigo-shell-traveler-accent, #b84f43) !important;
}

.izzigo-bottom-nav[data-izzigo-role="business"] a.izzigo-bottom-nav-account[aria-current="page"] .izzigo-account-avatar-bottom{
    border-color: var(--izzigo-shell-business-accent, #176247) !important;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--izzigo-shell-business-accent, #176247) 22%, transparent) !important;
}

.izzigo-bottom-nav[data-izzigo-role="traveler"] a.izzigo-bottom-nav-account[aria-current="page"] .izzigo-account-avatar-bottom{
    border-color: var(--izzigo-shell-traveler-accent, #b84f43) !important;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--izzigo-shell-traveler-accent, #b84f43) 22%, transparent) !important;
}


/* v0.8.35 — Site Shell is the single Traveler mobile-web navigation owner. */
@media (max-width:980px){
    body.izzigo-shell-live .iztd-wrap .iztd-mobile-topbar, body.izzigo-shell-live .iztd-wrap .iztd-overlay, body.izzigo-shell-live .iztd-wrap .iztd-sidebar, body.izzigo-shell-live .iztd-wrap .iztd-mobile-bottom-nav{
        display:none!important;
    }
    body.izzigo-shell-live .iztd-wrap{
        padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
    }
    body.izzigo-shell-live .iztd-wrap .iztd-shell, body.izzigo-shell-live .iztd-wrap.is-sidebar-collapsed .iztd-shell{
        display:block!important;
        grid-template-columns:minmax(0,1fr)!important;
    }
    body.izzigo-shell-live .iztd-wrap .iztd-main{
        width:100%!important;
        min-width:0!important;
    }
}

/* --------------------------------------------------------------------------
 * v0.8.38 — deterministic profile photo or uppercase initials.
 * A missing/default avatar must never produce an empty white account circle.
 * -------------------------------------------------------------------------- */
.izzigo-account-avatar.has-initials{
    color: var(--izzigo-shell-account-avatar-text, #fff) !important;
    background: var(--izzigo-shell-account-avatar-bg, var(--izzigo-shell-accent)) !important;
    font-weight: 850 !important;
    text-transform: uppercase !important;
}

.izzigo-account-avatar.has-image{
    color: transparent !important;
    background: transparent !important;
}

.izzigo-account-avatar.has-image > img{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* --------------------------------------------------------------------------
 * v0.8.39 — guaranteed initials fallback for Shell account avatars.
 * The initials are always rendered below a confirmed uploaded image. Generic
 * Gravatar/default images can no longer turn the account control into an empty
 * white circle. Traveler and Business roles receive deterministic colours.
 * -------------------------------------------------------------------------- */
.izzigo-account-avatar{
    position: relative !important;
    isolation: isolate;
    max-width: none !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

.izzigo-account-avatar-initials{
    position: absolute !important;
    inset: 0 !important;
    z-index: 1;
    display: grid !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    place-items: center !important;
    overflow: visible !important;
    color: #ffffff !important;
    background: var(--izzigo-shell-account-avatar-bg, var(--izzigo-shell-accent, #e8244f)) !important;
    font: inherit !important;
    font-size: inherit !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    letter-spacing: .025em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.izzigo-account-dropdown[data-izzigo-role="traveler"] .izzigo-account-avatar-initials, .izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-account-avatar-initials{
    background: #e8244f !important;
}

.izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-account-avatar-initials, .izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-account-avatar-initials{
    background: #174d3c !important;
}

.izzigo-account-avatar.has-initials, .izzigo-account-avatar.has-image{
    color: #ffffff !important;
    background: transparent !important;
}

.izzigo-account-avatar.has-image > img{
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: inherit !important;
    opacity: 1 !important;
    visibility: visible !important;
    object-fit: cover !important;
    object-position: center !important;
}

.izzigo-account-avatar.has-initials > img, .izzigo-account-avatar.avatar-image-failed > img{
    display: none !important;
}


/* --------------------------------------------------------------------------
 * v0.8.41 — complete Traveler tablet/mobile hamburger navigation.
 * The normal desktop header remains uncluttered. At tablet and phone widths,
 * the Shell drawer becomes the single owner of all traveler destinations.
 * -------------------------------------------------------------------------- */
.izzigo-traveler-drawer nav h2{
    margin: 20px 10px 6px;
    color: var(--izzigo-shell-muted, #8a8178);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.2;
    text-transform: uppercase;
}

.izzigo-traveler-drawer nav h2:first-child{
    margin-top: 2px;
}

.izzigo-traveler-drawer nav a[aria-current="page"]{
    color: var(--izzigo-shell-active-text, #fff) !important;
    background: var(--izzigo-shell-active-bg, var(--izzigo-shell-accent)) !important;
}

.izzigo-traveler-drawer .izzigo-traveler-drawer-logout{
    margin-top: 8px;
    border-top: 1px solid var(--izzigo-shell-line);
    border-radius: 0 0 8px 8px;
}

@media (max-width: 1040px) {
    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-desktop{
        display: none !important;
    }

    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile{
        display: grid !important;
    }
}

/* --------------------------------------------------------------------------
 * v0.8.42 — permanent tablet/phone account avatar.
 * Signed-in Traveler and Business headers always keep the notification bell
 * and profile avatar visible. The avatar is a direct dashboard entry while
 * the hamburger remains the complete navigation owner on smaller screens.
 * -------------------------------------------------------------------------- */
.izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-member-mobile-actions, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-member-mobile-actions{
    display: flex !important;
    min-width: 92px !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    pointer-events: auto !important;
}

.izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-member-mobile-actions > :where(a,button), .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-member-mobile-actions > :where(a,button){
    display: inline-flex !important;
    flex: 0 0 auto !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-member-mobile-actions .izzigo-mobile-account-button, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-member-mobile-actions .izzigo-mobile-account-button{
    position: relative !important;
    z-index: 82 !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 4px !important;
    border-radius: 999px !important;
    pointer-events: auto !important;
}

@media (max-width: 1040px) {
    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile, body.izzigo-shell-role-business .izzigo-site-header .izzigo-header-mobile{
        grid-template-columns: minmax(48px, 1fr) auto minmax(92px, 1fr) !important;
    }
}

@media (max-width: 420px) {
    .izzigo-site-header .izzigo-header-mobile, .izzigo-dashboard-header .izzigo-dashboard-header-mobile{
        padding-right: 6px !important;
        padding-left: 6px !important;
    }

    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-member-mobile-actions, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-member-mobile-actions{
        min-width: 84px !important;
        gap: 0 !important;
    }

    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-member-mobile-actions > .izzigo-icon-button, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-member-mobile-actions > .izzigo-icon-button{
        width: 42px !important;
        min-width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 4px !important;
    }

    .izzigo-account-avatar-mobile{
        width: 34px !important;
        height: 34px !important;
        flex-basis: 34px !important;
        font-size: 11px !important;
    }
}

/* --------------------------------------------------------------------------
 * v0.8.43 — one mobile/tablet Traveler account entry.
 * The Traveler profile avatar no longer appears twice. The responsive header
 * keeps the notification bell only; the permanent bottom-nav My Account item
 * remains the profile-photo/initials entry to the Traveler Dashboard. Tablet
 * widths receive the same bottom navigation with a centred 768px maximum.
 * -------------------------------------------------------------------------- */
@media (max-width: 1040px) {
    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile{
        grid-template-columns: minmax(48px, 1fr) auto minmax(48px, 1fr) !important;
    }

    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-notification-only-mobile-actions{
        min-width: 48px !important;
        gap: 0 !important;
    }

    /* Defensive suppression for cached markup from 0.8.42. */
    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-notification-only-mobile-actions .izzigo-mobile-account-button{
        display: none !important;
    }

    
}


/* --------------------------------------------------------------------------
 * v0.8.44 — full-width responsive bottom navigation for every public role.
 * The compact header becomes active at 1040px. At the same breakpoint the
 * bottom navigation becomes the permanent full-width account/discovery entry
 * for Traveler, Business, and Guest website modes. Desktop remains unchanged.
 * -------------------------------------------------------------------------- */
@media (max-width: 1040px) {
    

    /* Override the older centred test-preview widths as well. */
    
}

/* --------------------------------------------------------------------------
 * v0.8.45 — unified responsive identity ownership.
 * Desktop (1041px+): account identity belongs to the top Shell and the bottom
 * navigation is hidden. Tablet/phone (1040px and below): Traveler, Business,
 * and Guest account identity belongs only to the full-width bottom navigation.
 * Signed-in users keep the notification bell in the compact header; guests
 * have no duplicate top Sign In/user control.
 * -------------------------------------------------------------------------- */
@media (min-width: 1041px) {
    .izzigo-bottom-nav{
        display: none !important;
    }
}

@media (max-width: 1040px) {
    body.izzigo-shell-role-traveler .izzigo-site-header .izzigo-header-mobile, body.izzigo-shell-role-business .izzigo-site-header .izzigo-header-mobile, body.izzigo-shell-role-guest .izzigo-site-header .izzigo-header-mobile, body:not(.logged-in) .izzigo-site-header .izzigo-header-mobile, body.izzigo-shell-role-business .izzigo-dashboard-header .izzigo-dashboard-header-mobile{
        grid-template-columns: minmax(48px, 1fr) auto minmax(48px, 1fr) !important;
    }

    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions{
        min-width: 48px !important;
        width: auto !important;
        gap: 0 !important;
        justify-content: flex-end !important;
    }

    /* Remove every cached or legacy compact-header account identity control. */
    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-account-button, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-account-button, .izzigo-site-header .izzigo-header-mobile .izzigo-signin-button, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-signin-button, .izzigo-site-header .izzigo-header-mobile [data-izzigo-mobile-account], .izzigo-dashboard-header .izzigo-dashboard-header-mobile [data-izzigo-mobile-account]{
        display: none !important;
    }

    /* Guests deliberately keep an empty right slot so the centered logo does
       not shift when the top Sign In/user control is removed. */
    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-identity-free-mobile-actions{
        display: flex !important;
        visibility: visible !important;
    }

    /* Signed-in compact headers retain only notifications. */
    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-notification-only-mobile-actions, .izzigo-dashboard-header .izzigo-dashboard-header-mobile .izzigo-mobile-actions.is-notification-only-mobile-actions{
        display: flex !important;
        min-width: 48px !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    
}


/* --------------------------------------------------------------------------
 * v0.8.46 — bottom navigation follows the real top identity control.
 * Pixel breakpoints remain useful for layout, but no longer own navigation
 * visibility. JavaScript measures whether the top avatar/account control or
 * Guest Sign In is actually rendered. If it is absent, hidden, clipped to zero,
 * or its header row is not active, the full-width bottom navigation appears.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-top-identity-visible .izzigo-bottom-nav{
    display: none !important;
}



/* --------------------------------------------------------------------------
 * v0.8.47 — close the 1041–1180px identity gap.
 * The compressed desktop header must never hide the avatar itself. Runtime
 * fallback detection also measures the actual avatar/Sign In control rather
 * than the surrounding button, so the bottom navigation appears whenever the
 * visible account access is genuinely absent or clipped.
 * -------------------------------------------------------------------------- */
@media (min-width: 1041px) and (max-width: 1180px) {
    .izzigo-site-header .izzigo-header-desktop .izzigo-account-dropdown, .izzigo-dashboard-header .izzigo-header-desktop .izzigo-account-dropdown{
        display: block !important;
        flex: 0 0 auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
    }

    .izzigo-site-header .izzigo-header-desktop .izzigo-account-button, .izzigo-dashboard-header .izzigo-header-desktop .izzigo-account-button{
        display: inline-flex !important;
        min-width: 42px !important;
        width: 42px !important;
        height: 42px !important;
        padding: 3px !important;
        align-items: center !important;
        justify-content: center !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
    }

    .izzigo-site-header .izzigo-header-desktop .izzigo-account-button > .izzigo-account-avatar-trigger, .izzigo-dashboard-header .izzigo-header-desktop .izzigo-account-button > .izzigo-account-avatar-trigger{
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}



/* --------------------------------------------------------------------------
 * v0.8.49 — stable sticky-header colour and desktop-only bottom-nav guard.
 * Scrolling may add sticky behaviour, but it must not replace the configured
 * cream/header colour with white. The mobile bottom navigation is strictly a
 * compact-layout component and can never render above 1040px.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-live-active .izzigo-site-header.izzigo-shell-header.is-scrolled:not(.izzigo-header-variant-transparent), body.izzigo-shell-live-active .izzigo-site-header.is-scrolled:not(.izzigo-header-variant-transparent){
    background: var(--izzigo-variant-bg, var(--izzigo-shell-header-bg, #fff)) !important;
    background-color: var(--izzigo-variant-bg, var(--izzigo-shell-header-bg, #fff)) !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

@media (min-width: 1041px) {
    body .izzigo-bottom-nav, body.izzigo-shell-top-identity-visible .izzigo-bottom-nav, body.izzigo-shell-top-identity-hidden .izzigo-bottom-nav{
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    body{
        --izzigo-bottom-nav-height: 0px !important;
        --izzigo-shell-bottom-reserved: 0px !important;
    }
}


/* --------------------------------------------------------------------------
 * v0.8.50 — remove orphaned bottom-account identity on desktop.
 * The bottom navigation and every one of its account-avatar descendants are
 * physically suppressed whenever the top identity owns account access. This
 * also covers stale/minified markup where the avatar was visually detached
 * from the hidden bottom-navigation surface.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-top-identity-visible .izzigo-bottom-nav, body.izzigo-shell-top-identity-visible .izzigo-bottom-nav-account, body.izzigo-shell-top-identity-visible .izzigo-account-avatar-bottom{
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

@media (min-width: 1041px) {
    body .izzigo-bottom-nav, body .izzigo-bottom-nav *, body .izzigo-bottom-nav-account, body .izzigo-account-avatar-bottom{
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
}


/*
 * v0.8.51 — minimal Discover IzziGo modal close control.
 * Keep the full touch target, but remove the visual button container in every state.
 */
[data-izzigo-search-overlay] .izzigo-search-close, [data-izzigo-search-overlay] .izzigo-search-close:hover, [data-izzigo-search-overlay] .izzigo-search-close:focus, [data-izzigo-search-overlay] .izzigo-search-close:focus-visible, [data-izzigo-search-overlay] .izzigo-search-close:active{
    appearance: none !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    color: var(--izzigo-shell-accent) !important;
    cursor: pointer !important;
}

[data-izzigo-search-overlay] .izzigo-search-close:hover{
    color: var(--izzigo-shell-green-dark) !important;
}

[data-izzigo-search-overlay] .izzigo-search-close:focus-visible{
    outline: 2px solid currentColor !important;
    outline-offset: 3px !important;
}

[data-izzigo-search-overlay] .izzigo-search-close::before, [data-izzigo-search-overlay] .izzigo-search-close::after{
    content: none !important;
    display: none !important;
}

[data-izzigo-search-overlay] .izzigo-search-close svg{
    width: 22px !important;
    height: 22px !important;
    pointer-events: none !important;
}


/* --------------------------------------------------------------------------
 * v0.8.52 — deterministic responsive identity ownership.
 *
 * One contract now owns every role and header variant:
 *   - 1041px and wider: desktop header + top account identity.
 *   - 1040px and narrower: compact header + full-width bottom navigation.
 * Runtime exclusions (app, keyboard, wizard, checkout, auth, fullscreen and
 * administrator-disabled components) remain higher-priority safety rules.
 * -------------------------------------------------------------------------- */
@media (min-width: 1041px) {
    

    

    

    

    

    

    

    
}

@media (max-width: 1040px) {
    .izzigo-site-header .izzigo-header-desktop, .izzigo-dashboard-header .izzigo-header-desktop{
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .izzigo-site-header .izzigo-header-mobile, .izzigo-dashboard-header .izzigo-dashboard-header-mobile{
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .izzigo-site-header .izzigo-header-mobile :where(.izzigo-mobile-account-button,.izzigo-signin-button,[data-izzigo-mobile-account]), .izzigo-dashboard-header .izzigo-dashboard-header-mobile :where(.izzigo-mobile-account-button,.izzigo-signin-button,[data-izzigo-mobile-account]){
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    
}

/* Protected preview controls simulate compact layouts without resizing the browser. */








/* --------------------------------------------------------------------------
 * 0.9.1 — Traveler/Business role parity.
 * Both dashboard families use the public Shell header, the same grouped
 * compact drawer structure, and the same five-position bottom navigation.
 * The interaction model is shared; role color remains red for Traveler and
 * green for Business.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-role-traveler,
.izzigo-role-drawer[data-izzigo-role="traveler"],
.izzigo-bottom-nav[data-izzigo-role="traveler"]{
    --izzigo-shell-role-accent:#e8244f;
    --izzigo-shell-role-accent-dark:#8f2630;
    --izzigo-shell-role-soft:#fff0f3;
    --izzigo-shell-role-line:#f3c7d1;
}

body.izzigo-shell-role-business,
.izzigo-role-drawer[data-izzigo-role="business"],
.izzigo-bottom-nav[data-izzigo-role="business"]{
    --izzigo-shell-role-accent:#087047;
    --izzigo-shell-role-accent-dark:#164d3a;
    --izzigo-shell-role-soft:#eaf8f1;
    --izzigo-shell-role-line:#c9e7d8;
}

.izzigo-role-drawer-heading{
    display:grid;
    gap:3px;
    margin:12px 12px 14px;
    padding:14px 15px;
    border:1px solid var(--izzigo-shell-role-line);
    border-radius:16px;
    color:var(--izzigo-shell-role-accent-dark);
    background:linear-gradient(135deg,#fff,var(--izzigo-shell-role-soft));
}

.izzigo-role-drawer-heading span{
    color:var(--izzigo-shell-muted,#74695c);
    font-size:10px;
    font-weight:800;
    letter-spacing:.09em;
    line-height:1.2;
    text-transform:uppercase;
}

.izzigo-role-drawer-heading strong{
    font-size:17px;
    font-weight:850;
    line-height:1.3;
}

.izzigo-role-drawer nav h2,
.izzigo-traveler-drawer nav h2{
    margin:20px 12px 7px;
    color:var(--izzigo-shell-muted,#74695c);
    font-size:10px;
    font-weight:850;
    letter-spacing:.1em;
    line-height:1.2;
    text-transform:uppercase;
}

.izzigo-role-drawer nav h2:first-child{
    margin-top:4px;
}

.izzigo-role-drawer nav a{
    min-height:48px;
    margin:2px 6px;
    padding:9px 11px;
    border:1px solid transparent;
    border-radius:13px;
    color:var(--izzigo-shell-text,#342b22);
    background:transparent;
    font-weight:720;
}

.izzigo-role-drawer nav a > span:first-child{
    display:grid;
    width:32px;
    height:32px;
    place-items:center;
    border-radius:10px;
    color:var(--izzigo-shell-role-accent-dark);
    background:var(--izzigo-shell-role-soft);
}

.izzigo-role-drawer nav a > span:first-child svg{
    width:19px;
    height:19px;
}

.izzigo-role-drawer nav a:hover,
.izzigo-role-drawer nav a:focus-visible{
    border-color:var(--izzigo-shell-role-line);
    color:var(--izzigo-shell-role-accent-dark);
    background:var(--izzigo-shell-role-soft);
}

.izzigo-role-drawer nav a[aria-current="page"]{
    border-color:var(--izzigo-shell-role-accent) !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent) !important;
    box-shadow:0 8px 22px color-mix(in srgb,var(--izzigo-shell-role-accent) 20%,transparent);
}

.izzigo-role-drawer nav a[aria-current="page"] > span:first-child{
    color:var(--izzigo-shell-role-accent-dark);
    background:#fff;
}

.izzigo-role-drawer :where(.izzigo-traveler-drawer-logout,.izzigo-business-drawer-logout){
    margin-top:10px;
    border-top-color:var(--izzigo-shell-role-line);
    color:var(--izzigo-shell-role-accent-dark);
}

/* The same public header structure is used for both signed-in role families. */
body.izzigo-shell-role-traveler .izzigo-site-header,
body.izzigo-shell-role-business .izzigo-site-header{
    --izzigo-shell-role-header-accent:var(--izzigo-shell-role-accent);
}

body.izzigo-shell-role-business .izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-account-avatar-trigger,
body.izzigo-shell-role-business .izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-account-avatar-summary{
    border-color:#fff;
    box-shadow:0 0 0 2px color-mix(in srgb,#087047 20%,transparent);
}

body.izzigo-shell-role-traveler .izzigo-account-dropdown[data-izzigo-role="traveler"] .izzigo-account-avatar-trigger,
body.izzigo-shell-role-traveler .izzigo-account-dropdown[data-izzigo-role="traveler"] .izzigo-account-avatar-summary{
    border-color:#fff;
    box-shadow:0 0 0 2px color-mix(in srgb,#e8244f 18%,transparent);
}

.izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-dropdown-link[aria-current="page"]{
    color:#164d3a !important;
    background:#eaf8f1 !important;
}

.izzigo-account-dropdown[data-izzigo-role="traveler"] .izzigo-dropdown-link[aria-current="page"]{
    color:#8f2630 !important;
    background:#fff0f3 !important;
}

/* Shared premium bottom-menu geometry with role-specific active color. */
@media (max-width:1040px){
    .izzigo-bottom-nav[data-izzigo-role="traveler"],
    .izzigo-bottom-nav[data-izzigo-role="business"]{
        min-height:72px;
        padding:6px 6px max(7px,env(safe-area-inset-bottom));
        border-top:1px solid #eadcc5;
        background:rgba(255,253,248,.97);
        box-shadow:0 -10px 28px rgba(52,43,34,.09);
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a,
    .izzigo-bottom-nav[data-izzigo-role="business"] a{
        min-width:0;
        min-height:58px;
        gap:3px;
        padding:5px 2px 4px;
        border-radius:14px;
        color:#74695c;
        background:transparent;
        font-weight:760;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a::before,
    .izzigo-bottom-nav[data-izzigo-role="business"] a::before{
        display:none;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role="business"] a .izzigo-bottom-nav-icon{
        width:34px;
        height:30px;
        border-radius:11px;
        transition:background-color .18s ease,color .18s ease,transform .18s ease;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a[aria-current="page"],
    .izzigo-bottom-nav[data-izzigo-role="business"] a[aria-current="page"]{
        color:var(--izzigo-shell-role-accent-dark) !important;
        background:transparent !important;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a[aria-current="page"] .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role="business"] a[aria-current="page"] .izzigo-bottom-nav-icon{
        color:var(--izzigo-shell-role-accent);
        background:var(--izzigo-shell-role-soft);
        transform:translateY(-1px);
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] a:focus-visible,
    .izzigo-bottom-nav[data-izzigo-role="business"] a:focus-visible{
        outline:3px solid color-mix(in srgb,var(--izzigo-shell-role-accent) 26%,transparent);
        outline-offset:-2px;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-bottom-nav-label,
    .izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-bottom-nav-label{
        font-size:10.5px;
        font-weight:780;
        letter-spacing:-.01em;
    }

    .izzigo-bottom-nav[data-izzigo-role="traveler"] .izzigo-bottom-nav-account .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role="business"] .izzigo-bottom-nav-account .izzigo-bottom-nav-icon{
        width:38px;
        height:34px;
        background:transparent !important;
    }
}

@media (prefers-reduced-motion:reduce){
    .izzigo-role-drawer nav a,
    .izzigo-bottom-nav[data-izzigo-role="traveler"] a .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role="business"] a .izzigo-bottom-nav-icon{
        transition:none !important;
    }
}

/* --------------------------------------------------------------------------
 * 0.9.2 — One IzziGo typeface across every Shell identity.
 *
 * This selector is intentionally independent of body rollout classes. The
 * mounted Shell component is the source of truth, so Guest, Traveler,
 * Business, dashboard, minimal, drawer, dropdown, notification, and compact
 * bottom-navigation text all inherit the centralized IzziGo Varela Round typography consistently.
 * -------------------------------------------------------------------------- */
:root{
    --izzigo-shell-font-family: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
}

:where(
    [data-izzigo-shell-component="header"],
    [data-izzigo-shell-component="bottom"],
    .izzigo-mobile-drawer,
    .izzigo-account-dropdown,
    .izzigo-account-panel,
    .izzigo-dropdown-panel,
    .izzigo-notification-panel,
    .izzigo-global-search
){
    font-family: var(--izzigo-shell-font-family) !important;
}

:where(
    [data-izzigo-shell-component="header"],
    [data-izzigo-shell-component="bottom"],
    .izzigo-mobile-drawer,
    .izzigo-account-dropdown,
    .izzigo-account-panel,
    .izzigo-dropdown-panel,
    .izzigo-notification-panel,
    .izzigo-global-search
) :where(button, input, select, textarea, option){
    font-family: inherit !important;
}

/* --------------------------------------------------------------------------
 * 0.9.3 — one Shell control system for Guest, Traveler, and Business.
 *
 * Every identity now shares the same geometry, spacing, icon containers,
 * hover/focus behaviour, drawer rows, dropdown actions, and bottom-menu
 * treatment. Guest and Traveler use IzziGo red; Business uses IzziGo green.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-role-guest,
body.izzigo-shell-role-traveler,
.izzigo-site-header[data-izzigo-role="guest"],
.izzigo-site-header[data-izzigo-role="traveler"],
.izzigo-role-drawer[data-izzigo-role="guest"],
.izzigo-role-drawer[data-izzigo-role="traveler"],
.izzigo-bottom-nav[data-izzigo-role="guest"],
.izzigo-bottom-nav[data-izzigo-role="traveler"]{
    --izzigo-shell-role-accent:#e8244f;
    --izzigo-shell-role-accent-dark:#8f2630;
    --izzigo-shell-role-soft:#fff0f3;
    --izzigo-shell-role-line:#f3c7d1;
    --izzigo-shell-role-focus:rgba(232,36,79,.25);
}

body.izzigo-shell-role-business,
.izzigo-site-header[data-izzigo-role="business"],
.izzigo-role-drawer[data-izzigo-role="business"],
.izzigo-bottom-nav[data-izzigo-role="business"]{
    --izzigo-shell-role-accent:#087047;
    --izzigo-shell-role-accent-dark:#164d3a;
    --izzigo-shell-role-soft:#eaf8f1;
    --izzigo-shell-role-line:#c9e7d8;
    --izzigo-shell-role-focus:rgba(8,112,71,.24);
}

/* Shared desktop and compact-header control geometry. */
.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-signin-button,
    .izzigo-header-cta,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
){
    box-sizing:border-box;
    min-height:44px;
    border-radius:14px;
    font-family:var(--izzigo-shell-font-family) !important;
    font-weight:760;
    line-height:1;
    transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
){
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border:1px solid transparent !important;
    color:var(--izzigo-shell-header-text,#633238) !important;
    background:transparent !important;
}

.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):hover,
.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):focus-visible,
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown.is-active > :where(.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle),
.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]{
    border-color:var(--izzigo-shell-role-line) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

/* Icon-only controls remain clean and borderless in every role. */
.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button),
.izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]{
    display:inline-grid !important;
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    place-items:center !important;
    border:0 !important;
    border-radius:14px !important;
    color:var(--izzigo-shell-role-accent-dark,var(--izzigo-shell-header-text,#633238)) !important;
    background:transparent !important;
    box-shadow:none !important;
    filter:none !important;
}

.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button):hover,
.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button):focus-visible,
.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button)[aria-current="page"],
.izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover,
.izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible{
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-business-link,
    .izzigo-signin-button,
    .izzigo-header-cta,
    .izzigo-icon-button,
    .izzigo-account-button,
    .izzigo-dashboard-nav-link
):focus-visible,
.izzigo-mobile-drawer :where(a,button):focus-visible,
.izzigo-bottom-nav[data-izzigo-role] a:focus-visible{
    outline:3px solid var(--izzigo-shell-role-focus,rgba(232,36,79,.25)) !important;
    outline-offset:2px !important;
}

/* Text CTAs share one shape while retaining semantic hierarchy. */
.izzigo-site-header[data-izzigo-role] :where(.izzigo-signin-button,.izzigo-header-cta){
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border:1px solid var(--izzigo-shell-role-accent) !important;
    border-radius:14px !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent) !important;
    box-shadow:0 8px 20px color-mix(in srgb,var(--izzigo-shell-role-accent) 18%,transparent) !important;
}

.izzigo-site-header[data-izzigo-role] :where(.izzigo-signin-button,.izzigo-header-cta):hover,
.izzigo-site-header[data-izzigo-role] :where(.izzigo-signin-button,.izzigo-header-cta):focus-visible{
    border-color:var(--izzigo-shell-role-accent-dark) !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent-dark) !important;
    transform:translateY(-1px);
}

.izzigo-site-header[data-izzigo-role] .izzigo-business-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 16px;
    border:1px solid var(--izzigo-shell-role-line) !important;
    border-radius:14px !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

.izzigo-site-header[data-izzigo-role] .izzigo-business-link:hover,
.izzigo-site-header[data-izzigo-role] .izzigo-business-link:focus-visible{
    border-color:var(--izzigo-shell-role-accent) !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent) !important;
}

.izzigo-site-header[data-izzigo-role] .izzigo-notification-button > span{
    border-color:#fff !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent) !important;
}

/* One account/dropdown action system for Traveler and Business. */
.izzigo-account-panel,
.izzigo-dropdown-panel{
    border-radius:18px !important;
}

.izzigo-account-panel .izzigo-dropdown-link,
.izzigo-dropdown-panel .izzigo-dropdown-link{
    min-height:48px;
    margin:2px 4px;
    padding:8px 10px;
    border:1px solid transparent;
    border-radius:13px;
    font-weight:730;
}

.izzigo-account-panel .izzigo-dropdown-link .izzigo-menu-item-icon,
.izzigo-dropdown-panel .izzigo-dropdown-link .izzigo-menu-item-icon{
    display:grid;
    width:34px;
    height:34px;
    flex:0 0 34px;
    place-items:center;
    border-radius:11px;
    color:var(--izzigo-shell-role-accent-dark);
    background:var(--izzigo-shell-role-soft);
}

.izzigo-account-panel .izzigo-dropdown-link:hover,
.izzigo-account-panel .izzigo-dropdown-link:focus-visible,
.izzigo-dropdown-panel .izzigo-dropdown-link:hover,
.izzigo-dropdown-panel .izzigo-dropdown-link:focus-visible,
.izzigo-account-panel .izzigo-dropdown-link[aria-current="page"],
.izzigo-dropdown-panel .izzigo-dropdown-link[aria-current="page"]{
    border-color:var(--izzigo-shell-role-line) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

/* Mobile drawer: identical structure and buttons for all three identities. */
.izzigo-mobile-drawer.izzigo-role-drawer{
    width:min(430px,100vw) !important;
    max-width:100vw !important;
    color:#633238;
    background:#fff2dd !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head{
    min-height:92px;
    padding:18px 24px 12px;
    border:0 !important;
    background:transparent !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]{
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    min-height:48px !important;
    border:0 !important;
    border-radius:15px !important;
    background:transparent !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer :where(.izzigo-role-drawer-heading,.izzigo-drawer-welcome){
    display:grid;
    gap:4px;
    margin:10px 36px 18px;
    padding:16px 18px;
    border:1px solid var(--izzigo-shell-role-line) !important;
    border-radius:18px;
    color:var(--izzigo-shell-role-accent-dark);
    background:linear-gradient(135deg,#fff,var(--izzigo-shell-role-soft)) !important;
    box-shadow:none;
}

.izzigo-mobile-drawer.izzigo-role-drawer :where(.izzigo-role-drawer-heading,.izzigo-drawer-welcome) :where(span,.izzigo-drawer-welcome-kicker){
    color:#66736f;
    font-size:10px;
    font-weight:820;
    letter-spacing:.09em;
    line-height:1.2;
    text-transform:uppercase;
}

.izzigo-mobile-drawer.izzigo-role-drawer :where(.izzigo-role-drawer-heading,.izzigo-drawer-welcome) strong{
    color:var(--izzigo-shell-role-accent-dark);
    font-size:18px;
    font-weight:850;
    line-height:1.3;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav{
    padding:0 24px calc(30px + env(safe-area-inset-bottom));
}

.izzigo-mobile-drawer.izzigo-role-drawer nav h2{
    margin:22px 12px 8px;
    color:#66736f;
    font-size:11px;
    font-weight:850;
    letter-spacing:.09em;
    line-height:1.2;
    text-transform:uppercase;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav h2:first-child{
    margin-top:6px;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a{
    display:flex;
    min-height:54px;
    margin:3px 4px;
    padding:8px 11px;
    align-items:center;
    gap:10px;
    border:1px solid transparent !important;
    border-radius:15px;
    color:#633238 !important;
    background:transparent !important;
    font-size:15px;
    font-weight:760;
    line-height:1.25;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a .izzigo-menu-item-icon{
    display:grid;
    width:38px;
    height:38px;
    flex:0 0 38px;
    place-items:center;
    border-radius:12px;
    color:var(--izzigo-shell-role-accent-dark);
    background:var(--izzigo-shell-role-soft);
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a .izzigo-menu-item-icon svg{
    width:20px;
    height:20px;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a:hover,
.izzigo-mobile-drawer.izzigo-role-drawer nav a:focus-visible{
    border-color:var(--izzigo-shell-role-line) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a[aria-current="page"]{
    border-color:var(--izzigo-shell-role-accent) !important;
    color:#fff !important;
    background:var(--izzigo-shell-role-accent) !important;
    box-shadow:0 8px 22px color-mix(in srgb,var(--izzigo-shell-role-accent) 18%,transparent) !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a[aria-current="page"] .izzigo-menu-item-icon{
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:#fff !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a.izzigo-logout-link{
    margin-top:12px;
    border-top:1px solid var(--izzigo-shell-role-line) !important;
}

/* One five-position bottom-menu component for Guest, Traveler, and Business. */
@media (max-width:1040px){
    .izzigo-bottom-nav[data-izzigo-role="guest"],
    .izzigo-bottom-nav[data-izzigo-role="traveler"],
    .izzigo-bottom-nav[data-izzigo-role="business"]{
        min-height:72px;
        padding:6px 6px max(7px,env(safe-area-inset-bottom));
        border-top:1px solid #eadcc5 !important;
        color:#74695c;
        background:rgba(255,253,248,.97) !important;
        box-shadow:0 -10px 28px rgba(52,43,34,.09) !important;
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }

    .izzigo-bottom-nav[data-izzigo-role] a{
        min-width:0;
        min-height:58px;
        gap:3px;
        padding:5px 2px 4px;
        border:0 !important;
        border-radius:14px;
        color:#74695c !important;
        background:transparent !important;
        font-weight:760;
    }

    .izzigo-bottom-nav[data-izzigo-role] a::before{
        display:none !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] a .izzigo-bottom-nav-icon{
        display:grid;
        width:34px;
        height:30px;
        place-items:center;
        border-radius:11px;
        transition:background-color .18s ease,color .18s ease,transform .18s ease;
    }

    .izzigo-bottom-nav[data-izzigo-role] a:hover,
    .izzigo-bottom-nav[data-izzigo-role] a:focus-visible{
        color:var(--izzigo-shell-role-accent-dark) !important;
        background:transparent !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] a:hover .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role] a:focus-visible .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"] .izzigo-bottom-nav-icon{
        color:var(--izzigo-shell-role-accent) !important;
        background:var(--izzigo-shell-role-soft) !important;
        transform:translateY(-1px);
    }

    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"]{
        color:var(--izzigo-shell-role-accent-dark) !important;
        background:transparent !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] .izzigo-bottom-nav-label{
        font-size:10.5px;
        font-weight:780;
        letter-spacing:-.01em;
    }

    .izzigo-bottom-nav[data-izzigo-role] .izzigo-bottom-nav-account .izzigo-bottom-nav-icon{
        width:38px;
        height:34px;
        background:transparent !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] .izzigo-account-avatar-bottom{
        border-color:var(--izzigo-shell-role-accent) !important;
    }
}

@media (max-width:430px){
    .izzigo-mobile-drawer.izzigo-role-drawer :where(.izzigo-role-drawer-heading,.izzigo-drawer-welcome){
        margin-right:28px;
        margin-left:28px;
    }

    .izzigo-mobile-drawer.izzigo-role-drawer nav{
        padding-right:20px;
        padding-left:20px;
    }
}

@media (prefers-reduced-motion:reduce){
    .izzigo-site-header[data-izzigo-role] :where(a,button),
    .izzigo-mobile-drawer.izzigo-role-drawer :where(a,button),
    .izzigo-bottom-nav[data-izzigo-role] a .izzigo-bottom-nav-icon{
        transition:none !important;
        transform:none !important;
    }
}

/* Final specificity guard: theme/legacy rules cannot restyle role controls. */
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close],
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover,
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus,
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible,
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:active{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:14px !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:transparent !important;
    background-color:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    transform:none !important;
}

body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover,
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible{
    opacity:1 !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] .izzigo-header-mobile :where(.izzigo-mobile-menu-button,.izzigo-notification-button),
body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] .izzigo-header-desktop :where(.izzigo-header-search,.izzigo-notification-button,.izzigo-account-button){
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:14px !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:transparent !important;
    box-shadow:none !important;
}

body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] :where(.izzigo-mobile-menu-button,.izzigo-header-search,.izzigo-notification-button,.izzigo-account-button):hover,
body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] :where(.izzigo-mobile-menu-button,.izzigo-header-search,.izzigo-notification-button,.izzigo-account-button):focus-visible{
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}

/* --------------------------------------------------------------------------
 * 0.9.4 — minimal, elegant Shell controls.
 *
 * Repeated coloured icon tiles and heavy active fills are removed. Role colour
 * now works as a restrained accent: typography, a slim active indicator, focus
 * visibility, and genuine primary actions. Guest/Traveler remain red and
 * Business remains green.
 * -------------------------------------------------------------------------- */
body.izzigo-shell-role-guest,
body.izzigo-shell-role-traveler,
.izzigo-site-header[data-izzigo-role="guest"],
.izzigo-site-header[data-izzigo-role="traveler"],
.izzigo-role-drawer[data-izzigo-role="guest"],
.izzigo-role-drawer[data-izzigo-role="traveler"],
.izzigo-bottom-nav[data-izzigo-role="guest"],
.izzigo-bottom-nav[data-izzigo-role="traveler"]{
    --izzigo-shell-role-tint:rgba(232,36,79,.055);
    --izzigo-shell-role-tint-strong:rgba(232,36,79,.09);
    --izzigo-shell-role-hairline:rgba(143,38,48,.16);
}

body.izzigo-shell-role-business,
.izzigo-site-header[data-izzigo-role="business"],
.izzigo-role-drawer[data-izzigo-role="business"],
.izzigo-bottom-nav[data-izzigo-role="business"]{
    --izzigo-shell-role-tint:rgba(8,112,71,.055);
    --izzigo-shell-role-tint-strong:rgba(8,112,71,.09);
    --izzigo-shell-role-hairline:rgba(22,77,58,.16);
}

.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):hover,
.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
):focus-visible,
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown.is-active > :where(.izzigo-nav-dropdown-button,.izzigo-dropdown-toggle),
.izzigo-site-header[data-izzigo-role] :where(
    .izzigo-primary-link,
    .izzigo-nav-dropdown-button,
    .izzigo-dropdown-toggle,
    .izzigo-dashboard-nav-link
)[aria-current="page"]{
    border-color:transparent !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:transparent !important;
    box-shadow:inset 0 -2px 0 var(--izzigo-shell-role-accent) !important;
}

.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button):hover,
.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button):focus-visible,
.izzigo-site-header[data-izzigo-role] :where(.izzigo-icon-button,.izzigo-account-button)[aria-current="page"],
.izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover,
.izzigo-mobile-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible{
    color:var(--izzigo-shell-role-accent) !important;
    background:transparent !important;
    box-shadow:none !important;
}

.izzigo-site-header[data-izzigo-role] .izzigo-business-link{
    border-color:var(--izzigo-shell-role-hairline) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:transparent !important;
    box-shadow:none !important;
}

.izzigo-site-header[data-izzigo-role] .izzigo-business-link:hover,
.izzigo-site-header[data-izzigo-role] .izzigo-business-link:focus-visible{
    border-color:var(--izzigo-shell-role-accent) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint) !important;
}

.izzigo-account-panel .izzigo-dropdown-link,
.izzigo-dropdown-panel .izzigo-dropdown-link{
    position:relative;
    border-color:transparent !important;
    border-radius:10px;
}

.izzigo-account-panel .izzigo-dropdown-link .izzigo-menu-item-icon,
.izzigo-dropdown-panel .izzigo-dropdown-link .izzigo-menu-item-icon{
    width:28px;
    height:28px;
    flex-basis:28px;
    border-radius:0;
    color:var(--izzigo-shell-role-accent-dark);
    background:transparent !important;
}

.izzigo-account-panel .izzigo-dropdown-link:hover,
.izzigo-account-panel .izzigo-dropdown-link:focus-visible,
.izzigo-dropdown-panel .izzigo-dropdown-link:hover,
.izzigo-dropdown-panel .izzigo-dropdown-link:focus-visible{
    border-color:transparent !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint) !important;
}

.izzigo-account-panel .izzigo-dropdown-link[aria-current="page"],
.izzigo-dropdown-panel .izzigo-dropdown-link[aria-current="page"],
.izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-dropdown-link[aria-current="page"],
.izzigo-account-dropdown[data-izzigo-role="traveler"] .izzigo-dropdown-link[aria-current="page"]{
    border-color:transparent !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint-strong) !important;
    box-shadow:inset 3px 0 0 var(--izzigo-shell-role-accent) !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer :where(.izzigo-role-drawer-heading,.izzigo-drawer-welcome){
    margin:6px 36px 14px;
    padding:10px 0 16px;
    border:0 !important;
    border-bottom:1px solid rgba(99,50,56,.14) !important;
    border-radius:0;
    background:transparent !important;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a{
    position:relative;
    min-height:50px;
    margin:1px 4px;
    padding:7px 10px;
    gap:9px;
    border:0 !important;
    border-radius:11px;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a .izzigo-menu-item-icon{
    width:30px;
    height:30px;
    flex:0 0 30px;
    border-radius:0;
    color:var(--izzigo-shell-role-accent-dark);
    background:transparent !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a .izzigo-menu-item-icon svg{
    width:20px;
    height:20px;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a:hover,
.izzigo-mobile-drawer.izzigo-role-drawer nav a:focus-visible{
    border-color:transparent !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint) !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a[aria-current="page"]{
    border-color:transparent !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint-strong) !important;
    box-shadow:inset 3px 0 0 var(--izzigo-shell-role-accent) !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a[aria-current="page"] .izzigo-menu-item-icon{
    color:var(--izzigo-shell-role-accent) !important;
    background:transparent !important;
}

.izzigo-mobile-drawer.izzigo-role-drawer nav a.izzigo-logout-link{
    border-top:1px solid rgba(99,50,56,.12) !important;
    border-radius:0;
}

@media (max-width:1040px){
    .izzigo-bottom-nav[data-izzigo-role] a{
        position:relative;
        border-radius:10px;
    }

    .izzigo-bottom-nav[data-izzigo-role] a::before{
        position:absolute;
        top:1px;
        left:50%;
        display:block !important;
        width:18px;
        height:3px;
        border-radius:999px;
        content:"";
        background:transparent;
        transform:translateX(-50%);
    }

    .izzigo-bottom-nav[data-izzigo-role] a .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role] a:hover .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role] a:focus-visible .izzigo-bottom-nav-icon,
    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"] .izzigo-bottom-nav-icon{
        border-radius:0;
        background:transparent !important;
        transform:none;
    }

    .izzigo-bottom-nav[data-izzigo-role] a:hover,
    .izzigo-bottom-nav[data-izzigo-role] a:focus-visible{
        color:var(--izzigo-shell-role-accent-dark) !important;
        background:transparent !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"]::before{
        background:var(--izzigo-shell-role-accent);
    }

    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"] .izzigo-bottom-nav-icon{
        color:var(--izzigo-shell-role-accent) !important;
    }

    .izzigo-bottom-nav[data-izzigo-role] a[aria-current="page"]{
        color:var(--izzigo-shell-role-accent-dark) !important;
        background:transparent !important;
    }
}

body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:hover,
body.izzigo-shell-live-active .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-head > button[data-izzigo-drawer-close]:focus-visible,
body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] :where(.izzigo-mobile-menu-button,.izzigo-header-search,.izzigo-notification-button,.izzigo-account-button):hover,
body.izzigo-shell-live-active .izzigo-site-header[data-izzigo-role] :where(.izzigo-mobile-menu-button,.izzigo-header-search,.izzigo-notification-button,.izzigo-account-button):focus-visible{
    color:var(--izzigo-shell-role-accent) !important;
    background:transparent !important;
}

/* --------------------------------------------------------------------------
 * 0.9.5 — focused role-colour and Guest simple-link polish.
 * -------------------------------------------------------------------------- */
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:hover,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:focus,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:focus-visible,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:active,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link[aria-current="page"]{
    display:block !important;
    min-height:43px;
    padding:11px 10px !important;
    border:0 !important;
    border-radius:0 !important;
    color:var(--izzigo-shell-role-accent-dark,#8f2630) !important;
    background:transparent !important;
    background-color:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link > span{
    display:inline !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    color:inherit !important;
    background:transparent !important;
    background-color:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link::before,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link::after,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link > span::before,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link > span::after{
    content:none !important;
    display:none !important;
    background:transparent !important;
    box-shadow:none !important;
}

.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:hover,
.izzigo-mobile-drawer.izzigo-guest-drawer nav a.izzigo-drawer-simple-link:focus-visible{
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
}

.izzigo-mobile-drawer.izzigo-business-drawer nav a,
.izzigo-mobile-drawer.izzigo-business-drawer nav a > span:not(.izzigo-menu-item-icon),
.izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-dropdown-link,
.izzigo-account-dropdown[data-izzigo-role="business"] .izzigo-dropdown-link > span:not(.izzigo-menu-item-icon){
    color:var(--izzigo-shell-role-accent-dark,#164d3a) !important;
}



/* --------------------------------------------------------------------------
 * 0.9.7 — remembered workspaces, Guest mobile place CTA, and place language.
 * -------------------------------------------------------------------------- */
.izzigo-workspace-switcher{
    margin:10px 14px 12px;
    padding:10px 0 12px;
    border-bottom:1px solid var(--izzigo-shell-role-hairline,rgba(99,50,56,.14));
}
.izzigo-workspace-switcher-label{
    display:block;
    margin:0 0 7px;
    color:#657471;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.izzigo-workspace-switcher-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
}
.izzigo-workspace-option{
    display:flex;
    min-height:38px;
    align-items:center;
    justify-content:center;
    padding:7px 9px;
    border:1px solid rgba(99,50,56,.14);
    border-radius:11px;
    color:#633238;
    background:transparent;
    font-size:13px;
    font-weight:800;
    line-height:1.15;
    text-decoration:none;
}
.izzigo-workspace-option.is-traveler:hover,
.izzigo-workspace-option.is-traveler:focus-visible,
.izzigo-workspace-option.is-traveler.is-active{
    border-color:rgba(232,36,79,.34);
    color:#8f2630;
    background:rgba(232,36,79,.055);
}
.izzigo-workspace-option.is-business:hover,
.izzigo-workspace-option.is-business:focus-visible,
.izzigo-workspace-option.is-business.is-active{
    border-color:rgba(8,112,71,.34);
    color:#075d3d;
    background:rgba(8,112,71,.055);
}
.izzigo-workspace-option:focus-visible{
    outline:3px solid rgba(232,36,79,.18);
    outline-offset:2px;
}
.izzigo-workspace-option.is-business:focus-visible{
    outline-color:rgba(8,112,71,.18);
}
.izzigo-workspace-switcher--drawer{
    margin:0 36px 14px;
    padding:0 0 14px;
}
.izzigo-workspace-switcher--drawer + nav h2:first-child{
    margin-top:6px;
}
@media (max-width:1040px){
    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-identity-free-mobile-actions{
        min-width:104px !important;
    }
    .izzigo-mobile-guest-place-button{
        display:inline-flex !important;
        max-width:112px;
        min-height:36px;
        align-items:center;
        justify-content:center;
        padding:6px 10px !important;
        border:1px solid rgba(143,38,48,.62) !important;
        border-radius:999px !important;
        color:#8f2630 !important;
        background:transparent !important;
        box-shadow:none !important;
        font-size:11px !important;
        font-weight:800 !important;
        line-height:1.08 !important;
        text-align:center;
        text-decoration:none !important;
        white-space:normal;
    }
    .izzigo-mobile-guest-place-button:hover,
    .izzigo-mobile-guest-place-button:focus-visible{
        border-color:#e8244f !important;
        color:#8f2630 !important;
        background:rgba(232,36,79,.055) !important;
    }
}
@media (max-width:370px){
    .izzigo-site-header .izzigo-header-mobile .izzigo-mobile-actions.is-identity-free-mobile-actions{
        min-width:88px !important;
    }
    .izzigo-mobile-guest-place-button{
        max-width:92px;
        padding-inline:7px !important;
        font-size:10px !important;
    }
}
\n\n/* 0.9.10 — no website footer inside Traveler/Business dashboards on tablet/mobile. */\n@media (max-width:1040px){\n  body.izzigo-shell-dashboard-integrated :is(\n    [data-izzigo-footer],\n    .izzigo-shell-footer,\n    footer.elementor-location-footer,\n    .elementor-location-footer,\n    [data-elementor-type="footer"],\n    footer#colophon,\n    #site-footer,\n    footer.site-footer,\n    #colophon,\n    .site-info\n  ){\n    display:none!important;\n    visibility:hidden!important;\n    pointer-events:none!important;\n  }\n}\n

/* 0.9.11 — immersive Business wizard owns the full web document surface.
 * Unlike normal replacement-header suppression, this does not wait for a
 * Shell header to mount because immersive wizard pages intentionally render
 * no web header at all.
 */
body.izzigo-shell-business-wizard-excluded :is(
  [data-izzigo-shell-header],
  .izzigo-shell-header,
  header[role="banner"],
  body > header,
  #page > header,
  #page > .site-header,
  #header,
  #masthead,
  #site-header,
  .site-header,
  .header-wrapper,
  .site-header-wrapper,
  .elementor-header,
  .elementor-header-wrapper,
  header.elementor-location-header,
  .elementor-location-header,
  [data-elementor-type="header"],
  .ehf-header,
  .hfe-header,
  .hfe-site-header,
  .uael-header,
  .main-header,
  .main-header-wrapper,
  .mobile-header,
  .mobile-header-wrap,
  .ast-mobile-header-wrap,
  #ast-mobile-header,
  .ct-header,
  #kadence-header,
  .main-header-bar,
  [data-izzigo-footer],
  .izzigo-shell-footer,
  footer[role="contentinfo"],
  footer.elementor-location-footer,
  .elementor-location-footer,
  [data-elementor-type="footer"],
  footer#colophon,
  #site-footer,
  footer.site-footer,
  #colophon,
  .site-info
){
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.izzigo-shell-business-wizard-excluded{
  --izzigo-shell-live-header-height:0px!important;
  --izzigo-shell-bottom-reserved:0px!important;
}

/* --------------------------------------------------------------------------
 * 0.9.23 — Traveler mobile-web bottom-navigation safe area.
 *
 * Browser chrome / Android gesture areas frequently report a zero CSS safe
 * inset even though a little breathing room is still needed. Keep a small
 * baseline reserve for Traveler web navigation, while allowing larger iOS
 * safe-area values to win. The native Flutter app is excluded because it owns
 * its own SafeArea and the web Shell bottom navigation is suppressed there.
 * -------------------------------------------------------------------------- */
@media (max-width: 1040px) {
    html:not(.izzigo-app):not(.izzigo-app-runtime):not(.izzigo-shell-environment-app):not(.izzigo-app-prepaint)
    body.izzigo-shell-role-traveler:not(.izzigo-app):not(.izzigo-app-runtime):not(.izzigo-shell-environment-app)
    .izzigo-bottom-nav {
        padding-bottom: max(14px, env(safe-area-inset-bottom, 0px));
    }

    html:not(.izzigo-app):not(.izzigo-app-runtime):not(.izzigo-shell-environment-app):not(.izzigo-app-prepaint)
    body.izzigo-shell-role-traveler.izzigo-shell-content-clearance-needed:not(.izzigo-app):not(.izzigo-app-runtime):not(.izzigo-shell-environment-app) {
        padding-bottom: calc(var(--izzigo-shell-bottom-reserved) + 12px);
    }
}



/* v0.9.25 — responsive notification-page polish */
@media (max-width:1040px){
  body:not(.izzigo-app) :where(.iztd-notifications-page,.izbd-notifications-wrap){
    scroll-margin-top:calc(var(--izzigo-shell-header-height,72px) + 10px);
    padding-bottom:calc(28px + var(--izzigo-shell-bottom-height,72px) + max(14px, env(safe-area-inset-bottom)))!important;
  }
  body:not(.izzigo-app) :where(.iztd-notification-toolbar,.izbd-update-feed-tabs){
    overscroll-behavior-x:contain;
  }
  body:not(.izzigo-app) :where(.iztd-notification-card,.izbd-notification-premium-card) a,
  body:not(.izzigo-app) :where(.iztd-notification-card,.izbd-notification-premium-card) button{
    -webkit-tap-highlight-color:transparent;
  }
}
@media (max-width:640px){
  body:not(.izzigo-app) :where(.iztd-notifications-page,.izbd-notifications-wrap){
    padding-bottom:calc(34px + var(--izzigo-shell-bottom-height,72px) + max(14px, env(safe-area-inset-bottom)))!important;
  }
}


/* v0.9.26 — native notification chrome parity below the web Shell header */
@media (max-width:1040px){
  body:not(.izzigo-app) :where(.iztd-notification-mobile-chrome,.izbd-notification-mobile-chrome){
    position:sticky!important;
    top:var(--izzigo-shell-header-height,72px)!important;
    z-index:28!important;
    background:#fffdf8!important;
    box-shadow:0 5px 12px rgba(76,52,38,.035)!important;
  }
  body:not(.izzigo-app) :where(.iztd-notification-list,.izbd-notification-premium-list){
    scroll-margin-top:calc(var(--izzigo-shell-header-height,72px) + 158px)!important;
  }
  body:not(.izzigo-app) :where(.iztd-notification-mobile-tabs,.izbd-notification-mobile-tabs){
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x;
  }
  body:not(.izzigo-app) :where(.iztd-notification-card,.izbd-notification-premium-card){
    touch-action:pan-y;
  }
}


/* v0.9.27 — Notification Preferences parity surface integration. */
@media (max-width:1040px){
  body:not(.izzigo-app) :where(.iztd-native-prefs-appbar,.izbd-native-prefs-appbar){position:sticky!important;top:var(--izzigo-shell-header-height,72px)!important;z-index:30!important;background:#fffdf8!important;box-shadow:0 5px 12px rgba(76,52,38,.035)!important}
  body:not(.izzigo-app) :where(.iztd-notification-mobile-preferences,.izbd-notification-native-preferences){scroll-margin-top:calc(var(--izzigo-shell-header-height,72px) + 8px)!important;padding-bottom:calc(10px + var(--izzigo-shell-bottom-height,72px) + max(14px,env(safe-area-inset-bottom)))!important}
  body:not(.izzigo-app) :where(.iztd-native-prefs-form,.izbd-native-prefs-form){overscroll-behavior-y:contain}
  body:not(.izzigo-app) :where(.iztd-native-pref-row,.izbd-native-pref-row,.iztd-native-prefs-back,.izbd-native-prefs-back,.iztd-native-prefs-save button,.izbd-native-prefs-save button){-webkit-tap-highlight-color:transparent}
}


/* v0.9.28 — notification chrome scroll/full-bleed repair.
 * The Shell header scrolls with the document on responsive web. The notification
 * chrome therefore sticks to the viewport top only after that header leaves,
 * instead of reserving a phantom Shell-header gap. It also spans the viewport
 * so page content cannot show around the sides while the chrome is sticky. */
@media (max-width:1040px){
  body:not(.izzigo-app) :where(.iztd-notification-mobile-chrome,.izbd-notification-mobile-chrome){
    top:0!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    margin-top:0!important;
    margin-bottom:0!important;
    padding-left:0!important;
    padding-right:0!important;
    background:#fffdf8!important;
    border-radius:0!important;
    overflow:hidden!important;
    box-shadow:0 5px 14px rgba(76,52,38,.06)!important;
  }
  body:not(.izzigo-app) :where(.iztd-notification-list,.izbd-notification-premium-list){
    scroll-margin-top:164px!important;
  }
}

/* --------------------------------------------------------------------------
 * v0.9.33 editorial footer — tighter link rhythm and centered copyright.
 * One cream surface: brand/newsletter, four navigation columns, copyright/socials.
 * -------------------------------------------------------------------------- */
.izzigo-site-footer.izzigo-shell-footer{
    --izzigo-footer-cream:#f4ecde;
    --izzigo-footer-ink:#4a2418;
    --izzigo-footer-muted:#76513f;
    --izzigo-footer-line:rgba(74,36,24,.14);
    --izzigo-footer-accent:#dc3547;
    background:var(--izzigo-footer-cream);
    color:var(--izzigo-footer-ink);
    font-family:var(--izzigo-font-family,"Varela Round","Noto Sans Georgian",Arial,sans-serif)!important;
}

.izzigo-site-footer.izzigo-shell-footer,
.izzigo-site-footer.izzigo-shell-footer :where(a,button,input,select,textarea){
    font-family:var(--izzigo-font-family,"Varela Round","Noto Sans Georgian",Arial,sans-serif)!important;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-shell{
    width:min(1360px,calc(100% - 96px));
    margin:0 auto;
    padding:0;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);
    gap:clamp(56px,8vw,128px);
    align-items:center;
    padding:58px 0 54px;
    border-bottom:1px solid var(--izzigo-footer-line);
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro-brand{
    max-width:570px;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-brand .izzigo-logo{
    display:inline-flex;
    align-items:center;
    min-height:0;
    color:var(--izzigo-footer-ink);
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-brand .izzigo-logo-image{
    width:auto;
    max-width:150px;
    max-height:48px;
    object-fit:contain;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro-copy{
    max-width:520px;
    margin:20px 0 0;
    color:var(--izzigo-footer-muted);
    font-size:16px;
    font-weight:400;
    line-height:1.72;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter{
    width:100%;
    max-width:560px;
    justify-self:end;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-title{
    display:block;
    margin:0 0 14px;
    color:var(--izzigo-footer-ink);
    font-size:15px;
    font-weight:700;
    line-height:1.4;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form{
    display:flex;
    width:100%;
    min-height:60px;
    align-items:center;
    gap:10px;
    padding:7px 8px 7px 22px;
    border:1px solid rgba(74,36,24,.18);
    border-radius:999px;
    background:rgba(255,255,255,.34);
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form input{
    flex:1 1 auto;
    min-width:0;
    min-height:44px;
    margin:0;
    padding:0;
    border:0!important;
    outline:0;
    box-shadow:none!important;
    color:var(--izzigo-footer-ink);
    background:transparent!important;
    font-size:15px;
    font-weight:400;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form input::placeholder{
    color:#8b6652;
    opacity:1;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form input:focus{
    border:0!important;
    outline:0;
    box-shadow:none!important;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form:focus-within{
    border-color:rgba(220,53,71,.65);
    box-shadow:0 0 0 3px rgba(220,53,71,.08);
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button{
    display:inline-flex;
    flex:0 0 auto;
    min-width:98px;
    min-height:46px;
    align-items:center;
    justify-content:center;
    gap:9px;
    margin:0;
    padding:0 20px;
    border:0;
    border-radius:999px;
    color:#fff;
    background:var(--izzigo-footer-accent);
    box-shadow:none;
    font-size:14px;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    transition:opacity .15s ease;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button:hover,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button:focus-visible{
    color:#fff;
    background:var(--izzigo-footer-accent);
    opacity:.9;
    transform:none;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-columns{
    display:grid;
    grid-template-columns:1fr 1fr 1fr 1fr;
    gap:clamp(48px,7vw,118px);
    padding:58px 0 62px;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section{
    min-width:0;
    margin:0;
    padding:0;
    border:0;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:hover,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:focus,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:active{
    display:flex;
    width:100%;
    min-height:0;
    align-items:center;
    justify-content:space-between;
    margin:0 0 18px;
    padding:0;
    border:0;
    border-radius:0;
    color:var(--izzigo-footer-ink);
    background:transparent;
    box-shadow:none;
    text-align:left;
    text-decoration:none;
    cursor:default;
    transform:none;
    transition:none;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle span{
    color:inherit;
    font-size:15px;
    font-weight:700;
    letter-spacing:.14em;
    line-height:1.25;
    text-transform:uppercase;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle svg{
    display:none;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel a,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel button{
    width:fit-content;
    min-height:0;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    color:var(--izzigo-footer-muted);
    background:transparent;
    box-shadow:none;
    font-size:15px;
    font-weight:400;
    line-height:1.45;
    text-align:left;
    text-decoration:none;
    cursor:pointer;
    appearance:none;
    transform:none;
    transition:color .14s ease;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel a:hover,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel a:focus-visible,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel button:hover,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel button:focus-visible{
    color:var(--izzigo-footer-ink);
    background:transparent;
    text-decoration:none;
    transform:none;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel a[aria-current="page"]{
    color:var(--izzigo-footer-ink);
    background:transparent;
    font-weight:700;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    gap:24px;
    align-items:center;
    width:100%;
    margin:0;
    padding:28px 0 40px;
    border-top:1px solid var(--izzigo-footer-line);
    color:var(--izzigo-footer-muted);
    background:transparent;
    font-size:13px;
    line-height:1.45;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-main{
    grid-column:2;
    min-width:0;
    justify-self:center;
    text-align:center;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-socials{
    grid-column:3;
    justify-self:end;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-socials .izzigo-footer-socials{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-socials a,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-socials > span{
    display:inline-flex;
    width:38px;
    height:38px;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(74,36,24,.15);
    border-radius:50%;
    color:var(--izzigo-footer-muted);
    background:transparent;
    text-decoration:none;
    transform:none;
    transition:color .14s ease,border-color .14s ease;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-socials a:hover,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-socials a:focus-visible{
    border-color:rgba(74,36,24,.34);
    color:var(--izzigo-footer-ink);
    background:transparent;
    transform:none;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-socials svg{
    width:16px;
    height:16px;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-privacy-feedback{
    grid-column:1/-1;
    min-width:0;
    color:var(--izzigo-footer-muted);
    text-align:left;
}

.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-privacy-feedback:empty{
    display:none;
}

@media (max-width:1040px){
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-shell{
        width:min(100% - 56px,1000px);
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro{
        grid-template-columns:1fr 1fr;
        gap:44px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-columns{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:48px 64px;
    }
}

@media (max-width:760px){
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-shell{
        width:calc(100% - 36px);
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro{
        display:block;
        padding:42px 0 38px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-intro-copy{
        margin-top:16px;
        font-size:15px;
        line-height:1.65;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter{
        max-width:none;
        margin-top:34px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form{
        min-height:56px;
        padding-left:18px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button{
        min-width:88px;
        min-height:42px;
        padding:0 16px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-columns{
        display:block;
        padding:20px 0 26px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section{
        border-bottom:1px solid var(--izzigo-footer-line);
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle,
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:hover,
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:focus,
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle:active{
        min-height:58px;
        margin:0;
        cursor:pointer;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle span{
        font-size:14px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-toggle svg{
        display:block;
        width:18px;
        height:18px;
        transition:transform .16s ease;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section.is-open .izzigo-footer-section-toggle svg{
        transform:rotate(180deg);
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-section-panel{
        gap:14px;
        padding:0 0 20px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:20px;
        padding:24px 0 calc(30px + var(--izzigo-shell-bottom-reserved,0px));
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-main{
        width:100%;
        text-align:center;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-socials,
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-bottom-socials .izzigo-footer-socials{
        justify-self:auto;
        justify-content:center;
    }
}

@media (max-width:430px){
    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form{
        gap:6px;
        padding:6px 6px 6px 15px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form input{
        font-size:14px;
    }

    .izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button{
        min-width:78px;
        padding:0 13px;
    }
}

/* v0.9.35 — functional newsletter subscription states. */
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-hp{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-note,
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-status{
    margin:8px 4px 0;
    min-height:18px;
    color:var(--izzigo-footer-muted);
    font-family:var(--izzigo-font-family,"Varela Round",Arial,sans-serif);
    font-size:12px;
    line-height:1.45;
}
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-status:empty{display:none}
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-status.is-success{color:#116149}
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-status.is-error{color:#9f2635}
.izzigo-site-footer.izzigo-shell-footer .izzigo-footer-newsletter-form button:disabled{
    opacity:.62;
    cursor:wait;
}


/* ==========================================================================
   IzziGo Site Shell 0.9.37 — Explore category mega menu
   ========================================================================== */
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] > .izzigo-dropdown-panel.is-mega{
    width:min(790px,calc(100vw - 40px));
    max-height:min(670px,calc(100vh - 104px));
    grid-template-columns:minmax(175px,.62fr) minmax(430px,1.7fr);
    gap:24px;
    padding:22px;
    border:1px solid rgba(16,55,47,.10) !important;
    border-radius:20px !important;
    background:#fff !important;
    box-shadow:0 24px 70px rgba(15,47,40,.16) !important;
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-group + .izzigo-dropdown-group{
    padding-left:24px;
    border-left:1px solid rgba(16,55,47,.09);
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-group h2{
    margin:2px 8px 12px;
    color:#697773;
    font-family:var(--izzigo-font-family, "Varela Round", sans-serif);
    font-size:11px;
    font-weight:700;
    letter-spacing:.085em;
    line-height:1.25;
    text-transform:uppercase;
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-group:last-child .izzigo-dropdown-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px 8px;
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link{
    min-height:50px;
    margin:0;
    grid-template-columns:36px minmax(0,1fr);
    gap:10px;
    padding:7px 10px !important;
    border:1px solid transparent !important;
    border-radius:13px !important;
    color:var(--izzigo-shell-text,#18342e) !important;
    font-size:13px !important;
    font-weight:650 !important;
    line-height:1.25;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link .izzigo-menu-item-icon{
    width:36px;
    height:36px;
    border-radius:11px;
    color:var(--izzigo-shell-role-accent-dark,var(--izzigo-shell-green-dark));
    background:var(--izzigo-shell-role-soft,#f1f6f3);
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link .izzigo-menu-item-icon svg{
    width:18px;
    height:18px;
}
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link:hover,
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link:focus-visible,
.izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link[aria-current="page"]{
    border-color:var(--izzigo-shell-role-line,rgba(16,55,47,.12)) !important;
    color:var(--izzigo-shell-role-accent-dark,var(--izzigo-shell-green-dark)) !important;
    background:var(--izzigo-shell-role-soft,#f1f6f3) !important;
    transform:translateY(-1px);
}
@media (min-width:721px) and (max-width:900px){
    .izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] > .izzigo-dropdown-panel.is-mega{
        width:min(720px,calc(100vw - 28px));
        grid-template-columns:minmax(155px,.55fr) minmax(390px,1.65fr);
        gap:16px;
        padding:18px;
    }
    .izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-group + .izzigo-dropdown-group{
        padding-left:16px;
    }
    .izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link{
        min-height:47px;
        grid-template-columns:32px minmax(0,1fr);
        padding:6px 8px !important;
        font-size:12.5px !important;
    }
    .izzigo-site-header[data-izzigo-role] .izzigo-dropdown[data-izzigo-menu-key="explore"] .izzigo-dropdown-link .izzigo-menu-item-icon{
        width:32px;
        height:32px;
    }
}


/* 0.9.37 — compact category grid inside the <=1040px header drawer. */
.izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-category-heading{
    margin-bottom:10px;
}
.izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-category-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin:0 4px 12px;
}
.izzigo-mobile-drawer.izzigo-role-drawer nav .izzigo-drawer-category-grid > a.izzigo-drawer-category-link{
    min-width:0;
    min-height:58px;
    margin:0;
    padding:8px 9px;
    gap:7px;
    border:1px solid rgba(99,50,56,.09) !important;
    border-radius:13px;
    background:rgba(255,255,255,.52) !important;
    font-size:13px;
    font-weight:730;
    line-height:1.2;
}
.izzigo-mobile-drawer.izzigo-role-drawer nav .izzigo-drawer-category-grid > a.izzigo-drawer-category-link .izzigo-menu-item-icon{
    width:30px;
    height:30px;
    flex:0 0 30px;
}
.izzigo-mobile-drawer.izzigo-role-drawer nav .izzigo-drawer-category-grid > a.izzigo-drawer-category-link:hover,
.izzigo-mobile-drawer.izzigo-role-drawer nav .izzigo-drawer-category-grid > a.izzigo-drawer-category-link:focus-visible{
    border-color:var(--izzigo-shell-role-line) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-soft) !important;
}
.izzigo-mobile-drawer.izzigo-role-drawer nav .izzigo-drawer-category-grid > a.izzigo-drawer-category-link[aria-current="page"]{
    border-color:var(--izzigo-shell-role-accent) !important;
    color:var(--izzigo-shell-role-accent-dark) !important;
    background:var(--izzigo-shell-role-tint-strong,var(--izzigo-shell-role-soft)) !important;
    box-shadow:inset 3px 0 0 var(--izzigo-shell-role-accent) !important;
}
@media (max-width:360px){
    .izzigo-mobile-drawer.izzigo-role-drawer .izzigo-drawer-category-grid{
        grid-template-columns:1fr;
    }
}
