/*==============================================================
    COURSES PAGE
    Sarbabharatiya Sangeet O Sanskriti Parishad
==============================================================*/

:root{

    --primary:#7B1E1E;
    --secondary:#D6A443;
    --dark:#202020;
    --text:#666666;
    --white:#ffffff;
    --light:#FCFAF7;
    --border:#ECECEC;

    --shadow:0 18px 45px rgba(0,0,0,.08);

}


/*==============================================================
RESET
==============================================================*/

.coursesArea *,
.courseHero *{

    box-sizing:border-box;

}

.coursesArea{

    padding:90px 0;

    background:#FAF8F5;

    position:relative;

    overflow:hidden;
    

}

.coursesArea::before{

    content:"";

    position:absolute;

    left:-200px;

    top:-200px;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(214,164,67,.05);

}

.coursesArea::after{

    content:"";

    position:absolute;

    right:-150px;

    bottom:-150px;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(123,30,30,.05);

}



/*==============================================================
HERO
==============================================================*/

.courseHero{

    position:relative;

    overflow:hidden;

    min-height:470px;

    display:flex;

    align-items:center;

}

.heroBg{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

}

.heroOverlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

    90deg,

    rgba(0,0,0,.78),

    rgba(0,0,0,.45),

    rgba(0,0,0,.18)

    );

}

.heroLogo{

    position:absolute;

    right:70px;

    bottom:20px;

    width:280px;

    opacity:.08;

    z-index:2;

}

.heroContent{

    position:relative;

    z-index:5;

    max-width:760px;

    color:#fff;

}

.heroTag{

    display:inline-block;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.18);

    backdrop-filter:blur(10px);

    padding:10px 24px;

    border-radius:40px;

    color:#FFD76A;

    font-size:14px;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

}

.heroContent h1{

    font-size:66px;

    line-height:1.15;

    margin:22px 0;

    font-weight:800;

}

.heroContent h1 span{

    color:#D6A443;

}

.heroContent p{

    font-size:20px;

    line-height:36px;

    color:#F2F2F2;

    margin-top:25px;

    max-width:700px;

}

.breadcrumb{

    margin-bottom:25px;

    color:#ddd;

    font-size:15px;

}

.breadcrumb a{

    color:#fff;

    text-decoration:none;

}

.breadcrumb span{

    margin:0 8px;

}



/*==============================================================
HERO DECORATION
==============================================================*/

.courseHero::before{

    content:"";

    position:absolute;

    width:230px;

    height:230px;

    border-radius:50%;

    background:rgba(214,164,67,.08);

    left:-80px;

    top:-80px;

}

.courseHero::after{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

    right:-120px;

    bottom:-120px;

}



/*==============================================================
SECTION SPACING
==============================================================*/

.row.g-4{

    position:relative;

    z-index:5;

}
/*==============================================================
    COURSE CARD
==============================================================*/

.courseCard{

    position:relative;

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    box-shadow:0 18px 45px rgba(0,0,0,.08);

    transition:.45s;

    border:1px solid #ECECEC;

    display:flex;

    flex-direction:column;

    height:100%;

}

.courseCard:hover{

    transform:translateY(-12px);

    box-shadow:0 30px 70px rgba(0,0,0,.16);

}



/*==============================================================
CARD HEADER
==============================================================*/

.courseTop{

    position:relative;

    height:165px;

    overflow:visible;

    background:#7B1E1E;

}



/*==============================================================
HEADER IMAGE
==============================================================*/

.courseBg{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

    transform:scale(1.08);

    filter:blur(2px);

    transition:.6s;

}

.courseCard:hover .courseBg{

    transform:scale(1.18);

}



/*==============================================================
HEADER OVERLAY
==============================================================*/

.courseTopOverlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        rgba(123,30,30,.75),

        rgba(214,164,67,.35)

    );

}



/*==============================================================
TOP DECORATION
==============================================================*/

.courseTop::before{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    top:-80px;

    right:-60px;

}

.courseTop::after{

    content:"";

    position:absolute;

    width:90px;

    height:90px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    bottom:-30px;

    left:-20px;

}



/*==============================================================
ICON
==============================================================*/

.courseIcon{

    position:absolute;

    left:50%;

    bottom:-42px;

    transform:translateX(-50%);

    width:84px;

    height:84px;

    border-radius:50%;

    background:#fff;

    border:5px solid #D6A443;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:100;

    transition:.55s;

    box-shadow:0 12px 35px rgba(0,0,0,.18);

}

