.elementor-538 .elementor-element.elementor-element-8a48742{--display:flex;}body.elementor-page-538:not(.elementor-motion-effects-element-type-background), body.elementor-page-538 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050816;}@media(min-width:451px){.elementor-538 .elementor-element.elementor-element-8a48742{--content-width:1600px;}}/* Start custom CSS for html, class: .elementor-element-b90cb3f *//* =========================================================
   HUBNOTCH SOLUTIONS — PREMIUM CONTACT PAGE
========================================================= */

.hn-contact-page{
    --hn-blue:#18AEFF;
    --hn-yellow:#FFEB02;
    --hn-dark:#050A12;
    --hn-dark-two:#081321;
    --hn-white:#ffffff;

    width:100%;
    overflow:hidden;
    color:#fff;

    font-family:
        Inter,
        Manrope,
        Arial,
        sans-serif;
}

.hn-contact-container{
    width:min(1500px,calc(100% - 50px));
    margin:auto;
}


/* =========================================================
   HERO
========================================================= */

.hn-contact-hero{
    position:relative;
    min-height:720px;
    display:flex;
    align-items:center;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.hn-contact-hero-content{
    position:relative;
    z-index:5;
    width:58%;
    padding:120px 0;
}

.hn-section-tag{
    display:flex;
    align-items:center;
    gap:10px;

    color:var(--hn-blue);

    font-size:10px;
    font-weight:800;
    letter-spacing:.18em;
}

.hn-section-tag span{
    width:25px;
    height:1px;
    background:var(--hn-blue);
}

.hn-contact-hero h1{
    margin:25px 0 22px;

    max-width:850px;

    font-size:clamp(48px,6vw,86px);
    line-height:.98;
    letter-spacing:-.055em;
    font-weight:800;
}

.hn-contact-hero h1 strong{
    display:block;

    background:
        linear-gradient(
            90deg,
            #18AEFF,
            #FFEB02
        );

    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.hn-contact-hero p{
    max-width:650px;
    margin:0;

    color:rgba(255,255,255,.55);

    font-size:16px;
    line-height:1.8;
}

.hn-contact-hero-actions{
    display:flex;
    align-items:center;
    gap:15px;
    margin-top:38px;
}

.hn-primary-btn,
.hn-secondary-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:15px;

    min-height:54px;
    padding:0 25px;

    border-radius:12px;
    text-decoration:none;

    font-size:12px;
    font-weight:800;

    transition:.3s ease;
}

.hn-primary-btn{
    background:
        linear-gradient(
            135deg,
            #18AEFF,
            #087FCF
        );

    color:#fff;

    box-shadow:
        0 15px 40px
        rgba(24,174,255,.18);
}

.hn-primary-btn span{
    font-size:18px;
}

.hn-primary-btn:hover{
    transform:translateY(-3px);
    color:#fff;
}

.hn-secondary-btn{
    color:rgba(255,255,255,.75);

    border:1px solid rgba(255,255,255,.12);

    background:rgba(255,255,255,.035);
}

.hn-secondary-btn:hover{
    color:#fff;

    border-color:
        rgba(24,174,255,.4);

    background:
        rgba(24,174,255,.06);
}


/* =========================================================
   HERO VISUAL
========================================================= */

.hn-contact-hero-visual{
    position:absolute;

    right:-30px;
    top:50%;

    transform:translateY(-50%);

    width:570px;
    height:570px;
}

.hn-contact-orb{
    position:absolute;

    top:50%;
    left:50%;

    transform:translate(-50%,-50%);

    width:310px;
    height:310px;

    border-radius:50%;

    background:
        radial-gradient(
            circle at 35% 30%,
            rgba(24,174,255,.22),
            rgba(24,174,255,.04) 45%,
            transparent 70%
        );

    border:1px solid rgba(24,174,255,.2);

    box-shadow:
        0 0 100px
        rgba(24,174,255,.09);
}

.hn-orb-inner{
    position:absolute;
    inset:35px;

    border-radius:50%;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    background:rgba(5,10,18,.8);

    border:1px solid rgba(255,255,255,.07);
}

.hn-orb-icon{
    width:60px;
    height:60px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:18px;

    margin-bottom:17px;

    color:#050A12;

    font-size:28px;

    background:
        linear-gradient(
            135deg,
            #18AEFF,
            #FFEB02
        );
}

.hn-orb-inner span{
    font-size:17px;
    font-weight:900;
    letter-spacing:.15em;
}

.hn-orb-inner small{
    margin-top:7px;

    color:rgba(255,255,255,.35);

    font-size:8px;
    letter-spacing:.2em;
}

.hn-orbit{
    position:absolute;

    top:50%;
    left:50%;

    border:1px solid rgba(24,174,255,.10);

    border-radius:50%;

    transform:
        translate(-50%,-50%)
        rotate(-20deg);
}

.hn-orbit-one{
    width:470px;
    height:210px;
}

.hn-orbit-two{
    width:570px;
    height:300px;

    transform:
        translate(-50%,-50%)
        rotate(35deg);
}

.hn-floating-card{
    position:absolute;

    display:flex;
    align-items:center;
    gap:10px;

    padding:12px 15px;

    border-radius:11px;

    background:rgba(9,19,32,.85);

    border:1px solid rgba(255,255,255,.09);

    backdrop-filter:blur(15px);

    color:rgba(255,255,255,.8);

    font-size:9px;
    font-weight:700;

    box-shadow:
        0 15px 40px
        rgba(0,0,0,.2);
}

.hn-floating-card span{
    color:var(--hn-blue);
    font-size:8px;
}

.hn-float-one{
    top:80px;
    right:55px;
}

.hn-float-two{
    left:0;
    top:250px;
}

.hn-float-three{
    right:15px;
    bottom:80px;
}


/* =========================================================
   MAIN CONTACT
========================================================= */

.hn-contact-main{
    padding:120px 0;
}

.hn-contact-grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:90px;
    align-items:start;
}

