.flex {display: flex;display: -webkit-flex;}
.flex-center {display: flex;display: -webkit-flex;align-items: center;}
.flex-center-center {display: flex;display: -webkit-flex;align-items: center;justify-content: center;}
.flex-center-end {display: flex;display: -webkit-flex;align-items: center;justify-content: flex-end;}
.flex-center-start {display: flex;display: -webkit-flex;align-items: center;justify-content: flex-start;}
.flex-center-between {display: flex;display: -webkit-flex;align-items: center;justify-content: space-between;}
.flex-end-end {display: flex; display: -webkit-flex; align-items: flex-end; justify-content: flex-end}
.flex-between {display: flex; display: -webkit-flex; justify-content: space-between}
.flex-end {display: flex; display: -webkit-flex; align-items: flex-end}
.inflex-center-center {display: inline-flex;display: -webkit-inline-flex;align-items: center;justify-content: center;}
.h_absolute {position: absolute;left: 0;top:0;z-index: 2;height: 100%;width: 100%}
.zoom {display: block;overflow: hidden;}  .zoom:hover img {transform: scale(1.1);-webkit-transform: scale(1.1);}
.zoom-img {position: relative; display: block}
.zoom-img:before {content: ''; display: block}
.zoom-img span {position: absolute; top: 0;bottom: 0;left: 0;right: 0; z-index: 2}
.zoom-img span img {object-fit: cover;height: 100%;width: 100%}
.radius-16, .radius-16 img {border-radius: 16px}
.radius-24, .radius-24 img {border-radius: 24px}
.font-weight-bold {font-weight: bold;}
.font-size-24 {font-size: 24px}
.out_item {
    overflow: hidden;
}
.out_item .zoom-img:before {
    padding-bottom: 35%;
}
.out_item span {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7));
    font-size: 24px;
    pointer-events: none;
}
.out_item:hover span {
    color: #FF5100;
}
.title_1 {
    font-size: 152px;
}
.title_2 {
    font-size: 70px;
    margin-bottom: 30px;
}
.item_still a {
    width: 230px;
    height: 140px;
    border-radius: 16px;
    background-color: #ff5100;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    align-content: center;
}
.item_still a span {
    order: 2;
    margin-top: 5px;
    width: 100%;
}
.item_service .zoom-img:before {
    padding-bottom: 135%;
}
.item_service .h_absolute {
    padding: 30px;
    background: rgba(16, 24,32, 0.75);
}
.phone_item {
    background-color: #fff;
    padding: 30px;
}
.phones {
    margin-top: 100px;
}
.phone_item:before {
    content: url('../images/icon-right.png');
    position: absolute;
    bottom: 20px;
    left: 100%;
    display: none;
}
.phone_item:hover {
    background: #ff5100;
    color: #fff;
}
.phone_item:hover:before {
    display: block;
}
.phone_list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 20px;
}
.phone_list:last-child .phone_item:before{
    left: unset;
    right: 100%;
    transform: rotate(-180deg);
}
.item_pro .zoom-img:before {
    padding-bottom: 60%;
}
.item_pro .zoom-img img {
    border-radius: 24px 24px 0 0;
}
.pro_cache {
    background: #101820;
    border-radius: 0 0 24px 24px;
    padding: 50px 30px 30px 30px;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
.pro_icon {
    background: #ff5100;
    border-radius: 50%;
    width: 64px;
    height: 64px;
    position: absolute;
    left: 50%;
    top: -32px;
    z-index: 2;
    transform: translate(-50%, 0);
}
.banner_item .zoom-img:before {
    padding-bottom: 34%;
}
.banner_item {
    border-radius: 0px 0px 64px 64px;
    overflow: hidden;
}
.banner_abs {
    position: absolute;
    top: 0;
    left: 0;            /* Hoặc right: 0 tùy bạn muốn canh lề nào */
    height: 100%;       /* Full chiều cao của div2 */
    aspect-ratio: 1 / 1; /* Bí quyết ở đây: Ép div1 luôn là hình vuông */
    z-index: 2;
    background: url("../images/corporate/bg-tron.png") no-repeat right;
    display: flex;
    align-items: center;
    padding: 30px;
}
.banner_content h2 {
    font-size: 48px;
    font-style: italic;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 30px;
}
.banner_content p {
    font-style: italic;
    line-height: 1.5;
}
.hotline_h {
    color: #ff5100;
    width: 240px;
    height: 48px;
    background: #FFFFFF;
    border-radius: 32px;
    margin-top: 30px;
}
.hotline_h img {
    margin-right: 10px;
}
.banner_flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.banner_flex > * {
    position: static;
}
.banner_arr {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 30px;
    z-index: 2;
}
@media screen and (min-width: 1201px) and (max-width: 1400px) {
    .title_1 {
        font-size: 100px;
    }
    .title_2 {
        font-size: 60px;
    }
}
@media screen and (min-width: 1200px) {
    #menu {
        display: none !important;
    }
}
@media screen and (max-width: 1199px) {
    #menu {
        display: none;
    }
    #menu.mm-menu_offcanvas.mm-menu_opened {
        display: block ;
    }
    .mm-menu {
        background: #ff5100;
        z-index: 99999;
    }
    .mm-listitem>a, .mm-menu .mm-navbar a, .mm-menu .mm-navbar>*, .mm-counter {
        color: #fff !important;
        text-transform: uppercase;
    }
    .mm-menu .mm-listview .mm-btn_next:after , .mm-menu .mm-btn:after, .mm-menu .mm-btn:before{
        border-color:  #ffff;
    }
    .mburger {
        --mb-button-size: 60px;
        --mb-bar-width: 0.6;
        --mb-bar-height: 4px;
        --mb-bar-spacing: 10px;
        --mb-cross-timeout: 0.4s;
        background: 0 0;
        border: none;
        border-radius: 0;
        color: #ff5100;
        display: inline-block;
        position: relative;
        box-sizing: border-box;
        height: var(--mb-button-size);
        padding: 0 0 0 var(--mb-button-size);
        margin: 0;
        line-height: var(--mb-button-size);
        vertical-align: middle;
        appearance: none;
        outline: 0;
        cursor: pointer;
    }
    #hamburger .mburger {
        margin-left: 0;
        --mb-button-size: 31px;
        --mb-bar-height: 2px;
        --mb-bar-width: 0.8;
        --mb-bar-spacing: 6px;
    }
    .mburger b {
        display: block;
        position: absolute;
        left: calc(var(--mb-button-size) * ((1 - var(--mb-bar-width))/ 2));
        width: calc(var(--mb-button-size));
        height: var(--mb-bar-height);
        border-radius: calc(var(--mb-bar-height)/ 2);
        background: currentColor;
        color: inherit;
        opacity: 1;
    }
    .mburger b:nth-of-type(1) {
        bottom: calc(50% + var(--mb-bar-spacing));
        transition: bottom .2s ease,transform .2s ease;
    }
    .mburger--collapse b:nth-of-type(1) {
        transition: bottom .2s ease,margin .2s ease,transform .2s ease;
        transition-delay: .2s,0s,0s;
    }
    .mburger b:nth-of-type(2) {
        top: calc(50% - (var(--mb-bar-height)/ 2));
        transition: opacity .2s ease;
    }
    .mburger--collapse b:nth-of-type(2) {
        transition: top .2s ease,opacity 0s ease, width ease 0.3s;
        transition-delay: .3s,.3s;
    }
    .mburger b:nth-of-type(3) {
        top: calc(50% + var(--mb-bar-spacing));
        transition: top .2s ease,transform .2s ease;
    }
    .mm-wrapper_opened .mburger b:nth-of-type(1) {
        bottom: calc(50% - (var(--mb-bar-height)/ 2));
        transform: rotate(
                45deg
        );
    }
    .mm-wrapper_opened .mburger--collapse b:nth-of-type(1) {
        bottom: calc(50% - var(--mb-bar-spacing) - var(--mb-bar-height));
        margin-bottom: calc(var(--mb-bar-spacing) + (var(--mb-bar-height)/ 2));
        transform: rotate(
                45deg
        );
        transition-delay: calc(var(--mb-cross-timeout) + .1s),calc(var(--mb-cross-timeout) + .3s),calc(var(--mb-cross-timeout) + .3s);
    }
    .mm-wrapper_opened .mburger--collapse b:nth-of-type(2) {
        top: calc(50% + var(--mb-bar-spacing));
        opacity: 0;
        transition-delay: calc(var(--mb-cross-timeout) + 0s),calc(var(--mb-cross-timeout) + .2s);
    }
    .mm-wrapper_opened .mburger--collapse b:nth-of-type(3) {
        top: calc(50% - (var(--mb-bar-height)/ 2));
        transform: rotate(
                -45deg
        );
        transition-delay: calc(var(--mb-cross-timeout) + .3s),calc(var(--mb-cross-timeout) + .3s);
    }
    .mburger--collapse b:nth-of-type(1), .mburger--collapse b:nth-of-type(3) {
        width: 28px;
    }
    .mburger--collapse b:nth-of-type(2) {
        width: 28px;
    }
    .mm-wrapper_opened .mburger--collapse b{
        width: 28px;
    }
    #hamburger:focus {
        color: #fff;
    }
    /*.mburger.mburger--collapse b {*/
    /*    transition: width ease 0.3s, top .2s ease,opacity 0s ease;*/
    /*}*/
    .mburger.mburger--collapse:hover b {
        width: 28px;
    }
    .mm-menu_fx-menu-zoom {
        transition: -webkit-transform .6s ease;
        transition: transform .6s ease;
        transition: transform .6s ease, -webkit-transform .6s ease;
    }
    .mm-wrapper_opened .mm-menu_fx-menu-zoom {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    .mm-wrapper_opening .mm-menu_fx-menu-zoom {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .header_lang {
        margin-right: 10px;
    }
    .lang img {
        border-radius: 50%;
        height: 24px;
        width: 24px;
        object-fit: cover;
    }
    .title_1 {
        font-size: 32px;
        margin-bottom: 20px;
    }
    .title_2 {
        font-size: 32px;
        margin-bottom: 20px;
    }
    .pro_cache {
        font-size: 16px;
    }
    .banner_abs {
        display: none;
    }
    .banner_item .zoom-img:before {
        padding-bottom: 50%;
    }
    .item_service .zoom-img:before {
        padding-bottom: 100%;
    }
    .phones {
        margin-top: 20px;
    }
    .phone_list {
        row-gap: 0;
    }
}



.sub-translate {
    display: block;
    background: transparent;
    position: absolute;
    right: 0;
    top: 25px;
    width: 120px;
    padding: 8px 0;
    z-index: 10;
    pointer-events: none;
    opacity: 0;
    transition: .3s all !important;
}

.sub-translate ul {
    padding: 8px 0;
    background: #101820;
}

.sub-translate a {
    display: block;
    padding: 6px 20px;
    color: #fff;
    text-align: right;
    
}

.translate-head:hover .sub-translate {
    opacity: 1;
    pointer-events: unset;
}

.submenu a {
    align-items: center;
}

.item_pro {
    height: 100%;
    background: #101820;
    border-radius: 20px;
    overflow: hidden;
}

.filter-hot-deals {
    background: #fff;
    border-radius: 20px;
    height: auto;
}

.item-package-bunder {
    flex-direction: column;
    justify-content: space-between;
    gap:  16px;
}

@media (max-width:  767px) {
    .item-package-bunder {
        gap: 4px;
    }
}

.z-10 {
    z-index: 10;
}

.item-launch .desc-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 16px;
    transition: .4s all !important;
    opacity: 0;
    pointer-events: none;
}

