body[data-page="home"] .hero-section {
    /* padding-bottom: 3.3rem; */
}

.home-hero-media {
    width: 100%;
    overflow: hidden;
    border-radius: 0rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    /* background: rgba(61, 33, 72, 0.36); */
    box-shadow: 0 24px 48px rgba(46, 16, 61, 0.28);
}

.home-hero-video {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    background: #2f1838;
}

.section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.85rem;
    padding: 0.36rem 0.78rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 118, 110, 0.18);
    background: rgba(255, 255, 255, 0.9);
    color: #0f766e;
    box-shadow: 0 8px 18px rgba(15, 118, 110, 0.08);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.content-card {
    border-radius: 0.75rem;
    border: 1px solid rgba(15, 79, 58, 0.14);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
    padding: clamp(1.1rem, 2vw, 1.7rem);
}

body[data-page="home"] .content-wrapper {
    background: #f5f8f6;
}

.home-task-page {
    padding-top: clamp(1.1rem, 2vw, 1.8rem);
}

.home-alert-strip {
    border-bottom: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(255, 255, 255, 0.9);
}

.home-alert-strip__inner {
    display: flex;
    align-items: stretch;
    gap: 1rem;
    padding: 0.8rem 0;
}

.home-alert-strip__label {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    flex: 0 0 auto;
    padding: 0.5rem 0.8rem;
    border-radius: 999px;
    background: rgba(237, 182, 1, 0.16);
    color: #68430a;
    font-weight: 700;
}

.home-alert-strip__items {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    flex: 1 1 auto;
    min-width: 0;
}

.home-alert-strip__item {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-width: 0;
    padding: 0.55rem 0.75rem;
    border-radius: 0.9rem;
    color: #3d2148;
    text-decoration: none;
    background: rgba(124, 58, 237, 0.05);
}

.home-alert-strip__item:hover,
.home-alert-strip__item:focus-visible {
    color: #3d2148;
    background: rgba(124, 58, 237, 0.1);
}

.home-alert-strip__item strong {
    flex: 0 0 auto;
    color: #7c3aed;
    font-size: 0.86rem;
}

.home-alert-strip__item span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-live-chat {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    z-index: 1060;
    touch-action: none;
    user-select: none;
}

.home-live-chat.is-dragging {
    cursor: grabbing;
}

.home-live-chat__button {
    display: inline-flex;
    align-items: center;
    gap: 0.72rem;
    padding: 0.82rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(24, 119, 242, 0.28);
    background: linear-gradient(135deg, rgba(233, 244, 255, 0.98), rgba(214, 234, 255, 0.98));
    color: #153158;
    text-decoration: none;
    box-shadow: 0 18px 36px rgba(15, 91, 215, 0.26);
    cursor: grab;
}

.home-live-chat__button:hover,
.home-live-chat__button:focus-visible {
    color: #153158;
    background: linear-gradient(135deg, rgba(240, 247, 255, 0.98), rgba(222, 238, 255, 0.98));
    box-shadow: 0 22px 42px rgba(15, 91, 215, 0.32);
    transform: translateY(-1px);
}

.home-live-chat__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 999px;
    background: rgba(24, 119, 242, 0.12);
    font-size: 1.1rem;
}

.home-live-chat__label {
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.task-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
}

.task-card {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1rem 1.05rem;
    border-radius: 0.75rem;
    border: 1px solid rgba(15, 79, 58, 0.14);
    background: rgba(255, 255, 255, 0.96);
    color: #17392d;
    min-height: 100%;
}

.task-card:hover,
.task-card:focus-visible {
    color: #17392d;
    border-color: rgba(15, 118, 110, 0.34);
    box-shadow: 0 14px 28px rgba(15, 79, 58, 0.13);
    transform: translateY(-2px);
}

.task-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 0.65rem;
    background: rgba(15, 118, 110, 0.1);
    color: #0f766e;
    flex-shrink: 0;
}

.task-card__body {
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
    flex: 1 1 auto;
}

.task-card__title {
    font-weight: 700;
    line-height: 1.35;
}

.task-card__description {
    color: #566b63;
    font-size: 0.92rem;
    line-height: 1.5;
}

.task-card__arrow {
    color: rgba(15, 118, 110, 0.78);
    padding-top: 0.2rem;
}

.task-card--quick-link {
    align-items: center;
    gap: 0.75rem;
}

.task-card--quick-link .task-card__body {
    justify-content: center;
    min-height: 3rem;
}

.task-card--quick-link .task-card__title {
    line-height: 1.4;
}

.metric-card {
    height: 100%;
    padding: 1rem 1.15rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.metric-card__label {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #7b6b85;
}

.metric-card__value {
    font-family: var(--font-heading);
    font-size: clamp(1.7rem, 2.5vw, 2.6rem);
    line-height: 1.1;
    margin-top: 0.5rem;
}

.metric-card__hint {
    color: #6b5b76;
    font-size: 0.9rem;
    margin-top: 0.35rem;
}

.metric-card--success {
    border-color: rgba(22, 163, 74, 0.2);
}

.metric-card--warning {
    border-color: rgba(245, 158, 11, 0.24);
}

.metric-card--danger {
    border-color: rgba(220, 38, 38, 0.24);
}

.search-panel {
    padding: 1.2rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(255, 251, 234, 0.95));
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.08);
}

.news-list {
    display: grid;
    gap: 0.85rem;
}

.news-list__item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 1rem;
    border: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(255, 255, 255, 0.9);
}

.news-list__item h3 {
    font-size: 1rem;
    margin-bottom: 0.35rem;
}

.news-list__item time {
    font-size: 0.85rem;
    color: #7b6b85;
}

.stacked-list {
    display: grid;
    gap: 0.8rem;
}

.stacked-list__item {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(255, 255, 255, 0.88);
}

.procurement-feed {
    display: grid;
    gap: 0.8rem;
}

.procurement-feed__item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 1rem;
    border: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(255, 255, 255, 0.9);
}

.procurement-feed__content {
    min-width: 0;
    flex: 1 1 auto;
}

.procurement-feed__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.45rem;
    flex-wrap: wrap;
    font-size: 0.82rem;
    color: #7b6b85;
}

.procurement-feed__code {
    display: inline-flex;
    align-items: center;
    padding: 0.26rem 0.58rem;
    border-radius: 999px;
    background: rgba(124, 58, 237, 0.08);
    color: #7c3aed;
    font-weight: 600;
}

.procurement-feed__title {
    margin-bottom: 0.35rem;
    font-size: 1rem;
    line-height: 1.45;
}

.procurement-feed__summary {
    margin-bottom: 0.5rem;
    color: #6b5b76;
    font-size: 0.92rem;
    line-height: 1.55;
}

.procurement-feed__office {
    color: #7b6b85;
    font-size: 0.84rem;
}

.procurement-feed__actions {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    padding-top: 0.1rem;
}

.government-link-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
}

.government-link-grid--compact {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
}

.government-link-card {
    display: grid;
    gap: 0.9rem;
    min-height: 100%;
    padding: 1rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(124, 58, 237, 0.14);
    background: rgba(255, 255, 255, 0.95);
    color: #3d2148;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.government-link-card:hover,
.government-link-card:focus-visible {
    color: #3d2148;
    border-color: rgba(124, 58, 237, 0.28);
    box-shadow: 0 16px 32px rgba(124, 58, 237, 0.14);
    transform: translateY(-2px);
}

.government-link-card__brand {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 4.5rem;
    padding: 0.55rem;
    border-radius: 1rem;
    background: linear-gradient(145deg, rgba(124, 58, 237, 0.08), rgba(255, 251, 234, 0.95));
}

.government-link-card__brand img {
    display: block;
    max-width: 100%;
    max-height: 52px;
    object-fit: contain;
}

.government-link-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 999px;
    background: rgba(124, 58, 237, 0.12);
    color: #7c3aed;
    font-size: 1.1rem;
}

.government-link-card__title {
    font-weight: 700;
    line-height: 1.45;
}

.government-link-card__action {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: #7c3aed;
    font-size: 0.92rem;
    font-weight: 600;
}

.detail-list dt {
    font-weight: 700;
    color: #5e4768;
}

.detail-list dd {
    margin-bottom: 0.8rem;
}

.timeline {
    display: grid;
    gap: 1rem;
}

.timeline__item {
    position: relative;
    display: grid;
    grid-template-columns: 1rem 1fr;
    gap: 1rem;
}

.timeline__item::before {
    content: '';
    position: absolute;
    left: 0.46rem;
    top: 1rem;
    bottom: -1rem;
    width: 2px;
    background: rgba(124, 58, 237, 0.16);
}

.timeline__item:last-child::before {
    display: none;
}

.timeline__dot {
    width: 1rem;
    height: 1rem;
    margin-top: 0.1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #7c3aed, #edb601);
    box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12);
}

.timeline__content {
    padding-bottom: 0.25rem;
}

.timeline-list {
    margin: 0;
    padding-left: 1.2rem;
    display: grid;
    gap: 0.8rem;
}

.attachment-preview {
    display: block;
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background: rgba(255, 255, 255, 0.94);
    color: inherit;
    text-decoration: none;
}

.attachment-preview img {
    display: block;
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.attachment-preview__label {
    display: block;
    padding: 0.8rem 0.9rem;
    font-size: 0.92rem;
    font-weight: 600;
}

.manual-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

.homepage-slider {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 0;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 18px 40px rgba(33, 37, 41, 0.12);
}

.homepage-slider .carousel-inner {
    border-radius: 1.4rem;
}

.homepage-slider__eyebrow {
    color: #4b3561;
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(124, 58, 237, 0.16);
}

.homepage-slider__panel {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: inherit;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.25rem;
    padding: clamp(1.1rem, 2vw, 1.75rem);
}

.homepage-slider__slide {
    position: relative;
    min-height: 700px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background: #f7f2ff;
}

.homepage-slider__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
}

.homepage-slider__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.42) 35%, rgba(247, 241, 255, 0.94) 100%),
        linear-gradient(90deg, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.38) 55%, rgba(255, 255, 255, 0.14) 100%);
}

.homepage-slider__topbar {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.homepage-slider__content {
    display: grid;
    gap: 1rem;
    max-width: min(100%, 40rem);
}

.homepage-slider__kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 0.42rem 0.78rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    color: #4b3561;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.homepage-slider__title {
    margin: 0;
    font-size: clamp(1.6rem, 2vw, 2.45rem);
    color: #2f2437;
    text-shadow: none;
}

.homepage-slider__subtitle {
    margin: 0;
    font-size: 1rem;
    line-height: 1.75;
    color: #4f3e5c;
}

.homepage-slider__news-link {
    border: 0;
    color: #3d2148;
    background: rgba(255, 251, 234, 0.94);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
}

.homepage-slider__controls {
    position: absolute;
    right: clamp(1rem, 2vw, 1.75rem);
    bottom: clamp(1rem, 2vw, 1.5rem);
    z-index: 2;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1rem;
    width: calc(100% - clamp(2rem, 4vw, 3.5rem));
}

.homepage-slider__indicators {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    margin-right: auto;
}

.homepage-slider__indicators [data-bs-target] {
    width: 0.8rem;
    height: 0.8rem;
    margin: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(79, 62, 92, 0.24);
    opacity: 1;
}

.homepage-slider__indicators .active {
    width: 2rem;
    background: linear-gradient(90deg, #fffbea, #edb601);
}

.homepage-slider__control-btn {
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid rgba(124, 58, 237, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    color: #2f2437;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(10px);
}

.homepage-slider__control-btn:hover,
.homepage-slider__control-btn:focus-visible {
    border-color: rgba(124, 58, 237, 0.28);
    background: rgba(255, 244, 196, 0.92);
    color: #2f2437;
}

@media (max-width: 767.98px) {
    .home-alert-strip__inner {
        flex-direction: column;
    }

    .home-alert-strip__items {
        grid-template-columns: 1fr;
    }

    .home-live-chat {
        right: 1rem;
        bottom: 1rem;
    }

    .home-live-chat__button {
        padding: 0.78rem 0.92rem;
    }

    .home-live-chat__label {
        font-size: 0.92rem;
    }

    .procurement-feed__item {
        flex-direction: column;
    }

    .procurement-feed__actions {
        width: 100%;
    }

    .procurement-feed__actions .btn {
        width: 100%;
    }

    .home-metric-grid {
        grid-template-columns: 1fr;
    }
}

.manual-card {
    height: 100%;
    padding: 1.1rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background: rgba(255, 255, 255, 0.94);
}

.manual-card__icon {
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(124, 58, 237, 0.1);
    color: #7c3aed;
    margin-bottom: 0.9rem;
}

.home-metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.home-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(22, 163, 74, 0.12);
    color: #166534;
    font-size: 0.82rem;
    font-weight: 700;
    white-space: nowrap;
}

.home-complaint-card[data-state="stale"] .home-status-badge {
    background: rgba(245, 158, 11, 0.14);
    color: #854d0e;
}

.home-complaint-card[data-state="error"] .home-status-badge {
    background: rgba(220, 38, 38, 0.12);
    color: #991b1b;
}

.home-contact-panel {
    overflow: hidden;
}

.home-contact-panel__primary {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(1rem, 2vw, 1.4rem);
    border-radius: 1.15rem;
    background:
        linear-gradient(135deg, rgba(124, 58, 237, 0.1), rgba(237, 182, 1, 0.14)),
        rgba(255, 255, 255, 0.9);
}

.badge-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.service-stat-chart {
    display: grid;
    gap: 0.7rem;
}

.service-stat-chart__bar {
    display: grid;
    gap: 0.28rem;
}

.service-stat-chart__meta {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.9rem;
}

.service-stat-chart__progress {
    height: 0.55rem;
    border-radius: 999px;
    background: rgba(124, 58, 237, 0.1);
    overflow: hidden;
}

.service-stat-chart__progress > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #7c3aed, #edb601);
}

.complaint-bridge {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(120% 120% at 0% 0%, rgba(124, 58, 237, 0.12) 0%, transparent 42%),
        radial-gradient(120% 100% at 100% 100%, rgba(255, 227, 105, 0.18) 0%, transparent 45%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(250, 247, 255, 0.94) 100%);
}

.complaint-bridge::before,
.complaint-bridge::after {
    content: '';
    position: absolute;
    pointer-events: none;
    border-radius: 999px;
    filter: blur(6px);
}

.complaint-bridge::before {
    top: -4rem;
    right: -3rem;
    width: 12rem;
    height: 12rem;
    background: radial-gradient(circle, rgba(124, 58, 237, 0.12) 0%, transparent 72%);
}

.complaint-bridge::after {
    left: -3rem;
    bottom: -5rem;
    width: 13rem;
    height: 13rem;
    background: radial-gradient(circle, rgba(237, 182, 1, 0.16) 0%, transparent 72%);
}

.complaint-bridge__shell {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 1.15rem;
}

.complaint-bridge__hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.complaint-bridge__heading {
    max-width: 48rem;
}

.complaint-bridge__lead {
    max-width: 42rem;
    color: #6b5b76;
    line-height: 1.7;
}

.complaint-bridge__eyebrow {
    color: #6d28d9;
    background: rgba(124, 58, 237, 0.08);
    border-color: rgba(124, 58, 237, 0.16);
}

.complaint-bridge__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.65rem;
    align-items: center;
}

.complaint-bridge__live-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 2.2rem;
    padding: 0.42rem 0.88rem;
    border-radius: 999px;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background: rgba(124, 58, 237, 0.1);
    color: #6d28d9;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.64);
}

.complaint-bridge__live-badge::before {
    content: '';
    width: 0.58rem;
    height: 0.58rem;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 0.22rem rgba(255, 255, 255, 0.9);
}

.complaint-bridge[data-state="live"] .complaint-bridge__live-badge {
    color: #047857;
    background: rgba(5, 150, 105, 0.12);
    border-color: rgba(5, 150, 105, 0.2);
}

.complaint-bridge[data-state="stale"] .complaint-bridge__live-badge {
    color: #b45309;
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.2);
}

.complaint-bridge[data-state="error"] .complaint-bridge__live-badge {
    color: #b91c1c;
    background: rgba(220, 38, 38, 0.12);
    border-color: rgba(220, 38, 38, 0.18);
}

.complaint-bridge[data-loading="true"] .complaint-bridge__live-badge {
    color: #6d28d9;
    background: rgba(124, 58, 237, 0.12);
    border-color: rgba(124, 58, 237, 0.2);
}

.complaint-bridge[data-loading="true"] .complaint-bridge__live-badge::before {
    animation: complaintPulse 1.25s ease-in-out infinite;
}

.complaint-bridge__refresh {
    min-width: 7.35rem;
}

.complaint-bridge[data-loading="true"] .complaint-bridge__refresh i {
    animation: complaintSpin 0.95s linear infinite;
}

.complaint-bridge__metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 0.9rem;
}

.complaint-bridge__metric {
    position: relative;
    overflow: hidden;
    border-color: rgba(124, 58, 237, 0.14);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 245, 255, 0.95) 100%);
    box-shadow: 0 18px 36px rgba(124, 58, 237, 0.08);
}

.complaint-bridge__metric::after {
    content: '';
    position: absolute;
    inset: auto -1.8rem -2.6rem auto;
    width: 6.8rem;
    height: 6.8rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(124, 58, 237, 0.12) 0%, transparent 70%);
}

.complaint-bridge__split {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.95fr);
    gap: 0.95rem;
    align-items: start;
}

.complaint-bridge__panel {
    height: 100%;
    padding: 1rem 1.05rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(255, 255, 255, 0.8);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(10px);
}

.complaint-bridge__panel-heading {
    margin-bottom: 0.85rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7b6b85;
}

.complaint-bridge__status-list .complaint-bridge__status-item {
    --status-accent: #7c3aed;
    --status-accent-soft: #a855f7;
    --status-surface: rgba(124, 58, 237, 0.08);
    --status-track: rgba(124, 58, 237, 0.14);
    --status-border: rgba(124, 58, 237, 0.16);
    --status-glow: rgba(124, 58, 237, 0.2);
    padding: 0.82rem 0.92rem;
    border-radius: 1rem;
    border: 1px solid var(--status-border);
    background: linear-gradient(180deg, var(--status-surface) 0%, rgba(255, 255, 255, 0.95) 100%);
    box-shadow: inset 0.24rem 0 0 var(--status-accent);
}

.complaint-bridge__status-list .complaint-bridge__status-item--success {
    --status-accent: #16a34a;
    --status-accent-soft: #22c55e;
    --status-surface: rgba(22, 163, 74, 0.08);
    --status-track: rgba(22, 163, 74, 0.14);
    --status-border: rgba(22, 163, 74, 0.2);
    --status-glow: rgba(22, 163, 74, 0.22);
}

.complaint-bridge__status-list .complaint-bridge__status-item--info {
    --status-accent: #0284c7;
    --status-accent-soft: #38bdf8;
    --status-surface: rgba(2, 132, 199, 0.08);
    --status-track: rgba(2, 132, 199, 0.14);
    --status-border: rgba(2, 132, 199, 0.2);
    --status-glow: rgba(2, 132, 199, 0.22);
}

.complaint-bridge__status-list .complaint-bridge__status-item--warning {
    --status-accent: #d97706;
    --status-accent-soft: #f59e0b;
    --status-surface: rgba(245, 158, 11, 0.1);
    --status-track: rgba(245, 158, 11, 0.16);
    --status-border: rgba(245, 158, 11, 0.22);
    --status-glow: rgba(245, 158, 11, 0.24);
}

.complaint-bridge__status-list .complaint-bridge__status-item--danger {
    --status-accent: #dc2626;
    --status-accent-soft: #fb7185;
    --status-surface: rgba(220, 38, 38, 0.08);
    --status-track: rgba(220, 38, 38, 0.14);
    --status-border: rgba(220, 38, 38, 0.2);
    --status-glow: rgba(220, 38, 38, 0.22);
}

.complaint-bridge__status-list .complaint-bridge__status-item--neutral {
    --status-accent: #7c3aed;
    --status-accent-soft: #a855f7;
    --status-surface: rgba(124, 58, 237, 0.08);
    --status-track: rgba(124, 58, 237, 0.14);
    --status-border: rgba(124, 58, 237, 0.16);
    --status-glow: rgba(124, 58, 237, 0.2);
}

.complaint-bridge__status-list .service-stat-chart__meta {
    align-items: baseline;
}

.complaint-bridge__status-list .service-stat-chart__meta span {
    color: #4b5563;
}

.complaint-bridge__status-list .service-stat-chart__meta strong {
    white-space: nowrap;
    color: var(--status-accent);
}

.complaint-bridge__status-list .service-stat-chart__progress {
    height: 0.62rem;
    background: var(--status-track);
}

.complaint-bridge__status-list .service-stat-chart__progress > span {
    background: linear-gradient(90deg, var(--status-accent) 0%, var(--status-accent-soft) 100%);
    box-shadow: 0 0 16px var(--status-glow);
}

.complaint-bridge__meta-list {
    display: grid;
    gap: 0.72rem;
    margin-bottom: 0.95rem;
}

.complaint-bridge__meta-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding-bottom: 0.72rem;
    border-bottom: 1px dashed rgba(124, 58, 237, 0.14);
}

.complaint-bridge__meta-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.complaint-bridge__meta-item span {
    color: #7b6b85;
    font-size: 0.88rem;
}

.complaint-bridge__meta-item strong {
    text-align: right;
    color: #3d2148;
    font-size: 0.94rem;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.complaint-bridge__notice {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: linear-gradient(90deg, rgba(124, 58, 237, 0.1) 0%, rgba(255, 227, 105, 0.24) 100%);
    color: #54325e;
    font-size: 0.92rem;
    line-height: 1.6;
}

.complaint-bridge__empty {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 1.15rem;
    border-radius: 1.15rem;
    border: 1px dashed rgba(124, 58, 237, 0.22);
    background: rgba(255, 255, 255, 0.78);
}

.complaint-bridge__empty-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.12), rgba(245, 158, 11, 0.16));
    color: #c2410c;
    flex-shrink: 0;
}

@keyframes complaintSpin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes complaintPulse {
    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.46;
        transform: scale(0.7);
    }
}

.breadcrumb-wrap {
    padding-top: 1rem;
}

.breadcrumb-wrap .breadcrumb {
    margin-bottom: 0;
    padding: 0.7rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(124, 58, 237, 0.12);
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.05);
}

@media (max-width: 767.98px) {
    .task-grid,
    .manual-grid {
        grid-template-columns: 1fr;
    }

    .complaint-bridge__hero,
    .complaint-bridge__actions,
    .complaint-bridge__empty,
    .complaint-bridge__meta-item {
        display: grid;
    }

    .complaint-bridge__hero,
    .complaint-bridge__split {
        grid-template-columns: 1fr;
    }

    .complaint-bridge__actions {
        justify-content: stretch;
    }

    .complaint-bridge__actions > * {
        width: 100%;
        justify-content: center;
    }

    .complaint-bridge__meta-item strong {
        text-align: left;
    }

    .homepage-slider__slide {
        min-height: 420px;
    }

    .homepage-slider__panel {
        padding-bottom: 5rem;
    }

    .homepage-slider__controls {
        left: 1rem;
        right: 1rem;
        bottom: 1rem;
        width: auto;
    }

    .homepage-slider__indicators {
        max-width: calc(100% - 6.5rem);
    }

    .homepage-slider__control-btn {
        width: 2.5rem;
        height: 2.5rem;
    }

    .attachment-preview img {
        height: 180px;
    }
}

body[data-page="home"] .hero-section.home-task-hero {
    padding-top: clamp(2.8rem, 5vw, 4.2rem);
    padding-bottom: clamp(1.8rem, 4vw, 3.2rem);
}

.home-task-hero__content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.5rem;
}

.home-task-hero__eyebrow {
    align-self: flex-start;
}

