.btn-file > p{
    align-items: center;
    display: flex;
    position: relative;
    width: 100%;
}

.btn-file span[data-name="your-file"]{
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0;
}
#btn-contact-form{
    position: relative;
    margin: 2.75rem 0;
    gap: 0;
    cursor: pointer;
}
.wpcf7-form .wpcf7-spinner{
    display: none;
}
.wpcf7-form .btn-submit{
    display: none;
}
.wpcf7-not-valid-tip{
    padding: 10px 25px;
}
.icon-spinner {
    display: none;
    width: 22px;
    height: 22px;
    animation: spin .8s linear infinite;
}

.btn-arrow.loading .icon-arrow {
    display: none;
}

.btn-arrow.loading .icon-spinner {
    display: block;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
.wpcf7-response-output{
    display: none;
}
.contact #btn-contact-form{
    margin: revert-layer;
}
.wpcf7-form textarea{
    height: 100px;
}
.wpcf7-not-valid{
    border-color: #dc3232;
}
.cf7-modal {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 9999999999999;
}

.cf7-modal.show {
    opacity: 1;
    visibility: visible;
}

.cf7-modal-content {
    background: #fff;
    width: 420px;
    max-width: calc(100% - 30px);
    border-radius: 16px;
    padding: 35px;
    text-align: center;
    position: relative;
}

.cf7-modal-icon {
    font-size: 60px;
    margin-bottom: 15px;
}

.cf7-modal-title {
    margin: 0 0 10px;
}

.cf7-modal-message {
    margin-bottom: 25px;
}

.cf7-modal-btn {
    padding: 10px 30px;
    cursor: pointer;
}

.cf7-modal-close {
    position: absolute;
    top: 10px;
    right: 15px;
    border: 0;
    background: none;
    cursor: pointer;
    padding: 10px;
}
.career-side-item {
    display: flex;
    flex-direction: column;
    text-decoration: none;
}
.career-categories a.is-active {
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 6px;
}
.career-categories a {
    border: 0;
    background: transparent;
    font: inherit;
    font-size: clamp(1.25rem, 1.8vw, 2rem);
    cursor: pointer;
    white-space: nowrap;
    padding-bottom: 3px;
}
.career-btn-search{
    color: white;
    background: #0049ff;
    border-radius: 8px;
    padding: 6px 20px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.career-page .career-tools {
    display: flex;
    /* grid-template-columns: 142px 142px 166px 112px minmax(230px, 408px) 112px; */
    /* gap: clamp(14px, 2.2vw, 44px); */
    gap: 15px;
    align-items: end;
    margin: 38px 0;
}
.career-pagination .page-numbers{
    padding: 7px 10px;
    background-color: #fff;
    border-radius: 5px;
}
.career-pagination .page-numbers.current{
    color: #fff;
    background: #0049ff;
}




.career-modal,
.service-modal{
    position:fixed;
    inset:0;

    display:flex;
    justify-content:center;
    align-items:center;

    background:rgba(0,0,0,.45);

    opacity:0;
    visibility:hidden;

    transition:.35s ease;

    z-index:99999;
}

.career-modal.is-open,
.service-modal.is-open{

    opacity:1;
    visibility:visible;

}

.career-modal-content,
.service-modal-content{

    background:#fff;

    width:min(900px,calc(100% - 40px));

    max-height:90vh;

    overflow:auto;

    border-radius:16px;

    padding:70px;

    position:relative;

    transform:translateY(30px) scale(.96);

    opacity:0;

    transition:.35s ease;

}

.career-modal.is-open .career-modal-content,
.service-modal.is-open .service-modal-content{

    transform:translateY(0) scale(1);

    opacity:1;

}

.career-modal-close,
.service-modal-close{

    position:absolute;

    right:15px;

    top:15px;

    border:0;

    background:none;

    cursor:pointer;

    font-size:32px;

}

.career-modal-overlay,
.service-modal-overlay{

    position:absolute;

    inset:0;

}
.about-content .about-copy .title-about{
    font-weight: 900;
}
.stat-num.plus{
    transform: translate(15px, 0);
}
.stat-num.cus-num{
    transform: translate(0, 0);
    font-size: 50px;
}
.stat-num.cus-num sup{
    margin-left: -10px;
}

.box-service strong, .box-service p{
    margin-bottom: 5px;
    display: block;
}
.box-service ul{
    margin-bottom: 30px;
    list-style: disc;
    padding-left: 30px;
}
.box-service{
    margin-bottom: 15px;
} 
.distribution-sub{
    color: var(--color-blue);
    margin: 0;
    font-size: 62px;
    font-weight: bold;
}
.achieve-copy h2{
    font-weight: 900;
    font-size: 80px;
}
.distribution h2 span{
    font-weight: 600;
}
.text-\[\#ff0653\] {
    display: block;
}

.tech-hero-grid .stats-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tech-service-cards.svc-4>.tsvc{
    /* aspect-ratio: 1/1; */
}
:is(.agency-services) .tsvc:not(.expandeded) .tsvc-foot{
    grid-template-rows: 2rem auto;
}
:is(.technology-services) .tsvc:not(.expandeded) .tsvc-foot{
    grid-template-rows: 5rem auto;
}
:is(.distribution-services) .tsvc:not(.expandeded) .tsvc-foot{
    grid-template-rows: 5rem auto;
}
.ratio-1-1 article{
    aspect-ratio: 1/1;
}
.agency-swiper .swiper-pagination{
    position: relative;
    margin-top: 20px;
}

.service-modal-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 20px;
    align-items: center;
}
.service-modal-content{
    padding: 20px;
}
.service-modal-content .tsvc-icon-img{
    height: auto;
    text-align: center;
}
.service-modal-content h3{
    font-size: 25px;
    color: #FF0653;
    margin-top: 20px;
}
.service-modal-content .tsvc-detail{
    font-size: 19px;
    color: #000000;
    list-style: disc;
    padding-left: 20px;
}

