/* Trang chủ: một owner cho hero, carousel, section và responsive. */
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }

.carousel-inner > .item > a > img, .carousel-inner > .item > img, .img-responsive, .thumbnail a > img, .thumbnail > img { display: block; max-width: 100%; height: auto; }

.slick-list, .slick-slider, .slick-track { position: relative; display: block; }

.slick-slider { box-sizing: border-box; user-select: none; -webkit-tap-highlight-color: transparent; }

.slick-list { overflow: hidden; margin: 0px; padding: 0px; }

.slick-list:focus { outline: 0px; }

.slick-slider .slick-list, .slick-slider .slick-track { transform: translate3d(0px, 0px, 0px); }

.slick-track { top: 0px; left: 0px; margin-left: auto; margin-right: auto; }

.slick-track::after, .slick-track::before { display: table; content: ""; }

.slick-track::after { clear: both; }

.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }

.slick-slide img { display: block; }

.slick-initialized .slick-slide { display: block; }

.splide__list { backface-visibility: hidden; display: flex; height: 100%; margin: 0px !important; padding: 0px !important; }

.splide { position: relative; visibility: hidden; }

.splide.is-initialized, .splide.is-rendered { visibility: visible; }

.splide__slide { backface-visibility: hidden; box-sizing: border-box; flex-shrink: 0; margin: 0px; position: relative; list-style-type: none !important; }

.splide__slide img { vertical-align: bottom; }

.splide__spinner { animation: 1s linear 0s infinite normal none running splide-loading; border-width: 2px; border-style: solid; border-color: rgb(153, 153, 153) rgb(153, 153, 153) rgb(153, 153, 153) transparent; border-image: none; border-radius: 50%; inset: 0px; contain: strict; display: inline-block; height: 20px; margin: auto; position: absolute; width: 20px; }

.splide__track { overflow: hidden; position: relative; z-index: 0; }

.splide__track--draggable { user-select: none; }

.splide__track--fade > .splide__list { display: block; }

.splide__track--fade > .splide__list > .splide__slide { left: 0px; opacity: 0; position: absolute; top: 0px; z-index: 0; }

.splide__track--fade > .splide__list > .splide__slide.is-active { opacity: 1; position: relative; z-index: 1; }

.splide__arrow { align-items: center; background: rgb(204, 204, 204); border: 0px; border-radius: 50%; cursor: pointer; display: flex; height: 2em; justify-content: center; opacity: 0.7; padding: 0px; position: absolute; top: 50%; transform: translateY(-50%); width: 2em; z-index: 1; }

.splide__arrow:disabled { opacity: 0.3; }

.splide__arrow--prev { left: 1em; }

.splide__arrow--next { right: 1em; }

.splide__slide { -webkit-tap-highlight-color: transparent; }

.splide__slide:focus { outline: 0px; }

.sunland-hero-slider { position: relative; display: block; }

.sunland-hero-slider.sunland-hero-template .splide .splide__arrow, .sunland-hero-slider.sunland-hero-template .splide .splide__video__play::before, .sunland-hero-slider.sunland-hero-template .splide .sunland-hero-volume, .sunland-hero-slider.sunland-hero-template .splide .splide__pagination__page { transition: color 0.4s ease-in-out, background, opacity, transform; outline: none !important; }

.sunland-hero-slider.sunland-hero-template .splide .splide__arrow { appearance: none; font-size: 40px; z-index: 4; opacity: 1; transition: color 0.4s ease-in-out; outline: none !important; background: transparent !important; width: auto !important; height: auto !important; }

.sunland-hero-slider.sunland-hero-template .splide .splide__arrow i { display: block; font-style: normal !important; }

.sunland-hero-slider.sunland-hero-template .splide .splide__arrow--prev { left: 20px; }

.sunland-hero-slider.sunland-hero-template .splide .splide__arrow--next { right: 20px; }

