@font-face {
    font-family: 'SVN-Gilroy';
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.eot');
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.eot?#iefix') format('embedded-opentype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.woff2') format('woff2'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.woff') format('woff'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.ttf') format('truetype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyMedium.svg#SVN-Gilroy/SVN-GilroyMedium') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.eot');
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.eot?#iefix') format('embedded-opentype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.woff2') format('woff2'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.woff') format('woff'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.ttf') format('truetype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-Gilroy.svg#SVN-Gilroy/SVN-Gilroy') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.eot');
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.eot?#iefix') format('embedded-opentype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.woff2') format('woff2'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.woff') format('woff'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.ttf') format('truetype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.svg#SVN-Gilroy/SVN-GilroyBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.eot');
    src: url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.eot?#iefix') format('embedded-opentype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.woff2') format('woff2'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.woff') format('woff'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.ttf') format('truetype'),
        url('/wp-content/fonts/SVN-Gilroy/SVN-GilroyBold.svg#SVN-Gilroy/SVN-GilroyBold') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'UVNBachDangNangItalic';
    src: url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.eot');
    src: url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.eot?#iefix') format('embedded-opentype'),
        url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.woff2') format('woff2'),
        url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.woff') format('woff'),
        url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.ttf') format('truetype'),
        url('/wp-content/fonts/SVN-Gilroy/UVNBachDangNangItalic.svg#UVNBachDangNangItalic/UVNBachDangNangItalic') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html {
    margin-top: 0 !important;
}

body {
    font-family: 'SVN-Gilroy', sans-serif;
    color: #111827;
    overflow-x: hidden;
}

a {
    text-decoration: none;
}

a,
p,
span,
i,
h1,
h2,
h3,
h4,
h5,
h6,
svg,
path,
circle,
img {
    color: #000;
    /*    transition: all .2s ease;*/
    transition: transform .3s, border .3s, background .3s, box-shadow .3s, opacity .3s, color .3s;
}

a:focus-visible {
    border: none;
    outline: none;
}

p {
    font-weight: 400;
    font-size: 16px;
}

p:empty {
    /*    margin-bottom: 1rem;*/
}

img,
video,
iframe {
    max-width: 100%;
}

img {
    max-width: 100%;
    -webkit-transition: ease-out0.6s;
    -moz-transition: ease-out 0.6s;
    -o-transition: ease-out 0.6s;
    transition: ease-out0.6s;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
}

ul {
    margin-bottom: 0;
}

ul li {
    list-style: none;
    display: inline-block;
}

input:hover,
input:active,
input:focus,
input:focus-visible,
button:hover,
button:active,
button:focus,
button:focus-visible {
    border: none;
    outline: none;
}

button#navbar-toggler {
    display: none;
}

span.rank-math-text,
span.display-name {
    color: #fff;
}

.fixed-top {
    /*    backdrop-filter: saturate(180%) blur(8px);*/
    /*    background: rgb(255 255 255 / 80%) !important;*/
    box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 15px;
}

.font-bd {
    font-family: 'UVNBachDangNangItalic', serif;
}

.justify-center {
    justify-content: center;
}

.align-center {
    text-align: center;
}

.fw-400 {
    font-weight: 400;
}

.fw-500 {
    font-weight: 500;
}

.pr-0 {
    padding-right: 0;
}

.bg-red {
    background: #ED1B24;
}

nav#navbar {
    background: #fff;
    padding: 0 !important;
    z-index: 9999;
    height: 115px;
    position: fixed;
    margin: 0 auto;
    width: 100%;
}

.shadow-header {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 15px;
}

main#main {
    padding-top: 115px;
}

.mega-menu {
    position: absolute;
    left: 0;
    width: 100%;
    top: 100%;
    background: white;
    display: none;
    padding: 20px;
    z-index: -1;
    box-shadow: 0px 20px 20px 0px #00000040;
    animation: fadedownoutmenu .4s ease-in-out 0s forwards;
}

.mega-menu::before {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    overflow: hidden;
    border-top: 0;
    top: 0;
    left: 0;
}

.mega-menu>.container {
    padding: 40px 0 25px;
}

li.nav-item {
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.nav-item:hover .mega-menu {
    display: block;
    animation: fadedownmenu .4s ease-in-out 0s forwards;
}

.nav-item:hover .mega-menu::before {
    border-top: 1px solid #D9D9D9;
}

.close-icon {
    width: 46px;
    cursor: pointer;
}

.close-icon svg {
    opacity: 0;
    display: none;
}

.search-close .close-icon svg {
    display: block !important;
    animation: search_button_anim .4s ease-in-out 0s forwards;
}

#search-btn:hover,
#search-btn:active,
#search-btn:focus,
#search-btn:focus-visible {
    border: none;
    outline: none;
}

.search-box {
    background: #fff;
    position: fixed;
    top: 95px;
    left: 0;
    right: 0;
    text-align: left;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.05);
    padding: 60px 0;
    z-index: 99;
    visibility: hidden;
    max-height: 0;
    transition: all .4s;
    animation: fadedownout .4s ease-in-out 0s forwards;
    max-height: 174px;
    border-top: 1px solid #D9D9D9;
}

.search-box-active {
    visibility: inherit;
    max-height: 174px;
    animation: fadedown .4s ease-in-out 0s forwards;
    z-index: 99;
}

.search-box form {
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

input.input-search {
    font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0px;
    border: 0;
    text-align: left;
    width: 85%;
    color: #ACACAC;
}

button.btn-icon-search svg path {
    stroke: #ED1B24;
}

button.btn-icon-search {
    border: 0;
    background: #fff;
}

.flickity-button {
    background: none;
}

.product-list-pc .flickity-button svg path {
    fill: #d9d6d6;
}

.main-carousel .flickity-button {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.main-carousel:hover .flickity-button {
    opacity: 1;
    visibility: visible;
}

.section-1 .carousel-cell {
    width: 100%;
}

.section-1 .flickity-button svg path {
    fill: #fff;
}

.flickity-button:hover {
    background: transparent;
}

.bi-chevron-right {
    color: #ED1B24;
    font-size: 14px;
    font-weight: bold;
    margin-left: 12px;
    filter: drop-shadow(0px 1px 0px #ED1B24);
    opacity: 0;
    transform: translateX(-5px);
    transition: all .4s;
}

.mega-menu ul {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

.mega-menu ul li {
    padding: 2px 0 8px;
}

.mega-menu ul li a {
    display: block;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
}

.mega-menu-content {
    display: block;
    margin: 0 auto;
    padding: 0;
}

.nav-item:hover .mega-menu .bi-chevron-right {
    animation: g_nav_load_arrow 1s ease-in-out 2;
}

.mega-menu-content h5:focus .bi-chevron-right,
.mega-menu-content h5:hover .bi-chevron-right {
    color: #FF0000;
    opacity: 1;
    transform: translate(0, 0);
}

.menu-content {
    padding-top: 0;
}

.menu-content h5 a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: #333 !important;
    font-weight: 500 !important;
    font-size: 25px !important;
    border-bottom: 1px solid #ccc;
    transition: all .2s;
    padding-bottom: 20px;
    position: relative;
    cursor: pointer;
}

.mega-menu-content h5 a:after {
    content: "";
    display: inline-block;
    background-image: url("../images/hover_arrow_red.svg");
    background-size: contain;
    background-repeat: no-repeat;
    min-width: 8px;
    width: auto;
    height: 13px;
    margin-left: 15px;
    opacity: 0;
    transform: translateX(-5px);
    transition: all .4s;
}

.menu-content h5 a {
    padding-left: 0 !important;
}

.menu-content h5 a:hover {
    will-change: transform;
    transform: scale(1) !important;
}

.mega-menu-list-wrap {
    display: flex;
    padding: 10px 0;
}

button#search-btn {
    position: relative;
    z-index: 9;
}

.form-control:focus {
    border-color: #d6d6d6;
    outline: 0;
    box-shadow: unset;
}

.offcanvas-start {
    width: 250px;
}

ul.navbar-nav {
    gap: 2rem;
    height: 55px;
    background: #fff;
}

ul.navbar-nav li a {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #000;
    will-change: transform;
}

ul.navbar-nav li a:hover {
    transform: scale(1.05);
    color: #ED1B24 !important;
}

.flickity-page-dots {
    bottom: 25px;
}

.flickity-page-dots .dot {
    background: #F2F2F2;
    opacity: 1;
}

.flickity-page-dots .dot.is-selected {
    background: #ED1B24;
}

.bg-pink {
    background: #FFEEEF;
}

.bg-pink-2 {
    background: #F4F4F4;
}

.overhidden {
    overflow: hidden;
}

.card {
    height: 100%;
    border: none;
    overflow: hidden;
    border-radius: 20px;
    box-shadow: 0px 2.98px 59.57px 0px #00000014;
}

.left-box,
.right-box {
    display: flex;
    flex-direction: column;
}

.main-card {
    flex-grow: 1;
}

.small-card .overhidden {
    position: relative;
    padding-top: 65%;
}

.small-card img {
    bottom: 0;
    font-family: "object-fit: cover;";
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.row-equal>div {
    display: flex;
    flex-direction: column;
}

.language li a.active,
.language-mb a.active {
    color: #B7B7B7 !important;
}

.language li a,
.language-mb a {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #000;
    margin-left: 6px;
}

.language li:first-child a,
.language-mb a:first-child {
    margin: 0;
}

.desc-banner {
    position: absolute;
    top: 20%;
    z-index: 9;
    width: 50%;
    left: 0;
    height: auto;
    padding: 2% 5% 2.5%;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    text-align: left;
}

.desc-banner::before {
    background: #FC0013;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    left: 0;
    height: 100%;
    content: '';
    opacity: 0.8;
}

.desc-banner.bg-2 {
    top: 21%;
    z-index: 9;
    width: 40%;
    left: 54%;
    height: auto;
    padding: 2% 5%;
}

.desc-banner.bg-2::before {
    background: #fff;
}

.desc-banner>* {
    color: #fff;
}

.desc-banner.bg-2>* {
    color: #000;
}

.box-image-banner h3.title-big {
    font-size: 55px;
    font-weight: 400;
}

.detail-banner {
    font-size: 26px;
    line-height: 40px;
}

.btn-default {
    display: inline-block;
    padding: 16px 35px;
    border-radius: 25px;
    border: 1.5px solid #fff;
    background: #ED1B24;
    font-size: 16px;
    font-weight: 700;
    line-height: 18px;
    text-align: right;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #fff;
    width: auto;
}

.btn-second {
    display: inline-block;
    padding: 16px 18%;
    border-radius: 100px;
    border: 1.5px solid #fff;
    background: #ED1B24;
    font-size: 16px;
    font-weight: 600;
    line-height: 18px;
    text-align: right;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #fff;
    width: auto;
}

.btn-default:focus-visible,
.btn-default:hover,
.btn-second:focus-visible,
.btn-second:hover,
.btn-file:hover,
.has-btn a:hover,
a.btn-arr:hover,
a.btn-contact:hover {
    will-change: transform;
    transform: scale(1.1) !important;
}

.btn-default:hover svg path,
.btn-second:hover svg path {
    /*    stroke: #000 !important;*/
}

.hover-shadow:hover {
    box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .2);
    outline: none;
}

.item-candy h3 a,
.new-product h3 {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    text-align: center;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    margin-top: 20px;
    margin-bottom: 0;
}

.item-candy h3 a {
    top: 10px;
    position: relative;
}

.pointer {
    cursor: pointer;
}

.item-candy img {
    display: block;
    margin: 0 auto;
}

.item-candy .img-hover {
    display: none;
    opacity: 0;
}

.item-candy:hover .img-hover {
    display: block;
    opacity: 1;
}

.item-candy:hover .img-nohover {
    display: none;
}

.item-candy:hover h3 a,
.new-product:hover h3 a,
.card:hover h5.card-title a,
.card:hover h6.card-title a {
    color: #ED1B24;
}

.box-title {
    text-align: center;
    margin-bottom: 3rem;
}

.box-title h2 {
    font-size: 32px;
    font-weight: 700;
    line-height: 60.5px;
    text-align: center;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #000;
    position: relative;
}

.box-title h2::after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 5px;
    background: url('../images/underline.svg') no-repeat top center;
    top: 95%;
}

.product-list-pc {
    width: 100%;
    /* Đảm bảo đủ không gian */
}

.product-list-pc .flickity-prev-next-button.previous {
    left: -10px;
}

.product-list-pc .flickity-prev-next-button.next {
    right: -10px;
}

.product-list-pc .carousel-cell {
    width: calc(100% / 5);
    /* Chia đều 5 item */
    height: 385px;
    /* Tuỳ chỉnh chiều cao */
    display: flex;
    align-items: center;
    justify-content: center;
}

.new-product {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding-bottom: 55px;
}

img.new-img {
    max-width: 72px;
    position: relative;
    z-index: 99;
}

.has-hover:hover a .image-zoom,
a .has-hover:hover .image-zoom {
    transform: scale(1.1);
}

img.product-img {
    max-height: 235px;
    height: 235px;
    object-fit: contain;
}

.right {
    float: right;
}

.new-product h3 {
    margin-top: 1rem;
    position: absolute;
    bottom: -15px;
    display: flex;
    flex-direction: row;
    text-align: center;
    display: block;
    width: 100%;
    height: 50px;
}

.bg-gray {
    position: relative;
}

.bg-gray::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #FFE6E6E5 url(../images/bg_dot.png) repeat top left;
    opacity: 0.25;
    z-index: -1;
}

