* {
    box-sizing: border-box;
}

html, body {
    min-height: 100%;
    margin: 0;
    font-family: Inter, Arial, sans-serif;
    background: #f5f8f2;
    color: #193027;
}

a {
    color: inherit;
    text-decoration: none;
}

.wwf-topbar {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid rgba(255, 255, 255, 0.26);
    background:
        linear-gradient(120deg, rgba(0, 86, 37, 0.98), rgba(0, 122, 43, 0.96) 48%, rgba(15, 118, 110, 0.98)),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.12) 0 1px, transparent 1px 18px) !important;
    box-shadow: 0 12px 34px rgba(0, 55, 28, 0.18);
    isolation: isolate;
}

.wwf-topbar::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.14), transparent 34%),
        linear-gradient(115deg, transparent 0 58%, rgba(241, 181, 28, 0.22) 58% 59%, transparent 59%);
    pointer-events: none;
    z-index: -1;
}

.wwf-topbar .mud-toolbar {
    gap: 8px;
}

.wwf-topbar .mud-button-root,
.wwf-topbar .mud-icon-button {
    border-radius: 8px;
}

.wwf-topbar .mud-button-root {
    min-height: 38px;
    font-weight: 800;
    text-transform: none;
}

.wwf-topbar .mud-button-text {
    background: rgba(255, 255, 255, 0.1);
}

.wwf-topbar .mud-button-text:hover,
.wwf-topbar .mud-icon-button:hover {
    background: rgba(255, 255, 255, 0.18);
}

.wwf-topbar .mud-button-filled-secondary {
    color: #193027;
    box-shadow: 0 8px 22px rgba(241, 181, 28, 0.28);
}

.language-switch {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.13);
    color: #fff;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16), 0 8px 20px rgba(0, 40, 20, 0.14);
    transition: background 160ms ease, transform 160ms ease, border-color 160ms ease;
}

.language-switch:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 255, 255, 0.42);
    background: rgba(255, 255, 255, 0.2);
}

.language-switch-current {
    min-width: 54px;
}

.language-switch-divider {
    width: 1px;
    height: 18px;
    background: rgba(255, 255, 255, 0.34);
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 48px;
    padding: 4px 12px 4px 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    font-weight: 800;
    letter-spacing: 0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
    backdrop-filter: blur(10px);
}

.brand img {
    width: 42px;
    height: 42px;
    object-fit: contain;
    background: #fff;
    border-radius: 50%;
    padding: 3px;
    box-shadow: 0 8px 18px rgba(0, 40, 20, 0.2);
}

.brand span {
    white-space: normal;
    line-height: 1.1;
}

.urdu-mode {
    font-family: "Noto Nastaliq Urdu", Inter, Arial, sans-serif;
}

.urdu-mode .mud-typography,
.urdu-mode .mud-button-root,
.urdu-mode .mud-input,
.urdu-mode .mud-table,
.urdu-mode .mud-list-item-text,
.urdu-mode .mud-select,
.urdu-mode .mud-chip,
.urdu-mode input,
.urdu-mode button,
.urdu-mode label {
    font-family: "Noto Nastaliq Urdu", Inter, Arial, sans-serif;
    letter-spacing: 0;
}

.urdu-mode .brand,
.urdu-mode .hero-kicker,
.urdu-mode .hero-trust-row,
.urdu-mode .hero-actions,
.urdu-mode .service-link,
.urdu-mode .summary-list div,
.urdu-mode .dashboard-hero,
.urdu-mode .users-page-header {
    direction: rtl;
}

.urdu-mode .mud-table {
    text-align: right;
}

.wwf-main {
    min-height: 100vh;
    padding-top: 64px;
}

.wwf-drawer {
    border-right: 1px solid #dce8d7;
}

.hero {
    position: relative;
    overflow: hidden;
    min-height: calc(100vh - 64px);
    padding: clamp(32px, 5vw, 72px);
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
    align-items: center;
    gap: clamp(20px, 4vw, 56px);
    background:
        linear-gradient(120deg, rgba(0, 67, 33, 0.98) 0%, rgba(0, 122, 43, 0.92) 44%, rgba(15, 118, 110, 0.88) 100%),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.09) 0 1px, transparent 1px 22px),
        linear-gradient(45deg, rgba(241, 181, 28, 0.2), rgba(255, 255, 255, 0));
    color: #fff;
    isolation: isolate;
}

.hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 150px;
    background:
        linear-gradient(0deg, #f5f8f2 0%, rgba(245, 248, 242, 0) 84%),
        repeating-linear-gradient(120deg, rgba(255, 255, 255, 0.2) 0 1px, transparent 1px 18px);
    pointer-events: none;
    z-index: 0;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    width: min(68vw, 980px);
    height: 100%;
    background:
        linear-gradient(115deg, transparent 0 22%, rgba(255, 255, 255, 0.16) 22% 23%, transparent 23% 42%, rgba(241, 181, 28, 0.24) 42% 43%, transparent 43%),
        linear-gradient(65deg, transparent 0 54%, rgba(255, 255, 255, 0.12) 54% 55%, transparent 55%);
    clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 100%);
    z-index: 0;
}

.hero-pattern {
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.12), transparent 32%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 84px),
        repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 84px);
    mask-image: linear-gradient(90deg, #000, rgba(0, 0, 0, 0.72) 56%, transparent 92%);
    animation: pattern-slide 20s linear infinite;
}

.hero-copy {
    position: relative;
    z-index: 2;
    animation: rise-in 620ms ease both;
}

.hero-kicker,
.hero-trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.hero-kicker {
    min-height: 36px;
    margin-bottom: 18px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: #fff8dd;
    font-size: 0.86rem;
    font-weight: 800;
    backdrop-filter: blur(10px);
}

.hero-copy h1,
.hero-copy .mud-typography-h1 {
    text-shadow: 0 14px 34px rgba(0, 0, 0, 0.22);
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.hero-trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.hero-trust-row span {
    min-height: 38px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(0, 38, 22, 0.22);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.84rem;
    font-weight: 800;
}

.hero-visual {
    position: relative;
    z-index: 2;
    min-height: 520px;
    display: grid;
    place-items: center;
    animation: rise-in 720ms ease both;
}

.worker-scene-card {
    position: relative;
    overflow: hidden;
    width: min(100%, 760px);
    aspect-ratio: 1710 / 919;
    border: 1px solid rgba(255, 255, 255, 0.46);
    border-radius: 8px;
    background: #163629;
    box-shadow: 0 32px 80px rgba(0, 32, 18, 0.38);
    transform: perspective(1200px) rotateY(-4deg) rotateX(1deg);
    animation: worker-card-float 6.5s ease-in-out infinite;
}

.worker-scene-card img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transform: scale(1.02);
}

.worker-scene-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(0, 52, 28, 0.22), transparent 34%, rgba(0, 0, 0, 0.08)),
        linear-gradient(0deg, rgba(0, 41, 24, 0.28), transparent 36%);
    pointer-events: none;
}

.worker-scene-shine {
    position: absolute;
    inset: -30% auto -30% -18%;
    width: 34%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transform: skewX(-16deg) translateX(-160%);
    animation: hero-shine 5.8s ease-in-out infinite;
}

.hero-float-card {
    position: absolute;
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.46);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.92);
    color: #193027;
    font-weight: 900;
    box-shadow: 0 18px 46px rgba(0, 32, 18, 0.22);
    backdrop-filter: blur(12px);
}

.hero-float-card .mud-icon-root {
    color: #008b2f;
}

.hero-float-card-top {
    top: 38px;
    left: 18px;
    animation: float-badge 4.6s ease-in-out infinite;
}

.hero-float-card-bottom {
    right: 18px;
    bottom: 56px;
    animation: float-badge 5.2s ease-in-out 600ms infinite;
}

.hero-panel {
    position: relative;
    z-index: 2;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    display: grid;
    gap: 16px;
    animation: rise-in 780ms ease both;
}

