/* Compare page styles; shared header/footer use layout.css. */

.compare-page * {
    box-sizing:border-box;
}

.compare-page {
    margin:0;
    background:#fcfbf8;
    color:#183a43;
    font:14px/1.65 Arial, sans-serif;
}

.compare-page a {
    text-decoration:none;
    color:inherit;
}

.compare-page button,
.compare-page input {
    font:inherit;
}

.compare-page button {
    cursor:pointer;
}

.compare-page .wrap {
    width:min(1200px,92%);
    margin-inline:auto;
}

.compare-page section[id],
.compare-page #compare {
    scroll-margin-top:130px;
}

@media(max-width:620px) {
    .compare-page section[id],
.compare-page #compare {
        scroll-margin-top:120px;
    }
}

.compare-page {
    --navy:#123850;
    --green:#146443;
    --gold:#ba8949;
    --line:#dfe8e3;
    --muted:#657a78;
}

.compare-page {
    background:#f9fbf9;
    color:#173b4a;
}

.compare-page button,
.compare-page input {
    font:inherit;
}

.compare-page button {
    cursor:pointer;
}

.compare-page .categories-hero {
    background:linear-gradient(112deg,#f4f8f5,#fff 57%,#f8f1e7);
    padding:66px 0 54px;
    border-bottom:1px solid #e5eae3;
    position:relative;
    overflow:hidden;
}

.compare-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;
}

.compare-page .categories-hero-grid {
    display:grid;
    grid-template-columns:1fr .78fr;
    gap:55px;
    align-items:center;
    position:relative;
}

.compare-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;
}

.compare-page .cat-kicker:before {
    content:"";
    height:2px;
    width:26px;
    background:#c99252;
}

.compare-page .categories-hero h1 {
    font:400 clamp(36px,4vw,56px)/1.1 Arial,sans-serif;
    color:#163a54;
    letter-spacing:-1px;
    margin:16px 0;
}

.compare-page .categories-hero h1 em {
    font-style:normal;
    color:#1c7450;
}

.compare-page .categories-hero p {
    font-size:14px;
    line-height:1.85;
    color:#607673;
    max-width:550px;
    margin:0 0 23px;
}

.compare-page .cat-breadcrumb {
    display:flex;
    gap:9px;
    font-size:11px;
    color:#657875;
    margin-bottom:16px;
}

.compare-page .cat-breadcrumb a {
    color:#1d6948;
    font-weight:700;
}

.compare-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;
}

.compare-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;
}

.compare-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;
}

.compare-page .cat-art-cell:nth-child(2) {
    background:#fbf3e9;
    border-color:#efe2d2;
}

.compare-page .cat-art-cell:nth-child(3) {
    background:#eff4fa;
    border-color:#e0e7ef;
}

.compare-page .cat-art-cell strong {
    font-size:12px;
    color:#224c3b;
}

.compare-page .cat-art-cell svg {
    width:30px;
    height:30px;
    color:#26734e;
}

.compare-page .cat-art-cell:nth-child(2) svg {
    color:#ae7235;
}

.compare-page .cat-art-cell:nth-child(3) svg {
    color:#396886;
}

.compare-page .cat-art-caption {
    grid-column:1/-1;
    padding:6px 2px;
    font-size:11px;
    color:#687d76;
}

.compare-page .cat-main {
    padding:64px 0 80px;
}

.compare-page .cat-section-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:26px;
    margin-bottom:24px;
}

.compare-page .cat-section-heading h2 {
    font:400 clamp(28px,3vw,40px)/1.2 Arial,sans-serif;
    color:#153f39;
    margin:9px 0;
}

.compare-page .cat-section-heading p {
    color:#687c78;
    font-size:12px;
    margin:0;
    max-width:510px;
    line-height:1.7;
}

.compare-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;
}

.compare-page .cat-search svg {
    width:19px;
    height:19px;
    color:#4a8060;
    flex:none;
}

.compare-page .cat-search input {
    border:0;
    outline:0;
    background:transparent;
    font-size:13px;
    width:100%;
    min-width:0;
    color:#214537;
}

.compare-page .cat-search:focus-within {
    outline:2px solid #aed4ba;
    outline-offset:2px;
}

.compare-page .cat-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:17px;
}

.compare-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;
}

.compare-page .cat-card[hidden] {
    display:none!important;
}

.compare-page .cat-card:hover,
.compare-page .cat-card[aria-pressed="true"] {
    border-color:#8cbc9d;
    box-shadow:0 19px 38px #1c4c2c1a;
    transform:translateY(-3px);
}

.compare-page .cat-card[aria-pressed="true"] {
    background:#f3faf5;
}

