:root {
  --deluxe-black: #100006;
  --deluxe-black-2: #1d0209;
  --deluxe-red: #8f0718;
  --deluxe-red-bright: #d71935;
  --deluxe-wine: #42000d;
  --deluxe-gold: #d8b05a;
  --deluxe-gold-soft: #f5df9a;
  --deluxe-cream: #fff8ee;
  --deluxe-muted: #e9cfc6;
  --deluxe-card: rgba(24, 4, 9, .88);
  --deluxe-border: rgba(216,176,90,.38);
  --deluxe-shadow: 0 24px 70px rgba(0,0,0,.42);
  --deluxe-radius: 28px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0 !important;
  min-height: 100vh;
  color: var(--deluxe-cream) !important;
  font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 17px;
  line-height: 1.65;
  background:
    radial-gradient(circle at 50% 4%, rgba(255,56,86,.36) 0 13%, rgba(143,7,24,.22) 26%, transparent 44%),
    radial-gradient(circle at 50% 42%, rgba(216,176,90,.12) 0 12%, transparent 34%),
    linear-gradient(135deg, #070004 0%, #29000a 34%, #7d0717 63%, #160005 100%) !important;
  background-attachment: fixed !important;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  opacity: .16;
  background-image: url('deluxe-luxury-ship-bg.svg');
  background-repeat: no-repeat;
  background-position: center top 78px;
  background-size: min(1120px, 94vw) auto;
  filter: drop-shadow(0 18px 34px rgba(0,0,0,.8));
}
a { color: var(--deluxe-gold-soft) !important; text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover, a:focus { color: #fff !important; }
img { max-width: 100%; height: auto; border-radius: 16px; }
table { max-width: 100% !important; }
td, th { line-height: 1.48; }
body table, body center, body p, body h1, body h2, body h3, body h4, body h5, body h6 {
  color: inherit;
}
.deluxe-skip-link {
  position:absolute; left:-999px; top:8px; background:#fff; color:#160005 !important; padding:10px 14px; z-index:9999; border-radius:8px;
}
.deluxe-skip-link:focus { left: 12px; }
.deluxe-contact-bar {
  width: 100%;
  padding: 11px 18px;
  text-align: center;
  font-weight: 700;
  letter-spacing: .02em;
  background: linear-gradient(90deg, #230005, #a6091f, #230005);
  color: #fff;
  border-bottom: 1px solid var(--deluxe-border);
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
.deluxe-contact-bar a { color: #fff8d7 !important; text-decoration: none; }
.deluxe-hero {
  max-width: 1180px;
  margin: 32px auto 22px;
  padding: clamp(28px, 5vw, 62px);
  border: 1px solid var(--deluxe-border);
  border-radius: var(--deluxe-radius);
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,0)),
    radial-gradient(circle at 80% 0%, rgba(255,50,82,.25), transparent 38%),
    rgba(20,0,7,.88);
  box-shadow: var(--deluxe-shadow);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.deluxe-hero::before {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: calc(var(--deluxe-radius) - 12px);
  border: 1px solid rgba(216,176,90,.20);
  pointer-events: none;
}
.deluxe-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 15px;
  margin-bottom: 18px;
  border-radius: 999px;
  color: var(--deluxe-gold-soft);
  background: rgba(216,176,90,.11);
  border: 1px solid rgba(216,176,90,.36);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .16em;
}
.deluxe-hero h1 {
  margin: 0 auto 18px !important;
  max-width: 980px;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 5vw, 68px) !important;
  line-height: 1.06 !important;
  font-weight: 500 !important;
  letter-spacing: -.03em;
  text-shadow: 0 8px 38px rgba(0,0,0,.55);
}
.deluxe-hero p {
  max-width: 900px;
  margin: 0 auto 24px !important;
  color: var(--deluxe-muted) !important;
  font-size: clamp(17px, 2vw, 22px) !important;
}
.deluxe-cta-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 22px;
}
.deluxe-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 22px;
  border-radius: 999px;
  border: 1px solid rgba(216,176,90,.55);
  text-decoration: none !important;
  font-weight: 800;
  letter-spacing: .02em;
  box-shadow: 0 12px 28px rgba(0,0,0,.28);
}
.deluxe-button-primary { background: linear-gradient(135deg, #d71935, #7d0717); color: #fff !important; }
.deluxe-button-secondary { background: rgba(255,255,255,.08); color: var(--deluxe-gold-soft) !important; }
.deluxe-page-shell {
  max-width: 1180px;
  margin: 0 auto 28px;
  padding: clamp(18px, 3vw, 34px);
  border-radius: 24px;
  border: 1px solid rgba(216,176,90,.22);
  background: rgba(255,248,238,.96);
  color: #1d0209 !important;
  box-shadow: var(--deluxe-shadow);
  overflow-x: auto;
}
.deluxe-page-shell * { max-width: 100%; }
.deluxe-page-shell, .deluxe-page-shell td, .deluxe-page-shell th, .deluxe-page-shell p, .deluxe-page-shell li, .deluxe-page-shell div, .deluxe-page-shell span {
  color: #1d0209 !important;
}
.deluxe-page-shell h1, .deluxe-page-shell h2, .deluxe-page-shell h3, .deluxe-page-shell h4 {
  color: #7d0717 !important;
  font-family: Georgia, "Times New Roman", serif !important;
}
.deluxe-page-shell a { color: #8f0718 !important; font-weight: 700; }
.deluxe-page-shell table {
  margin-left: auto !important;
  margin-right: auto !important;
  border-collapse: collapse;
}
.deluxe-page-shell td, .deluxe-page-shell th {
  border-color: rgba(125,7,23,.20) !important;
}
.deluxe-upgrade, .deluxe-final-cta, .deluxe-footer {
  max-width: 1180px;
  margin: 28px auto;
  padding: clamp(22px, 4vw, 42px);
  border-radius: var(--deluxe-radius);
  border: 1px solid var(--deluxe-border);
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.02)),
    rgba(16,0,6,.90);
  box-shadow: var(--deluxe-shadow);
  color: var(--deluxe-cream);
}
.deluxe-upgrade h2, .deluxe-final-cta h2, .deluxe-footer h2 {
  margin: 0 0 14px !important;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(26px, 3vw, 42px) !important;
  line-height: 1.12;
}
.deluxe-upgrade p, .deluxe-final-cta p, .deluxe-footer p, .deluxe-upgrade li {
  color: var(--deluxe-muted) !important;
}
.deluxe-luxury-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}
.deluxe-card {
  padding: 19px;
  border-radius: 18px;
  border: 1px solid rgba(216,176,90,.25);
  background: rgba(255,255,255,.055);
}
.deluxe-card strong { color: #fff !important; display: block; margin-bottom: 7px; }
.deluxe-faq details {
  margin-top: 12px;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid rgba(216,176,90,.22);
  background: rgba(255,255,255,.045);
}
.deluxe-faq summary { cursor: pointer; color: #fff; font-weight: 800; }
.deluxe-contact-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-top: 18px;
}
.deluxe-contact-pill {
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(216,176,90,.35);
  background: rgba(255,255,255,.065);
  color: var(--deluxe-gold-soft) !important;
  text-decoration: none !important;
  font-weight: 800;
}
.deluxe-footer { text-align: center; margin-bottom: 0; border-radius: 28px 28px 0 0; }
@media (max-width: 760px) {
  body { font-size: 16px; }
  .deluxe-hero, .deluxe-upgrade, .deluxe-final-cta, .deluxe-footer, .deluxe-page-shell { margin-left: 12px; margin-right: 12px; }
  .deluxe-luxury-grid { grid-template-columns: 1fr; }
  .deluxe-contact-bar { font-size: 14px; }
}