/* HOMEPAGE */
.home-container {
    height: clamp(1px, 46.875vw, 1800px);
}

.partner {
    width: 100%;
    height: clamp(1px, 8.334vw, 320px);
    background-color: #FFFFFF;
    box-shadow: 6px 6px 9px rgba(0, 0, 0, 0.2);
    border-radius: clamp(1px, 0.25vw, 10px);
}

.partner-img img {
    width: auto !important;
    height: clamp(1px, 5.86vw, 224px);
}

/* SERVICES */
.services {
    width: 100%;
    background-color: #F3F4F8;
    border-radius: clamp(1px, 0.25vw, 10px);
}

.services-icon {
    background-color: #FFFFFF;
    width: clamp(1px, 5.6771vw, 218px);
    height: clamp(1px, 5.6771vw, 218px);
    border-bottom-left-radius: 100px;
    border-bottom-right-radius: 100px;
}

.services-icon img {
    width: clamp(1px, 2.344vw, 90px);
    height: clamp(1px, 2.344vw, 90px);
}


/* PRICING  */
.pricing-container {
    height: clamp(1px, 60.417vw, 2320px);
}

.pricing {
    width: 100%;
    height: clamp(1px, 13.021vw, 500px);
    background-color: #FFFFFF;
    border-radius: clamp(1px, 0.25vw, 10px);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.pricing:hover {
    transform: scale(1.05);
    box-shadow: 6px 6px 9px rgba(0, 0, 0, 0.2);
}

.price-include {
    width: 100%;
    height: 100%;
    background-color: #FFFFFF;
    box-shadow: 6px 6px 9px rgba(0, 0, 0, 0.2);
    border-radius: clamp(1px, 0.25vw, 10px);
}

/* Contact Us */
.contact-container {
    width: 100%;
    height: clamp(1px, 70.313vw, 2616px);
}

.details {
    width: 100%;
    height: clamp(1px, 28.282vw, 1086px);
    border: clamp(1px, 0.15vw, 4px) solid #47ABFF;
    border-radius: clamp(1px, 0.25vw, 10px);
}

.details .map iframe {
    width: 100%;
    height: clamp(1px, 13.021vw, 500px);
}

.inquiry-form {
    height: clamp(1px, 28.282vw, 1086px);
}

.contact-us input {
    width: 100%;
    height: clamp(1px, 2.6042vw, 100px);
    font-size: clamp(1px, 0.833331vw, 32px) !important;
    margin: 0;
    border: clamp(1px, 0.15vw, 4px) solid rgb(21, 38, 66, .2);
    background-color: transparent !important;
    padding: 0px clamp(1px, 1.041665vw, 40px);
    border-radius: clamp(1px, 0.25vw, 10px) !important;
}

.contact-us textarea {
    width: 100%;
    min-height: clamp(1px, 5.2084vw, 200px);
    max-height: clamp(1px, 5.2084vw, 200px);
    font-size: clamp(1px, 0.833331vw, 32px) !important;
    margin: 0;
    border: clamp(1px, 0.15vw, 4px) solid rgb(21, 38, 66, .2);
    background-color: transparent !important;
    padding: clamp(1px, 0.520834vw, 20px) clamp(1px, 1.041665vw, 40px);
    border-radius: clamp(1px, 0.25vw, 10px) !important;
}

.contact-us input::placeholder,
.contact-us textarea::placeholder {
    color: rgb(21, 38, 66, .5) !important;
    font-size: clamp(1px, 0.833331vw, 32px) !important;
}

.contact-us .wpcf7-submit {
    width: fit-content !important;
    height: clamp(1px, 2.6042vw, 100px) !important;
    padding: 0 clamp(1px, 2.083331vw, 80px) !important;
    border: none;
    background-color: #084298 !important;
    color: #FFFFFF !important;
}

/* Accessibility: WCAG AA contrast fixes for text-blue/text-yellow on white/light backgrounds (2026-09) */
.tag-blue .text-blue {
    color: #084298 !important;
}

.pricing .text-yellow {
    color: #664d03 !important;
}

.contact-us .wpcf7-spinner {
    position: absolute;
    top: 0;
}

.contact-us p {
    margin: 0 !important;
}

.wpcf7-not-valid-tip {
    position: absolute;
    color: #dc3232;
    font-size: clamp(1px, 0.520834vw, 20px);
    font-weight: normal;
    display: block;
}

.wpcf7 form .wpcf7-response-output {
    margin: clamp(1em, 4.166665vw, 8em) 0 !important;
    padding: clamp(1px, 0.520834vw, 20px) clamp(1px, 1.041665vw, 40px) !important;
    font-size: clamp(1px, 0.833331vw, 32px) !important;
}

/* MOBILE VIEW */
@media (max-width:767px) {
    .home-container {
        height: clamp(1px, 226.745vw, 1200px) !important;
    }

    .partner-img img {
        width: auto !important;
        height: clamp(1px, 27.91vw, 150px);
    }

    .partner {
        height: 100% !important;

    }

    .services-icon {
        width: clamp(1px, 20.931vw, 109px);
        height: clamp(1px, 20.931vw, 109px);
    }

    .services-icon img {
        width: clamp(1px, 8.14vw, 45px);
        height: clamp(1px, 8.14vw, 45px);
    }

    .pricing-container {
        height: 100%;
        background-position: left top;
    }

    .pricing {
        height: clamp(1px, 50.942vw, 255px);
        border-radius: clamp(1px, 1.1vw, 8px);
    }

    .contact-container {
        width: 100%;
        height: 100%;
    }

    .price-include {
        border-radius: clamp(1px, 1.1vw, 8px);
    }

    .details {
        width: 100%;
        height: 100%;
        border: clamp(1px, 0.5vw, 3px) solid #47ABFF;
        border-radius: clamp(1px, 1.1vw, 8px);
    }

    .details .map iframe {
        height: clamp(1px, 50.942vw, 255px);
    }

    .inquiry-form {
        height: 100%;
    }

    .contact-us input {
        height: clamp(1px, 9.303vw, 50px) !important;
        font-size: clamp(1px, 2.7907vw, 16px) !important;
        margin: 0;
        border: clamp(1px, 0.5vw, 3px) solid rgb(21, 38, 66, .2);
        background-color: transparent !important;
        padding: 0px clamp(1px, 2.325581vw, 15px);
        border-radius: clamp(1px, 1.1vw, 8px) !important;
    }

    .contact-us textarea {
        max-height: clamp(1px, 13.954vw, 100px);
        max-height: clamp(1px, 13.954vw, 100px);
        font-size: clamp(1px, 2.7907vw, 16px) !important;
        border: clamp(1px, 0.5vw, 3px) solid rgb(21, 38, 66, .2);
        background-color: transparent !important;
        padding: clamp(1px, 1.860466vw, 20px) clamp(1px, 2.325581vw, 15px);
        border-radius: clamp(1px, 1.1vw, 8px) !important;
    }

    .contact-us input::placeholder,
    .contact-us textarea::placeholder {
        font-size: clamp(1px, 2.7907vw, 16px) !important;
    }

    .contact-us .wpcf7-submit {
        height: clamp(1px, 9.303vw, 50px) !important;
        padding: 0 clamp(1px, 4.65116vw, 50px) !important;
    }

    .wpcf7-not-valid-tip {
        position: relative;
        font-size: clamp(1px, 1.860464vw, 10px);
    }


    .wpcf7 form .wpcf7-response-output {
        margin: clamp(1em, 4.166665vw, 8em) 0 !important;
        padding: clamp(1px, 1.860466vw, 20px) clamp(1px, 2.325581vw, 15px) !important;
        font-size: clamp(1px, 2.7907vw, 16px) !important;
    }

}