/* Minimal replacement for WordPress core block CSS + this site's block-editor
   color usage, so content authored in Gutenberg still renders correctly once
   served as static HTML (no wp-includes/css/dist/block-library present). */

.wp-block-group { padding-left: 0; padding-right: 0; }
.wp-block-heading { margin: 0 0 0.6em; line-height: 1.2; }
.has-text-align-center { text-align: center; }

/* Plain inline links in page content (e.g. the 404 page's helpful-links
   list) — without this they fall back to the browser default blue/underline,
   which clashes with the rest of the site's styling. */
.sh-main a:not(.wp-block-button__link) {
  color: #FF5733;
  text-decoration: underline;
}
.sh-main a:not(.wp-block-button__link):hover { color: #e24c2d; }

.wp-block-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
  margin: 0 0 1.5em;
}
.wp-block-column { flex: 1 1 0; min-width: 240px; }

.wp-block-buttons { display: flex; gap: 12px; flex-wrap: wrap; }
.wp-block-buttons[style*="center"],
.wp-block-group .wp-block-buttons { justify-content: center; }

.wp-block-button__link,
.wp-element-button {
  display: inline-block;
  text-decoration: none;
  color: #ffffff;
  font-weight: 500;
}
.is-style-outline .wp-block-button__link {
  background-color: transparent;
  border: 2px solid currentColor;
  color: inherit;
}

.has-background { }
.has-primary-background-color { background-color: #FF5733; }
.has-white-color { color: #ffffff; }
.has-1-b-2-e-35-color { color: #1b2e35; }

.wp-block-quote {
  border-left: 4px solid #FF5733;
  margin: 0 0 1.5em;
  padding-left: 1.2em;
  font-style: italic;
}
.wp-block-quote cite {
  display: block;
  margin-top: 0.5em;
  font-style: normal;
  opacity: 0.75;
}

.wp-block-list { margin: 0 0 1.2em; padding-left: 1.4em; }
.wp-block-list li { margin-bottom: 0.4em; }

.wp-block-image { margin: 0 0 1em; }
.wp-block-image img { max-width: 100%; height: auto; display: block; }
.wp-block-image.aligncenter,
figure.aligncenter { margin-left: auto; margin-right: auto; text-align: center; }

.wp-block-paragraph,
p { line-height: 1.6; }

/* Contact / booking forms */
.sh-form-wrap { max-width: 560px; margin: 0 auto; }
.sh-form { display: flex; flex-direction: column; gap: 14px; }
.sh-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 500; }
.sh-form input,
.sh-form select,
.sh-form textarea {
  padding: 10px 12px;
  border: 1px solid #cccccc;
  border-radius: 4px;
  font: inherit;
}
.sh-form button { align-self: flex-start; cursor: pointer; }
.sh-form-status { min-height: 1.2em; font-weight: 500; }

.sh-nav-list li.is-current a { color: #FF5733; }

/* Landing hero: centered logo, minimalist, dark section */
.sh-hero {
  background: #1b2e35;
  padding: 100px 20px;
  text-align: center;
}
.sh-hero-inner { max-width: 720px; margin: 0 auto; }
.sh-hero-logo-wrap {
  display: inline-block;
  background: #ffffff;
  border-radius: 24px;
  padding: 24px 40px;
  margin-bottom: 36px;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.25);
}
.sh-hero-logo {
  display: block;
  width: 340px;
  max-width: 75vw;
  height: auto;
}
.sh-hero-tagline {
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 300;
  letter-spacing: 0.01em;
  margin: 0 0 14px;
}
.sh-hero-sub {
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.05rem;
  max-width: 480px;
  margin: 0 auto 36px;
}
.sh-hero-actions.wp-block-buttons { justify-content: center; }
.sh-hero .is-style-outline .wp-block-button__link { color: #ffffff; }