.compare-page .cat-number {
    position:absolute;
    right:23px;
    top:24px;
    font-size:11px;
    letter-spacing:1px;
    color:#a89270;
    font-weight:800;
}

.compare-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;
}

.compare-page .cat-card:nth-child(3n + 2) .cat-icon {
    background:#eef4fa;
    border-color:#dae6ef;
    color:#36698c;
}

.compare-page .cat-card:nth-child(3n) .cat-icon {
    background:#fff5e7;
    border-color:#efdfc7;
    color:#ad7438;
}

.compare-page .cat-icon svg {
    width:29px;
    height:29px;
}

.compare-page .cat-card strong {
    font-size:17px;
    line-height:1.3;
    color:#1a4253;
    margin-bottom:8px;
}

.compare-page .cat-description {
    font-size:12px;
    color:#718480;
    line-height:1.6;
    max-width:220px;
    flex:1;
}

.compare-page .cat-open {
    display:flex;
    align-items:center;
    gap:9px;
    color:#23744f;
    font-weight:800;
    font-size:11px;
    margin-top:18px;
}

.compare-page .cat-card:focus-visible,
.compare-page .cat-action:focus-visible {
    outline:3px solid #bc8b4c;
    outline-offset:3px;
}

.compare-page .cat-empty {
    padding:23px;
    border:1px dashed #cddccd;
    background:#fff;
    color:#6b7772;
    border-radius:12px;
    margin-top:16px;
}

.compare-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;
}

.compare-page .cat-detail .cat-kicker {
    font-size:9px;
}

.compare-page .cat-detail h3 {
    margin:9px 0;
    font:400 26px Arial,sans-serif;
    color:#184936;
}

.compare-page .cat-detail p {
    font-size:12px;
    color:#687b70;
    margin:0;
    line-height:1.8;
}

.compare-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;
}

.compare-page .cat-footnote {
    margin:12px 0 0;
    font-size:11px;
    color:#75867e;
}

.compare-page .cat-steps-section {
    background:#f3f6f2;
    padding:70px 0;
    border-top:1px solid #e3e9e0;
}

.compare-page .cat-steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:28px;
}

.compare-page .cat-step {
    padding:23px;
    background:#fff;
    border:1px solid #e0e6db;
    border-radius:14px;
}

.compare-page .cat-step>span {
    font:400 33px Arial,sans-serif;
    color:#bb8d50;
}

.compare-page .cat-step h3 {
    font-size:16px;
    margin:12px 0 8px;
    color:#214c40;
}

.compare-page .cat-step p {
    font-size:12px;
    line-height:1.75;
    color:#73837a;
    margin:0;
}

.compare-page .cat-banner {
    background:#143b34;
    color:#fff;
    padding:53px 0;
}

.compare-page .cat-banner .wrap {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.compare-page .cat-banner h2 {
    font:400 clamp(25px,3vw,37px) Arial,sans-serif;
    margin:0 0 8px;
}

.compare-page .cat-banner p {
    margin:0;
    color:#c7dcd1;
    font-size:13px;
}

.compare-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) {
    .compare-page .cat-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .compare-page .categories-hero-grid {
        gap:24px;
    }
}

@media(max-width:780px) {
    .compare-page .categories-hero-grid {
        grid-template-columns:1fr;
    }

    .compare-page .cat-hero-art {
        max-width:520px;
    }

    .compare-page .cat-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .compare-page .cat-section-heading {
        display:block;
    }

    .compare-page .cat-search {
        margin-top:19px;
    }

    .compare-page .cat-detail {
        grid-template-columns:1fr;
    }

    .compare-page .cat-detail a {
        width:max-content;
    }

    .compare-page .cat-steps {
        grid-template-columns:1fr;
    }

    .compare-page .cat-banner .wrap {
        flex-direction:column;
        align-items:start;
    }
}

