.ttb-site-shell-active .site-header,
.ttb-site-shell-active .ast-mobile-header-wrap {
    display: none !important;
}

.ttb-site-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    width: 100%;
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid #ece6dc !important;
    color: #1f1f1d !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.admin-bar .ttb-site-header { top: 32px; }

.ttb-site-header__inner {
    width: min(1180px, calc(100% - 40px));
    min-height: 76px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.ttb-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    color: #1f1f1d !important;
    text-decoration: none !important;
}

.ttb-brand:hover,
.ttb-brand:focus { color: #1f1f1d !important; }

.ttb-brand__mark {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border: 1px solid #a68d62;
    border-radius: 50%;
    background: #fff;
    color: #8a7450 !important;
    font: 700 0.72rem/1 Georgia, serif;
    letter-spacing: .08em;
}

.ttb-brand__copy { display: grid; min-width: 0; line-height: 1.15; }
.ttb-brand__copy strong { color: #1f1f1d !important; font: 600 1rem/1.2 Georgia, serif; white-space: nowrap; }
.ttb-brand__copy small { margin-top: 4px; color: #8a847a !important; font-size: .68rem; white-space: nowrap; }

.ttb-nav-list {
    display: flex;
    align-items: center;
    gap: 26px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ttb-nav-list a {
    color: #4b4944 !important;
    font-size: .88rem;
    font-weight: 650;
    text-decoration: none !important;
}

.ttb-nav-list a:hover,
.ttb-nav-list a:focus { color: #8a7450 !important; }

.ttb-header-actions { display: flex; align-items: center; gap: 14px; }

.ttb-header-cta,
.ttb-mobile-menu__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid #1f1f1d !important;
    border-radius: 999px;
    background: #1f1f1d !important;
    color: #fff !important;
    font-size: .84rem;
    font-weight: 800;
    text-decoration: none !important;
}

.ttb-mobile-menu { display: none; position: relative; margin: 0; }
.ttb-mobile-menu summary {
    list-style: none;
    cursor: pointer;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: 1px solid #ded7cd !important;
    border-radius: 50%;
    display: grid;
    place-content: center;
    gap: 4px;
    background: #fff !important;
}
.ttb-mobile-menu summary::-webkit-details-marker { display: none; }
.ttb-mobile-menu summary span { width: 17px; height: 1px; background: #1f1f1d !important; display: block; }
.ttb-mobile-menu nav {
    position: absolute;
    top: 54px;
    right: 0;
    z-index: 10000;
    width: min(310px, calc(100vw - 32px));
    padding: 20px;
    border: 1px solid #e4ddd2;
    border-radius: 16px;
    background: #fff !important;
    box-shadow: 0 18px 50px rgba(40, 34, 26, .12);
}
.ttb-mobile-nav-list { list-style: none; margin: 0 0 16px; padding: 0; }
.ttb-mobile-nav-list li + li { border-top: 1px solid #ece6dc; }
.ttb-mobile-nav-list a { display: block; padding: 13px 2px; color: #2a2925 !important; text-decoration: none !important; }
.ttb-mobile-menu__cta { width: 100%; }

@media (max-width: 900px) {
    .ttb-desktop-nav,
    .ttb-header-cta { display: none !important; }
    .ttb-mobile-menu { display: block !important; }
    .ttb-site-header__inner { width: min(calc(100% - 28px), 1180px); min-height: 70px; gap: 14px; }
}

@media (max-width: 782px) { .admin-bar .ttb-site-header { top: 46px; } }

@media (max-width: 520px) {
    .ttb-site-header__inner { min-height: 66px; }
    .ttb-brand { gap: 10px; }
    .ttb-brand__mark { width: 36px; height: 36px; font-size: .66rem; }
    .ttb-brand__copy strong { font-size: .92rem; }
    .ttb-brand__copy small { display: none; }
    .ttb-mobile-menu summary { width: 40px; height: 40px; }
    .ttb-mobile-menu nav { top: 50px; }
}