.box-color {
    background-blend-mode: multiply;
    width: 80%;
    height: 80%;
    border-radius: 20px;
    position: absolute;
    bottom: 0;
    background-size: 100% 100%;
}

.relative {
    position: relative;
}

.box-color-img {
    height: 410px;
}

.box-color-img img {
    position: absolute;
    width: 80%;
    height: 80%;
    border-radius: 20px;
    top: 6%;
    left: 10%;
}

.fulfill {
    width: 100%;
    height: 100%;
}

.content-candy {
    position: absolute;
    bottom: 15px;
    width: 90%;
    left: 5%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
}

.content-candy img {
    width: 26px;
    height: 42px;
    position: relative;
    top: -3px;
    left: 0px;
    border-radius: 0;
}

.line {
    width: 45%;
    height: 1px;
    border-top: 1px solid #fff;
    position: relative;
    bottom: -8px;
    left: -12px;
}

.content-candy span {
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0px;
    text-align: center;
    position: relative;
    bottom: -8px;
    color: #fff;
}

.align-items-center {
    align-items: center;
}

p.text-muted {
    color: #737865;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
}

h5.card-title a,
h6.card-title a {
    font-weight: 600;
    font-size: 20px;
    line-height: 26px;
    letter-spacing: 0px;
    color: #2C2F24;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

p.card-text {
    color: #414536;
    padding-bottom: 6px;
}

.bg-contact {
    background: #FFE6E6E5 url(../images/bg_contact.jpg) no-repeat top center;
    background-size: cover;
}

.box-info {
    width: 48%;
    border-radius: 20px;
    background: #FFFFFFC9;
    padding: 3% 8% 5%;
}

.box-info:hover {
    transform: scale(1.06) !important;
    will-change: transform;
}

.c-block {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
}

.f-big {
    font-family: 'SVN-Gilroy';
    font-weight: 400;
    font-size: 38px;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: center;
    position: relative;
    left: 12px;
}

.box-social a {
    margin: 0 5px;
    display: inline-block;
}

.box-social a:hover {
    transform: scale(1.06) !important;
    will-change: transform;
}

/*.box-social a svg:hover circle {
    fill: #636363;
}*/
.c-footer-list ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 5%;
}

.c-footer-list ul li {
    will-change: transform;
    transition: transform .3s, border .3s, background .3s, box-shadow .3s, opacity .3s, color .3s;
}

.c-footer-list ul li a {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #474747;
}

.c-footer-list ul li:hover {
    transform: scale(1.05);
    will-change: transform;
}

.c-footer-list ul li a:hover {
    transform: scale(1.05);
    color: #ED1B24;
}

.c-copyright {
    font-weight: 500;
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: center;
}

.navbar-toggler {
    border: 0;
    padding: 0;
}

.navbar-toggler span {
    color: #000;
}

.navbar-toggler:focus,
.navbar-toggler:focus-visible,
.navbar-toggler span:focus,
.navbar-toggler span:focus-visible {
    border: none;
    outline: none;
    box-shadow: unset;
}

.hidden-pc {
    display: none;
}

.back-to-top {
    position: fixed;
    bottom: 55px;
    right: 25px;
    display: none;
    z-index: 1000;
    background: #ED1B24;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
    border: 1px solid #fff;
    border-radius: 50%;
    width: 47px;
    height: 47px;
    padding: 0;
}

button#backToTop i {
    color: #fff;
    font-size: 25px;
}

.back-to-top:hover,
.back-to-top:active,
.back-to-top:focus-visible,
.back-to-top:focus {
    background: #ED1B24 !important;
    transform: scale(1.06) !important;
    will-change: transform;
    border: 1px solid #fff !important;
    outline: none;
    box-shadow: unset;
}

.pl-5p {
    padding-left: 5%;
}

.pr-5p {
    padding-right: 5%;
}

.box-title-thin h2 {
    text-align: center;
    font-weight: 400;
    font-size: 40px;
    line-height: 50px;
}

a.btn-policies {
    border: 1px solid #FF0013;
    border-radius: 20px;
    width: 90%;
    height: 105px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin-bottom: 20px;
    font-weight: 500;
    font-size: 20px;
    line-height: 29px;
    letter-spacing: 0px;
    text-align: center;
    color: #ED1B24;
    padding: 0 15%;
    background: #fff url('../images/arrow-right.svg') no-repeat 96% 50%;
    position: relative;
    overflow: hidden;
}

a.btn-policies::before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    display: block;
    width: 100%;
    height: 105%;
    background-color: #DB3833;
    border-radius: 9px;
    transform: scaleX(0);
    transform-origin: left;
    transition: all .3s;
    transition-property: transform;
}

a.btn-policies:hover {
    transition: color .3s, transform .3s, transform-origin .3s, background-image .5s, box-shadow 1s;
    color: #fff;
    opacity: 1;
    text-decoration: none;
    box-shadow: 0 0 0 1px #DB3833 inset;
    /*    z-index: 0;*/
    background: url('../images/arrow-right-white.svg') no-repeat 96% 50%;
}

a.btn-policies:hover::before {
    transform: scaleX(1);
    transform-origin: left;
    z-index: -1;
}

a.btn-policies.active {
    color: #fff;
    background: #ED1B24 url('../images/arrow-right-white.svg') no-repeat 96% 50%;
}

/*a.btn-policies:hover {
    will-change: transform;
    transform: scale(1.05) !important;
}*/
.box-breadcrumb {
    height: 38px;
    background: #F8F8F8;
}

.box-breadcrumb ul {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    padding-left: 5%;
}

.box-breadcrumb ul li svg {
    margin: 0 15px 0 5px;
}

.box-breadcrumb ul li a.active {
    color: #ED1B24;
}

.box-shadow {
    box-shadow: 0px 3px 25px 1px #0000001A;
}

.short-line,
.short-line-2 {
    position: relative;
}

.short-line::before {
    content: '';
    position: absolute;
    width: 2px;
    height: 125px;
    background: #FF0013;
    display: block;
    top: 13px;
    left: -25px;
    z-index: 9;
}

.short-line-2::before {
    content: '';
    position: absolute;
    width: 2px;
    height: 125px;
    background: #FF0013;
    display: block;
    top: 10px;
    left: 0;
    z-index: 9;
}

.box-company {
    width: 100%;
}

.row-company {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    height: 70px;
    border-bottom: 1px solid #D9D9D9;
    font-size: 20px;
}

.row-company:last-child {
    border: none;
}

.key {
    width: 390px;
}

a.btn-file {
    background: #ED1B24;
    padding: 15px 55px;
    display: inline-block;
    margin-top: 2rem;
    color: #fff;
    font-size: 18px;
    border-radius: 50px;
    font-weight: 700;
}

.box-desc2 p {
    font-size: 22px;
    font-weight: 400;
    line-height: 35px;
}

.box-item {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 4rem;
}

.detail-box,
.detail-box-large p {
    font-size: 22px;
    font-weight: 400;
    line-height: 35px;
}

.detail-box-large p,
.fs-20 p {
    margin-bottom: 0.5rem;
}

.detail-box-large h5 {
    font-size: 24px;
    font-weight: 500;
    line-height: 35px;
    margin: 0;
}

.detail-box-large li {
    font-size: 20px;
    font-weight: 400;
    line-height: 35px;
}

.detail-box ul,
.detail-box-large ul {
    margin-bottom: 30px;
}

.detail-box ul li,
.detail-box-large li,
.post-content ul li,
.text-left ul li,
.description-step ul li,
.description-step-mb ul li {
    list-style: disc;
    display: list-item;
}

.info-item {
    width: 49%;
    padding-right: 5%;
}

.image-item {
    width: 51%;
}

.info-item:nth-child(2n) {
    padding-right: 0;
    padding-left: 8%;
}

.pl-40 {
    padding-left: 40px;
}

.w80 {
    width: 80%;
}

.m-auto {
    margin: 0 auto;
}

.gx-6 {
    --bs-gutter-x: 4rem;
}

.detail-box p {
    font-size: 20px;
}

.w55p {
    width: 55%;
}

.w41p {
    width: 41%;
}

.about-iteam {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 4rem;
}

.accordion-header {
    position: relative;
}

.accordion-button::after {
    display: none;
}

#listFaq {
    border: 0;
    background: transparent;
    border-radius: 0;
}

#listFaq .accordion-item {
    box-shadow: 0px 10px 30px 0px #0000000D;
    margin-bottom: 1.5rem;
    border-radius: 12px !important;
    border: 0;
    overflow: hidden;
}

#listFaq .accordion-item:nth-child(n+9) {
    display: none;
    /* Ẩn các div từ thứ 9 trở đi */
}

#listFaq .accordion-item.show {
    display: block;
}

button.show-more-faq {
    display: inline-block;
    margin: 0 auto;
    border: 0;
    background: none;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    color: #9C9C9C;
    padding: 0 0 100px;
    position: relative;
}

button.show-more-faq::before {
    content: '';
    width: 23px;
    height: 10px;
    background: url('../images/show.svg') no-repeat top center;
    position: absolute;
    top: 33px;
    left: calc(50% - 12.5px);
}

.accordion-button:focus,
.accordion-button:not(.collapsed) {
    border: 0;
    box-shadow: none;
    background: transparent;
}

.accordion-item .accordion-button {
    border-radius: 12px !important;
    font-weight: 600;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0px;
    padding-right: 70px;
}

.accordion-body {
    padding-top: 0;
    font-weight: 400;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0px;
    color: #606267;
    padding-right: 75px;
}

#listFaq .accordion-item:last-of-type {
    margin-bottom: 0;
}

.accordion-button::before {
    font-family: "bootstrap-icons";
    content: "\F4FE";
    font-size: 1.8rem;
    transition: transform 0.2s ease-in-out;
    position: absolute;
    right: 30px;
    border: 1px solid #EAECF0;
    width: 28px;
    height: 28px;
    border-radius: 100px;
    color: #000;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-weight: 100;
    line-height: 1.8rem;
}

.accordion-button:not(.collapsed)::before {
    content: "\F2EA";
    background: #ED1B24;
    color: #fff;
    line-height: 1.8rem;
}

.accordion-button:not(.collapsed) {
    color: #000;
}

.info-contact .row-info {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 1rem;
}

span.title-info {
    width: 45%;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0px;
}

span.desc-info {
    width: 53%;
    font-size: 16px;
    line-height: 24px;
}

.wpcf7-form {
    box-shadow: 0px 8px 24px 0px #1211111F;
    border-radius: 12px;
    padding: 2rem 2rem 1rem 2rem;
    position: relative;
    background: #fff;
}

.row-input {
    display: flex;
    width: 100%;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    align-content: flex-start;
}

.item-input {
    width: 100%;
    margin-bottom: 0;
}

.item-input p {
    margin-bottom: 0px;
}

.item-input input,
.item-area textarea {
    width: 100%;
    border-radius: 6px;
    border-width: 1px;
    border: 1px solid #D9D9D9;
    padding: 8px 15px;
}

.item-input label,
.item-area label {
    display: block;
    font-weight: 600;
    font-size: 16px;
    line-height: 16.8px;
    letter-spacing: 0px;
    margin-bottom: 8px;
    width: 100%;
}

.item-input label span,
.item-area label span {
    font-weight: 600;
    font-size: 16px;
    line-height: 16.8px;
    letter-spacing: 0px;
    color: #ED1B24;
    display: inline-block;
    margin-left: 5px;
}

.item-area {
    width: 100%;
}

.item-area textarea {
    resize: none;
    max-height: 125px;
}

span.box-submit {
    display: block;
}

input.submit-form {
    background: #ED1B24;
    border: none;
    color: #fff;
    display: inline-block;
    padding: 16px 60px;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0px;
    border-radius: 100px;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
}

input.submit-form:hover {
    will-change: transform;
    transform: scale(1.05);
}

.wpcf7-spinner {
    display: block;
}

.wpcf7-response-output {
    padding-top: 0;
    margin-top: 0px !important;
}

.wpcf7-spinner:empty {
    display: none;
}

.box-maps {
    margin-top: -150px;
}

.box-text-inner {
    margin-top: 1rem;
}

.image-news {
    border-radius: 10px;
    overflow: hidden;
}

.box-image {
    width: 100%;
    padding-top: 75%;
    position: relative;
}

.box-image img {
    position: absolute;
    top: 0;
    bottom: 0;
    font-family: "object-fit: cover;";
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    right: 0;
    width: 100%;
}

