/* PW Modern Footer */



.pw-footer-wrapper {

    width: 100%;

    clear: both;

    background: #f4f4f4;

    border-top: 1px solid #ddd;

    margin-top: 40px;

    padding: 0;

}



.pw-footer-wrapper * {

    box-sizing: border-box;

}



.pw-footer-top {

    width: 100%;

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 15px;

    background: #ffffff;

    padding: 22px 30px;

    border-bottom: 1px solid #ddd;

    text-align: center;

}



.pw-footer-service {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    color: #333;

    font-size: 15px;

    font-weight: 600;

}



.pw-footer-service i {

    color: #b08d57;

    font-size: 28px;

    margin-bottom: 8px;

}



.pw-footer-main {

    width: 100%;

    max-width: 1280px;

    margin: 0 auto;

    display: grid !important;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 35px;

    padding: 45px 30px;

    clear: both;

}



.pw-footer-column {

    width: auto !important;

    float: none !important;

    clear: none !important;

    min-width: 0;

}



.pw-footer-column h4 {

    font-size: 17px;

    font-weight: 700;

    color: #333;

    margin: 0 0 16px 0;

    padding-bottom: 8px;

    border-bottom: 2px solid #b08d57;

}



.pw-footer-column ul {

    list-style: none;

    margin: 0;

    padding: 0;

}



.pw-footer-column li {

    margin: 0 0 10px 0;

    padding: 0;

}



.pw-footer-column a {

    color: #444;

    text-decoration: none;

    font-size: 14px;

}



.pw-footer-column a:hover {

    color: #b400b8;

    text-decoration: underline;

}



.pw-contact-column p {

    color: #444;

    font-size: 14px;

    line-height: 1.7;

    margin: 0 0 14px 0;

}



.pw-socials {

    display: flex;

    gap: 10px;

    margin-top: 15px;

}



.pw-socials a {

    width: 36px;

    height: 36px;

    border-radius: 50%;

    background: #ffffff;

    border: 1px solid #d6d6d6;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #555;

    text-decoration: none;

    font-weight: 700;

    font-size: 0;

    line-height: 1;

}



.pw-socials a::before {

    font-size: 16px;

    line-height: 1;

    display: block;

}



.pw-socials a.pw-social-facebook::before {

    content: "f";

    font-family: Arial, Helvetica, sans-serif;

}



.pw-socials a.pw-social-pinterest::before {

    content: "P";

    font-family: Arial, Helvetica, sans-serif;

}



.pw-socials a:hover {

    background: #b08d57;

    color: #ffffff;

}



.pw-footer-bottom {

    background: #e7e7e7;

    border-top: 1px solid #d5d5d5;

    padding: 14px 25px;

}



.pw-footer-bottom-inner {

    max-width: 1280px;

    margin: 0 auto;

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 20px;

    flex-wrap: wrap;

}



.pw-copyright {

    color: #444;

    font-size: 14px;

}



.pw-payment-icons {

    display: flex;

    align-items: center;

    gap: 10px;

}



.pw-payment-icons img {

    height: 24px;

    width: auto;

    display: block;

}



@media (max-width: 991px) {

    .pw-footer-top {

        grid-template-columns: repeat(2, minmax(0, 1fr));

        padding: 20px 15px;

        gap: 15px;

    }



    .pw-footer-main {

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        padding: 30px 18px;

        gap: 25px;

    }

}



@media (max-width: 575px) {

    .pw-footer-top {

        grid-template-columns: 1fr;

        padding: 18px 16px;

    }



    .pw-footer-main {

        display: block !important;

        padding: 25px 18px;

        text-align: center;

    }



    .pw-footer-column {

        margin: 0 0 24px 0;

        width: 100% !important;

        text-align: center;

    }



    .pw-footer-column h4 {

        display: block;

        width: 100%;

        margin: 0 0 12px 0;

        text-align: center;

    }



    .pw-footer-column ul {

        display: flex;

        flex-wrap: wrap;

        justify-content: center;

        gap: 7px 14px;

        width: 100%;

    }



    .pw-footer-column li {

        margin: 0;

        display: inline-flex;

    }



    .pw-footer-column a {

        display: inline-block;

        font-size: 14px;

        line-height: 1.4;

        white-space: nowrap;

    }



    .pw-contact-column p {

        text-align: center;

    }



    .pw-socials {

        justify-content: center;

        flex-direction: row !important;

        flex-wrap: nowrap;

        gap: 12px;

    }



    .pw-socials a {

        flex: 0 0 36px;

        width: 36px !important;

        height: 36px !important;

        min-width: 36px;

        min-height: 36px;

    }



    .pw-footer-bottom-inner {

        flex-direction: column;

        text-align: center;

    }



    .pw-payment-icons {

        justify-content: center;

        flex-wrap: wrap;

    }

}

/* =========================================================
   MOBILE OVERFLOW FIX
   Keep footer content inside the phone screen.
========================================================= */

.pw-footer-wrapper,
.pw-footer-top,
.pw-footer-main,
.pw-footer-bottom,
.pw-footer-bottom-inner {
    max-width: 100%;
    overflow-x: hidden;
}

.pw-footer-contact-column,
.pw-contact-column,
.pw-footer-column,
.pw-footer-column p,
.pw-footer-column a,
.pw-copyright {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}

@media (max-width: 575px) {
    .pw-footer-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .pw-footer-top,
    .pw-footer-main,
    .pw-footer-bottom,
    .pw-footer-bottom-inner {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        overflow-x: hidden !important;
    }

    .pw-footer-column ul {
        max-width: 100%;
    }

    .pw-footer-column li {
        max-width: 100%;
    }

    .pw-footer-column a {
        white-space: normal !important;
        max-width: 100%;
    }

    .pw-payment-icons {
        max-width: 100%;
        overflow-x: hidden;
    }

    .pw-payment-icons img {
        max-width: 70px;
        height: 22px;
        object-fit: contain;
    }
}