.service-modal-content .tsvc-icon-img img{
    object-fit: unset;
    object-position: unset;
    width: auto;
    height: auto;
}
.service-modal-content{
    width: min(550px, calc(100% - 40px));
}
.service-modal-close{
    top: -3px;
}
.tsvc{
    transition: 0.3s all ease;
    box-shadow: #b0b0b0 2px 2px 4px 3px;
}


:is(.technology-services,.agency-services,.distribution-services) .tsvc h3.text-yellow{
    /*height: 90px;*/
}
.technology-services .text-yellow{
    height: 57px;
}
.agency-services .text-yellow{
    height: 35px;
}
.brands-grid .stats-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.about-slide .brands-grid .stats-grid {
    /* grid-template-columns: repeat(3, minmax(0, 1fr)); */
}
.tsvc .tsvc-detail{
    display: none
}
.tsvc.expandeded .tsvc-desc{
    display: none;
}
.tsvc.expandeded .tsvc-detail{
    display: block;
}
.tsvc.expandeded .text-yellow{
    color: #0049FF;
}
.tsvc.expandeded .tsvc-detail ul{
    color: #000;
    list-style: disc;
    padding-left: 20px;
}
.tsvc.expandeded .tsvc-detail{
    color: #000;
}
.tsvc.expandeded .tsvc-detail p{
    color: #000;
    margin-bottom: 10px;
}
.tech-service-cards .tsvc.expandeded .tsvc-foot {
    display: block !important;
}
.tsvc.expandeded .text-yellow{
    display: none;
}
.text-yellow-mobile{
    display:none;
    margin-top: 15px;
    margin-bottom: 0;
}
.tsvc.expandeded .text-yellow{
    display:none;
}
.tsvc.expandeded .text-yellow-mobile{
    display:block;
}
.swiper-pagination{
    position: relative !important;
    margin-top: 20px;
}

.tech-service-cards.swiper {
    overflow: hidden;
    scroll-behavior: smooth;
    padding: 15px;
}

