/* =====================================
   RETAILER SECTION
===================================== */

.retailer-section {
    width: 100%;
      box-sizing: border-box;
    background: #EEF1FF;
    margin-top: 140px;
    position: relative;
    min-height: 700px;
    padding: 68px 6.65%;
    display: flex;
    align-items: center;
    overflow: visible;
}
@media (max-width: 700px) {
    .retailer-section {
        width: 100%;
        margin-top: 70px;
        padding: 55px 22px 0;
        min-height: auto;
        overflow-x: clip;
    }
}


.retailer-container {

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

  position: static;

    display: flex;

    align-items: center;

}



/* =====================================
   LEFT CONTENT
===================================== */

.retailer-content {

    width: 52%;

    max-width: 650px;

    position: relative;

    z-index: 2;

}


.retailer-heading {

    font-size: clamp(38px, 3.3vw, 50px);

    font-weight: 750;

    line-height: 1.2;

    letter-spacing: -1.5px;

    color: #000000;

    margin-bottom: 20px;

}


.retailer-description {

    font-size: 17px;

    line-height: 1.48;

    font-weight: 400;

    color: #111111;

    max-width: 550px;

    margin-bottom: 32px;

}


/* =====================================
   BENEFITS
===================================== */

.retailer-benefits {

    display: flex;

    flex-direction: column;

    gap: 15px;

    margin-bottom: 32px;

}


.retailer-benefit {

    display: flex;

    align-items: center;

    gap: 10px;

    font-size: 15px;

    font-weight: 700;

    color: #111111;

}


.benefit-check {

    width: 21px;

    height: 21px;

    min-width: 21px;

    background: #002C8A;

    color: #ffffff;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 14px;

    font-weight: 700;

}


/* =====================================
   CTA BUTTONS
===================================== */

.retailer-buttons {

    display: flex;

    align-items: center;

    gap: 32px;

}


.retailer-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    background: #002C8A;

    color: #ffffff;

    text-decoration: none;

    padding: 15px 30px;

    border-radius: 50px;

    font-size: 13px;

    font-weight: 500;

    white-space: nowrap;

    box-shadow: 2px 3px 0px #000000;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease;

}


.retailer-btn:hover {

    background: #ED8E2F;

    color: #ffffff;

    transform: translateY(-4px);

    box-shadow: 2px 6px 0px #000000;

}




/* RIGHT IMAGE */

.retailer-visual {
    position: absolute;
    right: 0;
    bottom: 0;

    width: 45%;
    height: calc(100% + 110px);

    display: flex;
    align-items: flex-end;
    justify-content: flex-end;

    z-index: 2;
    overflow: visible;
    pointer-events: none;
}

.retailer-phone-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: right bottom;
    display: block;
}


/* =====================================
   SCROLL REVEAL
===================================== */

.retailer-content {

    opacity: 0;

    transform: translateY(35px);

    transition:
        opacity 0.8s ease,
        transform 0.8s ease;

}


.retailer-visual {

    opacity: 0;

    transform: translateX(50px);

    transition:
        opacity 1s ease,
        transform 1s cubic-bezier(0.16, 1, 0.3, 1);

}


.retailer-section.active .retailer-content {

    opacity: 1;

    transform: translateY(0);

}


.retailer-section.active .retailer-visual {

    opacity: 1;

    transform: translateX(0);

}


/* =====================================
   TABLET
===================================== */

@media (max-width: 1100px) {

    .retailer-section {

        min-height: 620px;

        padding: 65px 5%;

    }

    .retailer-content {

        width: 55%;

    }

    .retailer-heading {

        font-size: 38px;

    }

    .retailer-description {

        font-size: 15px;

    }

.retailer-visual {
        width: 48%;
        height: calc(100% + 70px);
        right: -2%;
        bottom: 0;
    }

    .retailer-buttons {

        gap: 18px;

    }

}


/* =====================================
   MOBILE
===================================== */

@media (max-width: 700px) {

    .retailer-section {

        margin-top: 70px;

        padding: 55px 22px 0;

        min-height: auto;

        overflow: hidden;

    }

    .retailer-container {

        flex-direction: column;

        align-items: flex-start;

    }

    .retailer-content {

        width: 100%;

        max-width: 100%;

    }

    .retailer-heading {

        font-size: 34px;

        letter-spacing: -0.8px;

    }

    .retailer-heading br {

        display: none;

    }

    .retailer-description {

        font-size: 15px;

        line-height: 1.6;

    }

    .retailer-benefits {

        gap: 13px;

    }

    .retailer-benefit {

        font-size: 14px;

    }

    .retailer-buttons {

        flex-wrap: wrap;

        gap: 15px;

    }

    .retailer-btn {

        padding: 13px 20px;

        font-size: 12px;

    }

    .retailer-visual {

        position: relative;

        width: 100%;

        height: 450px;

        right: auto;

        top: auto;

        margin-top: 30px;

    }

    .retailer-phone-image {

        object-position: center top;

    }

}


/* =====================================
   REDUCED MOTION
===================================== */

@media (prefers-reduced-motion: reduce) {

    .retailer-content,
    .retailer-visual {

        opacity: 1;

        transform: none;

        transition: none;

    }

}