.contact-page-main { background:#fff; }
        .contact-hero {
            position:relative;
            min-height:545px;
            display:flex;
            align-items:center;
            padding:90px 0;
            background-image:
                linear-gradient(90deg, rgba(7,24,45,.80) 0%, rgba(7,24,45,.52) 48%, rgba(7,24,45,.18) 100%),
                url("../../img/hero/contact-hero.webp");
            background-size:cover;
            background-repeat:no-repeat;
            background-position:center 18%;
            overflow:hidden;
        }
        .contact-hero::after { display:none; }
        .contact-hero .container { position:relative; z-index:2; }
        .contact-hero-label {
            display:inline-flex;
            align-items:center;
            gap:10px;
            color:#d8a15d;
            font-weight:700;
            letter-spacing:.14em;
            font-size:13px;
            margin-bottom:18px;
        }
        .contact-hero h1 {
            color:#fff;
            max-width:760px;
            font-size:clamp(42px,6vw,72px);
            line-height:1.05;
            margin-bottom:20px;
        }
        .contact-hero p {
            color:rgba(255,255,255,.82);
            max-width:680px;
            font-size:18px;
            line-height:1.75;
            margin:0;
        }
        .contact-breadcrumb {
            margin-top:26px;
            display:flex;
            align-items:center;
            gap:10px;
            color:rgba(255,255,255,.72);
            font-size:14px;
        }
        .contact-breadcrumb a { color:#fff; }
        .contact-section { padding:100px 0; }
        .contact-intro { max-width:720px; margin:0 auto 50px; }
        .contact-grid { align-items:stretch; }
        .contact-info-panel,
        .contact-form-panel {
            height:100%;
            border:1px solid #e8edf3;
            border-radius:22px;
            background:#fff;
            box-shadow:0 20px 60px rgba(8,30,55,.08);
        }
        .contact-info-panel {
            padding:42px;
            background:linear-gradient(145deg,#091f39,#0f355b);
            color:#fff;
        }
        .contact-info-panel h2 { color:#fff; font-size:34px; margin-bottom:14px; }
        .contact-info-panel > p { color:rgba(255,255,255,.75); line-height:1.75; margin-bottom:32px; }
        .contact-detail {
            display:flex;
            gap:16px;
            align-items:flex-start;
            padding:20px 0;
            border-top:1px solid rgba(255,255,255,.12);
        }
        .contact-detail-icon {
            width:48px;
            height:48px;
            flex:0 0 48px;
            display:grid;
            place-items:center;
            border-radius:14px;
            background:rgba(216,161,93,.14);
            color:#e7b676;
            font-size:19px;
        }
        .contact-detail h3 { color:#fff; font-size:18px; margin:0 0 5px; }
        .contact-detail p, .contact-detail a { color:rgba(255,255,255,.78); margin:0; }
        .contact-detail a {
            font-size:22px;
            font-weight:700;
            color:#fff;
            text-decoration:none;
        }
        .contact-detail a:hover { color:#d8a15d; }
        .contact-trust {
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:10px;
            margin-top:30px;
        }
        .contact-trust div {
            text-align:center;
            padding:14px 8px;
            border-radius:12px;
            background:rgba(255,255,255,.07);
            color:#fff;
            font-size:13px;
            line-height:1.4;
        }
        .contact-trust i { display:block; color:#e7b676; margin-bottom:7px; font-size:18px; }
        .contact-form-panel { padding:42px; }
        .contact-form-panel h2 { font-size:34px; margin-bottom:10px; }
        .contact-form-panel .form-intro { color:#637083; margin-bottom:28px; }
        .contact-form-grid {
            display:grid;
            grid-template-columns:1fr 1fr;
            gap:18px;
        }
        .contact-field-full { grid-column:1 / -1; }
        .contact-form label {
            display:block;
            font-size:14px;
            font-weight:700;
            color:#15283d;
            margin-bottom:8px;
        }
        .contact-form input,
        .contact-form select,
        .contact-form textarea {
            width:100%;
            min-height:54px;
            border:1px solid #dfe6ee;
            border-radius:12px;
            background:#f8fafc;
            padding:13px 16px;
            color:#14263a;
            outline:none;
            transition:.2s ease;
        }
        .contact-form textarea { min-height:145px; resize:vertical; }
        .contact-form input:focus,
        .contact-form select:focus,
        .contact-form textarea:focus {
            border-color:#d79e58;
            background:#fff;
            box-shadow:0 0 0 4px rgba(215,158,88,.12);
        }
        .contact-checkbox {
            display:flex;
            gap:10px;
            align-items:flex-start;
            margin:2px 0 18px;
            color:#647184;
            font-size:13px;
            line-height:1.6;
        }
        .contact-checkbox input { width:18px; min-height:18px; margin-top:3px; }
        .contact-submit {
            width:100%;
            border:0;
            cursor:pointer;
        }
        .contact-status {
            display:none;
            padding:14px 16px;
            margin-bottom:20px;
            border-radius:10px;
            font-weight:600;
        }
        .contact-status.success { display:block; background:#eaf8ef; color:#1d6c3a; border:1px solid #bfe5cb; }
        .contact-status.error { display:block; background:#fff0f0; color:#9a2c2c; border:1px solid #efc5c5; }
        .contact-honeypot { position:absolute!important; left:-9999px!important; opacity:0!important; }
        .contact-services { padding:90px 0; background:#f5f8fb; }
        .contact-service-card {
            height:100%;
            padding:30px 24px;
            border-radius:18px;
            background:#fff;
            border:1px solid #e5ebf1;
            text-align:center;
            transition:.25s ease;
        }
        .contact-service-card:hover { transform:translateY(-5px); box-shadow:0 18px 45px rgba(9,31,57,.09); }
        .contact-service-card .spotless-icon {
            width:72px;
            height:72px;
            margin:0 auto 22px;
            display:flex;
            align-items:center;
            justify-content:center;
            border-radius:18px;
            background:#f8f4ee;
            font-size:36px;
            line-height:1;
        }
        .contact-service-card h3 { font-size:20px; margin-bottom:8px; }
        .contact-service-card p { color:#667487; margin:0; font-size:14px; line-height:1.65; }
        .contact-final-cta { padding:85px 0; background:#fff; }
        .contact-cta-box {
            padding:58px;
            border-radius:24px;
            background:linear-gradient(135deg,#0b2644,#123f6b);
            color:#fff;
            text-align:center;
        }
        .contact-cta-box h2 { color:#fff; font-size:42px; margin-bottom:14px; }
        .contact-cta-box p { color:rgba(255,255,255,.76); max-width:650px; margin:0 auto 26px; }
        .contact-cta-actions {
            display:flex;
            justify-content:center;
            align-items:center;
            gap:18px;
            flex-wrap:wrap;
        }
        .contact-cta-actions a { min-width:220px; }
        .contact-cta-actions i { margin-right:10px; }
        .contact-call-btn {
            display:inline-flex;
            align-items:center;
            justify-content:center;
            min-height:54px;
            padding:0 28px;
            border:1px solid rgba(255,255,255,.55);
            color:#fff;
            border-radius:4px;
            font-weight:700;
        }
        .contact-call-btn:hover { background:#fff; color:#0c2a49; }

        @media (max-width:991px) {.contact-hero {
                min-height:500px;
                padding:80px 0;
                background-position:center 20%;
            }.contact-section { padding:75px 0; }.contact-info-panel, .contact-form-panel { padding:30px; }.contact-info-panel { margin-bottom:24px; }}

        @media (max-width:575px) {.contact-hero {
                min-height:460px;
                padding:70px 0;
                background-position:58% 20%;
            }.contact-form-grid { grid-template-columns:1fr; }.contact-field-full { grid-column:auto; }.contact-trust { grid-template-columns:1fr; }.contact-info-panel, .contact-form-panel { padding:24px 20px; border-radius:16px; }.contact-cta-box { padding:42px 20px; }.contact-cta-box h2 { font-size:32px; }.contact-cta-actions a { width:100%; min-width:0; }}
    


    /* APPROVED MOBILE MENU */
    
    


    .contact-hero-badges{ display:none; }

    @media(max-width:991px){body.contact-page .contact-hero{
            
            height:auto !important;
            display:flex !important;
            align-items:flex-end !important;
            
            background-position:58% 20% !important;
            background-image:
                linear-gradient(
                    90deg,
                    rgba(7,24,45,.90) 0%,
                    rgba(7,24,45,.74) 42%,
                    rgba(7,24,45,.34) 74%,
                    rgba(7,24,45,.10) 100%
                ),
                url("../../img/hero/contact-hero.webp") !important;
        }body.contact-page .contact-hero-label{
            display:block !important;
            margin:0 0 12px !important;
            color:#d8a15d !important;
            font-size:14px !important;
            font-weight:800 !important;
            letter-spacing:.14em !important;
        }body.contact-page .contact-hero h1{
            
            margin:0 0 16px !important;
            font-size:42px !important;
            line-height:1.04 !important;
            letter-spacing:-1px !important;
            text-align:left !important;
        }body.contact-page .contact-hero p{
            
            margin:0 !important;
            color:rgba(255,255,255,.93) !important;
            font-size:16px !important;
            line-height:1.55 !important;
            text-align:left !important;
        }body.contact-page .contact-hero-badges{
            width:100% !important;
            display:flex !important;
            flex-direction:column !important;
            align-items:flex-start !important;
            
            
        }body.contact-page .contact-hero-badge{
            width:auto !important;
            min-height:38px !important;
            display:flex !important;
            align-items:center !important;
            gap:8px !important;
            margin:0 !important;
            padding:8px 16px !important;
            border:1px solid rgba(255,255,255,.38) !important;
            border-radius:22px !important;
            background:rgba(255,255,255,.16) !important;
            color:#fff !important;
            font-family:"Outfit",sans-serif !important;
            font-size:14px !important;
            font-weight:700 !important;
            line-height:1.2 !important;
            backdrop-filter:blur(5px) !important;
            -webkit-backdrop-filter:blur(5px) !important;
        }body.contact-page .contact-breadcrumb{ display:none !important; }body.contact-page .contact-intro{ margin:0 auto 28px !important; }body.contact-page .contact-intro .sub-title3{
            color:#ae2349 !important;
            font-size:16px !important;
            font-weight:800 !important;
            letter-spacing:.13em !important;
        }body.contact-page .contact-intro .sec-title{
            margin-top:10px !important;
            font-size:34px !important;
            line-height:1.12 !important;
        }body.contact-page .contact-intro .sec-text{
            font-size:17px !important;
            line-height:1.6 !important;
        }body.contact-page .contact-info-panel,
        body.contact-page .contact-form-panel{
            padding:30px 24px !important;
            border-radius:18px !important;
        }body.contact-page .contact-info-panel h2,
        body.contact-page .contact-form-panel h2{
            font-size:30px !important;
            line-height:1.15 !important;
        }body.contact-page .contact-detail a,
        body.contact-page .contact-detail p{
            font-size:16px !important;
        }body.contact-page .contact-trust{
            grid-template-columns:1fr !important;
            gap:9px !important;
        }body.contact-page .contact-form-grid{
            grid-template-columns:1fr !important;
            gap:16px !important;
        }body.contact-page .contact-field-full{ grid-column:auto !important; }body.contact-page .contact-form input,
        body.contact-page .contact-form select,
        body.contact-page .contact-form textarea{
            min-height:56px !important;
            font-size:16px !important;
        }body.contact-page .contact-submit{
            min-height:58px !important;
            border-radius:12px !important;
            font-size:16px !important;
        }body.contact-page .contact-services{
            
            background:#fff !important;
        }body.contact-page .contact-cta-box{
            padding:28px 24px !important;
            border:1px solid #dfe4ea !important;
            border-radius:16px !important;
            background:#f7f9fb !important;
            color:#111827 !important;
        }body.contact-page .contact-cta-box h2{
            margin:0 0 12px !important;
            color:#111827 !important;
            font-size:27px !important;
            line-height:1.15 !important;
        }body.contact-page .contact-cta-box p{
            margin:0 auto 20px !important;
            color:#69707d !important;
            font-size:16px !important;
            line-height:1.55 !important;
        }body.contact-page .contact-cta-actions{
            flex-direction:column !important;
            gap:12px !important;
        }body.contact-page .contact-cta-actions .th-btn{
            width:100% !important;
            min-width:0 !important;
            min-height:56px !important;
            border-radius:12px !important;
        }body.contact-page .scroll-top{ display:none !important; }}

    @media(max-width:575px){body.contact-page .contact-hero-badge{ font-size:13px !important; }body.contact-page .contact-info-panel,
        body.contact-page .contact-form-panel{
            padding:26px 20px !important;
        }}
    


    .contact-mobile-services{ display:none; }

    @media(max-width:991px){body.contact-page .contact-desktop-services{ display:none !important; }body.contact-page .contact-mobile-services{ display:block !important; }body.contact-page .contact-mobile-services h2{
            margin:0 !important;
            padding:0 18px 22px !important;
            border-bottom:1px solid #dce3eb !important;
            color:#ae2349 !important;
            font-family:"Inter",sans-serif !important;
            font-size:18px !important;
            font-weight:800 !important;
            line-height:1.25 !important;
            letter-spacing:.13em !important;
            text-align:center !important;
            text-transform:uppercase !important;
        }body.contact-page .contact-mobile-service-list{ display:block !important; }body.contact-page .contact-mobile-service-list a{
            min-height:72px !important;
            display:grid !important;
            grid-template-columns:42px minmax(0,1fr) 18px !important;
            align-items:center !important;
            gap:14px !important;
            padding:16px 4px !important;
            border-bottom:1px solid #dfe4ea !important;
            color:#111827 !important;
            font-family:"Outfit",sans-serif !important;
            text-decoration:none !important;
        }body.contact-page .contact-mobile-service-list a:hover,
        body.contact-page .contact-mobile-service-list a:focus{
            color:#ae2349 !important;
        }body.contact-page .service-list-icon{
            width:42px !important;
            height:42px !important;
            display:flex !important;
            align-items:center !important;
            justify-content:center !important;
            font-size:25px !important;
            line-height:1 !important;
        }body.contact-page .service-list-title{
            font-size:23px !important;
            font-weight:700 !important;
            line-height:1.2 !important;
        }body.contact-page .service-list-arrow{
            justify-self:end !important;
            color:#69707d !important;
            font-size:30px !important;
            font-weight:500 !important;
            line-height:1 !important;
        }}
    


    .contact-hero-actions{ display:none; }

    @media(max-width:991px){body.contact-page .contact-hero{
            min-height:760px !important;
            padding:38px 0 40px !important;
        }body.contact-page .contact-hero h1{
            max-width:355px !important;
            margin-bottom:16px !important;
        }body.contact-page .contact-hero p{
            max-width:340px !important;
            margin-bottom:0 !important;
        }body.contact-page .contact-hero-actions{
            width:100% !important;
            display:flex !important;
            flex-direction:column !important;
            gap:14px !important;
            margin-top:26px !important;
        }body.contact-page .contact-hero-quote{
            width:100% !important;
            min-width:0 !important;
            min-height:74px !important;
            display:flex !important;
            align-items:center !important;
            justify-content:center !important;
            margin:0 !important;
            border-radius:18px !important;
            font-size:20px !important;
            font-weight:700 !important;
            line-height:1.2 !important;
        }body.contact-page .contact-hero-phone{
            width:100% !important;
            min-height:74px !important;
            display:flex !important;
            align-items:center !important;
            justify-content:center !important;
            gap:12px !important;
            padding:0 22px !important;
            border:1px solid rgba(255,255,255,.78) !important;
            border-radius:18px !important;
            background:rgba(8,29,52,.28) !important;
            color:#fff !important;
            font-family:"Outfit",sans-serif !important;
            font-size:20px !important;
            font-weight:700 !important;
            line-height:1.2 !important;
            text-decoration:none !important;
            text-shadow:0 2px 5px rgba(0,0,0,.42) !important;
            backdrop-filter:blur(4px) !important;
            -webkit-backdrop-filter:blur(4px) !important;
        }body.contact-page .contact-hero-phone i{ font-size:22px !important; }body.contact-page .contact-hero-phone:hover,
        body.contact-page .contact-hero-phone:focus{
            color:#fff !important;
            background:#ae2349 !important;
            border-color:#ae2349 !important;
        }body.contact-page .contact-hero-badges{
            margin-top:26px !important;
            gap:12px !important;
        }}

    @media(max-width:575px){body.contact-page .contact-hero{
            min-height:740px !important;
            padding:34px 0 34px !important;
        }body.contact-page .contact-hero-quote,
        body.contact-page .contact-hero-phone{
            min-height:70px !important;
            font-size:18px !important;
            border-radius:16px !important;
        }}
    


    .mobile-contact-version{ display:none; }

    @media(max-width:991px){.desktop-contact-version{ display:none !important; }.mobile-contact-version{ display:block !important; }}

    @media(min-width:992px){.desktop-contact-version{ display:block !important; }.mobile-contact-version{ display:none !important; }}
    


    @media (min-width:992px){body.contact-page .desktop-contact-version .contact-cta-actions{
            display:grid !important;
            grid-template-columns:repeat(3,minmax(0,1fr)) !important;
            gap:18px !important;
            width:100% !important;
        }body.contact-page .desktop-contact-version .contact-cta-actions .th-btn,
        body.contact-page .desktop-contact-version .contact-cta-actions .contact-call-btn{
            width:100% !important;
            min-width:0 !important;
            min-height:72px !important;
            margin:0 !important;
            padding:0 24px !important;
            display:inline-flex !important;
            align-items:center !important;
            justify-content:center !important;
            gap:12px !important;
            border-radius:4px !important;
            box-sizing:border-box !important;
            white-space:nowrap !important;
        }body.contact-page .desktop-contact-version .contact-cta-actions .th-btn i,
        body.contact-page .desktop-contact-version .contact-cta-actions .contact-call-btn i{
            margin:0 !important;
        }}
    


/* Tighter, more consistent spacing between major sections */
@media (min-width:992px){}

@media (max-width:991px){body.contact-page .contact-mobile-services h2{
        padding-bottom:14px !important;
    }}



@media (min-width:992px){body.contact-page .contact-section{padding:52px 0 34px !important;}body.contact-page .contact-intro{margin-bottom:18px !important;}body.contact-page .contact-grid{margin-top:0 !important;}body.contact-page .contact-services{padding:30px 0 !important;}body.contact-page .contact-services .title-area{margin-bottom:16px !important;}body.contact-page .contact-final-cta{padding:20px 0 28px !important;}body.contact-page .contact-cta-box{padding:44px !important;}}
@media (max-width:991px){body.contact-page .contact-section{padding:22px 0 12px !important;}body.contact-page .contact-intro{margin-bottom:12px !important;}body.contact-page .contact-info-panel{margin-bottom:12px !important;}body.contact-page .contact-services{padding:14px 0 8px !important;}body.contact-page .contact-final-cta{padding:0 0 14px !important;}}
