/* login page css */

.login_container {
    background-color: #f5f7f9;
    height: 100vh;
    position: relative;
}

.login_container .login_form_div {
    height: auto;
    width: 430px;
    position: absolute;
    background-color: #fff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-box-shadow: 0 1px 3px rgb(34 25 25 / 40%);
    box-shadow: 0 1px 3px rgb(34 25 25 / 40%);
    padding: 30px;
    border-radius: 10px;
}

.login_form_div .cmpy_logo {
    text-align: center;
    margin-bottom: 40px;
}

.login_form_div .cmpy_logo img {
    max-width: 100%;
}

.login_input_Form .input-group-append {
    width: 60px;
    background-color: #09141a;
    margin-left: 0;
    border-radius: 5px 0 0 5px;
}

.login_input_Form .input-group-append .input-group-text {
    border: none;
    background-color: #09141a;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px 0 0 5px;
    height: 100%;
}

.login_input_Form .input-group-append .input-group-text .fa {
    color: #fff;
    font-size: 26px;
}

.login_input_Form .form-group {
    margin-bottom: 30px;
}

.login_input_Form .form-control {
    color: #09141a;
    font-size: 16px;
    font-weight: 500;
    border-left: 0;
    border-color: #09141a;
    border-radius: 0 5px 5px 0;
    height: 56px;
    font-family: sans-serif;
    background-color: #f5f7f9;
}

.login_input_Form .form-control[type='text']::-webkit-input-placeholder {
    color: #09141a;
}