.hn-contact-info h2{
    margin:22px 0;

    max-width:600px;

    font-size:48px;
    line-height:1.05;
    letter-spacing:-.045em;
}

.hn-contact-info h2 strong{
    display:block;
    color:var(--hn-blue);
}

.hn-contact-intro{
    max-width:580px;

    color:rgba(255,255,255,.5);

    font-size:14px;
    line-height:1.8;
}


/* =========================================================
   CONTACT CARDS
========================================================= */

.hn-contact-cards{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:38px;
}

.hn-contact-card{
    display:flex;
    align-items:flex-start;
    gap:17px;

    padding:18px;

    border-radius:14px;

    background:rgba(255,255,255,.025);

    border:1px solid rgba(255,255,255,.07);

    transition:.3s ease;
}

.hn-contact-card:hover{
    transform:translateX(5px);

    border-color:
        rgba(24,174,255,.25);

    background:
        rgba(24,174,255,.035);
}

.hn-contact-card-icon{
    width:42px;
    height:42px;

    flex:0 0 42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:11px;

    background:
        rgba(24,174,255,.10);

    color:var(--hn-blue);

    font-size:17px;
}

.hn-contact-card span{
    display:block;

    margin-bottom:5px;

    color:rgba(255,255,255,.35);

    font-size:9px;

    text-transform:uppercase;

    letter-spacing:.1em;

    font-weight:800;
}

.hn-contact-card a,
.hn-contact-card strong{
    display:block;

    color:#fff;

    font-size:13px;

    font-weight:800;

    text-decoration:none;
}

.hn-contact-card a:hover{
    color:var(--hn-blue);
}

.hn-contact-card small{
    display:block;

    margin-top:5px;

    color:rgba(255,255,255,.35);

    font-size:10px;
}


/* =========================================================
   NOTE
========================================================= */

.hn-contact-note{
    display:flex;
    gap:15px;
    margin-top:35px;
}

.hn-note-line{
    width:2px;
    flex:0 0 2px;

    background:
        linear-gradient(
            #18AEFF,
            transparent
        );
}

.hn-contact-note strong{
    font-size:12px;
}

.hn-contact-note p{
    margin:7px 0 0;

    color:rgba(255,255,255,.4);

    font-size:11px;
    line-height:1.7;
}


/* =========================================================
   FORM
========================================================= */

.hn-contact-form-wrap{
    padding:35px;

    border-radius:22px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.018)
        );

    border:1px solid rgba(255,255,255,.09);

    box-shadow:
        0 30px 80px
        rgba(0,0,0,.2);
}

