/* ==========================================
   CTA
========================================== */

.cta-section{

    position:relative;

    overflow:hidden;

    padding:120px 0 180px;

    background:
    linear-gradient(
    270deg,
    #FFE9B5 0%,
    #F8F3E5 45%,
    #EAF5FF 100%
    );

}

/* Soft luxury overlay */

.cta-section::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    radial-gradient(
        circle at top right,
        rgba(255,255,255,.18),
        transparent 45%
    ),
    radial-gradient(
        circle at bottom left,
        rgba(81,50,41,.06),
        transparent 40%
    );

    pointer-events:none;

}

.cta-wrapper{

    position:relative;

    z-index:2;

    max-width:1000px;

    margin:0 auto;

}

.cta-section .section-tag{

    background:var(--primary);

    color:var(--cream);

}

.cta-section h2{

    color:var(--primary);

    font-size:56px;

    font-weight:800;

    margin:25px 0;

}

.cta-section .section-description{

    color:var(--text-secondary);

    max-width:700px;

    margin:0 auto;

    line-height:1.8;

}

.cta-section .book-btn{

    min-width:220px;

}

.cta-section .btn-primary-custom{

    min-width:220px;

    background:var(--primary);

    color:var(--white);

    transition:all .35s ease;

}

.cta-section .btn-primary-custom:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 40px rgba(0,0,0,.18);

}
/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width:1200px){

    .cta-section h2{

        font-size:48px;

    }

}

@media (max-width:992px){

    .cta-section{

        padding:90px 0 120px;

        text-align:center;

    }

    .cta-section h2{

        font-size:42px;

    }

}

@media (max-width:768px){

    .cta-section{

        padding:80px 0 100px;

    }

    .cta-section h2{

        font-size:36px;

    }

    .cta-section .section-description{

        font-size:16px;

    }

    .cta-section .btn-primary-custom{

        min-width:200px;

    }

}

@media (max-width:576px){

    .cta-section{

        padding:70px 0 80px;

    }

    .cta-section h2{

        font-size:30px;

    }

    .cta-section .section-description{

        font-size:15px;

    }

    .cta-section .btn-primary-custom{

        width:100%;

        min-width:unset;

    }

}