.sunland-hero-slider.sunland-hero-template .splide .splide__spinner { width: 40px; height: 40px; transition: opacity 0.3s ease-in, visibility; pointer-events: none; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide { position: relative; display: block; overflow: hidden; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-media { user-select: none; position: relative; display: block; pointer-events: auto; background: rgb(222, 222, 222); overflow: hidden; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-media img { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; object-fit: cover; object-position: center center; pointer-events: none; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-media canvas { display: block; width: 100%; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline { position: absolute; z-index: 2; display: flex; align-items: center; flex-flow: wrap; left: 0px; right: 0px; bottom: 0px; padding: 1rem; color: rgb(255, 255, 255); overflow: hidden; text-align: left; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title { position: relative; display: block; font-size: max(2em, 1.5rem); font-weight: 400; line-height: 1.2; letter-spacing: 0px; width: 100%; transform: translateX(-100%); transition-property: transform; transition-timing-function: ease-in-out; }

.sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-description { position: relative; display: block; font-size: max(1.25em, 1rem); font-weight: 400; line-height: 1.3; letter-spacing: 0px; width: 100%; transform: translateX(-100%); transition-property: transform; transition-timing-function: ease-in-out; }

.slick-slider { position: relative; display: block; box-sizing: border-box; user-select: none; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; display: block; overflow: hidden; margin: 0px; padding: 0px; }

.slick-list:focus { outline: none; }

.slick-slider .slick-track, .slick-slider .slick-list { transform: translate3d(0px, 0px, 0px); }

.slick-track { position: relative; top: 0px; left: 0px; display: block; }

.slick-track::before, .slick-track::after { display: table; content: ""; }

.slick-slide { display: none; float: left; height: 100%; min-height: 1px; outline: none !important; }

.lazy-load-element { opacity: 0; }

.ease { transition: 0.4s ease-in-out; }

.section-wrapper { font-size: 0px; position: relative; }

.sunlandsg-section-heading { position: relative; text-align: center; }

.sunlandsg-section-heading-text { display: inline-block; font-family: var(--sl-font-body); font-size: 1.25vw; font-weight: 400; color: rgb(153, 153, 153); text-transform: uppercase; text-align: left; }

.sunlandsg-section-heading-kicker { display: block; font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 500; color: var(--sl-cream, rgb(244, 241, 234)); text-transform: uppercase; letter-spacing: 0.12em; margin-bottom: 0.4vw; }

.sunlandsg-section-heading-text div { position: relative; font-family: var(--sl-font-heading); font-size: 3.5vw; font-weight: 700; color: rgb(255, 255, 255); padding-left: 2.313vw; margin-top: 0.5vw; }

.sunlandsg-section-heading-text div::before { content: ""; position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 5px; height: 3.25vw; background-color: rgb(203, 170, 69); pointer-events: none; }

.global-link { max-width: 12.375vw; }

.global-link a, .global-link input { display: flex; align-items: center; justify-content: center; font-family: var(--sl-font-heading); font-size: 0.938vw; font-weight: 600; line-height: 1.35; color: rgb(255, 255, 255); text-transform: uppercase; text-align: center; width: 100%; min-height: 54px; padding: 1.063vw 12px; background: transparent; border: 2px solid rgb(255, 255, 255); transition: 0.4s ease-in-out; }

.global-link a:hover, .global-link input:hover { background-color: rgb(203, 170, 69); border-color: rgb(203, 170, 69); color: rgb(255, 255, 255); }

.text-white, .text-hover-white:hover { color: rgb(255, 255, 255) !important; }

@media only screen and (max-width: 991px){
.sunlandsg-section-heading-text { font-size: 16px; }
.sunlandsg-section-heading-text div { padding-left: 16px; font-size: 28px !important; margin-top: 8px !important; }
.sunlandsg-section-heading-text div::before { height: 100%; }
.global-link { max-width: 320px; }
.global-link a, .global-link input { font-size: 15px; padding: 12px 0px; }
.sunlandsg-about-wrapper { opacity: 1 !important; display: block !important; }
}

@media only screen and (max-width: 567px){
.sunlandsg-section-heading-text div { font-size: 23px !important; }
.global-link { max-width: 190px; }
}

.slick-arrow.slick-hidden { display: none; }

#sunland-hero { overflow: hidden; z-index: 1; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline { background: transparent; inset: 0px; display: flex; flex-flow: column-reverse; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; text-align: center; z-index: 122; opacity: 1; padding: 0px; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title { display: block; font-family: var(--sl-font-body); font-size: 2.575vw; font-weight: 400; color: rgb(255, 255, 255); text-transform: uppercase; padding: 0px; z-index: 122; line-height: 1.3; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title div:first-child, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title div:first-child { font-family: var(--sl-font-heading); font-size: 3.75vw; font-weight: 700; color: rgb(255, 255, 255); margin-top: 1.938vw; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title .slideshow-link, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link { max-width: 18.625vw; margin: 2.438vw auto 0px; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title .slideshow-link a, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a { display: block; font-family: var(--sl-font-heading); font-size: 0.938vw; font-weight: 600; color: rgb(255, 254, 254); padding: 1.063vw 0px; border: 2px solid rgb(255, 255, 255); background: rgba(0, 0, 0, 0.4); }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title .slideshow-link a:hover, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a:hover { background-color: rgb(226, 175, 129); border-color: rgb(226, 175, 129); }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-description, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-description { padding: 0px; line-height: 1; position: unset; }
  100% { left: 80%; transform: scale(0.4); opacity: 0; }
}

.sunlandsg-about-inner-wrapper { background-color: rgb(0, 0, 0); overflow: hidden; }

.sunlandsg-about-col { position: relative; display: inline-block; vertical-align: top; z-index: 1; }

.sunlandsg-about-col.about-text-col { width: 55.24%; }

.sunlandsg-about-col.about-text-col::before { content: ""; position: absolute; top: -0.688vw; left: -24.875vw; width: 88vw; height: 53.5vw; background-image: url("../images/he-thong/overlay-logo-02.png"); background-size: contain; background-position: center center; background-repeat: no-repeat; z-index: -1; }

.sunlandsg-about-text-wrapper { padding: 8.188vw 0px 0px 7.5vw; }

.sunlandsg-section-heading.sunlandsg-about-heading { text-align: left; }

.sunlandsg-about-text-excerpt { max-width: 38.938vw; margin: 5.188vw 0px 2.875vw; }

.sunlandsg-about-text-excerpt p { font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 400; color: rgb(255, 255, 255); line-height: 1.6; margin-bottom: 1.688vw; }

.sunlandsg-about-col.about-photo-col { width: 44.75%; }

.sunlandsg-about-photo-wrapper img { width: 100%; height: auto; }

.sunlandsg-properties-inner-wrapper { background-color: rgb(0, 0, 0); padding: 4.563vw 0px 5.688vw; }

.sunlandsg-section-heading.sunlandsg-properties-heading .sunlandsg-section-heading-text div { font-size: 4.375vw; margin-top: 0.5vw; }

.sunlandsg-properties-list-wrapper { margin-top: 2.125vw; }

.sunlandsg-properties-list-row { margin: 0 0 6px; }

.sunlandsg-properties-list-slide-wrapper { position: relative; }

.sunlandsg-properties-list-slide-arrows { position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 100%; pointer-events: none; opacity: 0; z-index: 3; }

.sunlandsg-properties-list-slide-wrapper:hover .sunlandsg-properties-list-slide-arrows { opacity: 1; }

.sunlandsg-properties-list-slide-arrows span { display: inline-block; vertical-align: top; width: 3.75vw; height: 8.563vw; padding: 3vw 0px; font-size: 2.5vw; color: rgb(255, 255, 255); text-align: center; background-color: rgba(0, 0, 0, 0.6); pointer-events: auto; cursor: pointer; transition: 0.3s ease-in-out; }

.sunlandsg-properties-list-slide-arrows span:hover { background-color: rgba(0, 0, 0, 0.8); }

.sunlandsg-properties-list-slide-arrows .next { float: right; }

.sunlandsg-properties-item { padding: 0px 3px; }

.sunlandsg-properties-item a { position: relative; display: block; transform: translateZ(0px); }

.sunlandsg-properties-item a::before, .sunlandsg-properties-item a::after { content: ""; position: absolute; left: 0px; pointer-events: none; z-index: 2; }

.sunlandsg-properties-item a::before { bottom: 1.938vw; width: 0.313vw; height: 6.438vw; background-color: rgb(226, 175, 129); transition: 0.3s ease-in-out; }

.sunlandsg-properties-item a:hover::before { bottom: 0px; height: 100%; }

.sunlandsg-properties-item a::after { top: 0px; width: 100%; height: 100%; border: 0.438vw solid rgb(226, 175, 129); opacity: 0; transition: 0.6s ease-in-out; }

.sunlandsg-properties-item a:hover::after { opacity: 1; }

.sunlandsg-properties-item-inner-wrapper { position: relative; overflow: hidden; }

.sunlandsg-properties-item-photo { position: relative; z-index: 1; }

.sunlandsg-properties-item-photo::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: linear-gradient(transparent, transparent, rgb(0, 0, 0)); opacity: 0.8; pointer-events: none; }

.sunlandsg-properties-item-photo canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.sunlandsg-properties-item-content-status-city { position: absolute; top: 2.063vw; left: 2.375vw; z-index: 1; opacity: 0; }

.sunlandsg-properties-item a:hover .sunlandsg-properties-item-content-status-city { opacity: 1; }

.sunlandsg-properties-item-content-status-city div { position: relative; display: inline-block; vertical-align: top; font-family: var(--sl-font-body); font-size: 1.563vw; font-weight: 400; color: rgb(255, 255, 255); text-transform: uppercase; padding: 0px 0.75vw; line-height: 1.35; }

.sunlandsg-properties-item-content-status-city div:first-child { padding-left: 0px; }

.sunlandsg-properties-item-content-status-city div:first-child::after { content: ""; position: absolute; top: 50%; right: 0px; transform: translateY(-50%); width: 1px; height: 2.313vw; background-color: rgb(226, 175, 129); pointer-events: none; }

.sunlandsg-properties-item-content { position: absolute; bottom: -3.688vw; left: 0px; padding: 0px 0px 2.063vw 2.375vw; z-index: 1; }

.sunlandsg-properties-item-content-address { font-family: var(--sl-font-body); font-size: 1.563vw; font-weight: 400; color: rgb(255, 255, 255); text-transform: uppercase; }

.sunlandsg-properties-item-content-address div { font-size: 1.125vw; line-height: 1.8; margin-top: 0.313vw; }

.sunlandsg-properties-item-content-features { margin-bottom: 0.125vw; opacity: 0; }

.sunlandsg-properties-item-content-features li { position: relative; display: inline-block; vertical-align: top; font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 400; color: rgb(255, 255, 255); line-height: 1.8; text-transform: uppercase; padding: 0px 0.563vw; }

.sunlandsg-properties-item-content-features li:first-child { padding-left: 0px; }

.sunlandsg-properties-item-content-features li::after { content: ""; position: absolute; top: 50%; right: 0px; transform: translateY(-50%); width: 1px; height: 1vw; background-color: rgb(255, 255, 255); pointer-events: none; }

.sunlandsg-properties-item-content-features li:last-child::after { opacity: 0; }

.sunlandsg-properties-item-content-price { font-family: var(--sl-font-body); font-size: 2.438vw; font-weight: 400; color: rgb(226, 175, 129); opacity: 0; }

.sunlandsg-properties-item-link-label { position: absolute; bottom: 2.375vw; right: 1.938vw; font-family: var(--sl-font-body); font-size: 0.938vw; font-weight: 500; color: rgb(255, 255, 255); letter-spacing: 0.05em; text-transform: uppercase; text-align: center; width: 9vw; padding: 0.875vw 0px; background-color: rgb(226, 175, 129); z-index: 1; opacity: 0; }

.sunlandsg-properties-item a:hover .sunlandsg-properties-item-content-features, .sunlandsg-properties-item a:hover .sunlandsg-properties-item-link-label, .sunlandsg-properties-item a:hover .sunlandsg-properties-item-content-price { opacity: 1; }

.sunlandsg-properties-item a:hover .sunlandsg-properties-item-content { bottom: 0px; }

.sunlandsg-wwwu-inner-wrapper { position: relative; background-image: url("../images/he-thong/nen-05.jpg"); background-size: cover; background-position: center center; background-repeat: no-repeat; background-attachment: fixed; padding: 6.188vw 0px 7.25vw; z-index: 1; }

.sunlandsg-wwwu-inner-wrapper::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); opacity: 0.5; pointer-events: none; z-index: -1; }

.sunlandsg-section-heading.sunlandsg-wwwu-heading .sunlandsg-section-heading-text { color: rgb(255, 255, 255); }

.sunlandsg-section-heading.sunlandsg-wwwu-heading .sunlandsg-section-heading-text div { font-size: 4.375vw; margin-top: 0.5vw; }

.sunlandsg-wwwu-stats-list { text-align: center; margin-top: 4.313vw; }

.sunlandsg-wwwu-stats-item { position: relative; display: inline-block; vertical-align: middle; padding: 0px 3.125vw; }

.sunlandsg-wwwu-stats-item::after { content: ""; position: absolute; top: 50%; right: 0px; transform: translateY(-50%); width: 1px; height: 9.813vw; background-color: rgb(255, 255, 255); pointer-events: none; opacity: 0.5; }

.sunlandsg-wwwu-stats-item:last-child::after { opacity: 0; }

.sunlandsg-wwwu-stats-item-value { font-family: var(--sl-font-body); font-size: 4.25vw; font-weight: 500; color: rgb(255, 255, 255); }

.sunlandsg-wwwu-stats-item-label { font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 400; color: rgb(255, 255, 255); line-height: 1.3; letter-spacing: 0.1em; text-transform: uppercase; margin-top: 1.188vw; }

.sunlandsg-team-wrapper { display: none; }

.sunlandsg-team-inner-wrapper { padding: 4.688vw 0px 4.5vw; background-color: rgb(0, 0, 0); }

.sunlandsg-section-heading.sunlandsg-team-heading .sunlandsg-section-heading-text div { font-size: 4.375vw; margin-top: 0.5vw; }

.sunlandsg-team-photo { position: relative; margin-top: 1.688vw; }

.sunlandsg-team-photo::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); opacity: 0.26; pointer-events: none; transition: 0.4s ease-in-out; }

.sunlandsg-team-photo:hover::before { opacity: 0; }

.sunlandsg-team-photo img { width: 100%; }

.sunlandsg-team-list-wrapper { padding: 1.5vw 1.125vw 0px; }

.sunlandsg-team-list-slide-wrapper { position: relative; }

.sunlandsg-team-list-slide-arrows { position: absolute; top: 32%; left: 0.688vw; width: calc(100% - 1.3vw); pointer-events: none; opacity: 0; z-index: 1; }

.sunlandsg-team-list-slide-wrapper:hover .sunlandsg-team-list-slide-arrows { opacity: 1; }

.sunlandsg-team-list-slide-arrows span { display: inline-block; vertical-align: top; font-size: 1.625vw; color: rgb(255, 255, 255); background: rgba(0, 0, 0, 0.6); padding: 1vw 0.5vw; cursor: pointer; pointer-events: auto; }

.sunlandsg-team-list-slide-arrows .next { float: right; }

.sunlandsg-team-list-item { padding: 0px 0.688vw; }

.sunlandsg-team-list-item a { display: block; }

.sunlandsg-team-list-item-photo { position: relative; }

.sunlandsg-team-list-item-photo::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); opacity: 0; pointer-events: none; transition: 0.4s ease-in-out; }

.sunlandsg-team-overlay-logo { display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.8); width: 8.438vw; height: 5.188vw; object-fit: contain; opacity: 0; pointer-events: none; transition: 0.4s ease-in-out; }