@media(max-width:500px) {
    .compare-page .categories-hero {
        padding:38px 0;
    }

    .compare-page .cat-main {
        padding:43px 0 55px;
    }

    .compare-page .cat-grid {
        gap:12px;
    }

    .compare-page .cat-card {
        min-height:228px;
        padding:17px;
    }

    .compare-page .cat-card strong {
        font-size:14px;
    }

    .compare-page .cat-card .cat-icon {
        width:50px;
        height:50px;
        margin-bottom:16px;
    }

    .compare-page .cat-card .cat-icon svg {
        width:24px;
        height:24px;
    }

    .compare-page .cat-card .cat-number {
        right:15px;
        top:18px;
    }

    .compare-page .cat-card .cat-description {
        font-size:11px;
    }

    .compare-page .cat-detail {
        padding:20px;
    }

    .compare-page .cat-detail a {
        white-space:normal;
        width:100%;
        justify-content:center;
    }

    .compare-page .cat-art-cell {
        min-height:95px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .compare-page .cat-card {
        transition:none;
    }

    .compare-page .cat-card:hover {
        transform:none;
    }
}

.compare-page {
    --cb-ink:#153951;
    --cb-green:#176746;
    --cb-gold:#bb8845;
    --cb-bg:#f7faf8;
    --cb-border:#dfe9e4;
}

.compare-page .cb-hero {
    background:linear-gradient(108deg,#f4f8f4 0%,#fff 62%,#eef5ef);
    padding:62px 0 72px;
    overflow:hidden;
}

.compare-page .cb-hero-inner {
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:60px;
    align-items:center;
}

.compare-page .cb-breadcrumb {
    display:flex;
    align-items:center;
    gap:11px;
    font-size:11px;
    color:#74847c;
    margin-bottom:27px;
}

.compare-page .cb-breadcrumb a {
    color:#176746;
    font-weight:750;
}

.compare-page .cb-overline {
    color:#a16d32;
    font-size:10px;
    letter-spacing:2px;
    font-weight:800;
    text-transform:uppercase;
}

.compare-page .cb-hero h1 {
    font:400 clamp(38px,4.1vw,60px)/1.12 Arial,sans-serif;
    letter-spacing:-1.6px;
    color:#153951;
    margin:17px 0 20px;
}

.compare-page .cb-hero h1 em {
    font-style:normal;
    color:#147147;
}

.compare-page .cb-hero p {
    color:#647772;
    font-size:14px;
    line-height:1.9;
    max-width:570px;
    margin:0;
}

.compare-page .cb-hero-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:28px 0 23px;
}

.compare-page .cb-primary,
.compare-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;
}

.compare-page .cb-primary {
    background:#174e3b;
    color:#fff;
}

.compare-page .cb-secondary {
    background:#fff;
    border:1px solid #cbdcd1;
    color:#1d5842;
}

.compare-page .cb-note-dot {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#17834b;
    display:inline-block;
}

.compare-page .cb-hero-note {
    display:flex;
    gap:9px;
    align-items:center;
    color:#799084;
    font-size:11px;
}

.compare-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;
}

.compare-page .cb-visual-label {
    position:absolute;
    top:22px;
    left:24px;
    color:#9b7a4e;
    font-weight:800;
    font-size:9px;
    letter-spacing:1.5px;
}

.compare-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);
}

.compare-page .cb-seal {
    width:70px;
    height:70px;
    background:#e6f5ec;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#267348;
    margin-bottom:15px;
}

.compare-page .cb-seal svg {
    width:43px;
    height:43px;
}

.compare-page .cb-certificate small {
    display:block;
    font-size:9px;
    letter-spacing:1.4px;
    color:#a7804c;
    font-weight:800;
}

.compare-page .cb-certificate strong {
    display:block;
    font:400 25px/1.22 Arial,sans-serif;
    color:#214d3c;
    margin:8px 0;
}

.compare-page .cb-certificate p {
    font-size:11px;
    line-height:1.8;
}

.compare-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;
}

.compare-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;
}

.compare-page .cb-feature-strip {
    background:#133f35;
    color:#e8f7ee;
}

.compare-page .cb-feature-inner {
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.compare-page .cb-feature-inner>div {
    padding:18px 13px;
    display:flex;
    align-items:center;
    gap:12px;
    border-right:1px solid #ffffff25;
    font-size:11px;
}

.compare-page .cb-feature-inner>div:last-child {
    border:0;
}

.compare-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;
}

.compare-page .cb-directory {
    padding:77px 0 82px;
    background:#f8faf8;
}

.compare-page .cb-dir-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:25px;
    margin-bottom:27px;
}

.compare-page .cb-dir-heading h2,
.compare-page .cb-section-head h2 {
    font:400 clamp(31px,3.1vw,43px)/1.2 Arial,sans-serif;
    color:#183e38;
    margin:9px 0;
}

.compare-page .cb-dir-heading p,
.compare-page .cb-section-head p {
    font-size:13px;
    color:#718078;
    line-height:1.8;
    max-width:630px;
    margin:0;
}

.compare-page .cb-count-box {
    min-width:145px;
    border:1px solid #dce7df;
    background:#fff;
    border-radius:13px;
    padding:15px 19px;
    text-align:center;
}

.compare-page .cb-count-box strong {
    display:block;
    font:400 35px Arial,sans-serif;
    color:#1b6949;
}

.compare-page .cb-count-box span {
    color:#708075;
    font-size:10px;
}

.compare-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;
}

.compare-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;
}

.compare-page .cb-search svg {
    width:18px;
    height:18px;
    color:#628472;
    flex:none;
}

.compare-page .cb-search input {
    border:0;
    background:transparent;
    outline:0;
    width:100%;
    min-width:0;
    font-size:12px;
    color:#214536;
}

