.home-banner.city-banner {position:relative; width:100%; height:100vh; overflow:hidden;}
.home-banner.city-banner .slide-bg {position:absolute; inset:0; background-size:cover; background-position:center; background-repeat:no-repeat; z-index:1;}
.home-banner.city-banner .content {position:relative; z-index:3; color:#fff; height:100%; display:flex; flex-direction:column; justify-content:center; text-align:center; padding:20px; max-width:805px; margin:0 auto; padding-top:276px;}
.home-banner.city-banner .subtitle {display:block; font-size:20px; font-size:120px; line-height:60px; color:#F9AA1A; font-family:var(--font-secondary); font-weight:400; text-align:center; z-index:auto;}
.home-banner.city-banner .sub-title {font-size:60px; line-height:100%; padding-bottom:30px; font-family:'Switzer-Variable'; text-align:center; text-transform:uppercase;}
.home-banner.city-banner .btn-primary {max-width:fit-content; margin:0 auto;}
.home-banner.city-banner .btn-outline-white:hover {background-color:#E31E3A !important; border:none !important; box-shadow:none;}
.home-banner.city-banner .btn-primary .btn-icon .icon-arrow, .home-banner.city-banner .home-card .icon .icon-arrow {fill:#000;}
.home-banner.city-banner .btn-outline-white {background-color:#00000033 !important; border:none !important; box-shadow:none;}
.slide-bg-mobile {display:none;}
.conclusion-sec {background-color:#F9AA1A; padding:78px 20px; text-align:center;}
.conclusion-sec .conclusion-sec__wrapper {max-width:1204px; margin:0 auto;}
.conclusion-sec .conclusion-sec__title {font-size:var(--fs-50); font-weight:600; color:var(--color-text); margin-bottom:30px; text-align:center;}
.conclusion-sec .conclusion-sec__text {font-weight:400; font-style:Regular; font-size:24px; letter-spacing:0%; text-align:center; color:#171819; line-height:1.3;}
.conclusion-sec .conclusion-sec__text--last {margin-top:25px;}
.faq-block.living-faq .container {max-width:1542px;}
.faq-block.living-faq .heading-block h2 {text-align:start; margin-bottom:60px;}
.faq-block.living-faq .faq-items .question.active {border-color:#F9AA1A;}
.living-faq .faq-inner {display:flex; gap:30px;}
.living-faq .faq-inner__image {width:50%;}
.living-faq .faq-inner__image img {width:100%; height:auto; border-radius:10px; display:block; transform:scale(1.01);}
.living-faq .faq-inner__content {width:50%;}
.living-faq .faq-inner__content p {margin:0; font-size:var(--fs-24); line-height:1.3; color:#555;}
.living-faq .faqSwiper .swiper-pagination-bullet {background:#1718195e !important; opacity:1;}
.living-faq .faqSwiper .swiper-pagination-bullet-active {background:#171819 !important;}
.living-faq .swiper.faqSwiper {border:1px solid #C3C3C3; height:100%; border-radius:20px;}
section.s-tab-section.py-common.city-after-banner-section {padding-top:0px; padding-bottom:0px;}
section.s-tab-section.py-common.city-after-banner-section .city-tabs-section .places-tabs-content {padding-bottom:84px; border-bottom:1px solid #9c9c9c30;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child {max-width:1230px;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child .heading-block h2 span {display:block;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child .heading-block h2 {margin-bottom:10px;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child p.center {margin-bottom:40px;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child .s-tab-section .heading-block {margin-bottom:75px;}
.city-tabs-section .places-tabs-nav {padding:10px; box-shadow:0px 1.2px 4px 0px #00000026; border-radius:40px; gap:10px;}
.city-tabs-section .places-tabs-nav .places-tab-btn.active {background:#F9AA1A; color:#FFFFFF;}
.page-template-city-guide .places-tabs-nav .places-tab-btn {font-family:'Switzer-Variable';}
.city-tabs-section .city-content__item {padding-bottom:20px; margin-bottom:20px;}
.city-tabs-section .city-content__item:last-child {border-bottom:none; margin-bottom:0;}
.city-tabs-section .city-content__item h3 {font-size:var(--fs-50); font-weight:600; color:var(--color-text); margin-bottom:15px; line-height:1.2;}
.city-tabs-section .city-content__item h4 {font-size:var(--fs-32); font-weight:600; color:var(--color-text); margin-bottom:15px;}
.city-tabs-section .city-content__item h3 span {color:#FAAA1A;}
.city-tabs-section .city-text {font-size:var(--fs-24); line-height:1.3; color:#5E5E5E;}
.city-tabs-section .full-text {display:none;}
.city-tabs-section .view-more {display:block; font-size:var(--fs-24); line-height:1.3; color:#5E5E5E; text-decoration:underline; cursor:pointer; padding-top:10px;}
.city-tabs-section .city-text.active .full-text {display:inline;}
.city-tabs-section .city-text.active .short-text {display:none;}
.top-location-tab {background-color:#fff8f1; padding-top:93px; padding-bottom:74px;}
section.top-location-tab .top-tab-heading h3 {font-weight:600; font-size:40px; letter-spacing:0%; margin-bottom:20px;}
.top-location-tab .city-text {font-size:var(--fs-24); line-height:1.3; color:#5E5E5E;}
.top-location-tab .top-tab-heading {margin-bottom:60px;}
.top-location-tab .places-tabs-nav {margin-bottom:30px;}
.best-restro-cafe .view-more-wrap {padding-top:0; text-align:left;}
.best-restro-cafe .places-cards-row {margin-bottom:30px;}
.best-restro-cafe.s-tab-section .heading-block h2 {text-align:start; font-size:var(--fs-32); margin-bottom:25px;}
.best-restro-cafe .heading-block p {text-align:start; line-height:1.3;}
.best-restro-cafe.s-tab-section .heading-block {margin-bottom:60px;}
.best-restro-cafe a.btn-primary {margin-top:30px;}
.s-tab-section.city-after-banner-section .heading-block p {line-height:1.3;}
section.faq-block.py-common.living-faq {padding:80px 0 80px 0;}
.city-after-banner-section .about-text .full-text {display:none;}
.city-after-banner-section .about-text.active .short-text {display:none;}
.city-after-banner-section .about-text.active .full-text {display:inline;}
.scroll-tabs-section .places-tab-panel {display:block !important; opacity:1 !important;}
.places-tabs-section.city-tabs-section.scroll-tabs-section {padding-top:30px;}

@media(max-width:1541px) {
.home-banner.city-banner .subtitle {font-size:100px; line-height:57px;}
.home-banner.city-banner .sub-title {font-size:50px; padding-bottom:20px;}
.home-banner.city-banner .content {max-width:680px;}
.faq-block.living-faq .container {max-width:1366px;}
.places-tabs-section.city-tabs-section.scroll-tabs-section {padding-top:10px;}
}

@media(max-width:1366px) {
section.s-tab-section.py-common.city-after-banner-section .city-tabs-section .places-tabs-content {padding-bottom:47px;}
.top-location-tab {background-color:#fff8f1; padding-top:50px; padding-bottom:60px;}
section.top-location-tab .top-tab-heading h3 {font-size:30px;}
section.faq-block.py-common.living-faq {padding:70px 0 70px 0;}
.faq-block.living-faq .container {max-width:1200px;}
}

@media(max-width:1199px) {
.faq-block.living-faq .container {max-width:992px;}
.top-location-tab .top-tab-heading {margin-bottom:40px;}
.best-restro-cafe.s-tab-section .heading-block {margin-bottom:40px;}
}

@media(max-width:991px) {
.conclusion-sec {padding:50px 20px;}
.conclusion-sec .conclusion-sec__title {font-size:28px;}
.conclusion-sec .conclusion-sec__text {font-size:15px;}
.faq-block.living-faq .container {max-width:768px;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child p.center {margin-bottom:30px;}
}

@media(max-width:767px) {
.home-banner.city-banner {height:75vh;}
.home-banner.city-banner p {display:none;}
.home-banner.city-banner .subtitle {font-size:67px; text-align:center;}
.home-banner.city-banner .sub-title {text-align:center; font-size:35px; padding-bottom:26px;}
.home-banner.city-banner .content {padding-top:300px;}
.slide-bg-destop {display:none;}
.slide-bg-mobile {display:block;}
.conclusion-sec {padding:45px 15px;}
.conclusion-sec .conclusion-sec__title {font-size:26px;}
.conclusion-sec .conclusion-sec__text {font-size:16px; line-height:1.3;}
.living-faq .faq-inner {flex-direction:column;}
.living-faq .faq-inner__image, .living-faq .faq-inner__content {width:100%;}
.living-faq .faq-inner__image {margin-bottom:15px;}
.living-faq.faq-block .heading-block h2 span {display:inline !important;}
.living-faq.faq-block .heading-block h2 {margin-bottom:30px !important; font-size:26px;}
.living-faq .faq-inner {gap:0px !important;}
.living-faq .faq-items .answer {padding-left:20px; padding-right:20px;}
.faq-block.living-faq .faq-items .question.active {border-color:#171819 !important; font-weight:600 !important;}
section.s-tab-section.py-common.city-after-banner-section .city-tabs-section .places-tabs-content {padding-bottom:35px;}
.top-location-tab {background-color:#fff8f1; padding-top:50px; padding-bottom:50px;}
.top-location-tab .top-tab-heading {margin-bottom:35px;}
section.top-location-tab .top-tab-heading h3 {font-size:24px;}
.s-tab-section.city-after-banner-section .places-tab-btn {padding:13px 16px; font-size:16px;}
.city-tabs-section .places-tabs-nav {border-radius:40px 0 0 40px ;}
.top-location-tab .places-tab-btn {padding:12px 16px;}
section.faq-block.py-common.living-faq {padding:60px 0 60px 0;}
.best-restro-cafe a.btn-primary {margin-top:10px;}
.faq-block.living-faq .container {max-width:100%;}
.s-tab-section.py-common.city-after-banner-section>.container:first-child p.center {margin-bottom:20px;}
.city-tabs-section .city-content__item h3 {font-size:26px;}
.city-tabs-section .city-content__item h4 {font-size:20px; margin-bottom:10px;}
.best-restro-cafe.s-tab-section .heading-block h2 {font-size:24px; margin-bottom:15px;}
}

.ct-guide-map-section {padding:60px 0 90px 0;}
.ct-map-layout {display:grid; grid-template-columns:2.2fr 1fr; gap:24px; align-items:stretch; margin-top:40px;}
.ct-map-area {position:relative; width:100%; aspect-ratio:16/9; background-image:url('../images/guide-map.webp'); background-size:100% 100%; background-repeat:no-repeat; background-position:center; border-radius:20px; overflow:hidden;}
.ct-map-area img {width:100%; height:100%; object-fit:cover; border-radius:20px;}
.ct-map-marker {position:absolute; width:49px; height:49px; background:#f59e0b; border-radius:50%; transform:translate(-50%, -100%); cursor:pointer; transition:0.3s;}
.ct-map-marker::after {content:""; width:21px; height:25px; background:url('../images/guide-location-icon.webp'); background-repeat:no-repeat; background-size:100%; border-radius:50%; position:absolute; top:11px; left:14px;}
.ct-map-marker.active {background:#ef4444;}
.ct-map-list {height:100%; max-height:600px; overflow-y:auto; display:flex; flex-direction:column; gap:16px; padding-right:6px;}
.ct-map-card {display:flex; gap:14px; padding:14px; border-radius:20px; border:1.5px solid #e6e6e6; background:#fff; cursor:pointer; transition:0.3s;}
.ct-map-card.active {border:1px solid #f59e0b; box-shadow:0 10px 25px rgba(0,0,0,0.08);}
.ct-map-card img {width:100%; height:100%; border-radius:16px; object-fit:contain;}
.ct-map-card h4 {margin:0; font-size:var(--fs-24); font-weight:600;}
.ct-map-card .ct-location {font-size:13px; color:#6b7280; display:flex; align-items:center; gap:5px;}
.ct-map-card svg {display:inline-flex; align-items:center;}
.ct-map-card .g-location {font-size:14.4px; color:#171819; display:inline-flex; align-items:center;}
.ct-card-content a.btn-primary.btn-direction {background:var(--color-secondary); padding:10px 15px; font-size:14.5px; margin-top:10px;}
.ct-card-content .btn-direction span.btn-icon {width:30px; height:30px;}
.ct-card-content .ct-rating, .ct-mobile-content .ct-rating {margin-top:5px; display:flex; flex-wrap:nowrap; gap:5px; align-items:center;}
.ct-card-content .stars , .ct-mobile-content .stars {color:#f5a623; font-size:13px; letter-spacing:2px; display:flex;}
.ct-mobile-map-card {position:absolute; bottom:-70px; left:12px; right:12px; background:#fff; padding:5px; border-radius:18px; box-shadow:0 10px 25px rgba(0,0,0,0.2); opacity:0; transform:translateY(20px); transition:0.3s; display:none;}
.ct-mobile-map-card.active {opacity:1; transform:translateY(0); border:1px solid #c3c4c7;}
.ct-mobile-card-inner {display:flex; gap:12px; align-items:center;}
.ct-mobile-content {flex:1;}
.ct-mobile-rating {margin-top:0px; font-size:13px;}
.ct-mobile-btn {margin-top:6px;}
.ct-mobile-btn .btn-direction {padding:6px 10px; font-size:13px; background:var(--color-secondary);}
.ct-mobile-location {display:flex; align-items:center; gap:2px;}
.ct-mobile-location svg {width:14px; height:14px; flex-shrink:0;}

@media(max-width:1366px) {
.ct-guide-map-section {padding:60px 0 70px 0;}
.ct-map-list {max-height:550px;}
.ct-map-marker {width:41px; height:41px;}
.ct-map-marker::after {top:10px; left:12px; width:18px; height:22px;}
}

@media(max-width:1199px) {
.ct-card-content .ct-rating {margin-top:0px;}
.ct-card-content a.btn-primary.btn-direction {margin-top:2px; padding:6px 10px;}
.ct-card-content .btn-direction span.btn-icon {width:20px; height:20px;}
.ct-card-content .btn-direction span.btn-icon svg {width:9px; height:10px;}
.ct-map-list {max-height:450px;}
.ct-map-marker::after {top:9px; left:11px; width:16px; height:20px;}
.ct-map-marker {width:37px; height:37px;}
.ct-map-card .ct-location svg {width:15px;}
.ct-map-card .g-location {font-size:11px;}
.ct-map-card {padding:11px;}
.ct-card-content a.btn-primary.btn-direction {font-size:13.5px;}
}

@media (max-width: 991px) {
.ct-map-layout {grid-template-columns:1fr; gap:0;}
.ct-map-list {display:none !important;}
.ct-map-area {position:relative; width:100%; aspect-ratio:16/9; overflow:visible; padding-bottom:120px; border-radius:20px;}
.ct-map-marker {width:32px; height:32px;}
.ct-map-marker::after {top:8px; left:9px; width:14px; height:17px;}
.ct-mobile-map-card {position:absolute; left:23px; right:0; bottom:-165px; display:flex !important; gap:12px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding-right:24px; background:none; box-shadow:none; opacity:1 !important; transform:none !important;}
.ct-mobile-map-card::-webkit-scrollbar {display:none;}
.ct-mobile-map-card {scrollbar-width:none;}
.ct-mobile-card-inner {min-width:72%; max-width:72%; flex:0 0 72%; display:flex; gap:12px; align-items:center; background:#fff; border-radius:18px; padding:7px; scroll-snap-align:start; border:1px solid #DDDDDD;}
.ct-mobile-card-inner.active {border-color:#f59e0b;}
.ct-mobile-img {width:191px !important; height:161px !important; border-radius:18px !important; object-fit:cover; flex-shrink:0;}
.ct-mobile-content {flex:1;}
.ct-mobile-title {margin:0 0 4px; font-size:20px; font-weight:600; line-height:1.2;}
.ct-mobile-location {margin:0; font-size:13px; line-height:1.4; padding-bottom:7px; padding-top:7px;}
.ct-mobile-rating {display:flex; align-items:center; gap:5px;}
.ct-mobile-content .stars {display:inline-block;}
.ct-mobile-rating {margin-top:4px; font-size:15px;}
.ct-mobile-btn {margin-top:6px;}
.ct-mobile-btn .btn-direction {padding:6px 10px; font-size:12px;}
.btn-primary.btn-direction .btn-icon {width:28px; height:28px;}
.ct-guide-map-section {padding:40px 0 230px 0;}
}

@media (max-width: 575px) {
.ct-mobile-card-inner {min-width:100%; max-width:100%; flex:0 0 100%; border-radius:20px;}
.ct-mobile-img {width:130px !important; height:110px !important; border-radius:14px !important;}
.ct-mobile-map-card {bottom:-125px;}
.ct-mobile-btn {margin-top:2px;}
.ct-mobile-title , .ct-mobile-rating {margin:0 0 0px;}
.page-template-city-guide .home-banner.city-banner .subtitle {line-height:39px !important;}
.page-template-city-guide .home-banner {min-height:75vh;}
}

@media(max-width:767px) {
.ct-guide-map-section {padding:40px 0 240px 0;}
.city-after-banner-section .heading-block h2 {font-size:26px; margin-bottom:20px !important;}
}

@media(max-width:575px) {
.ct-guide-map-section {padding:40px 0 180px 0;}
.ct-map-area {aspect-ratio:1 / 1; background-position:center right -61px; background-size:cover; max-width:401px; width:100%; margin:auto;}
.ct-map-marker::after {top:10px; left:11px;}
.ct-map-marker {width:35px; height:35px;}
.ct-map-marker:first-child {top:57% !important; left:69% !important;}
.ct-map-marker:nth-child(2) {top:64% !important; left:45% !important;}
.ct-map-marker:nth-child(3) {top:35%!important; left:38.2%!important;}
.ct-map-marker:nth-child(4) {top:16.6% !important; left:7% !important;}
.ct-map-marker:nth-child(5) {top:93% !important; left:43.7% !important;}
}

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