/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}
/* =====================================================
   BẢNG GIÁ CHỮ KÝ SỐ
===================================================== */

.cks-price-section {
    width: 100%;
    padding: 30px 0 40px;
    background: #fff;
}

.cks-price-heading-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    max-width: 630px;
    margin: 0 auto 42px;
}

.cks-price-heading-line {
    flex: 1;
    height: 3px;
    background: #e2e2e2;
}

.cks-price-heading {
    flex: 0 0 auto;
    margin: 0;
    color: #078b22;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
}

.cks-price-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 40px;
    width: 100%;
}

.cks-price-item {
    min-width: 0;
    margin: 0;
    padding: 0;
}

.cks-price-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 105px;
    margin-bottom: 18px;
    overflow: hidden;
}

.cks-price-image {
    display: block;
    width: auto !important;
    max-width: 100%;
    height: auto !important;
    max-height: 95px;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    transition: transform 0.3s ease;
}

.cks-price-item:hover .cks-price-image {
    transform: scale(1.04);
}

.cks-price-no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 15px;
    color: #777;
    text-align: center;
    background: #f5f5f5;
}

.cks-price-content {
    padding: 0 8px;
}

.cks-price-title {
    margin: 0 0 13px;
    color: #1A60A9;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: uppercase;
}

.cks-price-title a {
    color: inherit;
}

.cks-price-title a:hover {
    color: #EC4045;
}

.cks-price-list {
    margin-bottom: 18px;
}

.cks-price-row {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 6px;
    color: #151515;
    font-size: 16px;
    line-height: 1.45;
}

.cks-price-label {
    font-weight: 400;
    white-space: nowrap;
}

.cks-price-value {
    color: #111;
    font-weight: 700;
}

.cks-price-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 109px;
    min-height: 39px;
    padding: 8px 20px;
    border-radius: 14px;
    color: #fff !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    background:#1A60A9;
    transition: 0.25s ease;
}

.cks-price-button:hover {
    color: #fff !important;
    background: #EC4045;
    transform: translateY(-2px);
    box-shadow: 0 7px 15px rgba(70, 112, 45, 0.22);
}

@media screen and (max-width: 1024px) {
    .cks-price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px 30px;
    }

    .cks-price-content {
        max-width: 350px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 549px) {
    .cks-price-section {
        padding: 20px 0 30px;
    }

    .cks-price-heading-wrap {
        gap: 10px;
        margin-bottom: 30px;
    }

    .cks-price-heading {
        font-size: 23px;
    }

    .cks-price-heading-line {
        height: 2px;
    }

    .cks-price-grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .cks-price-logo {
        height: 95px;
    }

    .cks-price-image {
        max-height: 88px;
    }

    .cks-price-content {
        max-width: 320px;
    }

    .cks-price-title {
        font-size: 19px;
        text-align: center;
    }

    .cks-price-row {
        font-size: 15px;
    }

    .cks-price-button {
        display: flex;
        width: max-content;
        margin: 18px auto 0;
    }
}

/*
   HIỆU ỨNG 
 */

.cks-price-item {
    opacity: 0;
    transform: translateY(40px);
    transition:
        opacity 0.7s ease,
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
}

.cks-price-item.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Hiện lần lượt */
.cks-price-item:nth-child(1) {
    transition-delay: 0.1s;
}

.cks-price-item:nth-child(2) {
    transition-delay: 0.25s;
}

.cks-price-item:nth-child(3) {
    transition-delay: 0.4s;
}

.cks-price-item:nth-child(4) {
    transition-delay: 0.55s;
}
.cks-price-item:nth-child(5) {
    transition-delay: 0.7s;
}

.cks-price-item:nth-child(6) {
    transition-delay: 0.85s;
}

.cks-price-item:nth-child(7) {
    transition-delay: 1s;
}

.cks-price-item:nth-child(8) {
    transition-delay: 1.15s;
}

@media (prefers-reduced-motion: reduce) {
    .cks-price-item {
        opacity: 1;
        transform: none;
        transition: none;
    }
}