.compare-page .cb-filterlabel {
    display:flex;
    align-items:center;
    gap:10px;
    color:#718076;
    font-weight:700;
    font-size:11px;
}

.compare-page .cb-filterlabel select {
    padding:12px 14px;
    border-radius:9px;
    background:#fbfdfb;
    border:1px solid #d4e1d8;
    min-width:165px;
    color:#234e3b;
}

.compare-page .cb-clear {
    background:#eef6f0;
    color:#276444;
    border:1px solid #d1e4d6;
    padding:11px 14px;
    border-radius:9px;
    font-size:11px;
    font-weight:800;
}

.compare-page .cb-directory-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:17px;
    margin-top:23px;
}

.compare-page .cb-brand-card {
    background:#fff;
    border:1px solid #dfe9e2;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 10px 25px #17412d0d;
}

.compare-page .cb-brand-head {
    padding:19px;
    display:flex;
    gap:13px;
    align-items:center;
    border-bottom:1px solid #eef1ed;
}

.compare-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;
}

.compare-page .cb-brand-title {
    font-size:16px;
    font-weight:800;
    color:#183e38;
}

.compare-page .cb-brand-category {
    font-size:11px;
    color:#75857a;
}

.compare-page .cb-brand-main {
    padding:17px 19px;
}

.compare-page .cb-brand-main p {
    font-size:12px;
    color:#687c70;
    line-height:1.7;
    margin:0 0 15px;
}

.compare-page .cb-brand-meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.compare-page .cb-brand-meta span {
    font-size:10px;
    padding:6px 9px;
    background:#f0f7f2;
    border-radius:30px;
    color:#286b47;
}

.compare-page .cb-brand-foot {
    display:flex;
    gap:10px;
    border-top:1px solid #eef1ed;
    padding:15px 19px;
}

.compare-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;
}

.compare-page .cb-brand-foot a:last-child {
    background:#eff6f0;
    color:#286044;
}

.compare-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;
}

.compare-page .cb-empty-graphic {
    width:94px;
    height:94px;
    margin:auto auto 16px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#edf7f0;
    color:#377b58;
}

.compare-page .cb-empty-graphic svg {
    width:48px;
    height:48px;
}

.compare-page .cb-empty h3 {
    font:400 25px Arial,sans-serif;
    color:#214d3a;
    margin:10px 0;
}

.compare-page .cb-empty p {
    max-width:580px;
    margin:0 auto 19px;
    color:#708075;
    font-size:12px;
    line-height:1.8;
}

.compare-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;
}

.compare-page .cb-data-note {
    margin-top:15px;
    color:#77897b;
    font-size:11px;
}

.compare-page .cb-process {
    padding:77px 0;
    background:#fff;
}

.compare-page .cb-section-head {
    text-align:center;
    max-width:750px;
    margin:0 auto 33px;
}

.compare-page .cb-section-head p {
    margin:auto;
}

.compare-page .cb-steps {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px;
}

.compare-page .cb-steps article {
    padding:23px 22px;
    background:#fff;
    border:1px solid #e0e8e0;
    border-radius:14px;
    position:relative;
}

.compare-page .cb-steps article>span {
    position:absolute;
    top:18px;
    right:18px;
    font:400 20px Arial,sans-serif;
    color:#c5a57a;
}

.compare-page .cb-step-icon {
    width:49px;
    height:49px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:#ecf6ee;
    color:#28774a;
    font-size:22px;
}

.compare-page .cb-steps article:nth-child(even) .cb-step-icon {
    background:#fcf2e6;
    color:#b27b37;
}

.compare-page .cb-steps h3 {
    font-size:15px;
    color:#204a38;
    margin:19px 0 8px;
}

.compare-page .cb-steps p {
    font-size:12px;
    line-height:1.8;
    color:#708076;
    margin:0;
}

.compare-page .cb-cta {
    background:#153e34;
    color:white;
    padding:57px 0;
    border-top:4px solid #c59556;
}

.compare-page .cb-cta-inner {
    display:flex;
    justify-content:space-between;
    gap:25px;
    align-items:center;
}

.compare-page .cb-cta h2 {
    font:400 clamp(27px,2.8vw,39px) Arial,sans-serif;
    margin:9px 0;
}

.compare-page .cb-cta p {
    margin:0;
    font-size:13px;
    color:#c4d9ce;
}

.compare-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;
}

.compare-page .cb-cta .cb-overline {
    color:#eed099;
}

