:root {
    --org-red: #08807e;
    --org-red-dark: #055f5d;
    --org-blue: #0b6f78;
    --org-blue-dark: #073f46;
    --org-ink: #14313b;
    --org-muted: #607577;
    --org-line: #d6e8e8;
    --org-soft: #f1fbfa;
}

#main-navbar.org-site-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: #ffffff !important;
    border-bottom: 1px solid var(--org-line);
    box-shadow: 0 10px 28px rgba(8, 128, 126, 0.08);
}

#main-navbar.org-site-header::before,
#main-navbar.org-site-header::after { display: none; }

.org-utility {
    background: var(--org-blue-dark);
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 800;
}

.org-utility__inner {
    width: min(1180px, calc(100% - 40px));
    min-height: 38px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.org-utility nav { display: flex; align-items: center; gap: 22px; }
.org-utility a { color: rgba(255,255,255,0.88); text-decoration: none; }
.org-utility a:hover { color: #fff; text-decoration: underline; }

#main-navbar .org-mainnav {
    max-width: 1180px;
    padding: 0;
}

#main-navbar .navbar { min-height: 82px; }
#main-navbar .hb-nav-logo { gap: 12px; }
#main-navbar .hb-nav-logo img { height: 58px; filter: none; }
#main-navbar .hb-logo-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    color: var(--org-blue-dark);
    letter-spacing: 0;
    text-shadow: none;
    line-height: 1.05;
}

#main-navbar .hb-logo-text strong { font-size: 1.12rem; font-weight: 900; }
#main-navbar .hb-logo-text small { color: var(--org-red); font-size: 0.72rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; }
#main-navbar .hb-nav-list { gap: 26px; }
#main-navbar .hb-nav-link {
    color: var(--org-blue-dark) !important;
    font-size: 0.94rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: none;
}

#main-navbar .hb-nav-link::after { background: var(--org-red); bottom: -7px; height: 4px; border-radius: 0; }
#main-navbar .hb-nav-link:hover,
#main-navbar .hb-nav-link.is-active,
#main-navbar .hb-nav-link[aria-current="page"] { color: var(--org-red) !important; transform: none; }
#main-navbar .hb-dropdown-toggle { border: 0; background: transparent; cursor: pointer; }
#main-navbar .hb-dropdown-menu {
    border-radius: 0;
    border: 1px solid var(--org-line);
    border-top: 5px solid var(--org-red);
    box-shadow: 0 18px 42px rgba(8,128,126,0.14);
}

#main-navbar .hb-dropdown-item { color: var(--org-ink); font-weight: 800; }
#main-navbar .hb-dropdown-item:hover { color: var(--org-red); background: #e8f7f6; }
#main-navbar .hb-nav-actions { gap: 10px; }
#main-navbar .hb-btn {
    border-radius: 4px;
    min-height: 44px;
    font-weight: 900;
}
#main-navbar .hb-btn--primary {
    background: var(--org-red) !important;
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(8, 128, 126, 0.22);
    border-color: var(--org-red);
}
#main-navbar .hb-btn--primary:hover { background: var(--org-red-dark) !important; color: #fff !important; }
#main-navbar .hb-theme-toggle {
    border: 1px solid var(--org-line);
    color: var(--org-blue-dark);
    background: #fff;
}

.org-site-footer.site-footer {
    margin-top: 0;
    background: var(--org-blue-dark) !important;
    color: #ffffff !important;
    border-top: 0;
    box-shadow: none;
}

.org-site-footer .site-footer__inner {
    max-width: 1180px;
    padding: 52px 20px 24px;
}

.org-footer__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    padding-bottom: 34px;
    margin-bottom: 26px;
    border-bottom: 1px solid rgba(255,255,255,0.16);
}