h5.post-title a {
    font-weight: 600;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

a.category-post {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 999;
    box-shadow: 0px 4px 4px 0px #0000001A;
    background: #fff;
    border-radius: 5px;
    display: inline-block;
    font-weight: 600;
    font-size: 12px;
    line-height: 14.62px;
    text-align: center;
    padding: 6.5px 15px;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
}

a.category-post:hover {
    background: #fc0013cc;
    color: #fff;
}

.btn-readmore {
    position: absolute;
    bottom: 0;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #ED1B24;
}

.btn-readmore svg {
    display: inline-block;
    margin-left: 6px;
}

.box-blog-post {
    margin-bottom: 2.5rem;
}

.mb25 {
    margin-bottom: 2.5rem;
}

.pagination a,
.pagination span {
    box-shadow: 0px 2px 5px 0px #1018280F;
    box-shadow: 0px 0px 3px 0px #1018281A;
    width: 34px;
    height: 34px;
    border-radius: 100%;
    font-weight: 500;
    font-size: 15px;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
}

.pagination a i {
    font-size: 25px;
}

.pagination .current,
.pagination a:hover {
    background: #FF0013;
    color: #fff;
    box-shadow: 0px 2px 5px 0px #1018280F;
}

.pagination a:hover i {
    color: #fff;
}

.latest-post {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 15px;
}

.post-thumbnail {
    width: 87px;
    overflow: hidden;
    border-radius: 6px;
    height: 69px;
}

.info-lastest {
    width: calc(100% - 100px);
}

p.post-date {
    font-weight: 400;
    font-size: 16px;
    line-height: 19.49px;
    margin-bottom: 5px;
    color: #00000080;
}

.info-lastest h3.post-title {
    font-family: SVN-Gilroy;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.category-list {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.category-list li a {
    display: block;
}

.category-list li a:hover {
    color: #ED1B24;
}

.title-post {
    padding: 5.5% 10% 0;
    margin-top: -6.5%;
    position: relative;
    background: #fff;
    width: 100%;
}

.single-post .post-content,
.single-post .bottom-posts {
    padding: 0 30px !important;
}

.title-post h1 {
    font-weight: 400;
    font-size: 60px;
    line-height: 78px;
    text-align: center;
}

.created_date {
    font-weight: 400;
    font-size: 16px;
    line-height: 16px;
    display: inline-block;
    margin: 0 auto;
    background: url('../images/calendar.svg') no-repeat 0 0;
    padding-left: 20px;
}

.desc-content {
    font-weight: 400;
    font-size: 22px;
    line-height: 40px;
    letter-spacing: 0px;
    margin-bottom: 2rem;
}

.post-content,
.post-content p,
.post-content span,
.post-content ul li {
    font-weight: 400;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 0px;
}

.wp-block-group {
    padding-left: 3.5%;
    position: relative;
}

.wp-block-group::before {
    content: '';
    width: 3px;
    height: 130px;
    background: #FF0013;
    position: absolute;
    top: 9px;
    left: 0;
    margin-bottom: 3rem;
}

h2.wp-block-heading {
    font-weight: 400;
    font-size: 38px;
    line-height: 60.5px;
    letter-spacing: 0px;
}

.wp-block-quote {
    width: 66%;
    margin: 3% auto;
    font-weight: 400;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 0px;
    text-align: center;
    position: relative;
}

.wp-block-quote::before {
    content: '“';
    position: absolute;
    top: 72%;
    left: -9%;
    font-family: SVN-Gilroy;
    font-weight: 400;
    font-size: 200px;
    height: 0;
    letter-spacing: 0px;
    text-align: center;
    color: #C9C9C9;
}

.wp-block-quote::after {
    position: absolute;
    top: 2%;
    right: -9%;
    font-family: SVN-Gilroy;
    font-weight: 400;
    font-size: 200px;
    height: 0;
    letter-spacing: 0px;
    text-align: center;
    color: #C9C9C9;
    content: '“';
    transform: rotate(180deg);
}

.social-share {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    margin-top: 2rem;
    position: relative;
    z-index: 9;
}

.social-share span {
    font-weight: 600;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 0px;
}

.bt {
    border-top: 1px solid #DEDEDE;
}

h3.releated-title {
    font-weight: 600;
    font-size: 32px;
    line-height: 60.5px;
    letter-spacing: 0px;
    margin-bottom: 1.2rem;
}

.info-item-large-2 {
    position: relative;
    padding-left: 35px;
}

.info-item-large-2::before {
    content: '';
    position: absolute;
    width: 2px;
    height: 86%;
    background: #FF0013;
    top: 10px;
    left: 0;
}

.image-fat {
    overflow: hidden;
    border-radius: 12px;
}

.head-fat {
    background: url('../images/info.svg') no-repeat 0 0;
    background-size: 100% 100%;
    height: 108px;
    margin-top: 1.3rem;
    position: relative;
}

.head-fat span {
    font-weight: 600;
    font-size: 16px;
    position: absolute;
    top: 7px;
    left: 26px;
    display: flex;
    width: 24px;
    height: 24px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    color: #ED1B24;
}

.head-fat h3 a {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    width: 50%;
    margin-left: 60px;
    display: flex;
    height: 108px;
    flex-direction: row;
    justify-content: center;
    color: #fff !important;
    align-items: center;
}

.description-fat {
    font-weight: 400;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 0px;
    text-align: center;
    padding: 0 16px;
    margin-top: 35px;
    color: #2C2F24;
}

.description-fat-2 {
    font-weight: 400;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0px;
    text-align: center;
    padding: 0 16px;
    margin-top: 20px;
    color: #2C2F24;
}

.description-fat ul li,
.description-fat-2 ul li {
    margin-bottom: 10px;
}

.img-70 img {
    max-width: 70%;
}

.head-food {
    background: url('../images/arrow.svg') no-repeat 0 0;
    background-size: 100% 100%;
    height: 70px;
    margin-top: 1.3rem;
    position: relative;
}

.head-food h3 a {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    text-align: center;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
    color: #fff !important;
    padding: 0 30px;
}

.text-left {
    text-align: left;
}

.has-btn a,
a.btn-arr {
    display: inline-block;
    background: #ED1B24;
    font-weight: 700;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 0px;
    text-align: right;
    vertical-align: middle;
    color: #fff;
    padding: 15px 15%;
    border-radius: 100px;
    margin-top: 0.5rem;
}

a.btn-arr {
    padding: 15px 40px;
}

.info-item-large .has-btn a {
    padding: 15px 50px;
}

.btn-has-arrow a {
    background: #ED1B24 url('../images/arrow-right-white.svg') no-repeat 91% 20px;
    padding-right: 65px !important;
}

.content-process {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    box-shadow: 0px 5px 74.3px 0px #0000001A;
    border-radius: 25px;
    margin-bottom: 20px;
    padding: 10px;
}

.step {
    background: #ED1B24;
    width: 130px;
    height: 139px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    border-radius: 20px;
}

span.value-step {
    font-weight: 400;
    font-size: 64px;
    line-height: 64px;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    color: #fff;
}

span.text-step {
    font-weight: 700;
    font-size: 22px;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    color: #fff;
}

.image-step {
    height: 139px;
    overflow: hidden;
    border-radius: 20px;
    width: 215px;
}

.description-step {
    width: calc(100% - 450px);
}

.image-step img {
    object-fit: cover;
}

.description-step h5 {
    font-weight: 700;
    font-size: 22px;
    line-height: 25px;
    letter-spacing: 0px;
    vertical-align: middle;
    color: #ED1B24;
}

.description-step ul {
    padding-left: 15px;
}

.description-step>* {
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0px;
    vertical-align: middle;
}

.item-grid {
    position: relative;
    width: 100%;
    padding-top: 100%;
}

.item-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    border: 1px solid #ddd;
    transition: transform 0.3s ease;
}

.item-inner:hover {
    transform: scale(1.05);
    /* Phóng to nhẹ khi hover */
}

.item-work {
    background: #fff;
    box-shadow: 0px 2.98px 59.57px 0px #00000014;
    margin-right: 2rem;
    padding: 15px 15px 30px 15px;
    border-radius: 14px;
}

.item-work:last-child {
    margin: 0;
}

.head-work {
    margin-bottom: 10px;
}

.head-work h3 {
    margin-bottom: 5px;
}

.head-work h3 a {
    font-weight: 700;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    color: #000;
    margin: 1rem 0 0.5rem 0;
    display: block;
}

.description-work {
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    letter-spacing: 0px;
    text-align: center;
    color: #2C2F24;
}

.fs-14 {
    font-size: 14px;
}

.fs-18 {
    font-size: 18px;
}

.fs-20,
.fs-20 p {
    font-size: 20px;
    line-height: 32px;
}

.fs-22 {
    font-size: 22px;
    line-height: 40px;
}

.fs-38 {
    font-size: 38px;
}

.fs-50 {
    font-size: 50px;
}

.fs-62 {
    font-size: 62px;
    line-height: 60.5px;
}

.category-products {
    margin: 120px 0 30px;
    position: relative;
}

.product-row {
    display: flex;
    gap: 3rem;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    margin-bottom: 4rem;
    background: url(../images/shelf.png) no-repeat center 104%;
    padding-bottom: 0px;
    background-size: 108%;
}

.product-row .product {
    width: 200px;
}

.product {
    text-align: center;
    padding: 10px 10px 42px 0;
    border-radius: 5px;
    position: relative;
}

.product img {
    max-width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease-in-out;
}

.product:hover img {
    transform: translateY(-8px);
}

.category-products .category-title {
    background: url('../images/label.svg') no-repeat top left;
    background-size: 100% 100%;
    padding: 6px 0 0;
    height: 46px;
    position: absolute;
    top: -35px;
    width: 187px;
    text-align: center;
}

.category-products h2 {
    display: inline-block;
    width: max-content;
    font-weight: 700;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 0;
}

.product-title {
    background: #fff;
    padding: 13px 10px 0;
    position: absolute;
    top: 91%;
    border-radius: 3px;
    width: 100%;
    left: -3%;
}

.product-title::before {
    content: '';
    position: absolute;
    top: -6px;
    left: calc(50% - 30px);
    width: 60px;
    height: 12px;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    background-color: white;
    z-index: 0;
    transform: rotate(180deg);
}

.product-title h4 {
    font-weight: 600;
    font-size: 16px;
    line-height: 18.57px;
    margin: 0;
    text-align: center;
    vertical-align: middle;
    width: 100%;
    word-wrap: break-word;
    white-space: break-spaces;
}

.product-row .product .product-new {
    position: absolute;
    top: -45px;
    right: -22px;
}

.main-gallery {
    width: 100%;
    margin-bottom: 2rem;
    opacity: 0;
    transition: opacity 0.3s ease;
    max-height: 600px;
}

.main-gallery.loaded {
    opacity: 1;
    max-height: none;
}

.main-gallery .gallery-cell {
    width: 100%;
    text-align: center;
}

.thumb-gallery .gallery-cell {
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.thumb-gallery {
    width: 80%;
    margin: 0 auto;
}

.thumb-gallery .flickity-viewport {
    width: 100%;
}

.thumb-gallery .flickity-slider {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
}

.thumb-gallery .flickity-prev-next-button.previous {
    left: -45px;
}

.thumb-gallery .flickity-prev-next-button.next {
    right: -25px;
}

.thumb-gallery {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.thumb-gallery .gallery-cell {
    width: 20%;
    cursor: pointer;
    margin-right: 5%;
    padding: 15px;
    border: 1px solid #E8E8E8 !important;
    border-radius: 12px;
    box-sizing: border-box;
}

.thumb-gallery .gallery-cell img {
    display: block;
    width: 100%;
    height: auto;
}

.thumb-gallery .is-nav-selected img {}

.thumb-gallery .gallery-cell.is-selected {
    border: 1px solid #FF0013 !important;
}

.thumb-gallery .flickity-prev-next-button svg {
    display: none;
}

.candy-gallery .flickity-prev-next-button {
    font-family: bootstrap-icons !important;
    position: absolute;
    font-size: 16px;
    width: 28px;
    height: 26px;
    border-radius: 100px;
    box-shadow: 0px 0px 3px 0px #1018281A;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.thumb-gallery .flickity-prev-next-button.previous::before {
    content: '\F12F';
    left: 0;
}

.thumb-gallery .flickity-prev-next-button.next::before {
    content: '\F138';
    right: 0;
}

.btn-contact {
    display: inline-block;
    background: #ED1B24;
    font-weight: 700;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 0px;
    text-align: right;
    vertical-align: middle;
    color: #fff;
    padding: 15px 15%;
    border-radius: 100px;
    margin-top: 0.5rem;
}

.btn-contact svg {
    display: inline-block;
    margin-left: 10px;
}

h1.c-detail-title {
    font-weight: 600;
    font-size: 32px;
    line-height: 48px;
    letter-spacing: 0%;
}

.box-packing {
    padding-bottom: 1.3rem;
    margin-bottom: 1.3rem;
    border-bottom: 1px solid #D0D5DD;
}

.box-packing p {
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0px;
    margin-bottom: 3px;
    padding-left: 25px;
    color: #000;
}

.box-packing p span {
    font-weight: 600;
}

.packaging {
    background: url('../images/pack.svg') no-repeat 0 5px;
}

.weight {
    background: url('../images/weight.svg') no-repeat 0 5px;
}

.product-desc {
    max-height: 95px;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.product-desc.expanded {
    max-height: none;
}

button.read-more {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #ED1B24;
    cursor: pointer;
    padding: 6px 0 0 0;
    border: none;
    text-decoration: underline;
    display: none;
    background: transparent;
}

#listIngredients .accordion-item {
    border: 0;
    border-bottom: 1.5px solid #EAECF0;
}

#listIngredients .accordion-item:last-child {
    border-bottom: 0;
}

#listIngredients .accordion-item .accordion-button {
    padding: 1.4rem 35px 1.4rem 0;
}

#listIngredients .accordion-item .accordion-button::before {
    right: 0;
}

#listIngredients .accordion-body,
#listIngredients .accordion-body p,
#listIngredients .accordion-body td {
    color: #000;
    padding-right: 0px;
    padding-left: 0;
    margin: 0;
}

