/* IdealZone warranty page: scoped MAIN CONTENT styles. Load after site.css. */
.iz-warranty {
    --iw-dark: #063b40;
    --iw-ink: #143e40;
    --iw-coral: #ed8868;
    --iw-pale: #edf5f3;
    --iw-muted: #657d7d;
    --iw-line: #dce8e4;
    background: #fff;
    color: var(--iw-ink);
    font-family: Arial,Helvetica,sans-serif;
    overflow: hidden
}

    .iz-warranty *, .iz-warranty *::before, .iz-warranty *::after {
        box-sizing: border-box
    }

    .iz-warranty h1, .iz-warranty h2, .iz-warranty h3, .iz-warranty p {
        margin-top: 0
    }

    .iz-warranty a {
        color: inherit;
        text-decoration: none
    }

        .iz-warranty a:focus-visible {
            outline: 3px solid var(--iw-coral);
            outline-offset: 4px
        }

.iw-container {
    width: min(1120px,calc(100% - 80px));
    margin-inline: auto
}

.iw-kicker {
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 10px;
    letter-spacing: .24em;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 24px
}

.iw-kicker-line {
    width: 20px;
    height: 2px;
    background: var(--iw-coral)
}

.iw-hero {
    background: var(--iw-dark);
    color: white;
    position: relative
}

.iw-hero-inner {
    min-height: 510px;
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 50px;
    align-items: center;
    padding-block: 90px 75px
}

.iw-hero-content {
    position: relative;
    z-index: 1
}

.iw-hero h1 {
    font-size: clamp(46px,5.7vw,80px);
    font-weight: 400;
    letter-spacing: -.064em;
    line-height: 1.02;
    margin-bottom: 24px
}

    .iw-hero h1 em {
        font-style: normal;
        color: #a9d0c7
    }

.iw-lead {
    font-size: 20px;
    line-height: 1.45;
    margin-bottom: 9px
}

    .iw-lead strong {
        color: var(--iw-coral);
        font-weight: 700
    }

.iw-hero-sub {
    font-size: 14px;
    color: #d2e2dd;
    line-height: 1.7;
    margin-bottom: 25px
}

.iw-arrow-link {
    display: inline-flex;
    gap: 32px;
    align-items: center;
    border-bottom: 1px solid #8daea8;
    padding-bottom: 10px;
    font-size: 13px;
    font-weight: 700
}

    .iw-arrow-link span {
        font-size: 20px
    }

.iw-fine-print {
    max-width: 515px;
    margin: 42px 0 0;
    color: #b8ceca;
    font-size: 11px;
    line-height: 1.6
}

.iw-hero-visual {
    height: 340px;
    position: relative;
    display: grid;
    place-items: center;
    isolation: isolate
}

.iw-ring {
    border: 1px solid rgba(135,192,184,.2);
    border-radius: 50%;
    position: absolute;
    aspect-ratio: 1;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%)
}

.iw-ring-a {
    width: 320px
}

.iw-ring-b {
    width: 420px;
    background: rgba(15,80,83,.28);
    z-index: -1
}

.iw-circle {
    width: 226px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #125158;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    box-shadow: 0 0 0 12px rgba(255,255,255,.025)
}

    .iw-circle span {
        font-size: 88px;
        letter-spacing: -.075em;
        line-height: 1;
        font-weight: 400
    }

    .iw-circle small {
        font-size: 12px;
        color: var(--iw-coral);
        font-weight: 700;
        letter-spacing: .32em;
        order: -1;
        margin-bottom: 8px
    }

.iw-hero-visual > p {
    position: absolute;
    bottom: 3px;
    right: 12px;
    text-align: right;
    font-size: 10px;
    letter-spacing: .22em;
    line-height: 1.8;
    color: #9ebfba
}

.iw-intro {
    padding: 95px 0
}

.iw-intro-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 85px;
    align-items: center
}

.iw-intro h2, .iw-overview h2, .iw-section-intro h2, .iw-ending h2 {
    font-size: clamp(36px,4.2vw,56px);
    font-weight: 400;
    letter-spacing: -.052em;
    line-height: 1.09;
    margin: 0
}

.iw-intro-copy {
    padding-top: 20px
}

    .iw-intro-copy p {
        font-size: 21px;
        line-height: 1.5;
        letter-spacing: -.025em;
        margin-bottom: 20px
    }

    .iw-intro-copy strong {
        color: #be6248
    }

    .iw-intro-copy span {
        font-size: 13px;
        color: var(--iw-muted);
        line-height: 1.7
    }

.iw-overview {
    background: var(--iw-pale);
    padding: 76px 0
}

.iw-overview-inner {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 70px
}