.service-card {
    --service-accent: #f1b51c;
    position: relative;
    overflow: hidden;
    min-height: 174px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.68);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(244, 251, 243, 0.91)),
        radial-gradient(circle at top right, color-mix(in srgb, var(--service-accent) 22%, transparent), transparent 46%);
    backdrop-filter: blur(12px);
    box-shadow: 0 18px 44px rgba(0, 57, 27, 0.18);
    transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.service-card-education {
    --service-accent: #f1b51c;
}

.service-card-marriage {
    --service-accent: #ef5da8;
}

.service-card-death {
    --service-accent: #38bdf8;
}

.service-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, var(--service-accent), #008b2f);
}

.service-card::after {
    content: "";
    position: absolute;
    inset: -60% auto auto -35%;
    width: 70%;
    aspect-ratio: 1;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.72), transparent);
    transform: rotate(28deg) translateX(-120%);
    transition: transform 520ms ease;
}

.service-card-glow {
    position: absolute;
    right: -42px;
    top: -42px;
    width: 118px;
    height: 118px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--service-accent) 34%, transparent);
    filter: blur(4px);
    opacity: 0.52;
    transition: transform 240ms ease, opacity 240ms ease;
}

.service-card-head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.service-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #193027;
    background: linear-gradient(135deg, var(--service-accent), #ffffff);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--service-accent) 32%, transparent);
}

.service-chip {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(0, 139, 47, 0.09);
    color: #008b2f;
    font-size: 0.78rem;
    font-weight: 800;
}

.service-title,
.service-summary,
.service-link {
    position: relative;
    z-index: 1;
}

.service-title {
    color: #193027;
    line-height: 1.18;
}

.service-summary {
    min-height: 40px;
    margin-top: 6px;
    color: #5d6f66;
}

.service-link {
    width: 100%;
    min-height: 42px;
    margin-top: 16px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 8px;
    color: #ffffff;
    background: linear-gradient(135deg, #008b2f, #0f766e);
    font-weight: 800;
    transition: background 180ms ease, transform 180ms ease;
}

.service-card:hover {
    transform: translateY(-7px) scale(1.015);
    border-color: rgba(255, 255, 255, 0.96);
    box-shadow: 0 26px 62px rgba(0, 45, 22, 0.28);
}

.service-card:hover::after {
    transform: rotate(28deg) translateX(260%);
}

.service-card:hover .service-card-glow {
    opacity: 0.78;
    transform: scale(1.18);
}

.service-card:hover .service-link {
    transform: translateX(2px);
    background: linear-gradient(135deg, #006d27, #008b2f);
}

.guide-page-header {
    display: flex;
    align-items: center;
    gap: 16px;
}

.guide-page-header > .mud-icon-root {
    width: 58px;
    height: 58px;
    padding: 13px;
    border-radius: 50%;
    background: #e7f5ec;
    color: #008b2f;
}

.guide-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: 24px;
}

.guide-built-in-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.guide-card {
    overflow: hidden;
    border: 1px solid #dce8d7;
    border-radius: 10px;
}

.guide-video,
.guide-pdf-preview {
    width: 100%;
    aspect-ratio: 16 / 9;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #102e23;
}

.guide-pdf-preview small {
    color: rgba(255, 255, 255, 0.82);
    font-weight: 600;
}

.guide-video {
    object-fit: contain;
}

.guide-pdf-preview {
    flex-direction: column;
    gap: 12px;
    color: #fff;
    background: linear-gradient(135deg, #b42318, #e14b3d);
    font-weight: 800;
}

.guide-card-copy {
    padding: 20px;
}

.guide-empty {
    display: grid;
    justify-items: center;
    gap: 8px;
    text-align: center;
}

.guide-upload-input {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px dashed #aac9b3;
    border-radius: 8px;
    background: #f7fbf6;
}

.page-shell {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
    padding: 32px 0 56px;
}

.form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.step-track {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 28px;
    padding: 12px;
    border: 1px solid #dce8d7;
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(244, 251, 243, 0.86)),
        repeating-linear-gradient(90deg, rgba(0, 139, 47, 0.06) 0 1px, transparent 1px 38px);
    overflow: hidden;
}

.step-track::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent, rgba(241, 181, 28, 0.22), transparent);
    transform: translateX(-100%);
    animation: step-shine 5s ease-in-out infinite;
    pointer-events: none;
}

.step-pill {
    position: relative;
    z-index: 1;
    min-height: 52px;
    border: 1px solid rgba(0, 139, 47, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.86);
    color: #5d6f66;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 8px 20px rgba(25, 48, 39, 0.05);
    transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.step-pill:hover {
    transform: translateY(-2px);
    border-color: rgba(0, 139, 47, 0.42);
    box-shadow: 0 12px 26px rgba(0, 139, 47, 0.12);
}

.step-pill span {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eaf4ea;
    color: #008b2f;
    font-size: 0.88rem;
}

.step-pill.active {
    background: linear-gradient(135deg, #007a2b, #00a13a);
    border-color: #008b2f;
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(0, 139, 47, 0.24);
}

.step-pill.active span,
.step-pill.done span {
    background: #f1b51c;
    color: #193027;
}

.step-pill.done {
    border-color: #008b2f;
    color: #008b2f;
    background: #f4fbf3;
}

.dashboard-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
    border-radius: 8px;
    border: 1px solid #dce8d7;
    background:
        linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,251,243,0.9)),
        linear-gradient(90deg, rgba(0,139,47,0.12), rgba(241,181,28,0.12));
    animation: rise-in 360ms ease both;
}

.dashboard-card-grid .mud-grid-item:nth-child(1) .dashboard-card { animation-delay: 40ms; }
.dashboard-card-grid .mud-grid-item:nth-child(2) .dashboard-card { animation-delay: 100ms; }
.dashboard-card-grid .mud-grid-item:nth-child(3) .dashboard-card { animation-delay: 160ms; }
.dashboard-card-grid .mud-grid-item:nth-child(4) .dashboard-card { animation-delay: 220ms; }

.dashboard-card {
    position: relative;
    overflow: hidden;
    min-height: 132px;
    padding: 20px;
    border: 1px solid #dce8d7;
    border-radius: 8px;
    background: #fff;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 14px 34px rgba(25, 48, 39, 0.08);
    animation: rise-in 420ms ease both;
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.dashboard-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 42px rgba(25, 48, 39, 0.12);
}

.dashboard-card::after {
    content: "";
    position: absolute;
    right: -42px;
    top: -52px;
    width: 132px;
    height: 132px;
    border-radius: 50%;
    background: rgba(0, 139, 47, 0.12);
}

.dashboard-card-submitted::after { background: rgba(56, 189, 248, 0.18); }
.dashboard-card-granted::after { background: rgba(18, 183, 106, 0.18); }
.dashboard-card-rejected::after { background: rgba(239, 68, 68, 0.14); }

.dashboard-card-icon {
    width: 54px;
    height: 54px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #008b2f, #0f766e);
}

.dashboard-panel {
    border: 1px solid #dce8d7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(25, 48, 39, 0.06);
    animation: rise-in 460ms ease both;
}

.users-page-header {
    gap: 18px;
}

.user-admin-panel {
    border: 1px solid #dce8d7;
    border-radius: 8px;
    background: #fff;
}

.user-action-grid {
    min-width: 520px;
    display: grid;
    grid-template-columns: 42px minmax(190px, 1fr) 42px minmax(220px, 1fr) 42px 42px;
    gap: 8px;
    align-items: center;
}

.role-edit-select,
.reset-password-input {
    min-width: 0;
}

@media (max-width: 900px) {
    .user-action-grid {
        min-width: 0;
        grid-template-columns: minmax(0, 1fr) repeat(2, 42px);
    }

    .role-edit-select,
    .reset-password-input {
        grid-column: 1 / -1;
    }
}

/* Phone layout: keep the navigation usable and prevent the landing page from
   inheriting desktop-sized type, gaps and decorative offsets. */