#listIngredients .accordion-body table {
    width: 100% !important;
    margin-top: 20px;
}

#listIngredients .accordion-body table tr {
    border-bottom: 1px solid #E4E8EA;
    height: 45px !important;
}

#listIngredients .accordion-body table tr:last-child {
    border-bottom: 0;
}

#listIngredients .accordion-body table tr td:nth-child(2n) {
    text-align: right;
}

.box-title-related {
    border-top: 1px solid #DEDEDE;
    padding-top: 3rem;
}

.product-related .new-product h3 {
    bottom: 20px;
    width: 73%;
}

.product-related .flickity-prev-next-button.previous {
    left: -10px;
}

.product-related .flickity-prev-next-button.next {
    right: -10px;
}

.section-related .flickity-button.flickity-prev-next-button {
    top: 40%;
}

.box-social img {
    width: 49px;
    height: 49px;
}

.product-list-pc .product-new,
.product-mb .product-new {
    height: 69px;
}

.c-footer-list li:first-child a {
    font-weight: 700;
    font-size: 22.53px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    text-align: left;
}

.footer-col-menu .c-footer-list ul li {
    margin-bottom: 12px;
    display: block;
    text-align: left;
    width: 100%;
}

.c-footer-list {
    margin-top: 5rem;
}

/* Custom Footer Styles */
.custom-footer-row {
    padding: 30px 0;
}

.footer-logo img {
    max-width: 160px;
}

.footer-company-info {
    margin-top: 20px;
}

.footer-company-info .company-name {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    color: #000;
}

.footer-company-info p {
    font-size: 14px;
    margin-bottom: 10px;
    color: #333;
}

.footer-heading {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #000;
}

.footer-col-menu .c-footer-list ul {
    padding-left: 0;
    display: flex;
    flex-direction: column;
}

.footer-col-menu .c-footer-list ul li {
    margin-bottom: 12px;
}

.footer-col-menu .c-footer-list ul li a {
    font-size: 14px;
    color: #333;
    transition: all 0.3s;
}

.footer-col-menu .c-footer-list ul li a:hover {
    color: #F96305;
}

.footer-col-menu .box-social {
    padding: 0;
}

.footer-col-menu .box-social a {
    margin-right: 8px;
    display: inline-block;
}

.footer-col-menu .box-social a img {
    width: 24px;
    height: 24px;
}

.footer-contact-box {
    background-color: #f2f2f2;
    padding: 20px 20px 1px;
    border-radius: 5px;
}

.footer-contact-box .footer-heading {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    color: #000;
}

.footer-contact-box .wpcf7-form {
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    background: transparent;
}

.footer-contact-box .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 10px;
}

.footer-contact-box input[type="text"],
.footer-contact-box input[type="tel"],
.footer-contact-box input[type="email"],
.footer-contact-box textarea {
    width: 100%;
    padding: 8px 13px;
    border: 1px solid #999;
    background-color: transparent;
    border-radius: 4px;
    font-size: 15px;
    color: #000;
}

.footer-contact-box textarea {
    height: 40.5px;
    resize: none;
}

.footer-contact-box input::placeholder,
.footer-contact-box textarea::placeholder {
    color: #000;
    opacity: 1;
}

.footer-contact-box input:-ms-input-placeholder,
.footer-contact-box textarea:-ms-input-placeholder {
    color: #000;
}

.footer-contact-box input::-ms-input-placeholder,
.footer-contact-box textarea::-ms-input-placeholder {
    color: #000;
}

.footer-contact-box input.wpcf7-submit,
.footer-contact-box input[type="submit"] {
    background-color: #3e6896;
    color: #fff;
    border: none;
    padding: 10px 25px;
    border-radius: 4px;
    font-weight: 400;
    font-size: 15px;
    cursor: pointer;
    margin-top: 5px;
    display: inline-block;
}

.footer-contact-box input.wpcf7-submit:hover,
.footer-contact-box input[type="submit"]:hover {
    background-color: #2b4969;
}

.custom-footer-bottom {
    background-color: #3e6896;
    height: 35px;
}

.custom-footer-bottom .c-copyright {
    color: #fff;
    font-size: 14px;
    padding: 0;
    margin: 0;
}

.box-s2 {
    padding: 0 10%;
}

.text-s4 {
    font-size: 15px;
    line-height: 21px;
}
.img-large-s4 {
    display: flex;
    justify-content: flex-end;
}

.img-large-s4 img {
    max-width: 85%;
}
.page-template-layout-about #section-5 {
    background-size: 100% 100% !important;
}
.item-capability .row {
    display: flex;
    justify-content: space-between;
}
.item-capability img {
    border-radius: 50px;
}
.item-capability .card-body {
    border: 1px solid #00000080;
    border-radius: 20px;
}
.item-capability p {
    line-height: 24px;
}
.h-70 {
    height: 70%;
}
.page-template-layout-services h2 {
    position: relative;
    margin-bottom: 45px !important;
}
.page-template-layout-services h2::after {
    position: absolute;
    content: '';
    left: 50%;
    top: 45px;
    width: 126px;
    height: 5px;
    background-color: #F96305;
    transform: translateX(-50%);
}

@keyframes g_nav_load_arrow {
    0% {
        transform: translate(0, 0);
    }

    80% {
        transform: translate(10px, 0px);
    }

    0%,
    80%,
    100% {
        opacity: 0;
    }

    40% {
        opacity: 1;
    }
}

@keyframes search_button_anim {
    0% {
        opacity: 0;
        transform: rotate(-45deg);
    }

    100% {
        opacity: 1;
        transform: rotate(0);
    }
}

@keyframes fadedownout {
    0% {
        display: block;
        height: 174px;
        max-height: 174px;
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        display: none;
        height: auto;
        opacity: 0;
        transform: translateY(-50px);
    }
}

@keyframes fadedown {
    0% {
        display: none;
        height: 0;
        opacity: 0;
        transform: translateY(-10px);
    }

    50% {
        height: 174px;
    }

    100% {
        display: block;
        opacity: 1;
        height: 174px;
        transform: none;
    }
}

@keyframes fadedownoutmenu {
    0% {
        display: block;
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        display: none;
        height: auto;
        opacity: 0;
        transform: translateY(-50px);
    }
}

@keyframes fadedownmenu {
    0% {
        display: none;
        height: 0;
        opacity: 0;
        transform: translateY(-10px);
    }

    100% {
        display: block;
        opacity: 1;
        transform: none;
    }
}

@keyframes active-menu-bar02 {
    100% {
        height: 0;
    }
}

@media (min-width: 992px) {
    nav#navbar {
        align-items: flex-start !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .top-blue-bar {
        width: 100%;
        height: 35px;
        background-color: #3e6896;
        position: absolute;
        top: 0;
        left: 0;
    }

    .custom-header-container {
        margin-top: 35px !important;
        height: 80px !important;
    }

    ul.custom-navbar-nav>li.nav-item {
        margin: 0 4px;
    }

    ul.custom-navbar-nav>li.nav-item>a.nav-link {
        font-weight: 700 !important;
        font-size: 15px !important;
        color: #3e6896 !important;
        text-transform: uppercase;
        padding: 6px 14px !important;
        border-radius: 5px;
        transition: all 0.3s ease;
    }

    ul.custom-navbar-nav>li.nav-item>a.nav-link:hover {
        color: #F96305 !important;
        transform: none !important;
    }

    ul.custom-navbar-nav>li.nav-item.active>a.nav-link {
        background-color: #F96305 !important;
        color: #fff !important;
    }
}

