html body .sm-mega-header {
    --sm-nav-ink: #171717;
    --sm-nav-orange: #F28C28;
    --sm-nav-yellow: #FECB01;
    --sm-nav-warm: #fff4e8;
    position: relative;
    z-index: 100;
    margin: 0;
    padding: 10px 24px;
    border: 0;
    border-bottom: 1px solid var(--sm-nav-yellow);
    background: #fff;
    color: var(--sm-nav-ink);
    font: 400 16px/1.4 Arial, Helvetica, sans-serif;
}
.sm-mega-header, .sm-mega-header * { box-sizing: border-box; }
.sm-mega-header .sm-mega-bar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    width: 100%;
    max-width: 1280px;
    min-height: 64px;
    margin: 0 auto;
    padding: 5px 0;
}
.sm-mega-header .sm-mega-brand { display: flex; flex: 0 0 auto; }
.sm-mega-header .sm-mega-brand img { display: block; width: 112px; height: 54px; object-fit: contain; }
.sm-mega-header .sm-mega-nav { display: flex; align-items: center; gap: 6px; }
.sm-mega-header a { text-decoration: none; }
.sm-mega-header a::before, .sm-mega-header a::after { content: none !important; }
.sm-mega-header :is(a, button):focus-visible { outline: 2px solid var(--sm-nav-ink); outline-offset: 2px; }
.sm-mega-header .sm-mega-parent { position: relative; }
.sm-mega-header :is(.sm-mega-nav > a, .sm-mega-parent > a) {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 9px 15px;
    border-radius: 24px;
    color: var(--sm-nav-ink);
    font-size: 15px;
    font-weight: 500;
    white-space: nowrap;
}
.sm-mega-header :is(.sm-mega-nav > a:hover, .sm-mega-nav > a[aria-current], .sm-mega-parent > a:hover, .sm-mega-active .sm-mega-parent > a, .sm-mega-group[data-open] .sm-mega-parent > a) { background: var(--sm-nav-warm); }
.sm-mega-header .sm-mega-nav > .sm-mega-contact {
    margin-inline-start: 10px;
    padding-inline: 22px;
    background: var(--sm-nav-orange);
    font-weight: 700;
}
.sm-mega-header .sm-mega-nav > .sm-mega-contact:hover { background: #f49e48; }
.sm-mega-header .sm-mega-toggle { display: none; }
.sm-mega-header :is(.sm-mega-disclosure, .sm-mega-toggle) {
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: #fff;
    color: var(--sm-nav-ink);
    cursor: pointer;
}
.sm-mega-header .sm-mega-disclosure {
    display: grid;
    position: absolute;
    z-index: 1;
    inset-block-start: 0;
    inset-inline-end: 0;
    place-items: center;
    width: 32px;
    min-height: 44px;
    font: 500 21px/1 Arial, Helvetica, sans-serif;
    opacity: 0;
    pointer-events: none;
}
.sm-mega-header .sm-mega-disclosure:focus-visible { opacity: 1; pointer-events: auto; }
.sm-mega-header .sm-mega-disclosure::after { content: "+"; }
.sm-mega-header .sm-mega-disclosure[aria-expanded="true"]::after { content: "−"; }
.sm-mega-header .sm-mega-panel[hidden] { display: none !important; }
.sm-mega-header .sm-mega-panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    left: 0;
    width: min(100%, 1120px);
    margin: 0 auto;
    border-top: 2px solid var(--sm-nav-orange);
    border-radius: 0 0 12px 12px;
    background: #fff;
    box-shadow: 0 14px 36px #17171720;
}
.sm-mega-header .sm-mega-panel::before {
    position: absolute;
    right: 0;
    bottom: 100%;
    left: 0;
    height: 22px;
    content: "";
}
.sm-mega-header .sm-mega-columns {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    max-height: min(70vh, 520px);
    overflow: auto;
    padding: 24px 16px;
}
.sm-mega-header .sm-mega-column { min-width: 0; padding: 0 16px; }
.sm-mega-header .sm-mega-column + .sm-mega-column { border-inline-start: 1px solid #ece8e1; }
.sm-mega-header .sm-mega-heading {
    margin: 0 0 8px;
    padding: 0 8px;
    color: var(--sm-nav-ink);
    font-size: 15px;
    font-weight: 700;
}
.sm-mega-header .sm-mega-column ul { margin: 0; padding: 0; list-style: none; }
.sm-mega-header .sm-mega-column li { margin: 0; padding: 0; }
.sm-mega-header .sm-mega-column :is(a, .sm-mega-unavailable) {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 7px 8px;
    border-radius: 5px;
    color: var(--sm-nav-ink);
    font-size: 14px;
    line-height: 1.4;
}
.sm-mega-header .sm-mega-column a:is(:hover, [aria-current]) { background: var(--sm-nav-warm); color: #8c4100; }
.sm-mega-header .sm-mega-column .sm-mega-unavailable { color: #555; }
@media (min-width: 1051px) and (hover: none) {
    .sm-mega-header .sm-mega-disclosure { position: static; opacity: 1; pointer-events: auto; }
    .sm-mega-header .sm-mega-parent { display: flex; align-items: center; }
}
@media (max-width: 1050px) {
    html body .sm-mega-header { padding: 10px 14px; }
    .sm-mega-header .sm-mega-bar { min-height: 62px; gap: 12px; padding: 7px 12px 7px 18px; }
    .sm-mega-header .sm-mega-brand img { width: 100px; height: 48px; }
    .sm-mega-header .sm-mega-toggle { display: grid; place-items: center; width: 44px; height: 44px; }
    .sm-mega-header .sm-mega-nav {
        display: none;
        position: absolute;
        top: calc(100% + 10px);
        right: 0;
        left: 0;
        max-height: calc(100dvh - 100px);
        overflow: auto;
        padding: 10px;
        border-top: 2px solid var(--sm-nav-orange);
        border-radius: 0 0 12px 12px;
        background: #fff;
        box-shadow: 0 14px 30px #17171720;
    }
    .sm-mega-header .sm-mega-nav[data-open] { display: block; }
    .sm-mega-header .sm-mega-parent { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 6px; }
    .sm-mega-header .sm-mega-disclosure { position: static; width: 44px; opacity: 1; pointer-events: auto; }
    .sm-mega-header .sm-mega-disclosure[aria-expanded="true"] { background: var(--sm-nav-warm); }
    .sm-mega-header .sm-mega-panel { position: static; width: auto; margin: 0 12px; border: 0; border-radius: 0; box-shadow: none; }
    .sm-mega-header .sm-mega-panel::before { content: none; }
    .sm-mega-header .sm-mega-columns { display: block; max-height: none; overflow: visible; padding: 6px 0 12px; }
    .sm-mega-header .sm-mega-column { padding: 6px 4px; }
    .sm-mega-header .sm-mega-column + .sm-mega-column { border-inline-start: 0; border-top: 1px solid #ece8e1; }
    .sm-mega-header .sm-mega-heading { margin-bottom: 0; font-size: 13px; }
    .sm-mega-header .sm-mega-column a { min-height: 44px; }
    .sm-mega-header .sm-mega-nav > .sm-mega-contact { justify-content: center; margin: 6px 0 0; }
}