.home-task-hero__title {
    font-family: var(--font-heading, inherit);
    font-size: clamp(2rem, 2.4vw + 1.35rem, 3.8rem);
    line-height: 1.08;
    letter-spacing: -0.03em;
    margin: 0;
    color: var(--brand-ink, #3d2148);
}

.home-task-hero__lead {
    max-width: 40rem;
    margin: 0;
    font-size: clamp(1rem, 0.5vw + 0.92rem, 1.25rem);
    color: rgba(61, 33, 72, 0.82);
}

.home-task-hero__search {
    max-width: 40rem;
}

.home-task-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
}

.home-task-hero__actions .btn {
    border-radius: 999px;
    padding-inline: 1.1rem;
}

.home-task-hero__keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 0.9rem;
    font-size: 0.95rem;
    color: rgba(61, 33, 72, 0.7);
}

.home-task-hero__keywords span {
    font-weight: 600;
}

.home-task-hero__keywords a {
    color: var(--brand-primary, #7c3aed);
    text-decoration: none;
}

.home-task-hero__panel {
    display: grid;
    gap: 1rem;
}

.home-task-hero__panel-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.home-task-hero__mini-links {
    display: grid;
    gap: 0.75rem;
}

.home-task-hero__mini-link {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    border: 1px solid rgba(124, 58, 237, 0.12);
    background: rgba(124, 58, 237, 0.04);
    color: inherit;
    text-decoration: none;
}

.home-task-hero__mini-link strong {
    display: block;
    margin-bottom: 0.15rem;
}

.home-task-hero__mini-link small {
    display: block;
    color: rgba(61, 33, 72, 0.7);
}

.home-task-hero__mini-icon {
    width: 2.4rem;
    height: 2.4rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.8rem;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.18), rgba(237, 182, 1, 0.22));
    color: var(--brand-primary, #7c3aed);
    flex-shrink: 0;
}

.home-task-hero__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.8rem;
}

.home-task-hero__metric {
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(124, 58, 237, 0.12);
}

.home-task-hero__metric span,
.home-task-hero__metric small {
    display: block;
}

.home-task-hero__metric span {
    font-size: 0.82rem;
    color: rgba(61, 33, 72, 0.68);
}

.home-task-hero__metric strong {
    display: block;
    margin: 0.25rem 0;
    font-size: 1.55rem;
    color: var(--brand-primary, #7c3aed);
}

.home-task-hero__metric small {
    color: rgba(61, 33, 72, 0.7);
}

.home-task-hero__contact {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
}

.home-task-hero__contact a {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 500;
    text-decoration: none;
}

.home-task-hero__announcement {
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: linear-gradient(135deg, rgba(255, 251, 234, 0.94), rgba(255, 227, 105, 0.26));
    border: 1px solid rgba(237, 182, 1, 0.22);
}

.home-task-hero__announcement-label {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: rgba(133, 77, 14, 0.92);
    margin-bottom: 0.35rem;
}

.home-section + .home-section {
    margin-top: 1.75rem;
}

.task-grid--compact {
    grid-template-columns: 1fr;
}

.home-inline-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
}

.home-inline-links a {
    text-decoration: none;
    font-weight: 500;
}

.site-footer__brand {
    display: grid;
    gap: 0.15rem;
}

.site-footer__brand-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.site-footer__heading {
    margin-bottom: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.86rem;
}

.site-footer__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 0.55rem;
}

.site-footer__list a {
    text-decoration: none;
}

.site-footer__hotline {
    margin-top: 1rem;
}

@media (max-width: 991.98px) {
    .home-task-hero__metrics {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .home-task-hero__actions {
        flex-direction: column;
    }

    .home-task-hero__actions .btn {
        width: 100%;
    }

    .home-task-hero__panel-top {
        flex-direction: column;
    }

    .home-metric-grid {
        grid-template-columns: 1fr;
    }
}

/* Approved purple and soft-gold homepage/public UI refresh */
.homepage-hero-band {
    margin-top: 0;
    background: #f4efff;
}

.homepage-hero-band .container-fluid {
    max-width: none;
}

.homepage-hero-band .homepage-slider {
    border-radius: 0;
    background: #f4efff;
    box-shadow: none;
}

.homepage-hero-band .homepage-slider .carousel-inner {
    border-radius: 0;
}

.homepage-hero-band .homepage-slider__slide {
    min-height: clamp(460px, 52vw, 720px);
    background: #f4efff;
}

.homepage-hero-band .homepage-slider__overlay {
    background:
        linear-gradient(180deg, rgba(46, 16, 79, 0) 24%, rgba(46, 16, 79, 0.78) 100%),
        linear-gradient(90deg, rgba(76, 29, 111, 0.62) 0%, rgba(76, 29, 111, 0.14) 58%, rgba(76, 29, 111, 0) 100%);
}

.homepage-hero-band .homepage-slider__panel {
    justify-content: flex-end;
    padding: clamp(1.2rem, 2.8vw, 2.6rem);
}

.homepage-hero-band .homepage-slider__content {
    max-width: min(100%, 48rem);
}

.homepage-hero-band .homepage-slider__kicker {
    background: rgba(242, 201, 76, 0.96);
    color: #35124f;
}

.homepage-hero-band .homepage-slider__title {
    font-size: clamp(1.55rem, 2.2vw + 1rem, 3.4rem);
    color: #ffffff;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.28);
}

.homepage-hero-band .homepage-slider__subtitle {
    max-width: 42rem;
    color: rgba(255, 255, 255, 0.92);
}

.homepage-hero-band .homepage-slider__indicators [data-bs-target] {
    background: rgba(255, 255, 255, 0.42);
}

.homepage-hero-band .homepage-slider__indicators .active {
    background: #f2c94c;
}

.homepage-hero-band .homepage-slider__control-btn {
    border-color: rgba(255, 255, 255, 0.42);
    color: #35124f;
}

.homepage-slider__cta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.home-quick-actions {
    position: relative;
    z-index: 4;
    margin-top: clamp(-2.4rem, -3vw, -1rem);
}

.quick-actions-card {
    border-top: 4px solid #f2c94c;
}

.home-featured-section {
    margin-top: 1.6rem;
}

.featured-carousel-card {
    overflow: hidden;
    padding: 0;
    border: 1px solid rgba(124, 58, 237, 0.16);
    background:
        radial-gradient(circle at 12% 8%, rgba(242, 201, 76, 0.22), transparent 34%),
        linear-gradient(135deg, rgba(76, 29, 111, 0.96), rgba(124, 58, 237, 0.9));
    color: #ffffff;
}

.featured-slide {
    display: grid;
    grid-template-columns: minmax(18rem, 0.95fr) minmax(0, 1.05fr);
    min-height: 22rem;
}

.featured-slide__media {
    display: grid;
    place-items: center;
    min-height: 22rem;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.1);
}

.featured-slide__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-slide__icon {
    display: grid;
    place-items: center;
    width: 7rem;
    height: 7rem;
    border-radius: 2rem;
    background: rgba(242, 201, 76, 0.2);
    color: #f2c94c;
    font-size: 3rem;
}

.featured-slide__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    padding: clamp(1.4rem, 3vw, 3rem);
}

.featured-slide__body .section-eyebrow {
    width: fit-content;
    border-color: rgba(242, 201, 76, 0.45);
    background: rgba(255, 255, 255, 0.12);
    color: #fff2bd;
    box-shadow: none;
}

.featured-slide h3 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.35rem, 1.4vw + 1rem, 2.35rem);
    letter-spacing: 0;
}

.featured-slide p {
    max-width: 42rem;
    margin: 0;
    color: rgba(255, 255, 255, 0.86);
}

.featured-carousel-card__controls {
    position: absolute;
    left: clamp(1rem, 2vw, 1.75rem);
    right: clamp(1rem, 2vw, 1.75rem);
    bottom: clamp(1rem, 2vw, 1.35rem);
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.featured-carousel-card .carousel-indicators {
    display: flex;
    gap: 0.45rem;
}

.featured-carousel-card .carousel-indicators [data-bs-target] {
    width: 0.7rem;
    height: 0.7rem;
    margin: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.4);
    opacity: 1;
}

.featured-carousel-card .carousel-indicators .active {
    width: 2rem;
    background: #f2c94c;
}

.featured-carousel-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    color: #35124f;
}

.home-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.home-news-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    border: 1px solid rgba(124, 58, 237, 0.14);
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.06);
}

.home-news-card--featured {
    grid-column: span 2;
}

.home-news-card__media {
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: #f4efff;
}

.home-news-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.28s ease;
}

.home-news-card:hover .home-news-card__media img,
.home-news-card:focus-within .home-news-card__media img {
    transform: scale(1.025);
}

.home-news-card__fallback {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: #7c3aed;
    font-size: 2rem;
}

.home-news-card__body {
    display: grid;
    gap: 0.65rem;
    padding: 1rem;
}

.home-news-card__meta {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    color: #7b6b85;
    font-size: 0.82rem;
}

.home-news-card h4 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.45;
}

.home-news-card--featured h4 {
    font-size: clamp(1.15rem, 0.5vw + 1rem, 1.45rem);
}

.home-news-card p {
    margin: 0;
    color: #6b5b76;
    font-size: 0.92rem;
    line-height: 1.65;
}

.department-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.task-card--department {
    background: #fbf8ff;
}

.task-card--department .task-card__icon {
    background: #fff5cc;
    color: #7a5200;
}

body[data-page="home"] .content-wrapper {
    background:
        radial-gradient(circle at 9% 6%, rgba(242, 201, 76, 0.14), transparent 28%),
        linear-gradient(180deg, #fbf8ff 0%, #ffffff 45%, #fbf8ff 100%);
}

body[data-page="home"] .content-card {
    border-radius: 1.1rem;
    border-color: rgba(124, 58, 237, 0.13);
    box-shadow: 0 18px 40px rgba(76, 29, 111, 0.08);
}

body[data-page="home"] .section-eyebrow {
    border-color: rgba(124, 58, 237, 0.16);
    color: #7c3aed;
    box-shadow: 0 8px 18px rgba(124, 58, 237, 0.08);
}

body[data-page="home"] .task-card {
    border-color: rgba(124, 58, 237, 0.13);
    color: #35124f;
}

body[data-page="home"] .task-card__icon {
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.12), rgba(242, 201, 76, 0.2));
    color: #7c3aed;
}

body[data-page="home"] .task-card:hover,
body[data-page="home"] .task-card:focus-visible {
    border-color: rgba(124, 58, 237, 0.3);
    box-shadow: 0 16px 34px rgba(76, 29, 111, 0.13);
}

@media (max-width: 991.98px) {
    .home-news-grid,
    .department-service-grid,
    .featured-slide {
        grid-template-columns: 1fr;
    }

    .home-news-card--featured {
        grid-column: auto;
    }
}

@media (max-width: 767.98px) {
    .homepage-hero-band .homepage-slider__slide {
        min-height: 420px;
    }

    .home-quick-actions {
        margin-top: 0;
    }

    .homepage-slider__cta .btn,
    .featured-slide__body .btn {
        width: 100%;
    }

    .featured-carousel-card__controls {
        position: static;
        padding: 0 1rem 1rem;
    }
}

/* Substantial public homepage redesign */
body[data-page="home"] {
    --home-purple-950: #25043d;
    --home-purple-900: #35115a;
    --home-purple-800: #4a1776;
    --home-purple-700: #651fa1;
    --home-purple-600: #7c2dcc;
    --home-gold-500: #f2c94c;
    --home-gold-400: #ffe27a;
    --home-ink: #2f163f;
    --home-muted: #735f7d;
    --home-surface: #ffffff;
    --home-soft: #fbf7ff;
    --home-border: rgba(101, 31, 161, 0.14);
    --home-shadow: 0 22px 54px rgba(53, 17, 90, 0.12);
    --home-shadow-strong: 0 30px 74px rgba(53, 17, 90, 0.2);
}

body[data-page="home"] .content-wrapper {
    background:
        linear-gradient(180deg, #fff 0%, #fbf7ff 15%, #fff 44%, #faf5ff 100%);
}

body[data-page="home"] .content-wrapper > .container-fluid {
    padding-right: 0;
    padding-left: 0;
}

body[data-page="home"] .top-utility {
    background: var(--home-purple-950);
}

body[data-page="home"] .municipal-identity {
    border-bottom: 0;
    background: linear-gradient(180deg, #fff 0%, #fbf7ff 100%);
    box-shadow: 0 16px 34px rgba(53, 17, 90, 0.12);
}

body[data-page="home"] .municipal-brand__title {
    color: var(--home-purple-900);
}

body[data-page="home"] .municipal-brand__subtitle {
    color: var(--home-purple-700);
}

body[data-page="home"] .municipal-search {
    border-color: rgba(101, 31, 161, 0.22);
    background: #fff;
    box-shadow: 0 12px 24px rgba(53, 17, 90, 0.08);
}

body[data-page="home"] .municipal-identity__actions a {
    background: var(--home-gold-500);
    color: var(--home-purple-950);
}

body[data-page="home"] .public-navbar {
    background: linear-gradient(90deg, var(--home-purple-950) 0%, var(--home-purple-800) 58%, var(--home-purple-700) 100%);
    box-shadow: 0 14px 30px rgba(37, 4, 61, 0.24);
}

body[data-page="home"] .navbar-nav .nav-link.active,
body[data-page="home"] .navbar-nav .nav-link:hover,
body[data-page="home"] .navbar-nav .nav-link:focus {
    background: var(--home-gold-500);
    color: var(--home-purple-950);
}

body[data-page="home"] .home-redesign {
    overflow: hidden;
}

body[data-page="home"] .home-redesign__quick-band {
    position: relative;
    z-index: 5;
    margin-top: clamp(-4.8rem, -6vw, -2.1rem);
    padding-bottom: clamp(2rem, 4vw, 3.25rem);
}

body[data-page="home"] .home-redesign__featured-band {
    padding: clamp(1.5rem, 3vw, 2.75rem) 0 clamp(2.6rem, 5vw, 4.25rem);
    background:
        linear-gradient(180deg, rgba(251, 247, 255, 0) 0%, rgba(251, 247, 255, 0.92) 24%, #f7efff 100%);
}

body[data-page="home"] .home-redesign__content-band,
body[data-page="home"] .home-redesign__contact-band {
    padding: clamp(2.8rem, 5vw, 4.75rem) 0;
}

body[data-page="home"] .home-redesign__content-band--soft {
    background: linear-gradient(180deg, #fbf7ff 0%, #fff9e7 100%);
}

body[data-page="home"] .home-redesign__contact-band {
    background: linear-gradient(135deg, #3a0f5f 0%, #681ca8 100%);
}

body[data-page="home"] .home-section {
    margin: 0;
}

body[data-page="home"] .home-section + .home-section {
    margin-top: 0;
}

body[data-page="home"] .home-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
}

body[data-page="home"] .section-eyebrow {
    padding: 0.42rem 0.84rem;
    border-color: rgba(101, 31, 161, 0.18);
    background: #fff;
    color: var(--home-purple-700);
    box-shadow: 0 10px 24px rgba(101, 31, 161, 0.08);
    letter-spacing: 0.06em;
}

body[data-page="home"] .section-title {
    color: var(--home-ink);
    letter-spacing: 0;
}

body[data-page="home"] .text-muted {
    color: var(--home-muted) !important;
}

body[data-page="home"] .btn {
    border-radius: 999px;
    font-weight: 700;
}

body[data-page="home"] .btn-primary {
    color: #2a143a;
    background: linear-gradient(135deg, var(--home-gold-500) 0%, var(--home-gold-400) 100%);
    box-shadow: 0 14px 30px rgba(242, 201, 76, 0.34);
}

body[data-page="home"] .btn-primary:hover,
body[data-page="home"] .btn-primary:focus-visible {
    color: #240b38;
    box-shadow: 0 18px 38px rgba(242, 201, 76, 0.42);
}

body[data-page="home"] .btn-outline-primary {
    color: var(--home-purple-700);
    border-color: rgba(101, 31, 161, 0.28);
    background: rgba(255, 255, 255, 0.88);
}

body[data-page="home"] .btn-outline-primary:hover,
body[data-page="home"] .btn-outline-primary:focus-visible {
    color: #fff;
    background: var(--home-purple-700);
    border-color: var(--home-purple-700);
}

body[data-page="home"] .content-card {
    border: 1px solid var(--home-border);
    border-radius: 1.55rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--home-shadow);
    padding: clamp(1.2rem, 2vw, 1.8rem);
}

body[data-page="home"] .content-card--flush {
    padding: clamp(1rem, 1.6vw, 1.35rem);
}

body[data-page="home"] .content-card--accent-gold {
    border-top: 5px solid var(--home-gold-500);
}

body[data-page="home"] .content-card--accent-purple,
body[data-page="home"] .content-card--service,
body[data-page="home"] .content-card--integrity {
    border-top: 5px solid var(--home-purple-600);
}

body[data-page="home"] .content-card--online {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.18);
    background: linear-gradient(145deg, var(--home-purple-900) 0%, var(--home-purple-700) 100%);
}

body[data-page="home"] .content-card--online h4,
body[data-page="home"] .content-card--online .section-eyebrow,
body[data-page="home"] .content-card--online .text-muted {
    color: #fff !important;
}

body[data-page="home"] .home-alert-strip {
    position: relative;
    z-index: 8;
    border: 0;
    background: linear-gradient(90deg, var(--home-purple-900), var(--home-purple-700));
    color: #fff;
}

body[data-page="home"] .home-alert-strip__inner {
    padding: 0.72rem 0;
}

body[data-page="home"] .home-alert-strip__label {
    background: var(--home-gold-500);
    color: #2c123f;
}

body[data-page="home"] .home-alert-strip__item {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
}

body[data-page="home"] .home-alert-strip__item:hover,
body[data-page="home"] .home-alert-strip__item:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, 0.16);
}

body[data-page="home"] .home-alert-strip__item strong {
    color: var(--home-gold-400);
}

body[data-page="home"] .homepage-hero-band {
    background: var(--home-purple-950);
}

body[data-page="home"] .homepage-hero-band .homepage-slider {
    background: var(--home-purple-950);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
    min-height: clamp(560px, 58vw, 780px);
    align-items: stretch;
    background: var(--home-purple-950);
}

body[data-page="home"] .homepage-slider__image {
    object-fit: cover;
    object-position: center;
    filter: saturate(1.05) contrast(1.02);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__overlay {
    background:
        linear-gradient(90deg, rgba(37, 4, 61, 0.92) 0%, rgba(53, 17, 90, 0.72) 36%, rgba(53, 17, 90, 0.16) 68%, rgba(37, 4, 61, 0.46) 100%),
        linear-gradient(180deg, rgba(37, 4, 61, 0.08) 0%, rgba(37, 4, 61, 0.72) 100%);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__panel {
    min-height: inherit;
    justify-content: center;
    padding-top: clamp(3rem, 6vw, 5rem);
    padding-bottom: clamp(6.25rem, 11vw, 9rem);
}

body[data-page="home"] .homepage-slider__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
    align-items: end;
    gap: clamp(1.5rem, 3vw, 3rem);
    width: 100%;
}

body[data-page="home"] .homepage-hero-band .homepage-slider__content {
    max-width: 50rem;
    gap: 1.15rem;
}

body[data-page="home"] .homepage-hero-band .homepage-slider__kicker {
    background: var(--home-gold-500);
    color: #2d123f;
    box-shadow: 0 16px 34px rgba(242, 201, 76, 0.3);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__title {
    max-width: 14ch;
    font-size: clamp(2.05rem, 4vw + 1rem, 5rem);
    line-height: 1.04;
    letter-spacing: 0;
    color: #fff;
    text-shadow: 0 4px 24px rgba(0, 0, 0, 0.38);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__subtitle {
    max-width: 42rem;
    font-size: clamp(1.05rem, 0.55vw + 0.95rem, 1.36rem);
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.9);
}

body[data-page="home"] .homepage-slider__cta {
    margin-top: 0.35rem;
}

body[data-page="home"] .homepage-slider__cta .btn {
    min-width: 9.5rem;
    padding: 0.78rem 1.35rem;
}

body[data-page="home"] .homepage-slider__info {
    display: grid;
    gap: 0.85rem;
}

body[data-page="home"] .homepage-slider__info-item {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(14px);
}

body[data-page="home"] .homepage-slider__info-icon {
    display: inline-grid;
    place-items: center;
    width: 3.15rem;
    height: 3.15rem;
    border-radius: 1rem;
    background: rgba(242, 201, 76, 0.18);
    color: var(--home-gold-400);
    flex: 0 0 auto;
}

body[data-page="home"] .homepage-slider__info strong,
body[data-page="home"] .homepage-slider__info small {
    display: block;
}

body[data-page="home"] .homepage-slider__info small {
    color: rgba(255, 255, 255, 0.74);
}

body[data-page="home"] .homepage-slider__controls {
    left: 50%;
    right: auto;
    bottom: clamp(1.5rem, 3vw, 2.5rem);
    width: min(1140px, calc(100% - 2rem));
    transform: translateX(-50%);
}

body[data-page="home"] .homepage-slider__indicators [data-bs-target] {
    width: 0.7rem;
    height: 0.7rem;
    background: rgba(255, 255, 255, 0.42);
}

body[data-page="home"] .homepage-slider__indicators .active {
    width: 2.6rem;
    background: var(--home-gold-500);
}

body[data-page="home"] .homepage-slider__control-btn {
    width: 3rem;
    height: 3rem;
    border-color: rgba(255, 255, 255, 0.32);
    background: rgba(255, 255, 255, 0.92);
    color: var(--home-purple-900);
}

body[data-page="home"] .quick-actions-card {
    overflow: hidden;
    border: 1px solid rgba(101, 31, 161, 0.16);
    border-radius: 1.8rem;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: var(--home-shadow-strong);
}

body[data-page="home"] .quick-actions-card__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 1rem;
    padding: clamp(1.1rem, 2vw, 1.55rem) clamp(1.15rem, 2.4vw, 2rem);
    border-bottom: 1px solid rgba(101, 31, 161, 0.1);
    background: linear-gradient(90deg, #fff 0%, #fff9e6 100%);
}

body[data-page="home"] .quick-actions-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

body[data-page="home"] .task-card--quick-action {
    min-height: 11.5rem;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.8rem;
    padding: 1.25rem;
    border: 0;
    border-right: 1px solid rgba(101, 31, 161, 0.1);
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

body[data-page="home"] .task-card--quick-action:last-child {
    border-right: 0;
}

body[data-page="home"] .task-card--quick-action .task-card__icon {
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 1.05rem;
    font-size: 1.28rem;
}

body[data-page="home"] .task-card--quick-action .task-card__title {
    font-size: 1.02rem;
    color: var(--home-ink);
}

body[data-page="home"] .task-card--quick-action .task-card__description {
    color: var(--home-muted);
    font-size: 0.9rem;
}

body[data-page="home"] .task-card--quick-action .task-card__arrow {
    margin-top: auto;
    color: var(--home-purple-700);
}

body[data-page="home"] .task-card--quick-action-primary {
    background: linear-gradient(145deg, var(--home-purple-900), var(--home-purple-700));
    color: #fff;
}

body[data-page="home"] .task-card--quick-action-primary .task-card__title,
body[data-page="home"] .task-card--quick-action-primary .task-card__description,
body[data-page="home"] .task-card--quick-action-primary .task-card__arrow {
    color: #fff;
}

body[data-page="home"] .task-card--quick-action-primary .task-card__icon {
    background: var(--home-gold-500);
    color: var(--home-purple-900);
}

body[data-page="home"] .task-card--quick-action:hover,
body[data-page="home"] .task-card--quick-action:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 18px 36px rgba(53, 17, 90, 0.16);
    z-index: 2;
}

body[data-page="home"] .featured-carousel-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 2rem;
    background: linear-gradient(135deg, var(--home-purple-950) 0%, var(--home-purple-800) 58%, var(--home-purple-700) 100%);
    color: #fff;
    box-shadow: var(--home-shadow-strong);
}

body[data-page="home"] .featured-carousel-card__intro {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.25rem;
    padding: clamp(1.35rem, 2.6vw, 2.3rem) clamp(1.35rem, 3vw, 3rem) 0;
}

body[data-page="home"] .featured-carousel-card__intro .section-title,
body[data-page="home"] .featured-carousel-card__intro p {
    color: #fff;
}

body[data-page="home"] .featured-carousel-card__intro .section-eyebrow,
body[data-page="home"] .featured-slide__body .section-eyebrow {
    border-color: rgba(242, 201, 76, 0.42);
    background: rgba(255, 255, 255, 0.12);
    color: #fff3bf;
    box-shadow: none;
}

body[data-page="home"] .featured-slide {
    grid-template-columns: minmax(20rem, 0.92fr) minmax(0, 1.08fr);
    min-height: clamp(430px, 42vw, 560px);
}

body[data-page="home"] .featured-slide__media {
    min-height: inherit;
    margin: clamp(1.35rem, 2.4vw, 2.3rem) 0 clamp(1.35rem, 2.4vw, 2.3rem) clamp(1.35rem, 3vw, 3rem);
    border-radius: 1.45rem;
    background: rgba(255, 255, 255, 0.11);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
}

body[data-page="home"] .featured-slide__body {
    padding: clamp(1.5rem, 3vw, 3rem) clamp(1.35rem, 3vw, 3rem) clamp(4.6rem, 6vw, 6rem);
}

body[data-page="home"] .featured-slide h3 {
    max-width: 15ch;
    font-size: clamp(1.7rem, 2.6vw + 1rem, 4rem);
    line-height: 1.08;
    letter-spacing: 0;
}

body[data-page="home"] .featured-slide p {
    font-size: clamp(1rem, 0.4vw + 0.92rem, 1.22rem);
}

body[data-page="home"] .featured-slide__icon {
    width: 8rem;
    height: 8rem;
    border-radius: 1.75rem;
}

body[data-page="home"] .featured-carousel-card__controls {
    left: auto;
    right: clamp(1.35rem, 3vw, 3rem);
    bottom: clamp(1.35rem, 2.5vw, 2.2rem);
    width: min(28rem, calc(100% - 2.7rem));
}

body[data-page="home"] .home-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.9fr) minmax(20rem, 0.85fr);
    gap: 1.25rem;
}