@media only screen and (max-width: 576px) {
    .w-auto>* {
        width: auto;
    }

    .mmt-1 {
        margin-top: 1rem;
    }
    
    .mmt-2 {
        margin-top: 2rem;
    }

    .mmt-6 {
        margin-top: 5rem !important;
    }

    .logo-white {
        max-height: 40px;
    }

    .scroll-x {
        overflow-x: scroll;
        padding-bottom: 15px;
        overflow-y: hidden;
    }

    nav#navbar {
        padding: 1rem !important;
        height: 76px;
    }

    main#main {
        padding-top: 76px;
    }

    button#navbar-toggler {
        display: block;
    }

    .hidden-mobile {
        display: none;
    }

    .show-mobile {
        display: block;
    }

    .menu-trigger {
        position: relative;
        width: 30px;
        height: 22px;
        background: none;
        border: none;
        appearance: none;
        cursor: pointer;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #333;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 10px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .menu-trigger.active span:nth-of-type(1) {
        transform: translateY(10px) rotate(-45deg);
    }

    .menu-trigger.active span:nth-of-type(2) {
        left: 50%;
        opacity: 0;
        animation: active-menu-bar02 .8s forwards;
    }

    .menu-trigger.active span:nth-of-type(3) {
        transform: translateY(-10px) rotate(45deg);
    }

    .offcanvas-backdrop {
        background-color: transparent;
    }

    .od-1 {
        order: 1;
    }

    .od-2 {
        order: 2;
    }

    .od-3 {
        order: 3;
    }

    .gmb-15 {
        gap: 15px;
    }

    .c-footer-list {
        margin-top: 0;
    }

    .bi-chevron-right {
        filter: none;
        margin-left: 20px;
        font-size: 20px;
        top: 13px !important;
        color: #333 !important;
        right: -5px !important;
    }

    .offcanvas-body li.has-submenu a {
        position: relative;
    }

    .offcanvas-body li.has-submenu>a::after {
        content: '';
        position: absolute;
        border-left: 1px solid #0000001a;
        top: -4px;
        right: 36px;
        width: 0.5px;
        height: 33px;
    }

    .item-candy img {
        max-width: 80px;
    }

    .item-candy h3 a {
        font-size: 16px;
        margin-top: 5px;
        display: block;
    }

    .box-search-mb {
        right: -35px;
        top: -2px;
    }

    .product-list .carousel-cell {
        width: 50%;
        padding: 10px;
    }

    .product-list .carousel-cell .card {
        height: 200px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        background-color: #f8f9fa;
        border: 1px solid #ddd;
        border-radius: 8px;
    }

    .product-list .flickity-button,
    .releated-list .flickity-button {
        background: none;
    }

    .product-list .flickity-button svg path,
    .releated-list .flickity-button svg path {
        fill: #d9d6d6;
    }

    .releated-list .flickity-prev-next-button.previous,
    .releated-list .flickity-prev-next-button.next {
        top: 22%;
    }

    .product-list .flickity-prev-next-button.previous,
    .releated-list .flickity-prev-next-button.previous {
        left: -10px;
    }

    .product-list .flickity-prev-next-button.next,
    .releated-list .flickity-prev-next-button.next {
        right: -10px;
    }

    .product-list .flickity-button:hover,
    .product-list .flickity-button:focus,
    .product-list .flickity-button:focus-visible,
    .releated-list .flickity-button:hover,
    .releated-list .flickity-button:focus,
    .releated-list .flickity-button:focus-visible {
        border: none;
        outline: none !important;
        box-shadow: unset !important;
        background: transparent;
    }

    .releated-list .carousel-cell img {
        max-height: 305px;
        width: 100%;
    }

    .releated-list .carousel-cell .image-zoom {
        margin-bottom: 0;
    }

    .c-block {
        flex-direction: column;
    }

    .box-color-img {
        height: auto;
        margin-bottom: 10px;
        padding-top: 73%;
    }

    .box-color-img>img {
        width: 90%;
        height: auto;
        max-width: 90%;
    }

    .box-color {
        width: 90%;
        height: auto;
        bottom: unset;
        top: 16%;
        padding-top: 63%;
    }

    .content-candy img {
        width: 17px;
        height: 27px;
        top: 0px;
    }

    .line {
        width: 35%;
        left: 0px;
    }

    .content-candy span {
        font-size: 18px;
        bottom: -6px;
    }

    .align-center-mb {
        text-align: center;
    }

    .card {
        display: block;
        border-radius: 10px;
        overflow: hidden;
    }

    .card .overhidden {
        max-width: 130px;
        border-radius: 10px 0 0 10px;
        height: 110px;
        float: left;
        position: relative;
        width: 130px;
        padding-top: unset;
    }

    img.card-img-top {
        bottom: 0;
        font-family: "object-fit: cover;";
        height: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: 50% 50%;
        object-position: 50% 50%;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%;
    }

    .small-card {
        position: unset;
        padding-top: 0;
    }

    h5.card-title,
    h6.card-title {
        font-weight: 700;
        font-size: 16px;
        line-height: 20px;
    }

    .gym-3 {
        --bs-gutter-y: 1rem;
    }

    .card-body {
        padding: 10px 15px 0;
        width: 100%;
        float: right;
    }

    .box-info {
        width: 100%;
        margin-bottom: 1rem;
    }

    .box-info:last-child {
        margin-bottom: 0;
    }

    .mt-4 {
        margin-top: 0rem !important;
    }

    .mb-3 {
        margin-bottom: 0rem !important;
    }

    .f-big {
        font-weight: 500;
        font-size: 30px;
    }

    .py-5 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .c-footer-list ul {
        flex-wrap: wrap;
        justify-content: space-evenly;
        padding-right: 2rem;
    }

    .c-footer-list ul li {
        margin-bottom: 10px;
    }

    .search-box {
        top: 95px;
    }

    .offcanvas.offcanvas-start,
    .offcanvas.offcanvas-end {
        width: 100%;
        border-right: 0;
        border-left: 0;
        top: 75px;
    }

    .offcanvas-body {
        padding: 5px 1.8rem;
        border-top: 1px solid #D9D9D9;
    }

    .offcanvas-body ul {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
    }

    .offcanvas-body ul li {
        border-bottom: 1px solid #E8E8E8;
        display: block;
        padding: 15px 0;
        position: relative;
    }

    .offcanvas-body .sub-menu li:last-child {
        border-bottom: 0;
    }

    .offcanvas-body ul li a {
        font-weight: 400;
        font-size: 18px;
        line-height: 24px;
        letter-spacing: 0px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .offcanvas-body ul li .sub-menu {
        display: none;
        transition: all 0.3s ease-in-out;
    }

    .has-submenu>a {
        cursor: pointer;
    }

    .toggle-icon {
        transition: transform 0.3s ease-in-out;
    }

    .rotate-icon {
        display: inline-block;
        transform: rotate(90deg);
    }

    .offcanvas-backdrop.show {
        display: none;
    }

    .offcanvas-header {
        border-bottom: 1px solid #D9D9D9;
        display: none;
    }

    button#search-btn img {
        width: 26px;
        margin-top: 5px;
    }

    button.btn-close {
        opacity: 1;
        font-size: 23px;
    }

    .language-mb a {
        font-size: 18px;
        margin-left: 25px;
    }

    .bi-chevron-right {
        position: absolute;
        color: #000;
        opacity: 1;
        top: 16px;
        right: 0;
    }

    ul.sub-menu li:last-child {
        padding-bottom: 0;
    }

    .item-candy .img-nohover {
        display: none;
    }

    .item-candy .img-hover {
        display: block;
        opacity: 1;
    }

    .box-color {
        background-size: auto;
    }

    h5.card-title a,
    h6.card-title a {
        font-size: 16px;
        line-height: 20px;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .desc-banner {
        position: relative;
        width: 100% !important;
        left: 0 !important;
        padding-left: 0 !important;
        margin-bottom: 20px;
        padding-top: 10px;
    }

    .desc-banner::before {
        background: #fff;
    }

    .banner-about {
        padding: 0 15px;
    }

    .box-image-banner h3 {
        background: #fc0013cc;
        position: absolute;
        bottom: 15px;
        left: -15px;
        font-weight: 700 !important;
        font-size: 20px !important;
        line-height: 28px;
        letter-spacing: 0px;
        text-align: center;
        padding: 12px 0;
        width: 46%;
    }

    .pb-5 {
        padding-bottom: 0rem !important;
    }

    .home #section-4 {
        padding-bottom: 3rem !important;
    }

    .box-image-banner h3.title-big,
    .fs-38 {
        font-size: 28px;
    }

    .detail-banner {
        font-size: 20px;
        line-height: 33px;
        color: #000;
    }

    .about-box {
        margin-top: 2rem;
    }

    .about-iteam {
        flex-direction: column;
        margin-bottom: 2rem;
    }

    .info-about {
        padding: 15px 20px !important;
    }

    .info-about h3 {
        font-weight: 500;
    }

    .w55p,
    .w41p {
        width: 100%;
    }

    .pl-5p,
    .pr-5p,
    .pl-40 {
        padding: 15px;
    }

    .pt-1 {
        padding-top: 1rem !important;
    }

    .pb-2,
    .pb-3,
    .pb-4,
    .pb-5 {
        padding-bottom: .0 !important;
    }

    .pt-2,
    .pt-3,
    .pt-4,
    .pt-5 {
        padding-top: 0.5rem !important;
    }

    .mb-5 {
        margin-bottom: 0 !important;
    }

    a.btn-policies {
        width: 100%;
    }

    a.btn-file {
        margin-top: 1.5rem;
    }

    .od-1 {
        order: 1;
    }

    .od-2 {
        order: 2;
    }

    .container.orderby-mobile {
        padding: 0;
    }

    .box-breadcrumb {
        height: auto;
        padding: 6px 0;
        display: none;
    }

    .box-breadcrumb ul {
        flex-wrap: wrap;
        padding: 8px 15px;
    }

    .box-shadow {
        margin-bottom: 15px;
    }

    .short-line-2::before {
        top: 8px;
    }

    .short-line::before {
        left: -2px;
        top: 6px;
    }

    .short-line,
    .info-item-large-2 {
        padding-left: 25px;
    }

    .pbm-0 {
        padding-bottom: 0 !important;
    }

    .ptm-0 {
        padding-top: 0 !important;
    }

    .row-company {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: flex-start;
        height: auto;
        align-content: flex-start;
        padding: 15px 0;
    }

    .key {
        width: 100%;
        font-weight: bold;
        margin-bottom: 0.3rem;
    }

    .fs-50 {
        font-size: 32px;
    }

    .box-item {
        flex-direction: column;
        margin-bottom: 2rem;
    }

    .info-item,
    .image-item {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }

    .info-item:nth-child(2n) {
        padding-right: 0;
        padding-left: 0;
    }

    .info-item {
        margin-bottom: 15px;
    }

    .box-desc2 p,
    .fs-22,
    .fs-22 p {
        font-size: 18px;
        line-height: 26px;
    }

    .fs-20,
    .fs-20 p {
        font-size: 16px;
        line-height: 26px;
    }

    .detail-box,
    .detail-box-large p,
    .detail-box p,
    .detail-box-large li {
        font-size: 16px;
        line-height: 24px;
    }

    .detail-box-large ol {
        margin-bottom: 0;
    }

    .w80 {
        width: 100%;
    }

    .gx-6 {
        --bs-gutter-x: 0;
    }

    .detail-box {
        margin-top: 10px;
    }

    h2.title-big {
        margin-top: 10px;
    }

    .mbm-1 {
        margin-bottom: 0.8rem !important;
    }

    .ptm-1 {
        padding-top: 1rem !important;
    }

    .btn-default {
        border-radius: 99px;
    }

    .mtm-08 {
        margin-top: 0.8rem !important;
    }

    .mtm-12 {
        margin-top: 1.2rem !important;
    }

    .pm-15 {
        padding-left: 15px;
        padding-right: 15px;
    }

    .box-title h2 {
        margin-bottom: 1.5rem;
    }

    .accordion-button::before {
        right: 15px;
    }

    #listFaq .accordion-item {
        margin-bottom: 1rem;
    }

    .accordion-item .accordion-button {
        font-size: 17px;
        line-height: 23px;
        padding-right: 50px;
    }

    .accordion-body {
        padding-right: 20px;
    }

    .info-contact .row-info,
    .row-input {
        flex-direction: column;
    }

    span.title-info,
    span.desc-info,
    .item-input {
        width: 100%;
    }

    .box-contact {
        margin-bottom: 2rem;
    }

    .wpcf7-form {
        padding: 1.5rem;
    }

    .box-maps {
        margin-top: 1rem;
    }

    .g-5,
    .gx-5 {
        --bs-gutter-x: 1.5rem;
    }

    .releated-list .box-image {
        padding-top: 0%;
    }

    .title-post {
        margin-top: 0px;
        padding: 15px 0 0;
    }

    .single-post .post-content,
    .single-post .bottom-posts {
        padding: 0 5px !important;
    }

    .title-post h1 {
        font-size: 32px;
        line-height: 42px;
    }

    .created_date {
        margin-bottom: 1rem;
    }

    .desc-content {
        font-size: 20px;
        line-height: 30px;
    }

    h2.wp-block-heading {
        font-size: 26px;
        line-height: 35px;
    }

    .post-content,
    .post-content p,
    .post-content span,
    .post-content ul li {
        font-size: 16px;
        line-height: 28px;
    }

    .wp-block-group {
        padding-left: 25px;
    }

    figure,
    .wp-block-image :where(figcaption) {
        margin-bottom: 0;
    }

    .wp-block-quote {
        width: 85%;
        padding: 0 10%;
    }

    .wp-block-quote::before {
        top: 23%;
        left: -5%;
        font-size: 130px;
    }

    .wp-block-quote::after {
        top: 5%;
        right: -4%;
        font-size: 130px;
    }

    h3.releated-title {
        margin-bottom: 0;
    }

    .image-zoom {
        overflow: hidden;
        margin-bottom: 1rem;
    }

    .product-new img {
        bottom: -10px;
        margin-right: 6px;
        max-width: 62px;
    }

    img.product-img {
        margin-bottom: 0;
        max-height: 190px;
        height: 190px;
    }

    .new-product h3 {
        bottom: -18px;
        height: 65px;
    }

    h5.post-title {
        text-align: left;
        font-size: 20px;
        line-height: 28px;
        margin-bottom: 0.5rem;
    }

    p.from_the_blog_excerpt {
        text-align: left;
    }

    .btn-readmore-mb {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: 0px;
        color: #ED1B24;
        text-align: left;
        display: block;
        font-weight: 600;
    }

    .description-fat {
        margin-top: 20px;
    }

    .description-fat li,
    .description-fat-2 {
        font-size: 16px;
        line-height: 24px;
    }

    .releated-list .flickity-prev-next-button {
        top: 28%;
    }

    .w-fit-content {
        width: max-content;
        overflow-x: scroll !important;
    }

    .w-fit-content .col {
        width: 260px;
    }

    .head-food {
        height: 80px;
    }

    .head-food h3 a {
        font-size: 16px;
        line-height: 20px;
        height: 80px;
    }

    .has-btn a,
    a.btn-arr {
        padding: 15px 6%;
    }

    .info-item-large .has-btn a {
        padding: 15px;
        text-align: center;
    }

    .btn-has-arrow a {
        background: #ED1B24 url('../images/arrow-right-white.svg') no-repeat 92% 19px;
        padding-right: 55px !important;
        padding-left: 32px !important;
    }

    .box-info .btn-second {
        width: 90%;
        text-align: center;
        padding: 16px 0;
    }

    .item-vertical {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
        flex-wrap: nowrap;
        gap: 15px;
        padding: 25px 10px;
    }

    .item-process {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        width: 83vw;
        box-shadow: 0px 5px 74.3px 0px #0000001A;
        gap: 20px;
        border-radius: 20px;
        padding: 13px 15px;
    }

    .step-mb {
        display: flex;
        flex-direction: row;
        align-items: center;
        flex-wrap: nowrap;
        gap: 12px;
    }

    span.text-step-mb {
        display: inline-block;
        padding: 10px 20px;
        background: #ED1B24;
        font-weight: 700;
        font-size: 20px;
        line-height: 24px;
        letter-spacing: 0px;
        text-align: center;
        vertical-align: middle;
        color: #fff;
        border-radius: 13px;
        width: 100px;
    }

    .step-mb h5 {
        font-weight: 700;
        font-size: 18px;
        line-height: 23px;
        letter-spacing: 0px;
        vertical-align: middle;
        color: #ED1B24;
        margin: 0;
        width: calc(100% - 112px);
    }

    .image-step-mb {
        height: 226px;
        overflow: hidden;
        border-radius: 20px;
    }

    .image-step-mb img {
        object-fit: cover;
        height: 225px;
        border-radius: 20px;
        margin-bottom: 0 !important;
        width: 100%;
    }

    .description-step-mb {
        font-weight: 400;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        vertical-align: middle;
        padding-bottom: 25px;
    }

    .description-step-mb>* {
        font-size: 16px;
        font-weight: 400;
    }

    .space-mb {
        padding: 50px 0;
    }

    .box-title h2::after {
        top: 90%;
    }

    .category-products {
        overflow-y: hidden;
        margin: 5px 0 30px;
        padding-bottom: 50px;
    }

    .category-products .category-title {
        position: sticky;
        width: 45%;
        padding: 7px 0 0;
        text-align: center;
        left: 0;
        top: 25px;
    }

    .product-row {
        display: flex;
        white-space: nowrap;
        flex-wrap: nowrap;
        width: 1115px;
        justify-content: flex-start;
        padding-left: 75px;
        margin-bottom: 1rem;
        background: url(../images/shelf.png) no-repeat -50px 106%;
        background-size: 108%;
    }

    .product {
        position: relative;
        top: 17px;
        padding-top: 26px;
    }

    .product-row .product .product-new {
        top: 5px;
    }

    .product {
        top: 13px;
    }

    .flickity-page-dots {
        bottom: 12px;
    }

    img.new-img {
        bottom: -3px;
    }

    .product-list-pc .product-new,
    .product-mb .product-new {
        height: 60px;
    }

    .product-mb {
        padding-bottom: 15px;
    }

    .category-candy {
        padding-top: 25px !important;
    }
    .service-card {
        padding-bottom: 20px !important;
    }
    .ptm-3 {
        padding-top: 3rem !important;
    }
    .ptm-4 {
        padding-top: 4rem !important;
    }
    #section-3 {
        background-size: cover !important;
        padding-bottom: 50px !important;
    }
    .mmt-0 {
        margin-top: 0 !important;
    }
    .mmb-0 {
        margin-bottom: 0 !important;
    }
    .mmb-2 {
        margin-bottom: 2rem !important;
    }
    .mmb-3 {
        margin-bottom: 3rem !important;
    }
    .text-md-start {
        text-align: left!important;
    }
    .pm-0 {
        padding: 0 !important;
    }
    h2.title-with-line {
        padding-bottom: 8px;
        margin-bottom: 20px !important;
    }
    .hidden-mobile {
        display: none;
    }
    .testimonial-end {
        bottom: unset !important;
        margin-top: -15px !important;
    }
    #section-5 .position-absolute {
        background: url('/wp-content/uploads/2026/05/Clip-path-group-5.jpg') no-repeat left center !important;
        background-size: unset !important;
    }
    .position-absolute:not(.slider-content) {
        width: 100% !important;
        position: relative !important;
    }
    #section-5 span.position-absolute {
        background: transparent !important;
    }
    #section-5 span.position-absolute {
        background: transparent !important;
        height: 20px !important;
        display: block;
    }
    .sub-news-card {
        display: flex;
        flex-direction: column;
    }
    .w-50, .wm-100 {
        width: 100%!important;
    }
    .w-60 {
        width: 60px!important;
    }
    .box-s2 {
        padding: 0;
    }
    .img-large-s4 img {
        max-width: 100%;
    }
    .page-template-layout-about #section-5 {
        background-size: unset !important;
    }
    .page-template-layout-about .position-absolute {
        position: absolute !important;
    }
    .page-template-layout-about .position-absolute svg {
        max-width: 100px !important;
    }
    .page-template-layout-about .box-s2 {
        padding: 0 20px;
    }
    .page-template-layout-about .box-s2 h2, .page-template-layout-about #section-5 h2 {
        margin-bottom: 1.5rem !important;
    }
    .page-template-layout-about #section-5 .position-absolute {
        background: #F96305 !important;
        width: 15px !important;
    }
    .page-template-layout-about #section-5 .g-4 {
        --bs-gutter-y: 0;
    }
    .page-template-layout-services h2 {
        font-size: 23px !important;
    }
    .page-template-layout-services h2::after {
        top: 35px;
    }
    .service-card h4 {
        margin-bottom: 15px !important;
    }
    .service-card h4 a {
        font-size: 15px;
    }
}