.hn-form-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;

    padding-bottom:25px;
    margin-bottom:28px;

    border-bottom:1px solid
        rgba(255,255,255,.07);
}

.hn-form-top span{
    color:var(--hn-blue);

    font-size:9px;
    font-weight:800;
    letter-spacing:.15em;
}

.hn-form-top h3{
    margin:8px 0 0;

    font-size:25px;
    letter-spacing:-.02em;
}

.hn-form-number{
    color:rgba(255,255,255,.15);

    font-size:30px;
    font-weight:900;
}

.hn-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.hn-form-field{
    margin-bottom:17px;
}

.hn-form-field label{
    display:block;

    margin-bottom:8px;

    color:rgba(255,255,255,.5);

    font-size:9px;
    font-weight:800;

    text-transform:uppercase;
    letter-spacing:.08em;
}

.hn-form-field input,
.hn-form-field select,
.hn-form-field textarea{
    width:100%;
    box-sizing:border-box;

    border:1px solid
        rgba(255,255,255,.08);

    border-radius:11px;

    background:
        rgba(0,0,0,.22);

    color:#fff;

    outline:none;

    font-family:inherit;
    font-size:12px;

    transition:.25s ease;
}

.hn-form-field input,
.hn-form-field select{
    height:52px;
    padding:0 15px;
}

.hn-form-field textarea{
    padding:15px;

    resize:vertical;

    min-height:140px;
}

.hn-form-field select option{
    background:#081321;
    color:#fff;
}

.hn-form-field input::placeholder,
.hn-form-field textarea::placeholder{
    color:rgba(255,255,255,.2);
}

.hn-form-field input:focus,
.hn-form-field select:focus,
.hn-form-field textarea:focus{
    border-color:
        rgba(24,174,255,.6);

    background:
        rgba(24,174,255,.035);

    box-shadow:
        0 0 0 3px
        rgba(24,174,255,.06);
}

.hn-form-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    margin-top:5px;
}

.hn-form-bottom p{
    max-width:300px;
    margin:0;

    color:rgba(255,255,255,.3);

    font-size:9px;
    line-height:1.6;
}

.hn-submit-btn{
    display:flex;
    align-items:center;
    gap:20px;

    height:52px;

    padding:0 8px 0 20px;

    border:0;
    border-radius:11px;

    cursor:pointer;

    color:#06101b;

    background:
        linear-gradient(
            135deg,
            #18AEFF,
            #FFEB02
        );

    font-family:inherit;

    font-size:11px;
    font-weight:900;

    transition:.3s ease;
}

.hn-submit-btn b{
    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:8px;

    background:rgba(0,0,0,.15);

    font-size:16px;
}

.hn-submit-btn:hover{
    transform:translateY(-3px);

    box-shadow:
        0 12px 35px
        rgba(24,174,255,.18);
}

.hn-submit-btn:disabled{
    opacity:.7;
    cursor:not-allowed;
    transform:none;
}

.hn-form-message{
    display:none;

    margin-top:18px;

    padding:13px;

    border-radius:9px;

    font-size:11px;
    line-height:1.6;
}

.hn-form-message.success{
    display:block;

    background:
        rgba(50,200,120,.08);

    border:1px solid
        rgba(50,200,120,.2);

    color:#72e0a5;
}

.hn-form-message.error{
    display:block;

    background:
        rgba(255,70,70,.08);

    border:1px solid
        rgba(255,70,70,.2);

    color:#ff8585;
}


/* =========================================================
   CTA
========================================================= */

.hn-contact-services{
    padding:0 0 120px;
}

.hn-services-cta{
    position:relative;
    overflow:hidden;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:50px;

    padding:65px;

    border-radius:25px;

    background:
        linear-gradient(
            120deg,
            #081624,
            #0a1b2e
        );

    border:1px solid
        rgba(24,174,255,.15);
}

.hn-services-cta:after{
    content:"";

    position:absolute;

    width:350px;
    height:350px;

    right:-120px;
    top:-150px;

    border-radius:50%;

    background:
        rgba(24,174,255,.08);

    filter:blur(20px);
}

.hn-cta-content{
    position:relative;
    z-index:2;

    max-width:750px;
}