.org-footer__brand { display: flex; align-items: center; gap: 18px; max-width: 620px; }
.org-footer__brand img { width: 72px; height: 72px; object-fit: contain; background: #fff; padding: 6px; }
.org-footer__brand strong { display: block; color: #fff; font-size: 1.45rem; font-weight: 900; }
.org-footer__brand p { margin: 6px 0 0; color: rgba(255,255,255,0.78); line-height: 1.65; }
.org-footer__cta { display: flex; flex-wrap: wrap; gap: 12px; }
.org-footer__donate,
.org-footer__contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 4px;
    font-weight: 900;
    text-decoration: none !important;
}
.org-footer__donate { background: var(--org-red); color: #fff !important; }
.org-footer__contact { border: 2px solid rgba(255,255,255,0.72); color: #fff !important; }

.org-site-footer .site-footer__accordion { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.org-site-footer .site-footer__row {
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 0;
    background: rgba(255,255,255,0.04);
}
.org-site-footer .site-footer__row:hover { background: rgba(255,255,255,0.07); }
.org-site-footer .site-footer__trigger { color: #fff; }
.org-site-footer .site-footer__icon,
.org-site-footer .site-footer__label { color: #fff; }
.org-site-footer .site-footer__line { background: rgba(255,255,255,0.18); }
.org-site-footer .site-footer__panel-grid a { color: rgba(255,255,255,0.78); }
.org-site-footer .site-footer__panel-grid a:hover { color: #fff; }
.org-site-footer .site-footer__bottom {
    border-top-color: rgba(255,255,255,0.16);
    background: transparent;
}
.org-site-footer .site-footer__copy,
.org-site-footer .site-footer__social-wrap span { color: rgba(255,255,255,0.78); }
.org-site-footer .site-footer__social a {
    color: #fff;
    border-color: rgba(255,255,255,0.24);
    box-shadow: none;
}
.org-site-footer .site-footer__social a:hover { color: #fff; background: var(--org-red); border-color: var(--org-red); }

.floating-donate-btn,
.back-to-top-btn {
    border-radius: 4px;
    background: var(--org-red) !important;
    box-shadow: 0 18px 32px rgba(8, 128, 126, 0.28) !important;
}
.show-scroll-buttons .floating-donate-btn { --donate-shift: -70px; }

@media (max-width: 991.98px) {
    .org-utility__inner { width: min(100% - 28px, 1180px); }
    .org-utility nav { gap: 14px; }
    #main-navbar .org-mainnav { padding: 0 14px; }
    #main-navbar .hb-nav-collapse.is-open .hb-nav-panel { background: #fff; }
    #main-navbar .hb-nav-list { gap: 0; align-items: stretch; }
    #main-navbar .hb-mobile-only { display: block; }
    #main-navbar .hb-nav-link::after { display: none; }
    #main-navbar .hb-nav-link { width: 100%; padding: 14px 0 !important; border-bottom: 1px solid var(--org-line); }
    #main-navbar .hb-nav-actions { width: 100%; align-items: stretch; }
    #main-navbar .hb-nav-actions .hb-btn { width: 100%; }
    .org-footer__top { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767.98px) {
    .org-utility__inner { align-items: flex-start; flex-direction: column; padding: 8px 0; gap: 6px; }
    .org-utility nav { flex-wrap: wrap; }
    #main-navbar .navbar { min-height: 74px; }
    #main-navbar .hb-nav-logo img { height: 52px; }
    #main-navbar .hb-logo-text strong { font-size: 1rem; }
    .org-site-footer .site-footer__accordion { grid-template-columns: 1fr; }
    .org-site-footer .site-footer__bottom { align-items: flex-start; flex-direction: column; }
}

/* Premium teal shell redesign. */
:root {
    --org-red: #087d7b;
    --org-red-dark: #035f5d;
    --org-blue: #0a727a;
    --org-blue-dark: #073f46;
    --org-ink: #123038;
    --org-muted: #587176;
    --org-line: #d7eceb;
    --org-soft: #f3fbfa;
}

#main-navbar.org-site-header {
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(8, 128, 126, 0.14);
    box-shadow: 0 14px 36px rgba(6, 64, 69, 0.09);
}

.org-utility {
    background: linear-gradient(90deg, #073f46 0%, #087d7b 68%, #11aaa5 100%);
}

#main-navbar .hb-nav-logo img {
    height: 62px;
    filter: drop-shadow(0 10px 20px rgba(8, 128, 126, 0.13));
}

#main-navbar .hb-logo-text strong {
    color: #073f46;
}

#main-navbar .hb-logo-text small,
#main-navbar .hb-nav-link:hover,
#main-navbar .hb-nav-link.is-active,
#main-navbar .hb-nav-link[aria-current="page"] {
    color: #087d7b !important;
}

#main-navbar .hb-nav-link::after {
    background: linear-gradient(90deg, #087d7b, #11aaa5);
}

#main-navbar .hb-btn--primary,
.org-footer__donate,
.floating-donate-btn,
.back-to-top-btn {
    background: linear-gradient(135deg, #087d7b, #11aaa5) !important;
    border-color: #087d7b !important;
    box-shadow: 0 16px 34px rgba(8, 128, 126, 0.24) !important;
}

#main-navbar .hb-btn--primary:hover,
.org-footer__donate:hover {
    background: linear-gradient(135deg, #035f5d, #087d7b) !important;
}

#main-navbar .hb-dropdown-menu {
    border-top-color: #11aaa5;
}

#main-navbar .hb-dropdown-item:hover {
    color: #035f5d;
    background: #e8f7f6;
}

.org-site-footer.site-footer {
    background:
        radial-gradient(circle at 8% 18%, rgba(141, 227, 220, 0.13), transparent 22%),
        linear-gradient(135deg, #073f46 0%, #075b61 55%, #087d7b 100%) !important;
}

.org-footer__brand img {
    border-radius: 0;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.16);
}

.org-site-footer .site-footer__row {
    background: rgba(255, 255, 255, 0.055);
    border-color: rgba(255, 255, 255, 0.18);
}

.org-site-footer .site-footer__row:hover {
    background: rgba(255, 255, 255, 0.095);
}

.org-site-footer .site-footer__social a:hover {
    background: #11aaa5;
    border-color: #11aaa5;
}

/* Utility bar alignment correction. */
.org-utility {
    min-height: 42px;
    display: flex;
    align-items: center;
}

.org-utility__inner {
    min-height: 42px;
    padding: 0;
    line-height: 1;
}

.org-utility__inner > span,
.org-utility nav,
.org-utility nav a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
}

.org-utility__inner > span {
    margin: 0;
}

.org-utility nav a {
    line-height: 1;
}

@media (max-width: 767.98px) {
    .org-utility__inner {
        min-height: 44px;
        flex-direction: row;
        align-items: center;
        padding: 0;
    }

    .org-utility__inner > span,
    .org-utility nav,
    .org-utility nav a {
        min-height: 44px;
    }
}

/* Light white/teal footer refinement. */
.org-site-footer.site-footer {
    background: #ffffff !important;
    color: var(--org-ink) !important;
    border-top: 1px solid var(--org-line);
    box-shadow: 0 -18px 44px rgba(8, 128, 126, 0.08);
}

.org-site-footer .site-footer__inner {
    padding-top: 46px;
}

.org-footer__top {
    background: linear-gradient(135deg, #f3fbfa 0%, #ffffff 58%, #e8f7f6 100%);
    border: 1px solid var(--org-line);
    border-left: 8px solid #087d7b;
    padding: 28px 30px;
    margin-bottom: 28px;
    box-shadow: 0 18px 42px rgba(8, 128, 126, 0.08);
}

.org-footer__brand img {
    background: #ffffff;
    border: 1px solid var(--org-line);
}

.org-footer__brand strong {
    color: var(--org-blue-dark);
}

.org-footer__brand p {
    color: var(--org-muted);
}

.org-footer__donate {
    background: linear-gradient(135deg, #087d7b, #11aaa5) !important;
    color: #ffffff !important;
    border: 2px solid #087d7b;
}

.org-footer__contact {
    color: #087d7b !important;
    border: 2px solid #087d7b;
    background: #ffffff;
}

.org-footer__contact:hover {
    background: #e8f7f6;
}

.org-site-footer .site-footer__accordion {
    gap: 16px;
}

.org-site-footer .site-footer__row {
    background: #ffffff;
    border: 1px solid var(--org-line);
    box-shadow: 0 12px 26px rgba(8, 128, 126, 0.05);
}

.org-site-footer .site-footer__row:hover {
    background: #f3fbfa;
    border-color: rgba(8, 128, 126, 0.28);
}

.org-site-footer .site-footer__trigger {
    color: var(--org-ink);
}

.org-site-footer .site-footer__icon {
    color: #087d7b;
}

.org-site-footer .site-footer__label {
    color: var(--org-blue-dark);
}

.org-site-footer .site-footer__line {
    background: linear-gradient(90deg, rgba(8, 128, 126, 0.26), rgba(8, 128, 126, 0.06));
}

.org-site-footer .site-footer__panel-grid a {
    color: var(--org-muted);
}

.org-site-footer .site-footer__panel-grid a:hover {
    color: #087d7b;
}

.org-site-footer .site-footer__bottom {
    border-top-color: var(--org-line);
    margin-top: 30px;
    padding-top: 20px;
}

.org-site-footer .site-footer__copy,
.org-site-footer .site-footer__social-wrap span {
    color: var(--org-muted);
}

.org-site-footer .site-footer__social a {
    color: #087d7b;
    border-color: var(--org-line);
    background: #ffffff;
}

.org-site-footer .site-footer__social a:hover {
    color: #ffffff;
    background: #087d7b;
    border-color: #087d7b;
}

.org-donate {
    background: linear-gradient(135deg, #073f46 0%, #087d7b 60%, #11aaa5 100%);
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .org-footer__top {
        padding: 22px;
    }
}


/* Wider desktop header gutters. */
@media (min-width: 992px) {
    .org-utility__inner,
    #main-navbar .org-mainnav {
        width: min(1360px, calc(100% - 32px));
        max-width: 1360px;
        margin-right: auto;
        margin-left: auto;
    }

    #main-navbar .org-mainnav {
        padding-right: 0;
        padding-left: 0;
    }
}