body[data-page="home"] .home-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="home"] .home-news-card {
    border-radius: 1.35rem;
    border-color: rgba(101, 31, 161, 0.12);
    box-shadow: 0 16px 34px rgba(53, 17, 90, 0.08);
}

body[data-page="home"] .home-news-card--featured {
    grid-row: span 2;
    grid-column: auto;
}

body[data-page="home"] .home-news-card--featured .home-news-card__media {
    aspect-ratio: 4 / 3;
}

body[data-page="home"] .home-news-card__body {
    padding: 1.15rem;
}

body[data-page="home"] .home-news-card h4 a {
    color: var(--home-ink);
}

body[data-page="home"] .home-important-links {
    background: linear-gradient(180deg, #fff 0%, #fff9e7 100%);
}

body[data-page="home"] .home-important-links__grid,
body[data-page="home"] .home-civic-links,
body[data-page="home"] .home-eservice-list {
    display: grid;
    gap: 0.85rem;
}

body[data-page="home"] .task-card--important-link,
body[data-page="home"] .home-civic-links .task-card,
body[data-page="home"] .home-eservice-list .task-card {
    border-radius: 1.1rem;
    box-shadow: none;
}

body[data-page="home"] .home-document-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.95fr);
    gap: 1.25rem;
}

body[data-page="home"] .stacked-list__item,
body[data-page="home"] .procurement-feed__item {
    border-radius: 1.05rem;
    border-color: rgba(101, 31, 161, 0.12);
    background: rgba(255, 255, 255, 0.94);
}

body[data-page="home"] .procurement-feed__code {
    background: rgba(242, 201, 76, 0.18);
    color: #694300;
}

body[data-page="home"] .home-services-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(20rem, 0.85fr);
    grid-template-areas:
        "departments departments"
        "manuals online";
    gap: 1.25rem;
}

body[data-page="home"] .home-services-layout__departments {
    grid-area: departments;
}

body[data-page="home"] .home-services-layout__manuals {
    grid-area: manuals;
}

body[data-page="home"] .home-services-layout__online {
    grid-area: online;
}

body[data-page="home"] .department-service-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-page="home"] .task-card--department {
    min-height: 10rem;
    border-radius: 1.25rem;
    background: linear-gradient(145deg, #fff 0%, #fbf7ff 100%);
}

body[data-page="home"] .manual-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="home"] .manual-card {
    border-radius: 1.2rem;
    border-color: rgba(101, 31, 161, 0.12);
    background: #fff;
    box-shadow: 0 12px 26px rgba(53, 17, 90, 0.06);
}

body[data-page="home"] .content-card--online .task-card {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.1);
}

body[data-page="home"] .content-card--online .task-card__title,
body[data-page="home"] .content-card--online .task-card__description,
body[data-page="home"] .content-card--online .task-card__arrow {
    color: #fff;
}

body[data-page="home"] .content-card--online .task-card__icon {
    background: rgba(242, 201, 76, 0.18);
    color: var(--home-gold-400);
}

body[data-page="home"] .home-civic-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(20rem, 1fr) minmax(0, 0.88fr);
    gap: 1.25rem;
    align-items: stretch;
}

body[data-page="home"] .home-complaint-card {
    background: linear-gradient(180deg, #fff 0%, #f8f1ff 100%);
}

body[data-page="home"] .home-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-page="home"] .metric-card {
    border-radius: 1.15rem;
    box-shadow: none;
}

body[data-page="home"] .home-contact-panel {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 26px 60px rgba(0, 0, 0, 0.18);
}

body[data-page="home"] .home-contact-panel h3,
body[data-page="home"] .home-contact-panel h4,
body[data-page="home"] .home-contact-panel .section-title,
body[data-page="home"] .home-contact-panel .section-eyebrow {
    color: #fff;
}

body[data-page="home"] .home-contact-panel .text-muted,
body[data-page="home"] .home-contact-panel .small {
    color: rgba(255, 255, 255, 0.76) !important;
}

body[data-page="home"] .home-contact-panel__primary {
    border-radius: 1.35rem;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
}

body[data-page="home"] .home-contact-panel .stacked-list__item,
body[data-page="home"] .home-contact-panel .government-link-card {
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.92);
}

body[data-page="home"] footer {
    background: linear-gradient(180deg, var(--home-purple-950) 0%, #170225 100%);
}

body[data-page="home"] .site-footer__identity {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    margin-bottom: 1.1rem;
}

body[data-page="home"] .site-footer__logo {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
    border-radius: 999px;
    background: #fff;
    padding: 0.35rem;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.2);
}

body[data-page="home"] .site-footer__subtitle {
    color: var(--home-gold-400);
    font-weight: 700;
}

@media (max-width: 1199.98px) {
    body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body[data-page="home"] .task-card--quick-action:nth-child(3n) {
        border-right: 0;
    }

    body[data-page="home"] .task-card--quick-action:nth-child(n+4) {
        border-top: 1px solid rgba(101, 31, 161, 0.1);
    }
}

@media (max-width: 991.98px) {
    body[data-page="home"] .homepage-slider__layout,
    body[data-page="home"] .featured-slide,
    body[data-page="home"] .home-news-layout,
    body[data-page="home"] .home-document-grid,
    body[data-page="home"] .home-services-layout,
    body[data-page="home"] .home-civic-grid {
        grid-template-columns: 1fr;
    }

    body[data-page="home"] .home-services-layout {
        grid-template-areas:
            "departments"
            "manuals"
            "online";
    }

    body[data-page="home"] .homepage-slider__info {
        display: none;
    }

    body[data-page="home"] .featured-slide__media {
        margin-right: clamp(1.35rem, 3vw, 3rem);
        min-height: 280px;
    }

    body[data-page="home"] .featured-slide__body {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    body[data-page="home"] .home-redesign__quick-band {
        margin-top: 0;
        padding-top: 1rem;
    }

    body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
        min-height: 520px;
    }

    body[data-page="home"] .homepage-hero-band .homepage-slider__panel {
        padding-bottom: 5rem;
    }

    body[data-page="home"] .homepage-hero-band .homepage-slider__title {
        max-width: none;
        font-size: clamp(2rem, 10vw, 3.2rem);
    }

    body[data-page="home"] .homepage-slider__controls {
        left: 1rem;
        right: 1rem;
        width: auto;
        transform: none;
    }

    body[data-page="home"] .quick-actions-card {
        border-radius: 1.35rem;
    }

    body[data-page="home"] .quick-actions-grid,
    body[data-page="home"] .home-news-grid,
    body[data-page="home"] .department-service-grid,
    body[data-page="home"] .manual-grid,
    body[data-page="home"] .home-metric-grid {
        grid-template-columns: 1fr;
    }

    body[data-page="home"] .task-card--quick-action {
        min-height: auto;
        border-right: 0;
        border-top: 1px solid rgba(101, 31, 161, 0.1);
    }

    body[data-page="home"] .task-card--quick-action:first-child {
        border-top: 0;
    }

    body[data-page="home"] .featured-carousel-card__intro {
        display: grid;
    }

    body[data-page="home"] .featured-slide__body {
        padding-bottom: 1.35rem;
    }

    body[data-page="home"] .featured-carousel-card__controls {
        position: static;
        width: auto;
        padding: 0 1.35rem 1.35rem;
    }

    body[data-page="home"] .home-section-heading {
        align-items: flex-start;
    }
}

/* Homepage visual-system refinement: premium mockup direction */
body[data-page="home"] {
    --home-purple-980: #16001f;
    --home-purple-960: #240033;
    --home-purple-920: #33054f;
    --home-purple-860: #4e0f79;
    --home-purple-760: #6c22a8;
    --home-purple-620: #8c3bd8;
    --home-gold-560: #efb62f;
    --home-gold-500: #f5c84b;
    --home-gold-360: #ffe89a;
    --home-cream: #fffaf0;
    --home-lavender: #fbf6ff;
    --home-ink: #24102f;
    --home-muted: #6f5b79;
    --home-border: rgba(78, 15, 121, 0.14);
    --home-shadow: 0 24px 70px rgba(36, 0, 51, 0.12);
    --home-shadow-strong: 0 38px 96px rgba(36, 0, 51, 0.24);
    --home-radius-lg: 2rem;
    --home-radius-xl: 2.5rem;
}

body[data-page="home"] .content-wrapper {
    background:
        radial-gradient(circle at 12% 4%, rgba(245, 200, 75, 0.18), transparent 28%),
        radial-gradient(circle at 92% 18%, rgba(140, 59, 216, 0.14), transparent 32%),
        linear-gradient(180deg, #fff 0%, var(--home-lavender) 16%, #fff 48%, #faf3ff 100%);
}

body[data-page="home"] .top-utility {
    background: linear-gradient(90deg, var(--home-purple-980), var(--home-purple-920));
}

body[data-page="home"] .municipal-identity {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(253, 248, 255, 0.98));
    box-shadow: 0 20px 46px rgba(36, 0, 51, 0.12);
}

body[data-page="home"] .municipal-brand__logo {
    filter: drop-shadow(0 10px 18px rgba(36, 0, 51, 0.18));
}

body[data-page="home"] .municipal-search {
    min-height: 3.35rem;
    border: 1px solid rgba(78, 15, 121, 0.14);
    box-shadow: 0 18px 42px rgba(36, 0, 51, 0.1);
}

body[data-page="home"] .municipal-search .btn,
body[data-page="home"] .municipal-identity__actions a {
    box-shadow: 0 12px 28px rgba(245, 200, 75, 0.25);
}

body[data-page="home"] .public-navbar {
    background:
        linear-gradient(90deg, var(--home-purple-980) 0%, var(--home-purple-860) 52%, var(--home-purple-760) 100%);
    box-shadow: 0 18px 38px rgba(36, 0, 51, 0.24);
}

body[data-page="home"] .navbar-nav .nav-link {
    padding-top: 1.05rem;
    padding-bottom: 1.05rem;
}

body[data-page="home"] .home-alert-strip {
    background: linear-gradient(90deg, #3b0a5c, #6d22a6);
}

body[data-page="home"] .home-alert-strip__item {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    backdrop-filter: blur(10px);
}

body[data-page="home"] .homepage-hero-band {
    position: relative;
    overflow: hidden;
    background: var(--home-purple-980);
}

body[data-page="home"] .homepage-hero-band__glow {
    position: absolute;
    z-index: 2;
    pointer-events: none;
    border-radius: 999px;
    filter: blur(1px);
}

body[data-page="home"] .homepage-hero-band__glow--gold {
    right: -8rem;
    top: 8%;
    width: 26rem;
    height: 26rem;
    background: radial-gradient(circle, rgba(245, 200, 75, 0.34), transparent 68%);
}

body[data-page="home"] .homepage-hero-band__glow--purple {
    left: -10rem;
    bottom: -8rem;
    width: 28rem;
    height: 28rem;
    background: radial-gradient(circle, rgba(140, 59, 216, 0.34), transparent 68%);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
    min-height: clamp(620px, 62vw, 860px);
}

body[data-page="home"] .homepage-slider__image {
    transform: scale(1.02);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__overlay {
    background:
        linear-gradient(90deg, rgba(22, 0, 31, 0.96) 0%, rgba(51, 5, 79, 0.78) 36%, rgba(78, 15, 121, 0.24) 68%, rgba(22, 0, 31, 0.52) 100%),
        linear-gradient(180deg, rgba(22, 0, 31, 0.04) 0%, rgba(22, 0, 31, 0.82) 100%);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__title {
    max-width: 13ch;
    font-size: clamp(2.45rem, 5.2vw + 0.85rem, 6.6rem);
    line-height: 0.98;
    text-shadow: 0 5px 30px rgba(0, 0, 0, 0.42);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__subtitle {
    max-width: 46rem;
    font-size: clamp(1.08rem, 0.7vw + 0.95rem, 1.48rem);
}

body[data-page="home"] .homepage-hero-band .homepage-slider__kicker,
body[data-page="home"] .section-eyebrow {
    letter-spacing: 0.04em;
}

body[data-page="home"] .homepage-slider__cta .btn {
    min-height: 3.3rem;
    padding-inline: 1.55rem;
}

body[data-page="home"] .homepage-slider__trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.3rem;
}

body[data-page="home"] .homepage-slider__trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.25rem;
    padding: 0.38rem 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.86);
    font-size: 0.9rem;
    backdrop-filter: blur(12px);
}

body[data-page="home"] .homepage-slider__trust-row i {
    color: var(--home-gold-360);
}

body[data-page="home"] .homepage-slider__info-item {
    border-radius: 1.55rem;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.09));
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.22);
}

body[data-page="home"] .homepage-slider__control-btn,
body[data-page="home"] .featured-carousel-card__button {
    width: 3.2rem;
    height: 3.2rem;
    box-shadow: 0 16px 34px rgba(36, 0, 51, 0.2);
}

body[data-page="home"] .home-redesign__quick-band {
    margin-top: clamp(-5.8rem, -7vw, -2.8rem);
    padding-bottom: clamp(2.4rem, 5vw, 4rem);
}

body[data-page="home"] .quick-actions-card {
    border-radius: var(--home-radius-xl);
    border-color: rgba(78, 15, 121, 0.12);
    box-shadow: 0 40px 100px rgba(36, 0, 51, 0.22);
}

body[data-page="home"] .quick-actions-card__header {
    padding: clamp(1.35rem, 2.4vw, 2.1rem) clamp(1.35rem, 3vw, 2.5rem);
    background:
        radial-gradient(circle at 100% 0%, rgba(245, 200, 75, 0.26), transparent 34%),
        linear-gradient(90deg, #fff 0%, #fff8df 100%);
}

body[data-page="home"] .quick-actions-card__header .section-title {
    font-size: clamp(1.55rem, 1.55vw + 1rem, 2.85rem);
}

body[data-page="home"] .task-card--quick-action {
    min-height: 13rem;
    padding: 1.45rem;
}

body[data-page="home"] .task-card--quick-action .task-card__icon {
    width: 3.85rem;
    height: 3.85rem;
    border-radius: 1.2rem;
}

body[data-page="home"] .task-card--quick-action .task-card__title {
    font-size: 1.08rem;
}

body[data-page="home"] .home-redesign__featured-band {
    padding-top: clamp(2.2rem, 4vw, 3.7rem);
    background:
        radial-gradient(circle at 8% 18%, rgba(245, 200, 75, 0.18), transparent 26%),
        linear-gradient(180deg, #faf3ff 0%, #f3e8ff 100%);
}

body[data-page="home"] .featured-carousel-card {
    border-radius: 2.6rem;
    background:
        radial-gradient(circle at 12% 12%, rgba(245, 200, 75, 0.24), transparent 32%),
        linear-gradient(135deg, var(--home-purple-980) 0%, var(--home-purple-860) 54%, var(--home-purple-760) 100%);
    box-shadow: 0 42px 104px rgba(36, 0, 51, 0.3);
}

body[data-page="home"] .featured-carousel-card__intro {
    padding: clamp(1.7rem, 3vw, 2.8rem) clamp(1.7rem, 3.4vw, 3.4rem) 0;
}

body[data-page="home"] .featured-slide {
    min-height: clamp(480px, 45vw, 650px);
}

body[data-page="home"] .featured-slide__media {
    border-radius: 1.9rem;
    box-shadow: 0 24px 62px rgba(0, 0, 0, 0.22), inset 0 0 0 1px rgba(255, 255, 255, 0.14);
}

body[data-page="home"] .featured-slide h3 {
    max-width: 14ch;
    font-size: clamp(2rem, 3vw + 1rem, 4.7rem);
}

body[data-page="home"] .home-redesign__content-band,
body[data-page="home"] .home-redesign__contact-band {
    padding: clamp(3.4rem, 6vw, 6rem) 0;
}

body[data-page="home"] .home-section-shell {
    position: relative;
}

body[data-page="home"] .home-section-shell::before {
    content: '';
    position: absolute;
    left: -1.5rem;
    top: 0.7rem;
    width: 0.32rem;
    height: 4.6rem;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--home-gold-500), var(--home-purple-620));
}

body[data-page="home"] .home-section-heading {
    margin-bottom: clamp(1.65rem, 2.5vw, 2.4rem);
}

body[data-page="home"] .home-section-heading .section-title {
    font-size: clamp(1.85rem, 2.2vw + 1rem, 3.8rem);
}

body[data-page="home"] .content-card {
    border-radius: var(--home-radius-lg);
    box-shadow: var(--home-shadow);
}

body[data-page="home"] .content-card--flush {
    padding: clamp(1.2rem, 2.2vw, 1.8rem);
}

body[data-page="home"] .home-news-layout,
body[data-page="home"] .home-document-grid,
body[data-page="home"] .home-services-layout,
body[data-page="home"] .home-civic-grid {
    gap: clamp(1.2rem, 2vw, 1.7rem);
}

body[data-page="home"] .home-news-card {
    border-radius: 1.65rem;
    box-shadow: 0 20px 46px rgba(36, 0, 51, 0.09);
}

body[data-page="home"] .home-news-card__body {
    padding: 1.25rem;
}

body[data-page="home"] .home-news-card__meta {
    color: #7d6688;
}

body[data-page="home"] .stacked-list,
body[data-page="home"] .procurement-feed,
body[data-page="home"] .home-important-links__grid,
body[data-page="home"] .home-civic-links,
body[data-page="home"] .home-eservice-list {
    gap: 1rem;
}

body[data-page="home"] .stacked-list__item,
body[data-page="home"] .procurement-feed__item,
body[data-page="home"] .task-card--important-link,
body[data-page="home"] .home-civic-links .task-card,
body[data-page="home"] .home-eservice-list .task-card,
body[data-page="home"] .manual-card {
    border-radius: 1.35rem;
}

body[data-page="home"] .task-card {
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

body[data-page="home"] .task-card:hover,
body[data-page="home"] .task-card:focus-visible,
body[data-page="home"] .home-news-card:hover,
body[data-page="home"] .home-news-card:focus-within {
    transform: translateY(-5px);
}

body[data-page="home"] .content-card--online {
    border-radius: var(--home-radius-lg);
    background:
        radial-gradient(circle at 100% 0%, rgba(245, 200, 75, 0.22), transparent 32%),
        linear-gradient(145deg, var(--home-purple-960) 0%, var(--home-purple-760) 100%);
}

body[data-page="home"] .home-contact-panel {
    border-radius: 2.4rem;
    background:
        radial-gradient(circle at 0% 0%, rgba(245, 200, 75, 0.22), transparent 32%),
        rgba(255, 255, 255, 0.1);
}

body[data-page="home"] footer {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 200, 75, 0.18), transparent 30%),
        linear-gradient(180deg, var(--home-purple-980) 0%, #100017 100%);
}

@media (max-width: 991.98px) {
    body[data-page="home"] .homepage-hero-band .homepage-slider__title,
    body[data-page="home"] .featured-slide h3 {
        max-width: none;
    }

    body[data-page="home"] .homepage-slider__trust-row {
        display: none;
    }

    body[data-page="home"] .home-section-shell::before {
        left: 0;
        top: -0.5rem;
        width: 4.8rem;
        height: 0.26rem;
    }
}

@media (max-width: 767.98px) {
    body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
        min-height: 560px;
    }

    body[data-page="home"] .quick-actions-card,
    body[data-page="home"] .featured-carousel-card,
    body[data-page="home"] .home-contact-panel {
        border-radius: 1.55rem;
    }

    body[data-page="home"] .task-card--quick-action {
        min-height: auto;
    }
}