/*sp trang chủ*/
.cks-price-item {
    padding: 25px 20px 22px;
    border: 1px solid #e5e5e5;
    border-radius: 16px;
    background: #fff;
    text-align: center;
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.cks-price-item:hover {
    transform: translateY(-6px);
    border-color: #2168ad;
    box-shadow: 0 14px 30px rgba(33, 104, 173, 0.18);
}
/*banner*/
.service-card{
    margin:auto;
    background:#eaf7ff;
    border-radius:18px;
    padding:25px;
    box-shadow:0 8px 18px rgba(0,0,0,.15);
    transition:.3s;
	    min-height: 369px;
}
.service-card:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 30px rgba(0,0,0,.2);
}

.service-card h1{
    text-transform:uppercase;
}

.service-card p{
    margin:0;
    line-height:1.7;
    color:#222;
}

.cks-contact-top {
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #000;
    font-size: 16px;
    line-height: 1.3;
}

.cks-contact-line {
    display: flex;
    align-items: center;
    gap: 5px;
}

.cks-contact-line strong {
    font-weight: 700;
    color: #000;
}

.cks-contact-line a {
    font-weight: 700;
 
}

.cks-contact-line a:hover {
    color: #EB363B;
}

.cks-top-slogan {

    color: #000;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    text-transform: uppercase;
    background: #fff;
}

.cks-top-slogan span {
    display: block;
    margin-top: 2px;
    font-size: 22px;
    font-weight: 400;
}


@media(max-width:768px){

.service-card{
    padding:35px 25px;
}

.service-card h2{
    font-size:28px;
}

.service-card p{
    font-size:18px;
}

}



/* 
Trang chủ TITLE
 */


.zxnova-wrap{

    margin:auto;
    text-align:center;
}

.zxnova-heading{
		    text-transform: uppercase;
    position:relative;
    display:inline-block;

    margin:0;
    padding-bottom:22px;

    font-size:34px;
    font-weight:800;
    line-height:1.3;

    color:#1A60A9;
    letter-spacing:-0.5px;

    transition:.35s ease;
}

/* line */

.zxnova-heading::before{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;

    width:160px;
    height:3px;

    background:#e4e4e4;

    transform:translateX(-50%);
    border-radius:50px;
}

.zxnova-heading::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-1px;
    width:70px;
    height:5px;
    background:#EB3439;
    transform:translateX(-50%);
    border-radius:50px;
    transition:.35s;
}

.zxnova-heading:hover::after{
    width:150px;
}

.zxnova-desc{
    margin-top:10px;
    font-size:18px;
    font-weight:400;
    line-height:1.8;
    color:#555;
}

/* Responsive */

@media(max-width:991px){

.zxnova-heading{
    font-size:38px;
}

.zxnova-desc{
    font-size:20px;
}

}

@media(max-width:768px){

.zxnova-title{
    padding:50px 15px;
}

.zxnova-heading{
    font-size:30px;
    padding-bottom:18px;
}

.zxnova-heading::before{
    width:120px;
}

.zxnova-heading::after{
    width:55px;
}

.zxnova-desc{
    margin-top:20px;
    font-size:18px;
}

}

@media(max-width:480px){

.zxnova-heading{
    font-size:24px;
}

.zxnova-desc{
    font-size:16px;
}

}


/*những lợi ích */

.vxnova-title{

    font-size:32px;
    font-weight:800;
    color:#1B61AA;
    line-height:1.3;
   
    position:relative;
}

.vxnova-list li{
    list-style:none;
      margin-left: 0 !important;
	
}

.vxnova-list li {
    position: relative;
    padding: 10px 10px 10px 54px;

    background: #ffffff;
    border: 1px solid #edf2ee;
    border-radius: 16px;
 
    font-weight: 500;
    color: #222;
    transition: .35s;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .05);
}
.vxnova-list li:hover{

    transform:translateX(10px);

    border-color:#1B61AA;

    box-shadow:0 18px 35px rgba(31,191,76,.15);

}

.vxnova-list li:before{

    content:"✓";

    position:absolute;

    left:22px;

    top:50%;

    transform:translateY(-50%);

    width:20px;

    height:20px;

    line-height:18px;

    text-align:center;

    font-size:14px;

    font-weight:bold;

    color:#fff;

    background:#1B61AA;

    border-radius:50%;

    box-shadow:0 5px 15px rgb(33 150 243 / 43%);

}

