.elementor-126 .elementor-element.elementor-element-de61d84{--display:flex;}.elementor-126 .elementor-element.elementor-element-0f6d137{--display:flex;}.elementor-126 .elementor-element.elementor-element-b8cf06f{--display:flex;}/* Start custom CSS for html, class: .elementor-element-042b566 *//* =====================================================
   HOME DOOR INFRA
   PREMIUM CTA / INTRO SECTION
   ROYAL BLUE BACKGROUND
===================================================== */

.hdi-get-touch{

    width:100%;

    padding:90px 5%;

    box-sizing:border-box;

    background:
        linear-gradient(
            135deg,
            #061638 0%,
            #0b2463 48%,
            #1d4ed8 100%
        );

    position:relative;

    overflow:hidden;
}


/* =====================================================
   BACKGROUND DECORATIVE GLOW
===================================================== */

.hdi-get-touch::before{

    content:"";

    position:absolute;

    width:450px;
    height:450px;

    left:-220px;
    top:-250px;

    border-radius:50%;

    background:rgba(96,165,250,.13);

    filter:blur(75px);

    pointer-events:none;
}


.hdi-get-touch::after{

    content:"";

    position:absolute;

    width:400px;
    height:400px;

    right:-220px;
    bottom:-250px;

    border-radius:50%;

    background:rgba(147,197,253,.12);

    filter:blur(75px);

    pointer-events:none;
}


/* =====================================================
   SUBTLE PATTERN
===================================================== */

.hdi-touch-container::before{

    content:"";

    position:absolute;

    width:100%;
    height:100%;

    inset:0;

    background-image:
        radial-gradient(
            rgba(255,255,255,.08) 1px,
            transparent 1px
        );

    background-size:30px 30px;

    opacity:.18;

    pointer-events:none;
}


/* =====================================================
   CONTAINER
===================================================== */

.hdi-touch-container{

    width:100%;

    max-width:950px;

    margin:0 auto;

    text-align:center;

    position:relative;

    z-index:2;
}


/* =====================================================
   LABEL
===================================================== */

.hdi-touch-label{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 22px;

    margin-bottom:22px;

    border-radius:30px;

    background:rgba(255,255,255,.09);

    border:1px solid rgba(255,255,255,.20);

    color:#bfdbfe;

    font-size:10px;

    font-weight:800;

    letter-spacing:2px;

    backdrop-filter:blur(8px);
}


/* =====================================================
   MAIN HEADING
===================================================== */

.hdi-touch-container h2{

    margin:0;

    color:#ffffff;

    font-size:52px;

    line-height:1.1;

    font-weight:800;

    letter-spacing:-1.5px;
}


.hdi-touch-container h2 span{

    display:block;

    color:#93c5fd;

    font-weight:800;
}


/* =====================================================
   SUB HEADING
===================================================== */

