@font-face {
    font-family: 'MTD-Valky';
    src: url(../fonts/MTD-Valky-Light.otf) format('opentype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'MTD-Valky';
    src: url(../fonts/MTD-Valky-Regular.otf) format('opentype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'MTD-Valky';
    src: url(../fonts/MTD-Valky-Semibold.otf) format('opentype');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'MTD-Valky';
    src: url(../fonts/MTD-Valky-Bold.otf) format('opentype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url(../fonts/SVN-Gilroy-Light.ttf) format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'SVN-Gilroy';
    src: url(../fonts/SVN-Gilroy-Regular.ttf) format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'SVN-Gilroy';
    src: url(../fonts/SVN-Gilroy-Semibold.ttf) format('truetype');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'SVN-Gilroy';
    src: url(../fonts/SVN-Gilroy-Bold.ttf) format('truetype');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'SourceSerif4';
    src: url(../fonts/SourceSerif4-Light.ttf) format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'SourceSerif4';
    src: url(../fonts/SourceSerif4-Regular.ttf) format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'SourceSerif4';
    src: url(../fonts/SourceSerif4-SemiBold.ttf) format('truetype');
    font-weight: 600;
    font-style: normal;
}

body {
    font-family: 'MTD-Valky', sans-serif;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: #212121;
}
img {
    max-width: 100%;
    transition: all 0.5s ease-in-out;
    height: auto;
}
a {
    transition: all 0.5s ease-in-out!important;
}
a:hover {
    text-decoration: none;
}
.container {
    max-width: 1210px;
}
.home-box-video {
    background: url("../images/hero-bg.png") no-repeat top center;
    background-size: cover;
    padding: 40px 0;
}
.header-items {
    flex-wrap: wrap;
}
.header-items .header-item:not(:last-child) {
    margin-right: 100px;
}
.container {
    max-width: 1210px;
}
.header-top-text {
    font-size: 36px;
    line-height: 45px;
    color: #650000;
    font-weight: 700;
}
.logo {
    height: 100%;
}
.hero-btn {
    margin: 1px 0 0 0;
}
.hero-btn-link:hover {
    transform: scale(1.02);
}
.box-video {
    background: url('../images/KV.png') no-repeat center;
    background-size: 1180px;
    min-height: 546px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 16px 0 0 0;
    padding: 40px 57px;
}
.box-video img {
    max-width: 800px;
    margin: 0 auto;
    border-radius: 24px;
}
.view-more-video {
    display: block;
    color: #852629;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    text-align: center;
    text-decoration: underline;
    margin: 16px 0 0 0;
}
.box-why-choose {
    background: #F9E3BB;
    padding: 40px 0 96px 0;
}
.box-why-choose > .container {
    position: relative;
}
.cloud-first {
    position: absolute;
    top: -46px;
    right: -46px;
    display: none;
}
.cloud-two {
    position: absolute;
    top: 26px;
    left: -5px;
    z-index: 10;
    display: none;
}
.cloud-three {
    position: absolute;
    right: 0;
    bottom: 143px;
    z-index: 10;
    display: none;
}
.box-top-text {
    font-weight: 700;
    font-size: 48px;
    line-height: 55px;
    color: #852629;
    margin: 0 0 0 0;
}
.box-bottom-text {
    font-weight: 400;
    font-size: 30px;
    line-height: 38px;
    color: #516E66;
    margin: 0 0 32px 0;
    font-family: 'SVN-Gilroy';
}
.special-item-content h3 {
    font-size: 20px;
    line-height: 30px;
    margin: 24px 0 16px 0;
    color: #852629;
    font-weight: 700;
}
.special-item-content p {
    font-weight: 400;
    line-height: 24px;
    margin: 0;
    font-family: 'SVN-Gilroy';
    margin-bottom: 15px;
    color: #18373E;
}
.slick-why-choose .slick-list {
    margin: 0 -17.5px;
}
.slick-why-choose .slick-arrow {
    border: 0;
    background: none;
    bottom: -70px;
    top: auto;
    width: 40px;
    height: 40px;
}
.slick-why-choose .slick-prev {
    left: calc(50% - 45px);
}
.slick-why-choose .slick-next {
    right: calc(50% - 45px);
}
.why-choose-item {
    margin: 0 17.5px;
}
.img-location img {
    width: 100%;
    transition: all 0.5s ease-in-out;
}
.img-location:hover img {
    transform: scale(1.02);
}
.mt-70 {
    margin-top: 70px;
}
.box-price {
    background: url("../images/bg-ticket.png") no-repeat top center;
    background-size: cover;
    padding: 46px 0 46px 0;
}
.text-price {
    font-weight: 700;
    font-size: 48px;
    line-height: 55px;
    text-align: center;
    color: #F3C16A;
}
.box-qa {
    background: #852629;
    padding: 105px 0;
}
.card-row {
    width: 653px;
    padding:0;
    margin: 8px;
    background-color:#FFE9D4;
    border-radius: 12px;
}
.item-btn-link{
    text-decoration: none;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 16px;
    color: #4D0305;
}
.box-footer {
    background: url("../images/a07f2eec7aba6b30a8bb88f4dfa71b339a889d49.png") no-repeat top center;
    background-size: cover;
    padding: 32px 0;
}
.box-footer h2 {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    margin: 0 0 8px 0;
    color: #212121;
}
.box-footer .text-footer {
    margin: 0;
    font-weight: 400;
    font-family: 'SVN-Gilroy';
    color: #212121;
}
.video-top {
    background: url('../images/video-nen.png') no-repeat top left;
    background-size: cover;
    padding: 32px 0 64px 0;
}
.back-to-page a {
    color: #852629;
    padding-left: 27px;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    display: inline-block;
    background: url('../images/arrow-left.png') no-repeat left center;
    margin: 0 0 16px 0;
}
.video-top .video-content {
    background: url('../images/video-outer.png') no-repeat center;
    padding: 40px 57px;
}
.video-top .video-content img {
    max-width: 980px;
    margin: 0 auto;
    border-radius: 24px;
    display: block;
}
.program-box {
    background: #F9E3BB;
    padding: 48px 0 85px 0;
    position: relative;
}
.program-info {
    display: flex;
    flex-wrap: wrap;
    gap: 64px;
}
.program-info-left {
    width: 380px;
    display: flex;
    align-items: center;
}
.program-info-right {
    width: calc(100% - 444px);
}
.program-info-right h1 {
    margin: 0 0 30px 0;
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
    color: #852629;
}
.program-date label, .program-time label {
    color: #18373E;
    margin: 0 0 16px 0;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    width: 100%;
    font-family: 'SVN-Gilroy';
}
.program-date p {
    padding: 10px 16px 10px 50px;
    border-radius: 12px;
    display: inline-block;
    margin: 0 0 24px 0;
    font-family: 'SVN-Gilroy';
    background: url('../images/calendar.png') no-repeat left 16px center #516E66;
}
#show-date {
    background: none;
    border: 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #fff;
    padding: 0;
    width: 90px;
    height: auto;
    font-family: 'SVN-Gilroy';
}
.timeline-list ul {
    list-style: none;
    margin: 0 0 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 0;
}
.timeline-list ul li a {
    display: block;
    background: transparent;
    border-radius: 12px;
    font-size: 20px;
    line-height: 30px;
    padding: 10px 16px;
    color: #E9A33E;
    border: 1px #E9A33E solid;
    font-family: 'SVN-Gilroy';
}
.timeline-list ul li a.active, .timeline-list ul li a:hover {
    background: #E9A33E;
    color: #580E00;
}
.showtime-list {
    list-style: none;
    margin: 0 0 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 0;
}
.showtime-list li a {
    display: block;
    background: transparent;
    border: 1px solid #516E66;
    border-radius: 12px;
    font-size: 16px;
    line-height: 24px;
    padding: 10px 16px;
    color: #516E66;
    font-family: 'SVN-Gilroy';
    font-weight: 700;
}
.showtime-list li a.active, .showtime-list li a:hover {
    background: #516E66;
    color: #fff;
}
.program-description {
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    margin: 24px 0 0 0;
    max-width: 551px;
    font-family: 'SVN-Gilroy';
    color: #18373E;
    text-align: justify;
}
.program-description p:last-child {
    margin: 0;
}
.stage-layout {
    margin: 96px 0 0 0;
}
.stage-layout .title {
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
    color: #852629;
    margin: 0 0 16px 0;
}
.stage-layout .d-flex {
    gap: 32px;
}
.stage-layout .stage-layout-left {
    width: 767px;
    padding: 0 28px;
}
.stage-layout .stage-layout-right {
    width: calc(100% - 799px);
}
.ticket-description {
    padding: 8px 0;
    border-radius: 8px;
    background: #F3C16A;
    margin: 0 auto;
    max-width: 777px;
    display: inline-block;
}
.ticket-description ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    justify-content: center;
}
.ticket-description ul li {
    padding: 0 8px;
}
.ticket-description ul li p {
    margin: 0;
    font-weight: 400;
    font-size: 12px;
    line-height: 15px;
    color: #580E00;
    padding: 0 0 0 24px;
    position: relative;
    font-family: 'SVN-Gilroy';
}
.ticket-description ul li p::before {
    content: '';
    width: 16px;
    height: 16px;
    border-radius: 50%;
    position: absolute;
    top: -1px;
    left: 0;
}
.ticket-description ul li.ticket-standard p::before {
    background: #516E66;
}
.ticket-description ul li.ticket-vip p::before {
    background: #852629;
}
.ticket-description ul li.ticket-selected p::before {
    background: #F43BB6;
}
.ticket-description ul li.ticket-sold p::before {
    background: #ddd;
}
.ticket-booking-detail {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    justify-content: center;
    margin: 0 0 0 0;
}
.ticket-booking-detail p {
    margin: 0 0 5px 0;
    font-family: 'SVN-Gilroy';
    display: flex;
}
.ticket-booking-detail p span:first-child {
    width: 116px;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    display: inline-block;
    margin: 0 48px 0 0;
}
.ticket-booking-detail p span:last-child {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #F3C16A;
    display: inline-block;
    width: calc(100% - 164px);
}
.ticket-booking-info {
    margin: 32px 0 0 0;
}
.stage-layout-right .ticket-booking-info {
    border: 1px solid #FDE67E;
    border-radius: 8px;
    padding: 24px;
    margin: 0 0 0 0;
    background: #840004;
}
.stage-layout-right .ticket-booking-info .ticket-booking-detail {
    display: block;
}
.ticket-info-confirm .ticket-booking-detail p span:last-child, .ticket-info-completed .ticket-booking-detail p span:last-child {
    width: calc(100% - 156px);
}
.ticket-booking-form > p {
    font-weight: 400;
    font-size: 48px;
    line-height: 56px;
    background: linear-gradient(90deg, #FFF8A5 -0.41%, #FDE67E 10.68%, #F0D26E 14.71%, #CB9A42 25.8%, #B37726 34.88%, #AB6A1C 39.92%, #AF7021 44.96%, #BB822F 52.02%, #CFA147 61.09%, #EACA68 70.17%, #FDE67E 75.21%, #FFF7A0 100.41%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    margin: 0 0 32px 0;
}
.ticket-booking-form {
    max-width: 860px;
    margin: 0 auto;
}
.ticket-booking-form label {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    width: 175px;
    margin: 0 24px 0 0;
    font-family: 'SVN-Gilroy';
}
.ticket-booking-form input, .ticket-booking-form textarea {
    background: #580E00;
    color: #fff;
    width: calc(100% - 205px);
    border: 0;
    border-radius: 8px;
    padding: 7px 10px;
    color: #fff;
    font-family: 'SVN-Gilroy';
}
.ticket-booking-form textarea {
    min-height: 160px;
}
.ticket-booking-form textarea::placeholder {
    color: #F3C16A;
}
.ticket-booking-form button, .checkout-now button, .back-to-home a, .hero-btn > a, #startScan, .paynow {
    border: 0;
    color: #852629;
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    background: url('../images/bg-button-large.png') no-repeat top left;
    background-size: contain;
    padding: 14px 0;
    width: 270px;
    height: 49px;
    cursor: pointer;
}
.hero-btn > a {
    font-weight: 700;
    color: #852629;
    width: 202px;
    height: 42px;
    padding: 12px 0;
    background: url('../images/bg-button.png') no-repeat top left;
}
.checkout-ticket-info {
    background: #F9E3BB;
    padding: 32px 0 75px 0;
}
.ticket-info {
    border-radius: 24px;
    background: #852629;
    padding: 32px 48px;
}
.ticket-info p.title {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #F3C16A;
    margin: 0 0 16px 0;
}
.ticket-booking-detail-inner {
    width: 100%;
}
.ticket-info .ticket-booking-detail p span:first-child {
    width: 143px;
}
.ticket-info-confirm .ticket-booking-detail p span:first-child {
    width: 175px;
}
.ticket-info-completed {
    max-width: 80%;
    margin: 0 auto;
}
.ticket-info-completed .ticket-booking-detail p span:first-child {
    width: 190px;
}
.ticket-info-confirm .ticket-booking-detail {
    justify-content: start;
}
.ticket-booking-detail .back-to-home {
    margin: 24px 0 0 0;
}
.ticket-booking-detail .back-to-home a {
    margin: 0 auto;
}
.important-info {
    margin: 80px 0 0 0;
}
.important-info .important-info-left, .important-info .important-info-right {
    width: 50%;
}
.important-info .important-info-left .inner-content {
    max-width: 491px;
    padding-right: 64px;
}
.important-info .important-info-left .inner-content h4, .important-info .important-info-right .inner-content h4 {
    color: #852629;
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
}
.important-info .important-info-left .inner-content p {
    margin: 32px 0 0 0;
}
.important-info .important-info-left .inner-content ul li, .important-info .important-info-left .inner-content p  {
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
    color: #212121;
    list-style: none;
    position: relative;
}
.important-info .important-info-left .inner-content p.main-title {
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    color: #212121;
    font-family: 'MTD-Valky';
}
.important-info .important-info-left .inner-content ul {
    padding-left: 20px;
}
.important-info .important-info-right {
    border-left: 1px #852629 solid;
}
.important-info .important-info-right .inner-content {
    padding-left: 64px;
    max-width: 418px;
}
.important-info .important-info-right .inner-content .standard-ticket:not(:last-child) {
    margin: 0 0 64px 0;
}
.important-info .important-info-right .inner-content h4 {
    margin: 0 0 32px 0;
}
.standard-ticket {
    max-width: 327px;
}
.standard-ticket .title {
    margin: 24px 0 16px 0;
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #F9E3BB;
}
.important-info-right .standard-ticket .title {
    color: #852629;
    font-size: 24px;
    line-height: 36px;
    margin: 24px 0 8px 0;
}
.ticket-list .standard-ticket .title {
    margin-top: 40px;
}
.standard-ticket .price {
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #F6F6F6;
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}
.important-info-right .standard-ticket .price {
    color: #212121;
    font-size: 24px;
    line-height: 36px;
    margin: 0 0 8px 0;
}
.vip-ticket .title {
    background: linear-gradient(90deg, #FFF8A5 -0.41%, #FDE67E 10.68%, #F0D26E 14.71%, #CB9A42 25.8%, #B37726 34.88%, #AB6A1C 39.92%, #AF7021 44.96%, #BB822F 52.02%, #CFA147 61.09%, #EACA68 70.17%, #FDE67E 75.21%, #FFF7A0 100.41%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}
.important-info-right .vip-ticket .title {
    color: #852629;
    background: none;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #852629;
    background-clip: text;
}
.standard-ticket .price span {
    font-size: 20px;
    line-height: 30px;
}
.standard-ticket .description {
    min-height: 192px;
}
.important-info-right .standard-ticket .description {
    min-height: auto;
}
.standard-ticket ul {
    padding-left: 20px;
}
.standard-ticket ul li {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
    position: relative;
    list-style: none;
}
.standard-ticket ul li strong {
    color: #F3C16A;
}
.standard-ticket ul li::before, .important-info .important-info-left .inner-content ul li::before {
  content: "•";
  position: absolute;
  left: -14px;
  top: 0;
  font-size: 21px;
  color: #F3C16A;
}
.important-info-right .standard-ticket ul li::before,
.important-info .important-info-left .inner-content ul li::before {
    color: #212121;
}
.important-info-right .standard-ticket ul li {
    color: #212121;
    font-size: 16px;
    line-height: 24px;
}
.standard-ticket .seat-number {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    margin: 18px 0 0 0;
    font-family: 'SVN-Gilroy';
}
.important-info-right .standard-ticket .seat-number {
    color: #212121;
    font-size: 20px;
    line-height: 24px;
}
.standard-ticket .back-to-home {
    margin: 20px 0 0 0;
}
.checkout-now {
    margin: 80px 0 0 0
}
.thank-you {
    margin: 32px auto;
    max-width: 750px;
}
.thank-you p {
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    margin: 0;
    color: #580E00;
}
.back-to-home a, .paynow {
    display: inline-block;
    transition: all 0.5s ease-in-out;
}
.back-to-home a:hover, .paynow:hover {
    transform: scale(1.02);
}
header {
    background: #852629;
    padding: 8px 0;
}
.vietcharm-navbar .logo {
    height: 48px;
}
.btn-booking:hover {
    background-color: transparent;
    color: #f5c46b;
}
/* Hamburger icon trắng */
.navbar-toggler {
    border: none;
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.menu {
    height: 100%;
    margin-top: 3px;
}
.menu ul {
    list-style: none;
    gap: 32px;
    justify-content: end;
    height: 100%;
    margin: 0;
}
.menu ul li a {
    color: #fff;
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    padding: 0!important;
}
.menu ul li a:hover {
    color: #FDE67E;
}
.ticket-list {
    gap: 120px;
    margin: 36px 0 0 0;
}
.box-qa-inner {
    position: relative;
}
.box-qa-inner .qa-list {
    max-width: 782px;
    margin: 0 auto;
    background: url('../images/bg-qa.png') no-repeat center;
    background-size: 100% 100%;
    padding: 42px 113px;
    min-height: 481px;
}
.box-qa-inner .text-qa {
    position: absolute;
    font-weight: 700;
    font-size: 60px;
    line-height: 70px;
    top: 50%;
    writing-mode: vertical-rl;
    text-orientation: upright;
    color: #F3C16A;
    transform: translate(0, -50%);
}
.box-qa-inner .text-qa.text-qa-left {
    left: 40px;
}
.box-qa-inner .text-qa.text-qa-right {
    right: 40px;
}
.accordion-custom .card {
    background: #F9E3BB;
    padding: 12px 24px;
    border-radius: 12px!important;
    margin: 0 0 8px 0;
}
.accordion-custom .card > .card-header {
    padding: 0;
    background: none;
    border: 0;
}
.accordion-custom .card .card-body p {
    margin: 0;
}
.accordion-custom .card > .card-header button {
    padding: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #852629;
    position: relative;
    font-family: 'SVN-Gilroy';
}
.accordion-custom .card > .card-header button.collapsed::after {
    content: url('../images/arrow-down.png');
    position: absolute;
    right: 0;
    top: 2px;
    z-index: 10;
}
.accordion-custom .card > .card-header button::after {
    content: url('../images/x.png');
    position: absolute;
    right: 0;
    top: 2px;
    z-index: 10;
}
.accordion-custom .card .card-body {
    padding: 0;
    margin-top: 2px;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #18373E;
    font-family: 'SVN-Gilroy';
}
.slick-qa .slick-arrow {
    border: 0;
    background: none;
    bottom: -42px;
    top: auto;
    width: 24px;
    height: 24px;
}
.slick-qa .slick-arrow::before, .slick-why-choose .slick-arrow::before, .slider-thumb .slick-arrow::before {
    display: none;
}
.slick-qa .slick-prev {
    left: calc(50% - 29px);
}
.slick-qa .slick-next {
    right: calc(50% - 29px);
}
.column-footer-1 {
    padding-top: 30px;
}
.column-footer-2 {
    padding-left: 60px;
}
.column-footer-2 .text-footer:not(:last-child) {
    margin: 0 0 15px 0;
}
.column-footer-2 .text-footer a {
    color: #000;
}
.column-footer-2 .text-footer ul {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.column-footer-3 {
    height: 100%;
}
.socials {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 37px;
    align-items: center;
    height: 100%;
}
.socials li {
    width: calc(100% / 3 - 25px);
    text-align: center;
}
.socials li a img {
    transition: all 0.5s ease-in-out;
    width: 40px;
}
.socials li a:hover img {
    transform: rotate(180deg);
}
.our-special {
    padding: 64px 0 128px 0;
    background: #F9E3BB;
}
.our-special-box {
    max-width: 978px;
    margin: 0 auto;
    display: block;
    border-radius: 24px;
    background: #FAE9C9;
    padding: 40px;
}
.our-special .text-main {
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
    color: #852629;
    margin: 0;
}
.our-special-right .ekip-info {
    margin: 24px 0 0 0;
}
.our-special-right .ekip-info p {
    font-size: 24px;
    line-height: 36px;
    color: #18373E;
    margin: 0;
}
.our-special-right .ekip-info p:first-child {
    color: #18373E;
    font-size: 18px;
    line-height: 27px;
    font-family: 'SVN-Gilroy';
}
.our-special-right .ekip-info .description {
    color: #18373E;
    font-size: 18px;
    line-height: 27px;
    font-family: 'SVN-Gilroy';
    margin: 30px 0 0 0;
}
.qa-slider {
    padding: 80px 0;
}
.swiper-slide {
    width: 360px;
    opacity: 0.4;
    transform: scale(0.9);
    transition: all 0.4s ease;
}
.swiper-slide-active {
    opacity: 1;
    transform: scale(1);
}
.slide-frame {
    border: 2px solid #f5c16c;
    padding: 10px;
    background: #7b0000;
}
.slide-frame img {
    width: 100%;
    display: block;
}
.caption {
    text-align: center;
    margin-top: 20px;
    color: #f5c16c;
}
.caption h3 {
    font-weight: bold;
    margin-bottom: 5px;
}
.timeline {
    padding: 62px 0;
    background: #F9E3BB;
    position: relative;
}
.cloud-timeline-1 {
    position: absolute;
    right: 0;
    top: 286px;
    z-index: 10;
    display: none;
}
.cloud-timeline-2 {
    position: absolute;
    left: 0;
    top: 840px;
    z-index: 10;
    display: none;
}
.cloud-timeline-3 {
    position: absolute;
    right: 191px;
    bottom: 28px;
    z-index: 10;
    display: none;
}
.timeline h3.main-title {
    color: #852629;
    font-weight: 700;
    font-size: 48px;
    line-height: 55px;
    margin: 0 0 16px 0;
}
.timeline p.description {
    font-size: 16px;
    line-height: 24px;
    margin: 0;
    color: #18373E;
    font-family: 'SVN-Gilroy';
}
.timeline .timeline-list {
    margin: 48px 0 0 0;
    text-align: center;
}
.timeline .timeline-list > ul {
    margin: 0 auto;
    padding: 0 0 24px 0;
    border-bottom: 1px solid #852629;
    display: inline-block;
}
.timeline .timeline-list > ul li {
    display: inline-block;
}
.timeline-wrapper {
    position: relative;
    margin: 25px 0 0 0;
}
.timeline-item-title {
    margin: 0 0 45px 0;
    display: inline-block;
    font-size: 36px;
    line-height: 45px;
    position: relative;
    border-radius: 8px;
    color: #852629;
    text-transform: uppercase;
    font-weight: 700;
}
/* LINE */
.timeline-line {
    position: absolute;
    top: 103px;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: #852629;
    transform: translateX(-50%);
    height: 620px;
}
.timeline-wrapper-end .timeline-line {
    background: #852629;
    top: 0;
    height: 504px;
}
.timeline-item > * {
  min-width: 0;
}
/* DOT */
.timeline-item .dot {
    position: absolute;
    top: 0;
    width: 26px;
    height: 26px;
    background: #852629;
    border-radius: 50%;
    left: 50%;
    transform: translateX(-50%);
}
.timeline-item .dot.dot-last {
    bottom: 148px;
    top: auto;
}
/* ITEM */
.timeline-item {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: 100px;
    position: relative;
}
.timeline-has-slide {
    margin-bottom: 80px;
}
.timeline-wrapper-end .timeline-item {
    margin-bottom: 0;
}
/* TEXT */
.timeline-text {
    color: #fff;
}
.timeline-item .timeline-text, .timeline-item .timeline-images {
    width: 50%;
}
.timeline-item.left .timeline-text, .timeline-item.right .timeline-images {
    padding-right: 87px;
}
.timeline-item.right .timeline-text, .timeline-item.left .timeline-images {
    padding-left: 87px;
}
.timeline-text h3 {
    color: #852629;
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
}
.timeline-text > p {
    text-transform: uppercase;
    font-size: 24px;
    line-height: 34px;
    color: #E9A33E;
    margin: 0 0 20px 0;
    font-family: 'SVN-Gilroy';
    font-weight: 700;
}
.timeline-text ul {
    display: block;
}
.timeline-text ul li {
    font-size: 16px;
    line-height: 24px;
    color: #18373E;
    font-weight: 400;
    text-align: right;
    position: relative;
    margin: 0 0 5px 0;
    display: inline-block;
    font-family: 'SVN-Gilroy';
}
.timeline-item.right .timeline-text ul {
    padding-left: 35px;
}
.timeline-item.right .timeline-text ul li {
    text-align: left;
}

/* IMAGE */
.timeline-images .img-large {
    margin-bottom: 18px;
}
.timeline-images .img-row {
    display: flex;
    gap: 18px;
    position: relative;
    z-index: 20;
}
.timeline-images .img-row .img {
    width: calc(50% - 9px);
}
.timeline-images .img-full {
    margin: 0 0 18px 0;
}
.timeline-images .img-row .img img {
    width: 100%;
    height: 190px;
}
.dot-list > ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0 auto;
    max-width: 413px;
}
.dot-list li::before {
    content: "•";
    position: absolute;
    left: -19px;
    top: -2px;
    font-size: 21px;
    color: #18373E;
}
.slick-our-special img {
    margin: 0 auto;
    border-radius: 24px;
    max-width: 402px;
    height: 100%;
    object-fit: cover;
}
.slick-our-special .special-item {
    background: url('../images/bg-outer-customer.png') no-repeat center;
    background-size: contain;
    width: 100%;
    height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
.slider-thumb {
    margin: 16px auto 0 auto;
    max-width: 432px;
}
.slider-thumb .slick-list {
    margin: 0 -4px;
}
.slider-thumb .slick-slide {
    margin: 0 4px;
    position: relative;
    width: 82px;
    height: 82px;
}
.slider-thumb .slick-slide img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.slider-thumb .slick-slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    background: #000000B2;
    z-index: 10;
}
.slider-thumb .slick-slide.slick-current::before {
    display: none;
}
.slider-thumb .slick-slide img {
    width: 82px;
    border-radius: 8px;
}
.slider-thumb .slick-arrow {
    width: 40px;
    height: 40px;
}
.slider-thumb .slick-prev {
    left: -50px;
}
.slider-thumb .slick-next {
    right: -50px;
}
.radio-wrap {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    cursor: pointer;
    margin: 0 0 24px 0;
    font-family: 'SVN-Gilroy';
}
/* Ẩn radio gốc */
.radio-wrap input {
    display: none;
}
/* Vòng ngoài */
.radio-custom {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid #580E00;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #580E00;
}
/* Chấm trong */
.radio-custom::after {
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #FFAE00;
}
/* Chưa check thì ẩn chấm */
.radio-wrap input:not(:checked) + .radio-custom::after {
    opacity: 0;
    transform: scale(0.6);
}
.radio-wrap input:checked + .radio-custom {
    border: 1px solid #ffffff;
    background: transparent;
}
/* Animation mượt */
.radio-custom::after {
    transition: all 0.2s ease;
}
.box-payment-method p {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    margin: 0 0 16px 0;
    color: #F3C16A;
}
.ticket-row {
    display: flex;
    align-items: flex-start;
}
.qr-image img {
    height: 290px;
}
.slick-actions {
    margin-top: 16px;
}
.slick-actions .slick-list {
    margin: 0 -8px;
}
.slick-actions .slick-track {
    display: flex !important;
    align-items: flex-end; /* ⭐ căn đáy toàn bộ item */
}
.slick-actions .slick-slide {
    height: auto;
}
.action-item {
    margin: 0 8px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}
.outer-slick {
    position: relative;
    padding: 0 80px;
}
.outer-slick > ul {
    display: inline-block;
    text-align: right;
}
.outer-slick > ul li {
    list-style: none;
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
    color: #580E00;
    padding: 4px 12px;
    background: #E9A33E;
    border-radius: 8px;
}
.tag-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
    position: absolute;
    left: -45px;
    top: 10px;
    z-index: 90;
}
.tag-item {
    background-color: #E9A33E;
    color: #580E00;
    padding: 4px 12px;
    border-radius: 8px;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
    width: fit-content;
}
.action-item p.first {
    font-size: 17px;
    line-height: 25px;
    color: #E9A33E;
    margin: 0 0 16px 0;
    font-family: 'SVN-Gilroy';
    font-weight: 700;
    text-align: left;
}
.action-item p.two {
    font-size: 17px;
    line-height: 25px;
    color: #E9A33E;
    margin: 0 0 16px 0;
    font-family: 'SVN-Gilroy';
    font-weight: 700;
    text-align: left;
}
.action-item p.two small {
    display: block;
    font-size: 14px;
    line-height: 21px;
    color: #18373E;
}
.slick-actions .slick-dots {
    position: relative;
    bottom: -50px;
    display: flex !important;
    justify-content: center;
    gap: 0;
}
.slick-actions .slick-dots li {
    margin: 0;
    width: auto;
    height: auto;
}
.slick-actions .slick-dots li button {
    width: 80px;
    height: 4px;
    padding: 0;
    border: none;
    font-size: 0;
    cursor: pointer;
    transition: all .3s ease;
    border-radius: 99px;
    background: #001006;
}
.slick-actions .slick-dots li button::before {
    display: none;
}
.slick-actions .slick-dots li.slick-active button {
    background: #E9A33E;
}
.voucher-box {
    background: #3F0000;
    border-radius: 8px;
    padding: 16px;
    margin-top: 24px;
}
.voucher-title {
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 12px;
    font-family: 'SVN-Gilroy';
}
.voucher-title p {
    font-size: 13px;
    line-height: 17px;
    margin-top: 2px;
}
.voucher-form {
    display: flex;
    border-radius: 8px;
    overflow: hidden;
    background: #8c0000;
}
.voucher-form input {
    flex: 1;
    background: transparent;
    border: none;
    padding: 10px;
    color: #F9E3BB;
    font-size: 14.5px;
    line-height: 24px;
    font-weight: 300;
    outline: none;
    font-family: 'SourceSerif4';
}
.voucher-form input::placeholder {
    color: #F9E3BB;
}
.voucher-form button {
    background: #F3C16A;
    border: none;
    padding: 10px;
    font-weight: 600;
    font-size: 15px;
    line-height: 24px;
    color: #340000;
    cursor: pointer;
    transition: 0.2s ease;
    font-family: 'SourceSerif4';
}
.voucher-form button:hover {
    filter: brightness(1.05);
}
.voucher-message {
    margin-top: 10px;
    font-size: 13px;
}
.voucher-message.success {
    color: #6cff8b;
}
.voucher-message.error {
    color: #ff9a9a;
}
#totalAmount {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #F3C16A;
    margin: 24px 0 0 0;
    font-family: 'MTD-Valky';
    gap: 5px;
    justify-content: center;
}
#totalAmount span {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #F3C16A;
    font-family: 'MTD-Valky';
    margin: 0;
    width: auto;
}
.costume-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;
    margin-top: 12px;
}
.costume-info {
    display: flex;
    flex-direction: column;
    width: 162px;
}
.costume-title {
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
}
#costume-price {
    font-size: 16px;
    font-weight: 400;
    font-family: 'SVN-Gilroy';
    color: #F3C16A;
}
.costume-qty {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: flex-start;
    width: calc(100% - 162px);
}
.qty-btn {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    text-align: center;
    background: #840004;
    padding: 0;
}
.qty-number {
    min-width: 56px;
    text-align: center;
    background: #580E00;
    padding: 0px 10px;
    border-radius: 99px;
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
    font-family: 'SVN-Gilroy';
    color: #F6F6F6;
}
.costume p {
    line-height: 24px;
    margin: 18px 0 0 0;
    font-family: 'SVN-Gilroy';
    border: 1px solid #F9E3BB;
    border-radius: 8px;
    padding: 8px 8px 8px 8px;
    display: inline-block;
    position: relative;
}
.fixed-icon {
    position: fixed;
    z-index: 99;
    right: 24px;
    bottom: 100px;
}
.fixed-icon a {
    display: block;
    margin: 0 0 24px 0;
}
#voucherMessage, #errorMessage {
    color: #F3C16A;
}
.diagram{
    position: relative;
    /* width: 100%;
    min-height: 650px; */
    margin: 0 0 16px 0;
}
.bg-image{
    position: relative;
    width: 100%;
}
.dot {
    position: absolute;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: #852629;
    color: #F6F6F6;
    font-size: 9px;
    line-height: 20px;
    text-align: center;
    transform: translate(-50%, -50%);
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    cursor: pointer;
    z-index: 99;
    font-family: 'SVN-Gilroy';
    font-weight: 700;
}
.white-dot {
    background: #516E66;
}
.dot-row {
    position: absolute;
    text-align: center;
    width: 18px;
    height: 18px;
    transform: translate(-50%, -50%);
    color: #650a0e;
}
.red-dot-row {
    color: #111;
}
.dot.selected {
    background: #F43BB6;
    color: #fff;
}