.item-launch:hover .desc-hover {
    opacity: 1; 
    pointer-events: unset;
}

.item-launch:hover .desc {
    opacity: 0; 
}

.item-launch .desc-hover  h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 12px;
}

.item-launch .desc-hover p {
    margin-bottom: 12px;
}

.item-launch .desc-hover p:last-child {
    margin: 0;
}

.item-launch .desc-hover .desc-txt {
    padding: 16px;
    background: rgb(255 255 255 / 80%);
    border-radius: 16px;
    height: 100%;
    line-height: normal;
}

@media (max-width:  1600px) {
    .item-launch .desc-hover {
        font-size: 14px;
    }
    .item-launch .desc-hover  h3 {
        font-size: 18px;
    }

}
@media (max-width:  1400px) {
    .item-launch .desc-hover {
        font-size: 14px;
        display: none;
    }
}

.block-support-fiber {
    display: flex;
    width: 100%;
    padding: 24px 0;
    background: #fff;
    box-shadow: 0px 0px 12px 0px #00000026;
    border-radius: 24px;
    color: #333333;
}

.block-support-fiber .item-sp {
    flex: 0 0 50%;
    max-width: 50%;
    border-right: 2px solid #dbdbdb;
    padding: 0 24px;
}

.block-support-fiber .item-sp:last-child {
    border: 0;
}