@media only screen and (max-width: 395px) {
    .box-search-mb {
        right: -20px;
    }
}

@media (min-width: 768px) {}

@media (min-width: 992px) {
    .col-lg-1-5 {
        flex: 0 0 12.5%;
        max-width: 12.5%;
        width: 12.5%;
    }
}

.obj-fit-cover {
    object-fit: cover;
    object-position: center;
}

.border-8 {
    border-width: 8px !important;
}

/* Home Section 1 */
.section-1 h1 {
    color: #fff;
}

.section-1 h3 {
    font-weight: 700;
    font-size: 32px;
    line-height: 130%;
    letter-spacing: 0%;
    color: #fff;
}

.section-1 p {
    color: #fff;
    margin: 15px 0;
}

.section-1 .flickity-page-dots {
    bottom: 20px;
}

.section-1 .flickity-page-dots .dot {
    width: 12px;
    height: 12px;
    background: #fff;
    opacity: 0.5;
}

.section-1 .flickity-page-dots .dot.is-selected {
    opacity: 1;
    background: #F96305;
}

/* Home General */
.text-orange {
    color: #F96305 !important;
}

.text-blue {
    color: #00618D !important;
}

/* Home Section 2 */
.sec2-stats h3 {
    font-size: 28px;
    line-height: 0.8;
}

.sec2-stats p {
    font-size: 13px;
}

/* Home Section 3 */
.service-card {
    transition: transform 0.3s ease;
}

.service-card:hover {
    transform: translateY(-5px);
}

/* Home Section 4 */
.solution-card img {
    transition: transform 0.3s ease;
}

.solution-card:hover img {
    transform: scale(1.05);
}

/* Home Section 6 */
.project-card img {
    transition: opacity 0.3s ease;
}

.project-card:hover img {
    opacity: 0.9;
}

/* Home Section 7 */
.main-news-card img,
.sub-news-card img {
    transition: transform 0.3s ease;
}

.main-news-card:hover img,
.sub-news-card:hover img {
    transform: scale(1.03);
}

/* Home Section 8 */
.sponsor-logo img {
    transition: filter 0.3s ease;
}

.sponsor-logo:hover img {
    filter: grayscale(0%);
}

/* Section 2 Image Styling */
.sec2-img-custom {
    border-radius: 130px;
}

.text-white p,
.text-white span,
.text-white a,
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6 {
    color: #fff !important;
}

.capacity-title {
    padding: 0 58%;
    display: block;
    width: 88%;
}

@media (min-width: 992px) {
    .px-lg-5 {
        padding-right: 2.5rem !important;
        padding-left: 2.5rem !important;
    }

    .mt-5 {
        margin-top: 2.5rem !important;
    }
}

/* Section 6 Flickity Arrows & Cells */
.project-carousel .carousel-cell {
    width: 100%;
}

@media (min-width: 768px) {
    .project-carousel .carousel-cell {
        width: 50%;
    }
}

@media (min-width: 992px) {
    .project-carousel .carousel-cell {
        width: 33.33333%;
    }
}

.project-carousel .flickity-prev-next-button {
    width: 82px;
    height: 85px;
    background: transparent;
    border-radius: 0;
}

.project-carousel .flickity-prev-next-button .flickity-button-icon {
    display: none;
}

.project-carousel .flickity-prev-next-button:hover {
    background: transparent;
}

.project-carousel .flickity-prev-next-button.previous {
    left: -65px;
    background: url('../images/pre.svg') no-repeat center center;
    background-size: contain;
}

.project-carousel .flickity-prev-next-button.next {
    right: -65px;
    background: url('../images/next.svg') no-repeat center center;
    background-size: contain;
}

/* Responsive Overrides */
@media (max-width: 767px) {
    .sec2-stats h3 {
        font-size: 24px !important;
    }

    .project-carousel .flickity-prev-next-button.previous {
        left: 0px;
    }

    .project-carousel .flickity-prev-next-button.next {
        right: 0px;
    }
}

@media (min-width: 1200px) {}

/* About Us - Play Button */
.play-btn {
    display: inline-block;
    transition: transform 0.3s ease;
}

.play-btn:hover {
    transform: scale(1.1);
}

.play-btn svg path {
    transition: fill 0.3s ease;
}

.play-btn:hover svg path {
    fill: #F96305;
}

/* Custom Pagination */
.custom-pagination a.page-numbers,
.custom-pagination span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #3e6896;
    color: #3e6896;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.custom-pagination span.page-numbers.current,
.custom-pagination a.page-numbers:hover {
    background-color: #3e6896;
    color: #fff;
}

.custom-pagination .next.page-numbers,
.custom-pagination .prev.page-numbers {
    border-color: #3e6896;
}

/* ==========================================================================
   SERVICES PAGE
   ========================================================================== */

/* Service cards - Section 3 */
.service-card {
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.service-card:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-3px);
}

.service-card .text-end a:hover {
    background-color: #3e6896 !important;
    border-color: #3e6896 !important;
    color: #ffffff !important;
}

.service-card:hover h4 a {
    color: #F96305 !important;
}

/* Process timeline - Section 2 */
.process-icon-wrap img {
    transition: transform 0.3s ease;
}

.process-icon-wrap:hover img {
    transform: scale(1.1);
}

/* Back to Top button */
#back-to-top {
    position: fixed;
    bottom: 32px;
    right: 32px;
    z-index: 9999;
    width: 48px;
    height: 48px;
    background: #3e6896;
    color: #fff;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(62, 104, 150, 0.35);
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease, background 0.2s ease;
}

#back-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

#back-to-top:hover {
    background: #F96305;
    box-shadow: 0 6px 20px rgba(217, 117, 57, 0.4);
    transform: translateY(-3px);
}

#back-to-top svg {
    width: 20px;
    height: 20px;
}

/* ==========================================================================
   SOLUTIONS PAGE
   ========================================================================== */

/* Section 2 - Alternating post cards */
.solution-post-card {
    display: flex;
    align-items: stretch;
    background: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    margin-bottom: 2rem;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.solution-post-card:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.13);
}

.solution-post-card .card-image {
    flex: 0 0 45%;
    max-width: 45%;
    overflow: hidden;
    position: relative;
}

.solution-post-card .card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 280px;
    display: block;
    transition: transform 0.5s ease;
}

.solution-post-card:hover .card-image img {
    transform: scale(1.04);
}

.solution-post-card .card-body-content {
    flex: 1;
    padding: 2.5rem 2.8rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.solution-post-card .card-body-content::before {
    content: '';
    position: absolute;
    left: 0;
    top: 15%;
    height: 70%;
    width: 4px;
    background: #F96305;
    border-radius: 0 4px 4px 0;
}

.solution-post-card.reverse {
    flex-direction: row-reverse;
}

.solution-post-card.reverse .card-body-content::before {
    left: auto;
    right: 0;
    border-radius: 4px 0 0 4px;
}

.solution-post-card .post-label {
    font-size: 13px;
    font-weight: 700;
    color: #F96305;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0.6rem;
}

.solution-post-card h3 {
    font-size: 20px;
    font-weight: 700;
    color: #3e6896;
    margin-bottom: 1rem;
    line-height: 1.4;
}

.solution-post-card h3 a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}

.solution-post-card h3 a:hover {
    color: #F96305;
}

.solution-post-card .excerpt {
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    margin-bottom: 1.5rem;
    text-align: justify;
}

.solution-post-card .read-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #3e6896;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.2s, gap 0.2s;
}

.solution-post-card .read-more:hover {
    color: #F96305;
    gap: 12px;
}

/* Section 3 - Why choose */
.why-choose-wrap {
    background-color: #e5e5e5;
}

.why-choose-icon-box {
    text-align: center;
    padding: 1rem 0.5rem;
    transition: transform 0.3s;
}

.why-choose-icon-box:hover {
    transform: translateY(-6px);
}

.why-choose-icon-box .icon-circle {
    width: 80px;
    height: 80px;
    background: #1e5088;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    box-shadow: 0 4px 12px rgba(30, 80, 136, 0.25);
    transition: background 0.3s;
}

.why-choose-icon-box:hover .icon-circle {
    background: #F96305;
}

