/* Hotel Chandralok: quiet-luxury layer on top of site.css. Serif display type, ivory + bronze, hairline details. */
.theme-chandralok {
  --bg: #f8f5ef;
  --surface: #fffdf9;
  --ink: #2a1a0f;
  --choc: #3b2415;
  --choc-deep: #22150b;
  --choc-mid: #2e1c10;
  --band: linear-gradient(100deg, #d98a2b 0%, #f2b85a 22%, #fbe3a1 45%, #f0b04e 70%, #c9792a 100%);
  --muted: #6a6258;
  --line: #e7dfd2;
  --soft: #f1ebe1;
  --accent: #8f5f22;
  --accent-ink: #ffffff;
  --accent-soft: #f4ede2;
  --gold: #e3a94f;
  --radius: 4px;
  --radius-sm: 3px;
  --shadow: 0 1px 2px rgba(59, 36, 21, .05), 0 12px 32px rgba(59, 36, 21, .09);
  --serif: "Cormorant Garamond", "Iowan Old Style", Georgia, serif;
}

/* Type */
.theme-chandralok h1, .theme-chandralok h2, .theme-chandralok h3 { font-family: var(--serif); font-weight: 600; letter-spacing: 0; }
.theme-chandralok .section-head { margin-left: auto; margin-right: auto; text-align: center; margin-bottom: 44px; }
.theme-chandralok .section-head h2 { font-size: clamp(34px, 6vw, 52px); font-weight: 500; line-height: 1.08; }
.theme-chandralok .section-head h2::after { content: ""; display: block; width: 88px; height: 3px; border-radius: 2px; background: var(--band); margin: 20px auto 0; }
.theme-chandralok .eyebrow { font-size: 12px; letter-spacing: .24em; color: var(--accent); margin-bottom: 14px; }
.theme-chandralok .lead { font-size: 16px; letter-spacing: .02em; }
.theme-chandralok .sub { font-family: var(--font); font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); margin-top: 8px; }
.theme-chandralok .section { padding: 80px 0; }
@media (min-width: 900px) { .theme-chandralok .section { padding: 112px 0; } }
.theme-chandralok .section + .section { border-top: 0; }

