/* Comparison variants. Base styles remain untouched when no theme is selected. */
.theme-editorial .people-buttons, .theme-scrapbook .people-buttons { display: flex; gap: 12px; max-width: none; }
.theme-editorial .people-buttons button, .theme-scrapbook .people-buttons button { flex: 0 0 56px; width: 56px; min-height: 56px; padding: 0; border-radius: 50%; }

/* 1 — soft editorial: clean, warm and premium. */
.theme-editorial { --ink: #412f45; --muted: #806d7b; --line: #ead6e0; --paper: #fff9fb; --card: #f2f7ff; --leaf: #4c789b; --lime: #fbc7d7; --orange: #e96f9b; background: #fff9fb; }
.theme-editorial .hero { min-height: 520px; background: #cfe6fb; color: #412f45; }.theme-editorial .hero::before { border-color: rgba(233,111,155,.55); }.theme-editorial .hero::after { background: #f7a9c4; }.theme-editorial .hero .eyebrow { color: #b94a74; }.theme-editorial .hero-copy { color: #69546a; }
.theme-editorial .text-link { border-color: #e96f9b; color: #412f45; }.theme-editorial .text-link span { color: #e96f9b; }.theme-editorial .constructor { background: #fde6ee; }.theme-editorial .catalogue { background: #fff9fb; }.theme-editorial .section-copy, .theme-editorial .helper, .theme-editorial .disclaimer { color: #806d7b; }
.theme-editorial input[type='date'] { border-color: #dfb5c5; background: rgba(255,255,255,.74); }.theme-editorial .people-buttons button { border-color: #d7b2c0; background: #fff; }.theme-editorial .people-buttons button.is-selected { border-color: #e96f9b; background: #e96f9b; }
.theme-editorial .experience-card { border: 1px solid #efdde5; border-radius: 20px; box-shadow: 0 10px 28px rgba(96,54,79,.06); }.theme-editorial .experience-card.is-added { border-color: #e96f9b; background: #fff4f7; }.theme-editorial .card-number { color: #e96f9b; }.theme-editorial .card-actions button, .theme-editorial .addon-toggle { border-color: #e96f9b; color: #b64b73; }.theme-editorial .card-actions button.is-added, .theme-editorial .addon-toggle.is-added { background: #e96f9b; color: #fff; }
.theme-editorial .addon-card { border-radius: 20px; background: #dfeefe; }.theme-editorial .addon-card:nth-child(2) { background: #fbdde9; }.theme-editorial .summary { border-radius: 24px; background: #fff; box-shadow: 0 12px 35px rgba(96,54,79,.07); }.theme-editorial .telegram-button { border-radius: 14px; background: #5e98c8; }.theme-editorial .sticky-cta { background: #4c789b; }.theme-editorial .sticky-cta a { background: #fbc7d7; color: #412f45; }
.theme-editorial .detail-masthead { background: #cfe6fb; color: #412f45; }.theme-editorial .detail-duration { color: #69546a; }.theme-editorial .detail-overview { background: #4c789b; }.theme-editorial .tour-button { border-radius: 14px; background: #e96f9b; }

/* 2 — travel scrapbook: brighter, bolder and more playful. */
.theme-scrapbook { --ink: #243c58; --muted: #64798e; --line: #cbe0ee; --paper: #f8fcff; --card: #e8f6ff; --leaf: #356a93; --lime: #ffd0df; --orange: #fa6d9f; background: #f8fcff; }
.theme-scrapbook .hero { min-height: 520px; background: #bde8ff; color: #243c58; }.theme-scrapbook .hero::before { width: 350px; height: 350px; top: 55px; border: 2px dashed rgba(250,109,159,.65); }.theme-scrapbook .hero::after { background: #ffd0df; }.theme-scrapbook .hero .eyebrow { display: inline-block; width: fit-content; padding: 6px 10px; border-radius: 999px; color: #a83e68; background: #ffd0df; }.theme-scrapbook .hero-copy { color: #31536e; }
.theme-scrapbook .text-link { padding: 11px 16px; border: 0; border-radius: 999px; color: #fff; background: #356a93; }.theme-scrapbook .text-link span { color: #ffd0df; }.theme-scrapbook .constructor { background: #eaf7ff; }.theme-scrapbook .catalogue { background: #f8fcff; }.theme-scrapbook .section-heading .step { display: inline-block; padding: 6px 10px; border-radius: 999px; background: #ffd0df; color: #a83e68; }
.theme-scrapbook input[type='date'] { border: 2px solid #a9d5ee; border-radius: 14px; background: #fff; }.theme-scrapbook .people-buttons button { border: 2px solid #8fc9e9; background: #fff; }.theme-scrapbook .people-buttons button.is-selected { border-color: #fa6d9f; background: #fa6d9f; }
.theme-scrapbook .experience-card { border: 2px solid #c6e4f4; border-radius: 26px 26px 26px 7px; box-shadow: 7px 7px 0 #ffd0df; }.theme-scrapbook .experience-card.is-added { border-color: #fa6d9f; background: #fff4f8; }.theme-scrapbook .card-number { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; color: #a83e68; background: #ffd0df; font-size: .95rem; }
.theme-scrapbook .card-actions button, .theme-scrapbook .addon-toggle { border: 0; border-radius: 999px; color: #fff; background: #356a93; }.theme-scrapbook .card-actions button.is-added, .theme-scrapbook .addon-toggle.is-added { background: #fa6d9f; }.theme-scrapbook .addon-card { border-radius: 26px 26px 7px 26px; background: #ffd0df; }.theme-scrapbook .addon-card:nth-child(2) { background: #bde8ff; }
.theme-scrapbook .summary { border: 2px solid #c6e4f4; border-radius: 26px; box-shadow: 8px 8px 0 #bde8ff; }.theme-scrapbook .telegram-button { border-radius: 999px; background: #356a93; }.theme-scrapbook .sticky-cta { background: #356a93; }.theme-scrapbook .sticky-cta a { border-radius: 999px; background: #ffd0df; color: #243c58; }
.theme-scrapbook .detail-masthead { background: #bde8ff; color: #243c58; }.theme-scrapbook .detail-duration { color: #31536e; }.theme-scrapbook .detail-overview { background: #356a93; }.theme-scrapbook .detail-copy .step { display: inline-block; padding: 6px 10px; border-radius: 999px; background: #ffd0df; color: #a83e68; }.theme-scrapbook .tour-button { border-radius: 999px; background: #fa6d9f; }

/* 3 — Sense Travel Studio: quiet, tactile and premium. */
.theme-studio { --ink: #173a31; --muted: #66716a; --line: #d8d0c1; --paper: #f5f0e7; --card: #ece9db; --leaf: #173f35; --lime: #d8dbc8; --orange: #e96431; background: #f5f0e7; }
.theme-studio .brand { display: grid; gap: 1px; color: #173f35; font-family: var(--serif); font-size: 1.55rem; font-weight: 400; letter-spacing: -.055em; line-height: .78; }.theme-studio .brand span { color: #173f35; font-family: inherit; font-size: .56em; font-weight: 700; letter-spacing: .28em; text-transform: uppercase; }.theme-studio .brand::after { content: 'Studio'; color: #e96431; font-family: inherit; font-size: .38em; font-weight: 700; letter-spacing: .33em; text-transform: uppercase; }
.theme-studio .hero { min-height: 540px; background: #173f35; color: #f5f0e7; }.theme-studio .hero::before { width: 470px; height: 470px; border-color: rgba(245,240,231,.34); }.theme-studio .hero::after { width: 235px; height: 235px; background: #e96431; }.theme-studio .hero .eyebrow { color: #e8c6a0; }.theme-studio .hero-copy { color: #d8dbc8; }.theme-studio .text-link { border-color: #e96431; }.theme-studio .text-link span { color: #e96431; }
.theme-studio .intro-band { background: #f5f0e7; }.theme-studio .constructor { background: #e4e4d7; }.theme-studio .catalogue { background: #f5f0e7; }.theme-studio .add-ons { background: #f5f0e7; }.theme-studio .more { background: #173f35; }.theme-studio .section-heading .step { color: #e96431; }
.theme-studio input[type='date'] { border-color: #bfc4b4; background: rgba(255,253,247,.7); }.theme-studio .people-buttons { display: flex; gap: 12px; max-width: none; }.theme-studio .people-buttons button { flex: 0 0 56px; width: 56px; min-height: 56px; padding: 0; border: 1px solid #829186; border-radius: 50%; background: #f7f4ed; }.theme-studio .people-buttons button.is-selected { border-color: #173f35; background: #173f35; }
.theme-studio .experience-card { border-color: #d8d0c1; border-radius: 0; background: #fbf8f1; box-shadow: none; }.theme-studio .experience-card.is-added { border: 2px solid #173f35; padding: 19px; background: #f1f3e8; }.theme-studio .card-number { color: #e96431; }.theme-studio .card-actions button, .theme-studio .addon-toggle { border-color: #173f35; color: #173f35; }.theme-studio .card-actions button.is-added, .theme-studio .addon-toggle.is-added { background: #173f35; color: #f5f0e7; }
.theme-studio .addon-card { border: 1px solid #d8d0c1; border-radius: 0; background: #e7ddcc; }.theme-studio .addon-card:nth-child(2) { background: #d8dbc8; }.theme-studio .summary { border: 1px solid #173f35; border-radius: 0; background: #fbf8f1; }.theme-studio .telegram-button { border-radius: 0; background: #e96431; }.theme-studio .sticky-cta { background: #173f35; }.theme-studio .sticky-cta a { background: #e8c6a0; color: #173f35; }
.theme-studio .detail-masthead { background: #173f35; color: #f5f0e7; }.theme-studio .detail-duration { color: #d8dbc8; }.theme-studio .detail-overview { background: #213f36; }.theme-studio .gallery-instruction { color: #66716a; }.theme-studio .tour-button { border-radius: 0; background: #e96431; }.theme-studio .detail-copy .step { color: #e96431; }

/* 4 — photo-first editorial, inspired by contemporary travel publishing. */
.theme-suitcase { --ink: #151515; --muted: #6c6c6c; --line: #d8d8d8; --paper: #fff; --card: #f4f4f4; --leaf: #151515; --lime: #fff; --orange: #e86b39; --serif: Arial, Helvetica, sans-serif; background: #fff; }
.theme-suitcase .site-header { position: absolute; z-index: 5; width: 100%; max-width: none; color: #fff; }.theme-suitcase .brand { color: inherit; font-size: .78rem; font-weight: 500; letter-spacing: .15em; }.theme-suitcase .brand span { color: inherit; }.theme-suitcase .header-link { color: inherit; font-size: .72rem; letter-spacing: .12em; }.theme-suitcase .header-link span { color: #151515; background: #fff; }
.theme-suitcase .hero { min-height: 100svh; padding-top: max(150px, 23vh); background: linear-gradient(90deg, rgba(0,0,0,.48), rgba(0,0,0,.09) 78%), url('assets/modern/modern-01.jpg') center 49% / cover; color: #fff; }.theme-suitcase .hero::before, .theme-suitcase .hero::after { display: none; }.theme-suitcase .hero > * { max-width: 900px; }.theme-suitcase .hero .eyebrow { color: #fff; font-weight: 600; letter-spacing: .08em; }.theme-suitcase h1 { max-width: 860px; font-family: Arial, Helvetica, sans-serif; font-size: clamp(3.7rem, 8.5vw, 8.6rem); font-weight: 400; letter-spacing: -.075em; line-height: .84; }.theme-suitcase .hero-copy { max-width: 340px; margin-top: 60px; margin-bottom: 0; color: #fff; font-size: .96rem; }.theme-suitcase .text-link { display: flex; width: fit-content; margin-top: 60px; margin-right: 0; margin-left: 0; border-color: rgba(255,255,255,.7); color: #fff; }.theme-suitcase .text-link span { color: #fff; }
.theme-suitcase .intro-band { max-width: 960px; padding-top: 94px; padding-bottom: 94px; font-family: Arial, Helvetica, sans-serif; font-size: clamp(1.6rem, 3vw, 2.8rem); line-height: 1.03; }.theme-suitcase .constructor { width: 100%; max-width: none; padding: 72px max(20px, calc((100vw - 960px) / 2)); background: #f4f4f4; }.theme-suitcase .section-heading h2 { font-family: Arial, Helvetica, sans-serif; font-size: clamp(2.5rem, 5.5vw, 5.4rem); letter-spacing: -.07em; }.theme-suitcase .section-heading .step { color: #777; font-weight: 500; }.theme-suitcase input[type='date'], .theme-suitcase input[type='date']::-webkit-date-and-time-value, .theme-suitcase input[type='date']::-webkit-datetime-edit { text-align: left; }.theme-suitcase input[type='date'] { border: 0; border-bottom: 1px solid #151515; background: transparent; }.theme-suitcase .date-picker-trigger { border: 0; border-bottom: 1px solid #151515; background: transparent; }.theme-suitcase .calendar-dialog { background: #fff; }.theme-suitcase .calendar-day.is-selected, .theme-suitcase .calendar-day:not(:disabled):hover, .theme-suitcase .calendar-day:not(:disabled):focus-visible { background: #151515; }.theme-suitcase .people-buttons { display: flex; gap: 12px; max-width: none; }.theme-suitcase .people-buttons button { flex: 0 0 54px; width: 54px; min-height: 54px; padding: 0; border: 1px solid #151515; border-radius: 50%; background: transparent; }.theme-suitcase .people-buttons button.is-selected { color: #fff; background: #151515; }
.theme-suitcase .catalogue { width: 100%; max-width: none; padding: 84px max(20px, calc((100vw - 1180px) / 2)); }.theme-suitcase .catalogue .section-heading { max-width: 760px; }.theme-suitcase .experience-list { gap: 2px; }.theme-suitcase .experience-card { display: flex; min-height: 410px; flex-direction: column; justify-content: flex-end; padding: 26px; border: 0; border-radius: 0; color: #fff; background-color: #242424; background-position: center; background-size: cover; box-shadow: none; }.theme-suitcase .experience-card::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 18%, rgba(0,0,0,.75)); }.theme-suitcase .experience-card > * { position: relative; z-index: 1; }.theme-suitcase .experience-card:nth-child(1) { background-image: url('assets/arrival/arrival-01.jpg'); }.theme-suitcase .experience-card:nth-child(2) { background-image: url('assets/culture/culture-02.jpg'); }.theme-suitcase .experience-card:nth-child(3) { background-image: url('assets/modern/modern-01.jpg'); }.theme-suitcase .experience-card:nth-child(4) { background-image: url('assets/culture/culture-06.jpg'); }.theme-suitcase .experience-card:nth-child(5) { background-image: url('assets/arrival/arrival-04.jpg'); }.theme-suitcase .experience-card:nth-child(6) { background-image: url('assets/mix/mix-04.jpg'); }.theme-suitcase .experience-card:nth-child(7) { background-image: url('assets/mix/mix-01.jpg'); }.theme-suitcase .experience-card:nth-child(8) { background-image: url('assets/culture/culture-11.jpg'); }.theme-suitcase .experience-card.is-added { border: 0; padding: 26px; background-color: #242424; }.theme-suitcase .card-number { color: #fff; font-family: Arial, Helvetica, sans-serif; font-size: .75rem; }.theme-suitcase .card-heading { margin-top: 14px; }.theme-suitcase .card-heading h3 { font-family: Arial, Helvetica, sans-serif; font-size: 2rem; letter-spacing: -.065em; }.theme-suitcase .duration, .theme-suitcase .card-summary { color: #fff; }.theme-suitcase .details-button { color: #fff; }.theme-suitcase .price strong { color: #fff; }.theme-suitcase .card-actions button { border: 1px solid #fff; color: #151515; background: #fff; }.theme-suitcase .card-actions button.is-added { color: #fff; background: transparent; }
.theme-suitcase .add-ons { width: 100%; max-width: none; padding: 84px max(20px, calc((100vw - 1180px) / 2)); background: #151515; color: #fff; }.theme-suitcase .add-ons .section-heading .step, .theme-suitcase .add-ons .section-copy { color: #bbb; }.theme-suitcase .add-ons h2 { font-family: Arial, Helvetica, sans-serif; font-size: clamp(2.5rem, 5.5vw, 5.4rem); letter-spacing: -.07em; }.theme-suitcase .addon-card, .theme-suitcase .addon-card:nth-child(2) { border: 1px solid #4b4b4b; border-radius: 0; color: #fff; background: transparent; }.theme-suitcase .addon-card p { color: #ddd; }.theme-suitcase .addon-toggle { border-color: #fff; color: #fff; }.theme-suitcase .addon-toggle.is-added { background: #fff; color: #151515; }
.theme-suitcase .summary { margin-bottom: 0; padding-bottom: 136px; border: 0; border-radius: 0; background: #f4f4f4; }.theme-suitcase .telegram-button { border-radius: 0; background: #151515; }.theme-suitcase .sticky-cta { background: #151515; }.theme-suitcase .sticky-cta a { color: #151515; background: #fff; }.theme-suitcase .more { width: 100%; max-width: none; margin-top: 0; background: #e86b39; }
.theme-suitcase.details-page .site-header { position: relative; color: #151515; }.theme-suitcase .detail-masthead { background: #f6f2ea; color: #151515; }.theme-suitcase .detail-hero h1 { font-family: Arial, Helvetica, sans-serif; font-size: clamp(2.35rem, 5.6vw, 3.2rem); letter-spacing: -.07em; }.theme-suitcase .detail-duration { color: #6c6c6c; }.theme-suitcase .detail-overview { background: #f6f2ea; }.theme-suitcase .detail-swiper .swiper-pagination { color: #6c6c6c; }.theme-suitcase .detail-copy .step { color: #777; }.theme-suitcase .tour-button { border-radius: 0; background: #151515; }

/* Calm the page down: photography beside text, never underneath it. */
.theme-suitcase .hero { background-image: linear-gradient(90deg, rgba(0,0,0,.52), rgba(0,0,0,.1) 78%), url('assets/hero-singapore.jpg'); background-position: center 54%; }
.theme-suitcase .experience-list { grid-template-columns: 1fr; gap: 0; border-top: 1px solid #d8d8d8; }
.theme-suitcase .experience-card, .theme-suitcase .experience-card.is-added { display: grid; grid-template-columns: minmax(260px, 42%) 1fr; grid-auto-rows: min-content; align-content: center; min-height: 330px; padding: 0; border: 0; border-bottom: 1px solid #d8d8d8; color: #151515; background-color: #fff; }
.theme-suitcase .experience-card:nth-child(1), .theme-suitcase .experience-card:nth-child(2), .theme-suitcase .experience-card:nth-child(3), .theme-suitcase .experience-card:nth-child(4), .theme-suitcase .experience-card:nth-child(5), .theme-suitcase .experience-card:nth-child(6), .theme-suitcase .experience-card:nth-child(7), .theme-suitcase .experience-card:nth-child(8) { background-image: none; }
.theme-suitcase .experience-card::before { display: none; }.theme-suitcase .experience-card > .experience-cover { grid-column: 1; grid-row: 1 / span 5; display: block; min-height: 330px; margin: 0; background: center / cover no-repeat; }.theme-suitcase .experience-cover:focus-visible { outline: 3px solid #24453d; outline-offset: -3px; }
.theme-suitcase #experience-arrival .experience-cover { background-image: url('assets/covers/01.JPG'); }.theme-suitcase #experience-culture .experience-cover { background-image: url('assets/covers/02.JPG'); }.theme-suitcase #experience-modern .experience-cover { background-image: url('assets/covers/03.JPG'); }.theme-suitcase #experience-sentosa .experience-cover { background-image: url('assets/covers/04.JPG'); }.theme-suitcase #experience-zoo .experience-cover { background-image: url('assets/covers/05.JPG'); }.theme-suitcase #experience-kids .experience-cover { background-image: url('assets/covers/06.JPG'); }.theme-suitcase #experience-mix .experience-cover { background-image: url('assets/covers/07.JPG'); }.theme-suitcase #experience-airport .experience-cover { background-image: url('assets/covers/08.JPG'); }
.theme-suitcase .experience-card > * { grid-column: 2; margin-right: 34px; margin-left: 34px; color: #151515; }
.theme-suitcase .experience-card .card-number { align-self: end; margin-bottom: 4px; color: #777; }.theme-suitcase .experience-card .card-heading { margin-top: 0; }.theme-suitcase .experience-card .card-heading h3 { color: #151515; font-size: clamp(1.8rem, 3vw, 3rem); }.theme-suitcase .experience-card .duration, .theme-suitcase .experience-card .card-summary { color: #555; }.theme-suitcase .experience-card .card-summary { margin-top: 12px; margin-bottom: 13px; }.theme-suitcase .experience-card .details-button, .theme-suitcase .experience-card .card-actions { position: static; right: auto; bottom: auto; left: auto; }.theme-suitcase .experience-card .details-button { margin-top: 0; color: #151515; }.theme-suitcase .experience-card .price { margin-top: 14px; margin-bottom: 0; }.theme-suitcase .experience-card .price strong { color: #151515; }.theme-suitcase .experience-card .card-actions { margin-top: 12px; margin-bottom: 0; }.theme-suitcase .experience-card .card-actions button, .theme-suitcase .addon-toggle { border-color: #151515; color: #151515; background: transparent; }.theme-suitcase .experience-card .card-actions button.is-added, .theme-suitcase .addon-toggle.is-added { color: #fff; background: #151515; }.theme-suitcase .experience-card.is-added { background-color: #f1f5f0; }
.theme-suitcase .add-ons { background: #f1eee8; color: #151515; }.theme-suitcase .add-ons .section-heading .step, .theme-suitcase .add-ons .section-copy { color: #666; }.theme-suitcase .addon-card, .theme-suitcase .addon-card:nth-child(2) { border-color: #cfc9bd; color: #151515; background: #fffdf9; }.theme-suitcase .addon-card p { color: #555; }.theme-suitcase .addon-toggle { border-color: #151515; color: #151515; }.theme-suitcase .addon-toggle.is-added { color: #fff; background: #151515; }
.theme-suitcase .more { color: #152d38; background: #dce8ee; }.theme-suitcase .more .eyebrow { color: #52626b; }.theme-suitcase .sticky-cta { background: #24453d; }.theme-suitcase .telegram-button { background: #24453d; }
.theme-suitcase .gallery-page { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 2px; aspect-ratio: 1 / 1; height: auto; }.theme-suitcase .gallery-page .detail-photo { min-width: 0; min-height: 0; height: auto; }.theme-suitcase .gallery-page .detail-photo img { width: 100%; height: 100%; }
@media (min-width: 700px) { .theme-suitcase .gallery-page { grid-template-columns: repeat(3, minmax(0, 1fr)); aspect-ratio: 3 / 2; } }
@media (max-width: 699px) { .theme-suitcase .constructor { padding-top: 56px; padding-bottom: 52px; }.theme-suitcase .catalogue { padding-top: 56px; }.theme-suitcase .experience-card, .theme-suitcase .experience-card.is-added { grid-template-columns: 1fr; padding-bottom: 26px; }.theme-suitcase .experience-cover { grid-column: 1; grid-row: auto; min-height: 230px; margin: 0; }.theme-suitcase .experience-card > * { grid-column: 1; margin-right: 20px; margin-left: 20px; }.theme-suitcase .experience-card > .experience-cover { margin: 0; }.theme-suitcase .experience-card .card-number { margin-top: 20px; }.theme-suitcase .experience-card .card-actions { margin-bottom: 0; } }