/* Homepage mockup gap-closure layer */
html body[data-page="home"] .top-utility {
    background: linear-gradient(90deg, #4b0d78, #651fa1) !important;
    color: rgba(255, 255, 255, 0.94) !important;
}

html body[data-page="home"] .top-utility a,
html body[data-page="home"] .top-utility button {
    color: #fff !important;
}

html body[data-page="home"] .municipal-identity__inner {
    min-height: 5.7rem;
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
}

html body[data-page="home"] .municipal-brand__logo {
    width: clamp(78px, 6.5vw, 112px);
}

html body[data-page="home"] .municipal-brand__title {
    font-size: clamp(1.55rem, 1.5vw + 1rem, 2.5rem);
}

html body[data-page="home"] .municipal-search {
    max-width: 42rem;
    margin-inline: auto;
}

html body[data-page="home"] .municipal-identity__actions a {
    min-height: 3rem;
    padding-inline: 1rem;
}

html body[data-page="home"] .public-navbar {
    border-bottom: 0;
}

html body[data-page="home"] .navbar-nav .nav-link {
    min-height: 3.5rem;
    display: inline-flex;
    align-items: center;
}

html body[data-page="home"] .home-alert-strip {
    min-height: 2.35rem;
    background: #2b0645 !important;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.08);
}

html body[data-page="home"] .home-alert-strip__inner {
    padding: 0.42rem 0;
}

html body[data-page="home"] .home-alert-strip__label {
    min-height: 1.8rem;
    padding: 0.3rem 0.72rem;
}

html body[data-page="home"] .home-alert-strip__item {
    min-height: 1.8rem;
    padding: 0.32rem 0.72rem;
    background: rgba(255, 255, 255, 0.06);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
    min-height: clamp(500px, 46vw, 620px);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__panel {
    padding-top: clamp(2.2rem, 4vw, 4rem);
    padding-bottom: clamp(5.5rem, 8vw, 7rem);
}

html body[data-page="home"] .homepage-slider__layout {
    grid-template-columns: minmax(0, 1.04fr) minmax(16rem, 22rem);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__title {
    max-width: 16ch;
    font-size: clamp(2rem, 3.2vw + 1rem, 4.8rem);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__subtitle {
    max-width: 36rem;
}

html body[data-page="home"] .homepage-slider__trust-row {
    gap: 0.5rem;
}

html body[data-page="home"] .homepage-slider__trust-row span {
    min-height: 2rem;
    padding: 0.28rem 0.68rem;
    font-size: 0.84rem;
}

html body[data-page="home"] .homepage-slider__info {
    align-self: center;
}

html body[data-page="home"] .homepage-slider__info-item {
    padding: 0.9rem 1rem;
}

html body[data-page="home"] .home-redesign__quick-band {
    margin-top: clamp(-4.2rem, -5.5vw, -2rem);
    padding-bottom: clamp(1.4rem, 2.8vw, 2.4rem);
}

html body[data-page="home"] .quick-actions-card {
    border-radius: 1.15rem;
    box-shadow: 0 22px 54px rgba(36, 0, 51, 0.2);
}

html body[data-page="home"] .quick-actions-card__header {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

html body[data-page="home"] .quick-actions-grid {
    grid-template-columns: 1.35fr repeat(5, minmax(0, 1fr));
}

html body[data-page="home"] .task-card--quick-action {
    min-height: 7.7rem;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1rem 0.9rem;
    gap: 0.65rem;
}

html body[data-page="home"] .task-card--quick-action .task-card__body {
    align-items: center;
}

html body[data-page="home"] .task-card--quick-action .task-card__description,
html body[data-page="home"] .task-card--quick-action .task-card__arrow {
    display: none;
}

html body[data-page="home"] .task-card--quick-action .task-card__icon {
    width: 3.25rem;
    height: 3.25rem;
}

html body[data-page="home"] .task-card--quick-action-primary {
    position: relative;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    padding-left: 1.45rem;
    clip-path: polygon(0 0, calc(100% - 1.6rem) 0, 100% 50%, calc(100% - 1.6rem) 100%, 0 100%);
}

html body[data-page="home"] .task-card--quick-action-primary .task-card__body {
    align-items: flex-start;
}

html body[data-page="home"] .task-card--quick-action-primary .task-card__title::after {
    content: 'คลิกเพื่อใช้งาน';
    display: block;
    margin-top: 0.1rem;
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.82rem;
    font-weight: 600;
}

html body[data-page="home"] .home-redesign__featured-band {
    padding: clamp(1.3rem, 2.4vw, 2rem) 0 clamp(2rem, 3.6vw, 3rem);
}

html body[data-page="home"] .featured-carousel-card {
    border-radius: 1rem;
}

html body[data-page="home"] .featured-carousel-card__intro {
    position: absolute;
    z-index: 5;
    left: clamp(1rem, 2.5vw, 2rem);
    top: clamp(1rem, 2vw, 1.5rem);
    width: min(28rem, calc(100% - 2rem));
    padding: 0;
}

html body[data-page="home"] .featured-carousel-card__intro p,
html body[data-page="home"] .featured-carousel-card__intro .btn {
    display: none;
}

html body[data-page="home"] .featured-carousel-card__intro .section-title {
    font-size: clamp(1.05rem, 1vw + 0.9rem, 1.7rem);
}

html body[data-page="home"] .featured-slide {
    grid-template-columns: minmax(0, 1fr);
    min-height: clamp(190px, 21vw, 270px);
}

html body[data-page="home"] .featured-slide__media {
    position: relative;
    grid-area: 1 / 1;
    margin: 0;
    min-height: inherit;
    border-radius: 0;
    opacity: 0.7;
}

html body[data-page="home"] .featured-slide__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(43, 6, 69, 0.92), rgba(43, 6, 69, 0.32));
}

html body[data-page="home"] .featured-slide__body {
    grid-area: 1 / 1;
    position: relative;
    z-index: 2;
    max-width: 42rem;
    justify-content: end;
    padding: clamp(4.6rem, 7vw, 6rem) clamp(1.4rem, 3vw, 3rem) clamp(1.35rem, 2.4vw, 2rem);
}

html body[data-page="home"] .featured-slide h3 {
    max-width: 22ch;
    font-size: clamp(1.35rem, 1.8vw + 0.95rem, 2.7rem);
}

html body[data-page="home"] .featured-slide p {
    font-size: 0.98rem;
}

html body[data-page="home"] .featured-slide__body .section-eyebrow {
    display: none;
}

html body[data-page="home"] .featured-slide__body .btn {
    width: fit-content;
}

html body[data-page="home"] .featured-carousel-card__controls {
    right: clamp(1rem, 2vw, 1.5rem);
    bottom: clamp(1rem, 2vw, 1.5rem);
}

html body[data-page="home"] .home-section-shell::before {
    left: -1rem;
    height: 3.6rem;
}

html body[data-page="home"] .home-redesign__content-band,
html body[data-page="home"] .home-redesign__contact-band {
    padding: clamp(2rem, 3.6vw, 3.6rem) 0;
}

html body[data-page="home"] .home-section-heading {
    margin-bottom: 1rem;
}

html body[data-page="home"] .home-section-heading .section-title {
    font-size: clamp(1.35rem, 1.45vw + 0.95rem, 2.45rem);
}

html body[data-page="home"] .content-card {
    border-radius: 0.9rem;
}

html body[data-page="home"] .home-news-layout {
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.68fr);
}

html body[data-page="home"] .home-news-card,
html body[data-page="home"] .stacked-list__item,
html body[data-page="home"] .procurement-feed__item,
html body[data-page="home"] .task-card--important-link,
html body[data-page="home"] .home-civic-links .task-card,
html body[data-page="home"] .home-eservice-list .task-card,
html body[data-page="home"] .manual-card {
    border-radius: 0.8rem;
}

html body[data-page="home"] .home-news-card__body {
    padding: 0.95rem;
}

html body[data-page="home"] .home-important-links {
    background:
        linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(255, 244, 204, 0.88));
}

html body[data-page="home"] .home-document-grid,
html body[data-page="home"] .home-services-layout,
html body[data-page="home"] .home-civic-grid {
    gap: 1rem;
}

html body[data-page="home"] .department-service-grid {
    gap: 0.85rem;
}

html body[data-page="home"] .content-card--online,
html body[data-page="home"] .home-contact-panel {
    border-radius: 1rem;
}

html body[data-page="home"] .home-contact-panel {
    background:
        radial-gradient(circle at 84% 0%, rgba(245, 200, 75, 0.18), transparent 28%),
        linear-gradient(135deg, rgba(49, 5, 79, 0.92), rgba(102, 31, 161, 0.86));
}

@media (max-width: 1199.98px) {
    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    html body[data-page="home"] .task-card--quick-action-primary {
        clip-path: none;
    }
}

@media (max-width: 991.98px) {
    html body[data-page="home"] .featured-carousel-card__intro {
        position: relative;
        left: auto;
        top: auto;
        width: auto;
        padding: 1rem 1rem 0;
    }

    html body[data-page="home"] .featured-slide__body {
        padding-top: 1.2rem;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .home-alert-strip__items {
        display: none;
    }

    html body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
        min-height: 500px;
    }

    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: 1fr 1fr;
    }

    html body[data-page="home"] .task-card--quick-action-primary {
        grid-column: 1 / -1;
    }

    html body[data-page="home"] .task-card--quick-action {
        border-right: 0;
    }
}

/* Focused hero, quick actions and featured-carousel redesign */
html body[data-page="home"] .homepage-hero-band {
    min-height: clamp(620px, 68vw, 900px);
    background: #17001f;
}

html body[data-page="home"] .homepage-hero-band .container-fluid,
html body[data-page="home"] .homepage-slider,
html body[data-page="home"] #homepageTopCarousel,
html body[data-page="home"] #homepageTopCarousel .carousel-inner,
html body[data-page="home"] #homepageTopCarousel .carousel-item {
    min-height: inherit;
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
    min-height: inherit;
}

html body[data-page="home"] .homepage-slider__image {
    transform: scale(1.08);
    filter: saturate(1.18) contrast(1.08) brightness(0.72);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__overlay {
    background:
        radial-gradient(circle at 78% 36%, rgba(245, 200, 75, 0.18), transparent 24%),
        linear-gradient(90deg, rgba(23, 0, 31, 0.97) 0%, rgba(50, 4, 78, 0.9) 34%, rgba(50, 4, 78, 0.38) 64%, rgba(23, 0, 31, 0.72) 100%),
        linear-gradient(180deg, rgba(23, 0, 31, 0) 0%, rgba(23, 0, 31, 0.88) 100%);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__panel {
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-top: clamp(3.2rem, 6vw, 5.2rem);
    padding-bottom: clamp(9.5rem, 13vw, 12rem);
}

html body[data-page="home"] .homepage-slider__layout {
    grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 24rem);
    align-items: center;
    gap: clamp(2rem, 5vw, 5rem);
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__content {
    max-width: 60rem;
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__kicker {
    min-height: 2.25rem;
    padding: 0.45rem 0.86rem;
    background: linear-gradient(135deg, #f5c84b, #ffe89a);
    color: #2a0b3a;
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__title {
    max-width: 13ch;
    font-size: clamp(2.8rem, 6.5vw + 0.75rem, 7.4rem);
    line-height: 0.94;
    letter-spacing: 0;
}

html body[data-page="home"] .homepage-hero-band .homepage-slider__subtitle {
    max-width: 45rem;
    font-size: clamp(1.1rem, 0.85vw + 0.92rem, 1.62rem);
}

html body[data-page="home"] .homepage-slider__cta {
    margin-top: 0.65rem;
    gap: 0.85rem;
}

html body[data-page="home"] .homepage-slider__cta .btn {
    min-height: 3.65rem;
    padding-inline: 1.7rem;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

html body[data-page="home"] .homepage-slider__trust-row {
    margin-top: 0.75rem;
}

html body[data-page="home"] .homepage-slider__trust-row span {
    background: rgba(255, 255, 255, 0.13);
}

html body[data-page="home"] .homepage-slider__info {
    padding: 1.15rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1.8rem;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.26);
    backdrop-filter: blur(18px);
}

html body[data-page="home"] .homepage-slider__info-head {
    padding: 0.35rem 0.2rem 0.6rem;
    color: rgba(255, 255, 255, 0.72);
}

html body[data-page="home"] .homepage-slider__info-head span,
html body[data-page="home"] .homepage-slider__info-head strong {
    display: block;
}

html body[data-page="home"] .homepage-slider__info-head strong {
    color: #fff;
    font-size: 1.25rem;
}

html body[data-page="home"] .homepage-slider__info-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.8rem;
    border-radius: 999px;
    background: #f5c84b;
    color: #2a0b3a;
    text-decoration: none;
    font-weight: 800;
}

html body[data-page="home"] .homepage-slider__controls {
    bottom: clamp(2.3rem, 4vw, 3.5rem);
}

html body[data-page="home"] .home-redesign__quick-band {
    margin-top: clamp(-7.2rem, -9vw, -4rem);
    padding-bottom: clamp(2rem, 4vw, 3.8rem);
}

html body[data-page="home"] .quick-actions-card {
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, 0.76);
    border-radius: 1.45rem;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 36px 90px rgba(32, 0, 48, 0.3);
}

html body[data-page="home"] .quick-actions-grid {
    overflow: hidden;
    border-radius: inherit;
    grid-template-columns: 1.45fr repeat(5, minmax(0, 1fr));
}

html body[data-page="home"] .task-card--quick-action {
    min-height: 9.6rem;
    background:
        linear-gradient(180deg, #fff 0%, #fbf6ff 100%);
}

html body[data-page="home"] .task-card--quick-action .task-card__icon {
    width: 4rem;
    height: 4rem;
    border-radius: 1.2rem;
    font-size: 1.55rem;
    background: linear-gradient(135deg, rgba(108, 34, 168, 0.1), rgba(245, 200, 75, 0.2));
}

html body[data-page="home"] .task-card--quick-action .task-card__title {
    font-size: 1.05rem;
    font-weight: 800;
}

html body[data-page="home"] .task-card--quick-action-primary {
    clip-path: polygon(0 0, calc(100% - 2rem) 0, 100% 50%, calc(100% - 2rem) 100%, 0 100%);
    background:
        radial-gradient(circle at 20% 0%, rgba(245, 200, 75, 0.24), transparent 42%),
        linear-gradient(145deg, #4b0d78, #7b24bf);
}

html body[data-page="home"] .task-card--quick-action-primary .task-card__icon {
    background: #f5c84b;
    color: #2a0b3a;
}

html body[data-page="home"] .home-redesign__featured-band {
    padding-top: clamp(2.2rem, 4vw, 4rem);
    padding-bottom: clamp(3rem, 5vw, 5rem);
}

html body[data-page="home"] .featured-carousel-card {
    overflow: hidden;
    min-height: clamp(360px, 37vw, 520px);
    border-radius: 1.65rem;
    box-shadow: 0 38px 98px rgba(32, 0, 48, 0.28);
}

html body[data-page="home"] .featured-carousel-card__intro {
    left: clamp(1.4rem, 3vw, 3rem);
    top: clamp(1.4rem, 3vw, 2.6rem);
    width: min(36rem, calc(100% - 3rem));
}

html body[data-page="home"] .featured-carousel-card__intro .section-eyebrow {
    display: inline-flex;
}

html body[data-page="home"] .featured-carousel-card__intro .section-title {
    margin-top: 0.6rem;
    font-size: clamp(1.55rem, 2.2vw + 1rem, 3.8rem);
    line-height: 1.05;
}

html body[data-page="home"] .featured-carousel-card__rail {
    position: absolute;
    z-index: 6;
    right: clamp(1.4rem, 3vw, 3rem);
    top: clamp(1.4rem, 3vw, 2.6rem);
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: rgba(255, 255, 255, 0.88);
    font-weight: 900;
    letter-spacing: 0.08em;
}

html body[data-page="home"] .featured-slide {
    min-height: clamp(360px, 37vw, 520px);
}

html body[data-page="home"] .featured-slide__media {
    opacity: 0.78;
}

html body[data-page="home"] .featured-slide__media img {
    transform: scale(1.04);
    filter: saturate(1.12) contrast(1.06);
}

html body[data-page="home"] .featured-slide__body {
    max-width: 48rem;
    padding: clamp(9.5rem, 13vw, 13rem) clamp(1.4rem, 4vw, 4rem) clamp(2rem, 4vw, 3.2rem);
}

html body[data-page="home"] .featured-slide h3 {
    max-width: 18ch;
    font-size: clamp(1.75rem, 3vw + 1rem, 4.8rem);
}

html body[data-page="home"] .featured-slide p {
    max-width: 38rem;
    font-size: clamp(1rem, 0.45vw + 0.94rem, 1.22rem);
}

html body[data-page="home"] .featured-slide__body .btn {
    min-height: 3.1rem;
    padding-inline: 1.3rem;
}

@media (max-width: 1199.98px) {
    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    html body[data-page="home"] .task-card--quick-action-primary {
        clip-path: none;
    }
}

@media (max-width: 991.98px) {
    html body[data-page="home"] .homepage-hero-band {
        min-height: auto;
    }

    html body[data-page="home"] .homepage-slider__layout {
        grid-template-columns: 1fr;
    }

    html body[data-page="home"] .homepage-slider__info {
        display: none;
    }

    html body[data-page="home"] .featured-carousel-card__intro {
        position: relative;
        left: auto;
        top: auto;
        width: auto;
        padding: 1.4rem 1.4rem 0;
    }

    html body[data-page="home"] .featured-carousel-card__rail {
        display: none;
    }

    html body[data-page="home"] .featured-slide__body {
        padding-top: 1.5rem;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .homepage-hero-band .homepage-slider__slide {
        min-height: 560px;
    }

    html body[data-page="home"] .homepage-hero-band .homepage-slider__title {
        font-size: clamp(2.25rem, 11vw, 4.2rem);
    }

    html body[data-page="home"] .home-redesign__quick-band {
        margin-top: 0;
        padding-top: 1rem;
    }

    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: 1fr 1fr;
    }

    html body[data-page="home"] .task-card--quick-action-primary {
        grid-column: 1 / -1;
    }

    html body[data-page="home"] .featured-carousel-card {
        min-height: auto;
    }
}

/* Modern public organization, executives, council and heads pages */
body[data-page^="organization"] .content-wrapper {
    background:
        radial-gradient(circle at 10% 4%, rgba(242, 201, 76, 0.16), transparent 28%),
        linear-gradient(180deg, #fbf7ff 0%, #ffffff 42%, #fbf7ff 100%);
}

.org-modern-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(3rem, 6vw, 5.8rem) 0 clamp(2.4rem, 5vw, 4.8rem);
    background:
        linear-gradient(100deg, #25043d 0%, #4a1776 56%, #7c2dcc 100%);
    color: #fff;
}

.org-modern-hero::after {
    content: '';
    position: absolute;
    right: -9rem;
    top: -9rem;
    width: 28rem;
    height: 28rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(242, 201, 76, 0.34), transparent 68%);
    pointer-events: none;
}

.org-modern-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
    align-items: end;
    gap: clamp(1.5rem, 3vw, 3rem);
}

.org-modern-hero .section-eyebrow {
    width: fit-content;
    border-color: rgba(242, 201, 76, 0.42);
    background: rgba(255, 255, 255, 0.12);
    color: #fff3bf;
    box-shadow: none;
}

.org-modern-hero h1 {
    max-width: 15ch;
    margin: 1rem 0;
    color: #fff;
    font-size: clamp(2.25rem, 4vw + 1rem, 5rem);
    line-height: 1.04;
    letter-spacing: 0;
}

.org-modern-hero p {
    max-width: 54rem;
    margin: 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: clamp(1rem, 0.55vw + 0.92rem, 1.25rem);
    line-height: 1.75;
}

.org-modern-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.45rem;
}

.org-modern-hero__summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.org-modern-hero__summary > div {
    min-height: 9.2rem;
    padding: 1.25rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1.45rem;
    background: rgba(255, 255, 255, 0.12);
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(14px);
}

.org-modern-hero__summary span,
.org-modern-hero__summary strong {
    display: block;
}

.org-modern-hero__summary span {
    color: #ffe27a;
    font-family: var(--font-heading);
    font-size: clamp(2rem, 2vw + 1rem, 3.4rem);
    line-height: 1;
    font-weight: 700;
}

.org-modern-hero__summary strong {
    margin-top: 0.55rem;
    color: rgba(255, 255, 255, 0.86);
}

.org-modern-page {
    padding: clamp(2.6rem, 5vw, 4.8rem) 0;
}

.org-section-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.65rem;
    margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
    padding: 0.7rem;
    border: 1px solid rgba(101, 31, 161, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 16px 36px rgba(53, 17, 90, 0.08);
}

.org-section-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0.55rem 1.05rem;
    border-radius: 999px;
    color: #4a1776;
    text-decoration: none;
    font-weight: 700;
}

.org-section-nav a:hover,
.org-section-nav a:focus-visible,
.org-section-nav a.active {
    color: #2a1238;
    background: linear-gradient(135deg, #f2c94c, #ffe27a);
    box-shadow: 0 12px 24px rgba(242, 201, 76, 0.28);
}

.org-modern-sections {
    display: grid;
    gap: clamp(1.5rem, 3vw, 2.5rem);
}

.org-modern-section {
    overflow: hidden;
    border: 1px solid rgba(101, 31, 161, 0.13);
    border-radius: 1.9rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 58px rgba(53, 17, 90, 0.11);
}

.org-modern-section__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem;
    padding: clamp(1.25rem, 2.5vw, 2.1rem);
    background:
        radial-gradient(circle at 96% 12%, rgba(242, 201, 76, 0.22), transparent 26%),
        linear-gradient(135deg, #fff 0%, #fbf7ff 100%);
}

.org-modern-section__header h2 {
    margin: 0.75rem 0 0.45rem;
    color: #2f163f;
    font-size: clamp(1.65rem, 2vw + 1rem, 3.2rem);
    letter-spacing: 0;
}

.org-modern-section__header p {
    max-width: 62rem;
    margin: 0;
    color: #735f7d;
    line-height: 1.7;
}

.org-modern-section__count {
    display: inline-flex;
    align-items: center;
    min-height: 2.4rem;
    padding: 0.45rem 0.9rem;
    border-radius: 999px;
    background: #fff3bf;
    color: #694300;
    font-weight: 800;
    white-space: nowrap;
}

.org-person-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    padding: clamp(1.1rem, 2vw, 1.6rem);
}

.org-person-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    min-height: 100%;
    border: 1px solid rgba(101, 31, 161, 0.12);
    border-radius: 1.35rem;
    background: #fff;
    box-shadow: 0 16px 34px rgba(53, 17, 90, 0.08);
}

.org-person-card--lead {
    grid-column: span 2;
    grid-row: span 2;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(251, 247, 255, 0.98) 100%);
}

.org-person-card__photo {
    display: grid;
    place-items: center;
    aspect-ratio: 4 / 3.6;
    background:
        linear-gradient(135deg, rgba(101, 31, 161, 0.12), rgba(242, 201, 76, 0.18));
    color: #651fa1;
    font-family: var(--font-heading);
    font-size: clamp(2rem, 3vw, 4rem);
    font-weight: 800;
}

.org-person-card--lead .org-person-card__photo {
    aspect-ratio: 16 / 10;
}

.org-person-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.org-person-card__body {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    padding: 1rem;
}

.org-person-card__role {
    color: #7c2dcc;
    font-size: 0.84rem;
    font-weight: 800;
    line-height: 1.4;
}

.org-person-card h3,
.org-person-card h4 {
    margin: 0;
    color: #2f163f;
    font-size: clamp(1rem, 0.55vw + 0.92rem, 1.34rem);
    letter-spacing: 0;
}

.org-person-card--lead h3,
.org-person-card--lead h4 {
    font-size: clamp(1.35rem, 1vw + 1rem, 2rem);
}

.org-person-card p {
    margin: 0;
    color: #735f7d;
    font-size: 0.92rem;
    line-height: 1.6;
}

.org-person-card__contact {
    margin-top: auto;
    color: #694300;
    font-size: 0.88rem;
    font-weight: 700;
}

.org-modern-empty {
    padding: 1.4rem 1.5rem;
    border: 1px dashed rgba(101, 31, 161, 0.2);
    border-radius: 1.35rem;
    background: rgba(255, 255, 255, 0.82);
    color: #735f7d;
    text-align: center;
}

@media (max-width: 1199.98px) {
    .org-person-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .org-modern-hero__grid {
        grid-template-columns: 1fr;
    }

    .org-person-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .org-person-card--lead {
        grid-column: span 2;
        grid-row: auto;
    }
}

@media (max-width: 767.98px) {
    .org-modern-hero h1 {
        max-width: none;
    }

    .org-modern-hero__summary,
    .org-person-grid {
        grid-template-columns: 1fr;
    }

    .org-section-nav {
        justify-content: stretch;
        border-radius: 1.25rem;
    }

    .org-section-nav a {
        flex: 1 1 100%;
    }

    .org-modern-section__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .org-person-card--lead {
        grid-column: auto;
    }
}