@media(max-width:768px){

.vxnova-title{
    font-size:28px;
}

.vxnova-list li{

    font-size:17px;

    padding:16px 15px 16px 60px;

}

.vxnova-list li:before{

    width:28px;

    height:28px;

    line-height:28px;

    left:18px;

    font-size:15px;

}

}
/*câu hỏi thường gặp tc*/

.fqa-tc{
    position:relative;
    padding:70px 0;
    background:linear-gradient(135deg,#f7fbff 0%,#eef8f3 100%);
}

.fqa-tc .section-content{
    max-width:1180px;
    margin:auto;
}


.fqa-tc .vxnova-title{

    text-align:center;

    font-size:40px;

    font-weight:800;

    line-height:1.3;

    color:#1B60A9;

      margin-top: 25px;

    position:relative;

    text-transform:uppercase;

}

.fqa-tc .vxnova-title:after{

    content:"";

    display:block;

    width:90px;

    height:5px;

    margin:18px auto 0;

    border-radius:30px;

    background:linear-gradient(90deg, #1B60A9, #218DCB);

}



.fqa-tc .accordion{

    border:none;

    background:none;

}


.fqa-tc .accordion-item{

    margin-bottom:18px;

    border:none;

    border-radius:18px;

    overflow:hidden;

    background:#fff;

    box-shadow:0 10px 30px rgba(0,0,0,.07);

    transition:.35s;

}

.fqa-tc .accordion-item:hover{

    transform:translateY(-4px);

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}


.fqa-tc .accordion-title{

    display:flex;

    align-items:center;

    gap:18px;

    padding:18px 28px;

    background:#fff;

    text-decoration:none;

    border:none;

}


.fqa-tc .accordion-title span{

    flex:1;

    font-size:21px;

    font-weight:700;

    color:#222;

    line-height:1.6;

}

.fqa-tc .accordion-title:before{

    content:"✓";

    width:38px;

    height:38px;

    border-radius:50%;

    background:#1B60A9;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    font-weight:700;

    flex-shrink:0;

    box-shadow:0 6px 15px rgb(33 150 243 / 21%);

}



.fqa-tc .accordion-title .toggle{

    order:3;

    width:42px;

    height:42px;

    border-radius:50%;

    border:none;  

    color:#1B60A9;

    transition:.35s;

}

.fqa-tc .accordion-title .toggle i{

    font-size:20px;

}

.fqa-tc .accordion-item.active .toggle{

    background:#1B60A9;

    color:#fff;

    transform:rotate(180deg);

}



.fqa-tc .accordion-inner{

    padding:5px 30px 30px 84px;

    background:#fff;

}

.fqa-tc .accordion-inner p{

    margin:0;

    font-size:17px;

    line-height:1.9;

    color:#555;

}


@media(max-width:849px){

.fqa-tc{

    padding:45px 0;

}

.fqa-tc .vxnova-title{

    font-size:30px;

}

.fqa-tc .accordion-title{

    padding:18px;

}

.fqa-tc .accordion-title span{

    font-size:17px;

}

.fqa-tc .accordion-title:before{

    width:30px;

    height:30px;

    font-size:14px;

}

.fqa-tc .accordion-inner{

    padding:5px 18px 20px 58px;

}

.fqa-tc .accordion-inner p{

    font-size:15px;

}

}

/*thông tin*/

.ttca-support{

    background:#fff;

    border-radius:22px;

    padding:20px;

    box-shadow:0 15px 45px rgba(0,0,0,.08);

    border-top:5px solid #2B68AE;

}


.ttca-support-head{

    text-align:center;

    margin-bottom:15px;

}

.ttca-support-head h3{

    margin:0 0 10px;

    color:#2B68AE;

    font-size:30px;

    font-weight:800;

}

.ttca-support-head p{

    margin:0;

    line-height:1.8;

}


.ttca-support-list{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:20px;

    margin-bottom:20px;

}

.ttca-support-item{

    display:flex;

    gap:18px;

    padding:20px;

    border-radius:18px;

    background:#F7FBFF;

    transition:.3s;

}

.ttca-support-item:hover{

    transform:translateY(-4px);

    box-shadow:0 10px 30px rgba(43,104,174,.12);

}

.ttca-support-item strong{

    display:block;

    margin-bottom:8px;

    color:#2B68AE;

    font-size:19px;

}

.ttca-support-item p{

    margin:0;
    line-height:1.7;

}


.ttca-contact-bar{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

.ttca-contact-item{

    display:flex;

    align-items:center;

    gap:12px;

    padding:14px 26px;

    background:#2B68AE;

    color:#fff;

    text-decoration:none;

    border-radius:50px;

    font-size:17px;

    font-weight:700;

    transition:.3s;

}

.ttca-contact-item i{

    font-size:18px;

}

.ttca-contact-item:hover{

    background:#F53238;

    color:#fff;

    transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(245,50,56,.25);

}

/*
        Danh mục MOBILE
*/

@media(max-width:768px){

.ttca-support{

    padding:25px;

}

.ttca-support-list{

    grid-template-columns:1fr;

}

.ttca-contact-bar{

    flex-direction:column;

}

.ttca-contact-item{

    justify-content:center;

}

}
/*trang tin tức */
.news-page{
    background:#f6f8fb;
    padding:30px 0;
}

.news-header{
    text-align:center;
    margin-bottom:45px;
}

.news-header h1{
    font-size:40px;
    margin-bottom:10px;
	    color: #1A60A9;
}

.news-header p{
    max-width:760px;
    margin:auto;
    color:#666;
}

.news-layout{
    display:flex;
    gap:35px;
}

.news-content{
    width:72%;
}

.news-sidebar{
    width:28%;
}

.news-item{
    display:flex;
    gap:25px;
    background:#fff;
    border-radius:15px;
    overflow:hidden;
    margin-bottom:30px;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
    transition:.3s;
}

.news-item:hover{
    transform:translateY(-5px);
}

.news-thumb{
    width:340px;
    flex-shrink:0;
}

.news-thumb a{
    display:block;
    aspect-ratio:4/3;
    overflow:hidden;
}

.news-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.news-info{
       padding: 15px;
    flex:1;
}

.news-meta{
    color:#999;
    font-size:14px;

}

.news-info h2 a {
    color: #1A60A9;
    text-decoration: none;
}

.news-info h2 a:hover{
    color:#EB3439;
}

.read-more{

    display:inline-block;
    color:#1A60A9;
    font-weight:600;
    text-decoration:none;
}

.sidebar-box{
    background:#fff;
    padding:25px;
    margin-bottom:25px;
    border-radius:15px;
    box-shadow:0 8px 25px rgba(0,0,0,.05);
}

.sidebar-box h3{
    margin-bottom:20px;
    border-bottom:2px solid #eee;
    padding-bottom:10px;
    font-size:20px;
}

.sidebar-box ul{
    list-style:none;
    margin:0;
    padding:0;
}

.sidebar-box li{
    padding:10px 0;
    border-bottom:1px solid #eee;
}

.sidebar-box li:last-child{
    border:none;
}

.sidebar-box a{
    color:#333;
    text-decoration:none;
}

.sidebar-box a:hover{
    color:#0056d6;
}

.tag-cloud a{
    display:inline-block;
    background:#f5f5f5;
    padding:8px 15px;
    margin:5px;
    border-radius:30px;
    font-size:13px!important;
}

.pagination{
    text-align:center;
    margin-top:40px;
}

.pagination .page-numbers{
    display:inline-block;
    padding:10px 18px;
    background:#fff;
    margin:0 4px;
    border-radius:50px;
}

.pagination .current{
    background:#0056d6;
    color:#fff;
}

@media(max-width:991px){

.news-layout{
display:block;
}

.news-content,
.news-sidebar{
width:100%;
}

.news-sidebar{
margin-top:40px;
}

.news-item{
display:block;
}

.news-thumb{
width:100%;
}

.news-thumb img{
height:230px;
}

.news-info{
padding:20px;
}

.news-header h1{
font-size:30px;
}

.news-info h2{
font-size:22px;
}

}
/*Bài viết tin tức*/
.single-content{
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.single-thumb{
    margin-bottom:25px;
}

.single-thumb img{
    width:100%;
    border-radius:15px;
    aspect-ratio:16/9;
    object-fit:cover;
}

.single-title {
    font-size: 34px;
    line-height: 1.4;
    margin: 20px 0;
    color: #1A60A9;
}
.single-meta{
    color:#888;
    margin-bottom:15px;
    font-size:15px;
}

.single-entry img{
    max-width:100%;
    height:auto;
    border-radius:10px;
}

.single-entry table{
    width:100%;
    border-collapse:collapse;
    margin:25px 0;
}

.single-entry table td,
.single-entry table th{
    border:1px solid #ddd;
    padding:10px;
}

.single-tags{
    margin-top:40px;
}

.single-tags a{
    display:inline-block;
    padding:8px 14px;
    margin:5px;
    border-radius:30px;
    background:#eef4ff;
    color:#0056d6;
    text-decoration:none;
}

.single-tags a:hover{
    background:#0056d6;
    color:#fff;
}

@media(max-width:768px){

.single-content{
    padding:20px;
}

.single-title{
    font-size:28px;
}

.single-entry{
    font-size:16px;
}

}

/* Bài viết liên quan */

.related-posts{
    padding-top:20px;
    border-top:1px solid #e5e7eb;
}

.related-posts h2{
    margin-bottom:30px;
    font-weight:700;
}

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

.related-item{
    background:#fff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.related-item:hover{
    transform:translateY(-5px);
}

.related-thumb{
    display:block;
    aspect-ratio:4/3;
    overflow:hidden;
}

.related-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.4s;
}

.related-item:hover img{
    transform:scale(1.08);
}

.related-content{
    padding:18px;
}

.related-date{
    color:#999;
    font-size:14px;
    margin-bottom:10px;
}

.related-content h3{
    font-size:20px;
    line-height:1.5;
    margin-bottom:10px;
}

.related-content h3 a{
    color:#222;
    text-decoration:none;
}

.related-content h3 a:hover{
    color:#0056d6;
}

.related-content p{
    color:#666;
    line-height:1.7;
    font-size:15px;
}

@media(max-width:991px){

.related-grid{
    grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.related-grid{
    grid-template-columns:1fr;
}

.related-posts h2{
    font-size:24px;
}

}
/*saiba*/

.recent-post-item{
    padding:12px 0;
    border-bottom:1px solid #ececec;
}

.recent-post-item:last-child{
    border-bottom:none;
}

.recent-post-item a{
    display:block;
    font-size:16px;
    font-weight:600;
    color:#222;
    line-height:1.6;
    text-decoration:none;
    transition:.3s;
}

.recent-post-item a:hover{
    color:#0066cc;
}

.recent-date{
    display:block;
    margin-top:8px;
    font-size:13px;
    color:#888;
}

.recent-date i{
    color:#0b67d3;
    margin-right:5px;
}
/*Bài viết tài liệu tải về */
.tai-lieu-page{

    margin:30px auto;

}

.tai-lieu-header{

    margin-bottom:40px;

}

.tai-lieu-header h1 {
    font-size: 34px;
  
    color: #1A60A9;
}

.download-group {
    border: 1px solid #a6a6a6;
    margin-bottom: 15px;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    transition: all .3s ease;
}

.download-group:hover {
    border-color: #2b7de9;
    box-shadow: 0 8px 25px rgba(43, 125, 233, 0.25);
    transform: translateY(-3px);
}

.download-heading{

    background:#fff;

    padding:12px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

    font-size:24px;

    font-weight:700;

  color: #1A60A9;

}

.download-content{

    background:#fff;

}

.download-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:9px;

    border-top:1px solid #eee;

}

.download-name{

    font-size:20px;

}

.download-button a{

    background:#EB3439;

    color:#fff;

    padding:12px 25px;

    text-decoration:none;

    font-weight:700;

    display:inline-block;

}

.download-button a:hover{

    background:#1E8CCB;

}

.toggle{

    font-size:28px;

}

@media(max-width:768px){

.download-row{

    display:block;

}

.download-button{

    margin-top:15px;

}

.download-button a{

    display:block;

    text-align:center;

}

}
/*sản phẩm chữ ký số*/


.news-item .price-box{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:12px;
    padding:25px;
    text-align:center;
    box-shadow:0 5px 20px rgba(0,0,0,.05);
    transition:.3s;
}

.news-item .price-box:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(0,0,0,.12);
}


.news-item .price-box .news-thumb{
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    border-radius:8px;
    margin-bottom:20px;
}

.news-item .price-box .news-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}


.news-item .price-title{
    color:#1A60A9;
    font-weight:700;
    text-transform:uppercase;
    line-height:1.4;
}

.news-item .price-list p{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin:12px 0;
    font-size:18px;
    border-bottom:1px dashed #eee;
    padding-bottom:10px;
}

.news-item .price-list strong{
    font-weight:600;
    color:#222;
}

.news-item .price-list span{
    font-weight:700;
    color:#111;
}



.news-item .price-box .read-more{
    display:inline-block;
    background:#1A60A9;
    color:#fff;
    padding:12px 35px;
    border-radius:40px;
    font-weight:700;
    text-decoration:none;
    transition:.3s;
}

.news-item .price-box .read-more:hover{
    background:#EB3439;
    color:#fff;
}

/* sp chữ ký số */

.news-item.price-layout{
   
    float:left;
    margin:0 35px 30px 0;
    box-sizing:border-box;
}

.news-item.price-layout:nth-child(2n){
    margin-right:0;
}

@media(max-width:768px){

.news-item.price-layout{
    width:100%;
    margin-right:0;
}

}


.chu-ky-so .box-image{
    background:#fff;
}

.chu-ky-so .image-cover{
    overflow:hidden;
    background:#fff;
}


.chu-ky-so .image-cover img{
    width:100%;
    height:100%;

    object-fit:contain;
    object-position:center;

    padding:22px;

    transition:transform .35s;
}

.chu-ky-so .post-item:hover .image-cover img{
    transform:scale(1.05);
}

/*bài viết liên quan */

.related-price-posts {
    margin-top: 45px;
}

.related-price-posts > h2 {
    margin-bottom: 25px;
    color: #2168ad;
    font-size: 27px;
    font-weight: 700;
}

.related-price-posts .related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
}