.why-choose-icon-box .icon-circle img {
    width: 36px;
    height: 36px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.why-choose-icon-box p {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.4;
}

/* ==========================================================================
   RESPONSIVE - Tablet (max 991px)
   ========================================================================== */
@media (max-width: 991px) {

    /* Services - Process timeline: stack vertically on tablet */
    .process-timeline {
        display: none !important;
    }

    .process-timeline-mobile {
        display: block !important;
    }

    /* Solutions - reduce card padding */
    .solution-post-card .card-body-content {
        padding: 1.8rem 2rem 1.8rem 2.4rem;
    }

    .solution-post-card h3 {
        font-size: 18px;
    }

    /* Why choose - smaller icons */
    .why-choose-icon-box .icon-circle {
        width: 65px;
        height: 65px;
    }

    .why-choose-icon-box .icon-circle img {
        width: 28px;
        height: 28px;
    }
}

/* ==========================================================================
   RESPONSIVE - Mobile (max 767px)
   ========================================================================== */
@media (max-width: 767px) {

    /* Back to Top */
    #back-to-top {
        bottom: 20px;
        right: 20px;
        width: 42px;
        height: 42px;
    }

    /* Services - service cards full width */
    .service-card .card-image {
        height: 220px !important;
    }

    /* Solutions - stack all cards vertically */
    .solution-post-card,
    .solution-post-card.reverse {
        flex-direction: column;
    }

    .solution-post-card .card-image {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .solution-post-card .card-image img {
        min-height: 220px;
        max-height: 260px;
    }

    .solution-post-card .card-body-content {
        padding: 1.5rem 1.5rem 1.5rem 2rem;
    }

    /* Reverse card: reset border side on mobile */
    .solution-post-card.reverse .card-body-content::before {
        left: 0;
        right: auto;
        border-radius: 0 4px 4px 0;
    }

    .solution-post-card h3 {
        font-size: 16px;
    }

    .solution-post-card .excerpt {
        font-size: 13px;
        -webkit-line-clamp: 4;
    }

    /* Why choose - 2 columns on mobile */
    .why-choose-icon-box .icon-circle {
        width: 60px;
        height: 60px;
    }

    .why-choose-icon-box .icon-circle img {
        width: 26px;
        height: 26px;
    }

    .why-choose-icon-box p {
        font-size: 12px;
    }
}

/* ==========================================================================
   SINGLE POST PAGE
   ========================================================================== */

/* --- Hero Section --- */
.single-hero {
    overflow: hidden;
}

.single-slide-cell,
.single-hero-banner {
    position: relative;
}

.single-slide-img,
.single-hero-img {
    width: 100%;
    height: 70vh;
    min-height: 400px;
    max-height: 700px;
    object-fit: cover;
    display: block;
}

.single-slide-placeholder,
.single-hero-placeholder {
    width: 100%;
    height: 70vh;
    min-height: 400px;
    background: #1e3a5f;
}

.single-slide-overlay {
    background: linear-gradient(90deg, rgba(16, 42, 80, 0.85) 0%, rgba(16, 42, 80, 0.5) 55%, rgba(0, 0, 0, 0.1) 100%);
    z-index: 1;
}

.single-slide-content {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 2;
    padding: 0 5% 0 7%;
    max-width: 780px;
}

.single-slide-title {
    font-size: clamp(28px, 4vw, 52px);
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 1rem;
    color: #fff;
}

.single-slide-desc {
    font-size: clamp(15px, 1.6vw, 18px);
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 0.5rem;
}

.single-slide-desc * {
    color: rgba(255, 255, 255, 0.9);
}

.single-slide-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #F96305;
    border: none;
    padding: 12px 28px;
    border-radius: 0;
    font-size: 15px;
    letter-spacing: 0.5px;
    transition: background 0.25s, transform 0.25s;
}

.single-slide-btn:hover {
    background-color: #b85f28;
    transform: translateY(-2px);
}

.single-hero-badge {
    display: inline-block;
    background: #F96305;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    padding: 4px 14px;
    border-radius: 2px;
    margin-bottom: 0.8rem;
}

.single-hero-meta,
.single-post-meta {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.8);
}

.single-hero-date,
.single-post-date {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: #888;
}

.single-hero-date svg,
.single-post-date svg {
    flex-shrink: 0;
}

/* --- Main Content Section --- */
.single-content-section {
    background: #f7f8fa;
}

.single-article {
    background: #fff;
    border-radius: 4px;
    padding: 2.5rem 3rem;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

/* Category badge */
.single-cat-link {
    display: inline-block;
    background: #eef2f8;
    color: #3e6896;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    padding: 4px 14px;
    border-radius: 2px;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}

.single-cat-link:hover {
    background: #3e6896;
    color: #fff;
}

/* Post title */
.single-post-title {
    font-size: clamp(22px, 3.5vw, 36px);
    font-weight: 700;
    color: #1a2d4a;
    line-height: 1.3;
    margin: 0.5rem 0 0;
}

.single-title-divider {
    width: 60px;
    height: 4px;
    background: #F96305;
    border-radius: 2px;
}

/* Post body / entry-content */
.single-post-body {
    font-size: 16px;
    line-height: 1.85;
    color: #333;
}

.single-post-body h2,
.single-post-body h3,
.single-post-body h4 {
    color: #1a2d4a;
    font-weight: 700;
    margin-top: 2rem;
    margin-bottom: 0.8rem;
}

.single-post-body p {
    margin-bottom: 1.2rem;
    text-align: justify;
}

.single-post-body img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 1rem 0;
}

.single-post-body ul,
.single-post-body ol {
    padding-left: 1.5rem;
    margin-bottom: 1.2rem;
}

.single-post-body ul li,
.single-post-body ol li {
    display: list-item;
    margin-bottom: 0.4rem;
}

.single-post-body blockquote {
    border-left: 4px solid #F96305;
    padding: 1rem 1.5rem;
    background: #fef7f2;
    margin: 1.5rem 0;
    font-style: italic;
    color: #555;
}

/* Meta bar (no-slider case) */
.single-meta-bar {
    font-size: 13px;
    color: #888;
}

.single-page-title {
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #eee;
    margin-bottom: 2rem;
}

/* --- Social Share --- */
.single-share-bar {
    border-top: 1px solid #eee;
}

.single-share-label {
    display: block;
}

.single-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    text-decoration: none;
    color: #fff;
    transition: transform 0.2s, opacity 0.2s;
}

.single-share-btn:hover {
    transform: translateY(-3px);
    opacity: 0.85;
    color: #fff;
}

.single-share-fb {
    background: #1877f2;
}

.single-share-x {
    background: #000;
}

.single-share-zalo {
    background: #0068ff;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
}

/* --- Sidebar --- */
.single-sidebar {
    background: #fff;
    border-radius: 4px;
    padding: 2rem 1.8rem;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    position: sticky;
    top: 130px;
}

.sidebar-accent-bar {
    width: 5px;
    height: 22px;
    background: #F96305;
    border-radius: 3px;
    flex-shrink: 0;
}

.sidebar-title {
    font-size: 16px;
    font-weight: 700;
    color: #1a2d4a;
    letter-spacing: 0.5px;
}

/* Related post item */
.related-post-item {
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #f0f0f0;
}

.related-post-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0 !important;
}

.related-thumb-wrap {
    width: 90px;
    height: 70px;
    border-radius: 4px;
    flex-shrink: 0;
    display: block;
}

.related-thumb-img {
    width: 90px;
    height: 70px;
    object-fit: cover;
    border-radius: 4px;
    transition: transform 0.3s ease;
}

.related-thumb-wrap:hover .related-thumb-img {
    transform: scale(1.05);
}

.related-thumb-placeholder {
    width: 90px;
    height: 70px;
    background: #dde5f0;
    border-radius: 4px;
}

.related-date {
    font-size: 11px;
    color: #aaa;
    letter-spacing: 0.3px;
}

.related-title {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    color: #1a2d4a;
    margin: 0;
}

.related-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}

.related-title a:hover {
    color: #F96305;
}

/* ==========================================================================
   SINGLE - RESPONSIVE Tablet (max 991px)
   ========================================================================== */
@media (max-width: 991px) {

    .single-slide-img,
    .single-hero-img {
        height: 55vh;
        min-height: 300px;
    }

    .single-slide-content {
        padding: 0 4% 0 5%;
        max-width: 90%;
    }

    .single-article {
        padding: 2rem 1.8rem;
    }

    .single-sidebar {
        position: static;
        margin-top: 1.5rem;
    }
}

/* ==========================================================================
   SINGLE - RESPONSIVE Mobile (max 767px)
   ========================================================================== */
@media (max-width: 767px) {

    .single-slide-img,
    .single-hero-img,
    .single-slide-placeholder,
    .single-hero-placeholder {
        height: 55vw;
        min-height: 220px;
        max-height: 320px;
    }

    .single-slide-overlay {
        background: linear-gradient(180deg, rgba(16, 42, 80, 0.7) 0%, rgba(16, 42, 80, 0.5) 100%);
    }

    .single-slide-content {
        top: auto;
        bottom: 0;
        left: 0;
        transform: none;
        padding: 1.2rem 1.2rem 1.5rem;
        max-width: 100%;
    }

    .single-slide-title {
        font-size: 20px;
        margin-bottom: 0.5rem;
    }

    .single-slide-desc {
        font-size: 13px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .single-slide-btn {
        font-size: 13px;
        padding: 9px 18px;
    }

    .single-article {
        padding: 1.4rem 1.2rem;
    }

    .single-post-title {
        font-size: 20px;
    }

    .single-post-body {
        font-size: 15px;
        line-height: 1.75;
    }

    .single-sidebar {
        padding: 1.4rem 1.2rem;
    }

    .related-thumb-wrap,
    .related-thumb-img,
    .related-thumb-placeholder {
        width: 75px;
        height: 58px;
    }

    .related-title {
        font-size: 13px;
    }
    .section-1 h3 {
        font-size: 16px;
    }
}

/* ==========================================================================
   SINGLE PROJECT PAGE
   ========================================================================== */

/* --- Hero Gallery --- */
.proj-hero {
    position: relative;
    background: #0a1a2f;
    overflow: hidden;
}

.proj-main-gallery,
.proj-hero-fallback {
    position: relative;
    width: 100%;
}

.proj-slide-cell {
    width: 100%;
    position: relative;
}

.proj-main-img {
    width: 100%;
    height: 75vh;
    min-height: 420px;
    max-height: 780px;
    object-fit: cover;
    display: block;
}

.proj-slide-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(10, 26, 47, 0.25) 0%, rgba(10, 26, 47, 0.65) 100%);
    pointer-events: none;
    z-index: 1;
}

/* Flickity prev/next buttons on gallery */
.proj-main-gallery .flickity-button {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(4px);
    border-radius: 50%;
    width: 52px;
    height: 52px;
    opacity: 0;
    transition: opacity 0.3s, background 0.2s;
}

.proj-main-gallery:hover .flickity-button {
    opacity: 1;
}

.proj-main-gallery .flickity-button:hover {
    background: rgba(217, 117, 57, 0.85);
}

.proj-main-gallery .flickity-button svg path {
    fill: #fff;
}

/* Thumbnail strip */
.proj-thumb-gallery {
    padding: 10px 0 4px;
    background: #0d1e33;
}

.proj-thumb-cell {
    width: 110px;
    margin-right: 8px;
    cursor: pointer;
    border-radius: 3px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: border-color 0.25s;
    opacity: 0.65;
    transition: opacity 0.25s, border-color 0.25s;
}

.proj-thumb-cell.is-nav-selected,
.proj-thumb-cell:hover {
    border-color: #F96305;
    opacity: 1;
}

.proj-thumb-img {
    width: 110px;
    height: 70px;
    object-fit: cover;
    display: block;
}

/* Hero title bar (overlaid at bottom of hero area) */
.proj-hero-title-bar {
    background: linear-gradient(90deg, #0d2444 0%, #1e3a5f 100%);
    padding: 1.4rem 0;
}

.proj-cat-badge {
    display: inline-block;
    background: #F96305;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 3px 12px;
    border-radius: 2px;
    text-decoration: none;
    margin-right: 6px;
    transition: background 0.2s;
}

.proj-cat-badge:hover {
    background: #b85f28;
    color: #fff;
}

.proj-hero-title {
    font-size: clamp(22px, 3vw, 38px);
    font-weight: 700;
    color: #fff;
    margin: 0.4rem 0 0.6rem;
    line-height: 1.3;
}

.proj-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
}

.proj-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
}

.proj-meta-item svg {
    flex-shrink: 0;
    stroke: #F96305;
}

/* --- Content Section --- */
.proj-content-section {
    background: #f7f8fa;
}

/* Info chips */
.proj-info-bar {
    border-bottom: 1px solid #e0e5ee;
    padding-bottom: 2rem;
    margin-bottom: 2rem !important;
}

.proj-info-chip {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border-radius: 8px;
    padding: 1rem 1.5rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
    flex: 1 1 200px;
    max-width: 320px;
}

.proj-info-chip-icon {
    width: 44px;
    height: 44px;
    background: #eef2f8;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.proj-info-chip-icon svg {
    stroke: #3e6896;
}

.proj-info-chip-text {
    display: flex;
    flex-direction: column;
}

.proj-info-label {
    font-size: 11px;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 2px;
}

.proj-info-value {
    font-size: 15px;
    color: #1a2d4a;
    line-height: 1.3;
}

/* Article */
.proj-article {
    background: #fff;
    border-radius: 4px;
    padding: 2.5rem 3rem;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.proj-article-divider {
    display: flex;
    align-items: center;
    gap: 14px;
}

.proj-divider-bar {
    width: 5px;
    height: 22px;
    background: #F96305;
    border-radius: 3px;
    flex-shrink: 0;
}

.proj-divider-label {
    font-size: 14px;
    color: #3e6896;
    letter-spacing: 0.5px;
}

/* Body/entry-content (inherits from single post) */
.proj-body {
    font-size: 16px;
    line-height: 1.85;
    color: #333;
}

.proj-body h2,
.proj-body h3,
.proj-body h4 {
    color: #1a2d4a;
    font-weight: 700;
    margin-top: 1.8rem;
    margin-bottom: 0.8rem;
}

.proj-body p {
    margin-bottom: 1.2rem;
    text-align: justify;
}

.proj-body img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 1rem 0;
}