@media(max-width:950px) {
    .compare-page .cb-hero-inner {
        gap:27px;
    }

    .compare-page .cb-feature-inner {
        grid-template-columns:repeat(2,1fr);
    }

    .compare-page .cb-steps {
        grid-template-columns:repeat(2,1fr);
    }

    .compare-page .cb-directory-grid {
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:750px) {
    .compare-page .cb-hero {
        padding:36px 0 45px;
    }

    .compare-page .cb-hero-inner {
        grid-template-columns:1fr;
    }

    .compare-page .cb-hero-visual {
        min-height:330px;
    }

    .compare-page .cb-dir-heading {
        align-items:flex-start;
        flex-direction:column;
    }

    .compare-page .cb-filterbar {
        flex-wrap:wrap;
    }

    .compare-page .cb-search {
        flex-basis:100%;
    }

    .compare-page .cb-directory {
        padding:50px 0;
    }

    .compare-page .cb-cta-inner {
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:510px) {
    .compare-page .cb-hero h1 {
        font-size:36px;
    }

    .compare-page .cb-hero-visual {
        padding:15px;
        min-height:315px;
    }

    .compare-page .cb-certificate {
        padding:23px;
    }

    .compare-page .cb-visual-label {
        top:10px;
        left:12px;
    }

    .compare-page .cb-feature-inner {
        grid-template-columns:1fr 1fr;
    }

    .compare-page .cb-feature-inner>div {
        font-size:10px;
        padding:13px 9px;
    }

    .compare-page .cb-feature-inner>div:nth-child(2) {
        border-right:0;
    }

    .compare-page .cb-directory-grid,
.compare-page .cb-steps {
        grid-template-columns:1fr;
    }

    .compare-page .cb-filterlabel {
        flex:1;
    }

    .compare-page .cb-filterlabel select {
        min-width:0;
        width:100%;
    }

    .compare-page .cb-clear {
        flex:1;
    }

    .compare-page .cb-cta a {
        white-space:normal;
    }
}

.compare-page {
    --cmp-navy:#143852;
    --cmp-green:#126747;
    --cmp-orange:#ce7a29;
    --cmp-line:#dfe8e3;
    --cmp-muted:#62788a;
}

.compare-page {
    background:#f6f9fa;
    color:var(--cmp-navy);
}

.compare-page .cmp-hero {
    position:relative;
    padding:68px 0 62px;
    background:linear-gradient(115deg,#eef8f2 0%,#fff 50%,#fff4e7 100%);
    border-bottom:1px solid #e1e9e4;
    overflow:hidden;
}

.compare-page .cmp-hero:after {
    content:'';
    position:absolute;
    width:420px;
    height:420px;
    right:-150px;
    top:-200px;
    border:1px solid #c9dccf;
    border-radius:50%;
    pointer-events:none;
}

.compare-page .cmp-hero-grid {
    display:grid;
    grid-template-columns:1.13fr .87fr;
    gap:46px;
    align-items:center;
}

.compare-page .cmp-eyebrow {
    font-size:10px;
    color:#a76a2b;
    letter-spacing:2px;
    font-weight:900;
    text-transform:uppercase;
}

.compare-page .cmp-crumb {
    display:flex;
    gap:10px;
    align-items:center;
    color:#6a7e7d;
    font-size:11px;
    margin-bottom:18px;
}

.compare-page .cmp-crumb a {
    color:var(--cmp-green);
    font-weight:800;
}

.compare-page .cmp-hero h1 {
    font:400 clamp(37px,4vw,56px)/1.12 Arial,sans-serif;
    letter-spacing:-1.4px;
    margin:15px 0 19px;
    color:#123c59;
}

.compare-page .cmp-hero h1 em {
    color:var(--cmp-green);
    font-style:normal;
}

.compare-page .cmp-hero p {
    max-width:565px;
    margin:0;
    color:#607583;
    line-height:1.85;
    font-size:14px;
}

.compare-page .cmp-actions {
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-top:25px;
}

.compare-page .cmp-primary,
.compare-page .cmp-ghost {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 19px;
    border-radius:9px;
    font-weight:800;
    font-size:12px;
    text-decoration:none;
    gap:10px;
}

.compare-page .cmp-primary {
    background:#176b4c;
    color:#fff;
}

.compare-page .cmp-ghost {
    background:#fff;
    border:1px solid #d3e0d7;
    color:#245440;
}

.compare-page .cmp-hero-preview {
    border:1px solid #dbe7e0;
    background:#fff;
    border-radius:20px;
    box-shadow:0 20px 45px #173d4512;
    padding:24px;
    position:relative;
}

.compare-page .cmp-preview-top {
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:11px;
    font-weight:800;
    color:#556f77;
    border-bottom:1px solid #e9eeeb;
    padding-bottom:15px;
}

.compare-page .cmp-preview-badge {
    color:#16764c;
    background:#eaf7ed;
    padding:5px 10px;
    border-radius:50px;
}

.compare-page .cmp-preview-grid {
    display:grid;
    grid-template-columns:1fr 48px 1fr;
    align-items:center;
    gap:8px;
    padding:22px 0;
}

.compare-page .cmp-preview-item {
    border-radius:12px;
    text-align:center;
    padding:20px 10px;
    background:#eef8f2;
    border:1px solid #dae9df;
}

.compare-page .cmp-preview-item.foreign {
    background:#f3f6f9;
    border-color:#e0e8ed;
}

.compare-page .cmp-preview-item span {
    display:grid;
    place-items:center;
    width:49px;
    height:49px;
    border-radius:15px;
    background:#fff;
    color:#147548;
    font-size:23px;
    margin:0 auto 10px;
}

.compare-page .cmp-preview-item.foreign span {
    color:#466b8b;
}

.compare-page .cmp-preview-item strong {
    font-size:12px;
    display:block;
    color:#1b4a3c;
}

.compare-page .cmp-preview-item small {
    font-size:10px;
    display:block;
    margin-top:4px;
    letter-spacing:0;
    font-weight:500;
    color:#718282;
}

.compare-page .cmp-vs {
    font:800 15px Arial;
    text-align:center;
    color:#c8863b;
}

.compare-page .cmp-preview-foot {
    font-size:11px;
    color:#73847f;
    border-top:1px solid #e9eeeb;
    padding-top:14px;
}

.compare-page .cmp-main {
    padding:63px 0 77px;
}

.compare-page .cmp-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:25px;
    margin-bottom:24px;
}

.compare-page .cmp-heading h2 {
    font:400 clamp(29px,3vw,40px) Arial,sans-serif;
    letter-spacing:-.6px;
    color:#173d52;
    margin:8px 0;
}

.compare-page .cmp-heading p {
    color:#6b7e82;
    font-size:13px;
    margin:0;
    max-width:590px;
}

.compare-page .cmp-search {
    display:flex;
    align-items:center;
    gap:9px;
    background:#fff;
    border:1px solid #cfdfd7;
    border-radius:9px;
    padding:0 14px;
    height:45px;
    min-width:250px;
    box-shadow:0 5px 16px #142b3a0a;
}

.compare-page .cmp-search svg {
    width:18px;
    color:#337953;
}

.compare-page .cmp-search input {
    border:none;
    outline:none;
    min-width:0;
    width:100%;
    color:#193b50;
    font-size:13px;
}

.compare-page .cmp-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}

.compare-page .cmp-category {
    position:relative;
    display:flex;
    flex-direction:column;
    text-align:left;
    align-items:flex-start;
    min-height:215px;
    padding:22px 20px;
    background:#fff;
    border:1px solid #dde8e1;
    border-radius:16px;
    cursor:pointer;
    box-shadow:0 9px 25px #14394d0b;
    transition:transform .2s,box-shadow .2s,border-color .2s;
}

.compare-page .cmp-category:hover,
.compare-page .cmp-category[aria-pressed=true] {
    transform:translateY(-3px);
    border-color:#94bca5;
    box-shadow:0 16px 34px #14394d18;
}

.compare-page .cmp-category[aria-pressed=true] {
    background:#f3faf5;
}

.compare-page .cmp-category[hidden] {
    display:none!important;
}

.compare-page .cmp-cat-number {
    position:absolute;
    top:23px;
    right:20px;
    color:#bd9260;
    font-weight:800;
    font-size:11px;
}

.compare-page .cmp-cat-icon {
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    border-radius:14px;
    background:#e8f6ed;
    color:#21724b;
    margin-bottom:22px;
    font-size:25px;
}

.compare-page .cmp-category:nth-child(3n+2) .cmp-cat-icon {
    background:#eaf2fb;
    color:#396f9c;
}

.compare-page .cmp-category:nth-child(3n) .cmp-cat-icon {
    background:#fff2e5;
    color:#ad7130;
}

.compare-page .cmp-category strong {
    font-size:16px;
    color:#163e50;
    margin-bottom:7px;
}

.compare-page .cmp-category p {
    font-size:12px;
    color:#71838b;
    margin:0;
    line-height:1.65;
    flex:1;
}

.compare-page .cmp-cat-link {
    display:flex;
    align-items:center;
    gap:7px;
    color:#187451;
    font-weight:800;
    font-size:11px;
    margin-top:17px;
}

.compare-page .cmp-empty {
    margin:16px 0;
    padding:20px;
    background:#fff;
    border:1px dashed #cbdad1;
    border-radius:12px;
    color:#607e77;
}

.compare-page .cmp-workspace {
    margin-top:35px;
    scroll-margin-top:140px;
    border:1px solid #dae7df;
    background:#fff;
    border-radius:20px;
    box-shadow:0 16px 36px #14394d0b;
    overflow:hidden;
}

.compare-page .cmp-workspace-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
    background:linear-gradient(100deg,#e9f6ec,#f8fbf9);
    padding:24px 27px;
    border-bottom:1px solid #dce8df;
}

.compare-page .cmp-workspace-head h2 {
    font:400 27px Arial,sans-serif;
    color:#184633;
    margin:5px 0 0;
}

.compare-page .cmp-workspace-head p {
    margin:5px 0 0;
    color:#688278;
    font-size:12px;
}

.compare-page .cmp-step {
    font-size:10px;
    font-weight:800;
    color:#936a35;
    border:1px solid #e5d6b5;
    border-radius:99px;
    padding:8px 11px;
    background:#fff;
}

.compare-page .cmp-workspace-body {
    padding:25px 27px 28px;
}

.compare-page .cmp-criteria {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:24px;
}

.compare-page .cmp-criteria span {
    padding:7px 10px;
    border-radius:99px;
    background:#f1f5f7;
    color:#385b68;
    font-size:11px;
    font-weight:700;
}

.compare-page .cmp-input-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.compare-page .cmp-input-card {
    border:1px solid #d9e6df;
    border-radius:14px;
    background:#f7fcf8;
    padding:20px;
}

.compare-page .cmp-input-card.foreign {
    background:#f8fafc;
    border-color:#dfe7ef;
}

.compare-page .cmp-input-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-bottom:14px;
}