/* Focused redesign for public executives, council and heads pages */
body[data-page^="organization"] .content-wrapper {
    background:
        radial-gradient(circle at 12% 0%, rgba(242, 201, 76, 0.18), transparent 26rem),
        radial-gradient(circle at 92% 12%, rgba(101, 31, 161, 0.12), transparent 30rem),
        linear-gradient(180deg, #fbf7ff 0%, #ffffff 36%, #fbf7ff 100%);
}

body[data-page^="organization"] .breadcrumb-wrap {
    display: none;
}

.org-modern-hero {
    isolation: isolate;
    min-height: clamp(24rem, 40vw, 34rem);
    padding: clamp(1rem, 2vw, 1.5rem) 0 clamp(3.5rem, 6vw, 6rem);
    background:
        radial-gradient(circle at 18% 18%, rgba(242, 201, 76, 0.2), transparent 18rem),
        radial-gradient(circle at 88% 4%, rgba(255, 255, 255, 0.14), transparent 22rem),
        linear-gradient(112deg, rgba(30, 0, 52, 0.98) 0%, rgba(80, 16, 128, 0.96) 54%, rgba(126, 45, 204, 0.92) 100%);
}

.org-modern-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 17% 24%, rgba(242, 201, 76, 0.2), transparent 18rem),
        linear-gradient(90deg, rgba(16, 0, 30, 0.42), transparent 58%);
    pointer-events: none;
}

.org-modern-hero::after {
    right: -10rem;
    top: auto;
    bottom: -13rem;
    width: 34rem;
    height: 34rem;
    background: radial-gradient(circle, rgba(242, 201, 76, 0.34), transparent 64%);
}

.org-page-breadcrumb {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
    margin-bottom: clamp(2rem, 4vw, 4rem);
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.92rem;
    font-weight: 700;
}

.org-page-breadcrumb a,
.org-page-breadcrumb span {
    color: inherit;
    text-decoration: none;
}

.org-page-breadcrumb a:hover,
.org-page-breadcrumb a:focus-visible {
    color: #ffe27a;
}

.org-page-breadcrumb i {
    color: rgba(242, 201, 76, 0.72);
    font-size: 0.72rem;
}

.org-modern-hero__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(20rem, 30rem);
    align-items: center;
}

.org-modern-hero .section-eyebrow {
    min-height: 2.35rem;
    padding: 0.48rem 0.82rem;
    border-color: rgba(242, 201, 76, 0.46);
    background: rgba(255, 255, 255, 0.13);
    color: #ffe27a;
    backdrop-filter: blur(12px);
}

.org-modern-hero h1 {
    max-width: 12ch;
    margin: 1.05rem 0 1rem;
    font-size: clamp(2.65rem, 5vw + 0.8rem, 6.4rem);
    line-height: 0.98;
    text-wrap: balance;
}

.org-modern-hero p {
    max-width: 46rem;
    color: rgba(255, 255, 255, 0.88);
    font-size: clamp(1.05rem, 0.7vw + 0.95rem, 1.35rem);
}

.org-modern-hero__actions .btn {
    min-height: 3.25rem;
    padding: 0.75rem 1.22rem;
    border-radius: 999px;
    font-weight: 800;
}

.org-modern-hero__actions .btn-primary {
    border-color: #f2c94c;
    background: linear-gradient(135deg, #f2c94c, #ffe27a);
    color: #2a1238;
    box-shadow: 0 20px 38px rgba(242, 201, 76, 0.28);
}

.org-modern-hero__actions .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.36);
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(12px);
}

.org-modern-hero__summary {
    grid-template-columns: 1fr;
    padding: 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 2rem;
    background: rgba(255, 255, 255, 0.12);
    box-shadow: 0 28px 60px rgba(11, 0, 28, 0.28);
    backdrop-filter: blur(18px);
}

.org-modern-hero__summary > div {
    min-height: 7.2rem;
    border-radius: 1.35rem;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.08));
    box-shadow: none;
}

.org-modern-page {
    padding: clamp(2.8rem, 5vw, 5.5rem) 0 clamp(4rem, 6vw, 6.5rem);
}

.org-section-nav {
    position: sticky;
    top: 0.75rem;
    z-index: 8;
    justify-content: center;
    width: min(100%, 58rem);
    margin: 0 auto clamp(2.2rem, 4vw, 3.5rem);
    padding: 0.55rem;
    border-color: rgba(101, 31, 161, 0.12);
    border-radius: 1.45rem;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 22px 52px rgba(53, 17, 90, 0.12);
    backdrop-filter: blur(16px);
}

.org-section-nav a {
    gap: 0.48rem;
    min-height: 3.05rem;
    padding: 0.65rem 0.95rem;
    border-radius: 1rem;
    color: #4a1776;
}

.org-section-nav a i {
    color: #8c5ab7;
}

.org-section-nav a:hover,
.org-section-nav a:focus-visible,
.org-section-nav a.active {
    color: #2a1238;
    background: linear-gradient(135deg, #f2c94c, #ffe27a);
    box-shadow: 0 14px 28px rgba(242, 201, 76, 0.28);
}

.org-section-nav a:hover i,
.org-section-nav a:focus-visible i,
.org-section-nav a.active i {
    color: #2a1238;
}

.org-modern-sections {
    gap: clamp(2.4rem, 4vw, 4.5rem);
}

.org-modern-section {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.org-modern-section__header {
    align-items: center;
    padding: 0 0 clamp(1.25rem, 2vw, 1.9rem);
    border-bottom: 1px solid rgba(101, 31, 161, 0.12);
    background: transparent;
}

.org-modern-section__header h2 {
    max-width: 18ch;
    margin: 0.8rem 0 0.55rem;
    font-size: clamp(2rem, 3vw + 0.8rem, 4.2rem);
    line-height: 1.05;
    text-wrap: balance;
}

.org-modern-section__header p {
    max-width: 48rem;
    font-size: 1.04rem;
}

.org-modern-section__count {
    min-height: 3rem;
    padding: 0.6rem 1rem;
    background: linear-gradient(135deg, #fff3bf, #fff9df);
    box-shadow: 0 14px 28px rgba(242, 201, 76, 0.18);
}

.org-group-list {
    display: grid;
    gap: clamp(2rem, 3.4vw, 3.6rem);
    margin-top: clamp(1.7rem, 3vw, 2.8rem);
}

.org-group-card {
    display: grid;
    gap: clamp(1.15rem, 2vw, 1.8rem);
}

.org-group-card + .org-group-card {
    padding-top: clamp(1.8rem, 3vw, 3rem);
    border-top: 1px solid rgba(101, 31, 161, 0.1);
}

.org-group-card__header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
}

.org-group-card__icon {
    display: grid;
    place-items: center;
    width: 3.35rem;
    height: 3.35rem;
    border-radius: 1.15rem;
    background: linear-gradient(135deg, #651fa1, #8f3ce0);
    color: #ffe27a;
    box-shadow: 0 18px 34px rgba(101, 31, 161, 0.2);
}

.org-group-card__header span {
    display: block;
    color: #8b6f2d;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0;
}

.org-group-card__header h3 {
    margin: 0.16rem 0 0;
    color: #2f163f;
    font-size: clamp(1.25rem, 1.3vw + 0.95rem, 2rem);
    line-height: 1.22;
    letter-spacing: 0;
}

.org-group-card__header p {
    max-width: 54rem;
    margin: 0.4rem 0 0;
    color: #735f7d;
    line-height: 1.62;
}

.org-group-card__header strong {
    display: inline-flex;
    align-items: center;
    min-height: 2.55rem;
    padding: 0.55rem 0.9rem;
    border-radius: 999px;
    background: #fff;
    color: #4a1776;
    box-shadow: 0 12px 28px rgba(53, 17, 90, 0.08);
    white-space: nowrap;
}

.org-person-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 1.6vw, 1.35rem);
    padding: 0;
}

.org-person-card {
    position: relative;
    overflow: hidden;
    border-color: rgba(101, 31, 161, 0.1);
    border-radius: 1.65rem;
    background:
        linear-gradient(180deg, #ffffff 0%, #fdfbff 100%);
    box-shadow: 0 22px 48px rgba(53, 17, 90, 0.1);
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.org-person-card::after {
    content: '';
    position: absolute;
    inset: auto 1.1rem 0;
    height: 0.22rem;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, #651fa1, #f2c94c);
    opacity: 0;
    transition: opacity 160ms ease;
}

.org-person-card:hover {
    transform: translateY(-4px);
    border-color: rgba(101, 31, 161, 0.22);
    box-shadow: 0 28px 60px rgba(53, 17, 90, 0.16);
}

.org-person-card:hover::after {
    opacity: 1;
}

.org-person-card--lead {
    grid-column: span 2;
    grid-template-columns: minmax(15rem, 0.9fr) minmax(0, 1fr);
    grid-template-rows: 1fr;
    min-height: 24rem;
    background:
        radial-gradient(circle at 98% 0%, rgba(242, 201, 76, 0.14), transparent 16rem),
        linear-gradient(135deg, #fff 0%, #fbf7ff 100%);
}

.org-person-card__photo {
    position: relative;
    aspect-ratio: 16 / 11;
    background:
        radial-gradient(circle at 25% 14%, rgba(255, 226, 122, 0.62), transparent 42%),
        linear-gradient(135deg, rgba(101, 31, 161, 0.14), rgba(242, 201, 76, 0.2));
    color: #651fa1;
}

.org-person-card--lead .org-person-card__photo {
    aspect-ratio: auto;
    min-height: 100%;
}

.org-person-card__photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 58%, rgba(31, 4, 49, 0.12));
    pointer-events: none;
}

.org-person-card__photo span {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: clamp(5.5rem, 8vw, 7.5rem);
    height: clamp(5.5rem, 8vw, 7.5rem);
    border: 1px solid rgba(101, 31, 161, 0.16);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 16px 36px rgba(53, 17, 90, 0.12);
}

.org-person-card__body {
    gap: 0.7rem;
    padding: clamp(1.05rem, 1.6vw, 1.45rem);
}

.org-person-card--lead .org-person-card__body {
    justify-content: center;
    padding: clamp(1.4rem, 2.4vw, 2.2rem);
}

.org-person-card__meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.9rem;
}

.org-person-card__role {
    color: #7c2dcc;
    font-size: 0.86rem;
    font-weight: 900;
}

.org-person-card__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.2rem;
    height: 2.2rem;
    border-radius: 50%;
    background: #fff3bf;
    color: #694300;
    font-size: 0.78rem;
    font-weight: 900;
}

.org-person-card h3,
.org-person-card h4 {
    color: #2f163f;
    font-size: clamp(1.12rem, 0.75vw + 0.98rem, 1.55rem);
    line-height: 1.26;
    text-wrap: balance;
}

.org-person-card--lead h3,
.org-person-card--lead h4 {
    font-size: clamp(1.55rem, 1.45vw + 1rem, 2.45rem);
}

.org-person-card p {
    color: #735f7d;
    font-size: 0.96rem;
}

.org-person-card__contact {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 2.35rem;
    padding: 0.45rem 0.72rem;
    border-radius: 999px;
    background: rgba(242, 201, 76, 0.18);
    color: #694300;
}

.org-modern-empty {
    border-color: rgba(101, 31, 161, 0.22);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 16px 34px rgba(53, 17, 90, 0.06);
}

@media (max-width: 1199.98px) {
    .org-modern-hero__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .org-modern-hero h1 {
        max-width: 14ch;
    }

    .org-modern-hero__summary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .org-section-nav {
        position: relative;
        top: auto;
    }

    .org-person-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .org-person-card--lead {
        grid-column: span 2;
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .org-person-card--lead .org-person-card__photo {
        aspect-ratio: 16 / 10;
        min-height: auto;
    }
}

@media (max-width: 767.98px) {
    .org-modern-hero {
        min-height: 0;
    }

    .org-modern-hero h1 {
        max-width: none;
        font-size: clamp(2.25rem, 11vw, 3.8rem);
    }

    .org-modern-hero__summary,
    .org-person-grid {
        grid-template-columns: 1fr;
    }

    .org-modern-section__header,
    .org-group-card__header {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }

    .org-group-card__header strong {
        width: fit-content;
    }

    .org-person-card--lead {
        grid-column: auto;
    }
}

/* Public Frontend V2 accessibility and visual system layer */
body {
    --public-v2-purple: #4b1374;
    --public-v2-purple-strong: #27043e;
    --public-v2-purple-soft: #f7efff;
    --public-v2-gold: #f2c94c;
    --public-v2-gold-soft: #fff4c7;
    --public-v2-ink: #251033;
    --public-v2-muted: #6d5b79;
    --public-v2-ring: #ffe27a;
    --public-v2-radius: 1.35rem;
    --public-v2-shadow: 0 24px 58px rgba(39, 4, 62, 0.14);
}

body :where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline: 3px solid var(--public-v2-ring);
    outline-offset: 3px;
    box-shadow: 0 0 0 6px rgba(75, 19, 116, 0.34);
}

body :where(.btn, .nav-link, .dropdown-item, .top-utility a, .top-utility button, .homepage-slider__control-btn, .featured-carousel-card__button, .carousel-indicators button) {
    min-width: 2.75rem;
    min-height: 2.75rem;
}

