/* ============================================================================
   Modern — crisp white, bold sans, coral pop. Layers on default.css.
   Split hero (text beside image), tight sans headlines, numbered chapters.
   ============================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@500;700;800&family=Inter:wght@300;400;500;600&family=Rubik:wght@400;500;700&display=swap');

body.hotel-site.hs-theme-modern {
    --primary-color: #0d0d0d;
    --primary-hover: #333;
    --primary-color-rgb: 13, 13, 13;
    --accent-color: #ff5a36;

    --hs-ink: #0d0d0d;
    --hs-muted: #5f6368;
    --hs-bg: #ffffff;
    --hs-surface: #ffffff;
    --hs-cream: #f4f4f2;
    --hs-line: #e7e7e4;
    --hs-accent-hover: #e8441f;
    --hs-on-accent: #fff;
    --hs-dark: #0d0d0d;
    --hs-on-dark: #f0f0f0;
    --hs-on-dark-accent: #ff8a6e;
    --hs-header-bg: rgba(255,255,255,.88);
    --hs-header-solid: #fff;
    --hs-radius: 12px;
    --hs-btn-radius: 999px;
    --hs-heading-weight: 800;
    --hs-serif: 'Manrope', 'Rubik', -apple-system, 'Segoe UI', sans-serif;   /* "display" face */
    --hs-sans: 'Inter', 'Rubik', -apple-system, 'Segoe UI', sans-serif;
}

/* Tight display type everywhere the base uses the serif */
body.hotel-site.hs-theme-modern .hs-hero__title,
body.hotel-site.hs-theme-modern .hs-chapter__title,
body.hotel-site.hs-theme-modern .hs-pagehero__title,
body.hotel-site.hs-theme-modern .hs-card__title,
body.hotel-site.hs-theme-modern .hs-faq__head,
body.hotel-site.hs-theme-modern .hs-cta__title { letter-spacing: -.035em; }
body.hotel-site.hs-theme-modern .hs-story__body, body.hotel-site.hs-theme-modern .hs-lead p { font-family: var(--hs-sans); font-weight: 300; letter-spacing: -.01em; }

/* Split hero: text column + image column (flips automatically in RTL) */
body.hotel-site.hs-theme-modern .hs-hero { display: grid; grid-template-columns: 1fr 1.15fr; height: auto; min-height: calc(100vh - 72px); align-items: stretch; background: var(--hs-bg); }
body.hotel-site.hs-theme-modern .hs-hero__media { --hs-gap: clamp(.8rem, 2vw, 1.5rem); position: relative; inset: auto; grid-column: 2; grid-row: 1; width: calc(100% - var(--hs-gap)); height: calc(100% - var(--hs-gap)); min-height: 60vh; border-radius: var(--hs-radius); margin: 0; margin-inline-end: var(--hs-gap); }
body.hotel-site.hs-theme-modern .hs-hero__scrim, body.hotel-site.hs-theme-modern .hs-hero__cue { display: none; }
body.hotel-site.hs-theme-modern .hs-hero__inner { grid-column: 1; grid-row: 1; align-self: center; color: var(--hs-ink); padding: 4rem clamp(1.5rem, 6vw, 5rem); }
body.hotel-site.hs-theme-modern .hs-hero__title { font-size: clamp(3rem, 6.4vw, 6rem); line-height: .98; }
body.hotel-site.hs-theme-modern .hs-hero__eyebrow { color: var(--accent-color); font-weight: 600; letter-spacing: .18em; }
body.hotel-site.hs-theme-modern .hs-hero__lede { color: var(--hs-muted); }

body.hotel-site.hs-theme-modern .hs-btn { font-weight: 600; letter-spacing: .04em; text-transform: none; font-size: 1rem; }
body.hotel-site.hs-theme-modern .hs-btn--solid:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(255,90,54,.35); }
body.hotel-site.hs-theme-modern .hs-link { border-bottom-width: 2px; font-weight: 600; letter-spacing: 0; color: var(--hs-ink); }