.compare-page .cmp-input-head strong {
    font-size:15px;
    color:#1f5d41;
}

.compare-page .cmp-input-card.foreign .cmp-input-head strong {
    color:#406580;
}

.compare-page .cmp-input-head span {
    font-size:10px;
    color:#72877c;
}

.compare-page .cmp-field {
    display:block;
    margin-bottom:12px;
    font-size:11px;
    font-weight:800;
    color:#4c6764;
}

.compare-page .cmp-field input,
.compare-page .cmp-field textarea {
    display:block;
    width:100%;
    margin-top:6px;
    border:1px solid #d6e3db;
    border-radius:8px;
    padding:11px 12px;
    background:#fff;
    font:13px/1.5 Arial,sans-serif;
    color:#183f4f;
    outline:none;
}

.compare-page .cmp-field textarea {
    min-height:72px;
    resize:vertical;
}

.compare-page .cmp-field input:focus,
.compare-page .cmp-field textarea:focus {
    border-color:#439c69;
    box-shadow:0 0 0 3px #32894a13;
}

.compare-page .cmp-workspace-actions {
    margin-top:21px;
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.compare-page .cmp-workspace-actions button {
    border:0;
    border-radius:9px;
    padding:13px 18px;
    background:#156849;
    color:#fff;
    font-weight:800;
    font-size:12px;
}

.compare-page .cmp-workspace-actions button[type=reset] {
    background:#edf3f2;
    color:#31594d;
}

.compare-page .cmp-workspace-actions small {
    font-size:11px;
    color:#768780;
    letter-spacing:0;
    font-weight:500;
}

.compare-page .cmp-result {
    margin-top:24px;
    border:1px solid #dbe6df;
    border-radius:13px;
    overflow:hidden;
}

.compare-page .cmp-result[hidden] {
    display:none;
}

.compare-page .cmp-result h3 {
    font-size:15px;
    padding:16px 19px;
    margin:0;
    color:#1b4c39;
    background:#f1f8f2;
}

.compare-page .cmp-result table {
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
}

.compare-page .cmp-result th,
.compare-page .cmp-result td {
    padding:13px 15px;
    text-align:left;
    border-top:1px solid #e5eee7;
    font-size:12px;
    color:#375767;
    overflow-wrap:anywhere;
    vertical-align:top;
}

.compare-page .cmp-result th {
    background:#f6faf8;
    color:#1d4e38;
}

.compare-page .cmp-result tr td:first-child {
    font-weight:800;
    color:#5b7180;
    width:23%;
}

.compare-page .cmp-result tbody tr:nth-child(even) {
    background:#fafcfb;
}

.compare-page .cmp-disclaimer {
    padding:14px 16px;
    background:#fffaf0;
    border:1px solid #f0e1c1;
    border-radius:11px;
    font-size:11px;
    color:#806c47;
    margin-top:22px;
    line-height:1.7;
}

.compare-page .cmp-steps-section {
    padding:60px 0;
    background:#f0f5f2;
    border-top:1px solid #dfe9e1;
}

.compare-page .cmp-steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px;
    margin-top:23px;
}