.login-submit-btn .submit-btn {
    height: 56px;
    font-family: sans-serif;
    font-size: 16px;
    font-weight: 600;
    position: relative;
    background: linear-gradient(to right, #29c9ff, #cb5dff);
    color: #ffffff;
    text-transform: uppercase;
    border: none;
    width: 100%;
    border-radius: 5px;
    transition: all 0.4s ease-in-out 0s;
}

.login-submit-btn .submit-btn:hover {
    background: #09141a;
    color: #fff;
}
/*====================================================
    OTP Verification Page
====================================================*/

.otp_container {
    width: 100%;
    min-height: 100vh;
    background: #f5f7f9;
    position: relative;
}

.otp_container .otp_form_div {
    width: 430px;
    max-width: 95%;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgb(34 25 25 / 40%);
}

.otp_form_div .cmpy_logo {
    text-align: center;
    margin-bottom: 30px;
}

.otp_form_div .cmpy_logo img {
    max-width: 100%;
}

.otp_heading {
    text-align: center;
    margin-bottom: 30px;
}

.otp_heading h2 {
    color: #09141a;
    font-size: 28px;
    margin-bottom: 10px;
    font-weight: 700;
}

.otp_heading p {
    color: #666;
    font-size: 15px;
    line-height: 24px;
}

.otp_message {
    background: #eaf8f5;
    color: #0a6b5b;
    border: 1px solid #0bcfb4;
    border-radius: 5px;
    padding: 12px;
    margin-bottom: 25px;
    font-size: 14px;
    text-align: center;
}

.otp_input_Form .form-group {
    margin-bottom: 30px;
}

.otp_input_Form .input-group {
    display: flex;
    width: 100%;
    align-items: stretch;
}

.otp_input_Form .input-group-append {
    width: 60px;
    flex: 0 0 60px;
    background: #09141a;
    border-radius: 5px 0 0 5px;
}

.otp_input_Form .input-group-text {
    width: 100%;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #09141a;
    border: none;
    border-radius: 5px 0 0 5px;
}

/* .otp_input_Form .input-group-text i{
    color: #fff;
    font-size: 22px;
} */

.otp_input_Form .input-group-text .fa {
    color: #fff;
    font-size: 24px;
}

.otp_input_Form .form-control {
    flex: 1;
    width: 100%;
    height: 56px;
    border: 1px solid #09141a;
    border-left: 0;
    border-radius: 0 5px 5px 0;
    background: #f5f7f9;
    color: #09141a;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 8px;
    text-align: center;
    outline: none;
    padding: 0 15px;
}

.otp_input_Form .form-control::placeholder {
    color: #777;
    letter-spacing: normal;
    font-size: 16px;
    font-weight: 400;
}

.otp-submit-btn .submit-btn {
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 5px;
    background: linear-gradient(to right, #29c9ff, #cb5dff);
    color: #09141a;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
    transition: all .3s ease;
}

.otp-submit-btn .submit-btn:hover {
    background: #09141a;
    color: #fff;
}

/*=====================================
    Back to Login
=====================================*/

.back-login{
    margin-top:20px;
    text-align:center;
}

.back-login a{
    display:inline-block;
    color:#09141a;
    font-size:15px;
    font-weight:600;
    text-decoration:none;
    transition:all .3s ease;
}

.back-login a i{
    margin-right:6px;
}

.back-login a:hover{
    color:#0bcfb4;
}

/* breadcrumb css */

.page_breadcrumb {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0;
}

.page_breadcrumb .page_title {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 600;
}

.page_breadcrumb .breadcrumb {
    margin-bottom: 0;
}

.page_breadcrumb .breadcrumb .breadcrumb-item {
    font-size: 13px;
    color: #51678f;
}

.page_breadcrumb .breadcrumb .breadcrumb-item a {
    color: #012970;
}


/* user profile page css start */


/* profile section1 */

.profile_section1 {
    position: relative;
    background-color: #fff;
    padding: 20px;
    border-radius: 15px;
}

.profile_section1 .user_img {
    width: 130px;
    height: 130px;
    border-radius: 5px;
    overflow: hidden;
    margin: 0 auto;
    margin-bottom: 15px;
}

.profile_section1 .user_img embed {
    max-width: 100%;
    border-radius: 5px;
}

.profile_section1 .user_content h5 {
    font-size: 18px;
    color: #2F3838;
    text-align: center;
    margin-bottom: 30px;
}

.profile_section1 .user_content p {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #2F3838;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #ccc;
}

.profile_section1 .user_content p:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}


/* profile section2 css */

.profile_section2 {
    position: relative;
    background-color: #fff;
    padding: 20px;
    border-radius: 10px;
}

.profile_section2 .section_heading {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
}

.profile_section2 .form-group .form-label {
    color: #000000;
    font-weight: 500;
}

.profile_section2 .form-group input,
.profile_section2 .form-group .form-select {
    border-radius: 0.5rem;
    padding: 0.675rem 1.25rem;
    color: #000000;
    font-size: 14px;
    font-weight: 500;
}

.profile_section2 input.form-control[type='text']::-webkit-input-placeholder {
    color: #000000;
}

.profile_section2 input.form-control[type='email']::-webkit-input-placeholder {
    color: #000000;
}

.profile_section2 .form-group .change_btn {
    position: absolute;
    right: 1px;
    background-color: #f5f7f9;
    top: 37px;
    border-radius: 0 0.5rem 0.5rem 0;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    width: 50px;
    cursor: pointer;
}

.profile_section2 .form-group .change_btn .fa {
    font-size: 20px;
    margin-top: 2px;
}

.profile_section2 .profile_save_btn {
    border: none;
    background: linear-gradient(to right, #29c9ff, #cb5dff);
    border-radius: 0.5rem;
    color: #000;
    width: 100%;
    padding: 8px 16px;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    margin-top: 20px;
}


/* change password modal */

.change-password-form .form-group .form-label {
    letter-spacing: 0.2px;
    font-size: 14px;
    font-weight: 600;
    color: #000000;
}

.change-password-form .form-group .form-control {
    font-size: 14px;
    border-radius: 0.5rem !important;
    padding: 0.675rem 1.25rem;
}

.change-password-form .form-group .paasword-icon {
    position: absolute;
    right: 13px;
    top: 5px;
    width: 18px;
    cursor: pointer;
    z-index: 999;
}

.change-password-form .form-group .paasword-icon .fa {
    font-size: 16px;
}

.change-password-form .modal-footer {
    border-top: 0;
    justify-content: space-between;
    flex-wrap: nowrap;
    padding: 0;
}

.change-password-form .modal-footer .btn {
    width: 49%;
    margin: 0;
    font-size: 14px;
    padding: 12px 16px;
    text-transform: uppercase;
    font-weight: 500;
    border: none;
}


/* user profile page css end */


/* upload blogs page css start */

.profile_section2 .form-group textarea {
    border-radius: 0.5rem;
    padding: 0.675rem 1.25rem;
    color: #000000;
    font-size: 14px;
    font-weight: 500;
}

.profile_section2 .form-group .title_textarea {
    min-height: 80px;
}

.profile_section2 .form-group textarea::-webkit-input-placeholder {
    color: #000000;
}


/* upload blogs page css end */


/* blogs list page css start */

.admin_data_table {
    padding: 15px;
    background-color: #fff;
    border-radius: 10px;
    margin-bottom: 20px;
}

.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate .paginate_button {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

table.dataTable thead th,
table.dataTable tbody td {
    border-right: 1px solid #dee2e6;
    white-space: nowrap;
}

table.dataTable tbody td {
    font-weight: 600;
}

table.dataTable tbody td h1,
table.dataTable tbody td h2,
table.dataTable tbody td h3,
table.dataTable tbody td h4,
table.dataTable tbody td h5,
table.dataTable tbody td h6 {
    font-size: 0.8125rem;
    font-weight: 600;
}

table.dataTable thead th {
    border-bottom: none;
}

table.dataTable thead th:last-child,
table.dataTable tbody td:last-child {
    border-right: none;
}

.admin_data_table .data_dlt_btn,
.admin_data_table .data_edit_btn,
.admin_data_table .data_view_btn {
    color: #fff;
    padding: 4px 8px;
    font-weight: 600;
    border-radius: 5px;
}

.admin_data_table .data_dlt_btn {
    background-color: #fa1d05;
}

.admin_data_table .data_edit_btn {
    margin-right: 10px;
    background-color: #0dba2f;
}

.admin_data_table .data_view_btn {
    margin-right: 10px;
    background-color: darksalmon;
}
.admin_data_table .data_dlt_btn .fa,
.admin_data_table .data_edit_btn .fa {
    margin-right: 2px;
}


/*==================================
        View Blog Page
===================================*/

.blog-view-card{
    background:#fff;
    padding:35px;
    border-radius:15px;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
    margin-bottom:30px;
}

.blog-category{
    display:inline-block;
    background:#0bcfb4;
    color:#09141a;
    font-size:13px;
    font-weight:600;
    padding:6px 15px;
    border-radius:50px;
    margin-bottom:20px;
    text-transform:uppercase;
}

.blog-title{
    font-size:36px;
    font-weight:700;
    color:#09141a;
    margin-bottom:15px;
    line-height:1.4;
}

.blog-meta{
    display:flex;
    flex-wrap:wrap;
    gap:25px;
    color:#666;
    margin-bottom:30px;
    font-size:15px;
}

.blog-meta span{
    display:flex;
    align-items:center;
}

.blog-meta i{
    margin-right:8px;
    color:#0bcfb4;
}

.blog-image{
    margin-bottom:35px;
    overflow:hidden;
    border-radius:12px;
}

.blog-image img{
    width:100%;
    border-radius:12px;
    display:block;
}

.blog-content{
    font-size:17px;
    line-height:1.9;
    color:#444;
}

.blog-intro{
    font-size:18px;
    line-height:2;
    color:#444;
    margin-bottom:35px;
}

.blog-content h2{
    margin-top:40px;
    margin-bottom:18px;
    color:#09141a;
    font-size:28px;
    font-weight:700;
    border-left:5px solid #0bcfb4;
    padding-left:15px;
}

.blog-content p{
    margin-bottom:25px;
    text-align:justify;
}

.blog-content ul{
    margin-bottom:25px;
    padding-left:20px;
}

.blog-content li{
    margin-bottom:10px;
}

@media(max-width:768px){

.blog-view-card{
    padding:20px;
}

.blog-title{
    font-size:28px;
}

.blog-content{
    font-size:16px;
}

.blog-content h2{
    font-size:22px;
}

.blog-meta{
    gap:15px;
    font-size:14px;
}

}
/* Blog Action */

.blog-action{
    display:flex;
    justify-content:flex-end;
    margin-bottom:20px;
}

.blog-action .btn{
    background:#0d6efd;
    border:none;
    padding:10px 22px;
    font-weight:600;
    border-radius:8px;
    transition:.3s;
}

.blog-action .btn:hover{
    background:#0b5ed7;
}

.blog-action .fa{
    margin-right:6px;
}
/* View Blog - Edit Button */

.blog-edit-btn{
    background:#ff9800 !important;   /* Orange */
    border-color:#ff9800 !important;
    color:#fff !important;
    padding:6px 14px;
    font-size:13px;
    font-weight:600;
    border-radius:6px;
    transition:all .3s ease;
    display:inline-flex;
    align-items:center;
    gap:6px;
}

.blog-edit-btn:hover{
    background:#e68900 !important;
    border-color:#e68900 !important;
    color:#fff !important;
    text-decoration:none;
}

.blog-edit-btn i{
    font-size:13px;
}

/*==========================
    Section Heading
===========================*/

.section-title{
    display:flex;
    align-items:center;
    gap:10px;
    margin:45px 0 20px;
    font-size:22px;
    font-weight:700;
    color:#09141a;
    border-bottom:2px solid #e9ecef;
    padding-bottom:12px;
}

.section-title i{
    width:42px;
    height:42px;
    border-radius:50%;
    background:#0bcfb4;
    color:#09141a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
}


/*==========================
    Highlight Box
===========================*/

.highlight-box{
    background:linear-gradient(135deg,#0bcfb4,#08a58f);
    color:#fff;
    border-radius:15px;
    padding:30px;
    margin:40px 0;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
}

.highlight-heading{
    font-size:24px;
    font-weight:700;
    margin-bottom:20px;
    display:flex;
    align-items:center;
}

.highlight-heading i{
    font-size:28px;
    margin-right:12px;
}

.highlight-content{
    font-size:17px;
    line-height:1.9;
}

.highlight-content ul{
    margin-top:15px;
    padding-left:20px;
}

.highlight-content li{
    margin-bottom:10px;
}


/*==========================
    Meta Cards
===========================*/

.blog-meta{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
}

.blog-meta span{
    background:#f8f9fa;
    padding:10px 18px;
    border-radius:30px;
    font-weight:600;
    color:#444;
}

.blog-meta i{
    color:#0bcfb4;
}

/*==============================
      View Enquiry
==============================*/

.enquiry-card{
    background:#fff;
    padding:35px;
    border-radius:15px;
    box-shadow:0 3px 15px rgba(0,0,0,.08);
    margin-bottom:30px;
}

.enquiry-header{
    display:flex;
    align-items:center;
    gap:20px;
    border-bottom:1px solid #ececec;
    padding-bottom:20px;
}

.user-icon{
    width:80px;
    height:80px;
    background:#0bcfb4;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:40px;
}

.enquiry-header h2{
    margin:0;
    font-size:28px;
    font-weight:700;
}

.badge-service{
    background:#0bcfb4;
    color:#fff;
    padding:8px 18px;
    border-radius:30px;
    font-size:14px;
    display:inline-block;
    margin-top:10px;
}

.info-box{
    background:#f8f9fa;
    border-left:5px solid #0bcfb4;
    padding:18px;
    border-radius:10px;
    margin-bottom:20px;
}

.info-box label{
    display:block;
    color:#888;
    font-size:13px;
    margin-bottom:8px;
    text-transform:uppercase;
    font-weight:600;
}

.info-box div{
    font-size:17px;
    color:#222;
    font-weight:600;
}

.message-box{
    margin-top:15px;
    background:#f8fffe;
    border:2px dashed #0bcfb4;
    border-radius:12px;
    padding:25px;
}

.message-box h5{
    margin-bottom:18px;
    color:#0bcfb4;
    font-weight:700;
}

.message-box p{
    margin:0;
    line-height:1.9;
    text-align:justify;
}

@media(max-width:768px){

.enquiry-header{
    flex-direction:column;
    text-align:center;
}

.user-icon{
    margin-bottom:15px;
}

.enquiry-card{
    padding:20px;
}

}


.dashboard-thumb{

width:60px;

height:60px;

border-radius:8px;

object-fit:cover;

border:1px solid #ddd;

}

.dashboard-category{

background:#29c9ff;

color:#fff;

padding:6px 12px;

border-radius:20px;

font-size:12px;

font-weight:600;

}

.dashboard-card .btn-warning{

color:#fff;

background:#ff9800;

border:none;

}

.dashboard-card .btn-warning:hover{

background:#e68900;

color:#fff;

}

.dashboard-card .btn-info{

background:#0bcfb4;

border:none;

color:#fff;

}

.dashboard-card .btn-info:hover{

background:#089e8c;

color:#fff;

}
/*==============================
    Quick Action Cards
==============================*/

.quick-action-card{

display:block;

background:#fff;

border-radius:15px;

padding:25px 20px;

text-align:center;

box-shadow:0 4px 15px rgba(0,0,0,.08);

transition:all .35s ease;

height:100%;

color:#333;

border:1px solid #f1f1f1;

}

.quick-action-card:hover{

transform:translateY(-6px);

box-shadow:0 10px 30px rgba(0,0,0,.15);

color:#09141a;

}

.quick-icon{

width:70px;

height:70px;

margin:0 auto 18px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:30px;

}

.quick-action-card h5{

font-size:18px;

font-weight:700;

margin-bottom:10px;

color:#09141a;

}

.quick-action-card p{

font-size:14px;

color:#777;

line-height:24px;

margin:0;

}

.quick-action-card:hover .quick-icon{

transform:rotate(360deg);

transition:transform .7s ease;

}

/* ===============
NEW CSS 
=============== */

.sidebar-body-section .nav-link.active{

background:#1e292f;

color:#fff;

}

.sidebar-body-section .nav-sub-menu-link.active{

color:#0bcfb4;

font-weight:700;

}

.dashboard-welcome{

background:#fff;
padding:30px;
border-radius:12px;
margin-bottom:30px;
box-shadow:0 3px 12px rgba(0,0,0,.08);

}

.dashboard-welcome h2{

font-size:30px;
font-weight:700;
margin-bottom:12px;

}

.dashboard-welcome p{

color:#666;
line-height:28px;

}

.dashboard-card{

display:flex;
align-items:center;
padding:25px;
background:#fff;
border-radius:12px;
box-shadow:0 3px 12px rgba(0,0,0,.08);
transition:.3s;

}

.dashboard-card:hover{

transform:translateY(-6px);

}

.card-icon{

width:70px;
height:70px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
color:#fff;
margin-right:20px;

}

.blogs .card-icon{

background:#007bff;

}

.case-study .card-icon{

background:#00b894;

}

.enquiry .card-icon{

background:#6f42c1;

}

.contact .card-icon{

background:#fd7e14;

}

.today .card-icon{

background:#20c997;

}

.admin .card-icon{

background:#dc3545;

}

.card-content h6{

font-size:15px;
font-weight:600;
color:#777;

}

.card-content h2{

font-size:34px;
font-weight:700;
margin-top:8px;

}

.login-status{

padding:4px 10px;

border-radius:30px;

font-size:12px;

font-weight:600;

}

.login-success{

background:#d1f7e5;

color:#0d7d43;

}

.login-failed{

background:#fde2e2;

color:#c62828;

}

.dashboard-card{

    background:#fff;

    border-radius:15px;

    padding:25px;

    margin-bottom:25px;

    box-shadow:0 4px 18px rgba(0,0,0,.08);

}

.dashboard-card-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.dashboard-card-header h4{

    font-size:20px;

    font-weight:700;

    color:#09141a;

}

.dashboard-card-body{

    position:relative;

    min-height:350px;

}

.badge-service{

background:#0bcfb4;

color:#fff;

padding:6px 12px;

border-radius:20px;

font-size:12px;

font-weight:600;

}

.badge-contact{

background:#0d6efd;

color:#fff;

padding:6px 12px;

border-radius:20px;

font-size:12px;

font-weight:600;

}

.dashboard-card .table th{

font-weight:700;

font-size:13px;

text-transform:uppercase;

background:#f8f9fa;

}

.dashboard-card .table td{

vertical-align:middle;

font-weight:500;

}

.dashboard-card .btn-info{

background:#0bcfb4;

border:none;

color:#fff;

}

.dashboard-card .btn-info:hover{

background:#08b09b;

color:#fff;

}