.sunlandsg-team-list-item a:hover .sunlandsg-team-list-item-photo[data-overlay-mode="hover"]::before, .sunlandsg-team-list-item-photo[data-overlay-mode="always"]::before, .sunlandsg-team-list-item-photo.overlay-active::before { opacity: 0.63; }

.sunlandsg-team-list-item a:hover .sunlandsg-team-list-item-photo[data-overlay-mode="hover"] .sunlandsg-team-overlay-logo, .sunlandsg-team-list-item-photo[data-overlay-mode="always"] .sunlandsg-team-overlay-logo, .sunlandsg-team-list-item-photo.overlay-active .sunlandsg-team-overlay-logo { opacity: 1; transform: translate(-50%, -50%) scale(1); }

.sunlandsg-team-list-item-photo canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.sunlandsg-team-list-item-name { font-family: var(--sl-font-body); font-size: 1.375vw; font-weight: 500; color: rgb(255, 255, 255); letter-spacing: 0.05em; text-align: center; text-transform: uppercase; margin-top: 1.375vw; }

.sunlandsg-team-link.global-link { margin: 4.875vw auto 0px; }

.sunlandsg-cta-inner-wrapper { padding: 5.813vw 0px 0px; }

.sunlandsg-cta-list { padding: 0px 0.188vw; }

.sunlandsg-cta-item { display: inline-block; vertical-align: top; width: 50%; padding: 0.188vw; }

.sunlandsg-cta-item a { position: relative; display: block; }

.sunlandsg-cta-item-photo { position: relative; }

.sunlandsg-cta-item-photo::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; transition: 0.4s ease-in-out; z-index: 1; }

.sunlandsg-cta-item a:hover .sunlandsg-cta-item-photo::before { background-color: rgb(226, 175, 129); opacity: 0.9; }

.sunlandsg-cta-item:first-child .sunlandsg-cta-item-photo::before, .sunlandsg-cta-item:last-child .sunlandsg-cta-item-photo::before { background-color: rgb(0, 0, 0); opacity: 0.59; }

.sunlandsg-cta-item:nth-child(2) .sunlandsg-cta-item-photo::before, .sunlandsg-cta-item:nth-child(3) .sunlandsg-cta-item-photo::before { background-color: rgb(84, 84, 84); opacity: 0.63; }

.sunlandsg-cta-item-photo::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 17.063vw; height: 6.813vw; border-top: 0.188vw solid rgb(226, 175, 129); border-bottom: 0.188vw solid rgb(226, 175, 129); transition: 0.4s ease-in-out; z-index: 2; }

.sunlandsg-cta-item a:hover .sunlandsg-cta-item-photo::after { width: 87.34%; height: 78.44%; border: 1px solid rgb(255, 255, 255); }

.sunlandsg-cta-item-photo canvas { display: block; width: 100%; background-size: cover; background-position: center top; background-repeat: no-repeat; filter: grayscale(1); }

.sunlandsg-cta-item-label { position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 100%; font-family: var(--sl-font-body); font-size: 2.25vw; font-weight: 400; color: rgb(255, 255, 255); text-transform: uppercase; text-align: center; line-height: 1.3; z-index: 2; }

.sunlandsg-cta-item-label div { font-family: var(--sl-font-body); font-weight: 600; color: rgb(255, 255, 255); margin-top: 0.5vw; }

.sunlandsg-mdl-inner-wrapper { position: relative; margin-top: 6.375vw; }

.sunlandsg-mdl-inner-wrapper::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); opacity: 0.2; pointer-events: none; transition: 0.4s ease-in-out; z-index: 2; }

.sunlandsg-mdl-photo { position: relative; overflow: hidden; }

.sunlandsg-mdl-photo canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.sunlandsg-mdl-content-wrapper { position: absolute; top: 50%; left: 7.625vw; transform: translateY(-50%); width: 37.063vw; padding: 3.25vw 0px 3.625vw 3.188vw; background-color: rgba(0, 0, 0, 0.5); z-index: 2; }

.sunlandsg-mdl-logo-item { display: inline-block; vertical-align: middle; }

.sunlandsg-mdl-logo-item:first-child { margin-right: 3.375vw; }

.sunlandsg-mdl-logo-item:first-child img { width: 14.938vw; }

.sunlandsg-mdl-heading { font-family: var(--sl-font-heading); font-size: 1.25vw; font-weight: 600; color: rgb(255, 255, 255); text-transform: uppercase; margin-top: 3vw; }

.sunlandsg-mdl-excerpt { font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 400; color: rgb(255, 255, 255); line-height: 1.6; max-width: 31.25vw; margin-top: 0.438vw; }

.sunlandsg-mdl-link.global-link { margin-top: 2.125vw; }

.sunlandsg-media-inner-wrapper { background-color: rgb(242, 242, 242); margin-top: 4.125vw; }

.sunlandsg-media-slide-wrapper { padding: 10px 0px; pointer-events: none; }

.sunlandsg-media-item { display: flex; padding: 0 calc(var(--sl-marquee-gap, 10vw) / 2); align-items: center; align-content: center; min-height: 115px; max-width: none; }

.sunlandsg-media-item img { height: var(--sl-marquee-logo-height, 76px); width: auto; max-width: 350px; object-fit: contain; transform: translateZ(0px); }

.sunlandsg-ytchannel-inner-wrapper { position: relative; padding: 10.25vw 0px 0px; z-index: 1; }

.sunlandsg-ytchannel-inner-wrapper::after { content: ""; position: absolute; top: 3vw; right: -1.563vw; width: 53.688vw; height: 32.813vw; background-image: url("../images/he-thong/overlay-logo-05.png"); background-size: contain; background-position: center center; background-repeat: no-repeat; z-index: -1; display: none; }

.sunlandsg-ytchannel-top-content-col { display: inline-block; vertical-align: top; }

.sunlandsg-ytchannel-top-content-col.col-heading { width: 69.43%; }

.sunlandsg-section-heading.sunlandsg-ytchannel-heading .sunlandsg-section-heading-text div { font-size: 3.75vw; color: rgb(226, 175, 129); margin-top: 0px; }

.sunlandsg-ytchannel-top-content-col.col-account { width: 15.56%; }

.sunlandsg-ytchannel-top-content-account { margin-top: 1.875vw; }

.sunlandsg-ytchannel-top-content-account-col { display: inline-block; vertical-align: middle; }

.sunlandsg-ytchannel-top-content-account-col img { border-radius: 50%; margin-right: 0.688vw; }

.sunlandsg-ytchannel-top-content-account-col.col-name a { font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 700; color: rgb(0, 0, 0); text-transform: uppercase; }

.sunlandsg-ytchannel-top-content-col.col-subscribe { width: 15.01%; }

.sunlandsg-ytchannel-top-content-col.col-subscribe > div { max-width: 10.688vw; text-align: center; }

.sunlandsg-ytchannel-top-content-subscribe-link { margin-top: 2.313vw; }

.sunlandsg-ytchannel-top-content-subscribe-link a { display: block; font-family: var(--sl-font-heading); font-size: 0.938vw; font-weight: 700; color: rgb(255, 255, 255); text-transform: uppercase; padding: 1.188vw 0px; background-color: rgb(204, 0, 0); }

.sunlandsg-ytchannel-top-content-subscribe-link a:hover { opacity: 0.8; }

.sunlandsg-ytchannel-top-content-subscribe-count { font-family: var(--sl-font-body); font-size: 1vw; font-weight: 500; color: rgb(0, 0, 0); margin-top: 0.938vw; }

.sunlandsg-ytchannel-video-wrapper { padding: 4.938vw 0px 1px; margin-top: 1.813vw; background-color: rgb(0, 0, 0); }

.sunlandsg-ytchannel-video-row { margin-bottom: 5.625vw; }

.sunlandsg-ytchannel-video-col { display: inline-block; vertical-align: top; }

.sunlandsg-ytchannel-video-col.col-heading { width: 25.37%; }

.sunlandsg-ytchannel-video-heading-wrapper { padding: 0.5vw 0px 0px 2.375vw; }

.sunlandsg-ytchannel-video-heading { font-family: var(--sl-font-heading); font-size: 2.5vw; font-weight: 700; color: rgb(255, 255, 255); text-transform: uppercase; }

.sunlandsg-ytchannel-video-subscribe-link { max-width: 11.125vw; margin-top: 1.438vw; }

.sunlandsg-ytchannel-video-subscribe-link a { display: block; font-family: var(--sl-font-heading); font-size: 0.938vw; font-weight: 600; color: rgb(255, 255, 255); text-transform: uppercase; text-align: center; padding: 1.188vw 0px; background-color: rgb(204, 0, 0); }

.sunlandsg-ytchannel-video-subscribe-link a:hover { opacity: 0.8; }

.sunlandsg-ytchannel-video-submit-prop-link { max-width: 11.563vw; margin-top: 1.25vw; display: none; }

.sunlandsg-ytchannel-video-submit-prop-link a { display: block; font-family: var(--sl-font-heading); font-size: 0.938vw; font-weight: 700; color: rgb(255, 255, 255); text-transform: uppercase; text-align: center; padding: 1.188vw 0px; border-top: 1px solid rgb(226, 175, 129); border-bottom: 1px solid rgb(226, 175, 129); }

.sunlandsg-ytchannel-video-submit-prop-link a:hover { font-size: 0.875vw; background: rgb(226, 175, 129); }

.sunlandsg-ytchannel-video-col.col-video-list { width: 74.62%; }

.sunlandsg-ytchannel-video-list-wrapper { max-width: 98.15%; }

.sunlandsg-ytchannel-video-item { display: inline-block; vertical-align: top; width: calc(33.33% - 0.75vw); margin-right: 0.75vw; }

.sunlandsg-ytchannel-video-item a { position: relative; display: block; }