.compare-page .cmp-steps article {
    background:#fff;
    border:1px solid #dfe8e2;
    border-radius:14px;
    padding:24px;
}

.compare-page .cmp-steps article span {
    font:400 31px Arial,sans-serif;
    color:#bd8b4c;
}

.compare-page .cmp-steps h3 {
    font-size:15px;
    color:#234d3e;
    margin:10px 0 7px;
}

.compare-page .cmp-steps p {
    font-size:12px;
    color:#72847a;
    line-height:1.7;
    margin:0;
}

.compare-page .cmp-cta {
    padding:53px 0;
    background:#153d35;
    color:#fff;
}

.compare-page .cmp-cta .wrap {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.compare-page .cmp-cta h2 {
    font:400 clamp(27px,3vw,38px) Arial,sans-serif;
    margin:0 0 10px;
}

.compare-page .cmp-cta p {
    margin:0;
    color:#c8dad1;
    font-size:13px;
}

.compare-page .cmp-cta a {
    background:#fff;
    border-radius:9px;
    color:#205441;
    font-size:12px;
    padding:12px 18px;
    font-weight:800;
    white-space:nowrap;
}

@media(max-width:1050px) {
    .compare-page .cmp-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .compare-page .cmp-hero-grid {
        gap:22px;
    }
}

@media(max-width:780px) {
    .compare-page .cmp-hero-grid {
        grid-template-columns:1fr;
    }

    .compare-page .cmp-hero {
        padding:42px 0;
    }

    .compare-page .cmp-hero-preview {
        max-width:600px;
    }

    .compare-page .cmp-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .compare-page .cmp-heading {
        align-items:start;
        flex-direction:column;
    }

    .compare-page .cmp-search {
        width:100%;
    }

    .compare-page .cmp-steps {
        grid-template-columns:1fr;
    }

    .compare-page .cmp-cta .wrap {
        flex-direction:column;
        align-items:flex-start;
    }

    .compare-page .cmp-input-grid {
        grid-template-columns:1fr;
    }

    .compare-page .cmp-workspace-body {
        padding:19px;
    }

    .compare-page .cmp-workspace-head {
        padding:20px;
    }
}

@media(max-width:480px) {
    .compare-page .cmp-main {
        padding:43px 0 55px;
    }

    .compare-page .cmp-grid {
        gap:10px;
    }

    .compare-page .cmp-category {
        padding:17px 14px;
        min-height:215px;
    }

    .compare-page .cmp-category strong {
        font-size:14px;
    }

    .compare-page .cmp-category p {
        font-size:11px;
    }

    .compare-page .cmp-cat-icon {
        width:46px;
        height:46px;
        font-size:22px;
    }

    .compare-page .cmp-cat-number {
        top:16px;
        right:14px;
    }

    .compare-page .cmp-result {
        overflow-x:auto;
    }

    .compare-page .cmp-result table {
        min-width:480px;
    }

    .compare-page .cmp-cta a {
        white-space:normal;
    }

    .compare-page .cmp-hero h1 {
        font-size:36px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .compare-page .cmp-category {
        transition:none;
    }

    .compare-page .cmp-category:hover {
        transform:none;
    }
}

.compare-page,
.compare-page button,
.compare-page input,
.compare-page select,
.compare-page textarea {
    font-family:Arial,Helvetica,sans-serif;
}

.compare-page .cmp-hero h1 {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:700;
    font-size:clamp(32px,3.55vw,48px);
    line-height:1.19;
    letter-spacing:-1.25px;
    overflow-wrap:break-word;
}

.compare-page .cmp-heading h2,
.compare-page .cmp-workspace-head h2,
.compare-page .cmp-cta h2 {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:700;
    line-height:1.25;
    letter-spacing:-.6px;
}

.compare-page .cmp-steps article span {
    font-family:Arial,Helvetica,sans-serif;
    font-weight:700;
}

.compare-page .cmp-category strong {
    line-height:1.4;
}

.compare-page .cmp-preview-grid>* {
    min-width:0;
}

.compare-page .cmp-grid,
.compare-page .cmp-input-grid,
.compare-page .cmp-hero-grid {
    min-width:0;
}

.compare-page .cmp-result {
    max-width:100%;
    overflow-x:auto;
}

.compare-page .cmp-result table {
    min-width:480px;
}

@media(max-width:780px) {
    .compare-page .cmp-hero h1 {
        font-size:clamp(30px,6.2vw,40px);
    }

    .compare-page .cmp-workspace-head h2 {
        font-size:24px;
    }
}

@media(max-width:480px) {
    .compare-page .cmp-hero h1 {
        font-size:31px;
        letter-spacing:-.7px;
    }

    .compare-page .cmp-preview-grid {
        grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);
    }

    .compare-page .cmp-preview-item {
        padding:15px 5px;
    }

    .compare-page .cmp-category {
        min-width:0;
    }

    .compare-page .cmp-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

.compare-page [hidden] {
    display: none !important;
}
