/* Compare page styles; shared header/footer use layout.css. */

.brands-page * {
    box-sizing:border-box;
}

.brands-page {
    margin:0;
    background:#fcfbf8;
    color:#183a43;
    font:14px/1.65 Arial, sans-serif;
}

.brands-page a {
    text-decoration:none;
    color:inherit;
}

.brands-page button,
.brands-page input {
    font:inherit;
}

.brands-page button {
    cursor:pointer;
}

.brands-page .wrap {
    width:min(1200px,92%);
    margin-inline:auto;
}

.brands-page section[id],
.brands-page #compare {
    scroll-margin-top:130px;
}

@media(max-width:620px) {
    .brands-page section[id],
.brands-page #compare {
        scroll-margin-top:120px;
    }
}

.brands-page {
    --navy:#123850;
    --green:#146443;
    --gold:#ba8949;
    --line:#dfe8e3;
    --muted:#657a78;
}

.brands-page {
    background:#f9fbf9;
    color:#173b4a;
}

.brands-page button,
.brands-page input {
    font:inherit;
}

.brands-page button {
    cursor:pointer;
}

.brands-page .categories-hero {
    background:linear-gradient(112deg,#f4f8f5,#fff 57%,#f8f1e7);
    padding:66px 0 54px;
    border-bottom:1px solid #e5eae3;
    position:relative;
    overflow:hidden;
}

.brands-page .categories-hero:before {
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    border:1px solid #d6e2dc;
    border-radius:50%;
    right:-210px;
    top:-210px;
    pointer-events:none;
}

.brands-page .categories-hero-grid {
    display:grid;
    grid-template-columns:1fr .78fr;
    gap:55px;
    align-items:center;
    position:relative;
}

.brands-page .cat-kicker {
    display:inline-flex;
    align-items:center;
    gap:12px;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    color:#a36b2e;
}

.brands-page .cat-kicker:before {
    content:"";
    height:2px;
    width:26px;
    background:#c99252;
}

.brands-page .categories-hero h1 {
    font:400 clamp(36px,4vw,56px)/1.1 Georgia,serif;
    color:#163a54;
    letter-spacing:-1px;
    margin:16px 0;
}

.brands-page .categories-hero h1 em {
    font-style:normal;
    color:#1c7450;
}

.brands-page .categories-hero p {
    font-size:14px;
    line-height:1.85;
    color:#607673;
    max-width:550px;
    margin:0 0 23px;
}

.brands-page .cat-breadcrumb {
    display:flex;
    gap:9px;
    font-size:11px;
    color:#657875;
    margin-bottom:16px;
}

.brands-page .cat-breadcrumb a {
    color:#1d6948;
    font-weight:700;
}

.brands-page .cat-action {
    display:inline-flex;
    gap:13px;
    align-items:center;
    border-radius:8px;
    background:#174c3a;
    color:#fff;
    padding:12px 19px;
    font-weight:800;
    font-size:12px;
}

.brands-page .cat-hero-art {
    background:#fff;
    padding:25px;
    border:1px solid #dde7df;
    border-radius:20px;
    box-shadow:0 21px 55px #153f2a10;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.brands-page .cat-art-cell {
    min-height:110px;
    background:#f1f7f2;
    border:1px solid #dfebe0;
    border-radius:12px;
    padding:18px;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.brands-page .cat-art-cell:nth-child(2) {
    background:#fbf3e9;
    border-color:#efe2d2;
}

.brands-page .cat-art-cell:nth-child(3) {
    background:#eff4fa;
    border-color:#e0e7ef;
}

.brands-page .cat-art-cell strong {
    font-size:12px;
    color:#224c3b;
}

.brands-page .cat-art-cell svg {
    width:30px;
    height:30px;
    color:#26734e;
}

.brands-page .cat-art-cell:nth-child(2) svg {
    color:#ae7235;
}

.brands-page .cat-art-cell:nth-child(3) svg {
    color:#396886;
}

.brands-page .cat-art-caption {
    grid-column:1/-1;
    padding:6px 2px;
    font-size:11px;
    color:#687d76;
}

.brands-page .cat-main {
    padding:64px 0 80px;
}

.brands-page .cat-section-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:26px;
    margin-bottom:24px;
}

.brands-page .cat-section-heading h2 {
    font:400 clamp(28px,3vw,40px)/1.2 Georgia,serif;
    color:#153f39;
    margin:9px 0;
}

.brands-page .cat-section-heading p {
    color:#687c78;
    font-size:12px;
    margin:0;
    max-width:510px;
    line-height:1.7;
}

.brands-page .cat-search {
    display:flex;
    align-items:center;
    gap:10px;
    min-height:48px;
    background:#fff;
    border:1px solid #cadfd1;
    border-radius:10px;
    padding:0 14px;
    min-width:275px;
    box-shadow:0 7px 20px #1a453309;
}

.brands-page .cat-search svg {
    width:19px;
    height:19px;
    color:#4a8060;
    flex:none;
}

.brands-page .cat-search input {
    border:0;
    outline:0;
    background:transparent;
    font-size:13px;
    width:100%;
    min-width:0;
    color:#214537;
}

.brands-page .cat-search:focus-within {
    outline:2px solid #aed4ba;
    outline-offset:2px;
}

.brands-page .cat-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:17px;
}