.tech-service-cards.swiper.expanded-scroll {
    overflow-x: auto;
    overflow-y: hidden;
}
.agency-services .text-yellow-mobile{
    color: #FF0653;
}
.tsvc {
    transition: width .35s ease;
}
.expanded-scroll::-webkit-scrollbar {
    display: none;
}
.swiper-button-next:after,
.swiper-button-prev:after{
    font-size: 25px !important;
}
.swiper-button-next{
    right: -35px !important;
    transform: translate(0px, 50%);
}
.swiper-button-prev{
    left: -35px !important;
    transform: translate(0px, 50%);
}
.box-swiper{
    position: relative;
}
.tech-service-cards .tsvc.expandeded .tsvc-icon-img {
    grid-area: media;
    align-self: end;
    width: 100%;
    height: auto;
    min-height: 0;
    text-align: center;
}
.tech-service-cards .tsvc.expandeded {
    text-align: left;
    background-color: #fff;
    grid-template:"media text""title text"/clamp(120px,12vw,165px) minmax(0,1fr);
    align-content: center;
    align-items: center;
    gap: 12px clamp(14px, 1.7vw, 30px);
    display: grid;
}
.tech-service-cards .tsvc.expandeded .tsvc-icon-img img {
    object-position: center;
    height: auto;
    max-height: 150px;
    transition: none;
    transform: none;
}
.distribution-services .text-yellow{
    color: var(--color-blue);
}
.expandeded .tsvc-foot{
    margin-top: 0;
    align-content: center;
}
.wpcf7-acceptance .wpcf7-list-item > label{
    gap: 10px;
    display: flex;
    align-items: baseline;
    margin-left: 8px;
    font-weight: normal;
}
.wpcf7-acceptance .wpcf7-list-item > label input[type="checkbox"]{
    width: 30px;
}
.wpcf7-acceptance .wpcf7-list-item > label > .wpcf7-list-item-label{
    font-size: 15px;
}
.applicatiion-title h4{
    text-transform: uppercase;
    font-size: 40px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--color-blue);
    margin-bottom: 40px;
}
.control-btn-career{
    display: flex;
    justify-content: end;
    gap: 20px;
    margin-top: 30px;
}
.career-btn-close, .control-btn-career #btn-contact-form{
    border: 1.5px solid var(--color-blue);
    border-radius: 3.40282e38px;
    padding: 4px 24px;
    line-height: 15px;
    color: var(--color-blue);
    height: 46px;
    font-weight: bold;
    font-size: 15px;
    cursor: pointer;
}
.control-btn-career #btn-contact-form{
    color: #fff;
    background-color: var(--color-blue);
    padding: 4px 40px;
    margin: 0;
}
.control-btn-career #btn-contact-form .btn-arrow{
    height: auto;
}
.btn-close{
    width: 50px;
}
.career-search input{
    color: #000;
    opacity: 1; 
}
.distribution .contact-message{
    background-color: var(--color-yellow);
    color: var(--color-blue);
}

.news-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}

/* bài đầu */
.news-grid .ncard-feature{
    grid-column:1 / span 2;
    grid-row:1 / span 2;
}

/* bài 2 */
.news-grid .ncard-small:nth-of-type(2){
    grid-column:3;
    grid-row:1;
}

/* bài 3 */
.news-grid .ncard-small:nth-of-type(3){
    grid-column:3;
    grid-row:2;
}

.article-copy h2{
    margin-top: 50px;
}
.ncard-small h2, .ncard-normal h2{
    font-size: clamp(1.05rem, 1.35vw, 1.35rem);
}
blockquote{
    margin: 34px 0;
    padding: 26px 28px;
    border-left: 5px solid var(--color-pink);
    background: #fff;
    box-shadow: 0 12px 30px rgba(0, 73, 255, 0.08);
}
blockquote strong{
    color: var(--color-pink);
    font-size: 1.15rem;
}
blockquote p:last-child{
    margin-top: 5px !important;
}
.ncard-feature img{
    aspect-ratio: auto;
}
.blog-swiper{
    padding-top: 10px !important;
}
.proj-empty{
    text-align: left;
}
.proj-card{
    cursor: pointer;
}
.sb-yellow .stat-divider,
.sb-white .stat-divider{
    background-color: var(--color-blue);
}
.sb-blue .stat-divider{
    background-color: var(--color-white);
}
label .require{
    color: red;
}
.team-role{
    height: 55px;
    font-size: 16px;
}
.technology-services .tsvc.expandeded .text-yellow-mobile{
    color: var(--color-blue);
}
.news-layout.blog{
    grid-template-columns: 1fr;
}
.article-shell.blog{
    grid-template-columns: auto;
}
.blog-card-body > p{
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-line-clamp: 5;
    max-height: 150px;
    -webkit-box-orient: vertical;
}
.tech-service-cards .tsvc.expanded{
    display: block;
}
.tsvc {
        height: auto !important;
    }