.related-price-item {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 22px 18px;
    border: 1px solid #e4e9ef;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(25, 78, 130, 0.08);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.related-price-item:hover {
    transform: translateY(-5px);
    border-color: #2168ad;
    box-shadow: 0 14px 30px rgba(33, 104, 173, 0.16);
}

.related-price-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 125px;
    margin-bottom: 17px;
    overflow: hidden;
    background: #fff;
}

.related-price-thumb img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 auto;
    object-fit: contain !important;
    object-position: center;
}

.related-price-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 0;
    text-align: center;
}

.related-price-title {
    margin: 0 0 15px;
    color: #2168ad;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: uppercase;
}

.related-price-title a {
    color: inherit;
}

.related-price-title a:hover {
    color: #154d84;
}

.related-price-list {
    flex: 1;
    margin-bottom: 17px;
}

.related-price-row {
    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 7px;
    color: #222;
    font-size: 15px;
    line-height: 1.4;
}

.related-price-row span {
    font-weight: 400;
}

.related-price-row strong {
    color: #111;
    font-weight: 700;
}

.related-price-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    min-width: 115px;
    min-height: 40px;
    margin: auto auto 0;
    padding: 8px 20px;
    border-radius: 14px;
    color: #fff !important;
    font-size: 15px;
    font-weight: 700;
    background: #2168ad;
    transition:
        background-color 0.25s ease,
        transform 0.25s ease;
}