/* Story */
body.hotel-site.hs-theme-modern .hs-story { background: var(--hs-cream); }
body.hotel-site.hs-theme-modern .hs-story__wrap { text-align: start; max-width: 980px; }
body.hotel-site.hs-theme-modern .hs-rule { width: 12px; height: 12px; border-radius: 50%; }

/* Numbered chapters */
body.hotel-site.hs-theme-modern .hs-chapters { counter-reset: hsChapter; gap: clamp(.8rem, 2vw, 1.5rem); padding: clamp(.8rem, 2vw, 1.5rem); }
body.hotel-site.hs-theme-modern .hs-chapter { counter-increment: hsChapter; min-height: 70vh; background: var(--hs-cream); border-radius: var(--hs-radius); overflow: hidden; }
body.hotel-site.hs-theme-modern .hs-chapter__label { color: var(--hs-ink); font-weight: 600; letter-spacing: .14em; }
body.hotel-site.hs-theme-modern .hs-chapter__label::before { content: counter(hsChapter, decimal-leading-zero); display: block; font-family: var(--hs-serif); font-weight: 800; font-size: clamp(3rem, 6vw, 5rem); letter-spacing: -.04em; color: var(--accent-color); line-height: 1; margin-bottom: .6rem; }

body.hotel-site.hs-theme-modern .hs-gallery { gap: clamp(.8rem, 2vw, 1.5rem); padding: 0 clamp(.8rem, 2vw, 1.5rem) clamp(.8rem, 2vw, 1.5rem); }
body.hotel-site.hs-theme-modern .hs-gallery__cell { border-radius: var(--hs-radius); }
body.hotel-site.hs-theme-modern .hs-faq__item summary { font-weight: 600; }
body.hotel-site.hs-theme-modern .hs-cta { margin: 0 clamp(.8rem, 2vw, 1.5rem) clamp(.8rem, 2vw, 1.5rem); border-radius: var(--hs-radius); }

/* Inner pages */
body.hotel-site.hs-theme-modern .hs-pagehero { margin: 0 clamp(.8rem, 2vw, 1.5rem); border-radius: var(--hs-radius); }
body.hotel-site.hs-theme-modern .hs-card { border: 0; background: var(--hs-cream); }
body.hotel-site.hs-theme-modern .hs-card__img { border-radius: var(--hs-radius) var(--hs-radius) 0 0; }
body.hotel-site.hs-theme-modern .hs-card--text { border-top: 0; }
body.hotel-site.hs-theme-modern .hs-card--text .hs-card__title::before { content: ""; display: block; width: 28px; height: 4px; border-radius: 4px; background: var(--accent-color); margin-bottom: 1rem; }
body.hotel-site.hs-theme-modern .hs-gallery-full img { border-radius: 8px; }
body.hotel-site.hs-theme-modern .hs-contact__map iframe { border-radius: var(--hs-radius); }

/* Chrome */
body.hotel-site.hs-theme-modern .hs-header { border-bottom: 0; }
body.hotel-site.hs-theme-modern .hs-header__brand { font-family: var(--hs-serif); font-weight: 800; letter-spacing: -.03em; }
body.hotel-site.hs-theme-modern .hs-header__link { text-transform: none; letter-spacing: 0; font-size: .95rem; font-weight: 500; }
body.hotel-site.hs-theme-modern .hs-header__book { text-transform: none; letter-spacing: 0; font-size: .92rem; font-weight: 600; padding: .6rem 1.4rem; }
body.hotel-site.hs-theme-modern .hs-footer__nav a { text-transform: none; letter-spacing: 0; font-size: .95rem; }

@media (max-width: 800px) {
    body.hotel-site.hs-theme-modern .hs-hero { grid-template-columns: 1fr; min-height: 0; }
    body.hotel-site.hs-theme-modern .hs-hero__media { grid-column: 1; grid-row: 2; min-height: 62vw; height: auto; width: calc(100% - 1.6rem); margin: 0 .8rem .8rem; }
    body.hotel-site.hs-theme-modern .hs-hero__inner { grid-row: 1; padding: 3rem 1.4rem 2rem; }
}