.brands-page .cat-card {
    min-height:239px;
    display:flex;
    flex-direction:column;
    text-align:left;
    align-items:flex-start;
    padding:24px;
    background:#fff;
    border:1px solid #dde7df;
    border-radius:16px;
    box-shadow:0 12px 30px #1f42340c;
    position:relative;
    transition:border-color .2s,transform .2s,box-shadow .2s;
}

.brands-page .cat-card[hidden] {
    display:none!important;
}

.brands-page .cat-card:hover,
.brands-page .cat-card[aria-pressed="true"] {
    border-color:#8cbc9d;
    box-shadow:0 19px 38px #1c4c2c1a;
    transform:translateY(-3px);
}

.brands-page .cat-card[aria-pressed="true"] {
    background:#f3faf5;
}

.brands-page .cat-number {
    position:absolute;
    right:23px;
    top:24px;
    font-size:11px;
    letter-spacing:1px;
    color:#a89270;
    font-weight:800;
}

.brands-page .cat-icon {
    display:grid;
    place-items:center;
    width:60px;
    height:60px;
    background:#e9f5ed;
    color:#176b42;
    border:1px solid #d2e8d8;
    border-radius:14px;
    margin-bottom:22px;
}

.brands-page .cat-card:nth-child(3n + 2) .cat-icon {
    background:#eef4fa;
    border-color:#dae6ef;
    color:#36698c;
}

.brands-page .cat-card:nth-child(3n) .cat-icon {
    background:#fff5e7;
    border-color:#efdfc7;
    color:#ad7438;
}

.brands-page .cat-icon svg {
    width:29px;
    height:29px;
}

.brands-page .cat-card strong {
    font-size:17px;
    line-height:1.3;
    color:#1a4253;
    margin-bottom:8px;
}

.brands-page .cat-description {
    font-size:12px;
    color:#718480;
    line-height:1.6;
    max-width:220px;
    flex:1;
}

.brands-page .cat-open {
    display:flex;
    align-items:center;
    gap:9px;
    color:#23744f;
    font-weight:800;
    font-size:11px;
    margin-top:18px;
}

.brands-page .cat-card:focus-visible,
.brands-page .cat-action:focus-visible {
    outline:3px solid #bc8b4c;
    outline-offset:3px;
}

.brands-page .cat-empty {
    padding:23px;
    border:1px dashed #cddccd;
    background:#fff;
    color:#6b7772;
    border-radius:12px;
    margin-top:16px;
}

