
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Inter', sans-serif;
    background:#F8FAFC;
    color:#0F172A;
    line-height:1.6;
}

.bp1_container{
    width:90%;
    max-width:1200px;
    margin:auto;
}

.bp2_container{
    width:90%;
    max-width:1200px;
    margin:auto;
}


section{
    padding:100px 0;
}

/* HERO */

.hero{
    min-height:100vh;
    background:
    linear-gradient(rgba(15,23,42,0.75), rgba(15,23,42,0.75)),
    url('https://images.unsplash.com/photo-1581578731548-c64695cc6952?q=80&w=2070') center/cover;
    display:flex;
    align-items:center;
    color:white;
}

.hero-grid{
    display:grid;
    grid-template-columns:1fr 420px;
    gap:60px;
    align-items:center;

    font-size:20px !important;
    color:#E2E8F0 !important;

}

.hero h1{
    font-size:64px;
    line-height:1.1;
    margin-bottom:25px;
    font-weight:800;
}

.hero p{
    font-size:20px !important;
    color:#E2E8F0 !important;
    margin-bottom:35px !important;
    max-width:650px !important;
}

.bp1_badges{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:40px;
}

.bp1_badge{
    background:rgba(255,255,255,0.12);
    border:1px solid rgba(255,255,255,0.15);
    padding:12px 18px;
    border-radius:100px;
    backdrop-filter:blur(10px);
    font-size:14px;
}

.bp2_badges{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:40px;
}

.bp2_badge{
    background:rgba(255,255,255,0.12);
    border:1px solid rgba(255,255,255,0.15);
    padding:12px 18px;
    border-radius:100px;
    backdrop-filter:blur(10px);
    font-size:14px;
}

.hero-buttons{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
}

.bp1_btn{
    padding:16px 28px;
    border-radius:14px;
    text-decoration:none;
    font-weight:600;
    transition:0.3s ease;
    display:inline-block;
}

.bp1_btn-primary{
    background:#10B981;
    color:white;
}

.bp1_btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 15px 30px rgba(16,185,129,0.25);
}

.bp1_btn-secondary{
    background:white;
    color:#0F172A;
}

.bp2_btn{
    padding:16px 28px;
    border-radius:14px;
    text-decoration:none;
    font-weight:600;
    transition:0.3s ease;
    display:inline-block;
}

.bp2_btn-primary{
    background:#2563EB;
    color:white;
}

.bp2_btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 15px 30px rgba(16,185,129,0.25);
}

.bp2_btn-secondary{
    background:white;
    color:#2563EB;
}


/* BOOKING CARD */

.booking-card{
    background:rgba(255,255,255,0.12);
    border:1px solid rgba(255,255,255,0.18);
    backdrop-filter:blur(18px);
    border-radius:30px;
    padding:35px;
}

.booking-card h3{
    font-size:30px;
    margin-bottom:25px;
}

.bp1_form-group{
    margin-bottom:20px;
}

.bp1_form-group label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
}

.bp1_form-control{
    width:100%;
    padding:16px;
    border:none;
    border-radius:14px;
    font-size:15px;
    color:black;
}

.bp2_form-group{
    margin-bottom:20px;
}

.bp2_form-group label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
}

.bp2_form-control{
    width:100%;
    padding:16px;
    border:none;
    border-radius:14px;
    font-size:15px;
    color:black;
}


.price{
    margin:25px 0;
    font-size:18px;
}

.price strong{
    display:block;
    font-size:36px;
    margin-top:5px;
}

/* TRUST BAR */

.bp1_trust-bar{
    background:white;
    padding:30px 0;
    border-bottom:1px solid #E2E8F0;
}

.bp1_trust-grid{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
    align-items:center;
}

.bp1_trust-item{
    font-weight:600;
    color:#475569;
}

.bp2_trust-bar{
    background:white;
    padding:30px 0;
    border-bottom:1px solid #E2E8F0;
}

.bp2_trust-grid{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
    align-items:center;
}

.bp2_trust-item{
    font-weight:600;
    color:#475569;
}


/* SECTION TITLES */

.bp1_section-title{
    text-align:center;
    margin-bottom:70px;
}

.bp1_section-title h2{
    font-size:48px;
    margin-bottom:15px;
}

.bp1_section-title p{
    color:#64748B;
    font-size:18px;
}

.bp2_section-title{
    text-align:center;
    margin-bottom:70px;
}

.bp2_section-title h2{
    font-size:48px;
    margin-bottom:15px;
}

.bp2_section-title p{
    color:#64748B;
    font-size:18px;
}


/* CARDS */

.card-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.card{
    background:white;
    padding:40px;
    border-radius:28px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
    transition:0.3s ease;
}

.card:hover{
    transform:translateY(-8px);
}

.card h3{
    margin-bottom:15px;
    font-size:24px;
}

.card p{
    color:#64748B;
}

/* BEFORE AFTER */

.before-after{
    background:#0F172A;
    color:white;
}

.before-after img{
    width:100%;
    border-radius:28px;
    margin-top:40px;
}