.sunlandsg-ytchannel-video-item-thumbnail { position: relative; }

.sunlandsg-ytchannel-video-item-thumbnail::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); opacity: 0.2; pointer-events: none; transition: 0.3s ease-in-out; }

.sunlandsg-ytchannel-video-item a:hover .sunlandsg-ytchannel-video-item-thumbnail::before { opacity: 0; }

.sunlandsg-ytchannel-video-item-thumbnail canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.sunlandsg-ytchannel-video-item-play-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; }

.sunlandsg-trainingspeaking-inner-wrapper { position: relative; margin-top: 6.188vw; padding: 6.25vw 0px 14.563vw; background-color: rgb(0, 0, 0); z-index: 1; }

.sunlandsg-trainingspeaking-inner-wrapper::after { content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; height: 19.125vw; background-image: url("../images/he-thong/nen-03.jpg"); background-size: cover; background-position: center center; background-repeat: no-repeat; background-attachment: fixed; pointer-events: none; filter: grayscale(1); opacity: 0.3; z-index: -1; }

.sunlandsg-section-heading.sunlandsg-trainingspeaking-heading .sunlandsg-section-heading-text div { font-size: 4.375vw; margin-top: 0.563vw; }

.sunlandsg-trainingspeaking-list { width: 73.125vw; margin: 6.063vw auto 0px; }

.sunlandsg-trainingspeaking-item { display: inline-block; vertical-align: top; width: 33.33%; padding: 0px 0.938vw; }

.sunlandsg-trainingspeaking-item-inner-wrapper { position: relative; padding-bottom: 2.875vw; background-color: rgb(255, 255, 255); }

.sunlandsg-trainingspeaking-item-photo { margin-bottom: 2.313vw; }

.sunlandsg-trainingspeaking-item-photo canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; }

.sunlandsg-trainingspeaking-item-heading { font-family: var(--sl-font-heading); font-size: 1.563vw; font-weight: 400; color: rgb(0, 0, 0); letter-spacing: 0.04em; text-transform: uppercase; text-align: center; margin-bottom: 0.813vw; }

.sunlandsg-trainingspeaking-item-excerpt { font-family: var(--sl-font-body); font-size: 1.063vw; font-weight: 400; color: rgb(68, 68, 68); text-align: center; line-height: 1.6; padding: 0px 2vw; min-height: 12.75vw; }

.sunlandsg-trainingspeaking-item-link { margin: 0px auto; }

.sunlandsg-trainingspeaking-item-link a { color: rgb(0, 0, 0); border-color: rgb(0, 0, 0); }

.sunlandsg-trainingspeaking-item-link a:hover { color: rgb(255, 255, 255); }

.sunlandsg-social-wrapper.section-wrapper { overflow: hidden; z-index: 2; }

.sunlandsg-social-wrapper::after { content: ""; position: absolute; top: -2.438vw; right: -2.5vw; width: 75.5vw; height: 46.125vw; background-image: url("../images/he-thong/overlay-logo-03.png"); background-size: contain; background-position: center center; background-repeat: no-repeat; display: none; }

.sunlandsg-social-inner-wrapper { position: relative; max-width: 83.75vw; margin: 0px auto; padding: 5.625vw 0px; z-index: 1; }

.sunlandsg-section-heading.sunlandsg-social-heading { text-align: left; }

.sunlandsg-section-heading.sunlandsg-social-heading .sunlandsg-section-heading-text div { font-size: 4.375vw; color: rgb(226, 175, 129); margin-top: 0.5vw; }

.sunlandsg-social-top-content { margin-top: 2.813vw; }

.sunlandsg-social-top-content-col { display: inline-block; vertical-align: middle; width: 50%; }

.sunlandsg-social-top-content-excerpt { font-family: var(--sl-font-body); font-size: 1.125vw; font-weight: 400; color: rgb(24, 24, 24); line-height: 1.4; max-width: 28.313vw; }

.sunlandsg-social-top-content-smi { text-align: right; }

.sunlandsg-social-top-content-smi li { display: inline-block; vertical-align: middle; margin: 0px 1.313vw; }

.sunlandsg-social-top-content-smi li:last-child { margin-right: 0px; }

.sunlandsg-social-top-content-smi li a span { font-size: 1.75vw; color: rgb(226, 175, 129); }

.sunlandsg-social-top-content-smi li a:hover span { color: rgb(0, 0, 0); }

.sunlandsg-social-middle-content { margin-top: 3.75vw; }

.sunlandsg-social-instagram-list { margin: 0px -1.25vw; }

.sunlandsg-social-instagram-item { display: inline-block; vertical-align: top; width: 33.33%; padding: 0px 1.25vw; }

.sunlandsg-social-instagram-item-inner-wrapper { position: relative; }

.sunlandsg-social-instagram-item-user-acct { position: absolute; top: 59%; left: 0px; transform: rotate(-90deg); transform-origin: 0px 0px; }

.sunlandsg-social-instagram-item-user-acct a { position: relative; font-family: var(--sl-font-heading); font-size: 1.375vw; font-weight: 700; color: rgb(24, 24, 24); }

.sunlandsg-social-instagram-item-user-acct a:hover { color: rgb(226, 175, 129); }

.sunlandsg-social-instagram-item-user-acct a::before { content: ""; position: absolute; top: 50%; left: -5.313vw; width: 3.313vw; height: 0.313vw; background-color: rgb(226, 175, 129); pointer-events: none; }

.sunlandsg-social-instagram-item-photo-list { padding-left: 2.625vw; }

.sunlandsg-social-instagram-item-photo { display: inline-block; vertical-align: top; width: 50%; padding: 0.25vw; }

.sunlandsg-social-instagram-item-photo a { display: block; position: relative; }

.sunlandsg-social-instagram-item-photo a::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); pointer-events: none; opacity: 0.2; transition: 0.3s ease-in-out; }

.sunlandsg-social-instagram-item-photo a:hover::before { opacity: 0; }

.sunlandsg-social-instagram-item-photo canvas { display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; transition: 0.4s; }

.sunlandsg-social-bottom-content { margin-top: 3.75vw; }

.sunlandsg-dreamwall-wrapper.section-wrapper { margin-top: -8.75vw; display: none; }

.sunlandsg-dreamwall-photo { position: relative; }

.sunlandsg-dreamwall-photo::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgb(0, 0, 0); pointer-events: none; opacity: 0.6; z-index: 1; }

.sunlandsg-dreamwall-photo canvas { position: relative; display: block; width: 100%; background-size: cover; background-position: center center; background-repeat: no-repeat; background-attachment: fixed; }

.sunlandsg-dreamwall-link { position: absolute; bottom: 9.75vw; left: 50%; transform: translateX(-50%); width: 18.313vw; z-index: 2; }

.sunlandsg-dreamwall-link a { display: block; font-family: var(--sl-font-heading); font-size: 1.25vw; font-weight: 700; color: rgb(255, 255, 255); text-transform: uppercase; text-align: center; padding: 1.375vw 0px; background-color: rgb(226, 175, 129); }

.sunlandsg-dreamwall-link a:hover { background-color: rgb(226, 175, 129); }

.sunlandsg-about-wrapper, .sunlandsg-properties-wrapper, .sunlandsg-wwwu-wrapper, .sunlandsg-cta-wrapper, .sunlandsg-mdl-wrapper, .sunlandsg-media-wrapper, .sunlandsg-ytchannel-wrapper, .sunlandsg-trainingspeaking-wrapper, .sunlandsg-social-wrapper, .home .sunlandsg-git-wrapper, .home .sunlandsg-footer-logo-wrapper, .home .sunlandsg-footer-wrapper { display: none; }

/* HERO: các mốc 4em/3em/2em của slider gốc đã bị gỡ — chúng phá thang chữ vw
   của mẫu (ở 992-1200px dòng eyebrow nhảy lên 64px, to hơn cả tên thương hiệu).
   Thang chữ hero nay do khối "HERO — QUY CHUẨN GO4AI/SUNLANDSG" ở cuối file quy định. */

@media (max-width: 991px){
}

@media only screen and (max-width: 1440px){
.sunlandsg-team-list-slide-arrows { width: calc(100% - 1vw); }
}

@media only screen and (max-width: 1366px){
.sunlandsg-trainingspeaking-item-excerpt { font-size: 1vw; }
}

