/*
 * Elite Business Cruises visual layer.
 *
 * This file is intentionally presentation-only: it adds palette, surfaces,
 * spacing rhythm, and depth without changing any page copy or links.
 */
:root {
  --ebc-visual-navy: #0d1f45;
  --ebc-visual-blue: #0082cc;
  --ebc-visual-orange: #ff3b18;
  --ebc-visual-ink: #172033;
  --ebc-visual-soft: #f4f9fd;
  --ebc-visual-line: rgba(13, 31, 69, 0.14);
  --ebc-visual-shadow: 0 18px 48px rgba(13, 31, 69, 0.09);
}

html {
  background: var(--ebc-visual-soft);
}

body {
  background:
    radial-gradient(circle at 7% 4%, rgba(0, 130, 204, 0.10), transparent 26rem),
    radial-gradient(circle at 94% 34%, rgba(255, 59, 24, 0.06), transparent 22rem),
    linear-gradient(180deg, #ffffff 0, #f4f9fd 34rem, #ffffff 100%) !important;
  color: var(--ebc-visual-ink);
}

/* The exported home pages contain a fixed background layer. Give it a quiet
   blue-to-white wash so the page has depth without bringing back the photo. */
.bg-fixed {
  background-image:
    radial-gradient(circle at 18% 22%, rgba(0, 130, 204, 0.12), transparent 30rem),
    linear-gradient(135deg, #ffffff 0%, #f4f9fd 58%, #ffffff 100%) !important;
  background-color: var(--ebc-visual-soft) !important;
  opacity: 1 !important;
}

.bg-fixed::before {
  background-image: linear-gradient(120deg, rgba(255, 255, 255, 0.72), rgba(244, 249, 253, 0.18)) !important;
  background-color: transparent !important;
  opacity: 1 !important;
}

/* The custom content blocks already carry the approved type and wording. Add
   a shared card language around them so long pages are easier to scan. */
[class*="ebc-"][class*="-wrap"],
[class*="ebc-"][class*="-page"] {
  background:
    radial-gradient(circle at 96% 4%, rgba(0, 130, 204, 0.10), transparent 22rem),
    linear-gradient(145deg, #ffffff 0%, #f4f9fd 54%, #ffffff 100%) !important;
  border-radius: 24px;
  border: 1px solid rgba(13, 31, 69, 0.10) !important;
  box-shadow: var(--ebc-visual-shadow);
}

/* Blog articles use their own exported panel classes. Make the article frame
   visible around the copy so it does not read as one long white block. */
.ebc-blog-outer {
  background:
    radial-gradient(circle at 8% 8%, rgba(0, 130, 204, 0.14), transparent 22rem),
    linear-gradient(135deg, #f4f9fd 0%, #e8f3fb 52%, #ffffff 100%) !important;
  border-top: 4px solid var(--ebc-visual-orange) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 42px rgba(13, 31, 69, 0.10) !important;
}

.ebc-blog-panel {
  background: #ffffff !important;
  border: 1px solid rgba(0, 130, 204, 0.22) !important;
  border-top: 5px solid var(--ebc-visual-blue) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 45px rgba(13, 31, 69, 0.14) !important;
}

/* The exported GHL shell surrounds each custom content block with a plain
   white section. Give those content-bearing sections alternating soft bands
   while leaving the navigation shell alone. */
#preview-container .c-section:has([class*="ebc-"]):not(:has(.c-nav-menu)) {
  background:
    linear-gradient(135deg, rgba(244, 249, 253, 0.94), rgba(255, 255, 255, 0.98)) !important;
  border-top: 1px solid rgba(0, 130, 204, 0.12) !important;
  border-bottom: 1px solid rgba(13, 31, 69, 0.06) !important;
}

#preview-container .c-section:has([class*="ebc-"]):nth-of-type(even):not(:has(.c-nav-menu)) {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(255, 247, 244, 0.92)) !important;
}

[class*="ebc-"][class*="-hero"] {
  background:
    linear-gradient(135deg, rgba(244, 249, 253, 0.96), rgba(255, 255, 255, 0.98)) !important;
  border: 1px solid var(--ebc-visual-line) !important;
  border-top: 4px solid var(--ebc-visual-blue) !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 36px rgba(13, 31, 69, 0.07) !important;
}

[class*="ebc-"][class*="-section"],
[class*="ebc-"][class*="-toc"],
[class*="ebc-"][class*="-note"],
[class*="ebc-"][class*="-alert"],
[class*="ebc-"][class*="-related"] {
  background: rgba(255, 255, 255, 0.86) !important;
  border-color: var(--ebc-visual-line) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(13, 31, 69, 0.055) !important;
}

[class*="ebc-"][class*="-card"],
[class*="ebc-"][class*="-item"],
[class*="ebc-"][class*="-step"] {
  background: #ffffff !important;
  border-color: rgba(0, 130, 204, 0.25) !important;
  border-radius: 16px !important;
  box-shadow: 0 9px 24px rgba(13, 31, 69, 0.065) !important;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

[class*="ebc-"][class*="-card"]:hover,
[class*="ebc-"][class*="-item"]:hover,
[class*="ebc-"][class*="-step"]:hover {
  border-color: rgba(0, 130, 204, 0.50) !important;
  box-shadow: 0 14px 30px rgba(13, 31, 69, 0.11) !important;
  transform: translateY(-2px);
}

/* Navy panels and calls to action form the visual anchors on each page. */
[class*="ebc-"][class*="-dark-"],
[class*="ebc-"][class*="-cta"],
[class*="ebc-"][class*="-callout"] {
  background:
    radial-gradient(circle at 92% 12%, rgba(0, 130, 204, 0.28), transparent 20rem),
    linear-gradient(135deg, #0d1f45, #17396b) !important;
  border-color: rgba(0, 130, 204, 0.56) !important;
  border-radius: 18px !important;
  box-shadow: 0 20px 42px rgba(13, 31, 69, 0.18) !important;
  color: #ffffff !important;
  position: relative;
  overflow: hidden;
}

[class*="ebc-"][class*="-dark-"] *,
[class*="ebc-"][class*="-cta"] *,
[class*="ebc-"][class*="-callout"] * {
  color: #ffffff !important;
}

[class*="ebc-"][class*="-dark-"] a,
[class*="ebc-"][class*="-cta"] a,
[class*="ebc-"][class*="-callout"] a {
  color: #ffffff !important;
}

/* The accent line keeps the white sections tied to the navy/blue/orange palette. */
[class*="ebc-"][class*="-section"]::before,
[class*="ebc-"][class*="-toc"]::before {
  background: var(--ebc-visual-orange);
  border-radius: 999px;
  content: "";
  display: block;
  height: 4px;
  margin-bottom: 18px;
  width: 46px;
}

[class*="ebc-"][class*="-kicker"],
[class*="ebc-"][class*="-eyebrow"],
[class*="ebc-"][class*="-label"] {
  color: var(--ebc-visual-orange) !important;
}

[class*="ebc-"][class*="-button"] {
  box-shadow: 0 8px 18px rgba(13, 31, 69, 0.12);
  transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

[class*="ebc-"][class*="-button"]:hover,
[class*="ebc-"][class*="-button"]:focus-visible {
  box-shadow: 0 12px 24px rgba(13, 31, 69, 0.19);
  transform: translateY(-2px);
}

@media (max-width: 700px) {
  [class*="ebc-"][class*="-wrap"],
  [class*="ebc-"][class*="-page"] {
    border-radius: 16px;
  }

  [class*="ebc-"][class*="-hero"],
  [class*="ebc-"][class*="-section"],
  [class*="ebc-"][class*="-toc"],
  [class*="ebc-"][class*="-note"],
  [class*="ebc-"][class*="-alert"],
  [class*="ebc-"][class*="-related"],
  [class*="ebc-"][class*="-card"],
  [class*="ebc-"][class*="-item"],
  [class*="ebc-"][class*="-step"],
  [class*="ebc-"][class*="-cta"] {
    border-radius: 14px !important;
  }
}