/* SERVICES */

.bp1_services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.bp1_service-card{
    background:white;
    border-radius:28px;
    padding:40px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
}

.bp1_service-card h3{
    font-size:28px;
    margin-bottom:15px;
}

.bp1_service-price{
    font-size:36px;
    color:#10B981;
    font-weight:700;
    margin:20px 0;
}

.bp1_service-card ul{
    list-style:none;
    margin-bottom:30px;
}

.bp1_service-card li{
    margin-bottom:12px;
    color:#475569;
}

.bp2_services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.bp2_service-card{
    background:white;
    border-radius:28px;
    padding:40px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
}

.bp2_service-card h3{
    font-size:28px;
    margin-bottom:15px;
}

.bp2_service-price{
    font-size:36px;
    color:#2563EB;
    font-weight:700;
    margin:20px 0;
}

.bp2_service-card ul{
    list-style:none;
    margin-bottom:30px;
}

.bp2_service-card li{
    margin-bottom:12px;
    color:#475569;
}


/* HOW IT WORKS */

.bp1_steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.bp1_step{
    text-align:center;
}

.bp1_step-number{
    width:70px;
    height:70px;
    background:#10B981;
    color:white;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto auto 25px;
    font-size:28px;
    font-weight:700;
}

.bp2_steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.bp2_step{
    text-align:center;
}

.bp2_step-number{
    width:70px;
    height:70px;
    background:#2563EB;
    color:white;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto auto 25px;
    font-size:28px;
    font-weight:700;
}



/* TESTIMONIALS */

.testimonials{
    background:#0F172A;
    color:white;
}

.testimonial-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.testimonial{
    background:rgba(255,255,255,0.06);
    padding:35px;
    border-radius:24px;
}

.testimonial p{
    margin:20px 0;
    color:#CBD5E1;
}

/* OWNER */

.owner{
    display:grid;
    grid-template-columns:350px 1fr;
    gap:60px;
    align-items:center;
}

.owner img{
    width:100%;
    border-radius:28px;
}

/* FAQ */

.faq-item{
    background:white;
    padding:30px;
    border-radius:20px;
    margin-bottom:20px;
    box-shadow:0 10px 30px rgba(15,23,42,0.04);
}

.faq-item h4{
    margin-bottom:10px;
    font-size:20px;
}

/* CTA */

.cta{
    background:#0F172A;
    color:white;
    text-align:center;
    border-radius:40px;
    margin:80px auto;
    width:90%;
    max-width:1300px;
}

.cta h2{
    font-size:56px;
    margin-bottom:20px;
}

.cta p{
    font-size:20px;
    color:#CBD5E1;
    margin-bottom:40px;
}

.hero h1{
    font-size:46px;
}

.bp1_section-title h2{
    font-size:38px;
}

.bp2_section-title h2{
    font-size:38px;
}


.cta h2{
    font-size:40px;
}

}

/* SHOWCASE */

.bp1_showcase{
    background:#0F172A;
    color:white;
}

.bp1_showcase-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
    margin-top:50px;
}

.bp1_showcase-grid img{
    width:100%;
    height:380px;
    object-fit:cover;
    border-radius:24px;
}

.bp2_showcase{
    background:#2563EB;
    color:white;
}

.bp2_showcase-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
    margin-top:50px;
}

.bp2_showcase-grid img{
    width:100%;
    height:380px;
    object-fit:cover;
    border-radius:24px;
}

/* MAIN CONTENT */

.content-grid{
    display:grid;
    grid-template-columns:1fr 390px;
    gap:45px;
    align-items:start;
}

/* CONTENT CARDS */

.content-card{
    background:white;
    padding:45px;
    border-radius:32px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
    margin-bottom:35px;
    color:#475569 !important;
    margin-bottom:20px !important;
    font-size:17px !important;

}

.content-card h3{
    font-size:36px;
    margin-bottom:20px;
}

.content-card p{
    color:#475569 !important;
    margin-bottom:20px !important;
    font-size:17px !important;
}

.feature-list{
    list-style:none;
    margin-top:30px;
}

.feature-list li{
    margin-bottom:14px;
    color:#334155;
    font-weight:500;
}

/* IMAGE GRID */

.image-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
    margin-top:35px;
}

.image-grid img{
    width:100%;
    height:280px;
    object-fit:cover;
    border-radius:24px;
}

/* SIDEBAR */

.bp1_sidebar-card{
    background:white;
    border-radius:32px;
    padding:35px;
    margin-bottom:30px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
}

.bp1_sidebar-card h4{
    font-size:24px;
    margin-bottom:20px;
}

.bp2_sidebar-card{
    background:white;
    border-radius:32px;
    padding:35px;
    margin-bottom:30px;
    box-shadow:0 10px 40px rgba(15,23,42,0.05);
}

.bp2_sidebar-card h4{
    font-size:24px;
    margin-bottom:20px;
}


/* LOGO */

.bp1_logo-wrap{
    text-align:center;
    margin-bottom:30px;
}