.top-utility {
    background: linear-gradient(90deg, #2a0442 0%, #4b1374 58%, #651fa1 100%);
    color: #fff8d9;
}

.top-utility .btn-outline-light,
.top-utility a {
    border-radius: 999px;
}

.municipal-identity {
    background:
        radial-gradient(circle at 12% 0%, rgba(242, 201, 76, 0.16), transparent 18rem),
        #fff;
}

.municipal-search {
    border-width: 2px;
    border-color: rgba(75, 19, 116, 0.16);
    background: #fff;
    box-shadow: 0 14px 30px rgba(39, 4, 62, 0.08);
}

.municipal-search:focus-within {
    border-color: rgba(75, 19, 116, 0.45);
    box-shadow: 0 18px 42px rgba(39, 4, 62, 0.12), 0 0 0 5px rgba(242, 201, 76, 0.22);
}

.public-navbar {
    background:
        linear-gradient(90deg, #27043e 0%, #4b1374 52%, #651fa1 100%);
    box-shadow: 0 18px 34px rgba(39, 4, 62, 0.22);
}

.public-mega-nav {
    gap: 0.25rem;
}

.navbar-nav .nav-link {
    min-height: 3.25rem;
    border-radius: 0.95rem;
    padding-inline: 0.86rem;
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
    background: linear-gradient(135deg, var(--public-v2-gold), #ffe27a);
    color: var(--public-v2-purple-strong);
}

.navbar .mega-menu,
.navbar .dropdown-menu {
    border-radius: 0 0 1.25rem 1.25rem;
    border-color: rgba(75, 19, 116, 0.14);
    background:
        radial-gradient(circle at 100% 0%, rgba(242, 201, 76, 0.14), transparent 12rem),
        #fff;
    box-shadow: 0 28px 64px rgba(39, 4, 62, 0.18);
}

.navbar .dropdown-item {
    min-height: 2.85rem;
    border-radius: 0.9rem;
    color: var(--public-v2-ink);
}

.navbar .dropdown-item.active,
.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus-visible {
    background: var(--public-v2-gold-soft);
    color: var(--public-v2-purple-strong);
}

.homepage-slider__control-btn,
.featured-carousel-card__button {
    border: 1px solid rgba(255, 255, 255, 0.32);
}

.carousel [data-public-carousel-toggle][aria-pressed="true"] {
    background: linear-gradient(135deg, var(--public-v2-gold), #ffe27a);
    color: var(--public-v2-purple-strong);
}

html body[data-page="home"] .homepage-slider__controls,
html body[data-page="home"] .featured-carousel-card__controls {
    align-items: center;
}

html body[data-page="home"] .homepage-slider__indicators button,
html body[data-page="home"] .featured-carousel-card .carousel-indicators button {
    min-width: 2.75rem;
    min-height: 0.75rem;
}

html body[data-page="home"] .quick-actions-card,
html body[data-page="home"] .featured-carousel-card {
    border-color: rgba(75, 19, 116, 0.12);
    box-shadow: var(--public-v2-shadow);
}

html body[data-page="home"] .task-card--quick-action {
    min-height: 9rem;
}

html body[data-page="home"] .featured-slide__body .btn,
html body[data-page="home"] .homepage-slider__cta .btn {
    min-height: 3.25rem;
}

body[data-page^="organization"] .org-section-nav a {
    min-height: 3rem;
}

body[data-page^="organization"] .org-person-card {
    box-shadow: var(--public-v2-shadow);
}

@media (prefers-reduced-motion: reduce) {
    .carousel {
        transition: none !important;
    }

    .carousel-item {
        transition: none !important;
    }
}

@media (max-width: 991.98px) {
    .municipal-search {
        width: 100%;
    }

    .navbar-nav .nav-link,
    .navbar .dropdown-item {
        width: 100%;
        justify-content: flex-start;
    }
}

/* Phase 2 public visual redesign pass */
body {
    --phase2-purple-950: #1b022f;
    --phase2-purple-900: #2a0442;
    --phase2-purple-800: #410b68;
    --phase2-purple-700: #5f1896;
    --phase2-gold: #f2c94c;
    --phase2-gold-strong: #e7aa18;
    --phase2-cream: #fff9e8;
    --phase2-surface: #ffffff;
    --phase2-surface-soft: #fbf7ff;
    --phase2-ink: #24102f;
    --phase2-muted: #675474;
    --phase2-border: rgba(65, 11, 104, 0.14);
    --phase2-shadow: 0 28px 70px rgba(32, 2, 54, 0.18);
    --phase2-shadow-soft: 0 18px 46px rgba(32, 2, 54, 0.1);
}

body[data-page="home"] .content-wrapper {
    background:
        linear-gradient(180deg, #23023a 0, #23023a 34rem, #f7f1ff 34rem, #fff 63%, #f8f1ff 100%);
}

.home-redesign--v2 {
    overflow: hidden;
    background:
        linear-gradient(180deg, #23023a 0, #23023a 26rem, #f7f1ff 26rem, #fff 70%, #f8f1ff 100%);
}

.home-v2-hero-stack {
    position: relative;
    isolation: isolate;
    padding-bottom: 3.5rem;
    background:
        linear-gradient(135deg, rgba(27, 2, 47, 0.96), rgba(65, 11, 104, 0.94) 52%, rgba(95, 24, 150, 0.9));
}

.home-v2-hero-stack::before {
    content: '';
    position: absolute;
    inset: auto 0 0;
    height: 14rem;
    background: linear-gradient(180deg, transparent, rgba(247, 241, 255, 0.96));
    pointer-events: none;
    z-index: -1;
}

body[data-page="home"] .home-alert-strip {
    position: relative;
    z-index: 5;
    margin: 0;
    padding: 0.55rem 0;
    background: rgba(27, 2, 47, 0.82);
    border: 0;
    color: #fff9e8;
    backdrop-filter: blur(16px);
}

body[data-page="home"] .home-alert-strip__inner {
    max-width: min(100% - 2rem, 1180px);
    border: 1px solid rgba(242, 201, 76, 0.26);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 16px 34px rgba(12, 0, 24, 0.22);
}

html body[data-page="home"] .homepage-hero-band {
    min-height: 46rem;
    background: transparent;
}

html body[data-page="home"] #homepageTopCarousel,
html body[data-page="home"] #homepageTopCarousel .carousel-inner,
html body[data-page="home"] #homepageTopCarousel .carousel-item,
html body[data-page="home"] .homepage-slider__slide {
    min-height: 46rem;
}

html body[data-page="home"] .homepage-slider__slide {
    overflow: hidden;
}

html body[data-page="home"] .homepage-slider__image {
    transform: scale(1.06);
    filter: saturate(1.08) contrast(1.08) brightness(0.82);
}

html body[data-page="home"] .homepage-slider__overlay {
    background:
        linear-gradient(90deg, rgba(27, 2, 47, 0.92) 0%, rgba(42, 4, 66, 0.78) 43%, rgba(27, 2, 47, 0.32) 100%),
        linear-gradient(0deg, rgba(27, 2, 47, 0.78), transparent 48%);
}

html body[data-page="home"] .homepage-slider__panel {
    min-height: 46rem;
    padding-top: 4rem;
    padding-bottom: 8.5rem;
}

html body[data-page="home"] .homepage-slider__layout {
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 27rem);
    align-items: center;
    gap: 2rem;
}

.homepage-slider__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 1.2rem;
}

html body[data-page="home"] .homepage-slider__kicker,
.homepage-slider__live-badge {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0.48rem 0.9rem;
    border: 1px solid rgba(242, 201, 76, 0.38);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: #fff4c7;
    font-weight: 900;
    letter-spacing: 0;
    backdrop-filter: blur(14px);
}

.homepage-slider__live-badge i {
    margin-right: 0.45rem;
    color: #30d158;
    font-size: 0.7rem;
}

html body[data-page="home"] .homepage-slider__title {
    max-width: 11ch;
    margin-bottom: 1rem;
    color: #fff;
    font-size: 5rem;
    line-height: 0.96;
    letter-spacing: 0;
    text-shadow: 0 16px 42px rgba(0, 0, 0, 0.34);
}

html body[data-page="home"] .homepage-slider__subtitle {
    max-width: 45rem;
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.28rem;
    line-height: 1.7;
}

html body[data-page="home"] .homepage-slider__cta .btn {
    min-height: 3.55rem;
    padding-inline: 1.35rem;
    border-radius: 999px;
    font-weight: 900;
}

html body[data-page="home"] .homepage-slider__cta .btn-primary {
    border-color: var(--phase2-gold);
    background: linear-gradient(135deg, var(--phase2-gold), #ffe27a);
    color: var(--phase2-purple-950);
    box-shadow: 0 22px 44px rgba(242, 201, 76, 0.3);
}

html body[data-page="home"] .homepage-slider__cta .btn-light {
    border: 1px solid rgba(255, 255, 255, 0.38);
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    backdrop-filter: blur(14px);
}

html body[data-page="home"] .homepage-slider__trust-row {
    margin-top: 1.35rem;
    gap: 0.75rem;
}

html body[data-page="home"] .homepage-slider__trust-row span {
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.11);
    color: rgba(255, 255, 255, 0.86);
}

.homepage-slider__civic-panel {
    display: grid;
    gap: 1rem;
}

html body[data-page="home"] .homepage-slider__info {
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 1.65rem;
    background: rgba(255, 255, 255, 0.14);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(18px);
}

.homepage-slider__mini-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.homepage-slider__mini-stats > div {
    min-height: 6.5rem;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 1.35rem;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(14px);
}

.homepage-slider__mini-stats strong,
.homepage-slider__mini-stats span {
    display: block;
}

.homepage-slider__mini-stats strong {
    color: #ffe27a;
    font-size: 1.85rem;
    line-height: 1;
}

.homepage-slider__mini-stats span {
    margin-top: 0.45rem;
    color: rgba(255, 255, 255, 0.82);
    font-weight: 700;
}

html body[data-page="home"] .homepage-slider__controls {
    bottom: 8.4rem;
    max-width: min(100% - 2rem, 1180px);
}

.home-v2-quick-band {
    position: relative;
    z-index: 9;
    margin-top: -7.25rem;
}

html body[data-page="home"] .quick-actions-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(8.5rem, 0.28fr) minmax(0, 1fr);
    gap: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 1.35rem;
    background: #fff;
    box-shadow: 0 34px 82px rgba(35, 2, 58, 0.26);
}

.quick-actions-card__rail {
    display: grid;
    place-items: center;
    gap: 0.5rem;
    padding: 1rem;
    background:
        linear-gradient(145deg, var(--phase2-purple-900), var(--phase2-purple-700));
    color: #ffe27a;
    text-align: center;
}

.quick-actions-card__rail span {
    display: grid;
    place-items: center;
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.12);
    font-size: 1.45rem;
}

.quick-actions-card__rail strong {
    color: #fff;
    font-size: 1.18rem;
    line-height: 1.3;
}

html body[data-page="home"] .quick-actions-card__header {
    grid-column: 2;
    padding: 1.35rem 1.35rem 0;
}

html body[data-page="home"] .quick-actions-grid {
    grid-column: 2;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    padding: 1rem 1.35rem 1.35rem;
}

html body[data-page="home"] .task-card--quick-action {
    min-height: 8.5rem;
    border: 1px solid rgba(65, 11, 104, 0.1);
    border-radius: 1.15rem;
    background:
        linear-gradient(180deg, #fff 0%, #fbf7ff 100%);
    box-shadow: 0 12px 28px rgba(35, 2, 58, 0.08);
}

html body[data-page="home"] .task-card--quick-action-primary {
    background:
        linear-gradient(145deg, var(--phase2-purple-800), var(--phase2-purple-700));
    color: #fff;
}

.home-v2-featured-band {
    position: relative;
    padding: 4rem 0 4.25rem;
    background:
        linear-gradient(180deg, #f7f1ff 0%, #fff 100%);
}

.home-v2-featured-band .home-featured-section {
    max-width: min(100% - 2rem, 1240px);
    margin: 0 auto;
}

html body[data-page="home"] .featured-carousel-card {
    position: relative;
    overflow: hidden;
    min-height: 34rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1.75rem;
    background:
        linear-gradient(135deg, var(--phase2-purple-950), var(--phase2-purple-800) 58%, #7b2dc7);
    color: #fff;
    box-shadow: 0 34px 86px rgba(35, 2, 58, 0.24);
}

.featured-carousel-card__backdrop {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(242, 201, 76, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 45%);
    pointer-events: none;
}

html body[data-page="home"] .featured-carousel-card__intro {
    position: relative;
    z-index: 1;
    max-width: none;
    padding: 2rem 2.25rem 0;
}

html body[data-page="home"] .featured-carousel-card__intro .section-title {
    max-width: 18ch;
    color: #fff;
    font-size: 3rem;
    line-height: 1.05;
    letter-spacing: 0;
}

html body[data-page="home"] .featured-carousel-card__intro p {
    color: rgba(255, 255, 255, 0.78);
}

html body[data-page="home"] .featured-carousel-card__rail {
    top: 2rem;
    right: 2.25rem;
    color: #ffe27a;
}

html body[data-page="home"] .featured-slide {
    grid-template-columns: minmax(0, 1.08fr) minmax(24rem, 0.92fr);
    gap: 2rem;
    min-height: 24rem;
    padding: 1.4rem 2.25rem 2rem;
}

html body[data-page="home"] .featured-slide__media {
    min-height: 20rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 1.45rem;
    box-shadow: 0 26px 56px rgba(0, 0, 0, 0.22);
}

html body[data-page="home"] .featured-slide__body {
    align-self: center;
}

html body[data-page="home"] .featured-slide__body h3 {
    color: #fff;
    font-size: 2.45rem;
    line-height: 1.08;
    letter-spacing: 0;
}

html body[data-page="home"] .featured-slide__body p,
.featured-slide__hint {
    color: rgba(255, 255, 255, 0.78);
}

.featured-slide__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
}

html body[data-page="home"] .featured-carousel-card__controls {
    position: relative;
    z-index: 1;
    padding: 0 2.25rem 2rem;
}

.home-v2-portal-band,
.home-v2-document-band,
.home-v2-services-band,
.home-v2-civic-band {
    padding-block: 4.2rem;
}

.home-v2-document-band,
.home-v2-civic-band {
    background:
        linear-gradient(180deg, #fbf7ff 0%, #fff 100%);
}

html body[data-page="home"] .home-section-heading {
    align-items: end;
    margin-bottom: 1.6rem;
}

html body[data-page="home"] .section-title {
    color: var(--phase2-ink);
    font-size: 2.45rem;
    line-height: 1.08;
    letter-spacing: 0;
}

html body[data-page="home"] .content-card {
    border: 1px solid var(--phase2-border);
    border-radius: 1.35rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--phase2-shadow-soft);
}

html body[data-page="home"] .home-news-layout,
html body[data-page="home"] .home-document-grid,
html body[data-page="home"] .home-services-layout,
html body[data-page="home"] .home-civic-grid {
    gap: 1rem;
}

html body[data-page="home"] .home-news-card,
html body[data-page="home"] .manual-card,
html body[data-page="home"] .procurement-feed__item,
html body[data-page="home"] .stacked-list__item {
    border-radius: 1rem;
}

html body[data-page="home"] .home-contact-panel {
    overflow: hidden;
    border: 0;
    border-radius: 1.65rem;
    background:
        linear-gradient(135deg, #fff 0%, #fff8df 42%, #f7efff 100%);
    box-shadow: 0 30px 74px rgba(35, 2, 58, 0.16);
}

html body[data-page="home"] .home-contact-panel__primary {
    border-radius: 1.35rem;
    background:
        linear-gradient(145deg, var(--phase2-purple-900), var(--phase2-purple-700));
    color: #fff;
}

html body[data-page="home"] .home-contact-panel__primary .section-title,
html body[data-page="home"] .home-contact-panel__primary .section-eyebrow {
    color: #fff;
}

.site-footer--v2 {
    position: relative;
    background:
        linear-gradient(135deg, #1b022f 0%, #3b075f 55%, #5f1896 100%);
    color: rgba(255, 255, 255, 0.86);
}

.site-footer--v2::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(242, 201, 76, 0.16), transparent 38%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 48%);
    pointer-events: none;
}

.site-footer--v2 > .container-fluid {
    position: relative;
}

.site-footer--v2 a {
    color: #fff4c7;
}

body[data-page^="organization"] .org-modern-page {
    background:
        linear-gradient(180deg, #fbf7ff 0%, #fff 45%, #fbf7ff 100%);
}

.org-page-intro {
    display: grid;
    grid-template-columns: minmax(0, 0.72fr) minmax(18rem, 0.28fr);
    gap: 2rem;
    align-items: end;
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    border: 1px solid rgba(65, 11, 104, 0.12);
    border-radius: 1.5rem;
    background: #fff;
    box-shadow: 0 18px 46px rgba(35, 2, 58, 0.09);
}

.org-page-intro h2 {
    margin: 0.65rem 0 0;
    color: var(--phase2-ink);
    font-size: 2.35rem;
    line-height: 1.08;
    letter-spacing: 0;
}

.org-page-intro p {
    margin: 0;
    color: var(--phase2-muted);
}

body[data-page^="organization"] .org-modern-hero {
    min-height: 31rem;
    background:
        linear-gradient(125deg, rgba(27, 2, 47, 0.98), rgba(65, 11, 104, 0.94) 58%, rgba(95, 24, 150, 0.9));
}

body[data-page^="organization"] .org-modern-section {
    padding: 1.5rem;
    border: 1px solid rgba(65, 11, 104, 0.1);
    border-radius: 1.65rem;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 22px 58px rgba(35, 2, 58, 0.1);
}

body[data-page^="organization"] .org-group-card {
    padding: 1rem;
    border-radius: 1.35rem;
    background: linear-gradient(180deg, #fff 0%, #fbf7ff 100%);
}

body[data-page^="organization"] .org-person-card {
    border-radius: 1.35rem;
}

@media (max-width: 1199.98px) {
    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    html body[data-page="home"] .featured-slide {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    html body[data-page="home"] .homepage-slider__layout,
    .org-page-intro {
        grid-template-columns: 1fr;
    }

    html body[data-page="home"] .homepage-slider__title {
        font-size: 3.4rem;
    }

    html body[data-page="home"] .quick-actions-card {
        grid-template-columns: 1fr;
    }

    .quick-actions-card__rail,
    html body[data-page="home"] .quick-actions-card__header,
    html body[data-page="home"] .quick-actions-grid {
        grid-column: 1;
    }

    .quick-actions-card__rail {
        grid-template-columns: auto 1fr;
        justify-items: start;
        text-align: left;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .homepage-hero-band,
    html body[data-page="home"] #homepageTopCarousel,
    html body[data-page="home"] #homepageTopCarousel .carousel-inner,
    html body[data-page="home"] #homepageTopCarousel .carousel-item,
    html body[data-page="home"] .homepage-slider__slide {
        min-height: 39rem;
    }

    html body[data-page="home"] .homepage-slider__panel {
        min-height: 39rem;
        padding-top: 2.5rem;
        padding-bottom: 8rem;
    }

    html body[data-page="home"] .homepage-slider__title {
        font-size: 2.65rem;
    }

    html body[data-page="home"] .homepage-slider__subtitle {
        font-size: 1rem;
    }

    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: 1fr;
    }

    html body[data-page="home"] .featured-carousel-card__intro,
    html body[data-page="home"] .featured-slide,
    html body[data-page="home"] .featured-carousel-card__controls {
        padding-inline: 1.1rem;
    }

    html body[data-page="home"] .featured-carousel-card__intro .section-title,
    html body[data-page="home"] .section-title,
    .org-page-intro h2 {
        font-size: 2rem;
    }

    html body[data-page="home"] .featured-slide__body h3 {
        font-size: 1.65rem;
    }

    html body[data-page="home"] .featured-carousel-card__rail {
        position: static;
        margin: 1rem 1.1rem 0;
        width: fit-content;
    }
}

/* Phase 3 section normalization */
.home-section-heading--v2,
.v2-card-header,
.v2-section-panel-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.2rem;
}

.home-section-actions,
.v2-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    align-items: center;
}

.content-card--v2 {
    display: flex;
    flex-direction: column;
    gap: 1.15rem;
    padding: clamp(1.1rem, 2vw, 1.55rem);
}

.content-card--v2 > .section-eyebrow + h3,
.v2-card-header h3,
.home-important-links h3,
.home-contact-panel__block h3 {
    margin: 0.45rem 0 0;
    color: var(--phase2-ink);
    font-size: clamp(1.2rem, 0.9vw + 1rem, 1.75rem);
    line-height: 1.18;
    letter-spacing: 0;
}

.v2-card-header p {
    margin-top: 0.35rem;
}

.v2-empty-state {
    display: grid;
    justify-items: center;
    gap: 0.45rem;
    min-height: 10rem;
    padding: 1.35rem;
    border: 1px dashed rgba(65, 11, 104, 0.2);
    border-radius: 1.15rem;
    background:
        radial-gradient(circle at 50% 0%, rgba(242, 201, 76, 0.14), transparent 10rem),
        rgba(255, 255, 255, 0.72);
    color: var(--phase2-muted);
    text-align: center;
}

.v2-empty-state span {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: rgba(95, 24, 150, 0.1);
    color: var(--phase2-purple-700);
    font-size: 1.2rem;
}

.v2-empty-state strong {
    color: var(--phase2-ink);
    font-size: 1rem;
}

.v2-empty-state p {
    max-width: 28rem;
    margin: 0;
    font-size: 0.92rem;
}

html body[data-page="home"] .home-news-card {
    border: 1px solid rgba(65, 11, 104, 0.1);
    background: #fff;
    box-shadow: 0 14px 34px rgba(35, 2, 58, 0.08);
}

html body[data-page="home"] .home-news-card__body h3,
html body[data-page="home"] .home-news-card__body h4,
.procurement-feed__title,
.manual-card h4 {
    margin: 0;
    color: var(--phase2-ink);
    font-size: clamp(1rem, 0.42vw + 0.92rem, 1.25rem);
    line-height: 1.35;
    letter-spacing: 0;
}

html body[data-page="home"] .home-news-card--featured .home-news-card__body h3 {
    font-size: clamp(1.2rem, 0.9vw + 1rem, 1.75rem);
}

.stacked-list__title,
.procurement-feed__title {
    font-weight: 800;
}

html body[data-page="home"] .stacked-list__item {
    border: 1px solid rgba(65, 11, 104, 0.08);
    background: rgba(255, 255, 255, 0.82);
}

html body[data-page="home"] .procurement-feed__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    border: 1px solid rgba(65, 11, 104, 0.08);
    background: rgba(255, 255, 255, 0.86);
}

html body[data-page="home"] .manual-card {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    border: 1px solid rgba(65, 11, 104, 0.1);
    border-radius: 1.15rem;
    background:
        linear-gradient(180deg, #fff 0%, #fbf7ff 100%);
    box-shadow: 0 14px 32px rgba(35, 2, 58, 0.08);
}

.v2-inline-actions {
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid rgba(65, 11, 104, 0.1);
}

html body[data-page="home"] .home-civic-links {
    display: grid;
    gap: 0.75rem;
}

html body[data-page="home"] .metric-card {
    border-radius: 1.15rem;
}

.home-contact-panel__grid {
    display: grid;
    grid-template-columns: minmax(18rem, 1.1fr) minmax(14rem, 0.8fr) minmax(16rem, 0.9fr);
    gap: 1.15rem;
    align-items: stretch;
}

.home-contact-panel__block {
    padding: clamp(1rem, 1.8vw, 1.35rem);
    border: 1px solid rgba(65, 11, 104, 0.1);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.74);
}

body[data-page^="organization"] .org-modern-section__header {
    margin-bottom: 1.15rem;
}

body[data-page^="organization"] .org-group-card__header.v2-card-header {
    padding-bottom: 0.85rem;
    border-bottom: 1px solid rgba(65, 11, 104, 0.1);
}

body[data-page^="organization"] .org-person-card__body {
    gap: 0.8rem;
}

body[data-page^="organization"] .org-person-card__meta {
    align-items: center;
}

@media (max-width: 991.98px) {
    .home-section-heading--v2,
    .v2-card-header,
    .v2-section-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-contact-panel__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .procurement-feed__item {
        grid-template-columns: 1fr;
    }

    .home-section-actions .btn {
        width: 100%;
    }
}

/* Approved mockup fidelity pass: compact municipal dashboard */
body[data-page="home"] {
    background: #f4eefb;
}

body[data-page="home"] .top-utility {
    min-height: 1.55rem;
    padding-block: 0 !important;
    background: #4a0076;
    font-size: 0.76rem;
}

body[data-page="home"] .top-utility .container-fluid {
    max-width: 1220px;
}

body[data-page="home"] .top-utility .btn {
    min-width: 1.9rem;
    min-height: 1.45rem;
    padding: 0.08rem 0.42rem;
    font-size: 0.72rem;
}

body[data-page="home"] .municipal-identity {
    border-bottom: 0;
    box-shadow: 0 10px 24px rgba(41, 0, 64, 0.1);
}

html body[data-page="home"] .municipal-identity__inner {
    max-width: 1220px;
    min-height: 4.65rem;
    padding: 0.55rem 1rem;
    grid-template-columns: minmax(19rem, 1fr) minmax(20rem, 29rem) auto;
}

body[data-page="home"] .municipal-brand__logo {
    width: 4.5rem;
}

body[data-page="home"] .municipal-brand__eyebrow {
    margin-bottom: 0;
    font-size: 0.72rem;
}

body[data-page="home"] .municipal-brand__title {
    font-size: clamp(1.35rem, 1.2vw + 0.95rem, 1.85rem);
}

body[data-page="home"] .municipal-brand__subtitle,
body[data-page="home"] .municipal-brand__tagline {
    font-size: 0.78rem;
}

body[data-page="home"] .municipal-search {
    min-height: 2.75rem;
    padding: 0.25rem;
}

body[data-page="home"] .municipal-search .form-control {
    font-size: 0.9rem;
}

body[data-page="home"] .municipal-search .btn {
    min-height: 2.25rem;
    padding-inline: 1rem;
}

body[data-page="home"] .municipal-identity__actions a {
    min-height: 2.45rem;
    padding: 0.45rem 0.75rem;
    background: #fff4c7;
    color: #4b2b00;
}

body[data-page="home"] .public-navbar {
    background: #35104f;
    box-shadow: none;
}

body[data-page="home"] .public-navbar__inner {
    max-width: 1220px;
    min-height: 2.9rem;
}

body[data-page="home"] .navbar-nav .nav-link {
    min-height: 2.9rem;
    padding: 0.62rem 0.78rem;
    border-radius: 0;
    font-size: 0.86rem;
}

body[data-page="home"] .navbar-nav .nav-link.active,
body[data-page="home"] .navbar-nav .nav-link:hover,
body[data-page="home"] .navbar-nav .nav-link:focus {
    background: #f2c94c;
    color: #26033a;
}

body[data-page="home"] .content-wrapper,
.home-redesign--v2 {
    background:
        linear-gradient(180deg, #3a0758 0, #3a0758 18.5rem, #f4eefb 18.5rem, #f8f3ff 100%);
}

.home-v2-hero-stack {
    padding-bottom: 0;
    background: #3a0758;
}

body[data-page="home"] .home-alert-strip {
    padding: 0.42rem 0;
    background: #35104f;
}

body[data-page="home"] .home-alert-strip__inner {
    max-width: 1220px;
    min-height: 2.25rem;
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.1);
}

html body[data-page="home"] .homepage-hero-band,
html body[data-page="home"] #homepageTopCarousel,
html body[data-page="home"] #homepageTopCarousel .carousel-inner,
html body[data-page="home"] #homepageTopCarousel .carousel-item,
html body[data-page="home"] .homepage-slider__slide {
    min-height: clamp(19rem, 30vw, 25.5rem);
}

html body[data-page="home"] .homepage-slider__panel {
    max-width: 1220px;
    min-height: clamp(19rem, 30vw, 25.5rem);
    padding-top: 2rem;
    padding-bottom: 5.25rem;
}

html body[data-page="home"] .homepage-slider__layout {
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 22rem);
    gap: 1.25rem;
}

html body[data-page="home"] .homepage-slider__image {
    transform: scale(1.02);
    filter: saturate(1.12) contrast(1.08) brightness(0.78);
}

html body[data-page="home"] .homepage-slider__overlay {
    background:
        radial-gradient(circle at 80% 20%, rgba(242, 201, 76, 0.14), transparent 20rem),
        linear-gradient(90deg, rgba(45, 0, 70, 0.92) 0%, rgba(45, 0, 70, 0.74) 48%, rgba(45, 0, 70, 0.3) 100%);
}

.homepage-slider__badges {
    margin-bottom: 0.65rem;
}

html body[data-page="home"] .homepage-slider__kicker,
.homepage-slider__live-badge {
    min-height: 1.95rem;
    padding: 0.28rem 0.65rem;
    font-size: 0.78rem;
}

html body[data-page="home"] .homepage-slider__title {
    max-width: 15ch;
    margin-bottom: 0.65rem;
    font-size: clamp(2.1rem, 3.7vw, 4.05rem);
    line-height: 1.02;
}

html body[data-page="home"] .homepage-slider__subtitle {
    max-width: 36rem;
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.58;
}

html body[data-page="home"] .homepage-slider__cta {
    margin-top: 1rem;
}

html body[data-page="home"] .homepage-slider__cta .btn {
    min-height: 2.75rem;
    padding: 0.52rem 1rem;
    font-size: 0.92rem;
}

html body[data-page="home"] .homepage-slider__trust-row {
    display: none;
}

html body[data-page="home"] .homepage-slider__info {
    padding: 1rem;
    border-radius: 1.15rem;
}

html body[data-page="home"] .homepage-slider__info-head strong {
    font-size: 1.15rem;
}

html body[data-page="home"] .homepage-slider__info-item {
    min-height: 3.25rem;
}

.homepage-slider__mini-stats > div {
    min-height: 4.7rem;
    padding: 0.78rem;
    border-radius: 1rem;
}

.homepage-slider__mini-stats strong {
    font-size: 1.35rem;
}

.homepage-slider__mini-stats span {
    font-size: 0.78rem;
}

html body[data-page="home"] .homepage-slider__controls {
    bottom: 1.25rem;
    max-width: 1220px;
}

.home-v2-quick-band {
    margin-top: -3.55rem;
}

html body[data-page="home"] .quick-actions-card {
    max-width: 1060px;
    margin-inline: auto;
    grid-template-columns: 9.25rem minmax(0, 1fr);
    border-radius: 0.9rem;
    box-shadow: 0 18px 48px rgba(47, 0, 72, 0.22);
}

.quick-actions-card__rail {
    min-height: 6.35rem;
    padding: 0.75rem;
    border-radius: 0;
}

.quick-actions-card__rail span {
    width: 2.7rem;
    height: 2.7rem;
    border-radius: 0.75rem;
}

.quick-actions-card__rail strong {
    font-size: 1rem;
}

html body[data-page="home"] .quick-actions-card__header {
    display: none;
}

html body[data-page="home"] .quick-actions-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    padding: 0;
}

html body[data-page="home"] .task-card--quick-action {
    min-height: 6.35rem;
    padding: 0.82rem 0.65rem;
    border: 0;
    border-left: 1px solid rgba(65, 11, 104, 0.08);
    border-radius: 0;
    box-shadow: none;
    text-align: center;
}

html body[data-page="home"] .task-card--quick-action .task-card__icon {
    width: 2.5rem;
    height: 2.5rem;
    margin-inline: auto;
    font-size: 1.05rem;
}

html body[data-page="home"] .task-card--quick-action .task-card__title {
    font-size: 0.86rem;
    line-height: 1.25;
}

html body[data-page="home"] .task-card--quick-action .task-card__description,
html body[data-page="home"] .task-card--quick-action .task-card__arrow {
    display: none;
}

.home-v2-featured-band {
    padding: 1.55rem 0 2.35rem;
    background: #f4eefb;
}

.home-v2-featured-band .home-featured-section {
    max-width: 1060px;
}

html body[data-page="home"] .featured-carousel-card {
    min-height: 8.7rem;
    border-radius: 0.9rem;
    background:
        linear-gradient(100deg, #3a0758 0%, #4d0b78 58%, #61199b 100%);
}

html body[data-page="home"] .featured-carousel-card__intro {
    position: absolute;
    left: 1rem;
    top: 0.85rem;
    width: 15rem;
    padding: 0;
}

html body[data-page="home"] .featured-carousel-card__intro .section-title {
    font-size: 1.15rem;
    line-height: 1.2;
}

html body[data-page="home"] .featured-carousel-card__intro p,
html body[data-page="home"] .featured-carousel-card__all {
    display: none;
}

html body[data-page="home"] .featured-carousel-card__rail {
    top: 1rem;
    right: 4.8rem;
    font-size: 0.88rem;
}

html body[data-page="home"] .featured-slide {
    grid-template-columns: minmax(12rem, 19rem) minmax(0, 1fr);
    min-height: 8.7rem;
    gap: 1rem;
    padding: 0.9rem 7.8rem 0.9rem 17rem;
}

html body[data-page="home"] .featured-slide__media {
    min-height: 6.85rem;
    border-radius: 0.75rem;
}

html body[data-page="home"] .featured-slide__body h3 {
    display: -webkit-box;
    margin-bottom: 0.35rem;
    overflow: hidden;
    color: #fff;
    font-size: 1.35rem;
    line-height: 1.22;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

html body[data-page="home"] .featured-slide__body p {
    display: none;
}

html body[data-page="home"] .featured-slide__actions {
    margin-top: 0.55rem;
}

html body[data-page="home"] .featured-slide__actions .btn {
    min-height: 2.3rem;
    padding: 0.35rem 0.8rem;
    font-size: 0.84rem;
}

.featured-slide__hint {
    display: none;
}

html body[data-page="home"] .featured-carousel-card__controls {
    position: absolute;
    right: 1rem;
    bottom: 0.9rem;
    padding: 0;
}

html body[data-page="home"] .featured-carousel-card .carousel-indicators {
    display: none;
}

html body[data-page="home"] .featured-carousel-card__button {
    width: 2.35rem;
    height: 2.35rem;
    min-width: 2.35rem;
    min-height: 2.35rem;
}

.home-v2-portal-band,
.home-v2-document-band,
.home-v2-services-band,
.home-v2-civic-band {
    padding-block: 1.35rem;
}

html body[data-page="home"] .home-section-heading {
    margin-bottom: 0.8rem;
}

html body[data-page="home"] .section-title {
    font-size: clamp(1.35rem, 1.35vw + 0.95rem, 2rem);
}

html body[data-page="home"] .content-card--v2 {
    gap: 0.75rem;
    padding: 1rem;
    border-radius: 0.9rem;
}

html body[data-page="home"] .v2-card-header {
    gap: 0.8rem;
}

html body[data-page="home"] .v2-card-header h3,
html body[data-page="home"] .content-card--v2 > .section-eyebrow + h3,
html body[data-page="home"] .home-important-links h3,
html body[data-page="home"] .home-contact-panel__block h3 {
    font-size: 1.12rem;
}

html body[data-page="home"] .home-news-layout {
    grid-template-columns: minmax(0, 1.35fr) minmax(17rem, 0.65fr);
}

html body[data-page="home"] .home-news-grid {
    gap: 0.7rem;
}

html body[data-page="home"] .home-news-card__media {
    min-height: 7rem;
}

html body[data-page="home"] .home-news-card--featured .home-news-card__media {
    min-height: 11rem;
}

html body[data-page="home"] .home-news-card__body {
    padding: 0.75rem;
}

html body[data-page="home"] .home-news-card__body h3 {
    font-size: 0.98rem;
}

html body[data-page="home"] .home-news-card--featured .home-news-card__body h3 {
    font-size: 1.18rem;
}

html body[data-page="home"] .home-news-card__body p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

html body[data-page="home"] .home-document-grid {
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
}

html body[data-page="home"] .stacked-list {
    gap: 0.55rem;
}

html body[data-page="home"] .stacked-list__item,
html body[data-page="home"] .procurement-feed__item {
    padding: 0.7rem 0.8rem;
    border-radius: 0.7rem;
}

html body[data-page="home"] .procurement-feed__title,
html body[data-page="home"] .stacked-list__title {
    font-size: 0.92rem;
    line-height: 1.38;
}

html body[data-page="home"] .home-services-layout {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 0.9fr) minmax(0, 1.2fr);
}

html body[data-page="home"] .department-service-grid,
html body[data-page="home"] .manual-grid,
html body[data-page="home"] .home-eservice-list,
html body[data-page="home"] .home-civic-links,
html body[data-page="home"] .home-important-links__grid {
    gap: 0.6rem;
}

html body[data-page="home"] .task-card--department,
html body[data-page="home"] .task-card--important-link,
html body[data-page="home"] .task-card--quick-link,
html body[data-page="home"] .home-civic-links .task-card {
    min-height: 4.65rem;
    padding: 0.72rem;
    border-radius: 0.72rem;
}

html body[data-page="home"] .task-card__icon {
    width: 2.35rem;
    height: 2.35rem;
}

html body[data-page="home"] .task-card__title {
    font-size: 0.92rem;
}

html body[data-page="home"] .task-card__description {
    font-size: 0.78rem;
}

html body[data-page="home"] .home-civic-grid {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.05fr) minmax(0, 0.85fr);
}

html body[data-page="home"] .content-card--integrity {
    background: linear-gradient(180deg, #fff7d8, #fffdf5);
}

html body[data-page="home"] .home-contact-panel {
    padding: 1rem;
    border-radius: 0.95rem;
}

html body[data-page="home"] .home-contact-panel__grid {
    gap: 0.8rem;
}

html body[data-page="home"] .home-contact-panel__primary,
html body[data-page="home"] .home-contact-panel__block {
    border-radius: 0.85rem;
    padding: 1rem;
}

.site-footer--v2 {
    padding-top: 0;
}

.site-footer__quick-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
    max-width: 1100px;
    margin: -2rem auto 1.25rem;
    position: relative;
    z-index: 1;
}

.site-footer__quick-strip a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.1rem 0.65rem;
    align-items: center;
    min-height: 4.25rem;
    padding: 0.78rem 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0.85rem;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    text-decoration: none;
    backdrop-filter: blur(14px);
}

.site-footer__quick-strip a > span {
    grid-row: span 2;
    display: grid;
    place-items: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 0.7rem;
    background: #f2c94c;
    color: #26033a;
}

.site-footer__quick-strip strong,
.site-footer__quick-strip small {
    display: block;
}

.site-footer__quick-strip strong {
    font-size: 0.92rem;
    line-height: 1.25;
}

.site-footer__quick-strip small {
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.75rem;
}

.site-footer--v2 .container-fluid {
    max-width: 1220px;
}

.site-footer--v2 .row {
    --bs-gutter-y: 1.25rem;
}

.site-footer__brand p,
.site-footer__list a,
.site-footer__hotline {
    font-size: 0.86rem;
}

@media (max-width: 1199.98px) {
    html body[data-page="home"] .municipal-identity__inner,
    html body[data-page="home"] .homepage-slider__layout,
    html body[data-page="home"] .home-news-layout,
    html body[data-page="home"] .home-document-grid,
    html body[data-page="home"] .home-services-layout,
    html body[data-page="home"] .home-civic-grid {
        grid-template-columns: 1fr;
    }

    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .site-footer__quick-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .homepage-hero-band,
    html body[data-page="home"] #homepageTopCarousel,
    html body[data-page="home"] #homepageTopCarousel .carousel-inner,
    html body[data-page="home"] #homepageTopCarousel .carousel-item,
    html body[data-page="home"] .homepage-slider__slide {
        min-height: 33rem;
    }

    html body[data-page="home"] .homepage-slider__panel {
        min-height: 33rem;
        padding-bottom: 4.6rem;
    }

    html body[data-page="home"] .homepage-slider__title {
        font-size: 2.2rem;
    }

    html body[data-page="home"] .homepage-slider__civic-panel {
        display: none;
    }

    html body[data-page="home"] .quick-actions-card {
        grid-template-columns: 1fr;
    }

    html body[data-page="home"] .quick-actions-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    html body[data-page="home"] .featured-carousel-card {
        min-height: 20rem;
    }

    html body[data-page="home"] .featured-carousel-card__intro {
        position: relative;
        left: auto;
        top: auto;
        width: auto;
        padding: 1rem 1rem 0;
    }

    html body[data-page="home"] .featured-slide {
        grid-template-columns: 1fr;
        padding: 0.8rem 1rem 4rem;
    }

    html body[data-page="home"] .featured-slide__media {
        min-height: 8rem;
    }

    html body[data-page="home"] .featured-carousel-card__rail {
        display: none;
    }

    .site-footer__quick-strip {
        grid-template-columns: 1fr;
        margin-top: 0;
    }
}

/* Mockup fidelity final fit: keep the first viewport as a municipal portal */
@media (min-width: 1200px) {
    body[data-page="home"] .top-utility {
        min-height: 1.35rem;
        font-size: 0.7rem;
    }

    body[data-page="home"] .top-utility .btn {
        min-height: 1.25rem;
        padding: 0.04rem 0.34rem;
    }

    html body[data-page="home"] .municipal-identity__inner {
        min-height: 4.15rem;
        padding-block: 0.38rem;
        grid-template-columns: minmax(20rem, 1fr) minmax(18rem, 28rem) auto;
    }

    body[data-page="home"] .municipal-brand__logo {
        width: 3.85rem;
    }

    body[data-page="home"] .municipal-brand__title {
        font-size: 1.62rem;
        line-height: 1.05;
    }

    body[data-page="home"] .municipal-brand__subtitle,
    body[data-page="home"] .municipal-brand__tagline {
        font-size: 0.74rem;
        line-height: 1.25;
    }

    body[data-page="home"] .municipal-search {
        min-height: 2.45rem;
    }

    body[data-page="home"] .municipal-search .btn {
        min-height: 2rem;
    }

    body[data-page="home"] .municipal-identity__actions a {
        min-height: 2.2rem;
    }

    body[data-page="home"] .public-navbar__inner,
    body[data-page="home"] .navbar-nav .nav-link {
        min-height: 2.55rem;
    }

    body[data-page="home"] .navbar-nav .nav-link {
        padding-block: 0.46rem;
    }

    body[data-page="home"] .home-alert-strip {
        padding: 0.28rem 0;
    }

    body[data-page="home"] .home-alert-strip__inner {
        min-height: 2rem;
    }

    html body[data-page="home"] .homepage-hero-band,
    html body[data-page="home"] #homepageTopCarousel,
    html body[data-page="home"] #homepageTopCarousel .carousel-inner,
    html body[data-page="home"] #homepageTopCarousel .carousel-item,
    html body[data-page="home"] .homepage-slider__slide {
        min-height: 16.7rem;
    }

    html body[data-page="home"] .homepage-slider__panel {
        min-height: 16.7rem;
        padding-top: 1rem;
        padding-bottom: 2.65rem;
    }

    html body[data-page="home"] .homepage-slider__layout {
        grid-template-columns: minmax(0, 1fr);
    }

    html body[data-page="home"] .homepage-slider__content {
        max-width: 43rem;
    }

    html body[data-page="home"] .homepage-slider__title {
        max-width: 14ch;
        font-size: 2.72rem;
        line-height: 1.04;
    }

    html body[data-page="home"] .homepage-slider__subtitle {
        max-width: 32rem;
        font-size: 0.92rem;
        line-height: 1.46;
    }

    html body[data-page="home"] .homepage-slider__badges {
        margin-bottom: 0.5rem;
    }

    html body[data-page="home"] .homepage-slider__cta {
        margin-top: 0.78rem;
    }

    html body[data-page="home"] .homepage-slider__cta .btn {
        min-height: 2.35rem;
        padding: 0.42rem 0.9rem;
        font-size: 0.85rem;
    }

    html body[data-page="home"] .homepage-slider__civic-panel {
        display: none;
    }

    html body[data-page="home"] .homepage-slider__controls {
        bottom: 0.72rem;
    }

    .home-v2-quick-band {
        margin-top: -2.45rem;
    }

    html body[data-page="home"] .quick-actions-card {
        max-width: 1090px;
        grid-template-columns: 9rem minmax(0, 1fr);
    }

    .quick-actions-card__rail,
    html body[data-page="home"] .task-card--quick-action {
        min-height: 5.35rem;
    }

    html body[data-page="home"] .task-card--quick-action {
        padding-block: 0.58rem;
    }

    html body[data-page="home"] .task-card--quick-action .task-card__icon {
        width: 2.18rem;
        height: 2.18rem;
    }

    html body[data-page="home"] .task-card--quick-action .task-card__title {
        font-size: 0.78rem;
    }

    .home-v2-featured-band {
        padding-top: 0.72rem;
        padding-bottom: 1.35rem;
    }

    .home-v2-featured-band .home-featured-section {
        max-width: 1180px;
    }

    html body[data-page="home"] .featured-carousel-card {
        min-height: 7.65rem;
    }

    html body[data-page="home"] .featured-carousel-card__intro {
        width: 14rem;
    }

    html body[data-page="home"] .featured-slide {
        grid-template-columns: minmax(10rem, 15rem) minmax(0, 1fr);
        min-height: 7.65rem;
        padding: 0.72rem 7.25rem 0.72rem 15.6rem;
    }

    html body[data-page="home"] .featured-slide__media {
        margin: 0 !important;
        min-height: 6.2rem;
    }

    html body[data-page="home"] .featured-slide__body {
        position: relative;
        z-index: 2;
        grid-column: 2 !important;
        align-self: center;
        max-width: 42rem;
        gap: 0.45rem;
        padding: 0 !important;
    }

    html body[data-page="home"] .featured-slide__body .section-eyebrow {
        display: none;
    }

    html body[data-page="home"] .featured-slide h3,
    html body[data-page="home"] .featured-slide__body h3 {
        font-size: 1.22rem;
        -webkit-line-clamp: 2;
    }

    html body[data-page="home"] .featured-slide__actions {
        margin-top: 0.45rem;
    }
}

body[data-page="home"] .site-footer--v2 {
    background:
        linear-gradient(180deg, #4f0b7d 0%, #28013e 100%) !important;
}

body[data-page="home"] .site-footer__brand h5,
body[data-page="home"] .site-footer__title,
body[data-page="home"] .site-footer__heading,
body[data-page="home"] .site-footer__hotline {
    color: #fff4c7 !important;
}

body[data-page="home"] .site-footer__subtitle,
body[data-page="home"] .site-footer__brand p,
body[data-page="home"] .site-footer__brand a:not(.btn),
body[data-page="home"] .site-footer__list a,
body[data-page="home"] .site-footer--v2 small {
    color: rgba(255, 255, 255, 0.84) !important;
}

body[data-page="home"] .site-footer__list a:hover,
body[data-page="home"] .site-footer__list a:focus {
    color: #ffffff !important;
}

/* Section replacement pass: hero, quick actions, featured strip, footer */
html body[data-page="home"] .home-v2-hero-stack {
    position: relative;
    overflow: visible;
    background: #2a0140;
}

html body[data-page="home"] .homepage-hero-band,
html body[data-page="home"] .homepage-hero-band .container-fluid {
    max-width: none;
    min-height: 0;
    padding: 0;
}

.municipal-portal-hero {
    position: relative;
    z-index: 1;
    width: 100%;
    background: #2a0140;
}

.municipal-portal-hero__carousel,
.municipal-portal-hero__carousel .carousel-inner,
.municipal-portal-hero__carousel .carousel-item,
.municipal-portal-hero__slide {
    min-height: 24rem;
}

.municipal-portal-hero__slide {
    position: relative;
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
}

.municipal-portal-hero__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(1.12) contrast(1.08) brightness(0.82);
    transform: scale(1.01);
}

.municipal-portal-hero__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(35, 0, 58, 0.94) 0%, rgba(58, 7, 88, 0.82) 42%, rgba(58, 7, 88, 0.42) 72%, rgba(58, 7, 88, 0.18) 100%),
        linear-gradient(180deg, rgba(35, 0, 58, 0.18) 0%, rgba(35, 0, 58, 0.72) 100%);
}