.proj-body ul,
.proj-body ol {
    padding-left: 1.5rem;
    margin-bottom: 1.2rem;
}

.proj-body ul li,
.proj-body ol li {
    display: list-item;
    margin-bottom: 0.4rem;
}

/* --- Related Projects Section --- */
.proj-related-section {
    background: #f0f3f7;
}

.proj-section-bar {
    width: 5px;
    height: 24px;
    background: #F96305;
    border-radius: 3px;
    flex-shrink: 0;
}

.proj-section-title {
    font-size: 20px;
    font-weight: 700;
    color: #1a2d4a;
    letter-spacing: 0.5px;
}

/* Related carousel cells */
.proj-related-carousel .flickity-button {
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.proj-related-carousel .flickity-button:hover {
    background: #F96305;
}

.proj-related-carousel .flickity-button:hover svg path {
    fill: #fff;
}

.proj-related-cell {
    width: 25%;
    padding-right: 20px;
}

.proj-related-card {
    display: block;
    text-decoration: none;
}

.proj-related-img-wrap {
    position: relative;
    border-radius: 4px;
    overflow: hidden;
}

.proj-related-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.proj-related-img-placeholder {
    width: 100%;
    height: 220px;
    background: #dde5f0;
}

.proj-related-card:hover .proj-related-img {
    transform: scale(1.06);
}

.proj-related-hover-overlay {
    position: absolute;
    inset: 0;
    background: rgba(62, 104, 150, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.proj-related-card:hover .proj-related-hover-overlay {
    opacity: 1;
}

.proj-related-view-btn {
    display: inline-block;
    background: #F96305;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 8px 20px;
    border-radius: 2px;
    transform: translateY(8px);
    transition: transform 0.3s ease;
}

.proj-related-card:hover .proj-related-view-btn {
    transform: translateY(0);
}

.proj-related-title {
    font-size: 15px;
    font-weight: 600;
    color: #1a2d4a;
    margin-bottom: 4px;
    line-height: 1.4;
    transition: color 0.2s;
}

.proj-related-card:hover .proj-related-title {
    color: #F96305;
}

.proj-related-addr {
    font-size: 12px;
    color: #888;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 5px;
}

.proj-related-addr svg {
    stroke: #F96305;
    flex-shrink: 0;
}

/* ==========================================================================
   PROJECT - RESPONSIVE Tablet (max 991px)
   ========================================================================== */
@media (max-width: 991px) {
    .proj-main-img {
        height: 55vh;
        min-height: 300px;
    }

    .proj-related-cell {
        width: 33.333%;
    }

    .proj-related-img,
    .proj-related-img-placeholder {
        height: 180px;
    }

    .proj-article {
        padding: 2rem 1.8rem;
    }

    .proj-info-chip {
        max-width: 100%;
    }
}

/* ==========================================================================
   PROJECT - RESPONSIVE Mobile (max 767px)
   ========================================================================== */
@media (max-width: 767px) {
    .proj-main-img {
        height: 56vw;
        min-height: 220px;
        max-height: 340px;
    }

    .proj-thumb-gallery {
        padding: 8px 0 2px;
    }

    .proj-thumb-cell {
        width: 80px;
        margin-right: 6px;
    }

    .proj-thumb-img {
        width: 80px;
        height: 52px;
    }

    .proj-hero-title {
        font-size: 18px;
    }

    .proj-hero-meta {
        gap: 0.6rem;
    }

    .proj-meta-item {
        font-size: 12px;
    }

    .proj-info-bar {
        flex-direction: column;
    }

    .proj-info-chip {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .proj-article {
        padding: 1.4rem 1.2rem;
    }

    .proj-body {
        font-size: 15px;
    }

    .proj-related-cell {
        width: 70%;
        padding-right: 12px;
    }

    .proj-related-img,
    .proj-related-img-placeholder {
        height: 180px;
    }
}

/* ==========================================================================
   PROJECTS PAGE (LISTING)
   ========================================================================== */

/* --- Project Grid --- */
.project-page-card {
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
}

.project-page-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

.project-page-img-wrap {
    position: relative;
    width: 100%;
    padding-top: 130%;
    /* Tall aspect ratio for elevators */
    overflow: hidden;
}

.project-page-img-wrap img,
.project-page-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.project-page-placeholder {
    background: #dde5f0;
}

.project-page-card:hover .project-page-img-wrap img {
    transform: scale(1.05);
}

.project-page-info {
    padding: 1.5rem 1.2rem;
    background: #eef1f5;
}

.project-page-title {
    font-size: 16px;
    font-weight: 700;
    color: #1a2d4a;
    margin-bottom: 0.8rem;
    line-height: 1.4;
    transition: color 0.2s;
}

.project-page-card:hover .project-page-title {
    color: #F96305;
}

.project-page-meta {
    font-size: 13px;
    color: #555;
    margin-bottom: 0.3rem;
    line-height: 1.5;
}

.project-page-meta strong {
    color: #3e6896;
}

/* --- Testimonials --- */
.testimonial-text-carousel {
    margin-bottom: 2rem;
}

.testimonial-avatar-carousel {
    padding: 20px 0;
}

/* Avatar cells */
.testimonial-avatar-cell {
    width: 33.333%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.4s ease, opacity 0.4s ease;
    opacity: 0.4;
    transform: scale(0.7);
    cursor: pointer;
}

.testimonial-avatar-cell.is-selected {
    opacity: 1;
    transform: scale(1);
    z-index: 2;
}

.testimonial-avatar-img {
    width: 90%;
    height: 90%;
    border: 8px solid #eef2f8;
    /* box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05); */
    background-color: #eef2f8;
    transition: border-color 0.4s ease;
}

.testimonial-avatar-cell.is-selected .testimonial-avatar-img {
    border-color: #fff;
    /* box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1); */
}

/* Flickity Buttons for avatar carousel */
.testimonial-avatar-carousel .flickity-button {
    background: transparent;
    transition: transform 0.2s, opacity 0.2s;
}

.testimonial-avatar-carousel .flickity-button:hover {
    background: rgba(62, 104, 150, 0.08);
}

.testimonial-avatar-carousel .flickity-prev-next-button {
    width: 44px;
    height: 44px;
    border-radius: 50%;
}

.testimonial-avatar-carousel .flickity-prev-next-button.previous {
    left: 10px;
}

.testimonial-avatar-carousel .flickity-prev-next-button.next {
    right: 10px;
}

.testimonial-avatar-carousel .flickity-button svg path {
    fill: #3e6896;
}

/* Mobile responsive for projects list */
@media (max-width: 767px) {
    .project-page-img-wrap {
        padding-top: 100%;
    }

    .testimonial-avatar-img {
        width: 100px;
        height: 100px;
        border-width: 5px;
    }

    .testimonial-avatar-cell {
        transform: scale(0.8);
    }
}

/* ==========================================================================
   CONTACT PAGE
   ========================================================================== */

.contact-page-wrapper {
    position: relative;
    background: #f7f8fa;
    display: flex;
    flex-direction: column;
}

/* Hero */
.contact-hero {
    min-height: 500px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    /* Use scroll or fixed if needed */
}

.contact-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(16, 42, 80, 0.7);
}

.contact-title {
    font-size: clamp(28px, 4vw, 42px);
    letter-spacing: 0.5px;
}

.contact-desc {
    font-size: 16px;
    color: rgba(255, 255, 255, 0.9);
}

.contact-hotline-btn {
    display: inline-block;
    background: #0056a8;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 3px;
    text-decoration: none;
    transition: background 0.3s;
}

.contact-hotline-btn:hover {
    background: #F96305;
    color: #fff;
}

/* Form Box */
.contact-form-container {
    z-index: 10;
    position: relative;
    max-width: 900px;
}

.contact-form-box {
    max-width: 850px;
    padding: 2.5rem 4rem 3.5rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    position: relative;
    border-radius: 4px;
    padding-top: 60px;
}

.contact-icon-circle {
    width: 60px;
    height: 60px;
    background: #0056a8;
    border-radius: 50%;
    margin-top: -30px;
    /* pull up out of box */
}

/* CF7 form reset - layout handled by .form-contact-page */
.contact-cf7-wrap .wpcf7-form {
    display: block;
    box-shadow: none !important;
}

.contact-cf7-wrap .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.contact-cf7-wrap input[type="text"],
.contact-cf7-wrap input[type="email"],
.contact-cf7-wrap input[type="tel"],
.contact-cf7-wrap textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #e0e0e0;
    border-radius: 0;
    padding: 10px 0;
    background: transparent;
    font-size: 14px;
    color: #333;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color 0.3s;
}

.contact-cf7-wrap input:focus,
.contact-cf7-wrap textarea:focus {
    border-bottom-color: #0056a8;
}

.contact-cf7-wrap textarea {
    height: 40px;
    resize: none;
    padding-top: 15px;
}

.contact-cf7-wrap input::placeholder,
.contact-cf7-wrap textarea::placeholder {
    color: #aaa;
}

.contact-cf7-wrap .wpcf7-submit {
    background: #0056a8;
    color: #fff;
    border: none;
    padding: 10px 30px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.3s;
    margin-top: 15px;
}

.contact-cf7-wrap .wpcf7-submit:hover {
    background: #F96305;
}

/* Cam kết text (if added via CF7, style appropriately. Otherwise handled by center alignment) */
.contact-cf7-wrap .wpcf7-form > p:nth-last-child(2) {
    text-align: center;
    color: #0056a8;
    font-size: 14px;
    margin-top: 10px;
}

.contact-cf7-wrap .wpcf7-form > p:last-child {
    display: flex;
    justify-content: center;
    width: 100%;
}

/* ============================================
   FORM-CONTACT (New DOM structure)
   ============================================ */

/* Intro text */
.form-contact-page > p:first-of-type {
    text-align: center;
    color: #0b4e8c;
    font-size: 15px;
    margin-bottom: 28px;
}

/* Cam ket text */
.form-contact-page > p:nth-last-of-type(2) {
    text-align: center;
    color: #0b4e8c;
    font-size: 14px;
    font-weight: 600;
    margin: 20px 0 0;
}

/* Submit wrapper */
.form-contact-page > p:last-of-type {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

/* 2-column row */
.form-contact-page .row-input {
    display: flex;
    gap: 20px;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 20px;
}

.form-contact-page .item-input,
.form-contact-page .item-area {
    flex: 1;
    min-width: 0;
}

.form-contact-page .item-input p,
.form-contact-page .item-area p {
    margin: 0;
}

/* Inputs & Textarea */
.form-contact-page .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.form-contact-page input[type="text"],
.form-contact-page input[type="email"],
.form-contact-page input[type="tel"] {
    width: 100%;
    border: none;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
    padding: 10px 0;
    background: transparent;
    font-size: 14px;
    color: #333;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color 0.3s;
}

.form-contact-page textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
    padding: 10px 0;
    background: transparent;
    font-size: 14px;
    color: #333;
    box-shadow: none !important;
    outline: none !important;
    resize: none;
    height: 45px;
    transition: border-color 0.3s;
}

.form-contact-page input:focus,
.form-contact-page textarea:focus {
    border-bottom-color: #0b4e8c;
}

.form-contact-page input::placeholder,
.form-contact-page textarea::placeholder {
    color: #aaa;
    font-size: 14px;
}

/* Submit Button */
.form-contact-page .wpcf7-submit,
.form-contact-page .submit-form {
    background: #0b4e8c;
    color: #fff;
    border: none;
    padding: 12px 40px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.5px;
    border-radius: 0;
    cursor: pointer;
    transition: background 0.3s;
    text-transform: uppercase;
}

.form-contact-page .wpcf7-submit:hover,
.form-contact-page .submit-form:hover {
    background: #F96305;
}

/* Map Section */
.contact-map-section {
    position: relative;
    z-index: 1;
}

.map-iframe-wrap iframe {
    width: 100% !important;
    height: 500px !important;
    display: block;
    border: none;
}

/* Mobile responsive */
@media (max-width: 767px) {
    .contact-form-box {
        padding: 3rem 1.5rem 2.5rem;
    }
    .form-contact-page .row-input {
        gap: 0px;
        flex-direction: column;
    }

    .contact-cf7-wrap .wpcf7-form>p:nth-child(1),
    .contact-cf7-wrap .wpcf7-form>p:nth-child(2),
    .contact-cf7-wrap .wpcf7-form>p:nth-child(3),
    .contact-cf7-wrap .wpcf7-form>p:nth-child(4) {
        width: 100%;
    }
}

/* ===================================
   Title with Orange Underline
   =================================== */
h2.title-with-line {
    font-size: 32px;
    position: relative;
    padding-bottom: 16px;
}

h2.title-with-line::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 145px;
    height: 3px;
    background-color: #F96305;
}

@media (max-width: 767px) {
    h2.title-with-line {
        font-size: 24px;
    }
}