@media (max-width: 600px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    .wwf-topbar .mud-toolbar {
        min-height: 64px;
        gap: 4px;
        padding: 0 8px;
    }

    .wwf-topbar .mud-icon-button {
        flex: 0 0 auto;
        margin: 0;
    }

    .brand {
        flex: 0 0 auto;
        min-height: 44px;
        padding: 3px;
        border: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
    }

    .brand img {
        width: 40px;
        height: 40px;
    }

    .brand span,
    .topbar-secondary-action {
        display: none !important;
    }

    .language-switch {
        min-height: 34px;
        gap: 6px;
        padding: 0 9px;
        font-size: 0.75rem;
    }

    .language-switch-current {
        min-width: auto;
    }

    .topbar-primary-action.mud-button-root {
        min-width: 0;
        min-height: 36px;
        padding: 0 10px;
        font-size: 0.78rem;
    }

    .topbar-guide-action.mud-button-root {
        min-width: 36px;
        padding: 0 7px;
    }

    .topbar-guide-action .mud-button-label {
        width: 22px;
        overflow: hidden;
        color: transparent;
        font-size: 0;
    }

    .topbar-guide-action .mud-button-icon-start {
        margin: 0;
        color: #fff;
        font-size: 1.2rem;
    }

    .topbar-site-action.mud-button-root {
        min-width: 36px;
        padding: 0 7px;
    }

    .topbar-site-action .mud-button-label {
        width: 22px;
        overflow: hidden;
        color: transparent;
        font-size: 0;
    }

    .topbar-site-action .mud-button-icon-start {
        margin: 0;
        color: #fff;
        font-size: 1.2rem;
    }

    .wwf-main {
        padding-top: 64px;
    }

    .hero {
        min-height: auto;
        gap: 26px;
        padding: 28px 16px 44px;
    }

    .hero-copy {
        order: 1;
        min-width: 0;
        text-align: center;
    }

    .hero-kicker {
        max-width: 100%;
        min-height: 32px;
        margin-bottom: 14px;
        padding: 5px 10px;
        font-size: 0.74rem;
        line-height: 1.25;
    }

    .hero-copy h1,
    .hero-copy .mud-typography-h1 {
        font-size: clamp(2rem, 10vw, 2.65rem);
        line-height: 1.06;
        overflow-wrap: anywhere;
    }

    .hero-copy .mud-typography-h5 {
        margin-top: 14px !important;
        font-size: 1rem;
        line-height: 1.55;
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .hero-actions .mud-button-root {
        width: 100%;
        min-height: 48px;
    }

    .hero-trust-row {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 18px;
    }

    .hero-trust-row span {
        width: 100%;
        justify-content: center;
    }

    .hero-visual {
        order: 2;
        width: 100%;
        min-width: 0;
    }

    .worker-scene-card {
        width: 100%;
        border-radius: 8px;
        animation: none;
    }

    .hero-float-card {
        max-width: calc(100% - 16px);
        margin-top: -10px;
        font-size: 0.75rem;
    }

    .hero-float-card-bottom {
        margin-top: -30px;
    }

    .hero-panel {
        order: 3;
        gap: 12px;
    }

    .service-card {
        min-height: 0;
        padding: 18px;
    }

    .service-summary {
        min-height: 0;
    }

    .site-footer {
        align-items: center;
        flex-direction: column;
        gap: 6px;
        padding: 18px 16px;
        text-align: center;
    }

    .guide-page-header {
        align-items: flex-start;
    }

    .guide-page-header > .mud-icon-root {
        width: 46px;
        height: 46px;
        padding: 10px;
        flex: 0 0 auto;
    }

    .guide-page-header .mud-typography-h3 {
        font-size: 1.8rem;
    }

    .guide-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

@media (max-width: 380px) {
    .language-switch-current,
    .language-switch-divider {
        display: none;
    }

    .topbar-primary-action.mud-button-root {
        padding-inline: 8px;
    }

    .hero {
        padding-inline: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-pattern,
    .worker-scene-card,
    .worker-scene-shine,
    .hero-float-card,
    .hero-copy,
    .hero-panel {
        animation: none !important;
    }
}

.status-stack {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.status-row {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) minmax(120px, 1.4fr) 46px;
    gap: 12px;
    align-items: center;
}

.status-row strong,
.status-row span {
    display: block;
}

.status-row span,
.status-row em {
    color: #5d6f66;
    font-size: 0.82rem;
    font-style: normal;
}

.status-bar {
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: #e8f1e5;
}

.status-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #008b2f, #f1b51c);
    animation: bar-grow 700ms ease both;
}

.type-chart {
    min-height: 260px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
    gap: 18px;
    padding-top: 24px;
}

.type-bar {
    height: 230px;
    display: grid;
    grid-template-rows: 24px 1fr 24px;
    align-items: end;
    justify-items: center;
    gap: 8px;
}

.type-bar div {
    width: min(76px, 70%);
    height: var(--bar-height);
    min-height: 14px;
    border-radius: 8px 8px 2px 2px;
    background: linear-gradient(180deg, #f1b51c, #008b2f);
    box-shadow: 0 12px 28px rgba(0, 139, 47, 0.18);
    animation: chart-rise 720ms ease both;
}

.type-bar span {
    font-weight: 800;
    color: #008b2f;
}

.type-bar label {
    color: #5d6f66;
    font-size: 0.84rem;
    font-weight: 700;
}

.summary-list {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.summary-list div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 0;
    border-bottom: 1px solid #e5eee1;
}

.summary-list span {
    color: #5d6f66;
}

.summary-list strong {
    color: #008b2f;
}

.full-span {
    grid-column: 1 / -1;
}

.eligibility-box {
    border-color: #b9d9bc;
    background: linear-gradient(135deg, #ffffff 0%, #f4fbf3 100%);
}

.attachment-tile.required {
    border-color: #f0b8b8;
    background: #fffafa;
}

.attachment-tile.optional {
    border-color: #b9d9f2;
    background: #f7fbff;
}

.attachment-tile.attached {
    border-color: #12b76a;
    background: linear-gradient(135deg, #ecfdf3 0%, #ffffff 100%);
    box-shadow: 0 10px 24px rgba(18, 183, 106, 0.16);
}

.certificate-shell {
    background: #edf2eb;
}

.certificate-actions {
    max-width: 210mm;
    margin: 0 auto 18px;
}

.grant-certificate {
    width: 210mm;
    min-height: 297mm;
    margin: 0 auto;
    padding: 18mm;
    background: #fff;
    color: #17251e;
    border: 1px solid #d7e2d4;
    box-shadow: 0 18px 48px rgba(25, 48, 39, 0.14);
}

.certificate-header {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    padding-bottom: 16px;
    border-bottom: 3px solid #008b2f;
}

.certificate-header img {
    width: 96px;
    height: 96px;
    object-fit: contain;
}

.certificate-header h1,
.certificate-header h2,
.certificate-header p {
    margin: 0;
    letter-spacing: 0;
}

.certificate-header h1 {
    font-size: 28px;
    color: #008b2f;
}

.certificate-header p {
    margin-top: 4px;
    font-size: 13px;
    color: #5d6f66;
}

.certificate-header h2 {
    margin-top: 12px;
    font-size: 20px;
    text-transform: uppercase;
}

.certificate-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
    padding: 12px;
    border: 1px solid #dce8d7;
    background: #f7faf5;
    font-size: 13px;
}

.certificate-statement {
    margin: 22px 0;
    padding: 14px 16px;
    border-left: 5px solid #f1b51c;
    background: #fff9e8;
    font-size: 15px;
    line-height: 1.6;
}

.certificate-section {
    margin-top: 18px;
}

.certificate-section h3 {
    margin: 0 0 10px;
    color: #008b2f;
    font-size: 16px;
}

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

.certificate-grid div {
    min-height: 52px;
    padding: 9px 10px;
    border: 1px solid #dce8d7;
}

.certificate-grid label,
.certificate-table th {
    display: block;
    color: #5d6f66;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.certificate-grid span {
    display: block;
    margin-top: 4px;
    overflow-wrap: anywhere;
    font-size: 13px;
}

.certificate-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.certificate-table th,
.certificate-table td {
    padding: 8px 10px;
    border: 1px solid #dce8d7;
    text-align: left;
    vertical-align: top;
}

.certificate-table th {
    width: 36%;
    background: #f7faf5;
}

.certificate-footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 54px;
    margin-top: 36px;
    text-align: center;
}

.certificate-footer span {
    display: block;
    height: 44px;
    border-bottom: 1px solid #17251e;
}

.certificate-footer p {
    margin: 8px 0 0;
    font-size: 12px;
    font-weight: 800;
}

@page {
    size: A4;
    margin: 0;
}

@media print {
    html,
    body {
        width: 210mm;
        min-height: 297mm;
        background: #fff;
    }

    .wwf-topbar,
    .wwf-drawer,
    .certificate-actions {
        display: none !important;
    }

    .wwf-main {
        padding-top: 0;
    }

    .certificate-shell {
        padding: 0;
        background: #fff;
    }

    .grant-certificate {
        width: 210mm;
        min-height: 297mm;
        margin: 0;
        border: 0;
        box-shadow: none;
        page-break-after: always;
    }
}

.validation-list {
    margin: 0;
    padding-left: 18px;
}

.tracking-number {
    font-size: clamp(2rem, 8vw, 4.5rem);
    font-weight: 800;
    color: #008b2f;
    letter-spacing: 0;
}

.urdu {
    font-family: "Noto Nastaliq Urdu", serif;
    direction: rtl;
}

@keyframes rise-in {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes seal-float {
    0%, 100% {
        transform: translateY(0) rotate(-1deg);
    }

    50% {
        transform: translateY(-14px) rotate(1deg);
    }
}

@keyframes strip-glide {
    0%, 100% {
        transform: translateX(-12px);
        opacity: 0.55;
    }

    50% {
        transform: translateX(12px);
        opacity: 1;
    }
}

@keyframes worker-card-float {
    0%, 100% {
        transform: perspective(1200px) rotateY(-4deg) rotateX(1deg) translateY(0);
    }

    50% {
        transform: perspective(1200px) rotateY(-2deg) rotateX(1deg) translateY(-12px);
    }
}

@keyframes hero-shine {
    0%, 42% {
        transform: skewX(-16deg) translateX(-160%);
        opacity: 0;
    }

    52% {
        opacity: 1;
    }

    72%, 100% {
        transform: skewX(-16deg) translateX(420%);
        opacity: 0;
    }
}

@keyframes float-badge {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes slow-turn {
    to {
        transform: rotate(342deg);
    }
}

@keyframes pattern-slide {
    to {
        background-position: 168px 0, 0 168px;
    }
}

@keyframes step-shine {
    0%, 55% { transform: translateX(-110%); }
    100% { transform: translateX(110%); }
}

@keyframes bar-grow {
    from { width: 0; }
}

@keyframes chart-rise {
    from {
        height: 0;
        opacity: 0.4;
    }
}

.auth-page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 24px;
    background: linear-gradient(135deg, #007a2b, #0f766e);
}

.site-footer {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 24px;
    padding: 18px clamp(20px, 4vw, 56px);
    background: #153e2d;
    color: #eaf4ee;
    font-size: 0.875rem;
    line-height: 1.5;
}

.auth-footer {
    width: min(760px, 100%);
    border-radius: 8px;
    background: rgba(15, 45, 34, 0.9);
}

.auth-card {
    width: min(420px, 100%);
    display: grid;
    gap: 12px;
    padding: 32px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.2);
    animation: rise-in 500ms ease both;
}

.auth-logo {
    width: 92px;
    height: 92px;
    object-fit: contain;
    justify-self: center;
}

.auth-card h1 {
    margin: 0;
    text-align: center;
    font-size: 2rem;
}

.auth-card p {
    margin: 0 0 8px;
    color: #5d6f66;
    text-align: center;
}

.auth-card label {
    font-weight: 700;
}

.auth-card input {
    min-height: 46px;
    border: 1px solid #bfd2c3;
    border-radius: 8px;
    padding: 0 12px;
    font: inherit;
}

.auth-card button {
    min-height: 46px;
    border: 0;
    border-radius: 8px;
    background: #008b2f;
    color: #fff;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}

.auth-card a {
    color: #007a2b;
    text-align: center;
    font-weight: 700;
}

.auth-error {
    color: #b42318;
    font-size: 0.9rem;
}

.auth-success {
    color: #067647;
    background: #ecfdf3;
    border: 1px solid #abefc6;
    border-radius: 8px;
    padding: 10px 12px;
}

.login-body {
    background: #063f28;
}

.login-page {
    position: relative;
    min-height: 100vh;
    display: grid;
    grid-template-rows: 1fr auto;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 8%, rgba(241, 181, 28, 0.2), transparent 23rem),
        radial-gradient(circle at 92% 92%, rgba(24, 155, 139, 0.24), transparent 28rem),
        linear-gradient(135deg, #07552f 0%, #007a3b 46%, #0b665f 100%);
}

.login-page::before,
.login-page::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    pointer-events: none;
}

.login-page::before {
    width: 360px;
    height: 360px;
    top: -210px;
    right: 10%;
    box-shadow: 0 0 0 52px rgba(255, 255, 255, 0.025), 0 0 0 104px rgba(255, 255, 255, 0.018);
}

.login-page::after {
    width: 280px;
    height: 280px;
    bottom: -190px;
    left: 8%;
    box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.025);
}

.login-shell {
    position: relative;
    z-index: 1;
    width: min(1080px, calc(100% - 48px));
    min-height: 620px;
    margin: clamp(32px, 6vh, 70px) auto 28px;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, 0.95fr);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 26px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 32px 90px rgba(0, 36, 22, 0.34);
    backdrop-filter: blur(18px);
    animation: rise-in 500ms ease both;
}

.login-welcome {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 44px 48px;
    color: #fff;
    overflow: hidden;
}

.login-welcome::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -105px;
    bottom: -110px;
    border: 54px solid rgba(241, 181, 28, 0.12);
    border-radius: 50%;
}

.login-brand {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 13px;
    width: fit-content;
    max-width: 370px;
    font-size: 0.94rem;
    font-weight: 800;
    line-height: 1.35;
}

.login-logo-wrap {
    flex: 0 0 auto;
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    padding: 5px;
    border: 1px solid rgba(255, 255, 255, 0.36);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 10px 30px rgba(0, 30, 18, 0.22);
}

.login-brand-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.login-welcome-copy {
    position: relative;
    z-index: 1;
    margin: auto 0;
}

.login-eyebrow {
    display: inline-flex;
    padding: 7px 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: #f9d977;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.login-welcome h1 {
    max-width: 560px;
    margin: 22px 0 18px;
    font-size: clamp(2.25rem, 4.3vw, 3.7rem);
    line-height: 1.04;
    letter-spacing: -0.045em;
}

.login-welcome p {
    max-width: 480px;
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 1rem;
    line-height: 1.75;
}

.login-trust {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.78rem;
    font-weight: 700;
}

.login-trust b {
    display: inline-grid;
    width: 19px;
    height: 19px;
    margin-right: 5px;
    place-items: center;
    border-radius: 50%;
    background: #f1b51c;
    color: #16422f;
    font-size: 0.68rem;
}

.login-form-panel {
    display: grid;
    place-items: center;
    padding: 44px;
    background: rgba(250, 253, 250, 0.97);
}

.login-card {
    width: 100%;
    max-width: 390px;
    display: grid;
    gap: 18px;
}

.login-mobile-brand {
    display: none;
}

.login-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 4px;
}