.related-price-button:hover {
    color: #fff !important;
    background: #164f87;
    transform: translateY(-2px);
}

@media screen and (max-width: 849px) {
    .related-price-posts .related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 549px) {
    .related-price-posts .related-grid {
        grid-template-columns: 1fr;
    }

    .related-price-item {
        padding: 20px 16px;
    }

    .related-price-thumb {
        height: 115px;
    }

    .related-price-title {
        font-size: 18px;
    }
}



/* FORM ĐĂNG KÝ CHỮ KÝ SỐ - CHUKYSOCA.COM */
.ca-mst-form {
    max-width: 760px;
    margin: 30px auto;
    background: #fff;
    border: 1px solid #e7edf3;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 45px rgba(4, 44, 82, 0.12);
    font-family: inherit;
}

.ca-mst-form .ca-form-heading {
    position: relative;
    padding: 34px 40px 30px;
    color: #fff;
    text-align: center;
    background: linear-gradient(135deg, #0066b3 0%, #008bd2 100%);
}

.ca-mst-form .ca-form-heading::before,
.ca-mst-form .ca-form-heading::after {
    position: absolute;
    content: "";
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.ca-mst-form .ca-form-heading::before {
    width: 140px;
    height: 140px;
    top: -75px;
    right: -25px;
}

.ca-mst-form .ca-form-heading::after {
    width: 90px;
    height: 90px;
    bottom: -55px;
    left: 25px;
}

.ca-mst-form .ca-form-badge {
    display: inline-block;
    margin-bottom: 10px;
    padding: 6px 14px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 1px;
    background: rgba(255, 255, 255, 0.17);
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 30px;
}

.ca-mst-form .ca-form-heading h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 8px;
    color: #fff;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: none;
}

.ca-mst-form .ca-form-heading p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: 15px;
}