.brands-page .cat-detail {
    margin-top:30px;
    background:linear-gradient(105deg,#eff7f1,#fffdf9);
    border:1px solid #cfe0d3;
    border-radius:17px;
    padding:26px 30px;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:24px;
    box-shadow:0 15px 35px #2850390d;
}

.brands-page .cat-detail .cat-kicker {
    font-size:9px;
}

.brands-page .cat-detail h3 {
    margin:9px 0;
    font:400 26px Georgia,serif;
    color:#184936;
}

.brands-page .cat-detail p {
    font-size:12px;
    color:#687b70;
    margin:0;
    line-height:1.8;
}

.brands-page .cat-detail a {
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:#184e3b;
    color:white;
    border-radius:8px;
    padding:13px 17px;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.brands-page .cat-footnote {
    margin:12px 0 0;
    font-size:11px;
    color:#75867e;
}

.brands-page .cat-steps-section {
    background:#f3f6f2;
    padding:70px 0;
    border-top:1px solid #e3e9e0;
}

.brands-page .cat-steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:28px;
}

.brands-page .cat-step {
    padding:23px;
    background:#fff;
    border:1px solid #e0e6db;
    border-radius:14px;
}

.brands-page .cat-step>span {
    font:400 33px Georgia,serif;
    color:#bb8d50;
}

.brands-page .cat-step h3 {
    font-size:16px;
    margin:12px 0 8px;
    color:#214c40;
}

.brands-page .cat-step p {
    font-size:12px;
    line-height:1.75;
    color:#73837a;
    margin:0;
}

.brands-page .cat-banner {
    background:#143b34;
    color:#fff;
    padding:53px 0;
}

.brands-page .cat-banner .wrap {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.brands-page .cat-banner h2 {
    font:400 clamp(25px,3vw,37px) Georgia,serif;
    margin:0 0 8px;
}

.brands-page .cat-banner p {
    margin:0;
    color:#c7dcd1;
    font-size:13px;
}

.brands-page .cat-banner a {
    background:#fff;
    color:#1c4b3d;
    padding:13px 19px;
    border-radius:8px;
    font-weight:800;
    font-size:12px;
    white-space:nowrap;
}

@media(max-width:1040px) {
    .brands-page .cat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .brands-page .categories-hero-grid {
        gap:24px;
    }
}

@media(max-width:780px) {
    .brands-page .categories-hero-grid {
        grid-template-columns:1fr;
    }

    .brands-page .cat-hero-art {
        max-width:520px;
    }

    .brands-page .cat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .brands-page .cat-section-heading {
        display:block;
    }

    .brands-page .cat-search {
        margin-top:19px;
    }

    .brands-page .cat-detail {
        grid-template-columns:1fr;
    }

    .brands-page .cat-detail a {
        width:max-content;
    }

    .brands-page .cat-steps {
        grid-template-columns:1fr;
    }

    .brands-page .cat-banner .wrap {
        flex-direction:column;
        align-items:start;
    }
}

@media(max-width:500px) {
    .brands-page .categories-hero {
        padding:38px 0;
    }

    .brands-page .cat-main {
        padding:43px 0 55px;
    }

    .brands-page .cat-grid {
        gap:12px;
    }

    .brands-page .cat-card {
        min-height:228px;
        padding:17px;
    }

    .brands-page .cat-card strong {
        font-size:14px;
    }

    .brands-page .cat-card .cat-icon {
        width:50px;
        height:50px;
        margin-bottom:16px;
    }

    .brands-page .cat-card .cat-icon svg {
        width:24px;
        height:24px;
    }

    .brands-page .cat-card .cat-number {
        right:15px;
        top:18px;
    }

    .brands-page .cat-card .cat-description {
        font-size:11px;
    }

    .brands-page .cat-detail {
        padding:20px;
    }

    .brands-page .cat-detail a {
        white-space:normal;
        width:100%;
        justify-content:center;
    }

    .brands-page .cat-art-cell {
        min-height:95px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .brands-page .cat-card {
        transition:none;
    }

    .brands-page .cat-card:hover {
        transform:none;
    }
}

.brands-page {
    --cb-ink:#153951;
    --cb-green:#176746;
    --cb-gold:#bb8845;
    --cb-bg:#f7faf8;
    --cb-border:#dfe9e4;
}

.brands-page .cb-hero {
    background:linear-gradient(108deg,#f4f8f4 0%,#fff 62%,#eef5ef);
    padding:62px 0 72px;
    overflow:hidden;
}

.brands-page .cb-hero-inner {
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:60px;
    align-items:center;
}

.brands-page .cb-breadcrumb {
    display:flex;
    align-items:center;
    gap:11px;
    font-size:11px;
    color:#74847c;
    margin-bottom:27px;
}

.brands-page .cb-breadcrumb a {
    color:#176746;
    font-weight:750;
}

.brands-page .cb-overline {
    color:#a16d32;
    font-size:10px;
    letter-spacing:2px;
    font-weight:800;
    text-transform:uppercase;
}

.brands-page .cb-hero h1 {
    font:400 clamp(38px,4.1vw,60px)/1.12 Georgia,serif;
    letter-spacing:-1.6px;
    color:#153951;
    margin:17px 0 20px;
}

.brands-page .cb-hero h1 em {
    font-style:normal;
    color:#147147;
}

.brands-page .cb-hero p {
    color:#647772;
    font-size:14px;
    line-height:1.9;
    max-width:570px;
    margin:0;
}

.brands-page .cb-hero-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:28px 0 23px;
}

.brands-page .cb-primary,
.brands-page .cb-secondary {
    min-height:46px;
    padding:12px 19px;
    border-radius:8px;
    font-size:12px;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    gap:16px;
}

.brands-page .cb-primary {
    background:#174e3b;
    color:#fff;
}

.brands-page .cb-secondary {
    background:#fff;
    border:1px solid #cbdcd1;
    color:#1d5842;
}

.brands-page .cb-note-dot {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#17834b;
    display:inline-block;
}

.brands-page .cb-hero-note {
    display:flex;
    gap:9px;
    align-items:center;
    color:#799084;
    font-size:11px;
}

.brands-page .cb-hero-visual {
    position:relative;
    min-height:375px;
    background:radial-gradient(circle at 45% 40%,#fff 0%,#e4efe7 75%);
    border:1px solid #dfebe3;
    border-radius:22px;
    padding:24px;
    display:grid;
    place-items:center;
}

.brands-page .cb-visual-label {
    position:absolute;
    top:22px;
    left:24px;
    color:#9b7a4e;
    font-weight:800;
    font-size:9px;
    letter-spacing:1.5px;
}

.brands-page .cb-certificate {
    width:min(365px,100%);
    background:#fff;
    border:1px solid #d5dfd5;
    border-radius:13px;
    padding:30px 30px 20px;
    box-shadow:0 22px 46px #17463113;
    transform:rotate(-2deg);
}

.brands-page .cb-seal {
    width:70px;
    height:70px;
    background:#e6f5ec;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#267348;
    margin-bottom:15px;
}

.brands-page .cb-seal svg {
    width:43px;
    height:43px;
}

.brands-page .cb-certificate small {
    display:block;
    font-size:9px;
    letter-spacing:1.4px;
    color:#a7804c;
    font-weight:800;
}

.brands-page .cb-certificate strong {
    display:block;
    font:400 25px/1.22 Georgia,serif;
    color:#214d3c;
    margin:8px 0;
}

.brands-page .cb-certificate p {
    font-size:11px;
    line-height:1.8;
}

.brands-page .cb-cert-foot {
    display:flex;
    justify-content:space-between;
    border-top:1px solid #e5ece7;
    padding-top:12px;
    margin-top:20px;
    font-size:9px;
    font-weight:800;
    letter-spacing:1px;
    color:#366a4c;
}

.brands-page .cb-floating-chip {
    position:absolute;
    right:12px;
    bottom:17px;
    border:1px solid #e2d4b7;
    background:#fffaf1;
    border-radius:6px;
    color:#a2783d;
    font-size:9px;
    font-weight:800;
    padding:10px 13px;
    letter-spacing:1px;
}

.brands-page .cb-feature-strip {
    background:#133f35;
    color:#e8f7ee;
}

.brands-page .cb-feature-inner {
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.brands-page .cb-feature-inner>div {
    padding:18px 13px;
    display:flex;
    align-items:center;
    gap:12px;
    border-right:1px solid #ffffff25;
    font-size:11px;
}

.brands-page .cb-feature-inner>div:last-child {
    border:0;
}

.brands-page .cb-mini-icon {
    width:30px;
    height:30px;
    border-radius:8px;
    background:#ffffff15;
    color:#edcf90;
    display:grid;
    place-items:center;
    font-size:15px;
    flex:none;
}

.brands-page .cb-directory {
    padding:77px 0 82px;
    background:#f8faf8;
}

.brands-page .cb-dir-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:25px;
    margin-bottom:27px;
}

.brands-page .cb-dir-heading h2,
.brands-page .cb-section-head h2 {
    font:400 clamp(31px,3.1vw,43px)/1.2 Georgia,serif;
    color:#183e38;
    margin:9px 0;
}

.brands-page .cb-dir-heading p,
.brands-page .cb-section-head p {
    font-size:13px;
    color:#718078;
    line-height:1.8;
    max-width:630px;
    margin:0;
}

.brands-page .cb-count-box {
    min-width:145px;
    border:1px solid #dce7df;
    background:#fff;
    border-radius:13px;
    padding:15px 19px;
    text-align:center;
}

.brands-page .cb-count-box strong {
    display:block;
    font:400 35px Georgia,serif;
    color:#1b6949;
}

.brands-page .cb-count-box span {
    color:#708075;
    font-size:10px;
}

.brands-page .cb-filterbar {
    display:flex;
    gap:12px;
    align-items:center;
    padding:16px;
    background:#fff;
    border:1px solid #e0e9e2;
    border-radius:14px;
    box-shadow:0 8px 25px #183b2910;
}

.brands-page .cb-search {
    flex:1;
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid #d4e1d8;
    background:#fbfdfb;
    border-radius:9px;
    padding:0 13px;
    min-height:46px;
}

.brands-page .cb-search svg {
    width:18px;
    height:18px;
    color:#628472;
    flex:none;
}

.brands-page .cb-search input {
    border:0;
    background:transparent;
    outline:0;
    width:100%;
    min-width:0;
    font-size:12px;
    color:#214536;
}

.brands-page .cb-filterlabel {
    display:flex;
    align-items:center;
    gap:10px;
    color:#718076;
    font-weight:700;
    font-size:11px;
}

.brands-page .cb-filterlabel select {
    padding:12px 14px;
    border-radius:9px;
    background:#fbfdfb;
    border:1px solid #d4e1d8;
    min-width:165px;
    color:#234e3b;
}

.brands-page .cb-clear {
    background:#eef6f0;
    color:#276444;
    border:1px solid #d1e4d6;
    padding:11px 14px;
    border-radius:9px;
    font-size:11px;
    font-weight:800;
}

.brands-page .cb-directory-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:17px;
    margin-top:23px;
}

.brands-page .cb-brand-card {
    background:#fff;
    border:1px solid #dfe9e2;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 10px 25px #17412d0d;
}

.brands-page .cb-brand-head {
    padding:19px;
    display:flex;
    gap:13px;
    align-items:center;
    border-bottom:1px solid #eef1ed;
}

.brands-page .cb-brand-logo {
    display:grid;
    place-items:center;
    width:65px;
    height:65px;
    background:#f1f5f2;
    border:1px solid #e3ebe5;
    border-radius:11px;
    font-weight:800;
    color:#326548;
    font-size:18px;
    flex:none;
}

.brands-page .cb-brand-title {
    font-size:16px;
    font-weight:800;
    color:#183e38;
}

.brands-page .cb-brand-category {
    font-size:11px;
    color:#75857a;
}

.brands-page .cb-brand-main {
    padding:17px 19px;
}

.brands-page .cb-brand-main p {
    font-size:12px;
    color:#687c70;
    line-height:1.7;
    margin:0 0 15px;
}

.brands-page .cb-brand-meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.brands-page .cb-brand-meta span {
    font-size:10px;
    padding:6px 9px;
    background:#f0f7f2;
    border-radius:30px;
    color:#286b47;
}

.brands-page .cb-brand-foot {
    display:flex;
    gap:10px;
    border-top:1px solid #eef1ed;
    padding:15px 19px;
}

.brands-page .cb-brand-foot a {
    flex:1;
    border-radius:8px;
    text-align:center;
    font-size:11px;
    font-weight:800;
    padding:10px;
    background:#1b6949;
    color:white;
}

.brands-page .cb-brand-foot a:last-child {
    background:#eff6f0;
    color:#286044;
}

.brands-page .cb-empty {
    margin:23px auto 0;
    max-width:930px;
    text-align:center;
    padding:55px 25px;
    background:#fff;
    border:1px dashed #cadbce;
    border-radius:17px;
}

.brands-page .cb-empty-graphic {
    width:94px;
    height:94px;
    margin:auto auto 16px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#edf7f0;
    color:#377b58;
}

.brands-page .cb-empty-graphic svg {
    width:48px;
    height:48px;
}

.brands-page .cb-empty h3 {
    font:400 25px Georgia,serif;
    color:#214d3a;
    margin:10px 0;
}

.brands-page .cb-empty p {
    max-width:580px;
    margin:0 auto 19px;
    color:#708075;
    font-size:12px;
    line-height:1.8;
}

.brands-page .cb-empty>a {
    background:#196546;
    color:#fff;
    border-radius:8px;
    display:inline-flex;
    gap:14px;
    align-items:center;
    padding:12px 17px;
    font-weight:800;
    font-size:12px;
}

.brands-page .cb-data-note {
    margin-top:15px;
    color:#77897b;
    font-size:11px;
}

.brands-page .cb-process {
    padding:77px 0;
    background:#fff;
}

.brands-page .cb-section-head {
    text-align:center;
    max-width:750px;
    margin:0 auto 33px;
}

.brands-page .cb-section-head p {
    margin:auto;
}

.brands-page .cb-steps {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px;
}

.brands-page .cb-steps article {
    padding:23px 22px;
    background:#fff;
    border:1px solid #e0e8e0;
    border-radius:14px;
    position:relative;
}

.brands-page .cb-steps article>span {
    position:absolute;
    top:18px;
    right:18px;
    font:400 20px Georgia,serif;
    color:#c5a57a;
}

.brands-page .cb-step-icon {
    width:49px;
    height:49px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:#ecf6ee;
    color:#28774a;
    font-size:22px;
}

.brands-page .cb-steps article:nth-child(even) .cb-step-icon {
    background:#fcf2e6;
    color:#b27b37;
}

.brands-page .cb-steps h3 {
    font-size:15px;
    color:#204a38;
    margin:19px 0 8px;
}

.brands-page .cb-steps p {
    font-size:12px;
    line-height:1.8;
    color:#708076;
    margin:0;
}

.brands-page .cb-cta {
    background:#153e34;
    color:white;
    padding:57px 0;
    border-top:4px solid #c59556;
}

.brands-page .cb-cta-inner {
    display:flex;
    justify-content:space-between;
    gap:25px;
    align-items:center;
}

.brands-page .cb-cta h2 {
    font:400 clamp(27px,2.8vw,39px) Georgia,serif;
    margin:9px 0;
}

.brands-page .cb-cta p {
    margin:0;
    font-size:13px;
    color:#c4d9ce;
}

.brands-page .cb-cta a {
    display:inline-flex;
    align-items:center;
    gap:24px;
    background:#fff;
    color:#23513b;
    padding:14px 20px;
    border-radius:9px;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.brands-page .cb-cta .cb-overline {
    color:#eed099;
}

@media(max-width:950px) {
    .brands-page .cb-hero-inner {
        gap:27px;
    }

    .brands-page .cb-feature-inner {
        grid-template-columns:repeat(2,1fr);
    }

    .brands-page .cb-steps {
        grid-template-columns:repeat(2,1fr);
    }

    .brands-page .cb-directory-grid {
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:750px) {
    .brands-page .cb-hero {
        padding:36px 0 45px;
    }

    .brands-page .cb-hero-inner {
        grid-template-columns:1fr;
    }

    .brands-page .cb-hero-visual {
        min-height:330px;
    }

    .brands-page .cb-dir-heading {
        align-items:flex-start;
        flex-direction:column;
    }

    .brands-page .cb-filterbar {
        flex-wrap:wrap;
    }

    .brands-page .cb-search {
        flex-basis:100%;
    }

    .brands-page .cb-directory {
        padding:50px 0;
    }

    .brands-page .cb-cta-inner {
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:510px) {
    .brands-page .cb-hero h1 {
        font-size:36px;
    }

    .brands-page .cb-hero-visual {
        padding:15px;
        min-height:315px;
    }

    .brands-page .cb-certificate {
        padding:23px;
    }

    .brands-page .cb-visual-label {
        top:10px;
        left:12px;
    }

    .brands-page .cb-feature-inner {
        grid-template-columns:1fr 1fr;
    }

    .brands-page .cb-feature-inner>div {
        font-size:10px;
        padding:13px 9px;
    }

    .brands-page .cb-feature-inner>div:nth-child(2) {
        border-right:0;
    }

    .brands-page .cb-directory-grid,
.brands-page .cb-steps {
        grid-template-columns:1fr;
    }

    .brands-page .cb-filterlabel {
        flex:1;
    }

    .brands-page .cb-filterlabel select {
        min-width:0;
        width:100%;
    }

    .brands-page .cb-clear {
        flex:1;
    }

    .brands-page .cb-cta a {
        white-space:normal;
    }
}

.brands-page,
.brands-page button,
.brands-page input,
.brands-page select,
.brands-page textarea,
.brands-page summary {
    font-family: Arial, Helvetica, sans-serif;
}

.brands-page {
    font-size:14px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
}

.brands-page .cb-hero h1 {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:750;
    font-size:clamp(33px,3.3vw,49px);
    line-height:1.17;
    letter-spacing:-1.35px;
    text-wrap:balance;
}

.brands-page .cb-hero h1 em {
    font-style:normal;
}

.brands-page .cb-certificate strong {
    font-family:Arial,Helvetica,sans-serif;
    font-size:clamp(20px,2vw,25px);
    font-weight:750;
    line-height:1.27;
}

.brands-page .cb-dir-heading h2,
.brands-page .cb-section-head h2 {
    font-family:Arial,Helvetica,sans-serif;
    font-size:clamp(27px,2.8vw,38px);
    font-weight:750;
    line-height:1.23;
    letter-spacing:-.65px;
}

.brands-page .cb-empty h3 {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:750;
    font-size:23px;
}

.brands-page .cb-count-box strong {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:800;
}

.brands-page .cb-steps article>span {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:700;
}

.brands-page .cb-cta h2 {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:750;
    font-size:clamp(26px,2.8vw,37px);
    line-height:1.25;
}

.brands-page .cb-hero-inner>* {
    min-width:0;
}

.brands-page .cb-hero-visual {
    min-width:0;
}

.brands-page .cb-feature-inner>div {
    min-width:0;
}

.brands-page .cb-brand-title,
.brands-page .cb-steps h3 {
    overflow-wrap:break-word;
}

@media(max-width:750px) {
    .brands-page .cb-hero h1 {
        font-size:clamp(31px,7vw,40px);
        letter-spacing:-.8px;
    }

    .brands-page .cb-hero-visual {
        max-width:540px;
        width:100%;
    }

    .brands-page .cb-filterbar>* {
        min-width:0;
    }
}

@media(max-width:510px) {
    .brands-page .cb-hero h1 {
        font-size:clamp(29px,8.1vw,36px);
    }

    .brands-page .cb-certificate {
        transform:none;
    }

    .brands-page .cb-hero-visual {
        min-height:290px;
    }

    .brands-page .cb-hero p {
        line-height:1.7;
    }
}

.brands-page [hidden] {
    display: none !important;
}