.login-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: #e7f5ec;
    color: #007a3b;
    font-size: 1.6rem;
    font-weight: 900;
}

.login-heading h2 {
    margin: 0;
    color: #183329;
    font-size: 1.72rem;
    letter-spacing: -0.025em;
}

.login-heading p {
    margin: 4px 0 0;
    color: #6d7d76;
    font-size: 0.86rem;
}

.login-field {
    display: grid;
    gap: 7px;
}

.login-field label {
    color: #28473b;
    font-size: 0.83rem;
    font-weight: 800;
}

.login-field small {
    color: #7a8b83;
    font-size: 0.72rem;
}

.login-input-wrap {
    display: flex;
    align-items: center;
    min-height: 52px;
    padding: 0 14px;
    border: 1px solid #c7d7ce;
    border-radius: 12px;
    background: #fff;
    color: #779087;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

.login-input-wrap:focus-within {
    border-color: #008b47;
    box-shadow: 0 0 0 4px rgba(0, 139, 71, 0.11);
}

.login-input-wrap input {
    width: 100%;
    min-width: 0;
    min-height: 50px;
    padding: 0 0 0 11px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #19372b;
    font: inherit;
}

.login-input-wrap input::placeholder {
    color: #9aaca4;
}

.login-submit {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 19px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(110deg, #007a3b, #08936b);
    color: #fff;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 12px 25px rgba(0, 122, 59, 0.22);
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.login-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 28px rgba(0, 122, 59, 0.28);
}

.login-back {
    justify-self: center;
    color: #426257;
    font-size: 0.82rem;
    font-weight: 750;
}

.login-back:hover {
    color: #007a3b;
}

.login-summary:empty {
    display: none;
}

.login-footer {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px 16px;
    padding: 18px 24px 22px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(2, 39, 24, 0.28);
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.76rem;
    line-height: 1.5;
    text-align: center;
}

.login-footer strong {
    color: #f6d46d;
    font-weight: 800;
}

.login-footer-divider {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.42);
}

@media (max-width: 780px) {
    .login-shell {
        width: min(520px, calc(100% - 28px));
        min-height: auto;
        grid-template-columns: 1fr;
        margin: 18px auto;
        border-radius: 20px;
    }

    .login-welcome {
        display: none;
    }

    .login-form-panel {
        padding: 30px clamp(22px, 7vw, 38px);
    }

    .login-mobile-brand {
        display: flex;
        align-items: center;
        gap: 11px;
        margin-bottom: 4px;
        color: #1c4032;
        font-size: 0.8rem;
        font-weight: 800;
        line-height: 1.3;
    }

    .login-mobile-brand img {
        width: 48px;
        height: 48px;
        object-fit: contain;
    }

    .login-footer {
        padding: 14px 20px 18px;
    }

    .login-footer-divider {
        display: none;
    }
}

#blazor-error-ui {
    background: #fff3cd;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

@media (max-width: 900px) {
    .hero {
        grid-template-columns: 1fr;
        align-items: start;
        min-height: auto;
        padding-top: 40px;
    }

    .hero-visual {
        min-height: auto;
        order: -1;
    }

    .worker-scene-card {
        width: min(100%, 680px);
        transform: none;
    }

    .hero-float-card {
        position: static;
        justify-self: start;
        margin-top: -18px;
        min-height: 46px;
        padding: 0 12px;
        font-size: 0.82rem;
    }

    .hero-float-card-bottom {
        justify-self: end;
        margin-top: -36px;
    }

    .hero-panel {
        grid-template-columns: 1fr;
    }

    .form-grid {
        grid-template-columns: 1fr;
    }

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

    .dashboard-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .status-row {
        grid-template-columns: 1fr;
    }

    .type-chart {
        min-height: 220px;
        gap: 10px;
    }
}

/* Keep phone-specific ordering after the shared tablet rules above. */
@media (max-width: 600px) {
    .hero {
        padding: 28px 16px 44px;
    }

    .hero-copy {
        order: 1;
    }

    .hero-visual {
        order: 2;
    }

    .hero-float-card {
        margin-top: -10px;
        font-size: 0.75rem;
    }

    .hero-float-card-bottom {
        margin-top: -30px;
    }

    .hero-panel {
        order: 3;
    }

    .site-footer {
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        padding: 18px 16px;
        text-align: center;
    }
}

@media (max-width: 380px) {
    .hero {
        padding-inline: 12px;
    }
}
/* Public website */
.public-site{min-height:100vh;background:#fff;color:#173126}.public-container{width:min(1180px,calc(100% - 40px));margin:auto}.gov-strip{background:#063d29;color:#dcebe3;font-size:.76rem}.gov-strip .public-container{display:flex;justify-content:space-between;padding:8px 0}.public-header{background:#fff;box-shadow:0 2px 12px #0b2d1e14;position:relative;z-index:4}.public-brand-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.public-brand{display:flex;align-items:center;gap:14px;color:#173126;text-decoration:none}.public-brand img{width:66px;height:66px;object-fit:contain}.public-brand span{display:flex;flex-direction:column}.public-brand strong{font-size:1.28rem}.public-brand small{color:#697b72;margin-top:4px}.portal-button,.gold-button{display:inline-flex;align-items:center;gap:8px;background:#dba91d;color:#1d2c24!important;text-decoration:none;padding:12px 18px;border-radius:6px;font-weight:700}.public-nav{background:#08783e}.public-nav .public-container{display:flex;overflow:auto}.public-nav a{color:#fff;text-decoration:none;padding:14px 15px;white-space:nowrap;font-size:.9rem;font-weight:600}.public-nav a:hover{background:#075f34}.public-hero{height:530px;position:relative;display:flex;align-items:center;overflow:hidden;background:#0b4d32}.public-hero>img,.public-hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.public-hero-fallback{background:radial-gradient(circle at 75% 35%,#39a36b 0,transparent 28%),linear-gradient(115deg,#073d29,#0d7544)}.public-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#052e20ed 15%,#063d29b8 52%,#063d2926)}.public-hero-content{position:relative;color:#fff}.public-hero-content .eyebrow,.portal-cta span,.section-heading span,.page-banner span{color:#f5cc58;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.75rem}.public-hero-content h1{font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.05;max-width:780px;margin:14px 0}.public-hero-content p{font-size:1.16rem;max-width:650px;line-height:1.7;margin-bottom:28px}.service-band{background:#fff;box-shadow:0 8px 30px #19302714}.service-band .public-container{display:grid;grid-template-columns:repeat(4,1fr)}.service-band a{display:flex;align-items:center;gap:14px;padding:25px 20px;color:#173126;text-decoration:none;border-right:1px solid #e5ebe7}.service-band a:last-child{border:0}.service-band svg{color:#08783e;font-size:2rem}.service-band span{display:flex;flex-direction:column}.service-band small{color:#718078;margin-top:3px}.public-section{padding:80px 0}.public-section-soft{background:#f2f6f2}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-heading h2{font-size:2.2rem;margin:6px 0 0}.section-heading a,.text-link{color:#08783e;font-weight:700;text-decoration:none}.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.news-card{border:1px solid #e0e7e2;border-radius:10px;padding:25px;display:grid;grid-template-columns:65px 1fr;gap:18px}.news-date{border-right:2px solid #dba91d;display:flex;flex-direction:column}.news-date strong{font-size:1.9rem}.news-date span,.content-label{font-size:.72rem;text-transform:uppercase;color:#75827b;font-weight:700}.news-card h3{margin:6px 0}.news-card h3 a,.content-list h2 a{color:#173126;text-decoration:none}.news-card p{color:#66756d;margin-bottom:0}.notice-columns{display:grid;grid-template-columns:1fr 1fr;gap:50px}.notice-columns h3{display:flex;align-items:center;gap:10px;font-size:1.35rem}.notice-row{display:flex;justify-content:space-between;align-items:center;color:#1e342a;text-decoration:none;background:#fff;border-bottom:1px solid #dfe7e1;padding:17px}.notice-row span{display:flex;flex-direction:column;font-weight:650}.notice-row small{color:#75827b;margin-top:5px;font-weight:400}.portal-cta{background:#08783e;color:#fff;padding:55px 0}.portal-cta .public-container{display:flex;justify-content:space-between;align-items:center}.portal-cta h2{font-size:2rem;margin:5px 0}.portal-cta p{margin:0}.public-footer{background:#092f22;color:#d3dfd8;padding-top:60px}.public-footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:70px}.public-footer img{width:58px;float:left;margin-right:14px}.public-footer h3,.public-footer h4{color:#fff}.public-footer a{display:block;color:#d3dfd8;text-decoration:none;margin:10px 0}.public-copyright{text-align:center;border-top:1px solid #ffffff1f;margin-top:45px;padding:20px;font-size:.82rem}.page-banner{background:linear-gradient(115deg,#073d29,#0b7142);color:#fff;padding:58px 0}.page-banner h1{font-size:2.5rem;margin:8px 0}.page-banner p{margin:0;color:#dbe8e1}.content-list{display:grid;gap:16px}.content-list article{display:grid;grid-template-columns:80px 1fr;gap:22px;border:1px solid #dfe7e1;border-radius:9px;padding:24px}.list-date{display:flex;flex-direction:column;color:#08783e}.list-date strong{font-size:2rem}.content-list h2{margin:5px 0;font-size:1.35rem}.content-list p{color:#65746c}.deadline{display:inline-block;background:#e5f5ea;color:#08783e;border-radius:20px;padding:6px 12px;font-size:.8rem;font-weight:700}.deadline.closed{background:#eee;color:#777}.download-button{display:inline-flex;align-items:center;gap:6px;color:#fff;background:#08783e;padding:9px 14px;border-radius:5px;text-decoration:none;font-weight:700;margin-top:10px}.article-page{max-width:850px}.article-lead{font-size:1.25rem;color:#506159}.article-body{font-size:1.05rem;line-height:1.9}.album-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.album-card{border:1px solid #dfe7e1;border-radius:10px;overflow:hidden}.album-card>img,.video-cover{width:100%;height:270px;object-fit:cover}.video-cover{background:#0a4c33;display:grid;place-items:center;color:#f4c94e}.album-card>div:last-child{padding:22px}.album-card h2{margin:5px 0}.album-items{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.album-items img{width:72px;height:55px;object-fit:cover;border-radius:4px}.empty-public{padding:35px;border:1px dashed #b9c7be;color:#66766d;text-align:center;grid-column:1/-1}.admin-file{border:1px dashed #aab8b0;border-radius:6px;padding:14px;margin:14px 0}.admin-file label{display:block;font-weight:600;margin-bottom:8px}.slide-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.slide-admin-grid article{border:1px solid #ddd;border-radius:8px;overflow:hidden}.slide-admin-grid img{width:100%;height:150px;object-fit:cover}.slide-admin-grid article>div,.album-admin-list article{display:flex;justify-content:space-between;align-items:center;padding:12px}.album-admin-list article{border-bottom:1px solid #ddd}.album-admin-list article>div{display:flex;flex-direction:column}.album-admin-list span{color:#718078;font-size:.8rem}.settings-form{display:grid;gap:16px;max-width:700px}
@media(max-width:800px){.public-brand strong{font-size:1rem}.public-brand small{display:none}.portal-button{font-size:.75rem;padding:10px}.public-nav .public-container{width:100%}.public-hero{height:470px}.service-band .public-container{grid-template-columns:1fr 1fr}.news-grid,.notice-columns,.album-grid,.public-footer-grid{grid-template-columns:1fr}.portal-cta .public-container{align-items:flex-start;gap:25px;flex-direction:column}.public-section{padding:55px 0}.section-heading{align-items:flex-start;gap:15px;flex-direction:column}.public-footer-grid{gap:25px}.slide-admin-grid{grid-template-columns:1fr}}
@media(max-width:520px){.public-container{width:min(100% - 24px,1180px)}.public-brand img{width:48px;height:48px}.public-brand strong{max-width:170px}.public-hero-content h1{font-size:2.5rem}.service-band .public-container{grid-template-columns:1fr}.service-band a{border-right:0;border-bottom:1px solid #e5ebe7}.news-card,.content-list article{grid-template-columns:1fr}.news-date{border-right:0;border-bottom:2px solid #dba91d;padding-bottom:8px}}
/* Slideshow controls */
.slide-dots{display:flex;gap:8px;margin-top:28px}.slide-dots button{width:9px;height:9px;border:0;border-radius:10px;background:#ffffff88;cursor:pointer}.slide-dots button.active{width:28px;background:#f5cc58}

/* Public website motion and green gradient treatment */
.public-site {
    --green-deep: #052f20;
    --green-dark: #064a2d;
    --green: #08783e;
    --green-bright: #19a45d;
    --green-soft: #eaf7ee;
    --gold: #e1b331;
    background:
        radial-gradient(circle at 12% 18%, rgba(25, 164, 93, .07), transparent 25rem),
        #fff;
}

.gov-strip {
    background: linear-gradient(100deg, #032a1c, #075b36 55%, #08783e);
}

.public-header {
    background: linear-gradient(120deg, rgba(255,255,255,.98), rgba(239,250,243,.96));
    backdrop-filter: blur(12px);
}

.public-nav {
    background: linear-gradient(105deg, var(--green-deep), var(--green) 56%, #0a9150);
    position: relative;
    overflow: hidden;
}

.public-nav::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 25%, rgba(255,255,255,.1) 48%, transparent 70%);
    transform: translateX(-120%);
    animation: nav-shimmer 9s ease-in-out infinite;
    pointer-events: none;
}

.public-nav a {
    position: relative;
    transition: background-color .25s ease, transform .25s ease;
}

.public-nav a::after {
    content: "";
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 6px;
    height: 2px;
    border-radius: 2px;
    background: var(--gold);
    transform: scaleX(0);
    transition: transform .25s ease;
}

.public-nav a:hover { transform: translateY(-1px); }
.public-nav a:hover::after { transform: scaleX(1); }

.public-hero > img {
    animation: hero-image-in 1.1s cubic-bezier(.2,.8,.2,1) both, hero-drift 14s ease-in-out 1.1s infinite alternate;
}

.public-hero-shade {
    background:
        radial-gradient(circle at 78% 30%, rgba(25,164,93,.25), transparent 30%),
        linear-gradient(90deg, rgba(3,36,24,.96) 8%, rgba(5,71,42,.78) 56%, rgba(4,62,37,.18));
}

.public-hero-fallback {
    background:
        radial-gradient(circle at 76% 32%, rgba(54,207,123,.56), transparent 23%),
        radial-gradient(circle at 88% 70%, rgba(225,179,49,.16), transparent 18%),
        linear-gradient(120deg, var(--green-deep), #08783e 68%, #13a15a);
    background-size: 120% 120%;
    animation: gradient-breathe 9s ease-in-out infinite alternate;
}

.public-hero-content .eyebrow { animation: rise-in .65s .1s both; }
.public-hero-content h1 { animation: rise-in .75s .2s both; text-shadow: 0 12px 35px rgba(0,25,14,.25); }
.public-hero-content p { animation: rise-in .75s .32s both; }
.public-hero-content .gold-button, .public-hero-content .slide-dots { animation: rise-in .75s .44s both; }

.portal-button, .gold-button, .download-button {
    background: linear-gradient(135deg, #f2cf61, var(--gold));
    box-shadow: 0 10px 24px rgba(181,133,8,.22);
    transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.portal-button:hover, .gold-button:hover, .download-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 32px rgba(181,133,8,.3);
    filter: brightness(1.04);
}

.service-band a, .news-card, .notice-row, .content-list article, .album-card {
    transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease, border-color .3s ease;
}

.service-band a:hover {
    transform: translateY(-5px);
    background: linear-gradient(145deg, #fff, var(--green-soft));
    box-shadow: 0 16px 34px rgba(6,74,45,.12);
}

.service-band a:hover svg { animation: icon-pop .5s ease; }

.public-section {
    position: relative;
    background-image: radial-gradient(circle at 90% 10%, rgba(25,164,93,.055), transparent 24rem);
}

.public-section-soft {
    background:
        linear-gradient(135deg, rgba(234,247,238,.95), rgba(247,250,247,.96)),
        radial-gradient(circle at 15% 30%, rgba(25,164,93,.1), transparent 25rem);
}

.section-heading { animation: rise-in .7s ease both; }
.news-card, .content-list article, .album-card { animation: card-in .65s ease both; }
.news-card:nth-child(2), .content-list article:nth-child(2), .album-card:nth-child(2) { animation-delay: .08s; }
.news-card:nth-child(3), .content-list article:nth-child(3), .album-card:nth-child(3) { animation-delay: .16s; }
.news-card:nth-child(4), .content-list article:nth-child(4), .album-card:nth-child(4) { animation-delay: .24s; }

.news-card:hover, .content-list article:hover, .album-card:hover {
    transform: translateY(-7px);
    border-color: rgba(8,120,62,.35);
    box-shadow: 0 22px 48px rgba(5,67,39,.12);
}

.notice-row:hover {
    transform: translateX(7px);
    color: var(--green);
    box-shadow: 0 10px 24px rgba(5,67,39,.08);
}

.portal-cta, .page-banner {
    background:
        radial-gradient(circle at 82% 25%, rgba(35,190,105,.42), transparent 26%),
        linear-gradient(115deg, var(--green-deep), var(--green) 68%, #12a35a);
    background-size: 120% 120%;
    animation: gradient-breathe 10s ease-in-out infinite alternate;
}

.portal-cta .public-container, .page-banner .public-container { animation: rise-in .7s ease both; }
.public-footer { background: linear-gradient(135deg, #031f16, #073f29 70%, #075a34); }
.album-items img { transition: transform .25s ease, box-shadow .25s ease; }
.album-items img:hover { transform: scale(1.08); box-shadow: 0 9px 20px rgba(3,45,27,.22); }
.slide-dots button { transition: width .3s ease, background-color .3s ease, transform .2s ease; }
.slide-dots button:hover { transform: scale(1.25); }

@keyframes rise-in {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes card-in {
    from { opacity: 0; transform: translateY(20px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes hero-image-in {
    from { opacity: .35; transform: scale(1.08); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes hero-drift {
    from { transform: scale(1); }
    to { transform: scale(1.045) translate3d(-.6%, -.4%, 0); }
}

@keyframes gradient-breathe {
    from { background-position: 0% 50%; }
    to { background-position: 100% 50%; }
}

@keyframes nav-shimmer {
    0%, 60% { transform: translateX(-120%); }
    82%, 100% { transform: translateX(120%); }
}

@keyframes icon-pop {
    50% { transform: translateY(-4px) rotate(-4deg) scale(1.1); }
}

@media (prefers-reduced-motion: reduce) {
    .public-site *, .public-site *::before, .public-site *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}
/* Password-confirmed destructive action */
.secure-delete-backdrop{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:20px;background:rgba(4,25,16,.72);backdrop-filter:blur(5px);animation:delete-backdrop-in .18s ease both}.secure-delete-dialog{width:min(520px,100%);border-radius:14px!important;border-top:5px solid #c62828;animation:delete-dialog-in .24s cubic-bezier(.2,.8,.2,1) both}.secure-delete-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;margin-bottom:16px;background:#ffebee;color:#c62828}@keyframes delete-backdrop-in{from{opacity:0}to{opacity:1}}@keyframes delete-dialog-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}

.service-band .public-container{grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.service-band .public-container{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.service-band .public-container{grid-template-columns:1fr}}

/* Public marquee alert */
.website-alert-bar{position:relative;z-index:3;overflow:hidden;background:linear-gradient(105deg,#f2c94c,#e4ad20);color:#193027;border-bottom:1px solid rgba(84,62,5,.22);box-shadow:0 5px 18px rgba(87,62,0,.12)}.website-alert-bar>.public-container,.website-alert-bar.alert-preview{min-height:42px;display:flex;align-items:center;gap:10px}.website-alert-bar strong{text-transform:uppercase;font-size:.76rem;letter-spacing:.08em}.website-alert-window{min-width:0;flex:1;overflow:hidden;white-space:nowrap}.website-alert-window span{display:inline-block;min-width:100%;padding-left:100%;font-weight:700;animation:website-marquee 22s linear infinite}.website-alert-bar:hover .website-alert-window span{animation-play-state:paused}.alert-preview-panel{min-height:250px}.website-alert-bar.alert-preview{border-radius:7px;padding:0 12px;margin-top:16px}.alert-preview-empty{display:grid;place-items:center;min-height:120px;margin-top:16px;border:1px dashed #b6c3bb;border-radius:8px;color:#718078}@keyframes website-marquee{from{transform:translateX(0)}to{transform:translateX(-200%)}}@media(max-width:600px){.website-alert-bar>.public-container{width:calc(100% - 20px)}.website-alert-window span{animation-duration:16s}}@media(prefers-reduced-motion:reduce){.website-alert-window span{padding-left:0;animation:none;white-space:normal}}

/* Refined public brand */
.public-brand-row{padding:15px 0}.public-brand{gap:17px}.public-brand-logo{position:relative;width:76px;height:76px;display:grid!important;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff 42%,#e9f8ee 70%,rgba(19,155,83,.18));box-shadow:0 9px 24px rgba(4,91,47,.15),inset 0 0 0 1px rgba(8,120,62,.1);animation:brand-float 4s ease-in-out infinite}.public-brand-logo::before{content:"";position:absolute;inset:-4px;border:1px solid rgba(18,151,79,.22);border-radius:50%;animation:brand-ring 3.2s ease-in-out infinite}.public-brand-logo img{width:65px;height:65px;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(4,72,39,.13));transition:transform .35s ease}.public-brand:hover .public-brand-logo img{transform:scale(1.055) rotate(-1.5deg)}.public-brand-title strong{font-size:clamp(1.2rem,2vw,1.62rem);font-weight:850;letter-spacing:-.025em;line-height:1.12;background:linear-gradient(105deg,#063e29,#08783e 58%,#15a25a);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 5px 18px rgba(7,103,55,.08)}.public-brand-title::after{content:"";width:72px;height:3px;margin-top:8px;border-radius:5px;background:linear-gradient(90deg,#e1b331,#f2d36d);box-shadow:0 3px 9px rgba(190,141,10,.22);transition:width .35s ease}.public-brand:hover .public-brand-title::after{width:118px}@keyframes brand-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes brand-ring{0%,100%{transform:scale(.97);opacity:.45}50%{transform:scale(1.06);opacity:.85}}@media(max-width:600px){.public-brand{gap:10px}.public-brand-logo{width:58px;height:58px}.public-brand-logo img{width:50px;height:50px}.public-brand-title strong{max-width:190px;font-size:1rem}.public-brand-title::after{margin-top:5px;width:48px}}

/* Mobile public website */
.public-mobile-actions{display:flex;align-items:center;gap:10px}.public-menu-button{display:none;width:44px;height:44px;border:0;border-radius:10px;background:linear-gradient(135deg,#08783e,#07542f);color:#fff;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 7px 18px rgba(5,91,47,.2)}
@media(max-width:760px){
    html,body{overflow-x:hidden}.public-site{overflow-x:hidden}.public-container{width:calc(100% - 28px)}
    .public-brand-row{min-height:76px;padding:9px 0;gap:8px}.public-brand{min-width:0;flex:1}.public-brand-title{min-width:0}.public-brand-title strong{display:block;max-width:175px;font-size:.96rem;line-height:1.18}.public-brand-title::after{height:2px;margin-top:4px}.public-brand-logo{flex:0 0 auto;width:54px;height:54px}.public-brand-logo img{width:47px;height:47px}.public-brand-logo::before{inset:-2px}
    .public-mobile-actions{gap:7px}.portal-button{width:44px;height:44px;padding:0;justify-content:center;border-radius:10px}.portal-button span{display:none}.portal-button svg{font-size:1.3rem}.public-menu-button{display:flex}
    .public-nav{max-height:0;opacity:0;overflow:hidden;transition:max-height .35s ease,opacity .25s ease;background:linear-gradient(145deg,#052f20,#08783e)}.public-nav.open{max-height:580px;opacity:1;box-shadow:0 18px 35px rgba(2,37,22,.24)}.public-nav .public-container{width:100%;display:grid;grid-template-columns:1fr 1fr;padding:8px}.public-nav a{min-height:48px;display:flex;align-items:center;padding:12px 14px;border-radius:7px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9rem}.public-nav a::after{display:none}.public-nav a:active{background:rgba(255,255,255,.14);transform:scale(.98)}
    .website-alert-bar>.public-container{min-height:38px}.website-alert-bar svg{font-size:1.15rem}.website-alert-window span{font-size:.84rem}
    .public-hero{height:440px;min-height:0;align-items:flex-end}.public-hero-content{padding-bottom:42px}.public-hero-content .eyebrow{font-size:.67rem;letter-spacing:.1em}.public-hero-content h1{font-size:clamp(2rem,10vw,3rem);line-height:1.08;margin:10px 0 12px}.public-hero-content p{font-size:.96rem;line-height:1.55;margin-bottom:21px}.public-hero-content .gold-button{min-height:46px;padding:11px 16px}.slide-dots{margin-top:20px}
    .service-band .public-container{width:100%;grid-template-columns:1fr 1fr}.service-band a{min-height:92px;padding:16px 14px;border-bottom:1px solid #e5ebe7}.service-band svg{font-size:1.65rem}.service-band strong{font-size:.86rem}.service-band small{font-size:.72rem}
    .public-section{padding:48px 0}.section-heading{margin-bottom:24px}.section-heading h2{font-size:1.7rem;line-height:1.15}.section-heading>a{font-size:.88rem}.news-grid{gap:13px}.news-card{padding:18px;gap:12px}.news-card h3{font-size:1.08rem}.news-card p{font-size:.9rem;line-height:1.5}.notice-columns{gap:32px}.notice-row{min-height:64px;padding:14px}.notice-row span{font-size:.9rem}
    .page-banner{padding:40px 0}.page-banner h1{font-size:2rem;line-height:1.15}.page-banner p{font-size:.92rem;line-height:1.55}.content-list article{padding:18px;gap:12px}.content-list h2{font-size:1.15rem}.content-list p{font-size:.9rem}.download-button{max-width:100%;white-space:normal}
    .album-grid{gap:17px}.album-card>img,.video-cover{height:220px}.album-card>div:last-child{padding:17px}.album-card h2{font-size:1.3rem}.album-items img{width:64px;height:50px}
    .portal-cta{padding:42px 0}.portal-cta h2{font-size:1.65rem}.portal-cta p{line-height:1.55}.portal-cta .gold-button{width:100%;justify-content:center}
    .public-footer{padding-top:42px}.public-footer-grid{gap:30px}.public-footer img{width:50px}.public-footer h3{font-size:1.05rem}.public-footer p,.public-footer a{font-size:.9rem}.public-copyright{padding:17px 14px;font-size:.74rem;line-height:1.5}
}
@media(max-width:390px){.public-container{width:calc(100% - 20px)}.public-brand-title strong{max-width:145px;font-size:.86rem}.public-brand-logo{width:48px;height:48px}.public-brand-logo img{width:42px;height:42px}.public-nav .public-container{grid-template-columns:1fr}.public-hero{height:420px}.public-hero-content h1{font-size:2.05rem}.service-band .public-container{grid-template-columns:1fr}.service-band a{min-height:72px}.news-date strong{font-size:1.55rem}}

/* Public complaint system */
.leadership-section{position:relative;overflow:hidden;padding:82px 0 88px;background:linear-gradient(145deg,#f7fbf8,#edf7f0)}.leadership-section::before{content:"";position:absolute;width:420px;height:420px;left:-180px;top:-210px;border-radius:50%;background:rgba(8,120,62,.07)}.leadership-section::after{content:"";position:absolute;width:340px;height:340px;right:-170px;bottom:-190px;border-radius:50%;background:rgba(225,179,49,.11)}.leadership-section .public-container{position:relative;z-index:1}.leadership-heading{text-align:center;max-width:690px;margin:0 auto 38px}.leadership-heading>span,.leader-kicker{color:#08783e;text-transform:uppercase;letter-spacing:.13em;font-size:.73rem;font-weight:850}.leadership-heading h2{margin:8px 0 10px;font-size:clamp(2rem,4vw,2.8rem);line-height:1.12}.leadership-heading p{margin:0;color:#64756c;line-height:1.65}.leadership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.leadership-card{min-height:345px;display:grid;grid-template-columns:minmax(180px,42%) 1fr;overflow:hidden;border:1px solid rgba(8,120,62,.13);border-radius:22px;background:#fff;box-shadow:0 18px 48px rgba(5,67,39,.1);transition:transform .3s ease,box-shadow .3s ease}.leadership-card:hover{transform:translateY(-7px);box-shadow:0 26px 58px rgba(5,67,39,.16)}.leader-photo-wrap{position:relative;min-height:345px;background:linear-gradient(145deg,#dcefe3,#b9dec8)}.leader-photo-wrap>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center top}.leader-photo-placeholder{height:100%;display:grid;place-items:center;color:#08783e}.leader-photo-placeholder svg{font-size:7rem;opacity:.35}.leader-quote-mark{position:absolute;right:-20px;top:28px;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#f2cf61,#ddb020);color:#153025;font-family:Georgia,serif;font-size:2.8rem;line-height:1;padding-top:12px;box-shadow:0 10px 22px rgba(126,91,0,.22)}.leader-message{padding:38px 30px 30px;display:flex;flex-direction:column}.leader-message blockquote{margin:16px 0 24px;color:#455b50;font-family:Georgia,'Times New Roman',serif;font-size:1rem;line-height:1.78;font-style:italic;flex:1}.leader-identity{padding-top:17px;border-top:1px solid #e3ebe6;display:flex;flex-direction:column}.leader-identity strong{font-size:1.08rem;color:#173126}.leader-identity small{margin-top:4px;color:#08783e;font-weight:700}.leader-admin-intro{padding:22px 22px 4px}.leader-admin-card{height:100%;border-top:4px solid #08783e!important}.leader-admin-title{display:flex;align-items:center;gap:10px}.leader-admin-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e4f4e9;color:#08783e;font-weight:800}.leader-admin-preview{width:100%;height:220px;margin-top:16px;border-radius:12px;object-fit:cover;object-position:center top;background:#e5eee8}
@media(max-width:1000px){.leadership-card{grid-template-columns:1fr}.leader-photo-wrap{min-height:330px}.leader-quote-mark{right:24px;top:auto;bottom:-26px}.leader-message{padding-top:44px}}
@media(max-width:700px){.leadership-section{padding:55px 0 60px}.leadership-heading{margin-bottom:28px}.leadership-grid{grid-template-columns:1fr;gap:20px}.leadership-card{border-radius:17px}.leader-photo-wrap{min-height:360px}.leader-message{padding:42px 23px 24px}.leader-message blockquote{font-size:.97rem}.leader-admin-card{padding:18px!important}}

.complaint-home-cta{padding:34px 0;background:linear-gradient(125deg,#052f20,#08783e 66%,#13a45b);color:#fff}.complaint-home-cta .public-container{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}.complaint-home-icon{width:78px;height:78px;display:grid;place-items:center;border-radius:22px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22)}.complaint-home-icon svg{font-size:2.4rem}.complaint-home-cta span{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#f1cd59}.complaint-home-cta h2{margin:4px 0 6px;font-size:clamp(1.45rem,2.5vw,2.15rem)}.complaint-home-cta p{margin:0;max-width:680px;color:rgba(255,255,255,.78)}.complaint-home-actions{display:flex;gap:10px;flex-wrap:wrap}.complaint-track-button{display:inline-flex;align-items:center;padding:12px 18px;border:1px solid rgba(255,255,255,.55);border-radius:7px;color:#fff;font-weight:750}.complaint-track-button:hover{background:rgba(255,255,255,.12)}.complaint-heading{display:flex;align-items:center;gap:17px}.complaint-heading-icon{flex:0 0 auto;width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#e6f7ec,#d5f0df);color:#08783e}.complaint-heading-icon svg{font-size:1.8rem}.complaint-section-title{padding:10px 14px;border-left:4px solid #08783e;border-radius:0 7px 7px 0;background:#edf8f1}.complaint-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;margin-top:4px}.complaint-success{text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.complaint-search{max-width:760px}.complaint-search .mud-input-control{flex:1}.complaint-result{border-top:4px solid #08783e!important}@media(max-width:760px){.complaint-home-cta .public-container{grid-template-columns:1fr;text-align:center}.complaint-home-icon{margin:auto}.complaint-home-actions{justify-content:center}.complaint-options{grid-template-columns:1fr}.complaint-heading{align-items:flex-start}.complaint-search{flex-direction:column!important;align-items:stretch!important}.complaint-search button{width:100%}}