@media only screen and (max-width: 991px){
.sunlandsg-section-heading.sunlandsg-social-heading { text-align: center; }
.sunlandsg-ytchannel-top-content-account-col.col-name a { font-size: 16px; }
.sunlandsg-about-inner-wrapper { display: flex; flex-direction: column-reverse; }
#sunland-hero::before { display: none; }
#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title { font-size: 35px; }
#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title .slideshow-link, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link { max-width: 300px; margin: 20px auto 0px; }
#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title .slideshow-link a, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a { font-size: 16px; padding: 17px 0px; }
.sunlandsg-about-col { display: block; width: 100% !important; }
.sunlandsg-about-text-wrapper { padding: 50px 20px; }
.sunlandsg-about-col.about-text-col::before { top: 0px; left: 0px; width: 100%; height: 100%; }
.sunlandsg-about-text-excerpt { max-width: 100%; margin: 20px 0px; }
.sunlandsg-about-text-excerpt p { font-size: 16px; margin-bottom: 16px; }
.sunlandsg-properties-inner-wrapper { padding: 40px 0px; }
.sunlandsg-properties-list-slide-arrows { opacity: 1; }
.sunlandsg-properties-item-content { bottom: -52px; padding: 0px 0px 26px 18px; }
.sunlandsg-properties-item-content-status-city { top: 22px; left: 22px; }
.sunlandsg-properties-item-content-status-city div { font-size: 18px; padding: 0px 12px; }
.sunlandsg-properties-item-content-status-city div:first-child::after { height: 27px; }
.sunlandsg-properties-item a::before { bottom: 18px; width: 4px; height: 61px; }
.sunlandsg-properties-item a::after { border: 4px solid rgb(226, 175, 129); }
.sunlandsg-properties-item-content-address { font-size: 25px; }
.sunlandsg-properties-item-content-address div { font-size: 18px; margin-top: 0px; }
.sunlandsg-properties-item-content-features { margin-bottom: 5px; }
.sunlandsg-properties-item-content-features li { font-size: 14px; padding: 0px 9px; }
.sunlandsg-properties-item-content-features li::after { height: 14px; }
.sunlandsg-properties-item-content-price { font-size: 22px; }
.sunlandsg-properties-item-link-label { bottom: 18px; right: 18px; font-size: 15px; width: 120px; padding: 10px 0px; }
.sunlandsg-properties-list-slide-arrows span { width: 33px; height: 66px; padding: 23px 0px; font-size: 19px; }
.sunlandsg-wwwu-inner-wrapper { padding: 50px 0px; background-attachment: scroll; }
.sunlandsg-wwwu-stats-list { margin-top: 40px; }
.sunlandsg-wwwu-stats-item { padding: 0px 24px; }
.sunlandsg-wwwu-stats-item-value { font-size: 34px; }
.sunlandsg-wwwu-stats-item-label { font-size: 11px; margin-top: 10px; }
.sunlandsg-team-inner-wrapper { padding: 50px 0px; }
.sunlandsg-team-list-slide-arrows { opacity: 1; }
.sunlandsg-team-list-item-name { font-size: 15px; margin-top: 10px; }
.sunlandsg-team-list-item { padding: 0px 9px; }
.sunlandsg-team-list-slide-arrows span { font-size: 17px; padding: 12px; }
.sunlandsg-team-list-item-photo::after { width: 56px; height: 37px; }
.sunlandsg-cta-inner-wrapper { padding: 50px 0px 0px; }
.sunlandsg-cta-item-label { font-size: 21px; }
.sunlandsg-cta-item-photo::after { width: 131px; height: 75px; border-top: 1px solid rgb(226, 175, 129); border-bottom: 1px solid rgb(226, 175, 129); }
.sunlandsg-mdl-inner-wrapper { margin-top: 50px; }
.sunlandsg-mdl-content-wrapper { position: relative; top: 0px; left: 0px; transform: none; width: 100%; padding: 50px 20px; background-color: rgb(0, 0, 0); }
.sunlandsg-mdl-logo { text-align: center; }
.sunlandsg-mdl-logo-item { margin: 0px 20px 20px !important; }
.sunlandsg-mdl-logo-item img { width: auto !important; max-width: 135px; }
.sunlandsg-mdl-heading { font-size: 18px; text-align: center; margin-top: 20px; }
.sunlandsg-mdl-excerpt { font-size: 16px; max-width: 100%; margin-top: 10px; text-align: center; }
.sunlandsg-mdl-link.global-link { margin: 20px auto 0px; }
.sunlandsg-media-inner-wrapper { margin-top: 40px; }
.sunlandsg-media-slide-wrapper { padding: 28px 0px; }
.sunlandsg-media-item { padding: 0px 35px; }
.sunlandsg-ytchannel-inner-wrapper { padding: 50px 0px 0px; }
.sunlandsg-ytchannel-top-content-col { display: block; width: 100% !important; }
.sunlandsg-section-heading.sunlandsg-ytchannel-heading .sunlandsg-section-heading-text div { font-size: 28px; color: rgb(226, 175, 129); margin-top: 8px; }
.sunlandsg-ytchannel-top-content-account { margin-top: 20px; text-align: center; }
.sunlandsg-ytchannel-top-content-account-col img { margin-right: 10px; }
.sunlandsg-ytchannel-top-content-account-col.col-name { font-size: 16px; }
.sunlandsg-ytchannel-top-content-col.col-subscribe { margin-top: 20px; }
.sunlandsg-ytchannel-top-content-col.col-subscribe > div { max-width: 320px; text-align: center; margin: 0px auto; }
.sunlandsg-ytchannel-top-content-subscribe-link a { font-size: 15px; padding: 16px 0px; }
.sunlandsg-ytchannel-top-content-subscribe-count { font-size: 16px; margin-top: 10px !important; }
.sunlandsg-ytchannel-video-wrapper { padding: 30px 0px 1px; margin-top: 30px; }
.sunlandsg-ytchannel-video-row { margin-bottom: 30px; }
.sunlandsg-ytchannel-video-col { display: block; width: 100% !important; }
.sunlandsg-ytchannel-video-heading-wrapper { padding: 0px; margin-bottom: 20px; }
.sunlandsg-ytchannel-video-heading { font-size: 24px; text-align: center; }
.sunlandsg-ytchannel-video-subscribe-link, .sunlandsg-ytchannel-video-submit-prop-link { max-width: 320px; margin: 20px auto; }
.sunlandsg-ytchannel-video-subscribe-link a, .sunlandsg-ytchannel-video-submit-prop-link a { font-size: 15px; padding: 16px 0px; }
.sunlandsg-ytchannel-video-submit-prop-link a:hover { font-size: 15px; }
.sunlandsg-ytchannel-video-list-wrapper { max-width: 100%; text-align: center; }
.sunlandsg-ytchannel-video-item { width: 50%; margin-right: 0px; padding: 10px; }
.sunlandsg-trainingspeaking-inner-wrapper { margin-top: 50px; padding: 50px 0px 80px; }
.sunlandsg-trainingspeaking-inner-wrapper::after { height: 210px; }
.sunlandsg-trainingspeaking-list { width: 100%; max-width: 95%; margin: 30px auto 0px; }
.sunlandsg-trainingspeaking-item-heading { font-size: 18px; margin-top: 20px; margin-bottom: 8px; }
.sunlandsg-trainingspeaking-item-excerpt { font-size: 14px; padding: 0px 12px; min-height: 225px; }
.sunlandsg-trainingspeaking-item-link.global-link { max-width: 90%; }
.sunlandsg-social-inner-wrapper { max-width: 100%; padding: 50px 0px; }
.sunlandsg-social-top-content { margin-top: 20px; }
.sunlandsg-social-top-content-col { display: block; width: 100%; }
.sunlandsg-social-top-content-excerpt { font-size: 16px; max-width: 100%; text-align: center; }
.sunlandsg-social-top-content-smi { text-align: center; padding-top: 20px; }
.sunlandsg-social-top-content-smi li { margin: 0px 16px; }
.sunlandsg-social-top-content-smi li:first-child { margin-left: 0px; }
.sunlandsg-social-top-content-smi li a span { font-size: 23px; }
.sunlandsg-social-middle-content { max-width: 480px; margin: 30px auto 0px; }
.sunlandsg-social-instagram-item { width: 100%; padding: 0px 15px; margin-bottom: 30px; }
.sunlandsg-social-instagram-item-user-acct { position: relative; top: 0px; left: 0px; transform: none; margin-bottom: 10px; }
.sunlandsg-social-instagram-item-photo-list { padding-left: 0px; }
.sunlandsg-social-instagram-item-photo { padding: 2px; }
.sunlandsg-social-instagram-item-user-acct a { font-size: 20px; padding-left: 40px; }
.sunlandsg-social-instagram-item-user-acct a::before { left: 0px; width: 30px; height: 3px; }
.sunlandsg-social-bottom-content { margin-top: 0px; }
.sunlandsg-dreamwall-wrapper.section-wrapper { margin-top: 0px; }
.sunlandsg-dreamwall-link { bottom: auto; top: 50%; transform: translate(-50%, -50%); width: 220px; }
.sunlandsg-dreamwall-link a { font-size: 18px; padding: 12px 0px; }
}

@media only screen and (max-width: 767px){
.sunlandsg-wwwu-stats-item { width: 50%; margin-bottom: 20px; }
.sunlandsg-wwwu-stats-item::after { display: none; }
.sunlandsg-trainingspeaking-list { max-width: 320px; }
.sunlandsg-trainingspeaking-item { display: block; width: 100%; padding: 0px; margin-bottom: 20px; }
.sunlandsg-trainingspeaking-item-excerpt { padding: 0px 12px 20px; min-height: auto; }
}

@media only screen and (max-width: 567px){
.sunlandsg-ytchannel-video-item { width: 100%; }
#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption-title, #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title { font-size: 30px; }
.sunlandsg-team-list-wrapper { padding: 18px 0px; }
.sunlandsg-cta-item { display: block; width: 100%; padding: 0px; margin-bottom: 10px; }
.sunlandsg-mdl-logo-item img { max-height: 70px; }
.sunlandsg-section-heading.sunlandsg-ytchannel-heading .sunlandsg-section-heading-text div { font-size: 17px !important; }
.sunlandsg-ytchannel-top-content-col.col-subscribe > div, .sunlandsg-ytchannel-video-subscribe-link, .sunlandsg-ytchannel-video-submit-prop-link { max-width: 250px; }
.sunlandsg-trainingspeaking-item-inner-wrapper { padding-bottom: 20px; }
.sunlandsg-dreamwall-photo canvas { height: 150px; background-attachment: scroll; }
}