.municipal-portal-hero__seal {
    position: absolute;
    right: 2.5rem;
    bottom: 1.5rem;
    width: 9rem;
    height: 9rem;
    display: grid;
    place-items: center;
    border-radius: 999px;
    opacity: 0.18;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.municipal-portal-hero__seal img {
    width: 7rem;
    height: 7rem;
    object-fit: contain;
}

.municipal-portal-hero__inner {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 2rem));
    margin: 0 auto;
    padding: 2.35rem 0 4.4rem;
}

.municipal-portal-hero__copy {
    width: min(100%, 46rem);
}

.municipal-portal-hero__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-bottom: 0.9rem;
}

.municipal-portal-hero__badges span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 2.15rem;
    padding: 0.42rem 0.9rem;
    border-radius: 999px;
    background: #f2c94c;
    color: #2a0140;
    font-size: 0.88rem;
    font-weight: 800;
}

.municipal-portal-hero__badges span + span {
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.35);
}

.municipal-portal-hero__badges i {
    color: #2dd36f;
    font-size: 0.65rem;
}

.municipal-portal-hero h2 {
    max-width: 13ch;
    margin: 0;
    color: #fff;
    font-size: 3.8rem;
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
    text-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
}

.municipal-portal-hero p {
    max-width: 38rem;
    margin: 0.85rem 0 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 1rem;
    line-height: 1.55;
}

.municipal-portal-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.municipal-portal-hero__actions .btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.65rem;
    padding: 0.55rem 1.2rem;
    border-radius: 0.65rem;
    font-weight: 800;
}

.municipal-portal-hero__actions .btn-primary {
    border-color: #f2c94c;
    background: #f2c94c;
    color: #2a0140;
    box-shadow: 0 14px 30px rgba(242, 201, 76, 0.22);
}

.municipal-portal-hero__actions .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.42);
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.municipal-portal-hero__controls {
    position: absolute;
    z-index: 4;
    left: 50%;
    bottom: 1.1rem;
    width: min(1180px, calc(100% - 2rem));
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.55rem;
    transform: translateX(-50%);
}

.municipal-portal-hero__dots {
    display: flex;
    gap: 0.35rem;
    margin-right: auto;
}

.municipal-portal-hero__dots [data-bs-target] {
    width: 0.55rem;
    height: 0.55rem;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.48);
    opacity: 1;
}

.municipal-portal-hero__dots .active {
    width: 1.8rem;
    background: #f2c94c;
}

.municipal-portal-hero__button {
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #3a0758;
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.2);
}

.municipal-portal-hero__empty {
    width: min(1180px, calc(100% - 2rem));
    min-height: 16rem;
    margin: 0 auto;
    display: grid;
    align-content: center;
    justify-items: start;
    gap: 0.65rem;
    color: #fff;
}

html body[data-page="home"] .home-v2-quick-band {
    position: relative;
    z-index: 5;
    margin-top: -2.85rem;
    padding: 0 0 1rem !important;
    background: transparent;
}

html body[data-page="home"] .home-v2-quick-band .container {
    max-width: none;
    padding-inline: 1rem;
}

.municipal-service-bar {
    width: min(1120px, 100%);
    margin: 0 auto;
}

