/*
Theme Name: Web 1920
Author: 
Description: Your description goes here
Version: 1.0
Template: hello-elementor

This is the child theme for Hello Elementor theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/* ==================== Common Style Start ==================== */
:focus,
:focus-visible,
:focus-within {
    outline: none !important;
}

.elementor-icon-wrapper {
    display: flex;
}

.common-details>*:last-child {
    margin-bottom: 0 !important;
}

.common-details h1,
.common-details h2,
.common-details h3,
.common-details h4,
.common-details h5,
.common-details h6 {
    margin-bottom: 20px;
    margin-top: 0;
}

.common-details ul,
.common-details ol {
    margin-bottom: 20px;
}

.common-details ul li:not(:last-child),
.common-details ol li:not(:last-child) {
    margin-bottom: 15px;
}

.common-details strong,
.common-details b {
    color: #000000 !important;
}

.common-details .alignnone,
.common-details .alignleft,
.common-details .alignright,
.common-details .aligncenter {
    height: 380px !important;
    object-fit: cover !important;
}

.common-details .alignnone {
    float: none;
    margin: 20px;
}

.common-details .alignleft {
    float: left;
    margin: 20px 20px 20px 0;
}

.common-details .alignright {
    float: right;
    margin: 20px 0 20px 20px;
}

.common-details .aligncenter {
    float: none;
    display: block;
    margin: 20px auto;
}

.common-details blockquote {
    padding-left: 30px;
    border-left: 5px solid #000000;
    margin-bottom: 20px;
}

#banner-section {
    background: linear-gradient(135deg, #F8FCFF 0%, #EAF8FF 50%, #D9F4FF 60%, #FFFFFF 100%);
}

.cmn-heading span {
    color: #1D3D8E !important;
}

/* ==================== Common Style End ==================== */

/* ==================== Responsive Style Start ==================== */
@media (max-width: 1200px) {

    .common-details h1,
    .common-details h2,
    .common-details h3,
    .common-details h4,
    .common-details h5,
    .common-details h6,
    .common-details ul,
    .common-details ol {
        margin-bottom: 15px;
    }

    .common-details ul li,
    .common-details ol li {
        margin-bottom: 10px;
    }
}

@media (max-width: 575px) {

    .common-details .alignnone,
    .common-details .alignleft,
    .common-details .alignright,
    .common-details .aligncenter {
        float: none !important;
        display: block !important;
        margin: 20px auto !important;
        height: 320px !important;
    }

    .common-width-100 {
        width: 100% !important;
    }

    .common-grid-block {
        display: flex !important;
        flex-direction: column !important;
    }
}

/* ==================== Responsive Style End ==================== */

/* ==================== Contact Form Start ==================== */
.contact-form { 
    --label-color: #7b8ca2; 
    --input-bg:#0f172b;
    --border-color:#1d293d;
    --input-color: #FFFFFF;
    --placeholder-color: #404f66;

    --submit-bg: #03B3EF;
    --submit-bg-hover: #029bc4;
    --submit-color: #FFFFFF;

    --submit-icon-position-left: 135px;

    --fw-700: 700;

    --fs-12: 12px;
    --fs-16: 16px;
}

.contact-form label { font-family: inherit; color: var(--label-color); text-transform: uppercase; font-size: var(--fs-12); line-height: 1.5; letter-spacing: .6px; font-weight: var(--fw-700); width: 100%; }
.contact-form .wpcf7-form-control { color: var(--input-color) !important; font-family: inherit; margin-top: 8px; background-color: var(--input-bg) !important; border-color: var(--border-color) !important; padding: 10px 16px !important; border-radius: 12px !important; -webkit-border-radius: 12px !important; -moz-border-radius: 12px !important; -ms-border-radius: 12px !important; -o-border-radius: 12px !important; }
.contact-form .wpcf7-form-control::placeholder { color: var(--placeholder-color) !important; }
.contact-form .cf7-row { display: flex; align-items: center; justify-content: center; gap: 16px; margin-bottom: 16px; }
.contact-form .wpcf7-not-valid-tip { text-transform: capitalize !important; }

.contact-form .wpcf7-submit { position: relative; font-family: inherit; color: var(--submit-color) !important; font-weight: var(--fw-700); font-size: var(--fs-16); width: 100%; background-color: transparent !important; margin-top: 0 !important; border: unset !important; }

.contact-form .custom-submit-wrapper { position: relative; gap: 12px; background-color: var(--submit-bg) !important; display: flex; align-items: center; justify-content: center; margin-top: 8px !important; border-radius: 12px; -webkit-border-radius: 12px; -moz-border-radius: 12px; -ms-border-radius: 12px; -o-border-radius: 12px; cursor: pointer; transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -ms-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; }
.contact-form .custom-submit-wrapper::before { content: ""; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffdf20' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.801 10A10 10 0 1 1 17 3.335'%3E%3C/path%3E%3Cpath d='m9 11 3 3L22 4'%3E%3C/path%3E%3C/svg%3E") no-repeat; width: 20px; aspect-ratio: 1 / 1; height: auto; background-size: 100%; }
.contact-form .custom-submit-wrapper::before { position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); left: var(--submit-icon-position-left); }
.contact-form .custom-submit-wrapper:hover { background-color: var(--submit-bg-hover) !important; }
.contact-form .time-slot-row { flex-direction: column; gap: 0; }
.contact-form .time-slot-row .wpcf7-form-control { background-color: transparent !important; display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 !important; gap: 12px; }

.contact-form .time-slot-row .wpcf7-list-item { background-color: var(--input-bg) !important; border: 1px solid var(--border-color) !important; padding: 10px 16px !important; border-radius: 12px !important; -webkit-border-radius: 12px !important; -moz-border-radius: 12px !important; -ms-border-radius: 12px !important; -o-border-radius: 12px !important; cursor: pointer; margin: 0 !important; }
.contact-form .time-slot-row .wpcf7-form-control-wrap { width: 100%; }
.contact-form input[type="date"]::-webkit-calendar-picker-indicator { display: none; -webkit-appearance: none; }

.contact-form .select-date-row .custom-date-input-wrapper { position: relative; margin-top: 12px; }
.contact-form .select-date-row .custom-date-input-wrapper input { position: relative; margin-top: 0; }
.contact-form .select-date-row .custom-date-input-wrapper::after { content: ""; top: 50%; transform: translateY(-50%); right: 20px; position: absolute; display: block; width: 16px; height: auto; aspect-ratio: 1 / 1; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%); filter: brightness(0) invert(1); -webkit-filter: brightness(0) invert(1); }
.contact-form .select-date-row .custom-date-input-wrapper::after { background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-calendar absolute right-4 top-1/2 -translate-y-1/2 w-4 h-4 text-slate-400 pointer-events-none" aria-hidden="true"><path d="M8 2v4"></path><path d="M16 2v4"></path><rect width="18" height="18" x="3" y="4" rx="2"></rect><path d="M3 10h18"></path></svg>'); background-size: 100%; }

@media (max-width: 1300px) { .contact-form { --submit-icon-position-left: clamp(40px, -159.75px + 22.67vw, 135px); } }
@media (max-width: 880px) { .contact-form { --submit-icon-position-left: clamp(95px, -189.21px + 49.34vw, 245px); } }
@media (max-width: 575px) { .contact-form { --fs-16: 15px; --submit-icon-position-left: 70px; } }
/* ==================== Contact Form End ==================== */