/* Warm, editorial light theme */
:root {
	--color-bg: #f7f2e8;
	--color-bg-alt: #efe7d8;
	--color-surface: #fffdfa;
	--color-surface-soft: #f8f1e6;
	--color-surface-elevated: #ffffff;
	--color-text: #263544;
	--color-text-muted: #66717a;
	--color-primary: #285a78;
	--color-primary-soft: #dce8ea;
	--color-primary-contrast: #243441;
	--color-accent-brass: #a97838;
	--color-accent-brass-soft: #966a30;
	--color-border-subtle: rgba(91, 68, 35, 0.13);
	--color-border-strong: rgba(91, 68, 35, 0.22);
	--gray-50: #fffdfa;
	--gray-100: #f4ecdf;
	--gray-200: #e5d9c7;
	--gray-300: #b8aa97;
	--gray-400: #827867;
	--gray-500: #665e53;
	--gray-600: #514a41;
	--gray-700: #3d3933;
	--gray-800: #2e302e;
	--gray-900: #202724;
	--shadow-soft: 0 16px 40px rgba(74, 53, 25, 0.10);
	--shadow-subtle: 0 10px 28px rgba(74, 53, 25, 0.08);
	--shadow-sharp: 0 0 0 1px rgba(91, 68, 35, 0.06), 0 24px 60px rgba(74, 53, 25, 0.13);
	--shadow-focus: 0 0 0 2px rgba(255, 253, 250, 0.9), 0 0 0 5px rgba(169, 120, 56, 0.36);
}

body {
	background: radial-gradient(circle at 12% -15%, #fffdf8 0, #f7f2e8 43%, #efe6d6 100%) !important;
}

h1, h2, h3, h4, h5, h6, strong, b { color: var(--color-primary-contrast); }

.btn {
	border-color: rgba(38, 73, 93, 0.18);
	background: linear-gradient(135deg, #326b8b, #234e69);
	color: #fffdfa;
	box-shadow: 0 12px 26px rgba(35, 78, 105, 0.20);
}
.btn:hover { background: linear-gradient(135deg, #3b789b, #285a78); box-shadow: 0 16px 30px rgba(35, 78, 105, 0.25); }
.btn-ghost { background: rgba(255, 253, 248, 0.86); border-color: rgba(91, 68, 35, 0.2); color: var(--color-primary-contrast); box-shadow: var(--shadow-subtle); }
.btn-ghost:hover { background: #fffdfa; border-color: var(--color-accent-brass); }
.btn-brass { background: linear-gradient(135deg, #c49554, #a97838); color: #fffdf8 !important; border-color: rgba(255,255,255,.72); box-shadow: 0 12px 28px rgba(144, 99, 39, .22); }

.input, .select, .textarea { background: rgba(255, 253, 250, .92); color: var(--color-text); border-color: var(--color-border-strong); }
.input:focus-visible, .select:focus-visible, .textarea:focus-visible { background: #fffdfa; }
.card { background: linear-gradient(145deg, #fffefa, #f8f0e4) !important; }
.card-soft { background: linear-gradient(145deg, #fffefa, #f4eadc) !important; border-color: var(--color-border-subtle); }
.card-brass-edge { background: linear-gradient(145deg, #fffdf8, #f5e9d8) !important; }
.badge { color: #875d29; background: #fffaf1; border-color: rgba(169, 120, 56, .45); }
.badge-soft { color: var(--color-text-muted); background: #f8f1e6; border-color: var(--color-border-subtle); }

.wcg-header { background: rgba(255, 252, 246, .88) !important; border-color: var(--color-border-subtle); box-shadow: 0 3px 18px rgba(74, 53, 25, .05); }
.wcg-header-logo-mark { background: conic-gradient(from 160deg, #c49554, #75a3b5, #326b8b, #c49554); box-shadow: 0 8px 18px rgba(74, 53, 25, .16); }
.wcg-header-logo-mark::after { background: radial-gradient(circle at 30% 10%, #fffdf8, #e6d8c0); border-color: rgba(91, 68, 35, .15); }
.wcg-header-toggle { background: #fffdfa; border-color: var(--color-border-strong); box-shadow: var(--shadow-subtle); }
.wcg-header-toggle-bar { background: var(--color-primary-contrast); }
.wcg-header-nav-overlay { background: rgba(55, 45, 32, .25); }
@media (max-width: 960px) { .wcg-header-nav.is-open .wcg-header-nav-list { background: #fffaf2 !important; border-color: var(--color-border-subtle); } }

.wcg-footer { background: linear-gradient(160deg, #f0e6d6, #e8dcc9) !important; }
.wcg-footer-logo-mark { background: radial-gradient(circle at 30% 0, #fffdf8, #c49554 45%, #d9c8ad 100%); box-shadow: 0 8px 18px rgba(74,53,25,.14); }
.wcg-footer-heading { color: var(--color-primary-contrast); }
.wcg-footer-bottom { border-color: var(--color-border-subtle); }
.wcg-cookie-banner { background: linear-gradient(145deg, #fffdf8, #f2e6d3) !important; border-color: rgba(169,120,56,.48); box-shadow: 0 -12px 34px rgba(74,53,25,.14); }

/* Page-specific dark panels, ribbons and sections */
.hero-entertainment, .dining-hero, .activities-hero, .thankyou-main,
.wellness-hero, .casinos-hero, .activities-cta-final,
.activities-section-alt, .casinos-section-alt, .casinos-crosslinks,
.dining-section-alt, .ships-hero, .suites-hero, .decks-hero {
	background: radial-gradient(circle at top left, #fffdf8 0, #f7f0e5 52%, #eee2cf 100%) !important;
}
.cabins-breadcrumb, .dining-breadcrumbs, .activities-subnav, .casinos-local-nav,
.ships-local-nav, .suites-local-nav, .decks-local-nav {
	background: rgba(255, 252, 246, .92) !important;
	border-color: var(--color-border-subtle);
}
.activities-subnav-link { background: #f8f0e5; color: var(--color-text-muted); }
.activities-subnav-link:hover { color: var(--color-primary-contrast); background: #fffdfa; }
.activities-subnav-link.is-active { color: #fffdfa; background: linear-gradient(135deg, #c49554, #a97838); }
.activities-hero-figure, .activities-media-figure, .wellness-figure,
.hero-entertainment-figure, .dining-media-placeholder-inner {
	background: linear-gradient(145deg, #fffefa, #f3e7d6) !important;
}
.activities-hero-figure figcaption, .activities-media-figure figcaption { background: #f8f0e5 !important; }

main [class*="meta-item"], main [class*="pill"], main [class*="status"] { border-color: var(--color-border-subtle); }
main [class*="meta-item"] { background-color: rgba(255, 253, 250, .72); }

::selection { background: #dcc294; color: #273744; }