.municipal-service-bar__track {
    display: grid;
    grid-template-columns: 8.8rem repeat(6, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(91, 23, 132, 0.14);
    border-radius: 0.9rem;
    background: #fff;
    box-shadow: 0 22px 46px rgba(47, 0, 72, 0.22);
}

.municipal-service-bar__label,
.municipal-service-bar__item {
    min-width: 0;
    min-height: 5.6rem;
}

.municipal-service-bar__label {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.35rem;
    padding: 0.72rem;
    background: linear-gradient(135deg, #5f0a92, #3a0758);
    color: #fff;
    text-align: center;
}

.municipal-service-bar__label span {
    display: grid;
    place-items: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 0.75rem;
    background: #f2c94c;
    color: #3a0758;
    font-size: 1.1rem;
}

.municipal-service-bar__label strong {
    font-size: 0.95rem;
    line-height: 1.18;
}

.municipal-service-bar__item {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.42rem;
    padding: 0.7rem 0.45rem;
    border-left: 1px solid rgba(91, 23, 132, 0.1);
    color: #2f2437;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.municipal-service-bar__item:hover,
.municipal-service-bar__item:focus {
    background: #fff7d8;
    color: #3a0758;
}

.municipal-service-bar__icon {
    display: grid;
    place-items: center;
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 0.75rem;
    background: #f4eefb;
    color: #7c3aed;
}

.municipal-service-bar__item--primary {
    background: linear-gradient(135deg, #5f0a92, #4c0878);
    color: #fff;
}

.municipal-service-bar__item--primary .municipal-service-bar__icon {
    background: #f2c94c;
    color: #3a0758;
}

.municipal-service-bar__text {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.municipal-service-bar__text strong {
    display: -webkit-box;
    overflow: hidden;
    font-size: 0.82rem;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.municipal-service-bar__text small {
    display: none;
}

html body[data-page="home"] .home-v2-featured-band {
    padding: 0.8rem 0 1.35rem !important;
    background: #f4eefb;
}

.municipal-feature-strip {
    width: min(1180px, calc(100% - 2rem));
    margin: 0 auto;
}

.municipal-feature-strip__shell {
    position: relative;
    display: grid;
    grid-template-columns: 14rem minmax(0, 1fr) 7.5rem;
    align-items: stretch;
    min-height: 8.4rem;
    overflow: hidden;
    border-radius: 0.9rem;
    background: linear-gradient(100deg, #3a0758 0%, #4f0b7d 52%, #6a18a6 100%);
    color: #fff;
    box-shadow: 0 18px 44px rgba(58, 7, 88, 0.22);
}

.municipal-feature-strip__heading {
    display: grid;
    align-content: center;
    gap: 0.55rem;
    padding: 1rem 1.15rem;
}

.municipal-feature-strip__heading span {
    width: fit-content;
    padding: 0.28rem 0.72rem;
    border: 1px solid rgba(242, 201, 76, 0.55);
    border-radius: 999px;
    color: #fff4c7;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.municipal-feature-strip__heading h2 {
    margin: 0;
    color: #fff;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.3;
}

.municipal-feature-strip__carousel,
.municipal-feature-strip__carousel .carousel-inner,
.municipal-feature-strip__carousel .carousel-item,
.municipal-feature-strip__slide {
    min-height: 8.4rem;
}

.municipal-feature-strip__slide {
    display: grid;
    grid-template-columns: 10rem minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    padding: 0.8rem 1rem;
}

.municipal-feature-strip__media {
    display: grid;
    place-items: center;
    height: 6.8rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.1);
}

.municipal-feature-strip__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.municipal-feature-strip__media span {
    display: grid;
    place-items: center;
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 1rem;
    background: rgba(242, 201, 76, 0.16);
    color: #f2c94c;
    font-size: 1.5rem;
}

.municipal-feature-strip__body {
    display: grid;
    justify-items: start;
    gap: 0.45rem;
    min-width: 0;
}

.municipal-feature-strip__body span {
    color: #fff4c7;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.municipal-feature-strip__body h3 {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #fff;
    font-size: 1.18rem;
    font-weight: 800;
    line-height: 1.28;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.municipal-feature-strip__body .btn {
    min-height: 2rem;
    padding: 0.32rem 0.9rem;
    border-radius: 999px;
    color: #2a0140;
    font-size: 0.82rem;
    font-weight: 800;
}

.municipal-feature-strip__control-panel {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.55rem;
    padding: 0.8rem;
    background: rgba(58, 7, 88, 0.25);
}

.municipal-feature-strip__count {
    display: flex;
    gap: 0.35rem;
    color: #f2c94c;
    font-weight: 900;
}

.municipal-feature-strip__controls {
    display: flex;
    gap: 0.42rem;
}

.municipal-feature-strip__button {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #3a0758;
}

.municipal-feature-strip__dots {
    display: flex;
    gap: 0.25rem;
}

.municipal-feature-strip__dots [data-bs-target] {
    width: 0.42rem !important;
    height: 0.42rem !important;
    min-width: 0.42rem !important;
    min-height: 0.42rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.45) !important;
    opacity: 1 !important;
}

.municipal-feature-strip__dots .active {
    width: 1.25rem !important;
    background: #f2c94c !important;
}

.municipal-footer {
    position: relative;
    overflow: hidden;
    padding: 0 1rem 1rem;
    background: linear-gradient(180deg, #4f0b7d 0%, #2a0140 100%);
    color: #fff;
}

.municipal-footer__shortcut-bar {
    position: relative;
    z-index: 2;
    width: min(1120px, 100%);
    margin: -2rem auto 1.15rem;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 0.9rem;
    background: rgba(255, 255, 255, 0.11);
    box-shadow: 0 18px 42px rgba(35, 0, 58, 0.32);
    backdrop-filter: blur(14px);
}

.municipal-footer__shortcut-bar a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.1rem 0.65rem;
    align-items: center;
    min-height: 4.3rem;
    padding: 0.75rem 0.9rem;
    border-left: 1px solid rgba(255, 255, 255, 0.14);
    color: #fff;
    text-decoration: none;
}

.municipal-footer__shortcut-bar a:first-child {
    border-left: 0;
}

.municipal-footer__shortcut-bar span {
    grid-row: span 2;
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 0.7rem;
    background: #f2c94c;
    color: #2a0140;
}

.municipal-footer__shortcut-bar strong {
    font-size: 0.92rem;
    line-height: 1.2;
}

.municipal-footer__shortcut-bar small {
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.74rem;
}

.municipal-footer__inner {
    width: min(1180px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.7fr);
    gap: 2rem;
    padding: 1.15rem 0 1rem;
}

.municipal-footer__identity {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    margin-bottom: 0.9rem;
}

.municipal-footer__identity img {
    width: 3.9rem;
    height: 3.9rem;
    border-radius: 999px;
    background: #fff;
}

.municipal-footer__identity h2 {
    margin: 0;
    color: #fff4c7;
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1.25;
}

.municipal-footer__identity p,
.municipal-footer address {
    margin: 0;
    color: rgba(255, 255, 255, 0.78) !important;
}

.municipal-footer address {
    font-style: normal;
    font-size: 0.86rem;
    line-height: 1.75;
}

.municipal-footer a {
    color: inherit;
}

.municipal-footer__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0.95rem;
}

.municipal-footer__actions .btn {
    border-radius: 999px;
    font-weight: 800;
}

.municipal-footer__nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.2rem;
}

.municipal-footer__nav div {
    display: grid;
    align-content: start;
    gap: 0.46rem;
}

.municipal-footer__nav h3 {
    margin: 0 0 0.35rem;
    color: #fff4c7;
    font-size: 0.9rem;
    font-weight: 900;
}

.municipal-footer__nav a,
.municipal-footer__nav strong {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: 0.82rem;
    line-height: 1.45;
    text-decoration: none;
}

.municipal-footer__nav a:hover,
.municipal-footer__nav a:focus {
    color: #fff !important;
}

.municipal-footer__nav i {
    margin-right: 0.35rem;
    color: #f2c94c;
}

.municipal-footer__bottom {
    width: min(1180px, 100%);
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.75rem;
    padding-top: 0.9rem;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    color: rgba(255, 255, 255, 0.74) !important;
}

.municipal-footer__bottom small {
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.74) !important;
}

@media (max-width: 1199.98px) {
    .municipal-service-bar__track {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .municipal-service-bar__label {
        grid-column: 1 / -1;
        min-height: 4.25rem;
        grid-template-columns: auto auto;
        justify-content: center;
    }

    .municipal-feature-strip__shell,
    .municipal-footer__inner {
        grid-template-columns: 1fr;
    }

    .municipal-feature-strip__control-panel {
        grid-template-columns: auto auto 1fr;
        justify-items: start;
    }

    .municipal-footer__nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .municipal-portal-hero__carousel,
    .municipal-portal-hero__carousel .carousel-inner,
    .municipal-portal-hero__carousel .carousel-item,
    .municipal-portal-hero__slide {
        min-height: 29rem;
    }

    .municipal-portal-hero__inner {
        padding: 2.4rem 0 5.4rem;
    }

    .municipal-portal-hero h2 {
        font-size: 2.35rem;
    }

    .municipal-portal-hero p {
        font-size: 0.92rem;
    }

    .municipal-portal-hero__seal {
        display: none;
    }

    .municipal-portal-hero__controls {
        align-items: flex-end;
    }

    html body[data-page="home"] .home-v2-quick-band {
        margin-top: -3.8rem;
    }

    .municipal-service-bar__track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-radius: 0.85rem;
    }

    .municipal-service-bar__label {
        grid-column: 1 / -1;
    }

    .municipal-service-bar__item {
        min-height: 5.25rem;
    }

    .municipal-feature-strip__shell {
        grid-template-columns: 1fr;
    }

    .municipal-feature-strip__slide {
        grid-template-columns: 6.5rem minmax(0, 1fr);
    }

    .municipal-feature-strip__media {
        height: 5.3rem;
    }

    .municipal-feature-strip__control-panel {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .municipal-footer__shortcut-bar,
    .municipal-footer__nav {
        grid-template-columns: 1fr;
    }

    .municipal-footer__shortcut-bar {
        margin-top: 0;
    }
}

/* Homepage layout recovery source of truth: header, hero, quick actions, featured strip, footer */
html body[data-page="home"] {
    --recover-purple-950: #1d0034;
    --recover-purple-900: #2d004f;
    --recover-purple-850: #37075f;
    --recover-purple-800: #4b0078;
    --recover-purple-700: #64169b;
    --recover-gold: #f2c94c;
    --recover-gold-soft: #fff2bd;
    --recover-ink: #26033a;
    --recover-surface: #f4eefb;
    background: var(--recover-surface) !important;
}

html body[data-page="home"] .top-utility {
    min-height: 1.55rem !important;
    padding-block: 0 !important;
    border: 0 !important;
    background: var(--recover-purple-800) !important;
    color: #fff8dc !important;
}

html body[data-page="home"] .top-utility .container-fluid,
html body[data-page="home"] .municipal-identity__inner,
html body[data-page="home"] .public-navbar__inner,
html body[data-page="home"] .home-alert-strip__inner {
    max-width: 1220px !important;
}

html body[data-page="home"] .top-utility a,
html body[data-page="home"] .top-utility span,
html body[data-page="home"] .top-utility i,
html body[data-page="home"] .top-utility button {
    color: #fff8dc !important;
}

html body[data-page="home"] .top-utility .btn-outline-light {
    min-width: 1.8rem !important;
    min-height: 1.35rem !important;
    padding: 0.06rem 0.42rem !important;
    border-color: rgba(255, 242, 189, 0.45) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #fff8dc !important;
}

html body[data-page="home"] .top-utility .btn-outline-light.active,
html body[data-page="home"] .top-utility .btn-outline-light[aria-current="true"],
html body[data-page="home"] .top-utility .btn-outline-light:hover,
html body[data-page="home"] .top-utility .btn-outline-light:focus {
    border-color: var(--recover-gold) !important;
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-identity {
    border: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(33, 0, 56, 0.11) !important;
}

html body[data-page="home"] .municipal-identity__inner {
    min-height: 4.45rem !important;
    padding: 0.42rem 1rem !important;
    grid-template-columns: minmax(18rem, 1fr) minmax(20rem, 30rem) auto !important;
    gap: 1rem !important;
}

html body[data-page="home"] .municipal-brand__logo {
    width: 4.15rem !important;
}

html body[data-page="home"] .municipal-brand__eyebrow {
    margin-bottom: 0 !important;
    color: var(--recover-purple-800) !important;
    font-size: 0.72rem !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

html body[data-page="home"] .municipal-brand__title {
    color: var(--recover-purple-900) !important;
    font-size: clamp(1.35rem, 1.2vw + 0.95rem, 1.9rem) !important;
    line-height: 1.03 !important;
}

html body[data-page="home"] .municipal-brand__subtitle,
html body[data-page="home"] .municipal-brand__tagline {
    color: rgba(38, 3, 58, 0.7) !important;
    font-size: 0.78rem !important;
}

html body[data-page="home"] .municipal-search {
    min-height: 2.55rem !important;
    padding: 0.2rem !important;
    border: 1px solid rgba(75, 0, 120, 0.14) !important;
    background: #ffffff !important;
    box-shadow: 0 12px 26px rgba(33, 0, 56, 0.08) !important;
}

html body[data-page="home"] .municipal-search .btn,
html body[data-page="home"] .municipal-identity__actions a {
    border-color: var(--recover-gold) !important;
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
    box-shadow: none !important;
}

html body[data-page="home"] .municipal-search .btn {
    min-height: 2.12rem !important;
    padding-inline: 1rem !important;
}

html body[data-page="home"] .municipal-identity__actions a {
    min-height: 2.38rem !important;
    padding: 0.42rem 0.78rem !important;
}

html body[data-page="home"] .public-navbar {
    position: relative !important;
    top: auto !important;
    border: 0 !important;
    background: var(--recover-purple-950) !important;
    box-shadow: none !important;
}

html body[data-page="home"] .public-navbar__inner {
    min-height: 2.72rem !important;
}

html body[data-page="home"] .navbar-nav .nav-link {
    min-height: 2.72rem !important;
    padding: 0.52rem 0.78rem !important;
    border-radius: 0 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    font-size: 0.86rem !important;
}

html body[data-page="home"] .navbar-nav .nav-link.active,
html body[data-page="home"] .navbar-nav .nav-link:hover,
html body[data-page="home"] .navbar-nav .nav-link:focus {
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .content-wrapper,
html body[data-page="home"] .home-redesign--v2 {
    background: var(--recover-surface) !important;
}

html body[data-page="home"] .home-v2-hero-stack {
    background: var(--recover-purple-950) !important;
}

html body[data-page="home"] .home-v2-hero-stack {
    padding-bottom: 0 !important;
    overflow: visible !important;
}

html body[data-page="home"] .home-v2-hero-stack::before {
    content: none !important;
}

html body[data-page="home"] .home-alert-strip {
    position: relative !important;
    z-index: 7 !important;
    margin: 0 !important;
    padding: 0.3rem 0 !important;
    border: 0 !important;
    background: var(--recover-purple-950) !important;
}

html body[data-page="home"] .home-alert-strip__inner {
    min-height: 1.95rem !important;
    border: 1px solid rgba(255, 242, 189, 0.22) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    box-shadow: none !important;
}

html body[data-page="home"] .home-alert-strip__label {
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .home-alert-strip__item {
    border-color: rgba(255, 255, 255, 0.12) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

html body[data-page="home"] .home-alert-strip__item strong {
    color: var(--recover-gold) !important;
}

html body[data-page="home"] .municipal-portal-hero {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: var(--recover-purple-950) !important;
}

html body[data-page="home"] .municipal-portal-hero__visual,
html body[data-page="home"] .municipal-portal-hero__fallback,
html body[data-page="home"] .municipal-portal-hero__video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

html body[data-page="home"] .municipal-portal-hero__visual {
    z-index: 0 !important;
    overflow: hidden !important;
    background:
        linear-gradient(90deg, rgba(29, 0, 52, 0.9), rgba(55, 7, 95, 0.56)),
        var(--hero-fallback-image) center / cover no-repeat,
        var(--recover-purple-950) !important;
}

html body[data-page="home"] .municipal-portal-hero__fallback {
    z-index: 1 !important;
    background: var(--hero-fallback-image) center / cover no-repeat !important;
    filter: saturate(1.14) contrast(1.08) brightness(0.84) !important;
    transform: scale(1.01) !important;
}

html body[data-page="home"] .municipal-portal-hero__video {
    z-index: 2 !important;
    object-fit: cover !important;
    opacity: 0 !important;
    filter: saturate(1.16) contrast(1.08) brightness(0.84) !important;
    transform: scale(1.01) !important;
    transition: opacity 0.32s ease !important;
}

html body[data-page="home"] .municipal-portal-hero.is-video-ready .municipal-portal-hero__video {
    opacity: 1 !important;
}

html body[data-page="home"] .municipal-portal-hero.is-video-unavailable .municipal-portal-hero__video,
html body[data-page="home"] .municipal-portal-hero.is-reduced-motion .municipal-portal-hero__video {
    opacity: 0 !important;
}

html body[data-page="home"] .municipal-portal-hero__carousel,
html body[data-page="home"] .municipal-portal-hero__carousel .carousel-inner,
html body[data-page="home"] .municipal-portal-hero__carousel .carousel-item,
html body[data-page="home"] .municipal-portal-hero__slide {
    min-height: clamp(21rem, 31vw, 25.75rem) !important;
}

html body[data-page="home"] .municipal-portal-hero__carousel,
html body[data-page="home"] .municipal-portal-hero__slide {
    position: relative !important;
    z-index: 3 !important;
    background: transparent !important;
}

html body[data-page="home"] .municipal-portal-hero__shade {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
        radial-gradient(circle at 86% 24%, rgba(242, 201, 76, 0.14), transparent 18rem),
        linear-gradient(90deg, rgba(29, 0, 52, 0.95) 0%, rgba(55, 7, 95, 0.78) 46%, rgba(55, 7, 95, 0.34) 77%, rgba(29, 0, 52, 0.18) 100%),
        linear-gradient(180deg, rgba(29, 0, 52, 0.04) 0%, rgba(29, 0, 52, 0.68) 100%) !important;
}

html body[data-page="home"] .municipal-portal-hero__inner {
    position: relative !important;
    z-index: 4 !important;
    width: min(1220px, calc(100% - 4rem)) !important;
    margin: 0 auto !important;
    padding: 2.15rem 0 4.7rem !important;
}

html body[data-page="home"] .municipal-portal-hero__copy {
    width: min(100%, 44rem) !important;
}

html body[data-page="home"] .municipal-portal-hero__badges {
    gap: 0.58rem !important;
    margin-bottom: 0.78rem !important;
}

html body[data-page="home"] .municipal-portal-hero__badges span {
    min-height: 2rem !important;
    padding: 0.35rem 0.85rem !important;
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
    font-size: 0.82rem !important;
}

html body[data-page="home"] .municipal-portal-hero__badges span + span {
    border-color: rgba(255, 242, 189, 0.42) !important;
    background: rgba(255, 255, 255, 0.13) !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-portal-hero h2 {
    max-width: 14ch !important;
    color: #ffffff !important;
    font-size: clamp(2.35rem, 4vw, 3.65rem) !important;
    line-height: 1.03 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 18px 36px rgba(0, 0, 0, 0.38) !important;
}

html body[data-page="home"] .municipal-portal-hero p {
    max-width: 36rem !important;
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 1rem !important;
}

html body[data-page="home"] .municipal-portal-hero__actions {
    gap: 0.72rem !important;
    margin-top: 1.08rem !important;
}

html body[data-page="home"] .municipal-portal-hero__actions .btn {
    min-height: 2.62rem !important;
    border-radius: 0.68rem !important;
    font-weight: 800 !important;
}

html body[data-page="home"] .municipal-portal-hero__actions .btn-primary {
    border-color: var(--recover-gold) !important;
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-portal-hero__actions .btn-outline-light {
    border-color: rgba(255, 242, 189, 0.42) !important;
    background: rgba(255, 255, 255, 0.13) !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-portal-hero__controls {
    z-index: 6 !important;
    bottom: 1.38rem !important;
}

html body[data-page="home"] .municipal-portal-hero__dots .active {
    background: var(--recover-gold) !important;
}

html body[data-page="home"] .home-v2-quick-band {
    position: relative !important;
    z-index: 10 !important;
    margin-top: -3.15rem !important;
    padding: 0 0 0.75rem !important;
    background: linear-gradient(180deg, transparent 0%, var(--recover-surface) 100%) !important;
}

html body[data-page="home"] .home-v2-quick-band .container {
    max-width: 1120px !important;
}

html body[data-page="home"] .municipal-service-bar {
    width: 100% !important;
    margin-inline: auto !important;
}

html body[data-page="home"] .municipal-service-bar__track {
    display: grid !important;
    grid-template-columns: 8.75rem repeat(6, minmax(0, 1fr)) !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.76) !important;
    border-radius: 0.72rem !important;
    background: #ffffff !important;
    box-shadow: 0 22px 46px rgba(33, 0, 56, 0.24) !important;
}

html body[data-page="home"] .municipal-service-bar__label,
html body[data-page="home"] .municipal-service-bar__item {
    min-height: 5.3rem !important;
}

html body[data-page="home"] .municipal-service-bar__label {
    background: linear-gradient(135deg, var(--recover-purple-800), var(--recover-purple-950)) !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-service-bar__label span,
html body[data-page="home"] .municipal-service-bar__item--primary .municipal-service-bar__icon {
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-service-bar__item {
    border-left: 1px solid rgba(75, 0, 120, 0.1) !important;
    background: #ffffff !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-service-bar__item--primary {
    background: linear-gradient(135deg, var(--recover-purple-800), var(--recover-purple-950)) !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-service-bar__text strong {
    color: inherit !important;
    font-size: 0.88rem !important;
}

html body[data-page="home"] .municipal-service-bar__text small {
    color: rgba(38, 3, 58, 0.68) !important;
    font-size: 0.72rem !important;
}

html body[data-page="home"] .municipal-service-bar__item--primary .municipal-service-bar__text small {
    color: rgba(255, 255, 255, 0.78) !important;
}

html body[data-page="home"] .home-v2-featured-band {
    padding: 0.65rem 0 1rem !important;
    background: var(--recover-surface) !important;
}

html body[data-page="home"] .municipal-feature-strip {
    max-width: 1120px !important;
    margin-inline: auto !important;
}

html body[data-page="home"] .municipal-feature-strip__shell {
    min-height: 7.15rem !important;
    border-radius: 0.72rem !important;
    background:
        linear-gradient(100deg, var(--recover-purple-900) 0%, var(--recover-purple-800) 58%, var(--recover-purple-700) 100%) !important;
    box-shadow: 0 18px 38px rgba(33, 0, 56, 0.18) !important;
}

html body[data-page="home"] .municipal-feature-strip__heading {
    min-width: 13rem !important;
    padding: 1rem 0 1rem 1.25rem !important;
}

html body[data-page="home"] .municipal-feature-strip__heading span,
html body[data-page="home"] .municipal-feature-strip__body span,
html body[data-page="home"] .municipal-feature-strip__count {
    color: var(--recover-gold-soft) !important;
}

html body[data-page="home"] .municipal-feature-strip__heading h2,
html body[data-page="home"] .municipal-feature-strip__body h3 {
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-feature-strip__carousel,
html body[data-page="home"] .municipal-feature-strip__carousel .carousel-inner,
html body[data-page="home"] .municipal-feature-strip__carousel .carousel-item,
html body[data-page="home"] .municipal-feature-strip__slide {
    min-height: 7.15rem !important;
}

html body[data-page="home"] .municipal-feature-strip__media {
    width: 13.5rem !important;
}

html body[data-page="home"] .municipal-feature-strip__body {
    padding-block: 1rem !important;
}

html body[data-page="home"] .municipal-feature-strip__body .btn {
    min-height: 2.15rem !important;
    border-color: var(--recover-gold) !important;
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-feature-strip__button {
    border-color: rgba(255, 242, 189, 0.36) !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-feature-strip__dots .active {
    background: var(--recover-gold) !important;
}

html body[data-page="home"] .municipal-footer {
    padding: 0 0 1rem !important;
    border: 0 !important;
    background: linear-gradient(180deg, var(--recover-purple-800) 0%, var(--recover-purple-950) 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

html body[data-page="home"] .municipal-footer::before {
    content: none !important;
}

html body[data-page="home"] .municipal-footer__shortcut-bar {
    max-width: 1120px !important;
    min-height: 4.2rem !important;
    margin: 0 auto !important;
    padding: 0.48rem 0.62rem !important;
    border: 1px solid rgba(255, 242, 189, 0.16) !important;
    border-radius: 0 0 0.72rem 0.72rem !important;
    background: rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 14px 34px rgba(33, 0, 56, 0.28) !important;
}

html body[data-page="home"] .municipal-footer__shortcut-bar a {
    min-height: 3.25rem !important;
    padding: 0.42rem 0.72rem !important;
    border-radius: 0.62rem !important;
    color: #ffffff !important;
}

html body[data-page="home"] .municipal-footer__shortcut-bar span,
html body[data-page="home"] .municipal-footer__actions .btn-warning {
    background: var(--recover-gold) !important;
    color: var(--recover-ink) !important;
}

html body[data-page="home"] .municipal-footer__shortcut-bar strong,
html body[data-page="home"] .municipal-footer__shortcut-bar small,
html body[data-page="home"] .municipal-footer__nav a,
html body[data-page="home"] .municipal-footer__nav strong,
html body[data-page="home"] .municipal-footer address,
html body[data-page="home"] .municipal-footer__identity p,
html body[data-page="home"] .municipal-footer__bottom,
html body[data-page="home"] .municipal-footer__bottom small {
    color: rgba(255, 255, 255, 0.86) !important;
}

html body[data-page="home"] .municipal-footer__identity h2,
html body[data-page="home"] .municipal-footer__nav h3 {
    color: var(--recover-gold-soft) !important;
}

html body[data-page="home"] .municipal-footer__inner {
    max-width: 1120px !important;
    padding: 1.25rem 1rem 0.8rem !important;
    gap: 1.25rem !important;
}

html body[data-page="home"] .municipal-footer__identity img {
    width: 3.3rem !important;
}

html body[data-page="home"] .municipal-footer address {
    margin-top: 0.7rem !important;
    font-size: 0.86rem !important;
    line-height: 1.55 !important;
}

html body[data-page="home"] .municipal-footer__nav {
    gap: 0.9rem !important;
}

html body[data-page="home"] .municipal-footer__nav h3 {
    margin-bottom: 0.45rem !important;
    font-size: 0.95rem !important;
}

html body[data-page="home"] .municipal-footer__nav a,
html body[data-page="home"] .municipal-footer__nav strong {
    margin-top: 0.22rem !important;
    font-size: 0.84rem !important;
}

html body[data-page="home"] .municipal-footer__bottom {
    max-width: 1120px !important;
    margin-inline: auto !important;
    padding: 0.75rem 1rem 0 !important;
    border-color: rgba(255, 242, 189, 0.16) !important;
}

@media (prefers-reduced-motion: reduce) {
    html body[data-page="home"] .municipal-portal-hero__video {
        display: none !important;
    }
}

@media (max-width: 1199.98px) {
    html body[data-page="home"] .municipal-identity__inner {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    html body[data-page="home"] .municipal-service-bar__track {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    html body[data-page="home"] .municipal-service-bar__label {
        grid-column: 1 / -1 !important;
    }

    html body[data-page="home"] .municipal-feature-strip__shell,
    html body[data-page="home"] .municipal-feature-strip__slide {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .top-utility .container-fluid {
        justify-content: center !important;
    }

    html body[data-page="home"] .municipal-portal-hero__carousel,
    html body[data-page="home"] .municipal-portal-hero__carousel .carousel-inner,
    html body[data-page="home"] .municipal-portal-hero__carousel .carousel-item,
    html body[data-page="home"] .municipal-portal-hero__slide {
        min-height: 28.5rem !important;
    }

    html body[data-page="home"] .municipal-portal-hero__inner {
        width: min(100% - 2rem, 1220px) !important;
        padding: 1.7rem 0 5rem !important;
    }

    html body[data-page="home"] .municipal-portal-hero h2 {
        font-size: 2.32rem !important;
    }

    html body[data-page="home"] .municipal-service-bar__track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    html body[data-page="home"] .municipal-feature-strip__heading,
    html body[data-page="home"] .municipal-feature-strip__body,
    html body[data-page="home"] .municipal-feature-strip__control-panel {
        padding-inline: 1rem !important;
    }

    html body[data-page="home"] .municipal-feature-strip__media {
        display: none !important;
    }

    html body[data-page="home"] .municipal-footer__shortcut-bar,
    html body[data-page="home"] .municipal-footer__nav {
        grid-template-columns: 1fr !important;
    }
}

/* Homepage top split: standalone video band + separate slide banner */
html body[data-page="home"] .municipal-home-top {
    background: var(--recover-purple-950) !important;
}

html body[data-page="home"] .municipal-home-video-band {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    height: 50vh !important;
    height: 50dvh !important;
    min-height: 27.5rem !important;
    max-height: 37.5rem !important;
    background:
        linear-gradient(90deg, rgba(29, 0, 52, 0.46), rgba(55, 7, 95, 0.18)),
        var(--hero-fallback-image) center / cover no-repeat,
        var(--recover-purple-950) !important;
}

html body[data-page="home"] .municipal-home-video-band__fallback,
html body[data-page="home"] .municipal-home-video-band__video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

html body[data-page="home"] .municipal-home-video-band__fallback {
    z-index: 1 !important;
    background: var(--hero-fallback-image) center / cover no-repeat !important;
    filter: saturate(1.14) contrast(1.08) brightness(0.84) !important;
}

html body[data-page="home"] .municipal-home-video-band__video {
    z-index: 2 !important;
    object-fit: cover !important;
    opacity: 0 !important;
    filter: saturate(1.16) contrast(1.08) brightness(0.84) !important;
    transition: opacity 0.32s ease !important;
}

html body[data-page="home"] .municipal-home-video-band.is-video-ready .municipal-home-video-band__video {
    opacity: 1 !important;
}

html body[data-page="home"] .municipal-home-video-band.is-video-unavailable .municipal-home-video-band__video,
html body[data-page="home"] .municipal-home-video-band.is-reduced-motion .municipal-home-video-band__video {
    opacity: 0 !important;
}

html body[data-page="home"] .municipal-portal-hero--slides {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: var(--recover-purple-950) !important;
}

html body[data-page="home"] .municipal-portal-hero--slides .municipal-portal-hero__visual,
html body[data-page="home"] .municipal-portal-hero--slides .municipal-portal-hero__fallback,
html body[data-page="home"] .municipal-portal-hero--slides .municipal-portal-hero__video {
    display: none !important;
}

@media (prefers-reduced-motion: reduce) {
    html body[data-page="home"] .municipal-home-video-band__video {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    html body[data-page="home"] .municipal-home-video-band {
        min-height: 23.75rem !important;
        max-height: 30rem !important;
    }
}