.ca-mst-form .ca-form-body {
    padding: 35px 40px 30px;
}

.ca-mst-form .ca-form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.ca-mst-form .ca-field-full {
    grid-column: 1 / -1;
}

.ca-mst-form .ca-form-field {
    min-width: 0;
}

.ca-mst-form .ca-form-field label {
    display: block;
    margin-bottom: 8px;
    color: #23374d;
    font-size: 14px;
    font-weight: 600;
}

.ca-mst-form .ca-form-field label span {
    color: #e53935;
}

.ca-mst-form .wpcf7-form-control-wrap {
    display: block;
}

.ca-mst-form input.ca-input,
.ca-mst-form select.ca-select {
    width: 100%;
    height: 52px;
    margin: 0;
    padding: 0 16px;
    color: #263747;
    font-size: 15px;
    background-color: #f7f9fc;
    border: 1px solid #dce4ec;
    border-radius: 10px;
    box-shadow: none;
    outline: none;
    transition: all 0.25s ease;
}

.ca-mst-form input.ca-input::placeholder {
    color: #9aa8b5;
}

.ca-mst-form input.ca-input:hover,
.ca-mst-form select.ca-select:hover {
    background-color: #fff;
    border-color: #9ecce7;
}

.ca-mst-form input.ca-input:focus,
.ca-mst-form select.ca-select:focus {
    background-color: #fff;
    border-color: #008bd2;
    box-shadow: 0 0 0 4px rgba(0, 139, 210, 0.1);
}

