:root {
  --sr-ink: #2d241d;
  --sr-muted: #75695d;
  --sr-sand: #f5efe5;
  --sr-gold: #a87d3f;
  --sr-gold-dark: #8b704b;
  --sr-line: #e4dbcf;

  --sr-blue: #385988;
  --sr-blue-dark: #274165;
  --sr-blue-light: #5F7BA3;
  --sr-text: #1f2933;
  --sr-footer: #385988;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { color: var(--sr-ink); font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif; background: #fff; }
p, a, input, textarea, button, .uk-navbar-nav > li > a { font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif; }
h1, h2, h3, h4 { color: inherit; letter-spacing: -.02em; }
h1 { font-size: clamp(3.2rem, 8vw, 7.5rem); line-height: .9; text-transform: uppercase; margin-bottom: 24px; }
h2 { font-size: clamp(2.1rem, 4vw, 4.4rem); line-height: 1; margin: 0 0 24px; }
.uk-text-lead { color: rgba(255,255,255,.88); max-width: 760px; }
.sr-header { z-index: 1000; }
.sr-navbar { padding: 10px clamp(16px, 4vw, 54px); background: rgba(255,255,255,.93) !important; backdrop-filter: blur(14px); border-bottom: 1px solid var(--sr-line); }
.sr-navbar-sticky { box-shadow: 0 10px 40px rgba(0,0,0,.08); }
.sr-logo { gap: 12px; color: var(--sr-ink) !important; font-weight: 700; letter-spacing: .02em; }
.sr-logo-mark { display: inline-grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--sr-gold); color: var(--sr-gold); border-radius: 50%; font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif; }
.sr-nav > li > a { min-height: 74px; color: var(--sr-ink) !important; font-size: 14px; text-transform: uppercase; letter-spacing: .08em; }
.sr-mega { width: 100%; padding: 38px clamp(24px, 5vw, 70px); background: #fff; border-top: 1px solid var(--sr-line); box-shadow: 0 30px 70px rgba(0,0,0,.13); }
.sr-mega .uk-nav a { padding: 8px 0; color: var(--sr-ink); font-size: 16px; }
.sr-mega-card { background: var(--sr-sand); padding: 26px; }
.sr-button, .uk-button-primary { background: var(--sr-blue) !important; color: #fff !important; border: 1px solid var(--sr-blue-dark); }
.sr-button-light { color: #fff !important; border-color: rgba(255,255,255,.7); margin-left: 10px; }
.sr-eyebrow { color: var(--sr-gold); text-transform: uppercase; letter-spacing: .16em; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
.sr-hero { color: #fff; background: linear-gradient(90deg, rgba(38,53,43,.86), rgba(38,53,43,.42)), radial-gradient(circle at 75% 45%, rgba(168,125,63,.35), transparent 32%), linear-gradient(135deg, #314532, #8a7b66 55%, #d6c4aa); }
.sr-feature-strip { margin-top: -70px; position: relative; z-index: 2; padding-top: 0; }
.sr-feature { min-height: 190px; padding: 30px; background: #fff; border: 1px solid var(--sr-line); box-shadow: 0 18px 50px rgba(0,0,0,.11); }
.sr-feature h3 { font-size: 1.4rem; margin-bottom: 10px; }
.sr-feature p, .sr-card p, .sr-offer p, section p { color: var(--sr-muted); line-height: 1.7; }
.sr-soft { background: var(--sr-sand); }
.sr-image-card, .sr-card-img { min-height: 420px; border-radius: 0; background-size: cover; background-position: center; box-shadow: inset 0 0 0 1px rgba(255,255,255,.45); }
.sr-image-house { background: linear-gradient(135deg, rgba(38,53,43,.08), rgba(168,125,63,.2)), linear-gradient(140deg, #d8c2a2, #6d7a62); }
.sr-image-restaurant { background: linear-gradient(135deg, rgba(38,53,43,.12), rgba(168,125,63,.2)), linear-gradient(140deg, #4c3024, #d6b785); }
.sr-image-nature { background: linear-gradient(135deg, rgba(38,53,43,.15), rgba(255,255,255,.15)), linear-gradient(140deg, #20382d, #82a58d 60%, #d6c4aa); }
.sr-card { border: 0; box-shadow: 0 18px 50px rgba(0,0,0,.08); }
.sr-card-img { min-height: 240px; box-shadow: none; }
.sr-img-room { background: linear-gradient(135deg, #a88c68, #f2e2c6); }
.sr-img-suite { background: linear-gradient(135deg, #6c5b49, #d8c2a2); }
.sr-img-view { background: linear-gradient(135deg, #536b52, #d7d9bd); }
.sr-dark { background: var(--sr-gold-dark); color: #fff; }
.sr-dark p { color: rgba(255,255,255,.76); }
.sr-dark h2, .sr-dark h3 { color: #fff; }
.sr-dark-card { height: 100%; padding: 30px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.05); }
.sr-offer { border: 0; box-shadow: 0 14px 40px rgba(0,0,0,.08); }
.sr-tag { display: inline-block; padding: 4px 10px; margin-bottom: 18px; background: var(--sr-sand); color: var(--sr-gold); text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 700; }
.sr-form { padding: 34px; background: var(--sr-sand); }
.sr-form .uk-input, .sr-form .uk-textarea { border-color: var(--sr-line); }
.sr-footer { background: #385988; color: rgba(255,255,255,.75); }
.sr-footer h3, .sr-footer h4 { color: #fff; }
.sr-footer a { display: block; color: rgba(255,255,255,.72); margin: 7px 0; }
.sr-offcanvas { background: var(--sr-blue-dark); }
@media (max-width: 959px) {
  .sr-navbar { padding: 8px 16px; }
  .sr-feature-strip { margin-top: 0; padding-top: 40px; }
  h1 { font-size: 3.6rem; }
  .sr-button-light { margin-left: 0; margin-top: 12px; }
}


/* Accessibility and font corrections */
html,
body,
button,
input,
textarea,
select {
  font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
}

body {
  color: var(--sr-text);
}

h1, h2, h3, h4, h5, h6,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge {
  font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
}

a {
  text-underline-offset: 0.18em;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.uk-button:focus-visible {
  outline: 3px solid #d8c6a3;
  outline-offset: 3px;
}

.site-footer {
  background-color: #385988;
  color: #ffffff;
}

.site-footer a,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6,
.site-footer li,
.site-footer p,
.site-footer .footer-logo,
.site-footer .footer-nav a,
.site-footer .footer-bottom,
.site-footer .footer-bottom a {
  color: #ffffff;
}

.site-footer input,
.site-footer input::placeholder {
  color: #1f2933;
}

.site-footer input {
  background: #ffffff;
  border: 2px solid #ffffff;
}

.uk-text-muted,
.text-muted,
.sr-muted {
  color: var(--sr-muted) !important;
}

.site-footer .uk-text-muted,
.site-footer .text-muted,
.site-footer .sr-muted {
  color: rgba(255,255,255,.9) !important;
}

.uk-button-primary,
.btn-primary,
.mega-cta {
  background-color: #385988;
  border-color: #385988;
  color: #ffffff;
}

.uk-button-primary:hover,
.uk-button-primary:focus,
.btn-primary:hover,
.btn-primary:focus,
.mega-cta:hover,
.mega-cta:focus {
  background-color: #274165;
  border-color: #274165;
  color: #ffffff;
}

.uk-button-default {
  color: #274165;
  border-color: #274165;
}

.uk-button-default:hover,
.uk-button-default:focus {
  background-color: #274165;
  color: #ffffff;
}


/* Footer screenshot layout without newsletter */
.site-footer {
  font-family: "Inter", "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
  color: #ffffff;
}

.footer-main {
  background: #385988;
  padding: 48px 0 64px;
}

.footer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
}

.footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #ffffff;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .03em;
}

.footer-brand:hover,
.footer-brand:focus {
  color: #ffffff;
  text-decoration: none;
}

.footer-brand-mark {
  width: 58px;
  height: 84px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.footer-brand-text {
  font-size: 18px;
  line-height: 1.15;
}

.header-brand-mark {
  width: 42px;
  height: 61px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.header-brand-text {
  font-size: 18px;
  line-height: 1.15;
}

.header-brand-logo,
.footer-brand-logo {
  display: block;
  width: auto;
  height: 100%;
  object-fit: contain;
}

.header-brand-logo {
  filter: none;
}

.footer-brand-logo {
  filter: none;
}

.footer-nav {
  display: flex;
  align-items: center;
  gap: clamp(24px, 4vw, 70px);
  flex-wrap: wrap;
}

.footer-nav a {
  color: #ffffff;
  text-decoration: none;
  line-height: 1.2;
}

.footer-nav a:hover,
.footer-nav a:focus {
  color: #ffffff;
}

.footer-divider {
  height: 1px;
  background: rgba(255,255,255,.22);
  margin: 42px 0 52px;
}

.footer-columns {
  display: grid;
  gap: clamp(32px, 6vw, 90px);
}

.footer-columns-inner {
  grid-template-columns: 1fr 1fr 1fr 1.7fr;
}

.footer-column h3 {
  color: #ffffff;
  line-height: 1.2;
  margin: 0 0 24px;
}

.footer-column ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-column li {
  margin: 0 0 13px;
}

.footer-column a,
.footer-column p {
  color: #ffffff;
  line-height: 1.35;
  text-decoration: none;
}

.footer-column a:hover,
.footer-column a:focus {
  color: #ffffff;
}

.footer-contact p {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 14px;
}

.footer-social-title {
  margin-top: 36px !important;
}

.footer-social {
  display: flex;
  gap: 24px;
}

.footer-social a {
  color: #ffffff;
}

.footer-bottom-bar {
  padding: 28px 0;
}

.footer-bottom-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.footer-bottom-inner a {
  color: #ffffff;
}

@media (max-width: 1100px) {
  .footer-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-columns-inner {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-nav {
    gap: 24px;
  }
}

@media (max-width: 700px) {
  .footer-main {
    padding: 36px 0 44px;
  }

  .footer-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

}

/* Schloss Reichenow Unterseiten Designsystem */
.sr-subpage { --accent: #a87d3f; --soft: #f7f1e7; --ink: #2d241d; --muted: #75695d; }
    .sr-sub-hero { padding: 56px 0 48px; color:#fff; background: linear-gradient(90deg, rgba(38,53,43,.92), rgba(38,53,43,.62)), radial-gradient(circle at 78% 30%, rgba(168,125,63,.34), transparent 34%), linear-gradient(135deg, #314532, #b79a72); }
    .sr-sub-hero h1 { font-size: clamp(2.3rem, 5vw, 4.6rem); line-height:.98; margin:0 0 18px; max-width:920px; }
    .sr-sub-hero .uk-text-lead { max-width:790px; color:rgba(255,255,255,.9); font-size: clamp(1.05rem, 1.6vw, 1.35rem); }
    .sr-breadcrumb { display:flex; gap:8px; flex-wrap:wrap; font-size:13px; margin-bottom:18px; color:rgba(255,255,255,.82); }
    .sr-breadcrumb a { color:#fff; text-decoration:underline; text-decoration-thickness:1px; }
    .sr-hero-panel { margin-top:26px; display:flex; flex-wrap:wrap; gap:10px; }
    .sr-hero-panel span { padding:9px 13px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22); color:#fff; font-size:14px; }
    .sr-anchorbar { border-bottom:1px solid var(--sr-line); background:#fff; position:relative; z-index:5; }
    .sr-anchorbar .uk-container { display:flex; gap:18px; flex-wrap:wrap; padding-top:14px; padding-bottom:14px; }
    .sr-anchorbar a { color:var(--sr-blue-dark); font-weight:700; font-size:14px; }
    .sr-facts { margin-top:-34px; position:relative; z-index:3; }
    .sr-fact-card { background:#fff; border:1px solid var(--sr-line); padding:24px; min-height:150px; box-shadow:0 16px 45px rgba(0,0,0,.08); }
    .sr-fact-card strong { display:block; font-size:1.35rem; color:var(--sr-ink); margin-bottom:8px; }
    .sr-fact-card p { margin:0; color:var(--sr-muted); line-height:1.55; }
    .sr-leadblock { max-width:880px; }
    .sr-section-title { max-width:800px; margin-bottom:36px; }
    .sr-premium-card { height:100%; background:#fff; border:1px solid var(--sr-line); box-shadow:0 18px 50px rgba(0,0,0,.07); }
    .sr-premium-card-body { padding:28px; }
    .sr-premium-card h3 { font-size:1.45rem; margin-bottom:10px; }
    .sr-premium-img { min-height:250px; background-size:cover; background-position:center; }
    .sr-img-arrival { background:linear-gradient(135deg, rgba(45,36,29,.06), rgba(168,125,63,.22)), linear-gradient(135deg, #d9c4a4, #5f735a); }
    .sr-img-room2 { background:linear-gradient(135deg, rgba(45,36,29,.04), rgba(168,125,63,.2)), linear-gradient(135deg, #e6d4bc, #7e6a54); }
    .sr-img-food2 { background:linear-gradient(135deg, rgba(45,36,29,.15), rgba(168,125,63,.2)), linear-gradient(135deg, #4b3024, #d6b785); }
    .sr-img-park2 { background:linear-gradient(135deg, rgba(45,36,29,.06), rgba(255,255,255,.1)), linear-gradient(135deg, #243d30, #9db189); }
    .sr-editorial { background:var(--soft); border-left:5px solid var(--accent); padding:30px; }
    .sr-editorial p:last-child { margin-bottom:0; }
    .sr-split-image { min-height:520px; background-size:cover; background-position:center; }
    .sr-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:22px; }
    .sr-check { padding:14px 16px; background:#fff; border:1px solid var(--sr-line); color:var(--sr-ink); }
    .sr-itinerary { counter-reset: day; }
    .sr-day { background:#fff; border:1px solid var(--sr-line); padding:28px; height:100%; position:relative; }
    .sr-day:before { counter-increment: day; content: counter(day); position:absolute; top:22px; right:22px; width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--accent); color:var(--accent); font-weight:800; }
    .sr-day h3 { color: #000; margin-right:50px; }
    .sr-day p { color: var(--sr-muted); }
    .sr-link-grid a { display:block; height:100%; padding:24px; background:#fff; border:1px solid var(--sr-line); color:var(--sr-ink); text-decoration:none; transition:.18s ease; }
    .sr-link-grid a:hover { transform:translateY(-2px); box-shadow:0 14px 35px rgba(0,0,0,.08); }
    .sr-link-grid strong { display:block; margin-bottom:8px; font-size:1.15rem; }
    .sr-gallery-mosaic { display:grid; grid-template-columns:2fr 1fr 1fr; gap:16px; }
    .sr-gallery-tile { min-height:220px; background-size:cover; background-position:center; }
    .sr-gallery-tile:first-child { min-height:456px; grid-row:span 2; }
    .sr-faq .uk-accordion-title { font-weight:700; color:var(--sr-ink); }
    .sr-final-cta { background:linear-gradient(90deg, rgba(39,65,101,.96), rgba(39,65,101,.78)), linear-gradient(135deg, #314532, #a87d3f); color:#fff; }
    .sr-final-cta h2, .sr-final-cta p { color:#fff; }
    @media (max-width: 959px) { .sr-sub-hero { min-height:300px; padding:42px 0; } .sr-facts { margin-top:0; padding-top:30px;} .sr-checklist { grid-template-columns:1fr; } .sr-gallery-mosaic { grid-template-columns:1fr; } .sr-gallery-tile:first-child { min-height:260px; } }


/* Informationsseiten */
.sr-info-page .sr-info-hero { background: linear-gradient(90deg, rgba(39,65,101,.94), rgba(39,65,101,.62)), radial-gradient(circle at 78% 30%, rgba(168,125,63,.28), transparent 34%), linear-gradient(135deg, #314532, #b79a72); }
.sr-info-box { background:#fff; border:1px solid var(--sr-line); padding:28px; box-shadow:0 14px 36px rgba(0,0,0,.06); }
.sr-info-box strong { display:block; font-size:1.35rem; margin-bottom:10px; color:var(--sr-ink); }
.sr-room-tabs { margin-bottom:0; }
.sr-room-tabs > * > a { color:var(--sr-blue-dark); font-weight:700; letter-spacing:.02em; }
.sr-room-detail { background:#fff; border:1px solid var(--sr-line); padding:clamp(22px, 4vw, 44px); box-shadow:0 18px 50px rgba(0,0,0,.07); }
.sr-room-detail h3 { font-size:clamp(1.8rem, 3vw, 3rem); line-height:1; margin:0 0 18px; }
.sr-room-slider { background:#fff; }
.sr-room-slide { min-height:430px; background-size:cover; background-position:center; display:block; }
.sr-slider-nav { color:#fff; background:rgba(39,65,101,.72); width:46px; height:46px; display:grid; place-items:center; }
.sr-slider-nav:hover, .sr-slider-nav:focus { color:#fff; background:var(--sr-blue-dark); }
.sr-room-meta { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 26px; }
.sr-room-meta span { padding:8px 12px; border:1px solid var(--sr-line); background:var(--sr-sand); color:var(--sr-ink); font-size:14px; font-weight:700; }
.sr-room-single-1 { background:linear-gradient(135deg, rgba(45,36,29,.1), rgba(168,125,63,.22)), linear-gradient(135deg, #e4d3bd, #8b775f); }
.sr-room-single-2 { background:linear-gradient(135deg, rgba(39,65,101,.16), rgba(255,255,255,.1)), linear-gradient(135deg, #d7dce3, #6f7d8d); }
.sr-room-single-3 { background:linear-gradient(135deg, rgba(168,125,63,.2), rgba(255,255,255,.12)), linear-gradient(135deg, #c5a779, #f2e8d8); }
.sr-room-classic-1 { background:linear-gradient(135deg, rgba(45,36,29,.08), rgba(168,125,63,.22)), linear-gradient(135deg, #eadbc7, #90745c); }
.sr-room-classic-2 { background:linear-gradient(135deg, rgba(39,65,101,.12), rgba(168,125,63,.18)), linear-gradient(135deg, #cfc3b2, #75695d); }
.sr-room-classic-3 { background:linear-gradient(135deg, rgba(45,36,29,.08), rgba(255,255,255,.15)), linear-gradient(135deg, #d8c2a2, #f5efe5); }
.sr-room-deluxe-1 { background:linear-gradient(135deg, rgba(45,36,29,.08), rgba(168,125,63,.22)), linear-gradient(135deg, #b89a72, #efe0c8); }
.sr-room-deluxe-2 { background:linear-gradient(135deg, rgba(39,65,101,.15), rgba(255,255,255,.12)), linear-gradient(135deg, #6b5b4a, #d8c8ad); }
.sr-room-deluxe-3 { background:linear-gradient(135deg, rgba(168,125,63,.18), rgba(45,36,29,.06)), linear-gradient(135deg, #f1dfc2, #a38159); }
.sr-room-family-1 { background:linear-gradient(135deg, rgba(45,36,29,.08), rgba(168,125,63,.18)), linear-gradient(135deg, #d5c0a0, #7d8b6a); }
.sr-room-family-2 { background:linear-gradient(135deg, rgba(39,65,101,.15), rgba(255,255,255,.12)), linear-gradient(135deg, #9fb09b, #e8dcc8); }
.sr-room-family-3 { background:linear-gradient(135deg, rgba(168,125,63,.18), rgba(255,255,255,.12)), linear-gradient(135deg, #f1dfc2, #526d59); }
.sr-info-accordion .uk-accordion-title { font-weight:700; color:var(--sr-ink); }
.sr-info-cards .sr-info-card {
  min-height: 100%;
  background: #fff;
  border: 1px solid var(--sr-line);
  padding: clamp(28px, 3vw, 42px) 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  color: var(--sr-ink);
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.sr-info-cards .sr-info-card:hover,
.sr-info-cards .sr-info-card:focus {
  transform: translateY(-3px);
  box-shadow: 0 18px 46px rgba(45,36,29,.10);
  border-color: rgba(168,125,63,.45);
  color: var(--sr-ink);
  text-decoration: none;
}
.sr-info-icon {
  width: 76px;
  height: 76px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: var(--sr-sand);
  color: #8a5f24;
  margin-bottom: 18px;
}
.sr-info-card h3 {
  font-size: 1.35rem;
  line-height: 1.2;
  margin: 0 0 12px;
  color: var(--sr-ink);
}
.sr-info-card p {
  margin: 0 auto;
  max-width: 260px;
  color: var(--sr-muted);
}
.sr-info-card-link {
  margin-top: auto;
  padding-top: 28px;
  color: #8a5f24;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.sr-info-card-link .uk-icon { flex: none; }
@media (max-width: 959px) { .sr-room-slide { min-height:300px; } .sr-room-detail { padding:22px; } }

/* Informationsseite: Räumlichkeiten */
.sr-room-finder { background: var(--sr-sand); }
.sr-filter-panel { background:#fff; border:1px solid var(--sr-line); padding:22px; box-shadow:0 14px 36px rgba(0,0,0,.05); }
.sr-filter-panel h3 { margin:0 0 14px; font-size:1rem; letter-spacing:.12em; text-transform:uppercase; color:var(--sr-gold-dark); }
.sr-filter-nav { display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; list-style:none; }
.sr-filter-nav a { display:inline-flex; align-items:center; min-height:42px; padding:10px 16px; border:1px solid var(--sr-line); background:#fff; color:var(--sr-blue-dark); font-weight:800; letter-spacing:.02em; text-decoration:none; transition:.18s ease; }
.sr-filter-nav .uk-active a, .sr-filter-nav a:hover { background:var(--sr-blue); border-color:var(--sr-blue); color:#fff; }
.sr-space-card { height:100%; background:#fff; border:1px solid var(--sr-line); box-shadow:0 16px 42px rgba(0,0,0,.06); overflow:hidden; transition:.18s ease; }
.sr-space-card:hover { transform:translateY(-2px); box-shadow:0 22px 55px rgba(0,0,0,.1); }
.sr-space-image { min-height:220px; background-size:cover; background-position:center; position:relative; }
.sr-space-image:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 35%, rgba(0,0,0,.42)); }
.sr-space-badge { position:absolute; left:18px; bottom:18px; z-index:1; background:#fff; color:var(--sr-ink); padding:7px 12px; font-weight:800; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; }
.sr-space-body { padding:26px; }
.sr-space-body h3 { font-size:clamp(1.45rem, 2vw, 2.05rem); line-height:1.08; margin:0 0 12px; }
.sr-space-body p { margin-bottom:18px; }
.sr-space-meta { display:grid; grid-template-columns:repeat(3, 1fr); gap:10px; margin:20px 0; }
.sr-space-meta span { background:var(--sr-sand); border:1px solid var(--sr-line); padding:10px; font-size:.9rem; color:var(--sr-ink); font-weight:700; }
.sr-space-meta small { display:block; color:var(--sr-muted); font-weight:700; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; margin-bottom:3px; }
.sr-space-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin-top:18px; }
.sr-text-link { color:var(--sr-gold-dark); font-weight:900; text-transform:uppercase; letter-spacing:.11em; font-size:.82rem; text-decoration:none; }
.sr-text-link:hover { color:var(--sr-blue-dark); text-decoration:none; }
.sr-capacity-table { background:#fff; border:1px solid var(--sr-line); padding:clamp(22px, 4vw, 42px); box-shadow:0 16px 45px rgba(0,0,0,.06); }
.sr-capacity-table .uk-table th { color:var(--sr-blue-dark); font-weight:900; }
.sr-capacity-table .uk-table td { color:var(--sr-muted); }
.sr-space-modal .uk-modal-dialog { border-radius:0; }
.sr-modal-image { min-height:320px; background-size:cover; background-position:center; }
.sr-modal-content { padding:clamp(24px, 4vw, 46px); }
.sr-modal-content h2 { font-size:clamp(2rem, 4vw, 4rem); line-height:1; margin-bottom:20px; }
.sr-floor-eg { background:linear-gradient(135deg, rgba(45,36,29,.08), rgba(168,125,63,.2)), linear-gradient(135deg, #e4d3bd, #80684f); }
.sr-floor-og { background:linear-gradient(135deg, rgba(39,65,101,.16), rgba(255,255,255,.12)), linear-gradient(135deg, #d8dce3, #6d7a8e); }
.sr-floor-ug { background:linear-gradient(135deg, rgba(45,36,29,.15), rgba(168,125,63,.2)), linear-gradient(135deg, #71604e, #d7c4a9); }
.sr-floor-out { background:linear-gradient(135deg, rgba(39,65,101,.10), rgba(168,125,63,.18)), linear-gradient(135deg, #86966f, #efe3cc); }
.sr-combination-card { display:block; height:100%; background:#fff; border:1px solid var(--sr-line); padding:28px; color:var(--sr-ink); text-decoration:none; transition:.18s ease; }
.sr-combination-card:hover { transform:translateY(-2px); box-shadow:0 14px 35px rgba(0,0,0,.08); color:var(--sr-ink); text-decoration:none; }
.sr-combination-card span[uk-icon] { color:var(--sr-gold-dark); margin-bottom:18px; }
@media (max-width: 959px) { .sr-space-meta { grid-template-columns:1fr; } .sr-filter-panel { padding:18px; } .sr-modal-image { min-height:240px; } }

/* Homepage responsive image elements */
.sr-hero {
  position: relative;
  overflow: hidden;
  background: #314532;
}

.sr-hero > .uk-container {
  position: relative;
  z-index: 2;
}

.sr-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.sr-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(31, 41, 51, .88), rgba(31, 41, 51, .58) 48%, rgba(31, 41, 51, .28)),
    linear-gradient(0deg, rgba(45, 36, 29, .46), rgba(45, 36, 29, .08));
}

.sr-hero-media picture,
.sr-hero-media img {
  width: 100%;
  height: 100%;
  display: block;
}

.sr-hero-media img {
  object-fit: cover;
  object-position: center;
}

.sr-image-card.has-image,
.sr-card-img.has-image {
  position: relative;
  overflow: hidden;
  background: #d6c4aa;
}

.sr-image-card.has-image picture,
.sr-card-img.has-image picture {
  position: absolute;
  inset: 0;
  display: block;
}

.sr-image-card.has-image img,
.sr-card-img.has-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.sr-dark-card-with-image {
  overflow: hidden;
}

.sr-dark-card-media {
  height: 170px;
  margin: -30px -30px 24px;
  background: rgba(255,255,255,.08);
  overflow: hidden;
}

.sr-dark-card-media picture,
.sr-dark-card-media img {
  width: 100%;
  height: 100%;
  display: block;
}

.sr-dark-card-media img {
  object-fit: cover;
  object-position: center;
}

@media (max-width: 639px) {
  .sr-hero-media::after {
    background:
      linear-gradient(90deg, rgba(31, 41, 51, .93), rgba(31, 41, 51, .72)),
      linear-gradient(0deg, rgba(45, 36, 29, .52), rgba(45, 36, 29, .18));
  }
}

/* Subpage responsive image elements */
.sr-sub-hero-image {
  position: relative;
  overflow: hidden;
  background: #314532;
}

.sr-sub-hero-image > .uk-container {
  position: relative;
  z-index: 2;
}

.sr-sub-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.sr-sub-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(31, 41, 51, .88), rgba(31, 41, 51, .58) 48%, rgba(31, 41, 51, .25)),
    linear-gradient(0deg, rgba(45, 36, 29, .42), rgba(45, 36, 29, .08));
}

.sr-sub-hero-media picture,
.sr-sub-hero-media img {
  width: 100%;
  height: 100%;
  display: block;
}

.sr-sub-hero-media img {
  object-fit: cover;
  object-position: center;
}

.sr-premium-img.has-image,
.sr-split-image.has-image,
.sr-gallery-tile.has-image {
  position: relative;
  overflow: hidden;
  background: #d6c4aa;
}

.sr-premium-img.has-image picture,
.sr-split-image.has-image picture,
.sr-gallery-tile.has-image picture {
  position: absolute;
  inset: 0;
  display: block;
}

.sr-premium-img.has-image img,
.sr-split-image.has-image img,
.sr-gallery-tile.has-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

@media (max-width: 639px) {
  .sr-sub-hero-media::after {
    background:
      linear-gradient(90deg, rgba(31, 41, 51, .94), rgba(31, 41, 51, .74)),
      linear-gradient(0deg, rgba(45, 36, 29, .52), rgba(45, 36, 29, .18));
  }
}
@media (max-width: 639px) {
  .header-brand-mark {
    width: 34px;
    height: 49px;
  }

  .header-brand-text {
    font-size: 15px;
  }

  .footer-brand-mark {
    width: 48px;
    height: 70px;
  }
}

