/* ============================================================================
   HAMIA — Location page (ported from location.astro, adapted to block DOM).
   Enqueued only on the Location page. Shared hero: .hamia-page-hero (style.css).
   ========================================================================== */

/* ── Section header (shared) ── */
.hamia-section-header { text-align: center; max-width: 700px; margin: 0 auto var(--space-xl); }
.hamia-section-header h2 { font-size: var(--text-3xl); margin-bottom: var(--space-md); }
.hamia-section-header__desc { color: var(--color-warm-gray); line-height: 1.7; margin: 0; }
.hamia-divider.wp-block-separator {
  width: 60px !important; max-width: 60px; height: 2px; background: var(--color-terracotta);
  border: none; opacity: 1; margin: var(--space-sm) auto var(--space-md);
}

/* ── Where We Are (split) ── */
.hamia-where.wp-block-group { background: var(--color-cream); padding-block: var(--space-2xl); }
.hamia-where .wp-block-columns { align-items: center; gap: var(--space-xl); }
.hamia-where__content.wp-block-column,
.hamia-where__img.wp-block-column { flex: 1 1 50% !important; }
.hamia-where__content h2 { font-size: var(--text-3xl); text-align: left; margin-bottom: var(--space-md); }
.hamia-where__content .hamia-label { text-align: left; }
.hamia-where__content .hamia-divider { margin-inline: 0; }
.hamia-where__content p { color: var(--color-warm-gray); line-height: 1.7; margin-bottom: var(--space-md); }
.hamia-where__img .wp-block-image { margin: 0; }
.hamia-where__img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-xl); display: block; }
@media (max-width: 768px) { .hamia-where .wp-block-columns { flex-direction: column; } }

/* ── Nearby Beaches ── */
.hamia-beaches.wp-block-group { background: var(--color-sand-light); padding-block: var(--space-2xl); }
.hamia-beaches-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-lg); }
.hamia-beach-card { display: flex; flex-direction: column; background: #fff; border-radius: var(--radius-lg); padding: var(--space-lg); box-shadow: var(--shadow-sm); }
.hamia-beach-card__title { font-size: var(--text-xl); margin: 0 0 var(--space-xs); }
.hamia-beach-card__meta { font-family: var(--font-accent); font-size: var(--text-sm); color: var(--color-terracotta); margin: 0 0 var(--space-sm); }
.hamia-beach-card__text { color: var(--color-warm-gray); line-height: 1.7; margin: 0 0 var(--space-md); flex: 1; }
.hamia-directions-link { display: block; text-decoration: none; border-radius: var(--radius-lg); overflow: hidden; transition: box-shadow 0.2s ease; }
.hamia-directions-link:hover { box-shadow: var(--shadow-md); }
.hamia-directions-img { width: 100%; height: auto; display: block; border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
.hamia-directions-cta { display: block; padding: var(--space-sm) var(--space-md); background: var(--color-ocean); color: #fff; font-family: var(--font-accent); font-size: var(--text-sm); text-align: center; border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
.hamia-directions-link:hover .hamia-directions-cta { background: var(--color-ocean-dark); }
@media (max-width: 768px) { .hamia-beaches-grid { grid-template-columns: 1fr; } }

/* ── Transport ── */
.hamia-transport.wp-block-group { background: var(--color-cream); padding-block: var(--space-2xl); }
.hamia-transport-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); }
.hamia-transport-card { padding: var(--space-xl); background: var(--color-sand-light); border-radius: var(--radius-lg); }
.hamia-transport-card__title { font-size: var(--text-xl); margin: 0 0 var(--space-sm); }
.hamia-transport-card__text { color: var(--color-warm-gray); line-height: 1.6; margin: 0; }
@media (max-width: 900px) { .hamia-transport-grid { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; } }

/* ── Map ── */
.hamia-map.wp-block-group { background: var(--color-sand-light); padding-block: var(--space-2xl); }
.hamia-map-container { border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-md); line-height: 0; }
.hamia-map-container iframe { display: block; width: 100%; height: 450px; border: 0; }

/* ── CTA (core Cover, mirrors home/rooms) ── */
.hamia-cta.wp-block-cover { padding-block: var(--space-3xl); }
.hamia-cta .wp-block-cover__inner-container { text-align: center; max-width: 760px; margin-inline: auto; padding-inline: var(--gutter); }
.hamia-cta .wp-block-cover__inner-container, .hamia-cta .wp-block-cover__inner-container p { color: #fff; }
.hamia-cta__title { font-size: var(--text-3xl); color: #fff; margin-bottom: var(--space-md); }
.hamia-cta__text { font-size: var(--text-lg); color: rgba(255,255,255,.85); margin-bottom: var(--space-xl); }
.hamia-cta__actions { justify-content: center; gap: var(--space-md); }