.hn-cta-content h2{
    margin:18px 0;

    font-size:45px;
    line-height:1.05;
    letter-spacing:-.04em;
}

.hn-cta-content h2 strong{
    color:var(--hn-blue);
}

.hn-cta-content p{
    margin:0;

    max-width:650px;

    color:rgba(255,255,255,.45);

    font-size:13px;
    line-height:1.8;
}

.hn-cta-button{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    gap:15px;

    padding:0 25px;

    min-height:55px;

    border-radius:11px;

    background:#fff;

    color:#050A12;

    text-decoration:none;

    font-size:11px;
    font-weight:900;

    white-space:nowrap;

    transition:.3s ease;
}

.hn-cta-button:hover{
    transform:translateY(-3px);
    color:#050A12;
}

.hn-cta-button span{
    font-size:18px;
}


/* =========================================================
   FAQ
========================================================= */

.hn-contact-faq{
    padding:0 0 130px;
}

.hn-faq-heading{
    margin-bottom:45px;
}

.hn-faq-heading h2{
    margin:20px 0 0;

    font-size:45px;

    letter-spacing:-.04em;
}

.hn-faq-heading h2 strong{
    color:var(--hn-blue);
}

.hn-faq-grid{
    display:grid;

    grid-template-columns:1fr 1fr;

    gap:15px;
}

.hn-faq-item{
    display:grid;

    grid-template-columns:45px 1fr;

    gap:15px;

    padding:25px;

    border:1px solid
        rgba(255,255,255,.07);

    border-radius:15px;

    background:
        rgba(255,255,255,.018);

    transition:.3s ease;
}

.hn-faq-item:hover{
    border-color:
        rgba(24,174,255,.2);

    background:
        rgba(24,174,255,.025);
}

.hn-faq-item > span{
    color:var(--hn-blue);

    font-size:10px;
    font-weight:900;
}

.hn-faq-item h3{
    margin:0 0 9px;

    font-size:14px;
}

.hn-faq-item p{
    margin:0;

    color:rgba(255,255,255,.4);

    font-size:11px;
    line-height:1.7;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .hn-contact-hero-content{
        width:65%;
    }

    .hn-contact-hero-visual{
        right:-180px;
        opacity:.55;
    }

    .hn-contact-grid{
        gap:45px;
    }
}


@media(max-width:900px){

    .hn-contact-hero{
        min-height:auto;
    }

    .hn-contact-hero-content{
        width:100%;
        padding:100px 0;
    }

    .hn-contact-hero-visual{
        display:none;
    }

    .hn-contact-grid{
        grid-template-columns:1fr;
    }

    .hn-contact-main{
        padding:80px 0;
    }
}


@media(max-width:700px){

    .hn-contact-container{
        width:calc(100% - 30px);
    }

    .hn-contact-hero-content{
        padding:80px 0;
    }

    .hn-contact-hero h1{
        font-size:48px;
    }

    .hn-contact-hero p{
        font-size:13px;
    }

    .hn-contact-hero-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .hn-primary-btn,
    .hn-secondary-btn{
        width:100%;
        box-sizing:border-box;
    }

    .hn-contact-info h2{
        font-size:37px;
    }

    .hn-form-row{
        grid-template-columns:1fr;
        gap:0;
    }

    .hn-contact-form-wrap{
        padding:22px;
        border-radius:17px;
    }

    .hn-form-bottom{
        flex-direction:column;
        align-items:stretch;
    }

    .hn-form-bottom p{
        max-width:none;
    }

    .hn-submit-btn{
        justify-content:space-between;
    }

    .hn-services-cta{
        flex-direction:column;
        align-items:flex-start;

        padding:35px 25px;
    }

    .hn-cta-content h2{
        font-size:35px;
    }

    .hn-faq-grid{
        grid-template-columns:1fr;
    }

    .hn-faq-heading h2{
        font-size:36px;
    }
}


@media(max-width:420px){

    .hn-contact-hero h1{
        font-size:41px;
    }

    .hn-contact-info h2{
        font-size:32px;
    }

    .hn-contact-card{
        padding:15px;
    }

    .hn-contact-form-wrap{
        padding:18px;
    }
}/* End custom CSS */