/* Buttons: squared, tracked caps */
.theme-chandralok .btn { border-radius: 2px; font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; padding: 0 26px; }
.theme-chandralok .btn-primary { background: var(--ink); color: #fff; }
.theme-chandralok .btn-primary:hover { background: var(--accent); filter: none; }
.theme-chandralok .hero .btn-primary { background: var(--gold); color: var(--ink); }
.theme-chandralok .hero .btn-primary:hover { background: #d8b67e; }
.theme-chandralok .btn-ghost { background: transparent; border-color: rgba(255, 255, 255, .7); backdrop-filter: none; }
.theme-chandralok .btn-ghost:hover { background: rgba(255, 255, 255, .12); }
.theme-chandralok .btn-outline { border-color: var(--ink); }
.theme-chandralok .btn-outline:hover { background: var(--ink); color: #fff; }

/* Header */
.theme-chandralok .site-header { background: rgba(248, 245, 239, .9); }
.theme-chandralok .brand img { height: 40px; }
@media (min-width: 900px) {
  .theme-chandralok .site-nav ul { gap: 0; }
  .theme-chandralok .site-nav a { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; padding: 0 11px; border-radius: 0; }
  .theme-chandralok .site-nav a:hover { background: none; color: var(--accent); }
  .theme-chandralok .site-nav a.nav-cta, .theme-chandralok .site-nav a.nav-cta:hover { border-radius: 2px; background: var(--ink); color: #fff; padding: 0 18px; letter-spacing: .14em; }
  .theme-chandralok .site-nav a.nav-cta:hover { background: var(--accent); }
}
@media (min-width: 900px) and (max-width: 1150px) { .theme-chandralok .site-nav a { padding: 0 8px; letter-spacing: .1em; } }
.theme-chandralok .site-nav a { font-family: var(--font); }

/* Hero: full-bleed, centred */
.theme-chandralok .hero { min-height: 100svh; align-items: center; text-align: center; }
.theme-chandralok .hero::after { background: linear-gradient(180deg, rgba(34, 21, 11, .58) 0%, rgba(34, 21, 11, .22) 40%, rgba(34, 21, 11, .82) 100%); }
.theme-chandralok .hero .wrap { padding-bottom: 40px; }
.theme-chandralok .hero-logo { background: rgba(255, 253, 249, .95); border-radius: 2px; padding: 18px 26px; box-shadow: 0 20px 50px rgba(0, 0, 0, .35); }
.theme-chandralok .hero-logo img { width: 230px; }
.theme-chandralok .hero-place { font-family: var(--serif); font-size: clamp(22px, 5vw, 30px); font-weight: 500; letter-spacing: .32em; text-transform: uppercase; margin-top: 22px; }
.theme-chandralok .hero-place::before, .theme-chandralok .hero-place::after { content: ""; display: inline-block; vertical-align: middle; width: 36px; height: 1px; background: var(--gold); margin: 0 16px; }
.theme-chandralok .hero-actions { justify-content: center; margin-top: 30px; }
.theme-chandralok .hero-note { max-width: 560px; margin: 36px auto 0; border-top-color: rgba(200, 164, 106, .5); letter-spacing: .02em; }

/* About: editorial alternating rows */
.story { display: grid; gap: 56px; }
.story-item { display: grid; gap: 24px; align-items: center; }
@media (min-width: 900px) {
  .story-item { grid-template-columns: 1.05fr 1fr; gap: 64px; }
  .story-item:nth-child(even) .story-media { order: 2; }
}
.story-media { margin: 0; position: relative; }
.story-media::before { content: ""; position: absolute; inset: 14px -14px -14px 14px; border: 1px solid var(--gold); z-index: 0; }
.story-media button { all: unset; display: block; position: relative; z-index: 1; cursor: zoom-in; width: 100%; }
.story-media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.story-body h3 { font-size: clamp(28px, 4.4vw, 36px); margin-bottom: 18px; }
.story-body p { color: #3d3831; }
.amenities { list-style: none; padding: 0; margin: 72px 0 0; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
@media (min-width: 800px) { .amenities { grid-template-columns: repeat(4, 1fr); } }
.amenities li { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 28px 12px; text-align: center; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.amenities li + li { border-left: 1px solid var(--line); }
@media (max-width: 799px) { .amenities li:nth-child(3) { border-left: 0; } .amenities li:nth-child(n+3) { border-top: 1px solid var(--line); } }
.amenities svg { width: 30px; height: 30px; color: var(--accent); stroke-width: 1.5; }

/* Jump links to each room */
.jump { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; margin: -12px calc(-1 * var(--gutter)) 32px; padding: 4px var(--gutter); }
.jump::-webkit-scrollbar { display: none; }
@media (min-width: 900px) { .jump { justify-content: center; flex-wrap: wrap; margin: -12px 0 40px; padding: 0; } }
.jump a { flex: none; display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid var(--line); border-radius: 2px; color: var(--ink); text-decoration: none; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; background: var(--surface); }
.jump a:hover { border-color: var(--accent); color: var(--accent); }

/* Rooms */
.theme-chandralok .rooms { gap: 32px; }
.theme-chandralok .room { border: 0; box-shadow: var(--shadow); }
.theme-chandralok .room-body { padding: 30px 28px 34px; }
@media (min-width: 900px) { .theme-chandralok .room-body { padding: 44px 48px; } }
.theme-chandralok .room-body h3 { font-size: clamp(30px, 4.6vw, 38px); font-weight: 500; }
.theme-chandralok .room-body p { color: #4a443c; }
.theme-chandralok .badge { background: rgba(34, 21, 11, .86); color: #fff; border-radius: 2px; font-family: var(--serif); font-size: 20px; font-weight: 600; padding: 8px 14px; backdrop-filter: blur(6px); }
.theme-chandralok .badge em { font-family: var(--font); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); }
.theme-chandralok .chips { gap: 6px 18px; }
.theme-chandralok .chips li { background: none; padding: 4px 0; border-radius: 0; font-size: 14px; color: #4a443c; }
.theme-chandralok .chips svg { stroke-width: 1.6; }
.theme-chandralok .slide figcaption, .theme-chandralok .g-count { border-radius: 2px; font-size: 12px; letter-spacing: .08em; }
.theme-chandralok .g-btn { border-radius: 2px; }

/* Tariff */
.theme-chandralok .tariff { border: 0; box-shadow: var(--shadow); max-width: 720px; margin: 56px auto 0; scroll-margin-top: calc(var(--header-h) + 24px); }
.theme-chandralok .tariff th { background: var(--ink); color: #fff; letter-spacing: .14em; font-size: 12px; }
.theme-chandralok .tariff td { padding: 16px 20px; font-size: 16px; }
.theme-chandralok .tariff td:first-child { font-family: var(--serif); font-size: 20px; font-weight: 600; }
.theme-chandralok .tariff tbody tr:nth-child(even) { background: var(--soft); }

/* Info boxes */
.theme-chandralok .info { background: var(--surface); border: 1px solid var(--line); border-top: 2px solid var(--gold); }
.theme-chandralok .info h3 { font-size: 24px; font-weight: 600; }
.theme-chandralok .info-grid { margin-top: 40px; }
@media (min-width: 900px) { #rooms .info-grid { grid-template-columns: 1fr 1fr; } }

/* Cards (events) */
.theme-chandralok .card { border: 0; box-shadow: var(--shadow); }
.theme-chandralok .card-body { padding: 24px 24px 28px; }
.theme-chandralok .card-body h3 { font-size: 28px; font-weight: 500; }
.text-link { font-weight: 600; letter-spacing: .12em; text-transform: uppercase; font-size: 12px; margin-left: 4px; display: inline-block; padding: 10px 0; }

/* Halls */
.halls-title { text-align: center; font-size: clamp(28px, 4.6vw, 36px); margin: 72px 0 28px; }
.halls { display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
@media (min-width: 640px) { .halls { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .halls { grid-template-columns: repeat(4, 1fr); } }
.hall { background: var(--surface); padding: 28px 24px; text-align: center; }
.hall h4 { font-family: var(--serif); font-size: 24px; font-weight: 600; margin-bottom: 18px; }
.hall dl { margin: 0; display: grid; gap: 14px; }
.hall dt { font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--accent); }
.hall dd { margin: 4px 0 0; color: #3d3831; }
.hall dl div:first-child dd { font-family: var(--serif); font-size: 26px; font-weight: 600; color: var(--ink); }

/* Gallery: dark photo wall */
.section-dark { background: var(--choc-deep); color: #efe8dc; }
.section-dark .section-head h2 { color: #fff; }
.section-dark .eyebrow { color: var(--gold); }
.photo-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); grid-auto-flow: dense; gap: 6px; }
.photo-grid li:first-child { grid-column: span 2; }
@media (min-width: 800px) { .photo-grid { grid-template-columns: repeat(4, 1fr); gap: 10px; } .photo-grid li:first-child { grid-row: span 2; } }
.photo-grid li { overflow: hidden; background: var(--choc-mid); }
.photo-grid button { all: unset; display: block; width: 100%; height: 100%; cursor: zoom-in; }
.photo-grid button:focus-visible { outline: 3px solid var(--gold); outline-offset: -3px; }
.photo-grid img { width: 100%; height: 100%; aspect-ratio: 3 / 2; object-fit: cover; transition: transform .6s ease, opacity .3s ease; }
.photo-grid li:hover img { transform: scale(1.04); }
.to-top { text-align: center; margin-top: 36px; }
.to-top a { color: var(--gold); font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; display: inline-block; padding: 12px 0; }

/* Contact */
.theme-chandralok .panel { border: 0; box-shadow: var(--shadow); padding: 30px; }
.theme-chandralok .panel h3 { font-size: 30px; font-weight: 500; }
.theme-chandralok .lbl { display: inline-block; margin-top: 14px; font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--accent); }
.theme-chandralok .phones { margin-top: 4px; }
.theme-chandralok .mails { margin-top: 14px; }
.theme-chandralok .mails a { font-size: 15px; font-weight: 600; word-break: break-all; }
.theme-chandralok .tabs { border-radius: 2px; }
.theme-chandralok .tabs button { border-radius: 2px; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.theme-chandralok input, .theme-chandralok select, .theme-chandralok textarea { border-radius: 2px; background: #fff; }

/* Footer + action bar */
.theme-chandralok .site-footer { background: var(--choc-deep); border-top: 1px solid rgba(200, 164, 106, .35); }
.theme-chandralok .foot-nav a { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.theme-chandralok .action-bar a { border-radius: 2px; }
.theme-chandralok .action-bar a.primary { background: var(--ink); }
.theme-chandralok .action-bar svg { stroke-width: 1.7; }

/* fixes after preview */
@media (min-width: 900px) {
  .theme-chandralok .room .gallery { display: flex; }
  .theme-chandralok .room .track { aspect-ratio: auto; width: 100%; min-height: 440px; }
}
.theme-chandralok .mails a { font-size: 14px; word-break: normal; overflow-wrap: anywhere; }
.theme-chandralok .site-nav a { white-space: nowrap; }
@media (min-width: 900px) and (max-width: 1199px) { .theme-chandralok .site-nav .nav-cta { display: none; } }
.theme-chandralok .video-frame { border-radius: 2px; }
/* Video page: several films */
.video-block { max-width: 960px; }
.video-block + .video-block { margin-top: 64px; padding-top: 48px; border-top: 1px solid var(--line); }
.video-meta { margin-bottom: 18px; }
.video-meta .eyebrow { margin-bottom: 8px; }
.video-meta h2 { font-size: clamp(26px, 4.6vw, 34px); font-weight: 500; }
.video-meta p { color: var(--muted); margin-top: 6px; }
.theme-chandralok .video-page .section-head { text-align: left; margin-left: 0; }
.theme-chandralok .video-page .section-head h1 { font-size: clamp(34px, 6vw, 52px); font-weight: 500; }
.theme-chandralok .video-actions { margin-top: 40px; }

/* Chocolate + gold band (echoes the original site's amber title band and brown table headers) */
.theme-chandralok { background: var(--bg); }
.theme-chandralok .site-header { box-shadow: inset 0 -3px 0 0 transparent; }
.theme-chandralok .site-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: var(--band); }
.theme-chandralok .site-header { position: sticky; }
.theme-chandralok .hero { margin-top: calc(-1 * var(--header-h) - 3px); }
.theme-chandralok .hero-place::before, .theme-chandralok .hero-place::after { height: 2px; background: var(--band); }
.theme-chandralok .hero .btn-primary { background: var(--band); color: var(--choc-deep); border: 0; }
.theme-chandralok .hero .btn-primary:hover { filter: brightness(1.06); background: var(--band); }
.theme-chandralok .hero-note { border-top: 0; position: relative; }
.theme-chandralok .hero-note::before { content: ""; position: absolute; left: 50%; top: 0; translate: -50% 0; width: 120px; height: 2px; background: var(--band); }
.theme-chandralok .btn-primary { background: var(--choc); }
.theme-chandralok .btn-primary:hover { background: var(--accent); }
.theme-chandralok .btn-outline { border-color: var(--choc); color: var(--choc); }
.theme-chandralok .btn-outline:hover { background: var(--choc); color: #fff; }
@media (min-width: 900px) {
  .theme-chandralok .site-nav a.nav-cta, .theme-chandralok .site-nav a.nav-cta:hover { background: var(--choc); }
  .theme-chandralok .site-nav a.nav-cta:hover { background: var(--accent); }
}
.theme-chandralok .tariff th { background: var(--choc); border-bottom: 3px solid transparent; border-image: var(--band) 1; }
.theme-chandralok .info { border-top: 0; position: relative; overflow: hidden; }
.theme-chandralok .info::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--band); }
.theme-chandralok .story-media::before { border-color: #e7b866; }
.theme-chandralok .badge { border-left: 3px solid var(--gold); }
.section-dark { background: radial-gradient(120% 80% at 50% 0%, #3a2414 0%, var(--choc-deep) 60%); position: relative; }
.section-dark::before, .theme-chandralok .site-footer::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--band); }
.theme-chandralok .site-footer { position: relative; background: var(--choc-deep); border-top: 0; color: #e9dccb; }
.theme-chandralok .action-bar a.primary { background: var(--choc); }
.theme-chandralok .action-bar { border-top: 0; box-shadow: 0 -3px 0 0 rgba(0,0,0,0); }
.theme-chandralok .action-bar::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--band); }
.theme-chandralok .tabs button[aria-selected="true"] { box-shadow: inset 0 -2px 0 var(--gold), 0 1px 3px rgba(59, 36, 21, .1); }
.theme-chandralok dialog.lightbox::backdrop { background: rgba(26, 15, 7, .94); }
.theme-chandralok .jump a:hover { border-color: var(--gold); }
.theme-chandralok .chips svg, .theme-chandralok .amenities svg, .theme-chandralok .info h3 svg, .theme-chandralok .phones svg { color: #a86b22; }
.theme-chandralok .gallery { background: var(--choc-deep); }
.theme-chandralok .slide figcaption, .theme-chandralok .g-count, .theme-chandralok .more-count { background: rgba(34, 21, 11, .78); }
.theme-chandralok .hero-logo { box-shadow: 0 20px 50px rgba(34, 21, 11, .45); }
.theme-chandralok .skip { background: var(--choc); }
.theme-chandralok .video-frame { background: var(--choc-deep); }
/* Hero logo: soft white glow instead of a white panel */
.theme-chandralok .hero-logo { background: none; box-shadow: none; padding: 34px 56px; position: relative; isolation: isolate; }
.theme-chandralok .hero-logo::before { content: ""; position: absolute; inset: -10px -30px; z-index: -1; border-radius: 50%;
  background: radial-gradient(closest-side, rgba(255, 255, 255, .96) 0%, rgba(255, 252, 245, .9) 38%, rgba(255, 248, 235, .55) 62%, rgba(255, 245, 228, 0) 100%);
  filter: blur(6px); }
.theme-chandralok .hero-logo img { width: 240px; }
@media (max-width: 420px) { .theme-chandralok .hero-logo { padding: 28px 40px; } .theme-chandralok .hero-logo img { width: 210px; } }
/* Share buttons in gold */
.theme-chandralok .share-label { color: var(--gold); letter-spacing: .18em; font-size: 12px; }
.theme-chandralok .share-btn { border-color: rgba(227, 169, 79, .55); color: #f3d79b; }