.iw-overview-copy {
    font-size: 14px;
    line-height: 1.85;
    color: #3d6060
}

    .iw-overview-copy p:last-child {
        margin-bottom: 0
    }

    .iw-overview-copy strong {
        color: var(--iw-ink)
    }

.iw-coverage {
    padding: 95px 0 110px
}

.iw-section-intro {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    align-items: end;
    margin-bottom: 35px
}

    .iw-section-intro > p {
        font-size: 13px;
        line-height: 1.7;
        color: var(--iw-muted);
        max-width: 280px;
        margin-bottom: 4px
    }

.iw-coverage-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 16px
}

.iw-coverage-card {
    border: 1px solid var(--iw-line);
    background: #fff;
    border-radius: 6px;
    padding: 28px 26px 30px;
    min-width: 0
}

.iw-card-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px
}

.iw-card-index {
    font-size: 11px;
    letter-spacing: .13em;
    color: #8ca5a0
}

.iw-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--iw-pale);
    color: var(--iw-ink);
    display: grid;
    place-items: center;
    font-size: 20px
}

.iw-card-term {
    display: flex;
    gap: 11px;
    align-items: center;
    border-bottom: 1px solid var(--iw-line);
    padding-bottom: 20px;
    margin-bottom: 22px
}

    .iw-card-term strong {
        font-size: 58px;
        font-weight: 400;
        line-height: 1;
        letter-spacing: -.07em
    }

    .iw-card-term span {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.5;
        color: #c77558
    }

.iw-coverage-card h3 {
    font-size: 23px;
    line-height: 1.2;
    letter-spacing: -.04em;
    font-weight: 500;
    margin-bottom: 15px
}

.iw-coverage-card > p {
    font-size: 13px;
    line-height: 1.8;
    color: #53706d;
    margin: 0
}

    .iw-coverage-card > p strong {
        color: var(--iw-ink)
    }

.iw-flame {
    padding: 82px 0 95px;
    background: var(--iw-pale)
}

.iw-table-scroll {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #d6e4df;
    border-radius: 6px;
    background: white
}

.iw-table {
    border-collapse: collapse;
    width: 100%;
    min-width: 750px;
    text-align: left
}

    .iw-table th, .iw-table td {
        padding: 23px 25px;
        border-bottom: 1px solid var(--iw-line);
        font-size: 13px
    }

    .iw-table thead {
        background: var(--iw-dark);
        color: white
    }

        .iw-table thead th {
            font-size: 11px;
            letter-spacing: .1em;
            font-weight: 700;
            text-transform: uppercase
        }

    .iw-table tbody th {
        font-weight: 700
    }

    .iw-table tbody tr:last-child th, .iw-table tbody tr:last-child td {
        border-bottom: 0
    }

.iw-ending {
    background: var(--iw-dark);
    color: white;
    padding: 73px 0
}

.iw-ending-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

.iw-ending h2 {
    font-size: clamp(36px,4vw,54px)
}

.iw-ending a {
    background: var(--iw-coral);
    color: #092f33;
    padding: 16px 22px;
    font-size: 12px;
    font-weight: 700;
    display: inline-flex;
    gap: 30px;
    align-items: center
}

    .iw-ending a span {
        font-size: 18px
    }

@media(max-width:900px) {
    .iw-hero-inner {
        grid-template-columns: 1fr .65fr;
        gap: 15px
    }

    .iw-hero-visual {
        transform: scale(.77)
    }

    .iw-coverage-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .iw-container {
        width: min(1120px,calc(100% - 50px))
    }

    .iw-intro-inner, .iw-overview-inner {
        gap: 35px
    }
}

@media(max-width:650px) {
    .iw-container {
        width: calc(100% - 36px)
    }

    .iw-hero-inner {
        grid-template-columns: 1fr;
        padding-block: 78px 56px;
        min-height: 0
    }

    .iw-hero h1 {
        font-size: clamp(43px,10vw,62px)
    }

    .iw-hero-visual {
        display: none
    }

    .iw-fine-print {
        margin-top: 28px
    }

    .iw-intro, .iw-coverage {
        padding: 68px 0
    }

    .iw-intro-inner, .iw-overview-inner {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .iw-overview, .iw-flame {
        padding: 60px 0
    }

    .iw-intro-copy {
        padding-top: 0
    }

    .iw-section-intro {
        display: block
    }

        .iw-section-intro > p {
            margin-top: 15px
        }

    .iw-coverage-grid {
        grid-template-columns: 1fr;
        gap: 12px
    }

    .iw-coverage-card {
        padding: 24px
    }

    .iw-ending-inner {
        align-items: start;
        flex-direction: column
    }

    .iw-ending {
        padding: 60px 0
    }

    .iw-card-term strong {
        font-size: 51px
    }
}
