:root {
    --spa-primary: #dca900;
    --spa-primary-dark: #b88600;
    --spa-primary-light: #f6d977;
    --spa-secondary: #4a443a;
    --spa-secondary-dark: #24221e;
    --spa-secondary-light: #746e63;
    --spa-dark: #302d28;
    --spa-gray: #716d65;
    --spa-gray-light: #f4f1e9;
    --spa-light: #fff9e8;
    --spa-accent: #c58d1c;
    --hm-forest: #4a4030;
    --hm-forest-deep: #27231d;
    --hm-forest-soft: #74664f;
    --hm-gold: #d0a019;
    --hm-gold-light: #f0d47e;
    --hm-cream: #f7f1df;
    --hm-paper: #fffdf7;
    --hm-ink: #302d28;
    --hm-muted: #746f66;
    --hm-line: rgba(78, 65, 42, .15);
    --hm-serif: "Playfair Display", Georgia, serif;
    --hm-sans: "Open Sans", sans-serif;
}

html { scroll-behavior: smooth; }
body.website-classic-body { margin: 0; color: var(--spa-dark); background: #fffdf8; }
body.website-classic-body #main-content { min-height: 55vh; }
#aboutSection, #careNeedsSection, #servicesSection, #promotionsSection, #customerStoriesSection, #guidesSection, #branchesSection { scroll-margin-top: 86px; }
body.website-classic-body .modal { z-index: 2000; }
body.website-classic-body .modal-backdrop { z-index: 1900; }
body.website-classic-body .booking-modal-content { max-height: calc(100vh - 28px); overflow-y: auto; }

.spa-header { border-bottom: 1px solid rgba(82, 68, 38, .08); }
.spa-header .navbar-brand { display: inline-flex; width: 156px; min-width: 138px; align-items: center; }
.spa-header .navbar-brand .logo-img { display: block; width: auto; height: 72px; max-width: 100%; max-height: 72px; object-fit: contain; object-position: left center; filter: none; transform: scale(1.24); transform-origin: left center; }
.spa-header .navbar-nav .nav-link { font-size: 14px; font-weight: 600; }
.spa-header .dropdown-toggle::after { position: static; width: auto; height: auto; margin-left: .35em; border: solid transparent; border-width: .3em .3em 0; border-top-color: currentColor; background: none; transform: none; }
.spa-header .dropdown-menu { border: 1px solid rgba(82, 68, 38, .1); }
.spa-header .header-actions { align-items: center; gap: 10px; }
.spa-header .navbar { position: static; }
.spa-header .container { position: static; }
.spa-header .navbar-collapse { position: static; }
.public-nav-item { position: relative; }
.public-nav-item.has-mega-menu { position: static; }
.public-nav-item > .nav-link { display: inline-flex; gap: 6px; align-items: center; }
.public-nav-chevron { font-size: 9px; transition: transform .2s ease; }
.public-nav-item:hover > .nav-link .public-nav-chevron,
.public-nav-item:focus-within > .nav-link .public-nav-chevron { transform: rotate(180deg); }
.public-dropdown-menu,
.public-mega-menu { position: absolute; z-index: 1100; visibility: hidden; margin: 0; border: 1px solid rgba(82, 68, 38, .12); background: #fff; box-shadow: 0 20px 45px rgba(47, 37, 20, .14); list-style: none; opacity: 0; transform: translateY(8px); transition: opacity .18s ease, transform .18s ease, visibility .18s; }
.public-nav-item:hover > .public-dropdown-menu,
.public-nav-item:focus-within > .public-dropdown-menu,
.public-nav-item:hover > .public-mega-menu,
.public-nav-item:focus-within > .public-mega-menu { visibility: visible; opacity: 1; transform: translateY(0); }
.public-dropdown-menu { top: calc(100% + 1px); left: 0; min-width: 240px; padding: 8px; border-radius: 0 0 8px 8px; }
.public-dropdown-menu .public-nav-item { width: 100%; }
.public-dropdown-menu .nav-link { display: flex; width: 100%; justify-content: space-between; padding: 11px 12px; border-radius: 4px; color: var(--hm-ink); white-space: nowrap; }
.public-dropdown-menu .public-dropdown-menu { top: -9px; left: calc(100% + 8px); }
.public-dropdown-menu .nav-link:hover { background: #fff7dc; color: #8a6200; }
.public-mega-menu { top: 100%; right: 0; left: 0; border-right: 0; border-left: 0; }
.public-mega-menu__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 34px 44px; max-height: min(72vh, 720px); padding-top: 32px; padding-bottom: 34px; overflow-y: auto; }
.public-mega-menu__group { min-width: 0; }
.public-mega-menu__heading { display: block; margin-bottom: 15px; padding-bottom: 11px; color: #2f2a23; font-family: var(--hm-serif); font-size: 17px; font-weight: 700; text-decoration: none; }
.public-mega-menu__heading::after { display: block; width: 54px; height: 3px; margin-top: 10px; background: var(--hm-gold); content: ""; }
.public-mega-menu__group ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.public-mega-menu__group li a { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 8px; align-items: start; padding: 3px 0; color: #4d4942; font-size: 14px; line-height: 1.45; text-decoration: none; }
.public-mega-menu__group li a i { padding-top: 4px; color: #d7a82c; font-size: 10px; }
.public-mega-menu__group li a:hover { color: #9b7009; }
.public-nav-item.is-highlighted > .nav-link { color: #a97700; }

.mobile-nav-row { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: center; border-bottom: 1px solid rgba(82, 68, 38, .1); }
.mobile-nav-link { display: block; padding: 14px 4px; color: var(--hm-ink); font-size: 15px; font-weight: 650; text-decoration: none; }
.mobile-menu-toggle { display: grid; width: 40px; height: 40px; place-items: center; border: 0; background: transparent; color: #84630f; }
.mobile-menu-toggle i { transition: transform .2s ease; }
.mobile-nav-item.open > .mobile-nav-row .mobile-menu-toggle i { transform: rotate(180deg); }
.mobile-sub-menu { display: none; margin: 0; padding: 2px 0 6px 16px; list-style: none; }
.mobile-nav-item.open > .mobile-sub-menu { display: block; }
.mobile-sub-menu .mobile-nav-link { font-size: 14px; font-weight: 550; }
.mobile-sub-menu .mobile-sub-menu { padding-left: 14px; }

@media (max-width: 1199.98px) and (min-width: 992px) {
    .public-mega-menu__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .spa-header .navbar-nav .nav-link { font-size: 13px; }
}
.classic-account-button { display: inline-grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; border: 1px solid rgba(154, 113, 16, .2); border-radius: 50%; background: #fffaf0; color: #8e6708; text-decoration: none; box-shadow: 0 8px 20px rgba(67, 54, 25, .08); transition: transform .25s ease, border-color .25s ease, background-color .25s ease, color .25s ease; }
.classic-account-button:hover { border-color: rgba(183, 132, 12, .48); background: #fff1be; color: #6f4e00; transform: translateY(-2px); }
.classic-mobile-header-actions { display: flex; margin-left: auto; align-items: center; gap: 8px; }
.classic-mobile-header-actions .navbar-toggler { margin-left: 0; }
.classic-mobile-account { display: grid; grid-template-columns: 44px minmax(0, 1fr) 20px; gap: 12px; align-items: center; margin: 16px 20px 8px; padding: 14px; border: 1px solid rgba(173, 126, 19, .16); border-radius: 16px; background: linear-gradient(135deg, #fff9e9, #fff3c8); color: var(--spa-dark); text-decoration: none; }
.classic-mobile-account:hover { color: var(--spa-dark); }
.classic-mobile-account__icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 50%; background: #fff; color: #9d7109; box-shadow: 0 6px 16px rgba(91, 70, 25, .1); }
.classic-mobile-account small, .classic-mobile-account strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.classic-mobile-account small { margin-bottom: 2px; color: var(--spa-gray); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.classic-mobile-account strong { font-size: 14px; }
.classic-mobile-account > i { color: #9d7109; font-size: 12px; }
.btn-book-now { background: linear-gradient(135deg, #e6bb2e, #bd8613); box-shadow: 0 8px 22px rgba(185, 129, 20, .24); }
.classic-mobile-zalo img { display: block; width: 20px; height: 20px; flex: 0 0 20px; }

.website-classic-body .floating-buttons { gap: 9px; }
.website-classic-body .btn-back-to-top,
.website-classic-body .btn-zalo,
.website-classic-body .btn-phone-float { position: relative; width: 48px; height: 48px; flex: 0 0 48px; border: 1px solid rgba(255,255,255,.72); box-shadow: 0 12px 30px rgba(41,34,24,.2); animation: none; }
.website-classic-body .btn-back-to-top { background: #302b25; }
.website-classic-body .btn-zalo { background: #fff; }
.website-classic-body .btn-zalo img { display: block; width: 29px; height: 29px; object-fit: contain; }
.website-classic-body .btn-phone-float { background: #31a96b; font-size: 17px; }
.website-classic-body [data-floating-label]::before { position: absolute; top: 50%; right: 59px; width: max-content; padding: 7px 10px; border: 1px solid rgba(82,68,38,.1); border-radius: 2px 8px 2px 2px; background: rgba(255,253,247,.96); box-shadow: 0 9px 24px rgba(42,34,20,.12); color: #4a4034; content: attr(data-floating-label); font-size: 10px; font-weight: 700; opacity: 0; pointer-events: none; transform: translate(5px,-50%); transition: opacity .2s ease,transform .2s ease; white-space: nowrap; }
.website-classic-body [data-floating-label]:hover::before,
.website-classic-body [data-floating-label]:focus-visible::before { opacity: 1; transform: translate(0,-50%); }
.website-classic-body .btn-back-to-top:hover,
.website-classic-body .btn-zalo:hover,
.website-classic-body .btn-phone-float:hover { transform: translateY(-3px); }

.classic-hero-slide { min-height: clamp(560px, 68vh, 720px); }
.classic-hero-slide .hero-slide-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.classic-hero-slide .hero-overlay { background: linear-gradient(90deg, rgba(25, 23, 19, .86) 0%, rgba(32, 28, 21, .67) 42%, rgba(22, 20, 17, .16) 78%); }
.classic-hero-slide--fallback { background: radial-gradient(circle at 82% 28%, rgba(238, 196, 79, .34), transparent 25%), linear-gradient(135deg, #24211c, #574a34); }
.classic-hero-slide .hero-content { display: flex; min-height: clamp(560px, 68vh, 720px); align-items: center; }
.classic-hero-copy { position: relative; z-index: 2; max-width: 760px; padding: 70px 0 95px; }
.classic-hero-copy .hero-title { margin-bottom: 20px; font-size: clamp(42px, 5.8vw, 76px); line-height: 1.08; }
.classic-hero-copy .hero-description { max-width: 640px; margin: 0 0 32px; font-size: 18px; }
.classic-hero-copy .hero-buttons { justify-content: flex-start; }
.classic-hero .scroll-indicator { text-decoration: none; }
.classic-hero .swiper-button-prev,
.classic-hero .swiper-button-next { border: 1px solid rgba(255,255,255,.26); }
.classic-hero--static { position: relative; }

body.website-classic-body section.classic-about { background-color: #fff9e9 !important; background-image: linear-gradient(180deg, #fffdf8, #fff9e9); }
.classic-about .about-img-main img { width: 88%; height: 520px; object-fit: cover; }
.classic-about .about-img-secondary img { width: 100%; height: 230px; object-fit: cover; }
.classic-about .experience-badge { background: linear-gradient(135deg, #e6b921, #bd8410); }
.classic-about--compact { padding-block: 92px; }
.classic-about--compact .classic-about-visual { padding: 18px; }
.classic-about--compact .about-img-main img { width: 100%; height: 460px; border-radius: 22px; }
.classic-trust-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.classic-trust-grid > div { display: grid; min-height: 92px; grid-template-columns: auto 1fr; gap: 12px; align-items: center; padding: 16px; border: 1px solid rgba(109, 84, 29, .12); border-radius: 14px; background: rgba(255,255,255,.64); }
.classic-trust-grid strong { color: #8a650d; font-family: var(--hm-serif); font-size: 22px; }
.classic-trust-grid i { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #fff2bd; color: #9a710c; }
.classic-trust-grid span { color: var(--spa-gray); font-size: 13px; line-height: 1.5; }
.classic-trust-grid span b { display: block; color: var(--spa-dark); font-size: 14px; }
.classic-counter-word { font-size: clamp(1.1rem, 2.2vw, 2rem); }
body.website-classic-body section.counters-section { background-color: #24211d !important; background-image: radial-gradient(circle at 80% 20%, rgba(231, 185, 56, .18), transparent 25%), linear-gradient(135deg, #24211d, #4a4236); }
.counters-wrapper { border: 1px solid rgba(255,255,255,.11); }
body.website-classic-body section.services-section { background-color: #fffdf8 !important; }
body.website-classic-body section.spa-bg-pattern { background-image: url('/layouts/spa/bg_body.png'); }
.services-section .service-card { display: flex; flex-direction: column; border: 1px solid rgba(89, 72, 38, .1); }
.services-section .service-content { display: flex; flex: 1; flex-direction: column; }
.services-section .service-description { min-height: 44px; }
.services-section .service-footer { margin-top: auto; }

body.website-classic-body section.classic-care-section { overflow: hidden; background-color: #29251f !important; background-image: radial-gradient(circle at 16% 20%, rgba(227,178,39,.12), transparent 25%); color: #fff; }
.classic-care-section .section-title { color: #fff; }
.classic-care-section .about-text { color: rgba(255,255,255,.68); }
.classic-care-visual { position: relative; overflow: hidden; min-height: 540px; border-radius: 28px; box-shadow: 0 30px 60px rgba(0,0,0,.28); }
.classic-care-visual::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(24,20,15,.76)); content: ""; }
.classic-care-visual img { width: 100%; height: 540px; object-fit: cover; }
.classic-care-visual > span { position: absolute; right: 24px; bottom: 22px; z-index: 2; padding: 12px 16px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; background: rgba(25,22,18,.68); color: #fff; font-size: 13px; backdrop-filter: blur(8px); }
.classic-care-visual > span i { margin-right: 8px; color: var(--spa-primary-light); }
.classic-care-values { display: grid; margin-top: 30px; }
.classic-care-values > div { display: grid; grid-template-columns: 52px 1fr; gap: 16px; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.13); }
.classic-care-values strong { color: var(--spa-primary-light); font-family: var(--font-heading); font-size: 22px; }
.classic-care-values span { color: rgba(255,255,255,.7); }
.classic-care-values b { display: block; color: #fff; font-size: 17px; }

.classic-news-card { overflow: hidden; border: 1px solid rgba(89, 72, 38, .1); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-sm); transition: var(--transition-normal); }
.classic-news-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-lg); }
.classic-news-image { display: grid; height: 235px; place-items: center; overflow: hidden; background: linear-gradient(135deg, #f4e3a3, #e9e1cd); color: #9b7415; font-size: 40px; }
.classic-news-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.classic-news-card:hover img { transform: scale(1.04); }
.classic-news-copy { padding: 24px; }
.classic-news-copy time { color: var(--spa-primary-dark); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.classic-news-copy h3 { margin: 10px 0; font-size: 24px; }
.classic-news-copy h3 a { color: var(--spa-dark); }
.classic-news-copy p { min-height: 70px; color: var(--spa-gray); font-size: 14px; }
body.website-classic-body section.classic-editorial-section { background-color: #fffaf0 !important; background-image: none !important; }
.classic-editorial-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 36px; }
.classic-editorial-heading .section-title { margin-bottom: 0; }
.classic-news-featured { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); overflow: hidden; border: 1px solid rgba(89, 72, 38, .1); border-radius: 24px; background: #fff; box-shadow: 0 18px 44px rgba(73, 57, 24, .1); }
.classic-news-featured__image { display: grid; min-height: 330px; place-items: center; overflow: hidden; background: linear-gradient(135deg, #f4e3a3, #e9e1cd); color: #9b7415; font-size: 42px; }
.classic-news-featured__image img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; transition: transform .5s ease; }
.classic-news-featured:hover .classic-news-featured__image img { transform: scale(1.035); }
.classic-news-featured__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(30px, 5vw, 64px); }
.classic-news-featured__copy time { color: var(--spa-primary-dark); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.classic-news-featured__copy h3 { margin: 12px 0 16px; font-size: clamp(26px, 3vw, 38px); line-height: 1.25; }
.classic-news-featured__copy h3 a { color: var(--spa-dark); }
.classic-news-featured__copy p { margin-bottom: 22px; color: var(--spa-gray); line-height: 1.75; }
.classic-news-featured__copy .btn-details { align-self: flex-start; }
.classic-empty-state { padding: 58px 20px; border: 1px dashed rgba(125, 95, 23, .3); border-radius: 20px; background: #fff; text-align: center; }
.classic-empty-state > i { margin-bottom: 12px; color: var(--spa-primary); font-size: 34px; }

body.website-classic-body section.branches-section { background-color: #fff9e9 !important; background-image: linear-gradient(180deg, #fff9e9, #fffdf8); }
.classic-branch-card { display: flex; flex-direction: column; padding: 28px; border: 1px solid rgba(89, 72, 38, .12); border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.classic-branch-icon { display: grid; width: 52px; height: 52px; margin-bottom: 20px; place-items: center; border-radius: 50%; background: #fff2bd; color: #a77b0a; font-size: 20px; }
.classic-branch-card h3 { margin-bottom: 12px; font-size: 24px; }
.classic-branch-card p, .classic-branch-card > div > a { display: flex; align-items: flex-start; gap: 9px; color: var(--spa-gray); font-size: 14px; }
.classic-branch-card p i, .classic-branch-card > div > a i { margin-top: 5px; color: var(--spa-primary-dark); }
.classic-branch-actions { display: flex; gap: 10px; margin-top: auto; padding-top: 24px; }
body.website-classic-body section.classic-home-cta { padding: 75px 0; background-color: #d4a31d !important; background-image: linear-gradient(120deg, #c58d12, #e0b62a); }
.classic-home-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.classic-home-cta__inner > div > span { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.classic-home-cta h2 { max-width: 760px; margin: 8px 0 0; color: #29231a; font-size: clamp(34px, 4.5vw, 56px); }
body.website-classic-body section.classic-location-cta { padding: 92px 0; background-color: #28241e !important; background-image: radial-gradient(circle at 10% 10%, rgba(229, 184, 54, .14), transparent 28%) !important; color: #fff; }
.classic-location-shell { display: grid; grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr); gap: clamp(42px, 7vw, 90px); align-items: center; }
.classic-location-copy .section-subtitle { color: var(--spa-primary-light); }
.classic-location-copy h2 { margin: 12px 0 18px; color: #fff; font-size: clamp(38px, 5vw, 58px); line-height: 1.08; }
.classic-location-copy p { max-width: 500px; margin-bottom: 30px; color: rgba(255,255,255,.68); line-height: 1.75; }
.classic-location-list { display: grid; gap: 10px; }
.classic-location-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) 34px; gap: 14px; align-items: center; padding: 15px 16px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(255,255,255,.055); }
.classic-location-row__icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: rgba(231, 188, 64, .14); color: var(--spa-primary-light); }
.classic-location-row h3 { margin: 0 0 4px; color: #fff; font-size: 18px; }
.classic-location-row p { margin: 0; color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.45; }
.classic-location-row div > a { display: inline-block; margin-top: 5px; color: var(--spa-primary-light); font-size: 12px; font-weight: 700; }
.classic-location-row__direction { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: rgba(255,255,255,.72); text-decoration: none; }
.classic-location-row__direction:hover { background: rgba(255,255,255,.1); color: #fff; }
.classic-location-empty { padding: 24px; border: 1px dashed rgba(255,255,255,.2); border-radius: 14px; color: rgba(255,255,255,.65); }

.spa-footer { background: #24211d; }
.spa-footer .footer-logo { display: inline-flex; align-items: center; }
.spa-footer .footer-logo .logo-img { display: block; width: 184px; max-width: 100%; height: auto; max-height: none; object-fit: contain; object-position: left center; filter: none; opacity: 1; }
.classic-footer-branches a { display: grid; gap: 3px; }
.classic-footer-branches strong { color: rgba(255,255,255,.86); font-family: var(--font-heading); font-weight: 600; }
.classic-footer-branches span { color: rgba(255,255,255,.5); font-size: 12px; line-height: 1.4; }
.spa-footer .contact-text > span:not(.label) { display: block; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.45; }

/* The editorial pages keep the new CMS behavior but inherit the classic palette. */
.himalaya-page-hero,
.website-editorial-hero,
.website-page-hero { background: radial-gradient(circle at 84% 14%, rgba(232,185,49,.28), transparent 27%), linear-gradient(135deg, #29251f, #514633) !important; }
.himalaya-page-hero h1,
.himalaya-service-detail-hero h1,
.website-editorial-hero h1,
.website-page-hero h1 { color: #fff !important; font-family: var(--font-heading) !important; }
.website-article-header h1 { font-family: var(--font-heading) !important; }
body.website-classic-body section.himalaya-service-detail-hero { background-color: #29251f !important; background-image: radial-gradient(circle at 84% 18%, rgba(225,177,42,.16), transparent 25%); }
body.website-classic-body section.himalaya-catalog,
body.website-classic-body section.himalaya-related-services,
body.website-classic-body section.himalaya-contact-section { background-color: #f7f1df !important; }
.himalaya-service-card h2 a,
.himalaya-service-card h3 a,
.himalaya-rich-content h2,
.himalaya-rich-content h3,
.website-editorial-copy h2 a,
.website-page-content h2,
.website-page-content h3,
.website-article-header h1 { color: #403729 !important; }
.himalaya-contact-card,
.website-related { background: #29251f !important; }
.website-related h2,
.website-related strong { color: #fff; }
.website-article-header { background: radial-gradient(circle at 80% 0, rgba(224,177,44,.2), transparent 30%), #f4eedf !important; }
.website-article-body a,
.website-editorial-link,
.website-article-back { color: #99700c !important; }
.website-article-body blockquote { border-left-color: var(--spa-primary); background: #fff6d8; }
.himalaya-button--gold { background: linear-gradient(135deg, #e5bd3d, #bd8511); }
.himalaya-button--ghost-light { border-color: rgba(255,255,255,.4); color: #fff; }
.himalaya-service-aside { background: #f7f0dd; }
.pagination .page-link { color: #8f6809; }
.pagination .active > .page-link { border-color: var(--spa-primary); background: var(--spa-primary); color: #fff; }

@media (max-width: 1199px) {
    .spa-header .navbar-brand { width: 138px; min-width: 128px; }
    .spa-header .navbar-nav .nav-link { padding-inline: 10px !important; font-size: 13px; }
    .btn-book-now { padding-inline: 14px; }
    .classic-account-button { width: 40px; height: 40px; flex-basis: 40px; }
}

@media (max-width: 991px) {
    .spa-header { padding: 10px 0; }
    .spa-header .navbar-brand { width: 128px; min-width: 112px; }
    .spa-header .navbar-toggler-icon { width: 28px; height: 28px; background: none; }
    .classic-hero-slide,
    .classic-hero-slide .hero-content { min-height: 610px; }
    .classic-hero-slide .hero-overlay { background: linear-gradient(90deg, rgba(25,23,19,.9), rgba(25,23,19,.52)); }
    .classic-about .about-img-main img { height: 440px; }
    .classic-care-visual, .classic-care-visual img { min-height: 440px; height: 440px; }
    .classic-home-cta__inner { align-items: flex-start; flex-direction: column; }
    .classic-location-shell { grid-template-columns: 1fr; }
    .classic-location-copy { max-width: 720px; }
}

@media (max-width: 767px) {
    body.website-classic-body { padding-bottom: 72px; }
    .classic-hero-slide,
    .classic-hero-slide .hero-content { min-height: 570px; }
    .classic-hero-slide .hero-slide-img { object-position: 62% center; }
    .classic-hero-slide .hero-overlay { background: linear-gradient(90deg, rgba(25,23,19,.92), rgba(25,23,19,.58)); }
    .classic-hero-copy { padding: 65px 0 95px; }
    .classic-hero-copy .hero-title { font-size: 39px; }
    .classic-hero-copy .hero-description { font-size: 16px; }
    .classic-hero-copy .hero-buttons { align-items: stretch; flex-direction: column; }
    .classic-hero-copy .hero-buttons .btn { width: 100%; }
    .classic-hero .swiper-button-prev,
    .classic-hero .swiper-button-next,
    .classic-hero .scroll-indicator { display: none; }
    .classic-about .about-images { padding: 16px; }
    .classic-about .row.g-5,
    .classic-care-section .row.g-5 { --bs-gutter-x: 1.5rem; }
    .classic-about .about-img-main img { width: 100%; height: 360px; }
    .classic-about .about-img-secondary { display: none; }
    .classic-about .experience-badge { padding: 16px; }
    .classic-about .experience-badge .years { font-size: 2.2rem; }
    .classic-about--compact { padding-block: 64px; }
    .classic-about--compact .about-img-main img { height: 320px; }
    .classic-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .classic-trust-grid > div { min-height: 112px; grid-template-columns: 1fr; align-content: center; gap: 7px; }
    .classic-trust-grid strong { font-size: 19px; }
    .classic-trust-grid span { font-size: 12px; }
    .classic-service-grid { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; padding: 2px 4px 18px; scroll-padding-inline: 4px; scroll-snap-type: x mandatory; scrollbar-width: none; }
    .classic-service-grid::-webkit-scrollbar { display: none; }
    .classic-service-grid > [class*="col-"] { width: 84%; max-width: 84%; flex: 0 0 84%; scroll-snap-align: start; }
    .counters-wrapper { padding: 28px 10px; }
    .counter-icon { font-size: 1.8rem; }
    .counter-number { font-size: 2rem; }
    .classic-counter-word { max-width: 100%; overflow-wrap: anywhere; font-size: .96rem; }
    .counter-label { font-size: .72rem; }
    .classic-care-visual, .classic-care-visual img { min-height: 350px; height: 350px; }
    .classic-home-cta { padding: 56px 0; }
    .classic-home-cta__inner .btn { width: 100%; }
    .classic-editorial-heading { align-items: flex-start; flex-direction: column; margin-bottom: 26px; }
    .classic-news-featured { grid-template-columns: 1fr; }
    .classic-news-featured__image, .classic-news-featured__image img { min-height: 230px; height: 230px; }
    .classic-news-featured__copy { padding: 26px; }
    .classic-location-cta { padding: 64px 0; }
    .classic-location-copy .btn { width: 100%; }
    .classic-location-row { grid-template-columns: 38px minmax(0, 1fr) 30px; gap: 10px; padding: 13px 12px; }
    .classic-location-row__icon { width: 38px; height: 38px; }
    .floating-buttons { right: 14px; bottom: 88px; }
    .btn-phone-float { display: none; }
    .mobile-bottom-nav .bottom-nav-item { flex: 1; }
    .himalaya-page-hero h1 { font-size: 44px; }
}

/* Homepage editorial composition */
.classic-hero-slide,
.classic-hero-slide .hero-content { min-height: clamp(620px, 72vh, 760px); }
.classic-hero-slide .hero-overlay { background: linear-gradient(90deg, rgba(18, 17, 14, .92) 0%, rgba(24, 22, 18, .7) 44%, rgba(21, 19, 16, .16) 80%); }
.classic-hero-copy { max-width: 820px; padding: 70px 0 52px; }
.classic-hero-copy .hero-subtitle { display: inline-flex; align-items: center; gap: 13px; font-size: 12px; letter-spacing: .28em; }
.classic-hero-copy .hero-subtitle::before { width: 34px; height: 1px; background: var(--hm-gold-light); content: ""; }
.classic-hero-copy .hero-title { max-width: 790px; font-size: clamp(48px, 5.7vw, 76px); letter-spacing: -.025em; }
.classic-hero-copy .hero-description { max-width: 610px; color: rgba(255,255,255,.78); line-height: 1.75; }
.classic-hero-copy .hero-buttons { gap: 12px; }
.classic-hero-copy .hero-buttons .btn { min-height: 54px; padding-inline: 25px; }
.classic-hero-proof { display: flex; max-width: 720px; gap: 0; margin-top: 40px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.2); color: #fff; }
.classic-hero-proof > div { display: grid; min-width: 0; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: center; padding: 0 24px; border-left: 1px solid rgba(255,255,255,.16); }
.classic-hero-proof > div:first-child { padding-left: 0; border-left: 0; }
.classic-hero-proof strong { color: var(--hm-gold-light); font-family: var(--hm-serif); font-size: 27px; font-weight: 600; }
.classic-hero-proof i { display: grid; width: 33px; height: 33px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; color: var(--hm-gold-light); }
.classic-hero-proof span { max-width: 150px; color: rgba(255,255,255,.68); font-size: 11px; line-height: 1.45; }

body.website-classic-body section.classic-about--editorial { position: relative; overflow: hidden; padding-block: 110px; background: #f8f1df !important; }
.classic-about--editorial::after { position: absolute; top: -180px; right: -160px; width: 430px; height: 430px; border: 1px solid rgba(173,126,19,.1); border-radius: 50%; content: ""; }
.classic-about-layout { position: relative; z-index: 1; }
.classic-about-visual { position: relative; margin: 0; padding: 0 42px 38px 0; }
.classic-about-visual::before { position: absolute; right: 0; bottom: 0; width: 62%; height: 64%; border-radius: 22px; background: #e6d4a5; content: ""; }
.classic-about-visual > img { position: relative; z-index: 1; display: block; width: 100%; height: 540px; border-radius: 3px 86px 3px 3px; object-fit: cover; box-shadow: 0 28px 54px rgba(78,58,20,.14); }
.classic-about-visual figcaption { position: absolute; right: 20px; bottom: 16px; z-index: 2; max-width: 260px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.42); border-radius: 2px 14px 2px 2px; background: rgba(43,38,30,.86); color: rgba(255,255,255,.78); font-size: 12px; line-height: 1.55; backdrop-filter: blur(10px); }
.classic-about-visual figcaption i { margin-right: 7px; color: var(--hm-gold-light); }
.classic-about-count { position: absolute; top: 28px; left: -18px; z-index: 2; display: flex; gap: 12px; align-items: center; padding: 18px 21px; border-radius: 2px 18px 2px 2px; background: linear-gradient(135deg, #e0b530, #b9820e); color: #fff; box-shadow: 0 18px 35px rgba(137,91,5,.22); }
.classic-about-count strong { font-family: var(--hm-serif); font-size: 36px; line-height: 1; }
.classic-about-count span { font-size: 11px; line-height: 1.45; text-transform: uppercase; letter-spacing: .06em; }
.classic-about-copy .section-title { max-width: 620px; margin-bottom: 22px; font-size: clamp(38px, 4.5vw, 58px); line-height: 1.08; letter-spacing: -.025em; }
.classic-about-copy .about-text { max-width: 600px; margin-bottom: 0; color: #6f695f; line-height: 1.8; }
.classic-about-copy .classic-trust-grid { margin-top: 32px; }
.classic-about-copy .classic-trust-grid > div { min-height: 92px; border-radius: 3px 16px 3px 3px; background: rgba(255,253,247,.74); }
.classic-text-link { display: inline-flex; gap: 10px; align-items: center; color: #8b6407; font-size: 13px; font-weight: 700; text-decoration: none; }
.classic-text-link i { font-size: 11px; transition: transform .25s ease; }
.classic-text-link:hover { color: #694a00; }
.classic-text-link:hover i { transform: translateX(4px); }
.classic-about-copy > .classic-text-link { margin-top: 28px; padding-bottom: 5px; border-bottom: 1px solid rgba(139,100,7,.34); }

body.website-classic-body section.classic-home-needs { padding-block: 105px; background: radial-gradient(circle at 92% 8%, rgba(224,180,52,.14), transparent 24%), linear-gradient(135deg, #24211d, #332d24) !important; color: #fff; }
.classic-home-heading--needs .section-title { color: #fff; }
.classic-home-heading--needs .classic-home-heading__aside p { color: rgba(255,255,255,.58); }
.classic-home-heading--needs .classic-text-link { color: var(--hm-gold-light); }
.classic-need-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.classic-need-card { position: relative; display: block; min-width: 0; height: 390px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 3px 24px 3px 3px; color: #fff; text-decoration: none; box-shadow: 0 22px 42px rgba(0,0,0,.18); }
.classic-need-card__media,
.classic-need-card__media picture { display: block; width: 100%; height: 100%; }
.classic-need-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.classic-need-card__placeholder { display: grid; width: 100%; height: 100%; place-items: center; background: linear-gradient(145deg, #5a4d37, #2b2720); color: var(--hm-gold-light); font-size: 45px; }
.classic-need-card__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(22,20,17,.08) 25%, rgba(22,20,17,.94) 100%); transition: background .3s ease; }
.classic-need-card__copy { position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; display: flex; flex-direction: column; padding: 25px 23px; }
.classic-need-card__meta { display: inline-flex; gap: 7px; align-items: center; margin-bottom: 10px; color: var(--hm-gold-light); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.classic-need-card__copy > strong { color: #fff; font-family: var(--hm-serif); font-size: 26px; font-weight: 600; line-height: 1.12; }
.classic-need-card__copy > span:not(.classic-need-card__meta) { display: -webkit-box; overflow: hidden; margin-top: 10px; color: rgba(255,255,255,.66); font-size: 11px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.classic-need-card__copy > b { display: inline-flex; gap: 7px; align-items: center; margin-top: 16px; color: #fff; font-size: 10px; }
.classic-need-card__copy > b i { color: var(--hm-gold-light); font-size: 8px; transition: transform .25s ease; }
.classic-need-card:hover { color: #fff; }
.classic-need-card:hover .classic-need-card__media img { transform: scale(1.05); }
.classic-need-card:hover .classic-need-card__overlay { background: linear-gradient(180deg, rgba(22,20,17,.02) 20%, rgba(22,20,17,.97) 100%); }
.classic-need-card:hover .classic-need-card__copy > b i { transform: translateX(4px); }

body.website-classic-body section.classic-home-services { padding-block: 105px; background-color: #fffdf8 !important; background-image: radial-gradient(circle at 100% 0, rgba(216,177,72,.12), transparent 24%), url('/layouts/spa/bg_body.png') !important; }
.classic-home-heading { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: 60px; align-items: end; margin-bottom: 45px; }
.classic-home-heading .section-title { max-width: 700px; margin: 0; font-size: clamp(38px, 4.6vw, 58px); line-height: 1.08; letter-spacing: -.025em; }
.classic-home-heading__aside { padding-bottom: 7px; }
.classic-home-heading__aside p { margin: 0 0 17px; color: var(--hm-muted); font-size: 13px; line-height: 1.7; }
.classic-home-service-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); grid-auto-rows: 174px; gap: 16px; }
.classic-home-service { display: grid; min-width: 0; grid-template-columns: 190px minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(93,71,28,.12); border-radius: 3px 18px 3px 3px; background: rgba(255,255,255,.88); box-shadow: 0 13px 32px rgba(74,56,21,.06); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.classic-home-service:hover { border-color: rgba(172,126,19,.28); box-shadow: 0 19px 42px rgba(74,56,21,.11); transform: translateY(-3px); }
.classic-home-service--featured { grid-row: span 3; grid-template-columns: 1fr; grid-template-rows: 300px minmax(0, 1fr); }
.classic-home-service__media { position: relative; display: block; min-width: 0; height: 100%; overflow: hidden; background: linear-gradient(140deg, #eee2be, #d8d0bd); }
.classic-home-service__media picture { display: block; width: 100%; height: 100%; }
.classic-home-service__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .65s ease; }
.classic-home-service:hover .classic-home-service__media img { transform: scale(1.035); }
.classic-home-service__media::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 54%, rgba(28,24,18,.34)); content: ""; }
.classic-home-service__number { position: absolute; top: 15px; left: 15px; z-index: 1; display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(35,30,22,.58); color: #fff; font-family: var(--hm-serif); font-size: 12px; backdrop-filter: blur(8px); }
.classic-home-service__placeholder { display: grid; width: 100%; height: 100%; place-items: center; color: #a77a12; font-size: 34px; }
.classic-home-service__body { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 18px 22px; }
.classic-home-service--featured .classic-home-service__body { justify-content: flex-start; padding: 26px 30px 28px; }
.classic-home-service__meta { display: flex; min-height: 19px; align-items: center; justify-content: space-between; gap: 12px; color: #9a710c; font-size: 10px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.classic-home-service__meta span { display: inline-flex; gap: 6px; align-items: center; }
.classic-home-service__meta strong { color: #725000; font-size: 12px; }
.classic-home-service h3 { overflow: hidden; margin: 7px 0 6px; font-size: 22px; line-height: 1.18; text-overflow: ellipsis; white-space: nowrap; }
.classic-home-service--featured h3 { margin-block: 10px; font-size: 34px; white-space: normal; }
.classic-home-service h3 a { color: var(--hm-ink); text-decoration: none; }
.classic-home-service__body > p { display: -webkit-box; overflow: hidden; margin: 0 0 12px; color: var(--hm-muted); font-size: 12px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.classic-home-service--featured .classic-home-service__body > p { max-width: 580px; margin-bottom: 17px; font-size: 13px; line-height: 1.65; -webkit-line-clamp: 3; }
.classic-home-service__actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: auto; }
.classic-home-service__actions > a { color: #8c6508; font-size: 11px; font-weight: 700; text-decoration: none; }
.classic-home-service__actions > a i { margin-left: 5px; font-size: 9px; }
.classic-home-service__actions button { display: grid; width: 35px; height: 35px; flex: 0 0 35px; place-items: center; border: 1px solid rgba(143,103,8,.22); border-radius: 50%; background: #fff9e7; color: #8c6508; transition: background-color .25s ease, color .25s ease, transform .25s ease; }
.classic-home-service__actions button:hover { background: #9a700b; color: #fff; transform: translateY(-2px); }
.classic-home-service-grid > .classic-empty-state { grid-column: 1 / -1; }

body.website-classic-body section.classic-home-promotions { padding-block: 85px; background: linear-gradient(135deg, #d5a51d, #edcd6c) !important; }
.classic-promotion-shell { display: grid; grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr); gap: 45px; align-items: center; }
.classic-promotion-intro .section-subtitle { color: #5c4308; }
.classic-promotion-intro h2 { margin: 6px 0 22px; color: #29231a; font-size: clamp(34px, 4vw, 50px); line-height: 1.08; }
.classic-promotion-intro .classic-text-link { color: #5c4308; }
.classic-promotion-list { display: grid; gap: 12px; }
.classic-promotion-card { display: grid; min-height: 166px; grid-template-columns: 180px minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(76,53,4,.13); border-radius: 3px 18px 3px 3px; background: rgba(255,253,247,.9); box-shadow: 0 16px 36px rgba(100,66,0,.1); }
.classic-promotion-card__media { display: grid; min-width: 0; place-items: center; overflow: hidden; background: #3a3328; color: var(--hm-gold-light); font-size: 34px; }
.classic-promotion-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.classic-promotion-card:hover .classic-promotion-card__media img { transform: scale(1.04); }
.classic-promotion-card > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 19px 22px; }
.classic-promotion-card time { color: #92690a; font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.classic-promotion-card h3 { margin: 6px 0 7px; font-size: 23px; line-height: 1.15; }
.classic-promotion-card h3 a { color: var(--hm-ink); text-decoration: none; }
.classic-promotion-card p { display: -webkit-box; overflow: hidden; margin: 0 0 8px; color: var(--hm-muted); font-size: 11px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.classic-promotion-card > div > a { color: #835e08; font-size: 10px; font-weight: 800; text-decoration: none; }
.classic-promotion-card > div > a i { margin-left: 5px; font-size: 8px; }

body.website-classic-body section.classic-home-stories { padding-block: 105px; background: #fffdf8 !important; }
.classic-home-heading--stories { margin-bottom: 40px; }
.classic-story-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr); gap: 18px; }
.classic-story-featured { position: relative; display: grid; min-height: 410px; grid-template-columns: 190px minmax(0, 1fr); gap: 35px; align-items: center; overflow: hidden; padding: 45px; border-radius: 3px 25px 3px 3px; background: radial-gradient(circle at 95% 0, rgba(222,176,48,.18), transparent 25%), #2c2822; color: #fff; box-shadow: 0 24px 55px rgba(50,39,17,.14); }
.classic-story-featured__identity { position: relative; z-index: 1; }
.classic-story-featured__identity > img,
.classic-story-featured__identity > span { display: grid; width: 170px; height: 170px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: #50483b; object-fit: cover; color: var(--hm-gold-light); font-size: 36px; }
.classic-story-featured__identity > div { margin-top: 18px; }
.classic-story-featured__identity strong,
.classic-story-featured__identity small { display: block; }
.classic-story-featured__identity strong { color: #fff; font-family: var(--hm-serif); font-size: 23px; }
.classic-story-featured__identity small { margin-top: 4px; color: var(--hm-gold-light); font-size: 10px; line-height: 1.4; }
.classic-story-featured blockquote { position: relative; z-index: 1; margin: 0; color: rgba(255,255,255,.84); font-family: var(--hm-serif); font-size: clamp(28px, 3vw, 41px); line-height: 1.32; }
.classic-story-featured__mark { position: absolute; right: 24px; bottom: -35px; color: rgba(255,255,255,.035); font-family: var(--hm-serif); font-size: 200px; line-height: 1; }
.classic-story-list { display: grid; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 10px; }
.classic-story-compact { display: grid; min-height: 130px; grid-template-columns: 70px minmax(0, 1fr); gap: 15px; align-items: center; padding: 17px; border: 1px solid rgba(91,70,28,.12); border-radius: 2px 15px 2px 2px; background: #f8f2e4; }
.classic-story-compact > img,
.classic-story-compact__placeholder { display: grid; width: 70px; height: 70px; place-items: center; border-radius: 50%; background: #e5d7b5; object-fit: cover; color: #8a650d; }
.classic-story-compact > div { min-width: 0; }
.classic-story-compact strong,
.classic-story-compact small { display: block; }
.classic-story-compact strong { color: var(--hm-ink); font-family: var(--hm-serif); font-size: 18px; }
.classic-story-compact small { overflow: hidden; margin-top: 1px; color: #9a710c; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.classic-story-compact p { display: -webkit-box; overflow: hidden; margin: 7px 0 0; color: var(--hm-muted); font-size: 10px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

body.website-classic-body section.classic-editorial-section { padding-block: 105px; background: #f7f0df !important; }
.classic-home-heading--editorial { margin-bottom: 40px; }
.classic-editorial-layout { display: grid; }
.classic-editorial-layout--with-aside { grid-template-columns: minmax(0, 1.35fr) minmax(310px, .65fr); gap: 18px; }
.classic-editorial-layout .classic-news-featured { min-width: 0; grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr); border-radius: 3px 22px 3px 3px; box-shadow: 0 16px 42px rgba(73,57,24,.08); }
.classic-editorial-layout .classic-news-featured__image,
.classic-editorial-layout .classic-news-featured__image img { min-height: 380px; height: 100%; }
.classic-editorial-layout .classic-news-featured__copy { padding: clamp(28px, 3.6vw, 52px); }
.classic-editorial-layout .classic-news-featured__copy h3 { font-size: clamp(27px, 2.6vw, 38px); }
.classic-editorial-aside { display: grid; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 18px; }
.classic-news-compact { display: grid; min-height: 180px; grid-template-columns: 132px minmax(0, 1fr); overflow: hidden; border: 1px solid rgba(89,72,38,.1); border-radius: 3px 16px 3px 3px; background: rgba(255,255,255,.82); }
.classic-news-compact__image { display: grid; min-width: 0; place-items: center; overflow: hidden; background: #e8dfc8; color: #9a710c; }
.classic-news-compact__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.classic-news-compact:hover img { transform: scale(1.04); }
.classic-news-compact > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 18px; }
.classic-news-compact time { color: #9a710c; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.classic-news-compact h3 { display: -webkit-box; overflow: hidden; margin: 8px 0 13px; font-size: 19px; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.classic-news-compact h3 a { color: var(--hm-ink); text-decoration: none; }
.classic-news-compact > div > a { color: #8c6508; font-size: 10px; font-weight: 700; text-decoration: none; }
.classic-news-compact > div > a i { margin-left: 5px; font-size: 8px; }

body.website-classic-body section.classic-location-cta { padding-block: 105px; background-image: radial-gradient(circle at 4% 10%, rgba(229,184,54,.15), transparent 25%), linear-gradient(135deg, #24211d, #332d24) !important; }
.classic-location-copy__actions { display: flex; gap: 22px; align-items: center; }
.classic-location-copy__actions > a { color: var(--hm-gold-light); font-size: 12px; font-weight: 700; text-decoration: none; border-bottom: 1px solid rgba(240,212,126,.36); }
.classic-location-panel { padding: 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 3px 22px 3px 3px; background: rgba(255,255,255,.035); box-shadow: 0 28px 60px rgba(0,0,0,.2); }
.classic-location-panel__header { display: flex; align-items: center; justify-content: space-between; padding: 7px 8px 16px; color: rgba(255,255,255,.5); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.classic-location-panel__header i { color: var(--hm-gold-light); font-size: 14px; }
.classic-location-row { border-radius: 2px 12px 2px 2px; }

@media (max-width: 991px) {
    .classic-hero-slide,
    .classic-hero-slide .hero-content { min-height: 650px; }
    .classic-about-visual > img { height: 470px; }
    .classic-need-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .classic-need-card { height: 340px; }
    .classic-home-heading { grid-template-columns: 1fr; gap: 18px; }
    .classic-home-heading__aside { display: flex; justify-content: space-between; gap: 25px; align-items: flex-end; }
    .classic-home-heading__aside p { max-width: 530px; margin: 0; }
    .classic-home-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
    .classic-home-service,
    .classic-home-service--featured { grid-row: auto; grid-template-columns: 1fr; grid-template-rows: 230px minmax(0, 1fr); }
    .classic-home-service--featured { grid-column: 1 / -1; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); grid-template-rows: 330px; }
    .classic-home-service__body { justify-content: flex-start; min-height: 210px; }
    .classic-home-service--featured .classic-home-service__body { justify-content: center; }
    .classic-promotion-shell { grid-template-columns: 1fr; }
    .classic-promotion-intro { max-width: 680px; }
    .classic-story-layout { grid-template-columns: 1fr; }
    .classic-story-list { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; }
    .classic-story-compact { grid-template-columns: 58px minmax(0, 1fr); }
    .classic-story-compact > img,
    .classic-story-compact__placeholder { width: 58px; height: 58px; }
    .classic-editorial-layout--with-aside { grid-template-columns: 1fr; }
    .classic-editorial-aside { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; }
}

@media (max-width: 767px) {
    .classic-hero-slide,
    .classic-hero-slide .hero-content { min-height: min(610px, calc(100svh - 64px)); }
    .classic-hero-copy { max-width: 100%; padding: 42px 0 28px; }
    .classic-hero-copy .hero-subtitle { gap: 9px; font-size: 10px; letter-spacing: .2em; }
    .classic-hero-copy .hero-subtitle::before { width: 22px; }
    .classic-hero-copy .hero-title { max-width: 355px; margin-bottom: 15px; font-size: clamp(36px, 10.2vw, 43px); line-height: 1.02; }
    .classic-hero-copy .hero-description { margin-bottom: 20px; font-size: 14px; line-height: 1.58; }
    .classic-hero-secondary { display: none; }
    .classic-hero-copy .hero-buttons .btn { min-height: 49px; }
    .classic-hero-proof { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 20px; padding-top: 15px; }
    .classic-hero-proof > div { padding: 0 12px; }
    .classic-hero-proof > div:nth-child(3) { display: none; }
    .classic-hero-proof strong { font-size: 22px; }
    .classic-hero-proof span { font-size: 9px; }

    body.website-classic-body section.classic-about--editorial { padding-block: 58px; }
    .classic-about-layout { --bs-gutter-y: 2.1rem; }
    .classic-about-copy { order: 1; }
    .classic-about-media { order: 2; }
    .classic-about-copy .section-title { margin-bottom: 17px; font-size: 36px; }
    .classic-about-copy .about-text { font-size: 14px; line-height: 1.7; }
    .classic-about-copy .classic-trust-grid { gap: 9px; margin-top: 24px; }
    .classic-about-copy .classic-trust-grid > div { min-height: 96px; padding: 13px; }
    .classic-about-copy .classic-trust-grid span { line-height: 1.38; }
    .classic-about-copy > .classic-text-link { margin-top: 22px; }
    .classic-about-visual { padding: 0 14px 18px 0; }
    .classic-about-visual > img { height: 330px; border-radius: 2px 48px 2px 2px; }
    .classic-about-count { top: 16px; left: -4px; padding: 13px 15px; }
    .classic-about-count strong { font-size: 29px; }
    .classic-about-count span { font-size: 9px; }
    .classic-about-visual figcaption { right: 5px; bottom: 0; max-width: 220px; padding: 10px 12px; font-size: 10px; }

    body.website-classic-body section.classic-home-needs,
    body.website-classic-body section.classic-home-services,
    body.website-classic-body section.classic-home-stories,
    body.website-classic-body section.classic-editorial-section { padding-block: 58px; }
    .classic-home-heading { gap: 14px; margin-bottom: 25px; }
    .classic-home-heading .section-title { font-size: 36px; }
    .classic-home-heading__aside { display: block; }
    .classic-home-heading__aside p { margin-bottom: 12px; font-size: 12px; }
    .classic-need-grid { gap: 9px; }
    .classic-need-card { height: 245px; border-radius: 2px 16px 2px 2px; }
    .classic-need-card__copy { padding: 15px 13px; }
    .classic-need-card__meta { margin-bottom: 7px; font-size: 7px; letter-spacing: .04em; }
    .classic-need-card__copy > strong { font-size: 20px; }
    .classic-need-card__copy > span:not(.classic-need-card__meta) { display: none; }
    .classic-need-card__copy > b { margin-top: 10px; font-size: 8px; }
    .classic-home-service-grid { grid-template-columns: 1fr; gap: 11px; }
    .classic-home-service,
    .classic-home-service--featured { grid-column: auto; grid-template-columns: 116px minmax(0, 1fr); grid-template-rows: 158px; min-height: 158px; border-radius: 2px 15px 2px 2px; }
    .classic-home-service__body,
    .classic-home-service--featured .classic-home-service__body { min-height: 0; justify-content: center; padding: 12px 13px; }
    .classic-home-service h3,
    .classic-home-service--featured h3 { display: -webkit-box; margin: 6px 0 8px; font-size: 19px; line-height: 1.15; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
    .classic-home-service__body > p { display: none; }
    .classic-home-service__meta { gap: 5px; font-size: 8px; }
    .classic-home-service__meta strong { font-size: 10px; }
    .classic-home-service__actions > a { font-size: 9px; }
    .classic-home-service__actions button { width: 31px; height: 31px; flex-basis: 31px; font-size: 11px; }
    .classic-home-service__number { top: 9px; left: 9px; width: 29px; height: 29px; font-size: 10px; }

    body.website-classic-body section.classic-home-promotions { padding-block: 58px; }
    .classic-promotion-shell { gap: 25px; }
    .classic-promotion-intro h2 { font-size: 36px; }
    .classic-promotion-card { min-height: 145px; grid-template-columns: 112px minmax(0, 1fr); }
    .classic-promotion-card > div { padding: 14px; }
    .classic-promotion-card h3 { font-size: 20px; }
    .classic-promotion-card p { display: none; }

    .classic-home-heading--stories { margin-bottom: 24px; }
    .classic-story-featured { min-height: 0; grid-template-columns: 1fr; gap: 22px; padding: 27px 22px; }
    .classic-story-featured__identity { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 14px; align-items: center; }
    .classic-story-featured__identity > img,
    .classic-story-featured__identity > span { width: 76px; height: 76px; font-size: 24px; }
    .classic-story-featured__identity > div { margin-top: 0; }
    .classic-story-featured__identity strong { font-size: 20px; }
    .classic-story-featured blockquote { font-size: 27px; line-height: 1.3; }
    .classic-story-featured__mark { display: none; }
    .classic-story-list { grid-template-columns: 1fr; gap: 9px; }
    .classic-story-compact { min-height: 106px; grid-template-columns: 58px minmax(0, 1fr); padding: 13px; }
    .classic-story-compact > img,
    .classic-story-compact__placeholder { width: 58px; height: 58px; }

    .classic-home-heading--editorial { margin-bottom: 24px; }
    .classic-editorial-layout .classic-news-featured { grid-template-columns: 1fr; border-radius: 2px 17px 2px 2px; }
    .classic-editorial-layout .classic-news-featured__image,
    .classic-editorial-layout .classic-news-featured__image img { min-height: 215px; height: 215px; }
    .classic-editorial-layout .classic-news-featured__copy { padding: 23px 20px 25px; }
    .classic-editorial-layout .classic-news-featured__copy h3 { font-size: 27px; }
    .classic-editorial-layout .classic-news-featured__copy p { display: -webkit-box; overflow: hidden; font-size: 13px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
    .classic-editorial-aside { grid-template-columns: 1fr; gap: 10px; margin-top: 10px; }
    .classic-news-compact { min-height: 120px; grid-template-columns: 105px minmax(0, 1fr); }
    .classic-news-compact > div { padding: 13px; }
    .classic-news-compact h3 { margin-block: 5px 9px; font-size: 17px; -webkit-line-clamp: 2; }

    body.website-classic-body section.classic-location-cta { padding-block: 60px; }
    .classic-location-copy h2 { font-size: 39px; }
    .classic-location-copy__actions { align-items: stretch; flex-direction: column; gap: 15px; }
    .classic-location-copy__actions > a { align-self: flex-start; }
    .classic-location-panel { padding: 10px; border-radius: 2px 16px 2px 2px; }
}
