:root{--navy:#063c4a;--deep:#032a35;--teal:#0d7f82;--light:#e6f5f4;--gold:#d6a936;--ink:#18323a;--muted:#607278;--line:#d8e3e4;--bg:#f4f8f8;--white:#fff;--danger:#a63f38;--shadow:0 12px 34px rgba(5,47,59,.09);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.62}a{color:var(--teal);text-underline-offset:.18em}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 32px));margin:auto}.narrow{width:min(720px,calc(100% - 32px))}.prose{text-align:justify;text-align-last:left;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word}.skip{position:fixed;left:8px;top:8px;transform:translateY(-150%);background:#fff;padding:.6rem 1rem;z-index:999}.skip:focus{transform:none}.site-header{position:sticky;top:0;z-index:100;background:rgba(3,42,53,.97);color:#fff;box-shadow:0 2px 16px rgba(0,0,0,.16)}.header-inner{width:min(1240px,calc(100% - 32px));margin:auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.brand strong,.brand small{display:block}.brand small{font-size:.76rem;color:#c9e8e5}.drop{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--teal)}.site-header nav{display:flex;gap:18px}.site-header nav a{color:#eef8f7;text-decoration:none;font-weight:800}.menu{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:10px;padding:.5rem .7rem}.hero{padding:68px 0;background:radial-gradient(circle at 85% 10%,rgba(58,185,177,.22),transparent 30%),linear-gradient(135deg,var(--deep),var(--navy));color:#fff}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.hero h1,.page-hero h1,.bulletin-hero h1{line-height:1.08;letter-spacing:-.035em}.hero h1{font-size:clamp(2.5rem,5vw,4.7rem);margin:.2em 0}.hero img,.bulletin-hero img{border-radius:22px;box-shadow:0 22px 60px rgba(0,0,0,.28)}.eyebrow{margin:0 0 .45rem;color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.78rem 1rem;border:0;border-radius:12px;text-decoration:none;font-weight:850;cursor:pointer}.primary{background:var(--gold);color:#1b210c}.secondary{background:var(--light);color:var(--navy);border:1px solid #a8d4d0}.ghost{background:rgba(255,255,255,.05);color:#fff;border:1px solid rgba(255,255,255,.5)}.small{min-height:40px;padding:.62rem .82rem}.block{width:100%}.filters{position:relative;z-index:2;margin-top:-26px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.filter-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr) auto;gap:14px;align-items:end}label>span,legend{display:block;margin-bottom:.4rem;color:var(--navy);font-weight:800}input,select,textarea{width:100%;padding:.78rem .85rem;border:1px solid #b8c9cb;border-radius:11px;background:#fff;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid rgba(13,127,130,.25);outline-offset:2px}.section{padding:54px 0}.heading,.admin-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.heading h2,.admin-head h1{margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card,.form-card,.empty,.side-card,.detail-main>section,.closed-box,.notice,.promo-grid article,.bulletin-card,.share-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{display:flex;flex-direction:column;padding:21px}.top{display:flex;justify-content:space-between;gap:10px;align-items:center}.badge,.pill{display:inline-flex;width:max-content;border-radius:999px;padding:.28rem .62rem;font-size:.76rem;font-weight:900;text-transform:uppercase}.badge.open{background:#eaf7ef;color:#267348}.badge.closing{background:#fff4d8;color:#8b6513}.badge.closed{background:#fff0ed;color:var(--danger)}.pill{background:var(--light);color:var(--navy)}.card h2{font-size:1.24rem;line-height:1.25}.card h2 a{color:var(--navy);text-decoration:none}.org{color:var(--teal);font-weight:800}.meta{display:grid;gap:4px;margin:10px 0;color:var(--muted);font-size:.88rem}.card .prose{flex:1}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.page-hero{padding:52px 0;background:linear-gradient(145deg,#e6f5f4,#f8fbfb)}.page-hero.dark{background:linear-gradient(145deg,var(--deep),var(--navy));color:#fff}.page-hero h1{font-size:clamp(2.2rem,4vw,4rem)}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start;padding:48px 0}.detail-main{display:grid;gap:22px}.detail-main>section,.closed-box,.notice,.share-box,.side-card{padding:23px}.detail-main h2,.side-card h2{margin-top:0;color:var(--navy)}.closed-box{background:#fff0ed;border-color:#edc2bd}.notice{background:#fff8e5;border-color:#ead59d}.detail-layout aside{display:grid;gap:18px;position:sticky;top:92px}.side-card dl{margin:0 0 18px}.side-card dt{margin-top:10px;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.side-card dd{margin:2px 0;font-weight:700}.whatsapp{background:#25d366;color:#082d15}.linkedin{background:#0a66c2;color:#fff}.facebook{background:#1877f2;color:#fff}.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:10px 0 60px}.promo-grid article{padding:25px}.network{padding:46px 0;background:linear-gradient(145deg,#dff4f2,#f8fcfc);border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}footer{padding-top:36px;background:var(--deep);color:#dceeed}footer a{color:#dceeed}.footnote{margin:28px 0 0;padding:14px;text-align:center;background:rgba(0,0,0,.18);color:#bcd4d2}.empty{padding:32px;text-align:center}.form-card{padding:25px}.form-card label,.form-card fieldset{display:block;margin-bottom:17px}.check{display:flex!important;align-items:flex-start;gap:9px}.check input{width:auto;margin-top:.3rem}.check span{flex:1}.check small{display:block;color:var(--muted)}fieldset{border:1px solid var(--line);border-radius:14px;padding:17px}.flash{width:min(1180px,calc(100% - 32px));margin:14px auto;padding:12px 15px;border-radius:12px;font-weight:700}.flash.error{background:#fff0ed;color:var(--danger)}.flash.success{background:#eaf7ef;color:#267348}.admin-page .network{display:none}.admin-head{margin-bottom:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.stats div{display:grid;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.stats strong{font-size:2rem;color:var(--navy)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.table-wrap{margin-top:22px;overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}table{width:100%;min-width:780px;border-collapse:collapse}th,td{padding:13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}td small{display:block;color:var(--muted)}.table-actions{display:flex;flex-wrap:wrap;gap:9px}.table-actions form{display:inline}.table-actions button,.text-button{border:0;background:transparent;color:var(--teal);padding:0;text-decoration:underline;cursor:pointer}.selection-list{display:grid;gap:9px;max-height:520px;overflow:auto}.selection{padding:11px;background:#f8fbfb;border:1px solid var(--line);border-radius:11px}.bulletin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bulletin-card{overflow:hidden}.bulletin-card img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover}.bulletin-card>div{padding:21px}.bulletin-hero{padding:44px 0;background:#eaf7f6;text-align:center}.bulletin-hero img{width:min(760px,100%)}.bulletin-hero .prose{max-width:800px;margin:auto}.share-box{margin-top:28px}
@media(max-width:1040px){.filter-grid{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.hero img{width:min(760px,100%)}}
@media(max-width:820px){.menu{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:72px;flex-direction:column;background:var(--deep);padding:10px 16px}.site-header nav.open{display:flex}.site-header nav a{padding:10px;border-bottom:1px solid rgba(255,255,255,.1)}.detail-layout{grid-template-columns:1fr}.detail-layout aside{position:static}.split{grid-template-columns:1fr}}
@media(max-width:640px){.container,.narrow,.header-inner,.flash{width:min(100% - 22px,100%)}.header-inner{min-height:64px}.site-header nav{top:64px}.hero{padding:44px 0}.hero h1{font-size:clamp(2.2rem,11vw,3.3rem)}.prose{line-height:1.72}.filters{margin-top:-18px;padding:17px}.filter-grid,.grid,.promo-grid,.bulletin-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.section{padding:40px 0}.heading,.admin-head{align-items:flex-start;flex-direction:column}.actions .button{width:100%}.card-actions{flex-direction:column;align-items:stretch}.card-actions .button,.card-actions a{text-align:center}.stats{grid-template-columns:1fr 1fr}.detail-main>section,.closed-box,.notice,.side-card,.form-card,.empty,.promo-grid article,.share-box{padding:18px}}

/* =========================================================
   RICH WATER OPPORTUNITY FORM + DETAILED PUBLIC CARDS
   Version: 2026-07-12-rich1
   ========================================================= */

.rich-opportunity-form > summary {
    display: grid;
    gap: 4px;
    cursor: pointer;
    color: var(--navy);
}

.rich-opportunity-form > summary small,
.field-note {
    color: var(--muted);
    font-weight: 500;
}

.rich-opportunity-form form {
    margin-top: 22px;
}

.opportunity-section {
    margin: 0 0 22px !important;
    padding: 20px;
    background: #fbfdfd;
}

.opportunity-section legend {
    color: var(--navy);
    font-size: 1rem;
    font-weight: 900;
    padding-inline: 7px;
}

.opportunity-section > label {
    margin-bottom: 17px;
}

.opportunity-section textarea {
    min-height: 120px;
}

.current-image {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    margin-top: 16px;
    padding: 14px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
}

.current-image img {
    width: 180px;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    border-radius: 10px;
}

.publish-actions {
    position: sticky;
    bottom: 0;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 16px;
    margin: 24px -25px -25px;
    background: rgba(255, 255, 255, .96);
    border-top: 1px solid var(--line);
    border-radius: 0 0 var(--radius) var(--radius);
    backdrop-filter: blur(10px);
}

.publish-now,
.apply-button {
    background: #d6a936;
    color: #172108;
}

.rich-card {
    gap: 10px;
}

.card-public-status,
.public-status {
    display: inline-flex;
    width: fit-content;
    padding: .28rem .62rem;
    border-radius: 999px;
    background: #fff4d8;
    color: #7b5a0d;
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.card-subtitle,
.detail-subtitle {
    margin: -.2rem 0 .35rem;
    color: #304c55;
    font-weight: 750;
}

.card-source,
.source-name {
    margin: -.2rem 0 .35rem;
    color: var(--muted);
    font-size: .9rem;
}

.card-detail-grid,
.detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin: 6px 0 10px;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
}

.card-detail-grid > div,
.detail-grid > div {
    min-width: 0;
    padding: 9px 11px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: #fbfdfd;
}

.card-detail-grid > div:nth-child(even),
.detail-grid > div:nth-child(even) {
    border-right: 0;
}

.card-detail-grid > div.wide {
    grid-column: 1 / -1;
    border-right: 0;
}

.card-detail-grid dt,
.detail-grid dt {
    color: var(--muted);
    font-size: .71rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.card-detail-grid dd,
.detail-grid dd {
    margin: 2px 0 0;
    color: var(--ink);
    font-weight: 750;
    overflow-wrap: anywhere;
}

.card-rich-text {
    padding: 11px 13px;
    background: #f7fbfb;
    border-left: 4px solid var(--teal);
    border-radius: 8px;
}

.card-rich-text.suitable {
    border-left-color: #d6a936;
    background: #fffaf0;
}

.card-rich-text p {
    margin: 5px 0 0;
}

.rich-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rich-actions .button {
    width: 100%;
    text-align: center;
}

.rich-detail-hero .top {
    justify-content: flex-start;
    flex-wrap: wrap;
}

.rich-detail-hero .detail-subtitle {
    max-width: 920px;
    color: #d7ecea;
    font-size: 1.1rem;
}

.rich-detail-hero .source-name {
    color: #bdd8d6;
}

.opportunity-image {
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.opportunity-image img {
    display: block;
    width: 100%;
    max-height: 520px;
    object-fit: cover;
}

.source-button {
    margin-top: 10px;
}

@media (min-width: 1041px) {
    .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .opportunity-section {
        padding: 16px;
    }

    .current-image {
        grid-template-columns: 1fr;
    }

    .current-image img {
        width: 100%;
    }

    .publish-actions {
        position: static;
        margin: 20px -18px -18px;
    }

    .publish-actions .button,
    .rich-actions .button {
        width: 100%;
    }

    .rich-actions {
        grid-template-columns: 1fr;
    }

    .card-detail-grid,
    .detail-grid {
        grid-template-columns: 1fr;
    }

    .card-detail-grid > div,
    .detail-grid > div,
    .card-detail-grid > div:nth-child(even),
    .detail-grid > div:nth-child(even) {
        border-right: 0;
    }
}
/* /RICH WATER OPPORTUNITY FORM + DETAILED PUBLIC CARDS */

/* AQL_PUBLIC_CARD_NEW_FORM_SLOTS_CSS */
.opportunity-card,
.opp-card {
    position: relative;
}

.aqopp-card-new-slots {
    display: grid;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #dbe7ec;
    min-width: 0;
}

.aqopp-card-featured {
    width: fit-content;
    max-width: 100%;
    padding: 7px 11px;
    border: 1px solid #d7a91e;
    border-radius: 999px;
    background: #fff8d9;
    color: #6f5200;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.opportunity-card:has(.aqopp-card-featured),
.opp-card:has(.aqopp-card-featured) {
    border-color: #d7a91e;
    box-shadow: 0 16px 38px rgba(102, 75, 0, .14);
}

.aqopp-card-slot {
    min-width: 0;
}

.aqopp-card-slot strong {
    display: block;
    margin-bottom: 4px;
    color: #12345b;
    font-size: .82rem;
}

.aqopp-card-slot p {
    margin: 0;
    color: #425d70;
    font-size: .91rem;
    line-height: 1.58;
    overflow-wrap: anywhere;
}

.aqopp-card-benefits {
    padding: 12px;
    border: 1px solid #cfe8df;
    border-radius: 12px;
    background: #f2fbf8;
}

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

.aqopp-card-fact-grid > div {
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid #e2eaee;
    border-radius: 10px;
    background: #f8fbfc;
}

.aqopp-card-fact-grid dt {
    margin: 0 0 3px;
    color: #5b7180;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.aqopp-card-fact-grid dd {
    margin: 0;
    color: #18394e;
    font-size: .84rem;
    font-weight: 750;
    line-height: 1.42;
    overflow-wrap: anywhere;
}

.aqopp-card-more-information {
    border: 1px solid #dce6eb;
    border-radius: 11px;
    background: #ffffff;
}

.aqopp-card-more-information summary {
    padding: 10px 12px;
    color: #0f5964;
    font-size: .84rem;
    font-weight: 850;
    cursor: pointer;
}

.aqopp-card-more-information[open] {
    padding-bottom: 12px;
}

.aqopp-card-more-information[open] summary {
    margin-bottom: 10px;
    border-bottom: 1px solid #e5ecef;
}

.aqopp-card-more-information .aqopp-card-slot {
    padding: 0 12px 10px;
}

.aqopp-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.aqopp-card-tags span {
    display: inline-flex;
    max-width: 100%;
    padding: 6px 9px;
    border-radius: 999px;
    background: #e9f5f6;
    color: #0b5e67;
    font-size: .73rem;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.aqopp-card-verified {
    margin: 0;
    color: #607381;
    font-size: .76rem;
    line-height: 1.45;
}

@media (max-width: 680px) {
    .aqopp-card-new-slots {
        gap: 10px;
        margin-top: 14px;
        padding-top: 14px;
    }

    .aqopp-card-fact-grid {
        grid-template-columns: 1fr;
    }
}
/* AQL_PUBLIC_CARD_NEW_FORM_SLOTS_CSS_END */

/* AQL_CATEGORY_CARD_NEW_SLOTS_V5_CSS */
.aqopp-category-card-slots {
    display: grid;
    gap: 11px;
    min-width: 0;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #dbe7ec;
}

.aqopp-category-featured {
    width: fit-content;
    max-width: 100%;
    padding: 7px 11px;
    border: 1px solid #d9ae2c;
    border-radius: 999px;
    background: #fff8da;
    color: #6a5000;
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.aqopp-category-short-description,
.aqopp-category-benefits {
    min-width: 0;
    padding: 12px 13px;
    border-radius: 11px;
}

.aqopp-category-short-description {
    border: 1px solid #cfe0ef;
    background: #f5f9fd;
}

.aqopp-category-benefits {
    border: 1px solid #cfe8df;
    background: #f2fbf8;
}

.aqopp-category-short-description strong,
.aqopp-category-benefits strong {
    display: block;
    margin-bottom: 4px;
    color: #123f59;
    font-size: .8rem;
}

.aqopp-category-short-description p,
.aqopp-category-benefits p {
    margin: 0;
    color: #345568;
    font-size: .92rem;
    line-height: 1.58;
    overflow-wrap: anywhere;
}

.aqopp-category-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}

.aqopp-category-tags span {
    display: inline-flex;
    max-width: 100%;
    padding: 6px 9px;
    border-radius: 999px;
    background: #e9f5f6;
    color: #0b5e67;
    font-size: .72rem;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.aqopp-category-verified {
    margin: 0;
    color: #607381;
    font-size: .75rem;
    line-height: 1.45;
}

@media (max-width: 680px) {
    .aqopp-category-card-slots {
        gap: 9px;
        margin-top: 13px;
        padding-top: 13px;
    }

    .aqopp-category-short-description,
    .aqopp-category-benefits {
        padding: 11px 12px;
    }
}
/* AQL_CATEGORY_CARD_NEW_SLOTS_V5_CSS_END */

/* AQL_FULL_DETAIL_SHORT_DESCRIPTION_CSS_V6 */
.aqopp-full-short-description {
    margin-bottom: 22px;
    padding: 22px 24px;
    border: 1px solid #cfe6e3;
    border-left: 5px solid #168f88;
    border-radius: 15px;
    background: linear-gradient(135deg, #f3fbfa, #ffffff);
    box-shadow: 0 10px 24px rgba(11, 67, 76, .07);
}

.aqopp-full-short-description h2 {
    margin: 0 0 11px;
    color: #0b3551;
}

.aqopp-full-short-description-text p {
    margin: 0;
    color: #344f61;
    font-size: 1rem;
    line-height: 1.72;
    text-align: justify;
    overflow-wrap: anywhere;
}

.aqopp-full-short-description-text p + p {
    margin-top: 12px;
}

@media (max-width: 680px) {
    .aqopp-full-short-description {
        margin-bottom: 17px;
        padding: 18px 17px;
        border-left-width: 4px;
        border-radius: 13px;
    }

    .aqopp-full-short-description-text p {
        font-size: .96rem;
        line-height: 1.68;
    }
}
/* AQL_FULL_DETAIL_SHORT_DESCRIPTION_CSS_V6_END */


/* =========================================================
   AQUAlINKED OPPORTUNITIES ACCESSIBILITY CONTRAST V1
   Lighthouse contrast correction
========================================================= */

/*
 * Open now and other eyebrow labels displayed on light sections.
 * The hero label is excluded so its existing dark-background
 * treatment remains unchanged.
 */

main section:not(.hero) .eyebrow,
main article .eyebrow {
    color: #07515a !important;
    font-weight: 900 !important;
}


/*
 * Closing Soon link displayed beside the current-opportunity count.
 */

main a[href*="closing-soon.php"] {
    color: #064f68 !important;
    font-weight: 900 !important;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

main a[href*="closing-soon.php"]:hover,
main a[href*="closing-soon.php"]:focus-visible {
    color: #04384b !important;
}


/*
 * Community Advantage promotional card.
 */

main article:has(a[href^="/community/"]) {
    color: #173042 !important;
    background: #eef8f7 !important;
    border-color: #a8d1cc !important;
}

main article:has(a[href^="/community/"]) .eyebrow {
    color: #07515a !important;
}

main article:has(a[href^="/community/"]) h2,
main article:has(a[href^="/community/"]) h3 {
    color: #062f43 !important;
}

main article:has(a[href^="/community/"]) p {
    color: #294657 !important;
}

main article:has(a[href^="/community/"])
a[href^="/community/"] {
    background: #075c55 !important;
    color: #ffffff !important;
    border-color: #064b46 !important;
    text-decoration: none !important;
}


/*
 * Professional Visibility / African Water Experts card.
 */

main article:has(a[href*="/wexperts/register"]) {
    color: #173042 !important;
    background: #f2f6fc !important;
    border-color: #bdcce2 !important;
}

main article:has(a[href*="/wexperts/register"]) .eyebrow {
    color: #164f78 !important;
}

main article:has(a[href*="/wexperts/register"]) h2,
main article:has(a[href*="/wexperts/register"]) h3 {
    color: #092f55 !important;
}

main article:has(a[href*="/wexperts/register"]) p {
    color: #314b61 !important;
}

main article:has(a[href*="/wexperts/register"])
a[href*="/wexperts/register"] {
    background: #164f78 !important;
    color: #ffffff !important;
    border-color: #103e60 !important;
    text-decoration: none !important;
}


/*
 * Accessible keyboard focus for the corrected links.
 */

main a[href*="closing-soon.php"]:focus-visible,
main article:has(a[href^="/community/"])
a[href^="/community/"]:focus-visible,
main article:has(a[href*="/wexperts/register"])
a[href*="/wexperts/register"]:focus-visible {
    outline: 3px solid #f6c945 !important;
    outline-offset: 3px !important;
}


/*
 * Preserve readable colours on mobile.
 */

@media (max-width: 640px) {

    main section:not(.hero) .eyebrow,
    main article .eyebrow {
        color: #064a52 !important;
    }

}



/* =========================================================
   AQOPP VISITOR COUNTER DESIGN V1
========================================================= */

.aqopp-traffic-section{
    width:100%;
    padding:30px 15px;
    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(40,202,190,.16),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #053746,
            #075c65
        );
    color:#ffffff;
}

.aqopp-traffic-inner{
    width:min(1180px,100%);
    margin:0 auto;
}

.aqopp-traffic-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:18px;
}

.aqopp-traffic-heading h2{
    margin:4px 0 0;
    color:#ffffff;
    font-size:clamp(22px,3vw,30px);
    line-height:1.2;
}

.aqopp-traffic-heading p{
    max-width:530px;
    margin:0;
    color:#dcf6f3;
    line-height:1.55;
    text-align:right;
}

.aqopp-traffic-kicker{
    color:#8ce9e3;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.aqopp-traffic-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.aqopp-traffic-card{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
    min-height:96px;
    padding:16px 18px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:17px;
    background:rgba(255,255,255,.10);
    box-shadow:0 12px 26px rgba(0,28,35,.20);
}

.aqopp-traffic-card > span:not(.aqopp-online-dot){
    display:flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    width:51px;
    height:51px;
    border-radius:16px;
    background:rgba(255,255,255,.14);
    font-size:23px;
}

.aqopp-traffic-card strong,
.aqopp-traffic-card small{
    display:block;
}

.aqopp-traffic-card strong{
    color:#ffffff;
    font-size:28px;
    line-height:1;
}

.aqopp-traffic-card small{
    margin-top:7px;
    color:#e2f8f6;
    font-size:13px;
    font-weight:850;
}

.aqopp-traffic-card.online{
    background:
        linear-gradient(
            135deg,
            #075f47,
            #07865c
        );
}

.aqopp-online-dot{
    display:block;
    flex:0 0 auto;
    width:16px;
    height:16px;
    margin:17px;
    border-radius:50%;
    background:#62ee96;
    box-shadow:
        0 0 0 7px rgba(98,238,150,.17),
        0 0 17px rgba(98,238,150,.52);
}

.counter-unavailable .aqopp-traffic-card{
    opacity:.78;
}

@media(max-width:850px){

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

}

@media(max-width:640px){

    .aqopp-traffic-section{
        padding:24px 12px;
    }

    .aqopp-traffic-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }

    .aqopp-traffic-heading p{
        text-align:left;
    }

    .aqopp-traffic-grid{
        gap:10px;
    }

    .aqopp-traffic-card{
        min-height:88px;
        padding:13px;
    }

    .aqopp-traffic-card > span:not(.aqopp-online-dot){
        width:43px;
        height:43px;
        border-radius:13px;
        font-size:19px;
    }

    .aqopp-traffic-card strong{
        font-size:23px;
    }

    .aqopp-traffic-card small{
        font-size:12px;
    }

    .aqopp-online-dot{
        width:14px;
        height:14px;
        margin:14px;
    }

}

@media(max-width:390px){

    .aqopp-traffic-grid{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .aqopp-traffic-card{
        display:block;
        min-height:104px;
        padding:12px;
    }

    .aqopp-traffic-card > span:not(.aqopp-online-dot){
        margin-bottom:9px;
    }

    .aqopp-online-dot{
        margin:8px 0 22px 8px;
    }

}

