.zwc-form-section {
    padding: 50px;
    width: 42%;
    background: #fff;
    border-radius: 8px;
    box-sizing: border-box;
    min-height: 647px;
}

.zwc-form-backdrop {
    background: radial-gradient(55.39% 45.23% at 63.91% -13.87%, #142EC4 0%, rgba(0, 0, 0, 0) 100%),
        radial-gradient(72.23% 67.2% at 111.12% 83.85%, #142EC4 0%, rgba(0, 0, 0, 0) 100%),
        radial-gradient(53.21% 87.17% at 64.71% 145.03%, #8C14C4 0%, rgba(0, 0, 0, 0) 100%),
        #000;
    overflow: hidden;
    padding: 180px 0;
    max-width: 1660px;
    margin: 0 auto;
    border-radius: 24px;
    position: relative;
}

.zwc-deco {
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.zwc-deco-top {
    height: auto;
    /* fixed px (not %) so the form's dynamic height doesn't move it */
    top: 140px;
    left: 54%;
}

.zwc-deco-bottom {
    width: 112px;
    height: auto;
    bottom: 10%;
    right: 8%;
    z-index: 1;
}

.zwc-deco-circle {
    width: 250px;
    height: auto;
    bottom: -100px;
    left: 5%;
}

/* Small blurred glow accents (match Figma banner) */
.zwc-deco-accent-1 {
    width: 51px;
    height: auto;
    /* fixed px (not %) so the form's dynamic height doesn't move it */
    top: 660px;
    left: 50%;
    z-index: 0;
}

.zwc-deco-accent-2 {
    width: 58px;
    height: auto;
    /* fixed px (not %) so the form's dynamic height doesn't move it */
    top: 320px;
    right: 80px;
    z-index: 1;
}

.zwc-form-outwrap {
    display: flex;
    justify-content: space-between;
    position: relative;
    align-items: flex-start;
}

.zwc-form-content {
    width: 45%;
    max-width: 518px;
    color: #fff;
    position: relative;
    margin-top: 50px;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 48px;
}

.zwc-form-content .zwc-title-wrap {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.zwc-form-content h1 {
    font-family: var(--secondaryfont-semibold);
    font-size: 80px;
    line-height: 88px;
    letter-spacing: -3.2px;
    color: #fff;
    margin: 0;
}

.zwc-form-content h1 .zwc-blue-txt {
    color: #6691FF;
}

.zwc-form-content .zwc-title-wrap p {
    font-family: var(--zf-secondary-medium);
    font-size: 20px;
    line-height: 30px;
    letter-spacing: -0.4px;
    color: #CECECE;
    margin: 0;
}

.zwc-cta-btn-wrap {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.zwc-page-wrapper .zwc-cta-btn-wrap .cont-btn {
    color: #fff;
    border: 2px solid #fff;
}

/* ==========================================================================
   Security Dashboard feature page (Revamp)
   ========================================================================== */

/* ---- Buttons (Figma: red primary, outlined secondary) ---- */
.zwc-page-wrapper .act-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 18px 33px;
    border-radius: 2px;
    font-family: var(--secondaryfont-semibold);
    font-size: 17px;
    line-height: 1;
    text-decoration: none;
    transition: opacity .3s ease, background .3s ease;
}

.zwc-page-wrapper .act-btn.cta-btn {
    background: #e42527;
    color: #fff;
}

.zwc-page-wrapper .act-btn.cta-btn:hover {
    opacity: .9;
}

.zwc-page-wrapper .act-btn.cont-btn {
    border: 1px solid #000;
    color: #000;
}

.zwc-blue-txt {
    color: #2b1ec6;
}

/* ---- Bottom CTA section ---- */
.zwc-bottom-cta-wrap {
    background: radial-gradient(68.57% 68.57% at 50% 100%, #1535B3 0%, #000 100%);
    color: #fff;
    padding: 140px 0;
    text-align: center;
}

.zwc-bottom-cta-wrap h2 {
    margin: 0 auto 48px;
    color: #fff;
    font-family: var(--secondaryfont-semibold);
    font-size: 80px;
    line-height: 88.8px;
    letter-spacing: -2.4px;
    max-width: 1070px;
}

.zwc-bottom-cta-wrap h2 .zwc-blue-txt {
    color: #6691ff;
}

.zwc-cta-btn-wrap {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.zwc-bottom-cta-wrap .act-btn {
    padding: 18px 40px;
    border-radius: 2px;
}

.zwc-bottom-cta-wrap .act-btn.cont-btn {
    color: #fff;
    border: 1px solid #fff;
}

/* ---- Section 2: Top four password managers (comparison table) ---- */
.zwc-comp-table-wrap {
    padding: 140px 0;
    position: relative;
}

.zwc-comp-table-wrap h2 {
    text-align: center;
    font-family: var(--secondaryfont-semibold);
    font-size: 64px;
    line-height: 70px;
    letter-spacing: -1.92px;
    margin: 0;
}

.zwc-comp-table-wrap .table-wrap {
    width: 100%;
    /* overflow must stay visible so the sticky Features row can stick to the page;
       horizontal scroll is re-enabled below 992px (see media query) */
    overflow: visible;
    margin: 60px 0 0;
}

.zwc-comp-table-wrap .table-wrap ul {
    width: 100%;
    position: relative;
    z-index: 1;
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 900px;
}

.zwc-comp-table-wrap .table-wrap ul li {
    display: grid;
    grid-template-columns: 38% 15% 16% 15% 16%;
}

.zwc-comp-table-wrap .table-wrap ul li:first-child {
    position: sticky;
    top: 65px;
    z-index: 1;
    background: white;
}

.zwc-comp-table-wrap .table-wrap ul li>span {
    padding: 25px 30px;
    box-sizing: border-box;
    position: relative;
    border-bottom: 1px solid #E7E7E7;
    transition: all .3s ease;
}

.zwc-comp-table-wrap .middle-animated .table-wrap .table-body li>span:nth-child(2) {
    background-color: #fff;
    box-shadow: 0px 13px 23.978px -3.029px rgba(67, 67, 67, 0.15);
    border: 0.5px solid #E7E7E7;
}

.zwc-comp-table-wrap .middle-animated .table-wrap ul li:first-child>span:nth-child(2) {
    box-shadow: 0px 0 23.978px -3.029px rgba(67, 67, 67, 0.15);
}

.zwc-comp-table-wrap .table-wrap ul li:first-child>span {
    border-radius: 16px 16px 0 0;
    display: flex;
    align-items: center;
    padding: 30px 30px 25px;
}

.zwc-comp-table-wrap .table-wrap .table-body li>span:nth-child(1) {
    padding: 30px 30px 25px 0;
    font-family: var(--zf-secondary-medium, var(--secondaryfont-regular));
}

.zwc-comp-table-wrap .table-wrap ul li:last-child>span:not(:first-child) {
    text-align: center;
    font-family: var(--secondaryfont-semibold);
}

.zwc-comp-table-wrap .table-wrap ul li:last-child>span:not(:first-child) label {
    display: block;
    font-size: 14px;
    font-family: var(--secondaryfont-regular);
}

.zwc-comp-table-wrap .zv-tick::before,
.zwc-comp-table-wrap .zv-cross::before {
    position: absolute;
    content: "";
    inset: 0;
    margin: auto;
}

.zwc-comp-table-wrap .zv-tick::before {
    display: block;
    width: 8px;
    height: 15px;
    transform: rotate(45deg);
    border-bottom: 3px solid #2B1EC6;
    border-right: 3px solid #2B1EC6;
}

.zwc-comp-table-wrap .zv-cross::before {
    background: linear-gradient(to bottom, transparent 40%, #d00 45%, #d00 55%, transparent 0%), linear-gradient(to right, transparent 40%, #d00 45%, #d00 55%, transparent 0);
    transform: rotate(45deg);
    width: 16px;
    height: 16px;
}

.zwc-comp-table-wrap .zv-tick span,
.zwc-comp-table-wrap .zv-cross span {
    opacity: 0;
    text-align: center;
    display: block;
}

.zwc-comp-table-wrap .table-wrap ul li:last-child>span {
    border-bottom: none;
    padding: 40px 20px;
    border-radius: 0 0 16px 16px;
}

.zwc-comp-table-wrap .zd-title img {
    display: block;
    margin: auto;
}

/* ---- Section 3: Top eight password managers (sticky-sidebar tabs) ---- */
.zwc-tab-wrap {
    padding: 120px 0;
    background: #F8F8F8;
}

.zwc-tab-heading {
    text-align: center;
    font-family: var(--secondaryfont-semibold);
    font-size: 64px;
    line-height: 70px;
    letter-spacing: -1.92px;
    margin: 0 0 96px;
}

.zwc-iv-layout {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}

.zwc-iv-sidebar {
    width: 280px;
    flex-shrink: 0;
    position: sticky;
    top: 100px;
}

.zwc-iv-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: calc(100vh - 140px);
    overflow-y: auto;
    scrollbar-width: thin;
    padding-bottom: 25px;
}

.zwc-iv-nav-item {
    display: flex;
    align-items: center;
    min-height: 77px;
    padding: 18px 24px;
    text-decoration: none;
    border-radius: 12px;
    border: 1px solid #e6e6ef;
    background: #fff;
    transition: all .3s ease;
    cursor: pointer;
    margin: 0 10px;
}

.zwc-iv-nav-item:hover {
    border-color: #b9c6ff;
}

.zwc-iv-nav-item.active {
    background: #2b1ec6;
    border-color: #2b1ec6;
    box-shadow: rgba(0,0,0,0.25) 0 19px 16px -7px;
    z-index: 1;
    font-family: var(--zf-primary-semibold);
}

.zwc-iv-nav-label {
    font-family: var(--zf-primary-medium);
    font-size: 16px;
    line-height: 22px;
    color: #555;
    transition: color .3s ease;
}

.zwc-iv-nav-item.active .zwc-iv-nav-label {
    color: #fff;
    font-family: var(--secondaryfont-semibold);
}

.zwc-iv-main {
    flex: 1;
    min-width: 0;
}

.zwc-pm-article {
    scroll-margin-top: 90px;
    padding: 40px;
    margin-bottom: 24px;
    border-radius: 8px;
    border: 1px solid #EBEBEB;
    background: #FFF;
    box-shadow: 0 15px 20px -5px rgba(10, 10, 10, 0.10), 0 5px 10px -5px rgba(10, 10, 10, 0.05);
}

.zwc-pm-article:last-child {
    margin-bottom: 0;
}

.zwc-pm-head {
    margin: 0 0 24px;
}

.zwc-pm-logo {
    display: block;
    height: 72px;
    width: auto;
    max-width: 240px;
}

/* text fallback for brands without a logo asset (e.g. NordPass) */
.zwc-pm-logo-text {
    display: inline-flex;
    align-items: center;
    font-family: var(--secondaryfont-semibold);
    font-size: 26px;
    letter-spacing: -0.52px;
    color: #000;
}

.zwc-pm-intro {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    color: #000;
    margin: 0 0 18px;
}

/* first paragraph of each article uses the medium weight */
.zwc-pm-article>p:first-of-type {
    font-family: var(--zf-secondary-medium);
}

.zwc-pm-ui {
    margin: 32px 0 76px;
    border-radius: 12px;
    overflow: hidden;
    background: #eef0f6;
}

.zwc-pm-ui img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 12px;
}

.zwc-pm-sub {
    font-family: var(--secondaryfont-semibold);
    font-size: 32px;
    line-height: 40px;
    letter-spacing: -0.64px;
    color: #000;
    margin: 26px 0 18px;
}

.zwc-pm-point {
    margin: 0 0 22px;
}

.zwc-pm-point h4 {
    font-family: var(--secondaryfont-semibold);
    font-size: 24px;
    line-height: 30px;
    letter-spacing: -0.48px;
    color: #000;
    margin: 0 0 8px;
}

.zwc-pm-point p {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    color: #2b2b2b;
    margin: 0;
}

.zwc-pm-point p,
.zwc-pm-note {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    color: #3a3a3a;
    margin: 0 0 12px;
}

.zwc-pm-list {
    margin: 0 0 8px;
    padding-left: 22px;
    list-style: disc;
}

.zwc-pm-list li {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    color: #3a3a3a;
    margin: 0 0 8px;
}

.zwc-pm-list li::marker {
    color: #2B1EC6;
}

/* bold plan labels in the Pricing list */
.zwc-pm-list strong {
    font-family: var(--secondaryfont-semibold);
    color: #000;
}

/* "best suited for" list — radio-button style markers */
.zwc-pm-list-radio {
    list-style: none;
    padding-left: 0;
}

.zwc-pm-list-radio li {
    position: relative;
    padding-left: 34px;
}

.zwc-pm-list-radio li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid #2b1ec6;
    box-sizing: border-box;
}

.zwc-pm-list-radio li::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 11px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #2b1ec6;
}

/* User reviews — review 1: plain quote + "Verified user" link */
.zwc-pm-review {
    margin: 0 0 24px;
}

.zwc-pm-review p {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    color: #000;
    margin: 0 0 14px;
}

.zwc-pm-review cite {
    display: inline-block;
    font-style: normal;
    font-family: var(--secondaryfont-semibold);
    font-size: 18px;
    letter-spacing: -0.36px;
    color: var(--zwc-link-clr, #2b1ec6);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* User reviews — review 2: bordered testimonial box */
.zwc-pm-review-box {
    margin: 24px 0;
    padding: 48px;
    border: 1px solid #486bdd;
    border-radius: 12px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.zwc-pm-review-box p {
    margin: 0;
}

.zwc-pm-review-box cite {
    color: #000;
    text-decoration: none;
    font-family: var(--secondaryfont-bold, var(--secondaryfont-semibold));
}

.zwc-pm-review-box cite span {
    display: block;
    margin-top: 8px;
    font-family: var(--zf-secondary-medium, var(--secondaryfont-regular));
    font-size: 18px;
    letter-spacing: -0.36px;
    color: #000;
    text-decoration: none;
}

.zwc-pm-learn {
    display: inline-block;
    font-family: var(--secondaryfont-semibold);
    font-size: 18px;
    letter-spacing: -0.36px;
    color: var(--zwc-link-clr, #2b1ec6);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.zwc-pm-disclaimer {
    font-family: var(--zf-secondary-regularitalic);
    font-size: 17px;
    line-height: 28px;
    letter-spacing: -0.34px;
    margin: 48px 0 0;
}

.zwc-pm-disclaimer strong {
    font-family: var(--zf-secondary-semibolditalic);
    /* font-style: italic; */
    /* color: #8a8a9a; */
}

.zwc-pm-disclaimer a {
    color: var(--zwc-link-clr, #2b1ec6);
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* all links on the page use the brand link colour */
.zwc-page-wrapper a {
    color: var(--zwc-link-clr, #2b1ec6);
}

/* "Verified user" anchor inherits the cite's link styling */
.zwc-pm-review cite a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ---- Sections 4 & 5: card sliders ---- */
.zwc-slider-wrap {
    padding: 120px 0;
    position: relative;
    overflow: hidden;
}

.zwc-slider-dark {
    background: #000;
}

.zwc-slider-light {
    background: #fff;
}

.zwc-slider-head {
    position: relative;
    display: grid;
    /* match Figma: heading 670px on the left, intro/arrows column on the right */
    grid-template-columns: 670px 1fr;
    gap: 28px 60px;
    align-items: start;
    margin-bottom: 50px;
}

.zwc-slider-head h2 {
    grid-column: 1;
    grid-row: 1 / span 2;
    font-family: var(--secondaryfont-semibold);
    font-size: 64px;
    line-height: 70px;
    letter-spacing: -1.92px;
    margin: 0;
    max-width: 670px;
}

.zwc-slider-head p {
    grid-column: 2;
    font-family: var(--secondaryfont-regular);
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -0.36px;
    margin: 0;
    max-width: 462px;
}

.zwc-slider-dark h2 {
    color: #fff;
}

.zwc-slider-dark p {
    color: #cecece;
}

.zwc-slider-light h2 {
    color: #000;
}

.zwc-slider-light p {
    color: #3a3a3a;
}

/* Arrows sit below the cards, aligned right (matches Figma) */
.zwc-slider-arrows {
    display: flex;
    justify-content: flex-end;
    /* gap: 28px; */
    margin-top: 48px;
}

.zwc-slider-prev,
.zwc-slider-next {
    width: 34px;
    height: 22px;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    padding: 0;
    transition: opacity .25s ease;
}

.zwc-slider-dark .zwc-slider-prev,
.zwc-slider-dark .zwc-slider-next {
    color: #fff;
}

.zwc-slider-light .zwc-slider-prev,
.zwc-slider-light .zwc-slider-next {
    color: #000;
}

/* arrow shaft */
.zwc-slider-prev::after,
.zwc-slider-next::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 26px;
    height: 2px;
    background: currentColor;
    transform: translateY(-50%);
    transition: all .4s ease;
}

.zwc-slider-prev::after {
    left: 0;
}

.zwc-slider-next::after {
    right: 0;
}

/* arrow head (chevron) — rounded tips, borrowed from the learn-more-cta arrow */
.zwc-slider-prev::before,
.zwc-slider-next::before {
    content: "";
    position: absolute;
    top: 50%;
    width: 16px;
    height: 16px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    border-radius: 1px;
    transition: all .4s ease;
}

.zwc-slider-next::before {
    right: 0;
    transform: translateY(-50%) rotate(45deg);
}

.zwc-slider-prev::before {
    left: 0;
    transform: translateY(-50%) rotate(-135deg);
}

.zwc-slider-prev.slick-disabled,
.zwc-slider-next.slick-disabled {
    opacity: .3;
    cursor: default;
}

/* Slider track / cards */
.zwc-card-slider {
    margin: 0 -12px;
}

/* let the next card peek past the content edge (section clips it) */
.zwc-card-slider .slick-list {
    overflow: visible;
}

.zwc-slide-card {
    box-sizing: border-box;
    margin: 0 12px;
    width: 424px;
    height: 450px;
    border-radius: 12px;
    padding: 50px 55px;
}

.zwc-slider-dark .zwc-slide-card {
    background: #191919;
    height: 495px;
}

.zwc-slider-light .zwc-slide-card {
    width: 385px;
    height: 570px;
    background: #F8F8F8;
}

.zwc-slide-card h3::before {
    content: "";
    display: block;
    width: 56px;
    height: 57px;
    margin: 0 0 20px;
    background-image: url("/sites/zweb/images/vault/pwd-ment-icon-sprite.svg");
    background-repeat: no-repeat;
    /* sprite (849x62) scaled to 14 slots of 56px each = 784px wide */
    background-size: 784px 57px;
    background-position: 0 0;
}

/* Section 4 (dark slider) — icons 1–6 */
.zwc-slider-dark .zwc-slide-card:nth-of-type(1) h3::before {
    background-position: 0 0;
}

.zwc-slider-dark .zwc-slide-card:nth-of-type(2) h3::before {
    background-position: -56px 0;
}

.zwc-slider-dark .zwc-slide-card:nth-of-type(3) h3::before {
    background-position: -112px 0;
}

.zwc-slider-dark .zwc-slide-card:nth-of-type(4) h3::before {
    background-position: -168px 0;
}

.zwc-slider-dark .zwc-slide-card:nth-of-type(5) h3::before {
    background-position: -224px 0;
    width: 61px;
}

.zwc-slider-dark .zwc-slide-card:nth-of-type(6) h3::before {
    background-position: -295px 0;
    width: 42px;
}

/* Section 5 (light slider) — icons 7–14 */
.zwc-slider-light .zwc-slide-card:nth-of-type(1) h3::before {
    background-position: -346px 0;
    width: 51px;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(2) h3::before {
    background-position: -401px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(3) h3::before {
    background-position: -456px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(4) h3::before {
    background-position: -504px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(5) h3::before {
    background-position: -560px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(6) h3::before {
    background-position: -616px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(7) h3::before {
    background-position: -672px 0;
}

.zwc-slider-light .zwc-slide-card:nth-of-type(8) h3::before {
    background-position: -728px 0;
}

.zwc-slide-card h3 {
    font-family: var(--secondaryfont-semibold);
    font-size: 24px;
    line-height: 30px;
    letter-spacing: -0.72px;
    margin: 0 0 12px;
}

.zwc-slide-card p {
    font-family: var(--secondaryfont-regular);
    font-size: 17px;
    line-height: 27px;
    margin: 0;
}

.zwc-slider-dark .zwc-slide-card h3 {
    color: #fff;
}

.zwc-slider-dark .zwc-slide-card p {
    color: #b5b5c5;
}

.zwc-slider-light .zwc-slide-card h3 {
    color: #000;
}

.zwc-slider-light .zwc-slide-card p {
    color: #3a3a3a;
}

@media only screen and (max-width: 1440px) {
    .zwc-form-backdrop {
        border-radius: 0;
    }

    .zwc-form-content h1 {
        font-size: 72px;
        line-height: 80px;
    }

    .zwc-deco-accent-2 {
        right: 10px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 58px;
        line-height: 66px;
    }

    .zwc-slider-head h2 {
        max-width: 610px;
    }

    .zwc-slide-card {
        height: 100%;
    }
    .zwc-slider-dark .zwc-slide-card{
        height: 550px;
    }
    .zwc-slider-light .zwc-slide-card{
        height: 600px;
    }

    .zwc-choose-wrap .zwc-slider-head h2 {
        max-width: 590px;
    }

    .zwc-comp-table-wrap {
        padding: 100px 0;
    }

    .zwc-deco-bottom {
        right: 5%;
    }


    .zwc-bottom-cta-wrap h2 {
        font-size: 72px;
        line-height: 80px;
    }
}

@media only screen and (max-width: 1280px) {
    .zwc-form-content h1 {
        font-size: 64px;
        line-height: 68px;
        max-width: 400px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 52px;
        line-height: 60px;
    }

    .zwc-pm-sub {
        font-size: 30px;
        line-height: 38px;
    }

    .zwc-pm-point h4 {
        font-size: 22px;
        line-height: 30px;
    }

    .zwc-slider-head h2 {
        max-width: 540px;
    }

    .zwc-slider-head {
        grid-template-columns: 550px 1fr;
    }

    .zwc-choose-wrap .zwc-slider-head h2 {
        max-width: 530px;
    }

    .zwc-bottom-cta-wrap h2 {
        font-size: 66px;
        line-height: 74px;
        max-width: 880px;
    }
    .zwc-slide-card{
        padding: 40px;
    }

}

@media only screen and (max-width: 1199px) {
    .zwc-form-content h1 {
        font-size: 56px;
        line-height: 64px;
    }

    .zwc-pm-logo {
        transform: scale(.8);
        transform-origin: left center;
    }

    .zwc-form-backdrop {
        padding: 100px 0;
    }

    .zwc-deco {
        display: none;
    }

    .zwc-form-content .zwc-title-wrap p {
        font-size: 19px;
        line-height: 30px;
    }

    /* ~2 cards per view on tablet (overrides both dark & light card widths) */
    .zwc-slider-wrap .zwc-slide-card {
        width: 374px;
    }

    .zwc-form-section {
        width: 48%;
    }

    .zwc-bottom-cta-wrap {
        padding: 100px 0;
    }

    .zwc-comp-table-wrap .table-wrap ul li:first-child {
        top: 0;
    }

    .zwc-bottom-cta-wrap h2 {
        font-size: 56px;
        line-height: 64px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 48px;
        line-height: 56px;
    }

    .zwc-iv-sidebar {
        top: 30px;
    }


    .zwc-page-wrapper .act-btn {
        padding: 18px 24px;
        font-size: 17px;
    }

    .zwc-comp-table-wrap {
        padding: 100px 0;
    }

    .zwc-comp-table-wrap h2 {
        font-size: 44px;
        line-height: 52px;
    }

    .zwc-tab-heading {
        margin: 0 0 76px;
    }

    .zwc-pm-sub {
        font-size: 26px;
        line-height: 34px;
    }

    .zwc-tab-wrap {
        padding: 100px 0;
    }

    .zwc-tab-heading {
        font-size: 44px;
        line-height: 52px;
    }

    .zwc-iv-sidebar {
        width: 230px;
    }

    .zwc-iv-layout {
        gap: 28px;
    }

    .zwc-slider-wrap {
        padding: 100px 0;
    }

    .zwc-slider-head h2 {
        font-size: 42px;
        line-height: 50px;
    }

    .zwc-slider-head {
        grid-template-columns: 460px 1fr;
    }

    .zwc-slider-head p {
        max-width: 565px;
    }

    .zwc-slider-head h2,
    .zwc-choose-wrap .zwc-slider-head h2 {
        max-width: 430px;
        letter-spacing: -1.12px;
    }

    .zwc-slider-head h2 {
        letter-spacing: -1.12px;
        max-width: 440px;
    }
    .zwc-slider-light .zwc-slide-card{
        height: 685px;
    }
}

@media only screen and (max-width: 1024px) {
    .zwc-form-content h1 {
        font-size: 52px;
        line-height: 58px;
        letter-spacing: -.96px;
    }

    .zwc-form-content .zwc-title-wrap p {
        font-size: 18px;
        line-height: 30px;
    }

    .zwc-comp-table-wrap {
        padding: 70px 0;
    }

    .zwc-comp-table-wrap h2 {
        font-size: 40px;
        line-height: 48px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 40px;
        line-height: 48px;
    }

    .zwc-tab-heading {
        margin: 0 0 66px;
    }

    .zwc-pm-sub {
        font-size: 24px;
        line-height: 32px;
    }

    .zwc-slider-head {
        grid-template-columns: 420px 1fr;
    }
    .zwc-slide-card{
        padding: 40px 30px;
        margin: 0 6px;
    }
}

@media only screen and (max-width: 991px) {
    .zwc-form-content h1 {
        font-size: 48px;
        line-height: 56px;
        max-width: 480px;
        letter-spacing: -1.96px;
        margin: auto;
    }

    .zwc-form-outwrap {
        flex-direction: column;
        margin: 0 auto;
        max-width: 650px;
    }

    .zwc-form-content {
        margin-top: 0
    }

    .zwc-form-content {
        max-width: 650px;
    }

    .zwc-tab-heading {
        margin: 0 0 46px;
    }

    .zwc-form-content,
    .zwc-form-section {
        width: 100%
    }

    .zwc-form-content .zwc-title-wrap {
        text-align: center;
    }

    .zwc-form-section {
        margin-top: 80px
    }

    .zwc-choose-wrap .zwc-slider-head h2 {
        max-width: 540px;
    }

    .zwc-slider-head p {
        font-size: 17px;
        line-height: 26px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 36px;
        line-height: 44px;
    }

    .zwc-bottom-cta-wrap h2 {
        font-size: 48px;
        line-height: 56px;
        letter-spacing: -1.06px;
    }

    .zwc-banner-wrap .zwc-form-section {
        width: 100%;
    }

    .zwc-tab-wrap {
        padding: 70px 0;
    }

    .zwc-comp-table-wrap .table-wrap {
        overflow-x: auto;
        margin: 30px 0 0;
    }

    .zwc-iv-layout {
        flex-direction: column;
        gap: 24px;
    }

    /* hide the sidebar menu; show the articles stacked one by one */
    .zwc-iv-sidebar {
        display: none;
    }

    .zwc-iv-main {
        width: 100%;
    }

    .zwc-slider-head {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .zwc-slider-head h2 {
        max-width: 440px;
        letter-spacing: -1.12px;
    }

    .zwc-slider-head h2 {
        max-width: 550px;
        margin: auto;
    }

    .zwc-slider-head p {
        max-width: 655px;
        margin: auto;
    }

    .zwc-slider-head p {
        grid-column: 1;
    }

    .zwc-bottom-cta-wrap h2 {
        max-width: 660px;
    }
    .zwc-slider-dark .zwc-slide-card{
        height: 475px;
    }
    .zwc-slider-light .zwc-slide-card{
        height: 550px;
    }
}

@media only screen and (max-width: 767px) {
    .zwc-form-content h1 {
        font-size: 42px;
        line-height: 50px;
        max-width: 510px;
        letter-spacing: -1.06px;
    }

    .zwc-cta-btn-wrap {
        width: fit-content;
        margin: auto;
    }

    .zwc-page-wrapper .act-btn {
        padding: 16px 24px;
        font-size: 16px;
    }

    .zwc-bottom-cta-wrap h2 {
        font-size: 38px;
        line-height: 46px;
    }

    .zwc-bottom-cta-wrap h2 {
        max-width: 520px;
        margin: 0 auto 38px;
    }

    .zwc-comp-table-wrap {
        padding: 70px 0;
    }

    .zwc-comp-table-wrap h2 {
        font-size: 30px;
        line-height: 38px;
    }

    .zwc-tab-wrap {
        padding: 70px 0;
    }

    .zwc-tab-heading {
        font-size: 30px;
        line-height: 38px;
        margin-bottom: 36px;
    }

    .zwc-pm-sub {
        font-size: 22px;
        line-height: 28px;
    }

    .zwc-pm-point h4 {
        font-size: 20px;
        line-height: 28px;
    }

    .zwc-slider-head {
        gap: 18px 60px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 30px;
        line-height: 38px;
        letter-spacing: -.96px;
    }

    .zwc-form-content .zwc-title-wrap p {
        font-size: 17px;
        line-height: 28px;
    }

    .zwc-form-content h1 {
        font-size: 40px;
        line-height: 48px;
        max-width: 420px;
        letter-spacing: -0.96px;
    }

    .zwc-slide-card h3 {
        font-size: 22px;
        line-height: 30px;
    }

    .zwc-pm-review-box {
        margin: 24px 0;
        padding: 28px;
    }

    .zwc-pm-logo-text {
        font-size: 22px;
    }

    .zwc-slider-wrap {
        padding: 70px 0;
    }

    .zwc-slider-head h2 {
        font-size: 30px;
        line-height: 38px;
    }
    .zwc-slide-card{
        padding: 30px;
    }
    .zwc-slider-dark .zwc-slide-card{
        height: 560px;
    }
    .zwc-slider-light .zwc-slide-card{
        height: 671px;
    }
}
@media only screen and (max-width: 600px) {
    .zwc-slider-dark .zwc-slide-card{
        height: 380px;
    }
    .zwc-slider-light .zwc-slide-card{
        height: 460px;
    }
}
@media only screen and (max-width: 480px) {
    .zwc-form-content h1 {
        font-size: 34px;
        line-height: 42px;
        max-width: 330px;
        letter-spacing: -1.06px;
    }

    /* comparison table — column proportions match the homepage at 480px */
    .zwc-comp-table-wrap .table-wrap ul li {
        grid-template-columns: 25% 18% 17% 19% 19%;
    }

    .zwc-comp-table-wrap .table-wrap ul li:last-child>span {
        padding: 40px 10px;
    }

    .zwc-pm-logo {
        transform: scale(.7);
    }

    .zwc-pm-sub {
        font-size: 21px;
        line-height: 26px;
    }

    .zwc-pm-ui {
        margin: 32px 0 56px;
    }

    .zwc-pm-head {
        margin: 0 0 8px;
    }

    .zwc-form-section {
        padding: 40px 20px;
    }

    .zwc-form-backdrop {
        padding: 50px 0 100px;
    }

    .zwc-form-section {
        margin-top: 40px;
    }

    .zwc-slider-head h2,
    .zwc-tab-wrap h2,
    .zwc-comp-table-wrap h2 {
        font-size: 24px;
        line-height: 32px;
    }

    .zwc-slide-card h3 {
        font-size: 20px;
        line-height: 28px;
    }

    .zwc-slider-wrap .zwc-slide-card {
        width: 345px;
        height: 100%;
    }

    .zwc-pm-review p,
    .zwc-pm-list li,
    .zwc-pm-point p,
    .zwc-pm-note {
        font-size: 16px;
        line-height: 26px;
    }

    .zwc-slide-card p {
        font-size: 16px;
        line-height: 26px;
    }

    .zwc-pm-intro {
        font-size: 16px;
        line-height: 27px;
    }

    .zwc-pm-point h4 {
        font-size: 19px;
        line-height: 27px;
    }

    .zwc-pm-article {
        padding: 25px;
    }

    .zwc-cta-btn-wrap {
        flex-direction: column;
        width: fit-content;
        margin: auto;
    }

    .zwc-cta-btn-wrap {
        flex-direction: column;
    }

    .zwc-bottom-cta-wrap h2 {
        font-size: 30px;
        line-height: 38px;
        max-width: 270px;
    }

    .zwc-bottom-cta-wrap {
        padding: 70px 0;
    }
}