.sunlandsg-social-agents { flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 40px 60px; background-color: rgb(0, 0, 0); display: flex !important; padding: 60px 24px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item { flex-direction: column; align-items: center; max-width: 80vw; vertical-align: top; position: static !important; display: flex !important; width: 260px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-photo { width: 150px; height: 150px; margin: 0px 0px 18px; border-radius: 50%; overflow: hidden; background-color: rgb(15, 73, 79); flex: 0 0 auto; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-photo img { object-fit: cover; display: block; width: 100% !important; height: 100% !important; margin: 0px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details { text-align: center; position: static !important; left: auto !important; top: auto !important; transform: none !important; width: 100% !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details-name { font-size: 26px !important; line-height: 1.32; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details-name span { display: block; letter-spacing: 0.08em; text-transform: uppercase; color: rgb(226, 175, 129); margin: 6px 0px 0px !important; font-size: 15px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details-smi { padding: 0px; display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; margin-top: 16px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details-smi li { display: inline-flex; margin: 0px !important; }

.sunlandsg-social-wrapper .sunlandsg-social-agents-item-details-smi li a span { font-size: 20px !important; }

#header-nav .sub-menu::before, #fixed-header-nav .sub-menu::before, .header-menu-toggle:hover span, .sunlandsg-fixed-header-menu-toggle:hover span, .sunlandsg-section-heading-text div::before, .sunland-heading-numerical__line { background-color: var(--sl-gold) !important; }

#sunland-hero, .hero, .home-hero, .page-hero { background-color: var(--sl-teal-dark) !important; }

#sunland-hero .cycloneslider-slide::before, #sunland-hero .sunland-hero-media::before, .hero::before, .home-hero::before, .page-hero::before { background: linear-gradient(180deg, rgba(var(--sl-teal-dark-rgb), .12) 0%, rgba(var(--sl-teal-dark-rgb), .56) 100%),
        linear-gradient(90deg, rgba(var(--sl-teal-rgb), .72) 0%, rgba(var(--sl-teal-mid-rgb), .54) 58%, rgba(var(--sl-teal-dark-rgb), .28) 100%) !important; }

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption::after, #sunland-hero .sunland-hero-tagline::after { background: linear-gradient(to bottom, rgba(var(--sl-teal-dark-rgb), .06), rgba(var(--sl-teal-dark-rgb), .82)) !important; }

#sunland-hero .cycloneslider-caption-title, #sunland-hero .sunland-hero-tagline-title, .hero h1, .home-hero h1, .page-hero h1 { color: var(--sl-cream) !important; }

/* Tên thương hiệu trong hero để trắng như mẫu (gold chỉ dùng cho heading các
   section bên dưới) — xem khối "HERO — QUY CHUẨN GO4AI/SUNLANDSG" ở cuối file. */

#sunland-hero .cycloneslider-caption-description, #sunland-hero .sunland-hero-tagline-description, .hero p, .home-hero p, .page-hero p { color: var(--sl-white) !important; }

.sunlandsg-page-content, .listing-cta, .sunlandsg-media-inner-wrapper { background-color: var(--sl-gray-bg) !important; }

.property-card, .listing-card, .project-card, .sunlandsg-trainingspeaking-item-inner-wrapper, .sunlandsg-page-content article { box-shadow: 0 12px 30px rgba(var(--sl-teal-dark-rgb), .08); background: var(--sl-white) !important; color: var(--sl-black) !important; border-color: var(--sl-gray-border) !important; }

.property-card h3, .listing-card h3, .project-card h3, .sunlandsg-trainingspeaking-item-heading, .sunlandsg-properties-item-heading, .expro-slider__content--address { color: var(--sl-teal-dark) !important; }

.property-card p, .listing-card p, .project-card p, .sunlandsg-trainingspeaking-item-excerpt { color: var(--sl-black) !important; }

.property-card .meta, .listing-card .meta, .project-card .meta, .sunlandsg-section-heading-text, .sunland-heading-numerical { color: var(--sl-gray-text) !important; }

.sunlandsg-team-inner-wrapper, .sunlandsg-about-inner-wrapper, .sunlandsg-properties-inner-wrapper, .sunlandsg-ytchannel-video-wrapper, .sunlandsg-trainingspeaking-inner-wrapper, .sunlandsg-social-agents, .sunlandsg-git-inner-wrapper, .page-nation, .page-nation .pagination-inner, .sunlandsg-footer-inner-wrapper, .footer, .site-footer { background-color: var(--sl-teal-dark) !important; }

.sunlandsg-about-inner-wrapper, .sunlandsg-properties-inner-wrapper, .sunlandsg-team-inner-wrapper, .sunlandsg-ytchannel-video-wrapper, .sunlandsg-trainingspeaking-inner-wrapper, .sunlandsg-social-agents, .sunlandsg-git-inner-wrapper { color: var(--sl-white) !important; }

.sunlandsg-about-inner-wrapper .sunlandsg-section-heading-text, .sunlandsg-properties-inner-wrapper .sunlandsg-section-heading-text, .sunlandsg-team-inner-wrapper .sunlandsg-section-heading-text, .sunlandsg-ytchannel-video-wrapper .sunlandsg-section-heading-text, .sunlandsg-trainingspeaking-inner-wrapper .sunlandsg-section-heading-text, .sunlandsg-social-agents .sunlandsg-section-heading-text, .sunlandsg-git-inner-wrapper .sunlandsg-section-heading-text { color: var(--sl-cream) !important; }

.sunlandsg-about-inner-wrapper .sunlandsg-section-heading-text > div, .sunlandsg-properties-inner-wrapper .sunlandsg-section-heading-text > div, .sunlandsg-team-inner-wrapper .sunlandsg-section-heading-text > div, .sunlandsg-ytchannel-video-wrapper .sunlandsg-section-heading-text > div, .sunlandsg-trainingspeaking-inner-wrapper .sunlandsg-section-heading-text > div, .sunlandsg-social-agents .sunlandsg-section-heading-text > div, .sunlandsg-git-inner-wrapper .sunlandsg-section-heading-text > div { color: var(--sl-gold) !important; }

@media (max-width: 767px){
#sunland-hero .cycloneslider-slide::before, #sunland-hero .sunland-hero-media::before { background: linear-gradient(180deg, rgba(var(--sl-teal-rgb), .64), rgba(var(--sl-teal-dark-rgb), .66)) !important; }
}

/* Khối @media 480px cũ (26px/21px/13px) đã gỡ — mẫu giữ eyebrow 30px và nút
   16px xuống tới 375px. Thang chữ mobile nằm ở khối "HERO — QUY CHUẨN GO4AI/SUNLANDSG". */

/* Hero uses a Tiffany gradient while keeping all copy readable. */
#sunland-hero,
.hero,
.home-hero,
.page-hero {
    background-color: var(--sl-teal-dark) !important;
}

#sunland-hero .cycloneslider-slide::before,
#sunland-hero .sunland-hero-media::before,
.hero::before,
.home-hero::before,
.page-hero::before {
    background:
        linear-gradient(180deg, rgba(var(--sl-teal-dark-rgb), .12) 0%, rgba(var(--sl-teal-dark-rgb), .56) 100%),
        linear-gradient(90deg, rgba(var(--sl-teal-rgb), .72) 0%, rgba(var(--sl-teal-mid-rgb), .54) 58%, rgba(var(--sl-teal-dark-rgb), .28) 100%) !important;
}

#sunland-hero .cycloneslider-template-responsive .cycloneslider-caption::after,
#sunland-hero .sunland-hero-tagline::after {
    background: linear-gradient(to bottom, rgba(var(--sl-teal-dark-rgb), .06), rgba(var(--sl-teal-dark-rgb), .82)) !important;
}

#sunland-hero .cycloneslider-caption-title,
#sunland-hero .sunland-hero-tagline-title,
.hero h1,
.home-hero h1,
.page-hero h1 {
    color: var(--sl-cream) !important;
}

#sunland-hero .cycloneslider-caption-title > div:first-child,
#sunland-hero .sunland-hero-tagline-title > div:first-child {
    color: var(--sl-gold) !important;
}

#sunland-hero .cycloneslider-caption-description,
#sunland-hero .sunland-hero-tagline-description,
.hero p,
.home-hero p,
.page-hero p {
    color: var(--sl-white) !important;
}

/* Content surfaces, cards and listings. */
.sunlandsg-page-content,
.listing-cta,
.sunlandsg-media-inner-wrapper {
    background-color: var(--sl-gray-bg) !important;
}

.property-card,
.listing-card,
.project-card,
.sunlandsg-trainingspeaking-item-inner-wrapper,
.sunlandsg-page-content article {
    background: var(--sl-white) !important;
    color: var(--sl-black) !important;
    border-color: var(--sl-gray-border) !important;
    box-shadow: 0 12px 30px rgba(var(--sl-teal-dark-rgb), .08);
}

.property-card h3,
.listing-card h3,
.project-card h3,
.sunlandsg-trainingspeaking-item-heading,
.sunlandsg-properties-item-heading,
.expro-slider__content--address {
    color: var(--sl-teal-dark) !important;
}

.property-card p,
.listing-card p,
.project-card p,
.sunlandsg-trainingspeaking-item-excerpt {
    color: var(--sl-black) !important;
}

.property-card .meta,
.listing-card .meta,
.project-card .meta,
.sunlandsg-section-heading-text,
.sunland-heading-numerical {
    color: var(--sl-gray-text) !important;
}

.property-card .price,
.listing-card .price,
.project-card .price {
    color: var(--sl-gold-dark) !important;
}

.expro-slide::after,
.expro-slider__content,
.expro-expandable-slide__container {
    border-color: var(--sl-gold) !important;
}

/* Dark sections formerly black/navy now use SunlandSG deep Tiffany. */
.sunlandsg-team-inner-wrapper,
.sunlandsg-about-inner-wrapper,
.sunlandsg-properties-inner-wrapper,
.sunlandsg-ytchannel-video-wrapper,
.sunlandsg-trainingspeaking-inner-wrapper,
.sunlandsg-social-agents,
.sunlandsg-git-inner-wrapper,
.page-nation,
.page-nation .pagination-inner,
.sunlandsg-footer-inner-wrapper,
.footer,
.site-footer {
    background-color: var(--sl-teal-dark) !important;
}

.sunlandsg-footer-inner-wrapper {
    background-blend-mode: multiply;
}

.sunlandsg-footer-inner-wrapper,
.sunlandsg-footer-inner-wrapper p,
.sunlandsg-footer-inner-wrapper span,
.sunlandsg-footer-inner-wrapper a,
.footer,
.site-footer {
    color: var(--sl-white) !important;
}

.sunlandsg-footer-inner-wrapper a:hover,
.footer a:hover,
.site-footer a:hover {
    color: var(--sl-gold-light) !important;
}

.sunlandsg-about-inner-wrapper,
.sunlandsg-properties-inner-wrapper,
.sunlandsg-team-inner-wrapper,
.sunlandsg-ytchannel-video-wrapper,
.sunlandsg-trainingspeaking-inner-wrapper,
.sunlandsg-social-agents,
.sunlandsg-git-inner-wrapper {
    color: var(--sl-white) !important;
}

.sunlandsg-about-inner-wrapper .sunlandsg-section-heading-text,
.sunlandsg-properties-inner-wrapper .sunlandsg-section-heading-text,
.sunlandsg-team-inner-wrapper .sunlandsg-section-heading-text,
.sunlandsg-ytchannel-video-wrapper .sunlandsg-section-heading-text,
.sunlandsg-trainingspeaking-inner-wrapper .sunlandsg-section-heading-text,
.sunlandsg-social-agents .sunlandsg-section-heading-text,
.sunlandsg-git-inner-wrapper .sunlandsg-section-heading-text {
    color: var(--sl-cream) !important;
}

.sunlandsg-about-inner-wrapper .sunlandsg-section-heading-text > div,
.sunlandsg-properties-inner-wrapper .sunlandsg-section-heading-text > div,
.sunlandsg-team-inner-wrapper .sunlandsg-section-heading-text > div,
.sunlandsg-ytchannel-video-wrapper .sunlandsg-section-heading-text > div,
.sunlandsg-trainingspeaking-inner-wrapper .sunlandsg-section-heading-text > div,
.sunlandsg-social-agents .sunlandsg-section-heading-text > div,
.sunlandsg-git-inner-wrapper .sunlandsg-section-heading-text > div {
    color: var(--sl-gold) !important;
}

@media (max-width: 767px) {
    .sunlandsg-header,
    .sunlandsg-fixed-header,
    .header,
    .sunlandsg-sidenav-wrapper {
        background-color: var(--sl-teal-dark) !important;
    }

    #sunland-hero .cycloneslider-slide::before,
    #sunland-hero .sunland-hero-media::before {
        background:
            linear-gradient(180deg, rgba(var(--sl-teal-rgb), .64), rgba(var(--sl-teal-dark-rgb), .66)) !important;
    }

    .sunlandsg-fixed-header-col.col-logo { width: 88% !important; }
    .sunlandsg-fixed-header-col.col-sidenav-toggle { width: 12% !important; }
    .sunlandsg-fixed-header-logo > a {
        width: min(245px, 64vw);
        max-width: none;
    }
}

/* (Bản sao thứ hai của @media 480px cũ đã gỡ — trùng hoàn toàn với bản trên.) */

.section-wrapper { opacity: 1 !important; visibility: visible !important; transform: none !important; }

/* Chiều cao hero cố định 820px cũ đã gỡ: quy chuẩn dùng khung 2:1 theo bề rộng
   (xem khối "HERO — QUY CHUẨN GO4AI/SUNLANDSG"). */
.sunland-template--home .splide__slide.is-active .sunland-hero-tagline-title,
.sunland-template--home .splide__slide.is-active .sunland-hero-tagline-description,
.sunland-template--home .splide__slide.is-active .sunland-hero-disclaimer {
    transform: none !important;
}

/* =========================================================================
   HERO SLIDE OVERLAY FIX (SUPERSEDING LEGACY OVERLAYS)
   ========================================================================= */

/* 1. Loại bỏ 3 lớp overlay legacy bị cắt 49% & 60% trùng lặp */
#sunland-hero .cycloneslider-slide::before,
#sunland-hero .sunland-hero-media::before,
#sunland-hero .cycloneslider-caption::before,
#sunland-hero .sunland-hero-tagline::before,
#sunland-hero .cycloneslider-caption::after,
#sunland-hero .sunland-hero-tagline::after,

/* 2. Ảnh Hero z-index: 1 */
#sunland-hero .sunland-hero-media {
    position: relative !important;
    z-index: 1 !important;
}

/* 3. Gradient phủ toàn bộ Hero z-index: 2 (liên kết tùy chọn WP Admin) */
#sunland-hero.has-hero-overlay .sunland-hero-media::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2 !important;
    background: linear-gradient(180deg, rgba(0, 32, 31, 0.55) 0%, rgba(0, 32, 31, 0.35) 50%, rgba(0, 32, 31, 0.65) 100%) !important;
    pointer-events: none !important;
}
#sunland-hero.no-hero-overlay .sunland-hero-media::after {
    display: none !important;
    content: none !important;
}

/* 4. Khối bóng mờ bám riêng phía sau khối chữ z-index: 3 */
#sunland-hero .sunland-hero-tagline {
    position: absolute !important;
    z-index: 3 !important;
    pointer-events: none !important;
}