@media (min-width:768px){
    :is(.technology-services,.agency-services,.distribution-services) .tsvc .tsvc-desc{
        height: 115px;
    }
    .tech-service-cards .tsvc.expandeded{
        display: grid !important;
        height: auto;
    }
    .tsvc.expandeded{
        width:700px !important;
    }
    .swiper-pagination{
        display: none;
    }
}
@media (min-width: 567px) {
    
    .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .distribution-sub {
        font-size: 27px;
        line-height: 32px;
        margin: 10px 0;
    }
    
    
    
    
}
@media (max-width: 1200px) {
    .career-tools {
        grid-template-columns: repeat(3, 1fr) !important;
    }
    .career-search {
        grid-column: auto !important;
    }
    .career-detail-layout{
        display: flex !important;
        flex-direction: column;
    }
    .career-job-sidebar {
        order: 1;
    }
    #career-job-list{
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }
    .distribution-sub {
        font-size: 26px;
    }
    .stat-label {
        font-size: 22px;
    }
    .stat-num{
        font-size: 65px;
    }
}
@media (max-width: 991px) {
    .news-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
    .news-grid .ncard-feature {
        grid-column: auto;
        grid-row: auto;
    }
    .news-grid .ncard-small:nth-of-type(2) {
        grid-column: auto;
        grid-row: auto;
    }
    .news-grid .ncard-small:nth-of-type(3) {
        grid-column: auto;
        grid-row: auto;
    }
    .ncard-feature .ncard-excerpt{
        display: none;
    }
    .ncard-feature img {
        aspect-ratio: 16/9;
    }
    .ncard-feature .ncard-title {
        text-transform: unset;
        font-size: clamp(1.05rem, 1.35vw, 1.35rem);
    }
    .stat-label {
        font-size: 13px;
    }
    .stat-num{
        font-size: 50px;
    }
}
@media (max-width: 768px) {
    .news-see-more {
        padding: 6px 6px 6px 17px;
        font-size: 16px;
    }
    .swiper-button-next,
    .swiper-button-prev{
        display: none !important;
    }
    .tech-service-cards .tsvc.expandeded {
        text-align: center;
        flex-direction: column;
        gap: 0;
        display: flex;
    }
    .tech-service-cards .tsvc.expandeded .tsvc-icon-img {
        flex: auto;
        align-self: center;
        width: 100%;
    }
    .tech-service-cards .tsvc.expandeded .tsvc-foot {
        text-align: center;
        display: block;
    }
    
    .brands-grid .stats-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .stat-label {
        font-size: 13px;
    }
    .stat-num{
        font-size: 50px;
    }
    
}


@media (max-width: 567px) {
    
    .brands-grid .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .career-page .career-tools {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .stat-num.cus-num sup{
        margin-left: 0px;
    }
    .stat-num.plus {
        transform: translate(10px, 0);
    }
    /* Search */
    .career-page .career-search {
        grid-column: 2 / -1 !important;
    }

    .career-page .career-search input {
        width: 100%;
    }

    /* Button */
    .career-page .career-btn-search {
        grid-column: 1 / -1;
        width: 100%;
    }

    .career-page .career-tools label {
        width: 100%;
    }

    .career-page .career-tools select {
        width: 100%;
    }
    #career-job-list{
        display: grid;
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .news-grid {
        display: grid;
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 20px;
    }
    .stat-box{
        justify-content: center;
    }
    .stat-divider {
        margin: 10px auto;
    }
    .tsvc h3 {
        font-size: 17px !important;
        height: 90px;
    }
    .text-yellow-mobile{
        margin-top: 24px;
    }
    .distribution-services .text-yellow,
    .distribution-services .text-yellow-mobile,
    .technology-services .text-yellow,
    .technology-services .text-yellow-mobile{
        height: 50px !important;
    }
    
    .agency-services .text-yellow,
    .agency-services .text-yellow-mobile{
        height: 35px !important;
    }
}