/* ============================================================
   ACCOMMODATION PAGE
   ============================================================ */

/* ── Philosophy ── */
.accom-philosophy {
  font-family: var(--font-display);
  font-size: var(--t-h4);
  font-weight: 400;
  line-height: var(--leading-body);
  color: var(--bc-charcoal);
  margin-top: var(--sp-6);
  max-width: none;
}

/* ── Split layouts ── */
.accom-split {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: var(--sp-16);
  align-items: center;
}
.accom-split--flipped {
  grid-template-columns: 1fr 1.1fr;
}
@media (max-width: 900px) {
  .accom-split,
  .accom-split--flipped {
    grid-template-columns: 1fr;
    gap: var(--sp-8);
  }
  .accom-split--flipped .accom-media { order: -1; }
}
.accom-placeholder {
  aspect-ratio: 4 / 3;
  width: 100%;
}

/* ── Spec lists ── */
.accom-spec-list {
  display: flex;
  flex-direction: column;
  gap: var(--sp-4);
  margin-top: var(--sp-6);
}
.accom-spec-list li {
  display: flex;
  align-items: center;
  gap: var(--sp-4);
  font-size: var(--t-small);
  color: var(--bc-charcoal);
  padding-bottom: var(--sp-4);
  border-bottom: 1px solid var(--bc-border);
}
.accom-spec-list li:last-child {
  border-bottom: none;
}
.accom-spec-list svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--bc-gold);
}

/* ── Safety ── */
.accom-safety {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-10);
}
@media (max-width: 640px) {
  .accom-safety { grid-template-columns: 1fr; }
}
.accom-safety-item {
  border-top: 1px solid var(--bc-border-strong);
  padding-top: var(--sp-5);
}
.accom-safety-item h3 {
  font-size: var(--t-h4);
  margin-bottom: var(--sp-2);
}
.accom-safety-item p {
  font-size: var(--t-small);
  color: var(--bc-mid);
}

/* ── Feature grid ── */
.accom-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-8);
}
@media (max-width: 900px) {
  .accom-feature-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .accom-feature-grid { grid-template-columns: 1fr; }
}
.accom-feature {
  background: var(--bc-white);
  border: 1px solid var(--bc-border);
  border-radius: var(--radius-md);
  padding: var(--sp-8);
}
.accom-feature svg {
  width: 24px;
  height: 24px;
  color: var(--bc-gold);
  margin-bottom: var(--sp-4);
}
.accom-feature h3 {
  font-size: var(--t-h4);
  margin-bottom: var(--sp-2);
}
.accom-feature p {
  font-size: var(--t-small);
  color: var(--bc-mid);
}

/* ── Location context ── */
.section--dark h2 {
  margin-block: var(--sp-4) var(--sp-6);
}
.section--dark .btn {
  margin-top: var(--sp-4);
}