/* 5. Heading và CTA z-index: 4 - Triệt tiêu bay chữ legacy, chuyển sang Fade mượt 1.2s */
#sunland-hero .sunland-hero-tagline .sunland-hero-tagline-title,
#sunland-hero .sunland-hero-tagline .sunland-hero-tagline-description,
#sunland-hero .sunland-hero-tagline.tagline-active .sunland-hero-tagline-title,
#sunland-hero .sunland-hero-tagline.tagline-active .sunland-hero-tagline-description {
    transform: none !important;
    transition: opacity 1.2s ease-in-out !important;
}
#sunland-hero .splide__slide:not(.is-active) .sunland-hero-tagline-title {
    opacity: 0 !important; /* carousel inactive state */
}
#sunland-hero .splide__slide.is-active .sunland-hero-tagline-title {
    opacity: 1 !important;
}

/* Thẻ chữ nền tối + nút gold đặc trước đây đã được thay bằng khối
   "HERO — QUY CHUẨN GO4AI/SUNLANDSG" ở cuối file (chữ trần trên ảnh, nút viền trắng). */
#sunland-hero .sunland-hero-tagline-title {
    position: relative !important;
    z-index: 4 !important;
    pointer-events: auto !important;
}

@media only screen and (max-width: 767px) {
/* ---------------------------------------------------------------------
       1. HERO trang chủ: Splide chạy như desktop (theme.js mount cả mobile),
          chỉ chỉnh chiều cao ảnh cho vừa màn hình + tagline overlay gradient.
          KHÔNG ép slide tĩnh — để Splide tự bố cục (nếu không, .splide giữ
          visibility:hidden và cả hero biến mất trên mobile).
       --------------------------------------------------------------------- */
    /* Chiều cao hero đặt ở CONTAINER (track/list/slide), vì ảnh bên trong là
       position:absolute và canvas chống chiều cao đã bị ẩn — nếu chỉ set ảnh
       thì .sunland-hero-media sập về 0 (overflow hidden) và hero thành khối rỗng. */
    /* Triệt bỏ khoảng trắng chết giữa Header và Hero slider trên Mobile */
    .sunland-template--home,
    .sunland-template--home main,
    .sunland-template--home #sunland-hero,
    .sunland-template--home .sunland-hero-slider,
    .sunland-template--home .sunland-hero-splide {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    .sunland-template--home main > h2.sunland-visually-hidden-title {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
        height: 0 !important;
        line-height: 0 !important;
    }

    .sunland-template--home #sunland-hero,
    .sunland-hero-slider,
    .sunland-hero-slider .splide,
    .sunland-hero-slider .splide__track,
    .sunland-hero-slider .splide__list,
    .sunland-hero-slider .splide__slide {
        /* Quy chuẩn: khung 2:1 theo bề rộng, không thấp hơn 300px. */
        height: max(300px, 50vw) !important;
        min-height: 0 !important;
    }
    .sunland-hero-slider .sunland-hero-media {
        position: relative;
        height: 100% !important;
        overflow: hidden;
    }
    .sunland-hero-slider .sunland-hero-media picture,
    .sunland-hero-slider .sunland-hero-media img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        display: block;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: none !important;
        object-fit: cover;
        opacity: 1 !important;
    }
    /* Canvas 1600px của slider chỉ là lớp vẽ phụ trợ — bỏ hẳn trên mobile. */
    .sunland-hero-slider canvas,
    .sunland-hero-slider .sunland-hero-media canvas {
        display: none !important;
        /* MOB-HOME-001: chốt chặn nếu canvas 1600px được hiện lại bằng JS/inline
           style — không cho nó kéo rộng viewport. */
        max-width: 100% !important;
    }
    .sunland-hero-slider .splide__arrows,
    .sunland-hero-slider .splide__pagination {
        display: none !important;
    }
    /* Quy chuẩn căn khối chữ giữa khung ảnh, không dán đáy và không có dải gradient
       riêng dưới chân — độ tương phản do lớp phủ trên ảnh đảm nhiệm. */
    .sunland-hero-tagline,
    .sunland-hero-tagline.position-bottom {
        position: absolute !important;
        inset: 0 !important;
        top: 0 !important;
        transform: none !important;
        width: 100% !important;
        padding: 0 !important; /* lề ngang do .sunland-hero-tagline-title đảm nhiệm */
        background: none !important;
        text-align: center;
    }

    /* ---------------------------------------------------------------------
       2. Khối stats "Why Work With Us": nền ảnh + lớp phủ tối ĐÚNG tầng
          (overlay gốc bị z-index:-1 chìm dưới ảnh), typography px thay vw.
       --------------------------------------------------------------------- */
    .sunlandsg-wwwu-inner-wrapper {
        background-image:
            linear-gradient(rgba(2, 33, 31, 0.82), rgba(2, 33, 31, 0.82)),
            url("../images/he-thong/nen-05.jpg") !important;
        background-size: cover !important;
        background-position: center !important;
        background-attachment: scroll !important;
        padding: 44px 0 30px !important;
    }
    .sunlandsg-wwwu-inner-wrapper::before {
        display: none; /* overlay cũ vô dụng (z-index:-1) — thay bằng gradient trên */
    }
    .sunlandsg-wwwu-heading .sunlandsg-section-heading-text {
        font-size: 14px !important;
        letter-spacing: 0.12em;
        opacity: 0.95;
    }
    .sunlandsg-wwwu-heading .sunlandsg-section-heading-text div {
        font-size: clamp(24px, 6.5vw, 28px) !important;
        margin-top: 4px !important;
        letter-spacing: 0.02em;
        opacity: 1;
    }
    .sunlandsg-wwwu-stats-list {
        display: flex;
        flex-wrap: wrap;
        margin-top: 24px !important;
        padding: 0 8px;
    }
    .sunlandsg-wwwu-stats-item {
        box-sizing: border-box !important;
        width: 50% !important;
        padding: 0 8px !important;
        margin-bottom: 24px !important;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
    }
    .sunlandsg-wwwu-stats-item::after {
        display: none !important;
    }
    .sunlandsg-wwwu-stats-item-value {
        font-size: 32px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: #ffffff !important;
        text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45);
    }
    .sunlandsg-wwwu-stats-item-label {
        font-size: 13px !important;
        line-height: 1.35 !important;
        margin-top: 8px !important;
        letter-spacing: 0.04em !important;
        font-weight: 500 !important;
        opacity: 0.95;
        color: rgba(255, 255, 255, 0.95) !important;
    }
}