.ca-mst-form input.ca-submit {
    width: 100%;
    min-height: 54px;
    margin: 5px 0 0;
    padding: 13px 25px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.3px;
    text-align: center;
    background: linear-gradient(135deg, #0066b3, #00a1e4);
    border: 0;
    border-radius: 10px;
    box-shadow: 0 8px 20px rgba(0, 116, 183, 0.25);
    cursor: pointer;
    transition: all 0.25s ease;
}

.ca-mst-form input.ca-submit:hover {
    color: #fff;
    background: linear-gradient(135deg, #00569b, #008bc6);
    box-shadow: 0 12px 25px rgba(0, 116, 183, 0.32);
    transform: translateY(-2px);
}

.ca-mst-form .ca-form-note {
    margin: 18px 0 0;
    color: #7b8996;
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
}

.ca-mst-form .wpcf7-not-valid-tip {
    margin-top: 6px;
    color: #e53935;
    font-size: 12px;
}

.ca-mst-form .wpcf7-response-output {
    margin: 20px 0 0 !important;
    padding: 12px 15px !important;
    font-size: 14px;
    border-radius: 8px;
}

.ca-mst-form .wpcf7-spinner {
    display: block;
    margin: 12px auto 0;
}

/* Hiển thị trên điện thoại */
@media (max-width: 549px) {
    .ca-mst-form {
        margin: 20px 0;
        border-radius: 15px;
    }

    .ca-mst-form .ca-form-heading {
        padding: 28px 20px 25px;
    }

    .ca-mst-form .ca-form-heading h3 {
        font-size: 24px;
    }

    .ca-mst-form .ca-form-body {
        padding: 25px 20px;
    }

    .ca-mst-form .ca-form-row {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .ca-mst-form .ca-field-full {
        grid-column: auto;
    }
}