.about-section{

    position:relative;

    overflow:hidden;

    padding:120px 0;

    background:
    linear-gradient(
        180deg,
        #ffffff,
        #faf7f0
    );
}

.about-section::before{

    content:"";

    position:absolute;

    top:-120px;
    right:-120px;

    width:300px;
    height:300px;

    border-radius:50%;

    background:
    rgba(216,178,103,.08);

    filter:blur(80px);
}

.about-section::after{

    content:"";

    position:absolute;

    bottom:-120px;
    left:-120px;

    width:250px;
    height:250px;

    border-radius:50%;

    background:
    rgba(66,19,106,.05);

    filter:blur(80px);
}

.about-section .section-title{
    color:#111;
}

.about-section .section-description{
    color:#555;
}

/* ===========================
   PROMISE CARDS
=========================== */

.promise-box{

    position:relative;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        #42136A,
        #2B0B47
    );

    padding:30px;

    border-radius:24px;

    height:100%;

    transition:.5s;

    border:
    1px solid rgba(255,255,255,.08);

    box-shadow:
    0 15px 40px rgba(66,19,106,.15);
}

.promise-box::before{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:4px;

    background:
    linear-gradient(
        90deg,
        var(--primary-gold),
        #f5d48e
    );
}

.promise-box::after{

    content:"";

    position:absolute;

    top:-80px;
    right:-80px;

    width:160px;
    height:160px;

    border-radius:50%;

    background:
    rgba(216,178,103,.08);

    transition:.5s;
}

.promise-box:hover{

    transform:
    translateY(-10px);

    box-shadow:
    0 0 25px rgba(216,178,103,.35),
    0 20px 50px rgba(66,19,106,.25);

    border-color:
    rgba(216,178,103,.4);
}

.promise-box:hover::after{

    transform:
    scale(1.2);
}

.promise-box h5{

    color:#fff;

    font-size:20px;

    font-weight:700;

    margin-bottom:12px;
}

.promise-box p{

    color:
    rgba(255,255,255,.75);

    line-height:1.8;

    margin:0;
}

/* ===========================
   IMAGES
=========================== */

.about-gallery{

    position:relative;

    min-height:700px;
}

.about-gallery img{

    width:100%;

    border-radius:30px;

    border:
    3px solid rgba(216,178,103,.15);

    box-shadow:
    0 20px 60px rgba(0,0,0,.12);

    transition:.6s;
}

.about-gallery img:hover{

    transform:
    scale(1.04);

    box-shadow:
    0 0 30px rgba(216,178,103,.25);
}

.image-main{

    width:70%;

    position:absolute;

    left:0;
    top:100px;

    z-index:2;
}

.image-top{

    width:48%;

    position:absolute;

    right:0;
    top:0;
}

.image-bottom{

    width:42%;

    position:absolute;

    right:30px;
    bottom:50px;
}

/* ===========================
   EXPERIENCE CARD
=========================== */

.experience-card{

    position:absolute;

    left:20px;
    bottom:0;

    z-index:5;

    background:
    linear-gradient(
        135deg,
        var(--primary-gold),
        #f5d48e
    );

    color:#111;

    padding:28px;

    border-radius:24px;

    max-width:260px;

    box-shadow:
    0 15px 40px rgba(216,178,103,.35);
}

.experience-card h3{

    font-size:2.3rem;

    font-weight:800;

    margin-bottom:5px;
}

/* ===========================
   MOBILE
=========================== */

@media(max-width:991px){

    .about-section{

        padding:80px 0;
    }

    .about-gallery{

        display:none;
    }

    .about-section .col-lg-6{

        width:100%;
    }

    .promise-box{

        padding:24px;
    }
}

@media(max-width:768px){

    .about-section{

        padding:60px 0;
    }

    .promise-box{

        padding:22px;
    }

    .promise-box h5{

        font-size:18px;
    }

    .promise-box p{

        font-size:14px;
    }
}