.bp1_logo-wrap img{
    width:130px;
    height:130px;
    object-fit:cover;
    border-radius:30px;
    background:white;
    padding:10px;
    box-shadow:0 10px 30px rgba(15,23,42,0.12);
    margin-bottom:20px;
}

.bp2_logo-wrap{
    text-align:center;
    margin-bottom:30px;
}

.bp2_logo-wrap img{
    width:130px;
    height:130px;
    object-fit:cover;
    border-radius:30px;
    background:white;
    padding:10px;
    box-shadow:0 10px 30px rgba(15,23,42,0.12);
    margin-bottom:20px;
}


.bp_breadcrumb{
    color:#CBD5E1;
    margin-bottom:25px;
    font-size:14px;
}


/* =====================================================
   FAQ BUSINESS PAGE BUILDER
===================================================== */

.faq_builder_intro {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:1px solid #E6E9ED;
}

.faq_builder_intro strong {
    display:block;
    font-size:16px;
    color:#34495E;
}

.faq_builder_intro p {
    margin:5px 0 0;
    color:#73879C;
}


.faq_builder_counter {
    min-width:70px;
    text-align:center;
    padding:10px 15px;
    background:#F5F7FA;
    border-radius:6px;
}

.faq_builder_counter strong {
    display:inline;
    color:#1ABB9C;
    font-size:20px;
}

.faq_builder_counter span {
    color:#73879C;
}


/* FAQ ITEM */

.faq_builder_item {
    display:flex;
    gap:15px;
    padding:18px;
    margin-bottom:12px;
    background:#F9FAFC;
    border:1px solid #E6E9ED;
    border-radius:6px;
}


.faq_builder_number {
    width:34px;
    height:34px;
    min-width:34px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#1ABB9C;
    color:white;

    border-radius:50%;

    font-weight:bold;
}


.faq_builder_content {
    flex:1;
}


.faq_builder_question {
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}


.faq_builder_question strong {
    color:#34495E;
    font-size:15px;
}


.faq_builder_source {
    background:#E8F8F5;
    color:#1ABB9C;
    padding:4px 8px;
    border-radius:4px;
    font-size:11px;
}


.faq_builder_source.custom {
    background:#EEF3F8;
    color:#73879C;
}


.faq_builder_answer {
    margin-top:9px;
    color:#73879C;
    line-height:1.6;
}


.faq_builder_actions {
    margin-top:12px;
    display:flex;
    gap:5px;
    flex-wrap:wrap;
}


.faq_builder_add {
    display:flex;
    align-items:center;
    gap:15px;
    margin-top:20px;
    padding-top:20px;
    border-top:1px solid #E6E9ED;
}


.faq_builder_add span {
    color:#73879C;
    font-size:13px;
}


/* SUGGESTED FAQ */

.faq_suggestion {
    padding:15px;
    margin-bottom:15px;

    border:1px solid #E6E9ED;
    border-radius:6px;

    background:#FFF;

    cursor:pointer;

    transition:all .2s ease;
}


.faq_suggestion:hover {
    border-color:#1ABB9C;
    background:#F8FFFD;
}


.faq_suggestion.selected {
    border-color:#1ABB9C;
    background:#E8F8F5;
}


.faq_suggestion strong {
    display:block;
    color:#34495E;
}


.faq_suggestion small {
    display:block;
    margin-top:6px;
    color:#73879C;
}



/* =====================================================
   FAQ EDIT MODAL
===================================================== */

.faq_edit_intro {

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:25px;

    padding:15px;

    background:#F8FAFC;

    border:1px solid #E6E9ED;

    border-radius:6px;

}


.faq_edit_icon {

    width:42px;

    height:42px;

    min-width:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#E8F8F5;

    color:#1ABB9C;

    font-size:18px;

}


.faq_edit_intro strong {

    display:block;

    color:#34495E;

    font-size:15px;

}


.faq_edit_intro span {

    display:block;

    margin-top:4px;

    color:#73879C;

    font-size:12px;

}


.bs-editfaq-modal-md label {

    color:#34495E;

    font-weight:600;

}


.bs-editfaq-modal-md .form-control {

    border-radius:4px;

}


.bs-editfaq-modal-md .form-control:focus {

    border-color:#1ABB9C;

    box-shadow:
        0 0 0 2px rgba(26,187,156,.10);

}


.faq_edit_help {

    display:flex;

    justify-content:space-between;

    gap:15px;

    margin-top:7px;

    color:#73879C;

    font-size:11px;

}


.faq_edit_help i {

    color:#1ABB9C;

}


#updateFaq:disabled {

    opacity:.6;

    cursor:not-allowed;

}



/* MOBILE */


@media(max-width:992px){
.hero-grid,
.card-grid,
.services-grid,
.steps,
.testimonial-grid,
.owner,
.bp2_services-grid,
.bp1_services-grid,
.content-grid{
    grid-template-columns:1fr;
}
    .faq_builder_intro {
        align-items:flex-start;
    }

    .faq_builder_item {
        padding:14px;
    }

    .faq_builder_actions {
        margin-top:15px;
    }

}



