﻿.homepage {
    ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }
    /* HERO */
    .hero {
        position: relative;
        background: #fff;
        padding: 80px 0 80px;
        overflow: hidden;
        min-height: calc(100vh - 80px);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .hero__inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 40px;
        position: relative;
        z-index: 1;
    }

    .hero__eyebrow {
        font-size: 1.25rem;
        font-weight: 300;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        color: var(--text-muted);
        margin-bottom: 16px;
    }

    .hero__title {
        font-family: var(--font-head);
        font-size: clamp(2rem, 3.5vw, 3rem);
        font-weight: 800;
        color: var(--dark);
        line-height: 1.15;
        margin-bottom: 18px;
        letter-spacing: -0.02em;
    }

    .hero__desc {
        font-size: 1.25rem;
        color: var(--text);
        margin-bottom: 36px;
        line-height: 1.7;
    }

        .hero__desc strong {
            font-weight: 700;
        }

    .hero__actions {
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
        align-items: center;
    }
    /* DOC STACK */
    .hero__docs {
        position: relative;
        height: 480px;
        margin-top: -20px;
        background: rgba(255, 255, 255, 0.1);
        box-shadow: 0 8px 40px rgba(0, 0, 0, 0.13);
        border-radius: 20px;
        backdrop-filter: blur(4px);
    }
    /* LIMITS */
    .limits {
        position: relative;
        overflow: hidden;
    }

    .limits__inner {
        position: relative;
        z-index: 1;
    }

    .limits__header {
        text-align: center;
        margin-bottom: 50px;
    }

    .limits__title {
        font-family: var(--font-head);
        font-size: clamp(1.6rem, 2.8vw, 2.3rem);
        font-weight: 800;
        color: var(--dark);
        letter-spacing: -0.02em;
        margin-bottom: 10px;
        line-height: 1.2;
    }

    .limits__subtitle {
        font-size: 1.25rem;
        font-weight: 300;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--text-muted);
    }

    .limits__list ul {
        max-width: 580px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        margin-bottom: 64px;
    }

        .limits__list ul li {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 12px 0;
            border-bottom: 1px solid var(--border);
            font-size: 0.94rem;
            color: var(--text);
        }

            .limits__list ul li:last-child {
                border-bottom: none;
            }

            .limits__list ul li::before {
                content: "";
                display: block;
                width: 7px;
                height: 7px;
                border-radius: 50%;
                background: var(--dark);
                flex-shrink: 0;
            }

            .limits__list ul li p {
                margin: 0;
            }

    .limits__callout {
        background: linear-gradient(135deg, #f0fafa, #faf5f0);
        text-align: center;
        padding: 32px 40px;
        font-size: 0.97rem;
        color: var(--text);
    }

        .limits__callout strong {
            font-weight: 700;
        }
    /* DIFFERENT */
    .different {
        background: #fff;
        position: relative;
        overflow: hidden;
    }

    .different__header {
        text-align: center;
        margin-bottom: 14px;
    }

    .different__title {
        font-family: var(--font-head);
        font-size: clamp(1.6rem, 2.8vw, 2.3rem);
        font-weight: 800;
        color: var(--dark);
        letter-spacing: -0.02em;
        margin-bottom: 12px;
    }

    .different__lead {
        font-size: 0.95rem;
        color: var(--text);
        max-width: 700px;
        margin: 0 auto 60px;
    }

        .different__lead strong {
            font-weight: 700;
        }

    .feature {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 60px;
        align-items: center;
        padding: 52px 0;
        border-top: 0px solid var(--border);

        .feature__content {
            padding-left: 30%;
        }
    }

        .feature.feature-featured {
            grid-template-columns: auto;
        }

    .feature--reverse .feature__visual {
        order: -1;
    }

    .feature--reverse .feature__content,
    .feature-featured .feature__content {
        padding-left: 0;
    }

    .feature__icon-label {
        display: flex;
        gap: 10px;
        margin-bottom: 14px;
        position: relative;
    }

    .feature__icon {
        width: 32px;
        height: 32px;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        font-size: 1rem;
        position: absolute;
        left: -40px;
    }

    .feature-featured .feature__icon-label,
    .feature-featured .feature-text-row {
        max-width: 70%;
        margin: 0 auto 20px;
    }

    .feature-featured .feature__visual {
        margin-top: 50px;
    }
/*
    .feature__icon--green {
        background: rgba(0, 108, 112, 0.12);
    }

    .feature__icon--orange {
        background: rgba(237, 153, 76, 0.12);
    }

    .feature__icon--violet {
        background: rgba(96, 49, 135, 0.12);
    }

    .feature__icon--teal {
        background: rgba(8, 145, 178, 0.12);
    }

    .feature__icon--amber {
        background: rgba(217, 119, 6, 0.12);
    }*/

    .feature__label {
        font-family: var(--font-head);
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1.2;
        margin-top: 0;
    }

    .feature-text-row {
        display: flex;
        flex-direction: row;
        max-width: 80%;
        gap: 15px;
    }

    .feature__list {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

        .feature__list li {
            font-size: 0.9rem;
            color: var(--text);
            padding-left: 10px;
            position: relative;
            line-height: 1.55;
        }

            .feature__list li::before {
                content: "•";
                position: absolute;
                left: 0;
                top: 2px;
                color: var(--text);
                font-size: 0.8rem;
            }

            .feature__list li strong {
                font-weight: 700;
            }
    /* BENEFITS */
    .benefits {
        background: #F1F1F1;
        background: linear-gradient(103deg, rgba(241, 241, 241, 1) 0%, rgba(223, 228, 237, 1) 22%, rgba(241, 241, 241, 1) 57%, rgba(223, 235, 223, 1) 84%, rgba(241, 241, 241, 1) 100%);
        position: relative;
    }

    .benefits__header {
        text-align: center;
        margin-bottom: 52px;
    }

    .benefits__title {
        font-family: var(--font-head);
        font-size: clamp(1.6rem, 2.8vw, 2.3rem);
        font-weight: 800;
        color: var(--dark);
        letter-spacing: -0.02em;
    }

    .benefits__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-bottom: 24px;
    }

    .benefits__card {
        background: #fff;
        border-radius: var(--r-lg);
        padding: 36px 32px;
        box-shadow: var(--shadow);
    }

        .benefits__card:last-child {
            grid-column: 1 / -1;
            min-width: 38%;
            margin: 0 auto;
        }

    .benefits__card-head {
        display: flex;
        align-items: flex-start;
        gap: 16px;
        margin-bottom: 6px;
    }

    .benefits__card-icon {
        font-size: 1.5rem;
        flex-shrink: 0;
        margin-top: -4px;

        img {
            width: 36px;
            height: 36px;
        }
    }

    .benefits__card-title {
        font-family: var(--font-head);
        font-size: 1.5rem;
        font-weight: 800;
        color: var(--dark);
        margin-bottom: 2px;
        line-height: 1;
        margin-top: 0;
    }

    .benefits__card-sub {
        font-size: 1rem;
        font-weight: 300;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: var(--text-muted);
    }

    .benefits__card-list {
        margin-top: 18px;
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

        .benefits__card-list li {
            font-size: 0.88rem;
            color: var(--text);
            padding-left: 18px;
            position: relative;
            line-height: 1.55;
        }

            .benefits__card-list li::before {
                content: "•";
                position: absolute;
                left: 0;
                top: 0;
            }
    /* RIGHT FOR YOU */
    .right-for-you {
        background: #fff;
        position: relative;
        overflow: hidden;
    }

    .right-for-you__header {
        text-align: center;
        margin-bottom: 52px;
    }

    .right-for-you__title {
        font-family: var(--font-head);
        font-size: clamp(1.6rem, 2.8vw, 2.3rem);
        font-weight: 800;
        color: var(--dark);
        letter-spacing: -0.02em;
    }

    .right-for-you__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        max-width: 860px;
        margin: 0 auto;
    }

    .rfy-card {
        border-radius: var(--r-lg);
        padding: 32px 28px;
    }

    .rfy-card--good {
        border: 2px solid var(--green);
        background: #fff;
    }

    .rfy-card--bad {
        border: 2px solid #9ca3af;
        background: #f9fafb;
    }

    .rfy-card__head {
        display: flex;
        align-items: center;
        gap: 14px;
        margin-bottom: 24px;
    }

    .rfy-card__icon {
        width: 46px;
        height: 46px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .rfy-card__icon--good {
        background: var(--green);
    }

    .rfy-card__icon--bad {
        background: #9ca3af;
    }

    .rfy-card__title {
        font-family: var(--font-head);
        font-size: 1.1rem;
        font-weight: 800;
        color: var(--dark);
    }

    .rfy-card__list {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

        .rfy-card__list li {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            font-size: 0.88rem;
            color: var(--text);
            line-height: 1.5;

            p {
                margin: 0;
            }
        }

            .rfy-card__list li::before {
                content: "";
                display: block;
                width: 10px;
                height: 10px;
                border-radius: 50%;
                flex-shrink: 0;
                margin-top: 5px;
            }

    .rfy-card--good .rfy-card__list li::before {
        background: var(--green);
    }

    .rfy-card--bad .rfy-card__list li::before {
        background: #9ca3af;
    }

    /* CTA */
    .cta-banner {
        background: #fff;
        position: relative;
        overflow: hidden;
    }

    .cta-banner__inner {
        text-align: center;
        position: relative;
        z-index: 1;
    }

    .cta-banner__title {
        font-family: var(--font-head);
        font-size: clamp(1.8rem, 3.5vw, 2.8rem);
        font-weight: 800;
        color: var(--dark);
        letter-spacing: -0.02em;
        margin-bottom: 14px;
    }

    h2.c-gradient span.highlight {
        color: var(--green);
        background: var(--gradient-warm-to-cool);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .cta-banner__sub {
        font-size: 1rem;
        font-weight: 300;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--text-muted);
        margin-bottom: 36px;
    }

    .cta-banner__actions {
        display: flex;
        gap: 16px;
        justify-content: center;
    }
    /* RESPONSIVE */
    @media (max-width: 1024px) {
        .hero__inner {
            grid-template-columns: 1fr;
        }

        .feature {
            grid-template-columns: 1fr;
            gap: 32px;
        }

        .feature--reverse .feature__visual {
            order: 0;
        }

        .benefits__grid {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 768px) {
        .hero {
            padding: 2rem 0;
        }
        
        .feature__content {
            padding-left: 10% !important;
        }

        .feature-featured .feature__content {
            padding-left: 0 !important;
        }

        .feature-featured .feature__list {
            padding-left: 10% !important;
        }

        .feature-text-row {
            flex-direction: column;
        }

         .feature-featured .feature-text-row {
            max-width: 100%;
        }

        .benefits__card {
            width: 100%;
        }

        .right-for-you__grid {
            grid-template-columns: 1fr;
        }

        .cta-banner__actions {
            flex-direction: column;
            align-items: center;
        }
    }
}
