@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-Black.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN ExtraBlack';
    src: url('../fonts/IRANYekanFN-ExtraBlack.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-ExtraBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-Bold.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-Light.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-ExtraBold.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-Medium.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN-Thin.woff2') format('woff2'),
        url('../fonts/IRANYekanFN-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRANYekanFN';
    src: url('../fonts/IRANYekanFN.woff2') format('woff2'),
        url('../fonts/IRANYekanFN.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 10;
	src: url('../fonts/woff2/DanaFaNum-Hairline.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Hairline.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 100;
	src: url('../fonts/woff2/DanaFaNum-Thin.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Thin.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 200;
	src: url('../fonts/woff2/DanaFaNum-UltraLight.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-UltraLight.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 300;
	src: url('../fonts/woff2/DanaFaNum-Light.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Light.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/woff2/DanaFaNum-Medium.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Medium.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 600;
	src: url('../fonts/woff2/DanaFaNum-DemiBold.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-DemiBold.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 800;
	src: url('../fonts/woff2/DanaFaNum-ExtraBold.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-ExtraBold.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/woff2/DanaFaNum-Black.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Black.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: bold;
	src: url('../fonts/woff2/DanaFaNum-Bold.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Bold.woff') format('woff');  
}
@font-face {
	font-family: dana;
	font-style: normal;
	font-weight: normal;
	src: url('../fonts/woff2/DanaFaNum-Regular.woff2') format('woff2'),  
		 url('../fonts/woff/DanaFaNum-Regular.woff') format('woff');  
}
body {
    font-family: 'dana';
}
.hero {
    background: url(../img/bg_hero.png) no-repeat;
    background-size: cover;
}
.hero .container:before {
    content: '';
    position: absolute;
    left: 90px;
    bottom: 80px;
    background: url(../img/hero.png) no-repeat;
    width: 438px;
    height: 545px;
}

.hero .container {
    position: relative;
    padding-top: 30px;
    padding-bottom: 250px;
}
.r_head {
    display: flex;
    align-items: center;
    gap: 80px;
    flex-wrap: wrap;
}

.r_head .menu_head ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 20px;
}

.r_head .menu_head ul li a {
    text-decoration: none;
    color: rgba(160, 160, 160, 1);
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s;
}

.r_head .menu_head ul li a.active,.r_head .menu_head ul li a:hover {
    color: #fff;
}

.phone_head {
    display: flex;
    align-items: center;
    gap: 16px;
    direction: ltr;
}

.phone_head .icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 14px;
}

.phone_head p {
    font-size: 14px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 3px;
    margin: 0;
}

.phone_head span {
    color: #fff;
    font-size: 14px;
    font-weight: 400;
}

.bx_hero {
    margin-top: 80px;
}

.bx_hero h1 {
    font-size: 45px;
    font-weight: 800;
    color: #fff;
}

.bx_hero p {
    color: rgba(194, 206, 255, 1);
    font-size: 20px;
    font-weight: 500;
    line-height: 70px;
    margin-bottom: 7px;
}

.btn_white {
    background: rgba(255, 255, 255, 1);
    border-radius: 12px;
    color: rgba(130, 83, 237, 1);
    font-size: 18px;
    font-weight: 700;
    padding: 13px 45px;
}

.btn_white:hover {
    background: rgba(255, 255, 255, 1);
}

.btn_primary {
    background: rgba(255, 183, 0, 1);
    border-radius: 12px;
    color: rgba(255, 255, 255, 1);
    font-size: 18px;
    font-weight: 700;
    padding: 13px 45px;
}

.bx_hero .btn_hero {
    display: flex;
    gap: 11px;
    flex-wrap: wrap;
}

.btn_primary:hover {
    background: rgb(227 163 2);
}
.bx_fth {
    box-shadow: 0px 4px 70px 0px rgba(0, 0, 0, 0.07);
    border-radius: 36px;
    background: rgba(255, 255, 255, 1);
    padding: 25px;
}

.bx_fth h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 65px;
    margin: 0;
}

.bx_fth p {
    color: rgba(138, 138, 138, 1);
    font-size: 15px;
    font-weight: 600;
    line-height: 22px;
    margin: 0;
}

.list_fth {
    margin: -140px 0 100px 0;
}

.bx_banner_boy {
    position: relative;
    background: url(../img/bg_banner.png) no-repeat;
    background-size: cover;
    border-radius: 40px;
    padding: 20px 54px 43px 20px;
}

.bx_banner_boy p {
    font-size: 25px;
    font-weight: 600;
    color: #fff;
    margin: 0 0 5px 0;
}

.bx_banner_boy h2 {
    background: linear-gradient(90deg, #05EAFF 0%, #9AF7FF 61.06%, #FFDE6A 95.19%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    font-size: 45px;
    font-weight: 800;
    line-height: 55px;
}

.bx_banner_boy .btn {
    background: rgba(255, 255, 255, 0.11);
    color: #fff;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 600;
    padding: 15px 50px;
    margin-top: 15px;
}

.banner_boy {
    margin-bottom: 70px;
}

.bx_banner_boy:before {
    content: '';
    position: absolute;
    left: 50px;
    bottom: -20px;
    width: 546px;
    height: 350px;
    background: url(../img/boy_banner.png) no-repeat;
}
.bx_srv {
    border: 1px solid rgba(218, 218, 218, 1);
    border-radius: 22px;
    text-align: center;
    padding: 20px 0;
    transition: all 0.3s;
}

.bx_srv p {
    color: rgba(146, 146, 146, 1);
    margin: 0;
    font-size: 15px;
    font-weight: 500;
}

.bx_srv>div {
    margin-bottom: 23px;
    display: flex;
    justify-content: center;
    gap: 10px;
    align-items: center;
}

.bx_srv>div span {
    color: rgba(0, 0, 0, 1);
    font-size: 35px;
    font-weight: 750;
    direction: ltr;
}

.list_srv {
    margin-bottom: 60px;
}

.bx_srv:hover {
    background: rgba(130, 83, 237, 0.09);
    border-color: rgba(130, 83, 237, 0.45);
}

.bx_srv:hover span {
    color:rgba(130, 83, 237, 1);
}

.bx_srv:hover svg path {
    stroke:rgba(130, 83, 237, 1)
}

.h_list_plan {
    text-align: center;
    margin-bottom: 50px;
}

.h_list_plan h2 {
    color: rgba(0, 0, 0, 1);
    font-size: 35px;
    font-weight: 700;
}

.h_list_plan h2 span {
    color: rgba(100, 33, 254, 1);
}

.h_list_plan p {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.5);
    margin: 0;
}

.bx_plan {
    border-radius: 32px;
    background: rgba(255, 255, 255, 1);
    box-shadow: 0px 4px 77px 0px rgba(0, 0, 0, 0.07);
    padding: 30px 25px;
    transition: all 0.3s;
    border: 3px solid transparent;
}

.plan_dtl .h_p_dtl {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 36px;
    margin-bottom: 20px;
}

.plan_dtl .h_p_dtl h3 {
    font-size: 25px;
    font-weight: 700;
}

.plan_dtl .h_p_dtl .price {
    margin: 0;
    color: rgba(130, 83, 237, 1);
    font-size: 25px;
    font-weight: 800;
}

.plan_dtl .h_p_dtl .price span {
    color: rgba(170, 170, 170, 1);
    font-size: 12px;
    font-weight: 700;
}

.plan_dtl  .plan_desc {
    color: rgba(151, 151, 151, 1);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 40px;
}

.plan_dtl .list_fth_plan {
    list-style: none;
    padding: 0;
    margin-bottom: 40px;
}

.plan_dtl .list_fth_plan li {
    display: flex;
    align-items: center;
    gap: 23px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.plan_dtl .list_fth_plan li p {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.plan_dtl .btn {
    border-radius: 18px;
    font-size: 22px;
    font-weight: 700;
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: space-between;
}

.plan_dtl .btn_secondary {
    background: rgba(100, 33, 254, 0.1);
    color: rgba(100, 33, 254, 1);
    padding: 13px 45px;
}
.row_plan>div:nth-child(1) .plan_dtl .h_p_dtl .price {
    color: rgba(255, 183, 0, 1);
}
.plan_dtl .h_p_dtl>div:last-child>div {
    display: flex;
    align-items: center;
    gap: 10px;
}
.plan_dtl .h_p_dtl>div:last-child>div>span {
    background: rgba(69, 109, 255, 1);
    border-radius: 12px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    padding: 2px 10px;
}

.row_plan>div:nth-child(2) .bx_plan .offer {
    background: rgba(100, 33, 254, 1);
}

.bx_plan .offer {
    display: inline-flex;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    padding: 2px 26px;
    border-radius: 18px;
    background: rgba(49, 49, 49, 1);
    color: #fff;
    line-height: 44px;
    align-items: center;
}

.row_plan>div:nth-child(1) .bx_plan .offer {
    background: rgba(255, 183, 0, 1);
}

.bx_plan .bx_offer {
    text-align: center;
    margin-top: -55px;
}
.bx_plan:hover,.bx_plan.active {
    border-color: rgba(100, 33, 254, 1);
    box-shadow: 0px 4px 100px 0px rgba(0, 0, 0, 0.22);
}
.list_plan {
    margin-bottom: 60px;
}

.list_comment {
    margin-bottom: 110px;
}

.list_comment .tit_l_comm h2 {
    font-size: 25px;
    font-weight: 700;
}

.list_comment .tit_l_comm p {
    color: rgba(0, 0, 0, 0.5);
    font-size: 15px;
    font-weight: 500;
    margin: 0;
}

.list_comment .tit_l_comm {
    margin-bottom: 30px;
}

.bx_comment_slide {
    background: rgba(255, 255, 255, 1);
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.05);
    border-radius: 22px;
    padding: 25px 35px;
}

.bx_comment_slide .h_comm_slide {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

.bx_comment_slide .h_comm_slide .icon {
    width: 57px;
    height: 57px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(100, 33, 254, 0.1);
    border-radius: 15px;
}

.bx_comment_slide .h_comm_slide div>p:first-child {
    color: rgba(63, 63, 63, 1);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 3px;
}

.bx_comment_slide .h_comm_slide div>p:last-child {
    color: rgba(100, 33, 254, 1);
    font-size: 12px;
    font-weight: 600;
    margin: 0;
}

.bx_comment_slide .h_comm_slide div>p:last-child span {
    color: rgba(161, 161, 161, 1);
}

.bx_comment_slide>p {
    color: rgba(63, 63, 63, 0.5);
    font-size: 11px;
    font-weight: 500;
    margin-bottom: 30px;
}

.bx_comment_slide .f_comm_slide {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.bx_comment_slide .f_comm_slide .stars {
    direction: ltr;
}

.bx_comment_slide .f_comm_slide .like_dis_comm {
    display: flex;
    align-items: center;
    gap: 15px;
    direction: ltr;
    font-size: 15px;
    color: rgba(63, 63, 63, 0.5);
    font-weight: 500;
}

.bx_comment_slide .f_comm_slide .like_dis_comm>div {
    display: flex;
    align-items: center;
    gap: 15px;
}

.btn_slide>div {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(207, 207, 207, 0.3);
    border-radius: 15px;
    cursor: pointer;
    transition: all 0.3s;
}

.btn_slide {
    display: flex;
    gap: 10px;
}

.btn_slide>div:hover {
    background: rgba(100, 33, 254, 1);
}

.btn_slide>div:hover svg path {stroke: #fff;}
.bx_serv_papa h2 {
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 22px;
}

.bx_serv_papa h2 span {
    color: rgba(100, 33, 254, 1);
}

.bx_serv_papa>p {
    color: rgba(160, 160, 160, 1);
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 23px;
    width: 90%;
}

.bx_serv_papa ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bx_serv_papa ul li {
    color: rgba(88, 88, 88, 1);
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 13px;
}

.bx_serv_papa ul li p {
    margin: 0;
}

.list_serv_fth {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px 20px;
}

.list_serv_fth .bx_serv_fth {
    background: rgba(255, 255, 255, 1);
    border-radius: 25px;
    box-shadow: 0px 4px 120px 0px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 24px 15px;
    transition: all 0.3s;
}

.list_serv_fth .bx_serv_fth p {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
    text-align: center;
}

.list_serv_fth .bx_serv_fth:hover {background: rgba(100, 33, 254, 1);color: #fff;}

.serv_papachi {
    margin-bottom: 100px;
}
.h_video_papa {
    text-align: center;
}

.h_video_papa h2 {
    font-size: 40px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.h_video_papa h2 span {
    color: rgba(100, 33, 254, 1);
}
.bx_video_p {
    margin-top: 120px;
    margin-bottom: -300px;
}
.video_papachi {
    position: relative;
    background: url(../img/bg_video.png) no-repeat;
    background-size: 100% 100%;
    min-height: 390px;
    margin-bottom: 400px;
}

.video_papachi:before {
    content: '';
    width: 74px;
    height: 85px;
    background: url(../img/noise_video_1.svg) no-repeat;
    right: 100px;
    top: 20px;
    position: absolute;
}

.video_papachi:after {
    content: '';
    width: 74px;
    height: 85px;
    background: url(../img/noise_video_2.svg) no-repeat;
    left: 100px;
    bottom: -120px;
    position: absolute;
}

.bx_call_f {
    box-shadow: 0px 4px 100px 0px rgba(0, 0, 0, 0.07);
    background: rgba(255, 255, 255, 1);
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 34px;
    gap: 45px;
    margin-bottom: 50px;
    margin-top: -60px;
}

.bx_call_f .tit_b_c_f {
    display: flex;
    align-items: center;
    gap: 24px;
}

.bx_call_f .tit_b_c_f h3 {
    color: rgba(72, 72, 72, 1);
    font-size: 25px;
    font-weight: 700;
}

.bx_call_f .tit_b_c_f p {
    color: rgba(151, 151, 151, 1);
    font-size: 14px;
    font-weight: 500;
}

.bx_call_f .frm_call_f {
    flex: 1;
}

.bx_call_f .frm_call_f {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.bx_call_f .frm_call_f .input {
    flex: 1;
    position: relative;
}

.bx_call_f .frm_call_f .input input {
    box-shadow: 0px 4px 100px 0px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(155, 155, 155, 0.3);
    background: transparent;
    font-size: 12px;
    padding: 22px 50px 22px 22px;
    border-radius: 15px;
}

.bx_call_f .frm_call_f .input:nth-child(1):before {
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 4.5H11.25C11.25 5.74264 10.2426 6.75 9 6.75V7.5V8.25C11.0711 8.25 12.75 6.57107 12.75 4.5H12ZM9 7.5V6.75C7.75736 6.75 6.75 5.74264 6.75 4.5H6H5.25C5.25 6.57107 6.92893 8.25 9 8.25V7.5ZM6 4.5H6.75C6.75 3.25736 7.75736 2.25 9 2.25V1.5V0.75C6.92893 0.75 5.25 2.42893 5.25 4.5H6ZM9 1.5V2.25C10.2426 2.25 11.25 3.25736 11.25 4.5H12H12.75C12.75 2.42893 11.0711 0.75 9 0.75V1.5ZM6.75 9.75V10.5H11.25V9.75V9H6.75V9.75ZM11.25 15.75V15H6.75V15.75V16.5H11.25V15.75ZM6.75 15.75V15C5.50736 15 4.5 13.9926 4.5 12.75H3.75H3C3 14.8211 4.67893 16.5 6.75 16.5V15.75ZM14.25 12.75H13.5C13.5 13.9926 12.4926 15 11.25 15V15.75V16.5C13.3211 16.5 15 14.8211 15 12.75H14.25ZM11.25 9.75V10.5C12.4926 10.5 13.5 11.5074 13.5 12.75H14.25H15C15 10.6789 13.3211 9 11.25 9V9.75ZM6.75 9.75V9C4.67893 9 3 10.6789 3 12.75H3.75H4.5C4.5 11.5074 5.50736 10.5 6.75 10.5V9.75Z' fill='%23333333'/%3E%3C/svg%3E%0A");
}
.bx_call_f .frm_call_f .input:nth-child(2):before {
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.4775 13.7475C16.4775 14.0175 16.4175 14.295 16.29 14.565C16.1625 14.835 15.9975 15.09 15.78 15.33C15.4125 15.735 15.0075 16.0275 14.55 16.215C14.1 16.4025 13.6125 16.5 13.0875 16.5C12.3225 16.5 11.505 16.32 10.6425 15.9525C9.78 15.585 8.9175 15.09 8.0625 14.4675C7.2 13.8375 6.3825 13.14 5.6025 12.3675C4.83 11.5875 4.1325 10.77 3.51 9.915C2.895 9.06 2.4 8.205 2.04 7.3575C1.68 6.5025 1.5 5.685 1.5 4.905C1.5 4.395 1.59 3.9075 1.77 3.4575C1.95 3 2.235 2.58 2.6325 2.205C3.1125 1.7325 3.6375 1.5 4.1925 1.5C4.4025 1.5 4.6125 1.545 4.8 1.635C4.995 1.725 5.1675 1.86 5.3025 2.055L7.0425 4.5075C7.1775 4.695 7.275 4.8675 7.3425 5.0325C7.41 5.19 7.4475 5.3475 7.4475 5.49C7.4475 5.67 7.395 5.85 7.29 6.0225C7.1925 6.195 7.05 6.375 6.87 6.555L6.3 7.1475C6.2175 7.23 6.18 7.3275 6.18 7.4475C6.18 7.5075 6.1875 7.56 6.2025 7.62C6.225 7.68 6.2475 7.725 6.2625 7.77C6.3975 8.0175 6.63 8.34 6.96 8.73C7.2975 9.12 7.6575 9.5175 8.0475 9.915C8.4525 10.3125 8.8425 10.68 9.24 11.0175C9.63 11.3475 9.9525 11.5725 10.2075 11.7075C10.245 11.7225 10.29 11.745 10.3425 11.7675C10.4025 11.79 10.4625 11.7975 10.53 11.7975C10.6575 11.7975 10.755 11.7525 10.8375 11.67L11.4075 11.1075C11.595 10.92 11.775 10.7775 11.9475 10.6875C12.12 10.5825 12.2925 10.53 12.48 10.53C12.6225 10.53 12.7725 10.56 12.9375 10.6275C13.1025 10.695 13.275 10.7925 13.4625 10.92L15.945 12.6825C16.14 12.8175 16.275 12.975 16.3575 13.1625C16.4325 13.35 16.4775 13.5375 16.4775 13.7475Z' stroke='%233C3C3C' stroke-width='1.5' stroke-miterlimit='10'/%3E%3Cpath opacity='0.4' d='M13.875 6.75C13.875 6.3 13.5225 5.61 12.9975 5.0475C12.5175 4.53 11.88 4.125 11.25 4.125' stroke='%233C3C3C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath opacity='0.4' d='M16.5 6.75C16.5 3.8475 14.1525 1.5 11.25 1.5' stroke='%233C3C3C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.bx_call_f .frm_call_f .input:before {
    content: '';
    position: absolute;
    right: 18px;
    width: 18px;
    height: 18px;
    top: calc(50% - 9px);
}

.bx_call_f .frm_call_f .btn_call {
    background: linear-gradient(260.65deg, #6421FE 14.49%, #8253ED 77.21%, #B696FF 92.52%, #FCFF96 103.2%);
    border: none;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 40px;
    border-radius: 15px;
    box-shadow: 0px 4px 30px 0px rgba(130, 83, 237, 0.79);
}

.f_social h3 {
    font-size: 18px;
    font-weight: 700;
    line-height: 70px;
    margin: 0;
}

.f_social ul {
    list-style: none;
    padding: 0 0 22px 0;
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
    border-bottom: 1px dashed rgba(178, 178, 178, 0.5);
}

.f_social .btn_f_social {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-top: 30px;
}

.btn_secondary {
    background: rgba(130, 83, 237, 0.15);
    color: rgba(130, 83, 237, 1);
    font-size: 18px;
    font-weight: 700;
    padding: 13px 45px;
    border-radius: 12px;
}

.col_f h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 15px;
}

.col_f ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.col_f ul li a {
    color: rgba(128, 128, 128, 1);
    text-decoration: none;
    font-size: 15px;
    font-weight: 400;
    line-height: 38px;
    transition: all 0.3s;
}

.col_f ul li a:hover {
    color: rgba(39, 39, 39, 1);
}

.f_site {
    background: rgba(247, 247, 247, 1);
    border-top: 3px solid rgba(100, 33, 254, 1);
}

.f_site .container:before {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 18px;
    background: linear-gradient(260.65deg, #6421FE 14.49%, #8253ED 77.21%, #B696FF 92.52%, #FCFF96 103.2%);
    border-radius: 22px 22px 0 0;
}

.f_site .container {
    position: relative;
    padding-bottom: 70px;
}
.swiper_comment {
    padding: 10px;
}
.btn_menu_mob {
    border: none;
    background: #fff;
    border-radius: 12px;
    width: 55px;
    height: 55px;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.list_menu_mob {
    list-style: none;
    padding: 0;
    margin: 0;
}

.list_menu_mob li a {
    text-decoration: none;
    padding: 0;
    display: block;
    margin-bottom: 10px;
    color: #111;
}
@media (max-width: 1400px) {
    .f_social ul {
        gap: 20px;
    }
    .f_social .btn_f_social .btn {
        padding: 13px 20px;
    }
}
@media (max-width: 1200px) {
    .hero .container:before {
        left: 0;
    }
    .bx_fth h3 {
        font-size: 16px;
    }
    .bx_fth {
        padding: 25px 10px;
    }
    .bx_banner_boy:before {
        left: 0;
        bottom: 0;
        width: 450px;
        height: 272px;
        background-size: 100%;
    }
    .bx_plan {
        padding: 30px 10px;
    }
    .plan_dtl .h_p_dtl .icon {
        width: 50px;
        height: 50px;
    }
    .plan_dtl .h_p_dtl {
        gap: 10px;
    }
    .plan_dtl .btn_secondary {
        padding: 13px 25px;
    }
    .bx_comment_slide {
        padding: 25px 15px;
    }
    .list_serv_fth .bx_serv_fth p {
        font-size: 13px;
    }
    .h_video_papa h2 {
        font-size: 25px;
    }
    .f_social ul {
        gap: 10px;
    }
}
@media (max-width: 992px) {
    .bx_hero h1 {
        font-size: 32px;
    }
    .bx_hero p {
        font-size: 18px;
        line-height: 30px;
    }
    .bx_hero .btn_hero .btn {
        padding: 13px 23px;
        font-size: 16px;
    }
    .hero .container:before {
        left: 0;
        bottom: 80px;
        width: 290px;
        height: 440px;
        background-size: 100%;
    }
    .bx_fth {
        margin-bottom: 20px;
    }
    .bx_fth h3 {
        font-size: 18px;
    }
    .bx_banner_boy:before {
        display: none;
    }
    .bx_srv {
        margin-bottom: 20px;
    }
    .bx_plan {
        margin-bottom: 50px;
    }
    .bx_serv_papa {
        margin-bottom: 40px;
    }
    .list_serv_fth .bx_serv_fth p {
        font-size: 16px;
    }
    .bx_call_f {
        flex-direction: column;
    }
    .video_papachi {
        margin-bottom: 200px;
    }
    .video_papachi:after {
        left: 55px;
    }
}
@media (max-width: 768px) {
    .hero .container:before {
        display: none;
    }
    .bx_hero p {
        margin-bottom: 20px;
    }
    .bx_banner_boy p {
        font-size: 20px;
    }
    .video_papachi {
        background: url(../img/bg_video_mob.png) no-repeat;
        padding-top: 40px;
    }
    .video_papachi:before,.video_papachi:after {
        opacity: 0;
    }
    .h_video_papa h2,.h_video_papa h2 span {
        color: #fff;
    }
    .bx_video_p {
        margin: 20px 0 0 0;
    }
    .col_f {
        margin: 20px 0;
    }
    .bx_call_f .frm_call_f {
        flex-direction: column;
        width: 100%;
    }
    .r_head {
        gap: 10px;
    }
}
@media (max-width: 576px) {
    .list_serv_fth {
        grid-template-columns: repeat(2, 1fr);
    }
    .list_comment {
        margin-bottom: 50px;
    }
    .f_site .container:before {
        right: 10%;
        width: 80%;
    }
    .hero .container {
        padding-bottom: 200px;
    }
    .logo_head {
        max-width: 110px;
    }
    .phone_head {
        gap: 8px;
    }
    .phone_head span {
        font-size: 12px;
    }
    .phone_head p {
        font-size: 14px;
        letter-spacing: 0px;
        margin: 0;
    }
    .bx_banner_boy h2 {
        font-size: 38px;
    }
    .bx_banner_boy {
        padding: 20px;
    }
}

/* Contact Page Styles */
.hero_contact {
    min-height: auto;
    position: relative;
    overflow: hidden;
}

.hero_contact .container {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
}

.hero_contact .container::before {
    display: none;
}

.hero_contact::before {
    content: '';
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(100, 33, 254, 0.3) 0%, rgba(130, 83, 237, 0.2) 100%);
    top: -100px;
    right: -100px;
    filter: blur(60px);
    animation: float 8s ease-in-out infinite;
}

.hero_contact::after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(182, 150, 255, 0.2) 0%, rgba(252, 255, 150, 0.1) 100%);
    bottom: -150px;
    left: -150px;
    filter: blur(80px);
    animation: float 10s ease-in-out infinite reverse;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-20px);
    }
}

.bx_hero_contact {
    padding-top: 3rem;
    padding-bottom: 3rem;
    position: relative;
    z-index: 1;
}

.bx_hero_contact h1 {
    font-size: 2.5rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 0.5rem;
}

.bx_hero_contact p {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 0;
}

/* Contact Info Section */
.contact_info {
    padding: 80px 0;
    background: #ffffff;
    position: relative;
}

.bx_contact_info {
    background: #ffffff;
    border-radius: 22px;
    padding: 50px 30px;
    text-align: center;
    transition: all 0.3s;
    height: 100%;
    position: relative;
    box-shadow: 0px 4px 77px 0px rgba(0, 0, 0, 0.07);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.bx_contact_info:hover {
    transform: translateY(-8px);
    box-shadow: 0px 8px 90px 0px rgba(100, 33, 254, 0.12);
}

.bx_contact_info:nth-child(1) .icon {
    background: rgba(100, 33, 254, 0.1);
}

.bx_contact_info:nth-child(2) .icon {
    background: rgba(130, 83, 237, 0.1);
}

.bx_contact_info:nth-child(3) .icon {
    background: rgba(182, 150, 255, 0.1);
}

.bx_contact_info .icon {
    width: 80px;
    height: 80px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
}

.bx_contact_info:nth-child(1) .icon svg {
    width: 40px;
    height: 40px;
}

.bx_contact_info:nth-child(2) .icon svg {
    width: 40px;
    height: 40px;
}

.bx_contact_info:nth-child(3) .icon svg {
    width: 40px;
    height: 40px;
}

.bx_contact_info h3 {
    font-size: 20px;
    font-weight: 700;
    color: rgba(0, 0, 0, 1);
    margin-bottom: 15px;
}

.bx_contact_info p {
    font-size: 16px;
    color: rgba(0, 0, 0, 0.5);
    margin-bottom: 8px;
    direction: ltr;
}

/* Contact Form Section */
.contact_form {
    padding: 80px 0;
    background: linear-gradient(180deg, #ffffff 0%, #F8F9FC 100%);
    position: relative;
    overflow: hidden;
}

.contact_form::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(182, 150, 255, 0.08) 0%, transparent 70%);
    top: 50%;
    right: -300px;
    transform: translateY(-50%);
    pointer-events: none;
}

.h_contact_form {
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}

.h_contact_form h2 {
    font-size: 36px;
    font-weight: 800;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 70%, #B696FF 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 15px;
    position: relative;
    display: inline-block;
}

.h_contact_form h2::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background: linear-gradient(90deg, #6421FE 0%, #B696FF 100%);
    border-radius: 2px;
}

.h_contact_form p {
    font-size: 16px;
    color: #666;
}

.frm_contact {
    background: #fff;
    border-radius: 22px;
    padding: 50px;
    box-shadow: 0px 4px 20px rgba(100, 33, 254, 0.08);
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(100, 33, 254, 0.1);
}

.frm_contact::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #6421FE 0%, #8253ED 50%, #B696FF 100%);
}

.input_contact {
    margin-bottom: 0;
    position: relative;
}

.input_contact label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #2D2D2D;
    margin-bottom: 10px;
    transition: color 0.3s ease;
}

.input_contact .form-control,
.input_contact textarea {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid #E5E5E5;
    border-radius: 12px;
    font-size: 14px;
    color: #2D2D2D;
    transition: all 0.3s ease;
    background: #F8F9FC;
    position: relative;
}

.input_contact .form-control:focus,
.input_contact textarea:focus {
    outline: none;
    border: 2px solid transparent;
    background: #fff;
    box-shadow:
        0px 0px 0px 4px rgba(100, 33, 254, 0.1),
        inset 0 0 0 2px transparent;
    background-image:
        linear-gradient(white, white),
        linear-gradient(135deg, #6421FE, #8253ED, #B696FF);
    background-origin: border-box;
    background-clip: padding-box, border-box;
}

.input_contact .form-control:focus + label,
.input_contact textarea:focus + label {
    color: #6421FE;
}

.input_contact textarea {
    resize: vertical;
    min-height: 150px;
}

.btn_submit_contact {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 50%, #B696FF 100%);
    background-size: 200% auto;
    color: #fff;
    padding: 18px 60px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    border: none;
    transition: all 0.4s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    box-shadow: 0px 4px 15px rgba(100, 33, 254, 0.3);
}

.btn_submit_contact::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    transform: translate(-50%, -50%);
    transition: width 0.6s, height 0.6s;
}

.btn_submit_contact:hover {
    transform: translateY(-3px);
    box-shadow: 0px 12px 30px rgba(100, 33, 254, 0.4);
    background-position: right center;
}

.btn_submit_contact:hover::before {
    width: 300px;
    height: 300px;
}

.btn_submit_contact:active {
    transform: translateY(-1px);
}

/* Map Section */
.map_section {
    padding: 0;
    margin-bottom: 80px;
}

.map_container {
    width: 100%;
    height: 450px;
    border-radius: 22px;
    overflow: hidden;
}

.map_container iframe {
    width: 100%;
    height: 100%;
}

/* Responsive for Contact Page */
@media (max-width: 991px) {
    .hero_contact .container {
        padding-top: 1rem;
        padding-bottom: 1.5rem;
    }

    .bx_hero_contact {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .bx_hero_contact h1 {
        font-size: 2rem;
    }

    .contact_info {
        padding: 60px 0;
    }

    .bx_contact_info {
        padding: 30px 20px;
        margin-bottom: 20px;
    }

    .bx_contact_info .icon {
        width: 75px;
        height: 75px;
    }

    .contact_form {
        padding: 60px 0;
    }

    .frm_contact {
        padding: 35px 25px;
    }

    .h_contact_form h2 {
        font-size: 28px;
    }

    .btn_submit_contact {
        padding: 15px 45px;
    }
}

@media (max-width: 767px) {
    .hero_contact .container {
        padding-top: 0.75rem;
        padding-bottom: 1.25rem;
    }

    .bx_hero_contact {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .bx_hero_contact h1 {
        font-size: 1.5rem;
    }

    .bx_hero_contact p {
        font-size: 0.875rem;
    }

    .h_contact_form h2 {
        font-size: 24px;
    }

    .bx_contact_info .icon {
        width: 70px;
        height: 70px;
    }

    .frm_contact {
        padding: 25px 20px;
    }

    .btn_submit_contact {
        padding: 14px 40px;
        font-size: 15px;
    }

    .map_container {
        height: 350px;
    }
}

/* Blog Page Styles */
.hero_blog {
    min-height: auto;
    position: relative;
    overflow: hidden;
}

.hero_blog .container {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
}

.hero_blog .container::before {
    display: none;
}

.hero_blog::before {
    content: '';
    position: absolute;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(100, 33, 254, 0.3) 0%, rgba(130, 83, 237, 0.2) 100%);
    top: -120px;
    right: -100px;
    filter: blur(70px);
    animation: float 8s ease-in-out infinite;
}

.hero_blog::after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(182, 150, 255, 0.2) 0%, rgba(252, 255, 150, 0.1) 100%);
    bottom: -150px;
    left: -150px;
    filter: blur(80px);
    animation: float 10s ease-in-out infinite reverse;
}

.bx_hero_blog {
    padding-top: 1rem;
    position: relative;
    z-index: 1;
}

.bx_hero_blog h1 {
    font-size: 2.5rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 0.5rem;
}

.bx_hero_blog p {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 0;
    line-height: normal;
}

/* Latest Articles Slider */
.latest_articles {
    padding: 80px 0 60px;
    background: #ffffff;
    position: relative;
}

.h_latest_articles {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.h_latest_articles h2 {
    font-size: 32px;
    font-weight: 800;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 70%, #B696FF 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin: 0;
}

.btn_slide_articles {
    display: flex;
    gap: 10px;
}

.swiper_articles {
    padding: 10px 0;
    margin: 0 -10px;
}

.bx_article_slide {
    background: #fff;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 0, 0, 0.05);
    margin: 0 10px;
}

.bx_article_slide:hover {
    transform: translateY(-8px);
    box-shadow: 0px 8px 40px rgba(100, 33, 254, 0.15);
}

.bx_article_slide .img_article {
    position: relative;
    overflow: hidden;
    height: 280px;
}

.bx_article_slide .img_article img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}

.bx_article_slide:hover .img_article img {
    transform: scale(1.1);
}

.bx_article_slide .badge_cat {
    position: absolute;
    top: 15px;
    right: 15px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
}

.bx_article_slide .content_article {
    padding: 28px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.bx_article_slide .meta_article {
    display: flex;
    gap: 20px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.bx_article_slide .meta_article span {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.5);
    font-weight: 500;
}

.bx_article_slide h3 {
    font-size: 18px;
    font-weight: 700;
    color: #2D2D2D;
    margin-bottom: 12px;
    line-height: 28px;
}

.bx_article_slide p {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.6);
    line-height: 24px;
    margin-bottom: 20px;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 48px;
}

.bx_article_slide .btn_read_more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #6421FE;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s;
}

.bx_article_slide .btn_read_more:hover {
    gap: 12px;
}

.bx_article_slide .btn_read_more svg {
    transition: transform 0.3s;
}

.bx_article_slide:hover .btn_read_more svg {
    transform: translateX(-3px);
}

/* Blog Content Section */
.blog_content {
    padding: 60px 0 100px;
    background: linear-gradient(180deg, #ffffff 0%, #F8F9FC 100%);
}

.blog_posts {
    margin-bottom: 40px;
}

.bx_blog_post {
    background: #fff;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.08);
    transition: all 0.3s;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.bx_blog_post:hover {
    transform: translateY(-5px);
    box-shadow: 0px 8px 35px rgba(100, 33, 254, 0.12);
}

.bx_blog_post .img_post {
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 280px;
}

.bx_blog_post .img_post img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}

.bx_blog_post:hover .img_post img {
    transform: scale(1.08);
}

.bx_blog_post .badge_cat {
    position: absolute;
    top: 20px;
    right: 20px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 8px 18px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 700;
}

.bx_blog_post .content_post {
    padding: 30px;
}

.bx_blog_post .meta_post {
    display: flex;
    gap: 20px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.bx_blog_post .meta_post span {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(0, 0, 0, 0.5);
    font-weight: 500;
}

.bx_blog_post .meta_post svg {
    width: 16px;
    height: 16px;
}

.bx_blog_post .content_post h3 {
    margin-bottom: 15px;
}

.bx_blog_post .content_post h3 a {
    font-size: 20px;
    font-weight: 700;
    color: #2D2D2D;
    text-decoration: none;
    transition: all 0.3s;
    display: block;
    line-height: 32px;
}

.bx_blog_post .content_post h3 a:hover {
    color: #6421FE;
}

.bx_blog_post .content_post p {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.6);
    line-height: 26px;
    margin-bottom: 20px;
}

.btn_read_post {
    display: inline-flex;
    align-items: center;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 12px 30px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s;
}

.btn_read_post:hover {
    transform: translateY(-2px);
    box-shadow: 0px 8px 20px rgba(100, 33, 254, 0.3);
}

/* Pagination */
.pagination_blog {
    margin-top: 50px;
}

.pagination {
    display: flex;
    justify-content: center;
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.pagination .page-item .page-link {
    border: 2px solid #E5E5E5;
    background: #fff;
    color: #2D2D2D;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 45px;
}

.pagination .page-item .page-link:hover {
    border-color: #6421FE;
    background: rgba(100, 33, 254, 0.1);
    color: #6421FE;
}

.pagination .page-item.active .page-link {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border-color: transparent;
    color: #fff;
}

.pagination .page-item.disabled .page-link {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Blog Sidebar */
.blog_sidebar {
    position: sticky;
    top: 30px;
}

.widget {
    background: #fff;
    border-radius: 22px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.widget_title {
    font-size: 20px;
    font-weight: 800;
    color: #2D2D2D;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 15px;
}

.widget_title::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60px;
    height: 4px;
    background: linear-gradient(90deg, #6421FE 0%, #B696FF 100%);
    border-radius: 2px;
}

/* Search Widget */
.widget_search .search_input {
    position: relative;
}

.widget_search .search_input input {
    width: 100%;
    padding: 15px 55px 15px 20px;
    border: 2px solid #E5E5E5;
    border-radius: 12px;
    font-size: 14px;
    transition: all 0.3s;
    background: #F8F9FC;
}

.widget_search .search_input input:focus {
    outline: none;
    border-color: #6421FE;
    background: #fff;
}

.widget_search .search_input button {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s;
}

.widget_search .search_input button:hover {
    transform: translateY(-50%) scale(1.05);
}

.widget_search .search_input button svg {
    stroke: #fff;
}

/* Featured Widget */
.list_featured {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.item_featured {
    display: flex;
    gap: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.item_featured:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.item_featured .img_featured {
    width: 80px;
    height: 80px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}

.item_featured .img_featured img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s;
}

.item_featured:hover .img_featured img {
    transform: scale(1.1);
}

.item_featured .content_featured h4 {
    margin: 0 0 8px 0;
}

.item_featured .content_featured h4 a {
    font-size: 14px;
    font-weight: 700;
    color: #2D2D2D;
    text-decoration: none;
    line-height: 22px;
    transition: all 0.3s;
}

.item_featured .content_featured h4 a:hover {
    color: #6421FE;
}

.item_featured .date_featured {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.5);
}

/* Categories Widget */
.widget_categories ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.widget_categories ul li {
    margin-bottom: 12px;
}

.widget_categories ul li:last-child {
    margin-bottom: 0;
}

.widget_categories ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 18px;
    background: #F8F9FC;
    border-radius: 12px;
    color: #2D2D2D;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
}

.widget_categories ul li a:hover {
    background: rgba(100, 33, 254, 0.1);
    color: #6421FE;
}

.widget_categories ul li a span {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 4px 12px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
}

/* Social Widget */
.social_links {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.social_item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px 20px;
    border-radius: 12px;
    text-decoration: none;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    transition: all 0.3s;
}

.social_item:hover {
    transform: translateX(-5px);
}

.social_discord {
    background: linear-gradient(135deg, #5865F2 0%, #7289DA 100%);
}

.social_telegram {
    background: linear-gradient(135deg, #0088cc 0%, #229ED9 100%);
}

.social_instagram {
    background: linear-gradient(135deg, #E1306C 0%, #FD1D1D 50%, #F77737 100%);
}

.social_youtube {
    background: linear-gradient(135deg, #FF0000 0%, #CC0000 100%);
}

/* Archive Widget */
.widget_archive ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.widget_archive ul li {
    margin-bottom: 12px;
}

.widget_archive ul li:last-child {
    margin-bottom: 0;
}

.widget_archive ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 18px;
    background: #F8F9FC;
    border-radius: 12px;
    color: #2D2D2D;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
    gap: 10px;
}

.widget_archive ul li a:hover {
    background: rgba(100, 33, 254, 0.1);
    color: #6421FE;
}

.widget_archive ul li a svg {
    flex-shrink: 0;
    stroke: currentColor;
}

.widget_archive ul li a span {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 4px 12px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
}

/* Tags Widget */
.tags_list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.tags_list a {
    padding: 8px 18px;
    background: #F8F9FC;
    border-radius: 20px;
    color: #2D2D2D;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
    border: 2px solid transparent;
}

.tags_list a:hover {
    background: rgba(100, 33, 254, 0.1);
    color: #6421FE;
    border-color: #6421FE;
}

/* Responsive for Blog Page */
@media (max-width: 991px) {
    .hero_blog .container {
        padding-top: 1rem;
        padding-bottom: 1.5rem;
    }

    .bx_hero_blog {
        padding-top: 0.75rem;
    }

    .bx_hero_blog h1 {
        font-size: 2rem;
    }

    .latest_articles {
        padding: 60px 0 40px;
    }

    .h_latest_articles h2 {
        font-size: 26px;
    }

    .blog_content {
        padding: 40px 0 60px;
    }

    .blog_sidebar {
        margin-top: 40px;
        position: static;
    }

    .bx_blog_post .content_post {
        padding: 25px 20px;
    }

    .bx_blog_post .img_post {
        min-height: 250px;
    }
}

@media (max-width: 767px) {
    .hero_blog .container {
        padding-top: 0.75rem;
        padding-bottom: 1.25rem;
    }

    .bx_hero_blog {
        padding-top: 0.5rem;
    }

    .bx_hero_blog h1 {
        font-size: 1.5rem;
    }

    .bx_hero_blog p {
        font-size: 0.875rem;
    }

    .h_latest_articles {
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
    }

    .h_latest_articles h2 {
        font-size: 22px;
    }

    .bx_article_slide .img_article {
        height: 200px;
    }

    .bx_blog_post .img_post {
        min-height: 220px;
    }

    .widget {
        padding: 25px 20px;
    }

    .pagination .page-item .page-link {
        padding: 8px 14px;
        min-width: 40px;
        font-size: 14px;
    }

    .hero_search_blog {
        margin-top: 25px;
    }

    .search_input_hero {
        flex-direction: column;
        gap: 12px;
    }

    .search_input_hero input {
        padding: 18px 20px;
    }

    .search_input_hero button {
        width: 100%;
        margin: 0;
        position: static;
        transform: none;
        justify-content: center;
    }

    .popular_tags_hero {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }

    .popular_tags_hero span {
        width: 100%;
    }
}

/* Hero Search Blog Styles */
.hero_search_blog {
    margin-top: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.search_form_hero {
    width: 100%;
}

.search_input_hero {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
    background: #fff;
    border-radius: 50px;
    padding: 8px 8px 8px 30px;
    box-shadow: 0 15px 40px rgba(100, 33, 254, 0.15);
    transition: all 0.3s ease;
}

.search_input_hero:hover,
.search_input_hero:focus-within {
    box-shadow: 0 20px 50px rgba(100, 33, 254, 0.25);
    transform: translateY(-2px);
}

.search_input_hero input {
    flex: 1;
    border: none;
    background: transparent;
    padding: 20px 25px;
    font-size: 16px;
    color: #2D2D2D;
    outline: none;
    font-weight: 500;
}

.search_input_hero input::placeholder {
    color: #999;
    font-weight: 400;
}

.search_input_hero button {
    padding: 16px 35px;
    border-radius: 40px;
    white-space: nowrap;
    margin: 0;
    flex-shrink: 0;
    font-weight: 600;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.search_input_hero button svg {
    width: 20px;
    height: 20px;
    stroke: currentColor;
}

.popular_tags_hero {
    margin-top: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.popular_tags_hero span {
    color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
    font-weight: 500;
}

.popular_tags_hero a {
    padding: 8px 18px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 20px;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s;
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
}

.popular_tags_hero a:hover {
    background: #fff;
    color: #6421FE;
    border-color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 255, 255, 0.3);
}

/* Enhanced Blog Hero Styles */
.bx_hero_blog {
    padding: 40px 0;
}

.bx_hero_blog h1 {
    font-size: 3.5rem;
    margin-bottom: 15px;
    background: linear-gradient(135deg, #fff 0%, rgba(255, 255, 255, 0.8) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.bx_hero_blog p {
    font-size: 1.25rem;
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 0;
    font-weight: 400;
}

/* Swiper Pagination Styles for Articles */
.swiper-pagination-articles {
    position: relative;
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.swiper-pagination-articles .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: #D1D5DB;
    opacity: 1;
    transition: all 0.3s ease;
    border-radius: 50%;
}

.swiper-pagination-articles .swiper-pagination-bullet-active {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    width: 30px;
    border-radius: 6px;
}

.swiper-pagination-articles .swiper-pagination-bullet:hover {
    background: #8253ED;
}

/* Latest Articles Slider Enhancement */
.latest_articles {
    overflow: hidden;
}

.swiper_articles {
    padding-bottom: 20px;
}

.swiper_articles .swiper-slide {
    transition: all 0.3s ease;
    opacity: 0.6;
    transform: scale(0.95);
}

.swiper_articles .swiper-slide-active {
    opacity: 1;
    transform: scale(1);
}

@media (min-width: 1200px) {
    .swiper_articles .swiper-slide-prev,
    .swiper_articles .swiper-slide-next {
        opacity: 0.85;
        transform: scale(0.97);
    }
}

/* ================================================
   Blog Single Article Styles
   ================================================ */

/* Article Single Section */
.article_single {
    padding: 60px 0 100px;
    background: linear-gradient(180deg, #ffffff 0%, #F8F9FC 100%);
}

/* Breadcrumb */
.breadcrumb_article {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.breadcrumb_article a {
    color: rgba(0, 0, 0, 0.5);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s;
}

.breadcrumb_article a:hover {
    color: #6421FE;
}

.breadcrumb_article span {
    color: rgba(0, 0, 0, 0.3);
    font-size: 14px;
}

.breadcrumb_article span:last-child {
    color: #6421FE;
    font-weight: 600;
}

/* Main Article */
.main_article {
    background: #fff;
    border-radius: 22px;
    padding: 40px;
    box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

/* Featured Image */
.article_featured_img {
    border-radius: 18px;
    overflow: hidden;
    margin-bottom: 30px;
    box-shadow: 0px 8px 40px rgba(0, 0, 0, 0.1);
    position: relative;
}

.article_featured_img img {
    width: 100%;
    height: auto;
    display: block;
}

.badge_cat_img {
    position: absolute;
    top: 20px;
    right: 20px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0px 4px 15px rgba(100, 33, 254, 0.3);
}

/* Article Meta */
.article_meta {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
    padding: 25px 0;
    border-top: 2px solid rgba(0, 0, 0, 0.08);
    border-bottom: 2px solid rgba(0, 0, 0, 0.08);
    margin-bottom: 30px;
}

.article_meta .meta_item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
    font-weight: 500;
}

.article_meta .meta_item svg {
    width: 18px;
    height: 18px;
    stroke: #6421FE;
}

.article_meta .meta_item strong {
    color: #2D2D2D;
    font-weight: 700;
}

/* Article Tools (Share & Short Link) */
.article_tools {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px;
    background: linear-gradient(135deg, rgba(100, 33, 254, 0.05) 0%, rgba(182, 150, 255, 0.05) 100%);
    border-radius: 18px;
    margin-bottom: 40px;
    gap: 20px;
    flex-wrap: wrap;
    border: 1px solid rgba(100, 33, 254, 0.1);
}

/* Share Section */
.article_share {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.article_share span {
    font-size: 14px;
    font-weight: 700;
    color: #2D2D2D;
}

.share_item {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    transition: all 0.3s;
    text-decoration: none;
}

.share_item svg {
    width: 20px;
    height: 20px;
}

.share_telegram {
    background: linear-gradient(135deg, #0088cc 0%, #229ED9 100%);
    color: #fff;
}

.share_whatsapp {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
    color: #fff;
}

.share_twitter {
    background: linear-gradient(135deg, #1DA1F2 0%, #0D8BD9 100%);
    color: #fff;
}

.share_linkedin {
    background: linear-gradient(135deg, #0077B5 0%, #00669C 100%);
    color: #fff;
}

.share_item:hover {
    transform: translateY(-3px);
    box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.15);
}

/* Short Link */
.short_link {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.short_link span {
    font-size: 14px;
    font-weight: 700;
    color: #2D2D2D;
}

.short_link_box {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.08);
}

.short_link_box input {
    border: none;
    padding: 12px 15px;
    font-size: 13px;
    color: #2D2D2D;
    width: 160px;
    background: transparent;
    outline: none;
    font-weight: 500;
}

.btn_copy {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border: none;
    color: #fff;
    padding: 12px 20px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.3s;
}

.btn_copy:hover {
    background: linear-gradient(135deg, #5018E5 0%, #7143D4 100%);
}

.btn_copy svg {
    width: 18px;
    height: 18px;
}

/* Article Body */
.article_body {
    color: #2D2D2D;
    font-size: 16px;
    line-height: 32px;
}

.article_body .intro_text {
    font-size: 18px;
    font-weight: 500;
    color: rgba(0, 0, 0, 0.7);
    background: rgba(100, 33, 254, 0.05);
    padding: 25px;
    border-radius: 15px;
    border-right: 4px solid #6421FE;
    margin-bottom: 35px;
    line-height: 32px;
}

.article_body h2 {
    font-size: 28px;
    font-weight: 800;
    color: #2D2D2D;
    margin-top: 45px;
    margin-bottom: 20px;
    position: relative;
    padding-right: 20px;
}

.article_body h2::before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;
    height: 32px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border-radius: 3px;
}

.article_body p {
    margin-bottom: 20px;
    color: rgba(0, 0, 0, 0.75);
}

/* Info Boxes */
.info_box {
    display: flex;
    gap: 20px;
    padding: 25px;
    border-radius: 15px;
    margin: 30px 0;
    border: 2px solid;
}

.info_box_icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

.info_box_icon svg {
    width: 28px;
    height: 28px;
}

.info_box_content h4 {
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 8px;
}

.info_box_content p {
    margin: 0;
    font-size: 15px;
    line-height: 26px;
}

.info_box_success {
    background: rgba(16, 185, 129, 0.08);
    border-color: rgba(16, 185, 129, 0.3);
}

.info_box_success .info_box_icon {
    background: rgba(16, 185, 129, 0.15);
}

.info_box_success .info_box_icon svg {
    stroke: #10B981;
}

.info_box_success .info_box_content h4 {
    color: #059669;
}

.info_box_success .info_box_content p {
    color: rgba(5, 150, 105, 0.9);
}

.info_box_warning {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.3);
}

.info_box_warning .info_box_icon {
    background: rgba(245, 158, 11, 0.15);
}

.info_box_warning .info_box_icon svg {
    stroke: #F59E0B;
}

.info_box_warning .info_box_content h4 {
    color: #D97706;
}

.info_box_warning .info_box_content p {
    color: rgba(217, 119, 6, 0.9);
}

/* Lists */
.numbered_list {
    list-style: none;
    counter-reset: item;
    padding: 0;
    margin: 30px 0;
}

.numbered_list li {
    counter-increment: item;
    margin-bottom: 20px;
    padding-right: 50px;
    position: relative;
    line-height: 28px;
}

.numbered_list li::before {
    content: counter(item);
    position: absolute;
    right: 0;
    top: 0;
    width: 35px;
    height: 35px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 16px;
}

.numbered_list li strong {
    color: #2D2D2D;
    font-weight: 700;
}

.bullet_list {
    list-style: none;
    padding: 0;
    margin: 30px 0;
}

.bullet_list li {
    padding-right: 30px;
    position: relative;
    margin-bottom: 15px;
    line-height: 28px;
    color: rgba(0, 0, 0, 0.75);
}

.bullet_list li::before {
    content: '';
    position: absolute;
    right: 0;
    top: 12px;
    width: 8px;
    height: 8px;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border-radius: 50%;
}

/* Quote Box */
.quote_box {
    background: linear-gradient(135deg, rgba(100, 33, 254, 0.08) 0%, rgba(182, 150, 255, 0.08) 100%);
    border-right: 4px solid #6421FE;
    padding: 35px 30px;
    border-radius: 15px;
    margin: 40px 0;
    position: relative;
}

.quote_box svg {
    position: absolute;
    top: 25px;
    right: 30px;
    opacity: 0.15;
    stroke: #6421FE;
}

.quote_box p {
    font-size: 18px;
    font-weight: 600;
    line-height: 32px;
    color: #2D2D2D;
    font-style: italic;
    margin: 0 0 15px 0;
    padding-right: 50px;
}

.quote_box span {
    font-size: 14px;
    color: #6421FE;
    font-weight: 700;
    font-style: normal;
}

/* Article Tags */
.article_tags {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    padding: 30px 0;
    border-top: 2px solid rgba(0, 0, 0, 0.08);
    border-bottom: 2px solid rgba(0, 0, 0, 0.08);
    margin: 40px 0;
}

.article_tags .tags_title {
    font-size: 15px;
    font-weight: 800;
    color: #2D2D2D;
}

.article_tags a {
    padding: 8px 18px;
    background: rgba(100, 33, 254, 0.08);
    border-radius: 20px;
    color: #6421FE;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
    border: 2px solid transparent;
}

.article_tags a:hover {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0px 5px 15px rgba(100, 33, 254, 0.25);
}

/* Author Box */
.author_box {
    display: flex;
    gap: 25px;
    background: linear-gradient(135deg, rgba(100, 33, 254, 0.05) 0%, rgba(182, 150, 255, 0.05) 100%);
    padding: 30px;
    border-radius: 18px;
    margin: 40px 0;
    border: 2px solid rgba(100, 33, 254, 0.1);
}

.author_avatar {
    flex-shrink: 0;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #fff;
    box-shadow: 0px 4px 20px rgba(100, 33, 254, 0.2);
}

.author_avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.author_info h3 {
    font-size: 20px;
    font-weight: 800;
    color: #2D2D2D;
    margin-bottom: 10px;
}

.author_info p {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.6);
    line-height: 24px;
    margin-bottom: 15px;
}

.author_social {
    display: flex;
    gap: 12px;
}

.author_social a {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 10px;
    transition: all 0.3s;
    color: #6421FE;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.08);
}

.author_social a:hover {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0px 5px 15px rgba(100, 33, 254, 0.3);
}

.author_social a svg {
    stroke: currentColor;
}

/* Related Posts */
.related_posts {
    margin: 50px 0;
}

.section_title {
    font-size: 24px;
    font-weight: 800;
    color: #2D2D2D;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 15px;
}

.section_title::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70px;
    height: 4px;
    background: linear-gradient(90deg, #6421FE 0%, #B696FF 100%);
    border-radius: 2px;
}

.related_post_item {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.08);
    transition: all 0.3s;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.related_post_item:hover {
    transform: translateY(-5px);
    box-shadow: 0px 8px 30px rgba(100, 33, 254, 0.15);
}

.related_post_img {
    display: block;
    position: relative;
    overflow: hidden;
    height: 180px;
}

.related_post_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}

.related_post_item:hover .related_post_img img {
    transform: scale(1.1);
}

.related_post_content {
    padding: 20px;
}

.related_post_cat {
    display: inline-block;
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 5px 14px;
    border-radius: 15px;
    font-size: 11px;
    font-weight: 700;
    margin-bottom: 12px;
}

.related_post_content h4 {
    margin-bottom: 12px;
}

.related_post_content h4 a {
    font-size: 16px;
    font-weight: 700;
    color: #2D2D2D;
    text-decoration: none;
    line-height: 26px;
    transition: all 0.3s;
}

.related_post_content h4 a:hover {
    color: #6421FE;
}

.related_post_date {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.5);
    font-weight: 500;
}

/* Comments Section */
.comments_section {
    margin: 50px 0;
}

.comments_list {
    margin-bottom: 30px;
}

.comment_item {
    display: flex;
    gap: 20px;
    padding: 25px;
    background: #F8F9FC;
    border-radius: 18px;
    margin-bottom: 20px;
    border: 2px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s;
}

.comment_item:hover {
    background: #fff;
    border-color: rgba(100, 33, 254, 0.2);
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08);
}

.comment_reply {
    margin-right: 60px;
}

.comment_avatar {
    flex-shrink: 0;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #fff;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);
}

.comment_avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comment_content {
    flex: 1;
}

.comment_header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.comment_header h4 {
    font-size: 16px;
    font-weight: 700;
    color: #2D2D2D;
    margin: 0;
}

.comment_badge {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    color: #fff;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
}

.comment_date {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.5);
    font-weight: 500;
}

.comment_content p {
    font-size: 15px;
    color: rgba(0, 0, 0, 0.75);
    line-height: 26px;
    margin-bottom: 15px;
}

.comment_actions {
    display: flex;
    gap: 15px;
}

.btn_comment_action {
    background: transparent;
    border: none;
    color: rgba(0, 0, 0, 0.5);
    font-size: 13px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    gap: 6px;
}

.btn_comment_action:hover {
    background: rgba(100, 33, 254, 0.08);
    color: #6421FE;
}

.btn_comment_action svg {
    width: 16px;
    height: 16px;
    stroke: currentColor;
}

.btn_like:hover {
    background: rgba(16, 185, 129, 0.08);
    color: #10B981;
}

.btn_load_more_comments {
    background: rgba(100, 33, 254, 0.08);
    border: 2px solid rgba(100, 33, 254, 0.2);
    color: #6421FE;
    padding: 14px 35px;
    border-radius: 15px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 auto;
}

.btn_load_more_comments:hover {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    border-color: transparent;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0px 8px 20px rgba(100, 33, 254, 0.3);
}

.btn_load_more_comments svg {
    stroke: currentColor;
}

/* Comment Form */
.comment_form_section {
    margin: 50px 0;
}

.comment_form {
    background: #F8F9FC;
    padding: 35px;
    border-radius: 18px;
    border: 2px solid rgba(100, 33, 254, 0.1);
}

.input_comment {
    margin-bottom: 20px;
}

.input_comment label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #2D2D2D;
    margin-bottom: 10px;
}

.input_comment .required {
    color: #EF4444;
}

.input_comment .form-control,
.input_comment textarea {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid #E5E5E5;
    border-radius: 12px;
    font-size: 14px;
    color: #2D2D2D;
    transition: all 0.3s;
    background: #fff;
    font-family: 'dana';
}

.input_comment .form-control:focus,
.input_comment textarea:focus {
    outline: none;
    border-color: #6421FE;
    box-shadow: 0px 0px 0px 4px rgba(100, 33, 254, 0.1);
}

.input_comment textarea {
    resize: vertical;
}

.comment_form_footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 25px;
    gap: 20px;
    flex-wrap: wrap;
}

.custom-control-label {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.6);
    font-weight: 500;
    cursor: pointer;
    padding-right: 8px;
}

.btn_submit_comment {
    background: linear-gradient(135deg, #6421FE 0%, #8253ED 100%);
    background-size: 200% auto;
    color: #fff;
    padding: 16px 45px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    transition: all 0.4s;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0px 4px 15px rgba(100, 33, 254, 0.3);
}

.btn_submit_comment:hover {
    background-position: right center;
    transform: translateY(-3px);
    box-shadow: 0px 10px 30px rgba(100, 33, 254, 0.4);
}

.btn_submit_comment svg {
    stroke: currentColor;
}

/* Responsive for Blog Single */
@media (max-width: 991px) {
    .main_article {
        padding: 30px 25px;
    }

    .article_tools {
        flex-direction: column;
        align-items: flex-start;
    }

    .article_body h2 {
        font-size: 24px;
    }

    .author_box {
        flex-direction: column;
        text-align: center;
    }

    .author_avatar {
        margin: 0 auto;
    }

    .author_social {
        justify-content: center;
    }

    .comment_reply {
        margin-right: 40px;
    }

    .badge_cat_img {
        font-size: 12px;
        padding: 6px 16px;
        top: 15px;
        right: 15px;
    }
}

@media (max-width: 767px) {
    .main_article {
        padding: 25px 20px;
    }

    .article_meta {
        gap: 15px;
        padding: 20px 0;
    }

    .article_body {
        font-size: 15px;
        line-height: 28px;
    }

    .article_body h2 {
        font-size: 22px;
        margin-top: 35px;
        padding-right: 18px;
    }

    .article_body .intro_text {
        font-size: 16px;
        padding: 20px;
    }

    .numbered_list li {
        padding-right: 45px;
        font-size: 15px;
    }

    .numbered_list li::before {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }

    .quote_box p {
        font-size: 16px;
        line-height: 28px;
    }

    .short_link_box input {
        width: 140px;
        font-size: 12px;
    }

    .comment_item {
        padding: 20px 15px;
    }

    .comment_reply {
        margin-right: 20px;
    }

    .comment_form {
        padding: 25px 20px;
    }

    .comment_form_footer {
        flex-direction: column;
        align-items: stretch;
    }

    .btn_submit_comment {
        width: 100%;
        justify-content: center;
    }

    .author_box {
        padding: 25px 20px;
    }

    .author_avatar {
        width: 80px;
        height: 80px;
    }

    .related_post_img {
        height: 150px;
    }
}

/* Scroll Progress Bar */
#scroll-progress {
    position: fixed;
    top: 0;
    right: 0;
    width: 0%;
    height: 4px;
    background: rgb(100 34 254);
    z-index: 9999;
    transition: width 0.1s ease-out;
    box-shadow: 0 2px 10px rgba(100, 34, 254, 0.4);
}