.block-support-fiber .item-sp .desc {
    padding-right: 48px;
}

.block-support-fiber .item-sp .icon {
    position: absolute;
    top: 0;
    right: 24px;
}

.block-support-fiber .item-sp h3 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 8px;
}

.box-guideline {
    height: 100vh;
    overflow: hidden;
    background: #FF5100;
}

.content-guideline {
    height: 100%;
    display: flex;
}

.guide-left {
    color: #fff;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 52px;
    flex: 0 0 34%;
    max-width: 34%;
    position: relative;
}

.guide-left .icon-abs {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.guide-left .icon {
    margin-bottom: 40px;
}

.guide-left .icon svg {
    display: inline;
}

.guide-left .desc {
    font-size: 32px;
    font-weight: 600;
}

.guide-right {
    flex: 0 0 66%;
    max-width: 66%;
    position: relative;
    background: #fff;
    box-shadow: 0px 0px 24px 0px #00000026;
    overflow: hidden;
    padding: 24px 32px;
    border-radius: 64px 0 0 64px;
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.gallery-guide {
    padding: 24px 0;
}

.title-guide {
    color: #FF5100;
    font-size: 32px;
    font-weight: bold;
    font-style: italic;
}

.title-guide span {
    color: #F69E91;
}

.item-gallery-guide {
    margin-bottom: 24px;
}

.item-gallery-guide:last-child {
    margin-bottom: 0;
}

.t-guide {
    margin-bottom: 8px;
}

.t-guide span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(84.52deg, #FF5100 -19.22%, #FCC446 100%);
    color: #fff;
    padding: 6px 24px;
    border-radius: 32px;
    font-size: 20px;
    font-weight: 600;
}

.item-gallery-guide img {
    border-radius: 12px;
    max-height: 16.5vh;
    object-fit: cover;
}

.button-event-halofiber a {
    display: flex;
    align-items: center;
    padding: 6px;
    border-radius: 40px;
    color: #fff;
}

.button-event-halofiber a svg {
    margin-right: 8px;
}

.button-event-halofiber a span strong {
    font-weight: bold;
}

.box-qrlink {
    background: #FF5100;
    padding: 64px 0;
    min-height: 100vh;
}

.box-qrlink .top {
    color: #fff;
    margin-bottom: 32px;
}

.box-qrlink .top h1 {
    font-size: 48px;
    font-style: italic;
    font-weight: bold;
    margin-top: 32px;
}

.box-qrlink .top .logo img {
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}

.head-qr {
    margin-bottom: 32px;
    color: #FF5100;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
}

.head-qr span {
    color: #F69E91;
}

.desc-recommendations {
    color: #46CB18;
    padding: 16px 20px;
    border: 1px solid #46CB18;
    border-radius: 16px;
}

.desc-recommendations p {margin-bottom: 6px;}

.desc-recommendations p:last-child {
    margin: 0;
}

.block-title-recommend {
    font-size: 24px;
    font-weight: bold;
    height: 100%;
    width: 100%;
    color: #fff;
    text-align: center;
    padding: 20px;
    overflow: hidden;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.block-title-recommend span {
    display: block;
    font-size: 16px;
    font-weight: normal;
}

.text-bottom-qr {
    font-size: 16px;
    color: #fff;
    font-style: italic;
}

.text-bottom-qr strong {
    font-weight: bold;
}

@media (max-width: 1600px) {
    .box-qrlink .top h1 {
        font-size: 40px;
    }
}

@media (max-width:  1400px) {
    .title-guide {
        font-size: 28px;
    }

    .t-guide span {
        font-size: 18px;
    }
    .guide-left .desc {
        font-size: 28px;
    }
    .guide-left .icon svg {
        width: 100px;
        height: auto;
    }
    .guide-left .icon {
        margin-bottom: 20px;
    }
    .guide-left {
        padding: 32px;
    }
    .button-event-halofiber a {
        font-size: 14px;
    }
}

@media (max-width:  1200px) {
    .block-support-fiber .item-sp h3 {
        font-size: 20px;
    }
    .guide-left .desc {
        font-size: 24px;
    }
    .button-event-halofiber a span strong {
        display: block;
    }
    .box-qrlink .top h1 {
        font-size: 32px;
    }
}

@media (max-width: 1023px) {
    .content-guideline {
        flex-direction: column;
        justify-content: space-between;
        height: auto;
        min-height: 100vh;
        overflow: auto;
    }

    .guide-left {
        max-width: 100%;
    }

    .guide-right {
        max-width: 100%;
        border-radius: 0;
    }

    .box-guideline {
        min-height: 100vh;
        height: auto;
    }

    .box-qrlink {
        padding: 48px 0;
    }

    .box-qrlink .top h1 {
        font-size: 24px;
    }

    .box-qrlink .top .logo img {
        max-height: 48px;
    }

    .head-qr {
        font-size: 20px;
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .block-support-fiber {
        display: block;
    }

    .block-support-fiber .item-sp {
        border: 0;
        max-width: 100%;
    }

    .block-support-fiber .item-sp:first-child {
        margin-bottom: 16px;
        padding-bottom: 16px;
        border-bottom: 1px solid #dddddd;
    }

    .block-support-fiber .item-sp h3 {
        font-size: 16px;
    }

    .content-guideline {
        display: block;
    }

    .box-guideline {
        min-height: unset;
    }

    .guide-left {
        padding: 24px;
    }

    .guide-left .icon svg {
        width: 64px;
    }

    .guide-left .desc {
        font-size: 18px;
    }

    .guide-right {
        padding: 24px;
    }

    .title-guide {
        font-size: 20px;
    }

    .t-guide span {font-size: 12px;}

    .item-gallery-guide img {
        border-radius: 8px;
        max-height: unset;
    }

    .button-event-halofiber a {
        font-size: 12px;
    }

    .box-qrlink .top h1 {
        font-size: 16px;
        margin-top: 16px;
    }

    .box-qrlink {
        padding: 32px 0;
    }

    .box-qrlink .top .logo img {
        height: 36px;
    }

    .box-qrlink .top {
        margin-bottom: 24px;
    }

    .head-qr {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .text-bottom-qr {
        font-size: 12px;
    }

    .desc-recommendations {
        padding: 16px;
        font-size: 12px;
    }
}