.hdi-touch-container h3{

    margin:23px 0 0;

    color:#ffffff;

    font-size:25px;

    line-height:1.35;

    font-weight:600;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.hdi-touch-container p{

    max-width:820px;

    margin:20px auto 0;

    color:#dbeafe;

    font-size:15px;

    line-height:28px;

    font-weight:400;
}


/* =====================================================
   DECORATIVE LINE
===================================================== */

.hdi-touch-container::after{

    content:"";

    display:block;

    width:80px;

    height:3px;

    margin:35px auto 0;

    border-radius:10px;

    background:
        linear-gradient(
            90deg,
            #60a5fa,
            #ffffff,
            #60a5fa
        );
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .hdi-get-touch{

        padding:75px 6%;
    }

    .hdi-touch-container h2{

        font-size:44px;
    }

    .hdi-touch-container h3{

        font-size:23px;
    }

    .hdi-touch-container p{

        font-size:14px;

        line-height:26px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .hdi-get-touch{

        padding:60px 6%;
    }

    .hdi-touch-label{

        padding:9px 16px;

        font-size:8.5px;

        letter-spacing:1.4px;

        margin-bottom:18px;
    }

    .hdi-touch-container h2{

        font-size:34px;

        line-height:1.15;

        letter-spacing:-.5px;
    }

    .hdi-touch-container h3{

        font-size:20px;

        line-height:1.4;

        margin-top:18px;
    }

    .hdi-touch-container p{

        font-size:13.5px;

        line-height:24px;

        margin-top:17px;
    }

    .hdi-touch-container::after{

        margin-top:28px;

        width:65px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media(max-width:400px){

    .hdi-get-touch{

        padding:50px 5%;
    }

    .hdi-touch-container h2{

        font-size:30px;
    }

    .hdi-touch-container h3{

        font-size:19px;
    }

    .hdi-touch-container p{

        font-size:13px;

        line-height:23px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96b92f6 *//* =====================================================
   HOME DOOR INFRA
   MAP + CONTACT FORM SECTION
   PREMIUM ROYAL BLUE THEME
===================================================== */

.hdi-contact-section{

    width:100%;

    padding:70px 5%;

    box-sizing:border-box;

    background:#ffffff;

    position:relative;

    overflow:hidden;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.hdi-contact-wrapper{

    width:100%;

    max-width:1200px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:30px;

    align-items:stretch;
}


/* =====================================================
   GOOGLE MAP
===================================================== */

.hdi-map-box{

    width:100%;

    min-height:490px;

    overflow:hidden;

    border-radius:20px;

    background:#eff6ff;

    border:1px solid #dbeafe;

    box-shadow:
        0 15px 40px rgba(15,35,80,.10);

    position:relative;
}


.hdi-map-box iframe{

    width:100%;

    height:100%;

    min-height:490px;

    display:block;

    border:0;
}


/* =====================================================
   FORM BOX
===================================================== */

.hdi-form-box{

    min-height:490px;

    padding:42px 30px;

    box-sizing:border-box;

    background:#ffffff;

    border-radius:20px;

    border:1px solid #e2e8f0;

    box-shadow:
        0 15px 40px rgba(15,35,80,.10);

    position:relative;

    overflow:hidden;
}


/* Decorative blue glow */

.hdi-form-box::before{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    right:-90px;

    top:-90px;

    border-radius:50%;

    background:rgba(37,99,235,.06);

    pointer-events:none;
}


/* =====================================================
   FORM LABEL
===================================================== */

.hdi-form-label{

    display:inline-block;

    margin-bottom:10px;

    color:#2563eb;

    font-size:12px;

    font-weight:800;

    letter-spacing:1.5px;

    position:relative;

    z-index:2;
}


/* =====================================================
   FORM HEADING
===================================================== */

.hdi-form-box h2{

    margin:0;

    color:#0f172a;

    font-size:31px;

    line-height:1.2;

    font-weight:800;

    position:relative;

    z-index:2;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.hdi-form-description{

    margin:13px 0 25px;

    color:#64748b;

    font-size:14px;

    line-height:24px;

    position:relative;

    z-index:2;
}


/* =====================================================
   CONTACT FORM 7 AREA
===================================================== */

.hdi-contact-form{

    width:100%;

    position:relative;

    z-index:2;
}


/* =====================================================
   CONTACT FORM 7 INPUTS
===================================================== */

.hdi-contact-form input[type="text"],
.hdi-contact-form input[type="email"],
.hdi-contact-form input[type="tel"],
.hdi-contact-form input[type="number"],
.hdi-contact-form select,
.hdi-contact-form textarea{

    width:100%;

    box-sizing:border-box;

    padding:14px 16px;

    margin-bottom:13px;

    border:1px solid #dbe2ea;

    border-radius:9px;

    background:#ffffff;

    color:#1e293b;

    font-family:inherit;

    font-size:14px;

    outline:none;

    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}


/* Focus */

.hdi-contact-form input:focus,
.hdi-contact-form select:focus,
.hdi-contact-form textarea:focus{

    border-color:#2563eb;

    box-shadow:
        0 0 0 3px rgba(37,99,235,.10);
}


/* Placeholder */

.hdi-contact-form input::placeholder,
.hdi-contact-form textarea::placeholder{

    color:#94a3b8;
}


/* Textarea */

.hdi-contact-form textarea{

    min-height:100px;

    resize:vertical;
}


/* =====================================================
   SUBMIT BUTTON
===================================================== */

.hdi-contact-form input[type="submit"],
.hdi-contact-form button{

    width:100%;

    padding:15px 20px;

    border:0;

    border-radius:9px;

    background:
        linear-gradient(
            135deg,
            #1e3a8a,
            #2563eb
        );

    color:#ffffff;

    font-family:inherit;

    font-size:14px;

    font-weight:700;

    cursor:pointer;

    box-shadow:
        0 8px 20px rgba(37,99,235,.20);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.hdi-contact-form input[type="submit"]:hover,
.hdi-contact-form button:hover{

    transform:translateY(-2px);

    box-shadow:
        0 12px 28px rgba(37,99,235,.28);
}


/* =====================================================
   CF7 SPAN / VALIDATION
===================================================== */

.hdi-contact-form .wpcf7-form-control-wrap{

    display:block;

    width:100%;
}


.hdi-contact-form .wpcf7-not-valid-tip{

    font-size:11px;

    margin-top:-8px;

    margin-bottom:8px;

    color:#dc2626;
}


.hdi-contact-form .wpcf7-response-output{

    margin:15px 0 0;

    padding:10px 14px;

    border-radius:8px;

    font-size:12px;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .hdi-contact-section{

        padding:60px 5%;
    }

    .hdi-contact-wrapper{

        grid-template-columns:1fr;

        gap:25px;
    }

    .hdi-map-box{

        min-height:400px;
    }

    .hdi-map-box iframe{

        min-height:400px;
    }

    .hdi-form-box{

        min-height:auto;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:600px){

    .hdi-contact-section{

        padding:45px 5%;
    }

    .hdi-contact-wrapper{

        gap:20px;
    }

    .hdi-map-box{

        min-height:320px;

        border-radius:16px;
    }

    .hdi-map-box iframe{

        min-height:320px;
    }

    .hdi-form-box{

        padding:30px 20px;

        border-radius:16px;
    }

    .hdi-form-box h2{

        font-size:26px;
    }

    .hdi-form-description{

        font-size:13px;

        line-height:22px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d1284cc *//* =====================================================
   HOME DOOR INFRA
   CONTACT INFORMATION SECTION
   ROYAL BLUE PREMIUM THEME
===================================================== */

.hdi-contact-info{

    width:100%;

    padding:45px 5%;

    box-sizing:border-box;

    background:#ffffff;

    position:relative;

    overflow:hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.hdi-contact-container{

    width:100%;

    max-width:1200px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:30px;
}


/* =====================================================
   CONTACT CARD
===================================================== */

.hdi-contact-card{

    min-height:315px;

    padding:40px 30px;

    box-sizing:border-box;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    text-align:center;

    position:relative;

    overflow:hidden;

    border-radius:20px;

    background:
        linear-gradient(
            135deg,
            #061638 0%,
            #0b2463 48%,
            #2563eb 100%
        );

    box-shadow:
        0 18px 40px rgba(15,35,80,.16);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}


/* =====================================================
   DECORATIVE CIRCLES
===================================================== */

.hdi-contact-card::before{

    content:"";

    position:absolute;

    width:150px;
    height:150px;

    right:-65px;
    top:-75px;

    border-radius:50%;

    background:rgba(147,197,253,.12);

    pointer-events:none;
}


.hdi-contact-card::after{

    content:"";

    position:absolute;

    width:120px;
    height:120px;

    left:-65px;
    bottom:-65px;

    border-radius:50%;

    background:rgba(96,165,250,.10);

    pointer-events:none;
}


/* =====================================================
   HOVER
===================================================== */

.hdi-contact-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 25px 55px rgba(37,99,235,.25);
}


/* =====================================================
   ICON
===================================================== */

.hdi-contact-icon{

    width:82px;

    height:82px;

    margin-bottom:25px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#ffffff;

    color:#2563eb;

    position:relative;

    z-index:2;

    box-shadow:
        0 10px 25px rgba(0,0,0,.12);
}


.hdi-contact-icon span{

    font-size:32px;

    line-height:1;

    font-weight:700;
}


/* =====================================================
   HEADING
===================================================== */

.hdi-contact-card h3{

    margin:0 0 20px;

    color:#ffffff;

    font-size:27px;

    line-height:1.2;

    font-weight:750;

    position:relative;

    z-index:2;
}


/* =====================================================
   TEXT / LINKS
===================================================== */

.hdi-contact-card p{

    margin:0;

    color:#dbeafe;

    font-size:14px;

    line-height:28px;

    position:relative;

    z-index:2;
}


.hdi-contact-card a{

    color:#ffffff !important;

    font-size:15px;

    line-height:24px;

    font-weight:600;

    text-decoration:none !important;

    position:relative;

    z-index:2;

    transition:color .3s ease;
}


.hdi-contact-card a:hover{

    color:#bfdbfe !important;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .hdi-contact-info{

        padding:40px 4%;
    }

    .hdi-contact-container{

        gap:20px;
    }

    .hdi-contact-card{

        min-height:290px;

        padding:35px 20px;
    }

    .hdi-contact-card h3{

        font-size:23px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:650px){

    .hdi-contact-info{

        padding:35px 5%;
    }

    .hdi-contact-container{

        grid-template-columns:1fr;

        gap:20px;
    }

    .hdi-contact-card{

        min-height:280px;

        border-radius:18px;
    }

    .hdi-contact-icon{

        width:75px;

        height:75px;

        margin-bottom:20px;
    }

    .hdi-contact-icon span{

        font-size:29px;
    }

    .hdi-contact-card h3{

        font-size:24px;

        margin-bottom:15px;
    }

}/* End custom CSS */