.dot.holding {
    background: #ffc107;
    cursor: not-allowed;
}

.dot.sold, .dot.locked {
    background: #DDDDDD;
    cursor: not-allowed;
    color: #F6F6F6;
}
#error-messages {
    font-family: 'SVN-Gilroy';
    color: #F3C16A;
}
.ticket-note {
    font-family: 'SVN-Gilroy';
    margin: 10px 0 0 0;
}
.font-svn-gilroy {
    font-family: 'SVN-Gilroy';
}
#scanner {
    width: 64px;
    margin: 0 auto;
    display: block;
}
.lang-switcher .dropdown-toggle {
    padding: 0;
    cursor: pointer;
}
.lang-switcher .dropdown-toggle::after {
    content: '';
    background: url('../images/chevron-down-small.png') no-repeat top center;
    width: 10px;
    height: 10px;
    border: 0;
}
.lang-flag {
    width: 32px;
    height: auto;
    border-radius: 2px;
}
.lang-flag-sm {
    width: 32px;
    height: auto;
    border-radius: 0;
}
.lang-switcher .dropdown-menu {
    min-width: 32px;
    padding: 0 0;
    margin: 0;
    top: calc(100% + 5px);
    right: 15px;
    border: 0;
}
.lang-switcher .dropdown-item {
    padding: 0;
    display: block!important;
}
.font-gilroy {
    font-family: 'SVN-Gilroy';
}
#myVideo {
    max-width: 800px;
    width: 100%;
    height: 100%;
    display: block;
}
.location-page {
    padding: 40px 0 200px 0;
    background: #F9E3BB;
}
.location-page .inner-content {
    max-width: 780px;
    margin: 40px auto;
    background: url(../images/bg-location.png) no-repeat center;
    background-size: 100% 100%;
    padding: 70px 52px;
    min-height: 423px;
}
.location-page .inner-content p:not(:first-child) {
    margin: 32px 0 0 0;
}
.store h1 {
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
    color: #852629;
    margin: 0 0 32px 0;
}
/* Outer frame giống ảnh */
.location-page .frame{
    background: #F3C16A;
    border-radius: 12px;
    padding: 24px;
    border-radius: 16px;
}
/* Top controls */
.location-page .controls {
    display:grid;
    grid-template-columns: 1.2fr .7fr .7fr;
    gap: 12px;
    align-items:center;
    margin-bottom:24px;
}
.location-page .search {
    position:relative;
    height:38px;
}
.location-page .search input {
    width:100%;
    height:100%;
    border-radius:999px;
    background: #F9E3BB;
    padding: 10px 16px;
    outline:none;
    color: #212121;
    border: 0;
    font-size: 16px;
    line-height: 24px;
}
.location-page .search button {
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    width:30px;
    height:30px;
    border:none;
    border-radius:999px;
    background:transparent;
    cursor:pointer;
    display:grid;
    place-items:center;
    color:#1f1f1f;
    opacity:.9;
}
.location-page .search svg {
    width:18px;
    height:18px;
}
.location-page .select {
    height:38px;
    border-radius:999px;
    background: #F9E3BB;
    padding: 7px 16px;
    outline:none;
    appearance:none;
    background-image:
    linear-gradient(45deg, transparent 50%, rgba(0,0,0,.55) 50%),
    linear-gradient(135deg, rgba(0,0,0,.55) 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
    background-position:
    calc(100% - 18px) 52%,
    calc(100% - 12px) 52%,
    100% 0;
    background-size:6px 6px, 6px 6px, 2.4em 2.4em;
    background-repeat:no-repeat;
    color: #212121;
    border: 0;
    font-size: 16px;
    line-height: 24px;
}
/* Main content */
.location-page .content {
    display:grid;
    grid-template-columns: 314px 1fr;
    gap:14px;
    min-height:420px;
}
/* Left list area */
.location-page .left {
    background: #E9A33E;
    position:relative;
    padding: 16px;
}
.location-page .left h3 {
    margin:0 0 16px 0;
    font-size:20px;
    line-height: 30px;
    font-weight:700;
    color:#852629;
    text-transform:uppercase;
}
.location-page .left h3 span {
    font-weight:700;
}
.location-page .list-wrap {
    position:relative;
    height:578px;
    padding-right:0;
    overflow-y:auto;
}
.location-page .list {
    height:100%;
    padding-right:8px;
    scroll-behavior:smooth;
    scrollbar-width: 8px;
    scrollbar-color: #F3C16A #F9E3BB;
}
.location-page .list > a:last-child .card {
    margin: 0;
}
.location-page .list-wrap .list::-webkit-scrollbar {
    width: 8px;
}
.location-page .list-wrap .list::-webkit-scrollbar-track {
    background: #F9E3BB;
    border-radius: 99px;
}
.location-page .list-wrap .list::-webkit-scrollbar-thumb {
    background: #F3C16A;
    border-radius: 99px;
}
.location-page .list-wrap .list::-webkit-scrollbar-thumb:hover {
    background: #e68900;
}
.location-page .card {
    background:#fff;
    border-radius:8px;
    padding:16px;
    margin-bottom:16px;
}
.location-page .card .location-card-row {
    display:flex;
    gap:8px;
    align-items:flex-start;
    color:#212121;
    font-size:15px;
    line-height:22px;
}
.location-page .card .location-card-row  img {
    padding-top: 3px;
}
.location-page .city {
    color: #E9A33E;
    font-size:20px;
    line-height: 30px;
    margin-bottom:12px;
}
.location-page .pin {
    margin-top:1px;
    flex:0 0 auto;
    width:14px;
    height:14px;
    opacity:.85;
}
.location-page .place {
    color:#852629;
    margin-bottom:2px;
    display:block;
}
/* Right map */
.location-page .map {
    min-height:420px;
}
.location-page .map iframe {
    width: 100%;
    height: 100%;
}
.showcase-page, .post {
    padding: 40px 0 90px 0;
    background: #F9E3BB;
}
.showcase-page h1 {
    font-weight: 700;
    font-size: 36px;
    line-height: 45px;
    text-transform: uppercase;
    color: #650000;
    margin-top: 24px;
}
.showcase-page .sapo {
    margin: 20px 0;
}
.showcase-page .content {
    text-align: justify;
}
.showcase-page .content h2 {
    font-size: 28px;
    line-height: 38px;
}
.showcase-page .content h3 {
    font-size: 22px;
    line-height: 32px;
}
.showcase-page .content figcaption {
    text-align: center;
    font-style: italic;
    font-size: 15px;
    margin: 5px 0 0 0;
}
.showcase-right {
    margin: 24px 0 0 0;
}
.showcase-right > p {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #852629;
    border-bottom: 1px solid #212121;
    padding: 0 0 8px 0;
}
.galleries {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
.galleries .item {
    aspect-ratio: 4/3; /* tất cả ảnh cùng tỷ lệ */
    overflow: hidden;
    border-radius: 12px;
}
.galleries .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.f-caption {
    font-family: 'SVN-Gilroy';
}
.first-post {
    margin: 20px 0 0 0;
}
.first-post > .d-flex {
    gap: 20px;
}
.first-post .image, .first-post .content {
    width: calc(50% - 10px);
}
.first-post .image {
    height: 370px;
    overflow: hidden;
    border-radius: 12px;
    border: 3px #852629 solid;
}
.first-post .image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.first-post .image:hover img {
    transform: scale(1.1);
}
.first-post .content {
    background: url(../images/bg-location.png) no-repeat center;
    background-size: 100% 100%;
    height: 370px;
    overflow: hidden;
    padding: 27px 58px;
}
.first-post .content .d-flex {
    gap: 12px;
}
.first-post .content .d-flex p.txt-new {
    color: #F3C16A;
    font-size: 14px;
    line-height: 18px;
    margin: 0;
}
.first-post .content .d-flex p.date {
    color: #fff;
    font-size: 14px;
    line-height: 18px;
    margin: 0;
}
.first-post .content .title-post {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    margin: 8px 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
            line-clamp: 2;
    -webkit-box-orient: vertical;
}
.first-post .content .title-post a {
    color: #F3C16A;
}
.first-post .content .description {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 7;
            line-clamp: 7;
    -webkit-box-orient: vertical;
}
.first-post .content .description * {
    color: #fff!important;
}
.read-more a {
    color: #F3C16A;
    text-decoration: underline;
}
.all-posts {
    margin: 40px 0 0 0;
}
.all-posts p.title {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #852629;
    padding: 0 0 8px 8px;
    border-bottom: 1px #212121 solid;
    margin: 0 0 32px 0;
}
.list-posts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    row-gap: 32px;
}
.post-item {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    padding: 16px;
}
.post-item .post-image {
    height: 247px;
    overflow: hidden;
    margin: 0 0 27px 0;
    border-radius: 12px;
}
.post-item .post-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.post-item .post-image:hover img {
    transform: scale(1.1);
}
.post-item .post-title h3 {
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
            line-clamp: 3;
    -webkit-box-orient: vertical;
    min-height: 90px;
}
.post-item .post-title h3 a {
    color: #852629;
}
.post-item .post-title h3 a:hover, .post-item .post-read-more a:hover {
    color: #212121;
}
.post-item .post-date {
    color: #E9A33E;
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    margin: 0 0 8px 0;
}
.post-item .post-excerpt {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
            line-clamp: 5;
    -webkit-box-orient: vertical;
    margin: 0 0 8px 0;
}
.post-item .post-excerpt p {
    margin: 0;
}
.post-item .post-read-more a {
    color: #E9A33E;
}
.pager {
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:10px;
    border:1px solid #000;
    background: #E9A33E;           /* màu cam nền */
    border-radius:999px;          /* pill */
}
.pager__btn {
    width:24px;
    height:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#f2a63a;
    color:#000;
    text-decoration:none;
    font-weight:700;
    line-height:1;
}
.pager__btn--disabled {
    cursor:not-allowed;
}
.pager__nums {
    display:flex;
    align-items:center;
    gap:10px;
}
.pager__num {
    color:#fff;
    text-decoration:none;
    font-weight:500;
    font-size:16px;
    padding:0 2px;
    font-family: 'SVN-Gilroy';
}
.pager__num--active {
    font-weight:700;
    color: #212121;
}
.pager__dots {
    color:#000;
    opacity:.8;
}
.pager-wrap {
    display: flex;
    justify-content: center;
    margin: 20px 0 0 0;
}
.sidebar > p.title {
    font-weight: 700;
    font-size: 24px;
    line-height: 36px;
    color: #852629;
    padding: 0 0 8px 8px;
    border-bottom: 1px #212121 solid;
    margin: 0 0 24px 0;
}
.related-post .post-item:not(:last-child) {
    margin: 0 0 32px 0;
}