.section-wrapper { display: block !important; }

/* =========================================================================
   HERO — QUY CHUẨN GO4AI/SUNLANDSG
   Số đo lấy từ computed style của mẫu tại 1280 / 1100 / 768 / 390px.
   Khối này là nơi DUY NHẤT quy định khung ảnh, thang chữ và nút CTA của hero
   trang chủ. Không thêm override hero ở chỗ khác trong file.

   Thang chữ mẫu (giữ nguyên ở các dòng 172-184 phía trên):
     eyebrow  2.575vw · Inter 400 · uppercase · line-height 1
     heading  3.750vw · Be Vietnam Pro 700 · margin-top 1.938vw
     CTA      0.938vw · Be Vietnam Pro 600 · padding 1.063vw · viền trắng 2px
              nền rgba(0,0,0,.4) · bề rộng 18.625vw · margin-top 2.438vw
     ≤991px   eyebrow 35px · CTA 16px / 300px / padding 17px
     ≤567px   eyebrow 30px
   ========================================================================= */

/* 1. Khung ảnh: tỉ lệ 2:1 theo bề rộng, sàn 300px.
      (kích thước chuẩn: 1265x632 · 1085x542 · 753x376 · 390x300) */
.sunland-template--home #sunland-hero,
.sunland-template--home #sunland-hero .splide,
.sunland-template--home #sunland-hero .splide__track,
.sunland-template--home #sunland-hero .splide__list,
.sunland-template--home #sunland-hero .splide__slide,
.sunland-template--home #sunland-hero .sunland-hero-media {
    height: max(300px, 50vw);
    min-height: 0;
}
.sunland-template--home #sunland-hero .sunland-hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* 2. Khối chữ căn giữa hai chiều, chữ đặt trần trên ảnh — quy chuẩn không có thẻ
      nền tối. Độ tương phản do lớp phủ trên ảnh + text-shadow đảm nhiệm. */
#sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline {
    display: flex;
    flex-flow: column-reverse;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0;
}
#sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title {
    display: block;
    width: 100%;
    max-width: none;
    padding: 0 4vw;
    background: none;
    backdrop-filter: none;
    box-shadow: none;
    border-radius: 0;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .45);
}

/* 3. Tên thương hiệu: trắng như mẫu, không dùng gold. */
#sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title div:first-child {
    color: var(--sl-white, #fff) !important;
}

/* 4. CTA: viền trắng, nền tối mờ, góc vuông — hover chuyển gold. */
#sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a {
    box-sizing: border-box;
    border-radius: 0;
    text-decoration: none;
    box-shadow: none;
    text-shadow: none;
    white-space: nowrap;
}

/* Mẫu để nguyên 0.938vw nên ở dải 992-1200px chữ nút tụt còn 9-11px.
   Đặt sàn 12px cho riêng dải desktop — từ 1280px trở lên trùng khít với mẫu,
   dưới 992px giữ nguyên 16px của mẫu. */
@media only screen and (min-width: 992px) {
    #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a {
        font-size: max(0.938vw, 12px);
    }
}

/* 5. Tablet & mobile: mẫu giữ heading ở 3.75vw, xuống 375px chỉ còn ~14px —
      quá nhỏ cho tên thương hiệu tiếng Việt nên đặt sàn 18px, tỉ lệ với
      eyebrow gần như không đổi so với mẫu. */
@media only screen and (max-width: 991px) {
    #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title div:first-child {
        font-size: max(3.75vw, 18px);
        margin-top: 8px;
    }
    #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title {
        padding: 0 18px;
    }
    #sunland-hero .sunland-hero-slider.sunland-hero-template .sunland-hero-splide .sunland-hero-tagline .sunland-hero-tagline-title .slideshow-link a {
        white-space: normal;
    }
}

/* =========================================================================
   NHỊP SECTION TRANG CHỦ — QUY CHUẨN GO4AI/SUNLANDSG

   Đo mẫu tại 1280px, khoảng cách dọc mỗi section (padding của *-inner-wrapper,
   hoặc margin nếu section không có padding):
     properties 58.4/72.8 · wwwu 79.2/92.8 · team 60.0/57.6 · cta 74.4/0
     mdl 81.6 · media 52.8 · ytchannel 131.2/0 · training 79.2+80/186.4
     social 72/72 · about 0/0 · dreamwall -112 (đè lên section trước)
   → Các khoảng cũ KHÔNG đều: trên chạy 52.8-131.2px, dưới chạy 0-186px.

   Đo mẫu tại 390px thì lại rất nhất quán: 50px cho hầu hết section
   (wwwu · team · cta · ytchannel · training · social), properties 40px.

   Chốt một thang thống nhất theo quy chuẩn GO4AI/SunlandSG:
     - mobile 50px  = giá trị áp đảo của mẫu ở 390px
     - desktop 72px = trung vị của mẫu ở 1280px, cũng đúng bằng section
       'social' — section đối xứng duy nhất của mẫu (72/72)
   clamp() dưới đây cho ra chính xác 50px ở ≤889px và 72px ở 1280px nên
   không cần media query riêng.

   Hai section cố tình giữ 0: 'about' và 'dreamwall' là dải ảnh tràn viền,
   mẫu cũng để 0 — thêm padding sẽ phá bố cục tràn viền.
   ========================================================================= */

.sunland-template--home {
    --sl-section-gap: clamp(50px, 5.625vw, 96px);
}

.sunland-template--home .sunlandsg-properties-inner-wrapper,
.sunland-template--home .sunlandsg-wwwu-inner-wrapper,
.sunland-template--home .sunlandsg-team-inner-wrapper,
.sunland-template--home .sunlandsg-cta-inner-wrapper,
.sunland-template--home .sunlandsg-mdl-inner-wrapper,
.sunland-template--home .sunlandsg-media-inner-wrapper,
.sunland-template--home .sunlandsg-ytchannel-inner-wrapper,
.sunland-template--home .sunlandsg-trainingspeaking-inner-wrapper,
.sunland-template--home .sunlandsg-social-agents,
.sunland-template--home .sunlandsg-git-inner-wrapper {
    padding-top: var(--sl-section-gap) !important;
    padding-bottom: var(--sl-section-gap) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Các section tràn viền giữ nguyên 0 như mẫu. */
.sunland-template--home .sunlandsg-about-inner-wrapper,
.sunland-template--home .sunlandsg-dreamwall-inner-wrapper {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* =========================================================================
   MOBILE POLISH — nhịp sau "Giới thiệu" + căn giữa tiêu đề section

   1) Sau khối chữ Giới thiệu, khoảng trắng cộng dồn quá lớn ở mobile:
      padding-bottom 50px của .sunlandsg-about-text-wrapper + margin 20px của
      .sunlandsg-about-text-excerpt + margin-bottom 16px của <p> cuối
      + padding-top 50px của section kế → ~136px. Cắt phần thừa phía dưới
      khối chữ, giữ nguyên padding-top 50px của section kế nên nhịp giữa hai
      section còn ~56px, đúng thang --sl-section-gap ở mobile.

   2) .sunlandsg-section-heading-text là inline-block + text-align:left nên
      cả khối chỉ căn giữa theo dòng dài nhất; dòng nhỏ (kicker) và tiêu đề
      lệch nhau, thấy rõ ở section "Đội ngũ". Ở mobile cho mỗi dòng tự căn
      giữa, thanh vàng đi kèm tiêu đề vẫn nằm sát chữ.
   ========================================================================= */

@media only screen and (max-width: 991px){
  .sunlandsg-about-text-wrapper { padding-bottom: 0; }
  .sunlandsg-about-text-excerpt { margin-bottom: 0; }
  .sunlandsg-about-text-excerpt p:last-child { margin-bottom: 0; }

  .sunlandsg-section-heading-text {
    display: block;
    text-align: center;
    padding: 0 16px;
  }
  .sunlandsg-section-heading-kicker {
    display: block;
    text-align: center;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase;
    color: var(--sl-cream, #f4f1ea) !important;
    margin-bottom: 4px !important;
  }
  .sunlandsg-section-heading-text > div {
    display: inline-block;
    position: relative;
    text-align: center;
    font-size: clamp(24px, 6.5vw, 28px) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    padding-left: 18px !important;
    margin-top: 2px !important;
  }
  .sunlandsg-section-heading-text > div::before {
    height: 75% !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
}