.courseCard:hover .courseIcon{

    transform:translateX(-50%) rotate(360deg);

}

.courseIcon i{

    color:#7B1E1E;

    font-size:34px;

}



/*==============================================================
BODY
==============================================================*/

.courseBody{

    position:relative;

    padding:65px 28px 25px;

    flex:1;

}

.courseBody h3{

    text-align:center;

    font-size:28px;

    color:#222;

    margin-bottom:18px;

    font-weight:700;

    transition:.35s;

}

.courseCard:hover .courseBody h3{

    color:#7B1E1E;

}



/*==============================================================
TITLE DIVIDER
==============================================================*/

.titleDivider{

    width:70px;

    height:3px;

    background:#D6A443;

    margin:18px auto 28px;

    border-radius:20px;

    position:relative;

}

.titleDivider::before{

    content:"";

    position:absolute;

    width:12px;

    height:12px;

    background:#D6A443;

    border-radius:50%;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

}
/*==============================================================
    SUBJECT LIST
==============================================================*/

.subjectList{

    list-style:none;

    padding:0;

    margin:0;

}

.subjectList li{

    display:flex;

    align-items:flex-start;

    gap:12px;

    padding:11px 0;

    color:#555;

    font-size:15px;

    line-height:26px;

    border-bottom:1px dashed #ECECEC;

    transition:.30s;

}

.subjectList li:last-child{

    border-bottom:none;

}

.subjectList li i{

    color:#D6A443;

    font-size:8px;

    margin-top:9px;

    flex-shrink:0;

}

.subjectList li:hover{

    padding-left:8px;

    color:#7B1E1E;

}



/*==============================================================
    HIDDEN SUBJECTS
==============================================================*/

.extraSubject{

    display:none;

}



/*==============================================================
    VIEW MORE BUTTON
==============================================================*/

.viewMoreBtn{

    width:100%;

    margin-top:18px;

    border:none;

    background:#FFF7E8;

    color:#7B1E1E;

    font-weight:700;

    padding:12px 18px;

    border-radius:10px;

    cursor:pointer;

    transition:.35s;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

}

.viewMoreBtn:hover{

    background:#7B1E1E;

    color:#fff;

}

.viewMoreBtn i{

    transition:.35s;

}

.viewMoreBtn.open i{

    transform:rotate(180deg);

}



/*==============================================================
    FOOTER
==============================================================*/

.courseBottom{

    background:linear-gradient(

        90deg,

        #7B1E1E,

        #5A1313

    );

    color:#fff;

    padding:16px 20px;

    text-align:center;

    font-weight:600;

    margin-top:auto;

}

.courseBottom span{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

}

.courseBottom i{

    color:#D6A443;

}



/*==============================================================
    HOVER EFFECTS
==============================================================*/

.courseCard::before{

    content:"";

    position:absolute;

    inset:0;

    border:2px solid transparent;

    border-radius:22px;

    transition:.35s;

    pointer-events:none;

}

.courseCard:hover::before{

    border-color:#D6A443;

}

.courseCard:hover .courseTop{

    filter:brightness(1.05);

}

.courseCard:hover .titleDivider{

    width:95px;

    transition:.35s;

}

.courseCard:hover .courseIcon{

    box-shadow:

    0 18px 45px rgba(123,30,30,.30);

}



/*==============================================================
    IMAGE ZOOM
==============================================================*/

.courseCard:hover .courseBg{

    transform:scale(1.15);

}



/*==============================================================
    RESPONSIVE
==============================================================*/

@media(max-width:1200px){

.courseBody h3{

font-size:25px;

}

}

@media(max-width:992px){

.courseBody{

padding:62px 24px 24px;

}

.courseTop{

height:150px;

}

}

@media(max-width:768px){

.courseBody{

padding:58px 20px 20px;

}

.courseBody h3{

font-size:22px;

}

.subjectList li{

font-size:14px;

}

}

@media(max-width:576px){

.courseTop{

height:135px;

}

.courseIcon{

width:72px;

height:72px;

bottom:-36px;

}

.courseIcon i{

font-size:28px;

}

.courseBody{

padding-top:58px;

}

.courseBottom{

padding:14px;

font-size:14px;

}

}