/* =====================================================================
   The Peace Center - design system (earth: forest green, gold, brown)
   ===================================================================== */
:root {
	--rms-ink: #2a2118;
	--rms-brown: #4a3728;
	--rms-brown-deep: #1d1610;
	--rms-green: #2f4a34;
	--rms-green-deep: #1d3022;
	--rms-green-soft: #e9efe4;
	--rms-gold: #c9a24e;
	--rms-gold-light: #e6c983;
	--rms-gold-deep: #8f6a1f;
	--rms-sand: #f7f2e8;
	--rms-sand-dark: #e7dcc6;
	--rms-muted: #6b5f52;
	--rms-radius: 18px;
	--rms-shadow: 0 10px 40px rgba(42, 33, 24, 0.08);
	--rms-shadow-lg: 0 24px 60px rgba(42, 33, 24, 0.18);
	--rms-serif: 'Playfair Display', Georgia, serif;
	--rms-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--rms-header-h: 84px;
	/* legacy aliases */
	--rms-terracotta: var(--rms-green);
	--rms-terracotta-dark: var(--rms-green-deep);
	--rms-olive: var(--rms-green);
}

body.rms-front-page, body.rms-page, body.rms-single, body.rms-archive-page {
	margin: 0;
	background: #fffdf9;
	color: var(--rms-ink);
	font-family: var(--rms-sans);
	-webkit-font-smoothing: antialiased;
}
body.rms-archive-page { padding-top: var(--rms-header-h); }
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; }

.rms-container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }

/* ---------- Buttons ---------- */
.rms-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	font-family: var(--rms-sans); font-weight: 600; font-size: 0.95rem; letter-spacing: 0.01em;
	padding: 14px 28px; border-radius: 999px; border: 2px solid transparent;
	cursor: pointer; text-decoration: none; line-height: 1.2;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.rms-btn:hover { transform: translateY(-2px); }
.rms-btn-lg { padding: 17px 34px; font-size: 1rem; }
.rms-btn-primary {
	background: linear-gradient(135deg, var(--rms-gold-light) 0%, var(--rms-gold) 55%, #b58a35 100%);
	color: var(--rms-brown-deep);
	box-shadow: 0 8px 24px rgba(201, 162, 78, 0.35);
}
.rms-btn-primary:hover { color: var(--rms-brown-deep); box-shadow: 0 12px 32px rgba(201, 162, 78, 0.5); }
.rms-btn-outline { background: transparent; border-color: var(--rms-green); color: var(--rms-green); }
.rms-btn-outline:hover { background: var(--rms-green); color: #fff; }
.rms-btn-light { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.85); color: #fff; backdrop-filter: blur(4px); }
.rms-btn-light:hover { background: #fff; color: var(--rms-ink); }
.rms-btn-whatsapp { background: #25d366; color: #fff; }
.rms-btn-whatsapp:hover { background: #1ebe57; color: #fff; }
.rms-btn-block { width: 100%; }

/* ---------- Header ---------- */
.rms-site-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 800;
	background: rgba(255, 253, 249, 0.97); border-bottom: 1px solid var(--rms-sand-dark);
	transition: background 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}
body.admin-bar .rms-site-header { top: 32px; }
.rms-site-header-inner {
	max-width: 1320px; margin: 0 auto; height: var(--rms-header-h);
	display: flex; align-items: center; gap: 24px; padding: 0 28px;
}
.rms-site-logo {
	display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0;
	font-family: var(--rms-serif); font-size: 1.35rem; font-weight: 600; color: var(--rms-green-deep);
	text-decoration: none; letter-spacing: 0.01em;
}
.rms-logo-mark { width: 34px; height: 34px; color: var(--rms-gold); }
.rms-site-nav { flex: 1; display: flex; justify-content: center; }
.rms-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 30px; justify-content: center; }
.rms-menu li { margin: 0; }
.rms-menu a {
	position: relative; font-family: var(--rms-sans); font-weight: 500; font-size: 0.93rem;
	color: var(--rms-ink); text-decoration: none; padding: 6px 0;
}
.rms-menu a::after {
	content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--rms-gold);
	transform: scaleX(0); transform-origin: center; transition: transform 0.25s ease;
}
.rms-menu a:hover::after, .rms-menu .current-menu-item > a::after { transform: scaleX(1); }
.rms-site-header-cta { padding: 11px 22px; font-size: 0.88rem; flex-shrink: 0; }
.rms-nav-cta-mobile, .rms-nav-toggle { display: none; }

/* transparent header over hero images */
body.rms-front-page .rms-site-header:not(.is-scrolled),
body.rms-single .rms-site-header:not(.is-scrolled),
body.rms-page .rms-site-header:not(.is-scrolled) {
	background: linear-gradient(180deg, rgba(20, 15, 10, 0.55) 0%, rgba(20, 15, 10, 0) 100%);
	border-color: transparent;
}
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-site-logo,
body.rms-single .rms-site-header:not(.is-scrolled) .rms-site-logo,
body.rms-page .rms-site-header:not(.is-scrolled) .rms-site-logo,
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-menu a,
body.rms-single .rms-site-header:not(.is-scrolled) .rms-menu a,
body.rms-page .rms-site-header:not(.is-scrolled) .rms-menu a { color: #fff; }
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-nav-toggle span,
body.rms-single .rms-site-header:not(.is-scrolled) .rms-nav-toggle span,
body.rms-page .rms-site-header:not(.is-scrolled) .rms-nav-toggle span { background: #fff; }
.rms-site-header.is-scrolled { box-shadow: 0 6px 30px rgba(42, 33, 24, 0.08); }

/* ---------- Hero ---------- */
.rms-hero, .rms-page-hero {
	position: relative; overflow: hidden; color: #fff;
	background-color: var(--rms-green-deep); background-size: cover; background-position: center;
	display: flex; align-items: center; justify-content: center;
}
.rms-hero { min-height: 92vh; }
.rms-home-hero { min-height: 100vh; }
.rms-page-hero { min-height: 58vh; align-items: flex-end; }
.rms-hero-video {
	position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0;
}
.rms-hero-overlay {
	position: absolute; inset: 0; z-index: 1;
	background:
		radial-gradient(ellipse at center, rgba(20, 15, 10, 0.15) 0%, rgba(20, 15, 10, 0.55) 100%),
		linear-gradient(180deg, rgba(20, 15, 10, 0.25) 0%, rgba(20, 15, 10, 0.1) 40%, rgba(29, 22, 16, 0.75) 100%);
}
.rms-hero-content {
	position: relative; z-index: 2; max-width: 980px; margin: 0 auto;
	padding: calc(var(--rms-header-h) + 40px) 24px 90px; text-align: center;
}
.rms-page-hero .rms-hero-content { padding-bottom: 64px; }
.rms-hero-content h1, .rms-page-hero h1 {
	font-family: var(--rms-serif); font-weight: 500; line-height: 1.08; margin: 0 0 18px;
	font-size: clamp(2.4rem, 6vw, 4.6rem); letter-spacing: -0.01em;
	text-shadow: 0 2px 30px rgba(0, 0, 0, 0.25);
}
.rms-home-hero h1 { font-size: clamp(2.8rem, 8vw, 6.2rem); }
.rms-page-hero h1 { font-size: clamp(2.2rem, 5vw, 3.8rem); }
.rms-hero-eyebrow {
	font-family: var(--rms-sans); text-transform: uppercase; letter-spacing: 0.28em;
	font-size: 0.78rem; font-weight: 600; margin: 0 0 22px; color: var(--rms-gold-light);
}
.rms-hero-subtitle {
	font-family: var(--rms-serif); font-style: italic; font-weight: 400;
	font-size: clamp(1.1rem, 2.2vw, 1.45rem); margin: 0 auto 26px; max-width: 720px; opacity: 0.95;
}
.rms-hero-tags { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 0 0 30px; }
.rms-hero-tags span {
	font-size: 0.78rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase;
	padding: 6px 14px; border-radius: 999px; border: 1px solid rgba(230, 201, 131, 0.6); color: var(--rms-gold-light);
	background: rgba(29, 22, 16, 0.25);
}
.rms-hero-cta { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.rms-scroll-cue {
	position: absolute; left: 50%; bottom: 28px; z-index: 2; width: 26px; height: 42px; margin-left: -13px;
	border: 2px solid rgba(255, 255, 255, 0.7); border-radius: 14px;
}
.rms-scroll-cue::after {
	content: ''; position: absolute; left: 50%; top: 8px; width: 4px; height: 8px; margin-left: -2px;
	border-radius: 2px; background: #fff; animation: rms-scroll 1.8s infinite;
}
@keyframes rms-scroll { 0% { opacity: 0; transform: translateY(0); } 40% { opacity: 1; } 100% { opacity: 0; transform: translateY(14px); } }
.rms-retreat-hero .rms-scroll-cue { bottom: 110px; }

/* legacy meta line */
.rms-hero-meta { font-size: 0.9rem; letter-spacing: 0.08em; text-transform: uppercase; margin: 0 0 24px; opacity: 0.9; }
.rms-hero-meta span { margin: 0 10px; }

/* ---------- Ticker ---------- */
.rms-ticker { background: var(--rms-green-deep); color: var(--rms-gold-light); overflow: hidden; white-space: nowrap; padding: 18px 0; }
.rms-ticker-track { display: inline-flex; animation: rms-marquee 45s linear infinite; }
.rms-ticker span {
	font-family: var(--rms-serif); font-style: italic; font-size: 1.15rem; padding: 0 28px; position: relative;
}
.rms-ticker span::after { content: '\2726'; position: absolute; right: -6px; font-style: normal; font-size: 0.7rem; color: var(--rms-gold); top: 50%; transform: translateY(-50%); }
@keyframes rms-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---------- Facts card ---------- */
.rms-facts-wrap { position: relative; z-index: 5; max-width: 1180px; margin: -70px auto 0; padding: 0 24px; }
.rms-facts {
	background: #fff; border-radius: var(--rms-radius); box-shadow: var(--rms-shadow-lg);
	display: flex; align-items: center; gap: 24px; padding: 26px 30px; border-top: 4px solid var(--rms-gold);
}
.rms-facts dl { flex: 1; display: flex; flex-wrap: wrap; margin: 0; gap: 18px 0; }
.rms-fact { flex: 1 1 150px; padding: 0 20px; border-left: 1px solid var(--rms-sand-dark); }
.rms-fact:first-child { border-left: 0; padding-left: 0; }
.rms-fact dt { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rms-gold-deep); margin-bottom: 6px; }
.rms-fact dd { margin: 0; font-family: var(--rms-serif); font-size: 1.08rem; color: var(--rms-green-deep); line-height: 1.35; }

/* ---------- Sections (retreat page) ---------- */
.rms-section { padding: 96px 0; }
.rms-single .rms-section:nth-of-type(even) { background: var(--rms-sand); }
.rms-section h2 {
	font-family: var(--rms-serif); font-weight: 500; font-size: clamp(1.9rem, 3.2vw, 2.8rem);
	color: var(--rms-green-deep); margin: 0 0 16px; text-align: center; line-height: 1.2;
}
.rms-section h2::after {
	content: ''; display: block; width: 56px; height: 2px; background: var(--rms-gold); margin: 22px auto 40px;
}
.rms-prose { font-size: 1.08rem; line-height: 1.85; color: var(--rms-ink); max-width: 760px; margin: 0 auto; }
.rms-prose p { margin: 0 0 1.1em; }
.rms-prose h3 { font-family: var(--rms-serif); font-weight: 500; font-size: 1.45rem; color: var(--rms-green); margin: 1.6em 0 0.4em; }
.rms-prose h3:first-child { margin-top: 0; }
.rms-section-cta-wrap { text-align: center; margin-top: 40px; }

/* highlights */
.rms-highlights-grid { list-style: none; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 18px; max-width: 1000px; }
.rms-highlight {
	display: flex; gap: 16px; align-items: center; background: #fff; border-radius: 14px; padding: 18px 20px;
	box-shadow: 0 4px 18px rgba(42, 33, 24, 0.05); border: 1px solid var(--rms-sand-dark);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.rms-highlight:hover { transform: translateY(-3px); box-shadow: var(--rms-shadow); }
.rms-highlight-icon {
	flex-shrink: 0; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center;
	background: var(--rms-green-soft); color: var(--rms-green); font-size: 1rem; font-weight: 700;
}
.rms-highlight h3 { font-family: var(--rms-sans); font-weight: 600; font-size: 1rem; margin: 0; color: var(--rms-ink); line-height: 1.4; }
.rms-highlight p { margin: 4px 0 0; color: var(--rms-muted); font-size: 0.92rem; }

/* gallery */
.rms-lightbox-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 220px; gap: 14px; }
.rms-lightbox-item { display: block; border-radius: 14px; overflow: hidden; position: relative; }
.rms-lightbox-item.rms-lightbox-featured { grid-column: span 2; grid-row: span 2; }
.rms-lightbox-item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.8s ease; }
.rms-lightbox-item:hover img { transform: scale(1.07); }
.rms-lb-overlay { position: fixed; inset: 0; background: rgba(15, 11, 8, 0.94); display: none; align-items: center; justify-content: center; z-index: 9999; padding: 40px; }
.rms-lb-overlay.is-open { display: flex; }
.rms-lb-img { max-width: 100%; max-height: 90vh; border-radius: 8px; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5); }
.rms-lb-close { position: absolute; top: 20px; right: 30px; background: none; border: none; color: #fff; font-size: 2.4rem; cursor: pointer; line-height: 1; }

/* timeline */
.rms-timeline { max-width: 820px; margin: 0 auto; position: relative; padding-left: 44px; }
.rms-timeline::before { content: ''; position: absolute; left: 11px; top: 6px; bottom: 6px; width: 2px; background: linear-gradient(var(--rms-gold), var(--rms-green)); }
.rms-timeline-item { position: relative; padding-bottom: 54px; }
.rms-timeline-item:last-child { padding-bottom: 0; }
.rms-timeline-marker { position: absolute; left: -44px; top: 2px; width: 24px; height: 24px; border-radius: 50%; background: #fff; border: 2px solid var(--rms-gold); box-shadow: 0 0 0 6px var(--rms-sand); }
.rms-timeline-marker::after { content: ''; position: absolute; inset: 5px; border-radius: 50%; background: var(--rms-green); }
.rms-timeline-day { display: inline-block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--rms-gold-deep); margin-bottom: 6px; }
.rms-timeline-content h3 { font-family: var(--rms-serif); font-weight: 500; font-size: 1.7rem; margin: 0 0 6px; color: var(--rms-green-deep); }
.rms-timeline-location { color: var(--rms-muted); font-size: 0.92rem; margin: 0 0 14px; }
.rms-timeline-location::before { content: '\25CB  '; color: var(--rms-gold); }
.rms-timeline-activities { margin: 14px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.rms-timeline-activities li { background: var(--rms-green-soft); color: var(--rms-green-deep); font-size: 0.85rem; padding: 6px 14px; border-radius: 999px; }
.rms-timeline-image img { margin-top: 20px; border-radius: 14px; width: 100%; max-height: 360px; object-fit: cover; box-shadow: var(--rms-shadow); }

/* accommodation */
.rms-accommodation-type { text-align: center; font-weight: 700; color: var(--rms-gold-deep); text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.8rem; margin: -24px 0 22px; }
.rms-accommodation-grid { margin-top: 32px; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 200px; }

/* included / excluded */
.rms-included-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.rms-included-col, .rms-excluded-col { background: #fff; border-radius: var(--rms-radius); padding: 34px; box-shadow: var(--rms-shadow); }
.rms-included-col h2, .rms-excluded-col h2 { font-size: 1.6rem; text-align: left; }
.rms-included-col h2::after, .rms-excluded-col h2::after { margin: 16px 0 22px; }
.rms-included-grid:has(> :only-child) { grid-template-columns: minmax(0, 720px); justify-content: center; }
.rms-check-list, .rms-cross-list { list-style: none; margin: 0; padding: 0; }
.rms-check-list li, .rms-cross-list li { padding: 11px 0 11px 34px; position: relative; border-bottom: 1px solid var(--rms-sand-dark); line-height: 1.5; }
.rms-check-list li:last-child, .rms-cross-list li:last-child { border-bottom: 0; }
.rms-check-list li::before { content: '\2713'; position: absolute; left: 0; top: 10px; width: 22px; height: 22px; border-radius: 50%; background: var(--rms-green); color: #fff; font-size: 0.72rem; display: grid; place-items: center; font-weight: 700; }
.rms-cross-list li::before { content: '\2715'; position: absolute; left: 0; top: 10px; width: 22px; height: 22px; border-radius: 50%; background: var(--rms-sand-dark); color: var(--rms-brown); font-size: 0.7rem; display: grid; place-items: center; font-weight: 700; }

/* dates */
.rms-dates-list { display: flex; flex-direction: column; gap: 12px; max-width: 680px; margin: 0 auto; }
.rms-date-card { display: flex; justify-content: space-between; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--rms-sand-dark); border-radius: 14px; padding: 18px 24px; }
.rms-date-range { font-weight: 600; color: var(--rms-ink); }
.rms-availability { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; padding: 5px 13px; border-radius: 999px; }
.rms-availability-available { background: #dfeadb; color: #2f5a2b; }
.rms-availability-limited { background: #f6e6bf; color: #7d5a0e; }
.rms-availability-full { background: #eedbd6; color: #8a3a2c; }
.rms-availability-coming_soon { background: #e8e3da; color: #5a5046; }

/* pricing */
.rms-pricing-section { background: linear-gradient(135deg, var(--rms-green-deep), var(--rms-green)) !important; color: #fff; }
.rms-pricing-box { text-align: center; }
.rms-price-label { font-family: var(--rms-serif); font-size: clamp(1.8rem, 3.2vw, 2.6rem); color: #fff; margin: 0 0 10px; }
.rms-price-notes { color: rgba(255, 255, 255, 0.8); margin: 0 auto 28px; max-width: 560px; }
.rms-pricing-box::before { content: 'Investment'; display: block; font-size: 0.78rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--rms-gold-light); margin-bottom: 14px; font-weight: 600; }

/* packages */
.rms-packages-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 24px; }
.rms-package-card { background: #fff; border: 1px solid var(--rms-sand-dark); border-radius: var(--rms-radius); padding: 32px; display: flex; flex-direction: column; gap: 12px; box-shadow: var(--rms-shadow); }
.rms-package-card h3 { font-family: var(--rms-sans); font-size: 0.9rem; letter-spacing: 0.16em; text-transform: uppercase; margin: 0; color: var(--rms-gold-deep); }
.rms-package-desc { color: var(--rms-muted); font-size: 0.95rem; margin: 0; }
.rms-package-price { font-family: var(--rms-serif); font-size: 1.6rem; color: var(--rms-green-deep); margin-top: auto; }

/* faq */
.rms-faq-list { max-width: 800px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; }
.rms-faq-item { background: #fff; border: 1px solid var(--rms-sand-dark); border-radius: 14px; padding: 20px 24px; transition: box-shadow 0.2s ease; }
.rms-faq-item[open] { box-shadow: var(--rms-shadow); }
.rms-faq-item summary { cursor: pointer; font-weight: 600; color: var(--rms-ink); list-style: none; padding-right: 30px; position: relative; }
.rms-faq-item summary::-webkit-details-marker { display: none; }
.rms-faq-item summary::after { content: '+'; position: absolute; right: 0; top: -2px; font-size: 1.4rem; color: var(--rms-gold-deep); }
.rms-faq-item[open] summary::after { content: '\2212'; }
.rms-faq-answer { margin-top: 12px; color: var(--rms-muted); line-height: 1.75; }

/* closing */
.rms-closing-section { background: var(--rms-sand) !important; }
.rms-closing { max-width: 760px; margin: 0 auto; text-align: center; font-family: var(--rms-serif); font-size: 1.25rem; line-height: 1.75; color: var(--rms-brown); }
.rms-closing h2, .rms-closing h3 { font-family: var(--rms-serif); color: var(--rms-green-deep); font-weight: 500; }
.rms-closing h3 { font-size: 1.1rem; font-family: var(--rms-sans); letter-spacing: 0.22em; text-transform: uppercase; color: var(--rms-gold-deep); margin: 0 0 20px; }
.rms-closing em { color: var(--rms-green); font-size: 1.5rem; display: inline-block; }
.rms-closing p { margin: 0 0 0.9em; }

/* final cta */
.rms-final-cta { background: linear-gradient(rgba(29, 22, 16, 0.82), rgba(29, 22, 16, 0.82)), var(--rms-final-bg, var(--rms-green-deep)) center / cover !important; color: #fff; }
.rms-final-cta h2 { color: #fff; }
.rms-final-cta-text { text-align: center; color: rgba(255, 255, 255, 0.85); max-width: 580px; margin: -20px auto 30px; line-height: 1.7; }

/* sticky mobile cta */
.rms-sticky-cta { position: fixed; left: 0; right: 0; bottom: 0; padding: 12px 16px; background: rgba(255, 253, 249, 0.97); box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.12); z-index: 700; display: none; transform: translateY(100%); transition: transform 0.3s ease; }
.rms-sticky-cta.is-visible { display: block; transform: translateY(0); }
@media (min-width: 783px) { .rms-sticky-cta { display: none !important; } }

/* ---------- Modal & forms ---------- */
.rms-modal-overlay { position: fixed; inset: 0; background: rgba(20, 15, 10, 0.7); backdrop-filter: blur(4px); display: none; align-items: flex-start; justify-content: center; overflow-y: auto; z-index: 9998; padding: 40px 16px; }
.rms-modal-overlay.is-open { display: flex; }
.rms-modal { background: #fffdf9; border-radius: var(--rms-radius); max-width: 500px; width: 100%; padding: 36px; position: relative; border-top: 5px solid var(--rms-gold); box-shadow: var(--rms-shadow-lg); }
.rms-modal-close { position: absolute; top: 14px; right: 18px; background: none; border: none; font-size: 1.8rem; cursor: pointer; color: var(--rms-muted); }
.rms-modal h3 { font-family: var(--rms-serif); font-weight: 500; margin: 0 0 6px; font-size: 1.8rem; color: var(--rms-green-deep); }
.rms-modal-subtitle { color: var(--rms-muted); margin: 0 0 22px; font-size: 0.95rem; }
.rms-modal-subtitle strong { display: block; font-family: var(--rms-serif); font-size: 1.2rem; color: var(--rms-gold-deep); margin-top: 4px; font-weight: 500; }
#rms-quote-form { display: flex; flex-direction: column; gap: 13px; }
#rms-quote-form label { font-size: 0.82rem; font-weight: 600; color: var(--rms-ink); display: flex; flex-direction: column; gap: 5px; letter-spacing: 0.01em; }
#rms-quote-form input, #rms-quote-form textarea, #rms-quote-form select {
	font-family: var(--rms-sans); font-weight: 400; padding: 12px 14px; border: 1px solid var(--rms-sand-dark);
	border-radius: 10px; font-size: 0.96rem; background: #fff; color: var(--rms-ink); transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
#rms-quote-form input:focus, #rms-quote-form textarea:focus, #rms-quote-form select:focus { outline: none; border-color: var(--rms-gold); box-shadow: 0 0 0 3px rgba(201, 162, 78, 0.2); }
#rms-quote-form button[type="submit"] { margin-top: 6px; }
.rms-hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.rms-form-status { font-size: 0.9rem; text-align: center; min-height: 1.2em; margin: 0; }
.rms-form-status.is-success { color: var(--rms-green); }
.rms-form-status.is-error { color: #a3312f; }
.rms-form-success { text-align: center; padding: 24px 8px 8px; }
.rms-form-success h4 { font-family: var(--rms-serif); font-size: 1.7rem; margin: 0 0 8px; color: var(--rms-green); font-weight: 500; }
.rms-form-success p { color: var(--rms-muted); margin: 0; line-height: 1.6; }
body.rms-modal-open { overflow: hidden; }

/* ---------- Cards / listings ---------- */
.rms-home-retreats, .rms-archive { padding: 90px 0; }
.rms-home-title, .rms-archive-title { font-family: var(--rms-serif); font-weight: 500; font-size: clamp(2rem, 4vw, 3.2rem); text-align: center; margin: 0 0 14px; color: var(--rms-green-deep); }
.rms-home-title::after, .rms-archive-title::after { content: ''; display: block; width: 56px; height: 2px; background: var(--rms-gold); margin: 20px auto 44px; }
.rms-eyebrow { display: block; text-align: center; text-transform: uppercase; letter-spacing: 0.22em; font-size: 0.75rem; font-weight: 700; color: var(--rms-gold-deep); margin-bottom: 18px; }
.rms-featured-journey { margin-bottom: 56px; }
.rms-featured-journey .rms-card-large { display: grid; grid-template-columns: 1.3fr 1fr; min-height: 440px; }
.rms-featured-journey .rms-card-media { aspect-ratio: auto; height: 100%; }
.rms-featured-journey .rms-card-body { padding: 48px 44px; justify-content: center; }
.rms-featured-journey .rms-card-body h3 { font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.rms-featured-journey .rms-card-link { margin-top: 18px; }
.rms-retreat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 30px; }
.rms-card { display: flex; flex-direction: column; background: #fff; border-radius: var(--rms-radius); overflow: hidden; text-decoration: none; color: inherit; box-shadow: var(--rms-shadow); transition: box-shadow 0.35s ease, transform 0.35s ease; }
.rms-card:hover { box-shadow: var(--rms-shadow-lg); transform: translateY(-6px); }
.rms-card-media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--rms-sand); position: relative; }
.rms-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.9s ease; }
.rms-card:hover .rms-card-media img { transform: scale(1.08); }
.rms-card-media-placeholder { width: 100%; height: 100%; background: linear-gradient(135deg, var(--rms-green), var(--rms-gold)); }
.rms-card-body { padding: 26px 26px 28px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.rms-card-body h3 { font-family: var(--rms-serif); font-weight: 500; font-size: 1.4rem; line-height: 1.25; margin: 0; color: var(--rms-green-deep); }
.rms-card-subtitle { margin: 0; color: var(--rms-gold-deep); font-family: var(--rms-serif); font-style: italic; font-size: 1rem; }
.rms-card-meta { margin: 4px 0; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--rms-muted); }
.rms-card-meta span:not(:last-child)::after { content: '\2022'; margin: 0 10px; color: var(--rms-gold); }
.rms-card-desc { color: var(--rms-muted); font-size: 0.94rem; line-height: 1.65; margin: 4px 0 10px; }
.rms-card-link { margin-top: auto; font-weight: 600; color: var(--rms-green); font-size: 0.92rem; display: inline-flex; align-items: center; gap: 6px; }
.rms-card:hover .rms-card-link { color: var(--rms-gold-deep); }
.rms-view-all { text-align: center; margin-top: 50px; }
.rms-pagination { margin-top: 40px; text-align: center; }
.rms-archive-intro { max-width: 720px; margin: -24px auto 36px; text-align: center; color: var(--rms-muted); font-size: 1.08rem; line-height: 1.75; }
.rms-filter { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0 0 46px; }
.rms-filter a { font-size: 0.88rem; font-weight: 600; padding: 10px 22px; border-radius: 999px; border: 1px solid var(--rms-sand-dark); color: var(--rms-ink); text-decoration: none; background: #fff; transition: all 0.2s ease; }
.rms-filter a.is-active, .rms-filter a:hover { background: var(--rms-green); border-color: var(--rms-green); color: #fff; }

/* destinations */
.rms-destinations { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; max-width: 1180px; margin: 36px auto 0; }
.rms-destination { position: relative; display: block; min-height: 380px; border-radius: var(--rms-radius); overflow: hidden; background: var(--rms-green) center / cover; text-decoration: none; color: #fff; transition: transform 0.4s ease, box-shadow 0.4s ease; }
.rms-destination:hover { transform: translateY(-6px); box-shadow: var(--rms-shadow-lg); }
.rms-destination-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20, 15, 10, 0) 35%, rgba(20, 15, 10, 0.8) 100%); transition: background 0.4s ease; }
.rms-destination:hover .rms-destination-shade { background: linear-gradient(180deg, rgba(29, 48, 34, 0.15) 0%, rgba(29, 48, 34, 0.85) 100%); }
.rms-destination-body { position: absolute; left: 24px; right: 24px; bottom: 24px; text-align: left; }
.rms-destination-name { display: block; font-family: var(--rms-serif); font-size: 1.9rem; line-height: 1.1; }
.rms-destination-count { display: inline-block; margin-top: 8px; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rms-gold-light); }

/* ---------- Editable page content ---------- */
.rms-page-content { font-size: 1.07rem; line-height: 1.85; color: var(--rms-ink); padding: 90px 0 40px; }
.rms-page-content > :not(.rms-band):not(.rms-home-retreats):not(.rms-contact-wrap):not(.alignfull) { max-width: 780px; margin-left: auto; margin-right: auto; padding-left: 24px; padding-right: 24px; }
.rms-page-content h2 { font-family: var(--rms-serif); font-weight: 500; font-size: clamp(1.9rem, 3.4vw, 2.9rem); line-height: 1.18; margin-top: 1.4em; margin-bottom: 0.55em; color: var(--rms-green-deep); }
.rms-page-content h3 { font-family: var(--rms-serif); font-weight: 500; font-size: 1.45rem; line-height: 1.3; margin-top: 1.3em; margin-bottom: 0.4em; color: var(--rms-green); }
.rms-page-content p { margin-top: 0; margin-bottom: 1.1em; }
.rms-page-content a { color: var(--rms-green); }
.rms-page-content > h2:first-child, .rms-band > h2:first-child, .rms-band > .rms-kicker + h2 { margin-top: 0; }
.rms-page-content .rms-home-retreats { padding: 60px 0 90px; }
.rms-band { padding: 110px 24px; margin: 0; }
.rms-band:first-child { margin-top: -90px; }
.rms-page-content > .rms-band:last-child { margin-bottom: -40px; }
.rms-page-content > :not(.rms-band) + .rms-band { margin-top: 60px; }
.rms-page-content > .rms-band + :not(.rms-band) { margin-top: 60px; }
.rms-band > * { max-width: 1180px; margin-left: auto; margin-right: auto; }
.rms-band > p, .rms-band > h2, .rms-band > h3, .rms-band > ul { max-width: 780px; }
.rms-band-sand { background: var(--rms-sand); }
.rms-band-green { background: var(--rms-green-deep); color: #fff; }
.rms-band-dark { background: linear-gradient(135deg, var(--rms-brown-deep), #2d2217); color: #fff; }
.rms-band-dark h2, .rms-band-dark h3, .rms-band-green h2, .rms-band-green h3 { color: #fff; }
.rms-band-dark p, .rms-band-green p { color: rgba(255, 255, 255, 0.85); }
.rms-center, .rms-center h2, .rms-center h3, .rms-center p { text-align: center; }
.rms-kicker { font-family: var(--rms-sans); text-transform: uppercase; letter-spacing: 0.24em; font-size: 0.76rem !important; font-weight: 700; color: var(--rms-gold-deep); margin-bottom: 14px !important; }
.rms-band-dark .rms-kicker, .rms-band-green .rms-kicker { color: var(--rms-gold-light); }
.rms-lead { font-family: var(--rms-serif); font-weight: 400; font-size: clamp(1.3rem, 2.3vw, 1.7rem); line-height: 1.55; color: var(--rms-brown); }
.rms-cards { gap: 22px !important; margin-top: 36px !important; }
.rms-cards > .wp-block-column { background: #fff; border-radius: var(--rms-radius); padding: 34px 30px; box-shadow: var(--rms-shadow); border-top: 3px solid var(--rms-gold); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.rms-cards > .wp-block-column:hover { transform: translateY(-5px); box-shadow: var(--rms-shadow-lg); }
.rms-cards h3 { margin-top: 0; color: var(--rms-green-deep); font-size: 1.45rem; }
.rms-cards p { font-size: 0.97rem; color: var(--rms-muted); margin-bottom: 0; line-height: 1.7; }
.rms-cards a { color: var(--rms-green); font-weight: 600; text-decoration: none; }
.rms-manifesto p { font-family: var(--rms-serif); font-weight: 400; font-style: italic; font-size: clamp(1.2rem, 2.1vw, 1.55rem); line-height: 1.5; margin: 0 auto 0.4em; text-align: center; }
.rms-manifesto p.rms-kicker { font-family: var(--rms-sans); font-style: normal; }
.rms-manifesto p.rms-manifesto-close { font-style: normal; font-size: clamp(2rem, 4vw, 3.2rem); color: var(--rms-gold-light); margin-top: 0.8em; }
.rms-page-content .wp-block-buttons { margin-top: 30px; justify-content: center; }
.rms-page-content .wp-block-button__link { background: linear-gradient(135deg, var(--rms-gold-light), var(--rms-gold) 55%, #b58a35); color: var(--rms-brown-deep); border-radius: 999px; padding: 15px 32px; font-weight: 600; font-size: 0.95rem; text-decoration: none; box-shadow: 0 8px 24px rgba(201, 162, 78, 0.3); transition: transform 0.2s ease; }
.rms-page-content .wp-block-button__link:hover { transform: translateY(-2px); color: var(--rms-brown-deep); }
.rms-page-content .is-style-outline .wp-block-button__link { background: transparent; border: 2px solid var(--rms-green); color: var(--rms-green); box-shadow: none; }
.rms-page-content .is-style-outline .wp-block-button__link:hover { background: var(--rms-green); color: #fff; }
.rms-band-dark .is-style-outline .wp-block-button__link, .rms-band-green .is-style-outline .wp-block-button__link { border-color: #fff; color: #fff; }
.rms-person { border-top: 1px solid var(--rms-sand-dark); padding-top: 28px; }
.rms-role { color: var(--rms-gold-deep); font-weight: 700; font-size: 0.8rem !important; text-transform: uppercase; letter-spacing: 0.14em; margin-top: -0.4em !important; }
.rms-contact-wrap { max-width: 640px; margin: 10px auto 40px; padding: 0 24px; }
.rms-contact-card { background: #fff; border-radius: var(--rms-radius); padding: 40px; box-shadow: var(--rms-shadow-lg); border-top: 5px solid var(--rms-gold); }
.rms-contact-alt { text-align: center; margin: 24px 0 0; color: var(--rms-muted); font-size: 0.95rem; }
.rms-contact-alt .rms-btn { margin-top: 10px; }

/* ---------- CTA band & footer ---------- */
.rms-cta-band { position: relative; text-align: center; color: #fff; padding: 120px 0; background: linear-gradient(135deg, rgba(29, 48, 34, 0.94), rgba(47, 74, 52, 0.9)), radial-gradient(circle at 20% 20%, var(--rms-gold) 0, transparent 50%); overflow: hidden; }
.rms-cta-band::before { content: ''; position: absolute; width: 520px; height: 520px; border-radius: 50%; border: 1px solid rgba(230, 201, 131, 0.25); right: -160px; top: -200px; }
.rms-cta-band::after { content: ''; position: absolute; width: 380px; height: 380px; border-radius: 50%; border: 1px solid rgba(230, 201, 131, 0.2); left: -120px; bottom: -180px; }
.rms-cta-kicker { position: relative; text-transform: uppercase; letter-spacing: 0.26em; font-size: 0.78rem; font-weight: 700; color: var(--rms-gold-light); margin: 0 0 16px; }
.rms-cta-band h2 { position: relative; font-family: var(--rms-serif); font-weight: 500; font-size: clamp(2.2rem, 4.6vw, 3.8rem); margin: 0 0 18px; line-height: 1.12; }
.rms-cta-text { position: relative; max-width: 620px; margin: 0 auto 34px; color: rgba(255, 255, 255, 0.85); font-size: 1.08rem; line-height: 1.7; }
.rms-cta-band .rms-hero-cta { position: relative; }
.rms-site-footer { background: var(--rms-brown-deep); color: #fff; padding: 70px 0 26px; }
.rms-site-footer-inner { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 30px; padding-bottom: 34px; border-bottom: 1px solid rgba(255, 255, 255, 0.12); margin-bottom: 22px; }
.rms-site-footer-name { font-family: var(--rms-serif); font-size: 1.7rem; margin: 0 0 6px; color: #fff; }
.rms-site-footer-tagline { margin: 0 0 4px; color: var(--rms-gold-light); font-family: var(--rms-serif); font-style: italic; font-size: 1.1rem; }
.rms-site-footer-sub { margin: 0; color: rgba(255, 255, 255, 0.55); font-size: 0.88rem; }
.rms-footer-nav .rms-menu { justify-content: flex-end; gap: 10px 26px; }
.rms-footer-nav .rms-menu a { color: rgba(255, 255, 255, 0.78); }
.rms-footer-nav .rms-menu a:hover { color: #fff; }
.rms-site-footer-copy { margin: 0; text-align: center; font-size: 0.82rem; color: rgba(255, 255, 255, 0.45); }
.rms-wa-float { position: fixed; right: 22px; bottom: 22px; z-index: 750; width: 58px; height: 58px; border-radius: 50%; background: #25d366; color: #fff; display: grid; place-items: center; box-shadow: 0 10px 30px rgba(37, 211, 102, 0.45); transition: transform 0.2s ease; }
.rms-wa-float:hover { transform: scale(1.08); color: #fff; }
.rms-wa-float svg { width: 30px; height: 30px; }
body.rms-single .rms-wa-float { bottom: 22px; }

/* ---------- Reveal on scroll ---------- */
.rms-reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.9s ease, transform 0.9s ease; }
.rms-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.rms-reveal { opacity: 1; transform: none; transition: none; }
	.rms-hero-video { display: none; }
	.rms-ticker-track { animation: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
	.rms-destinations { grid-template-columns: repeat(2, 1fr); }
	.rms-menu { gap: 6px 20px; }
}
@media (max-width: 1180px) {
	.rms-site-header-cta { display: none; }
	.rms-nav-toggle { display: inline-flex; flex-direction: column; justify-content: center; gap: 5px; margin-left: auto; width: 44px; height: 44px; background: none; border: 0; cursor: pointer; padding: 10px; }
	.rms-nav-toggle span { display: block; height: 2px; width: 100%; background: var(--rms-ink); border-radius: 2px; transition: transform 0.3s ease, opacity 0.3s ease; }
	body.rms-nav-open .rms-nav-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	body.rms-nav-open .rms-nav-toggle span:nth-child(2) { opacity: 0; }
	body.rms-nav-open .rms-nav-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
	.rms-site-nav { position: fixed; inset: 0; top: 0; z-index: -1; background: var(--rms-green-deep); flex-direction: column; align-items: center; justify-content: center; gap: 30px; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; }
	body.rms-nav-open .rms-site-nav { opacity: 1; visibility: visible; }
	body.rms-nav-open .rms-site-header { background: transparent !important; box-shadow: none; border-color: transparent; }
	body.rms-nav-open .rms-site-logo { color: #fff !important; }
	body.rms-nav-open .rms-nav-toggle span { background: #fff !important; }
	.rms-site-nav .rms-menu { flex-direction: column; align-items: center; gap: 18px; }
	.rms-site-nav .rms-menu a { color: #fff !important; font-family: var(--rms-serif); font-size: 1.7rem; font-weight: 400; }
	.rms-nav-cta-mobile { display: inline-flex; }
	body.rms-nav-open { overflow: hidden; }
}
@media (max-width: 782px) {
	:root { --rms-header-h: 70px; }
	body.admin-bar .rms-site-header { top: 46px; }
	.rms-site-header-inner { padding: 0 18px; }
	.rms-site-logo { font-size: 1.15rem; }
	.rms-logo-mark { width: 28px; height: 28px; }
	.rms-hero { min-height: 88vh; }
	.rms-section { padding: 70px 0; }
	.rms-band { padding: 76px 20px; }
	.rms-included-grid { grid-template-columns: 1fr; gap: 20px; }
	.rms-included-col, .rms-excluded-col { padding: 26px; }
	.rms-lightbox-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; gap: 10px; }
	.rms-lightbox-item.rms-lightbox-featured { grid-column: span 2; grid-row: span 2; }
	.rms-accommodation-grid { grid-template-columns: repeat(2, 1fr); }
	.rms-featured-journey .rms-card-large { grid-template-columns: 1fr; }
	.rms-featured-journey .rms-card-media { aspect-ratio: 4 / 3; }
	.rms-featured-journey .rms-card-body { padding: 28px 24px; }
	.rms-facts { flex-direction: column; align-items: stretch; padding: 22px; }
	.rms-fact { flex-basis: 50%; border-left: 0; padding: 0 10px 0 0; }
	.rms-destinations { grid-template-columns: 1fr 1fr; gap: 12px; }
	.rms-destination { min-height: 240px; }
	.rms-destination-name { font-size: 1.4rem; }
	.rms-retreat-grid { grid-template-columns: 1fr; }
	.rms-footer-nav .rms-menu { justify-content: flex-start; }
	.rms-cta-band { padding: 84px 0; }
	main.rms-single { padding-bottom: 70px; }
	body.rms-single .rms-wa-float { bottom: 86px; }
	.rms-contact-card { padding: 26px; }
}
.rms-page-content a.rms-destination, .rms-destination .rms-destination-name { color: #fff; text-decoration: none; }
.rms-page-content a.rms-destination .rms-destination-count { color: var(--rms-gold-light); }

.rms-final-cta { padding: 120px 0; }
.rms-final-cta h2 { font-size: clamp(2.2rem, 4.4vw, 3.6rem); }
body.rms-front-page .rms-site-header:not(.is-scrolled), body.rms-single .rms-site-header:not(.is-scrolled), body.rms-page .rms-site-header:not(.is-scrolled) { border-bottom-color: transparent !important; box-shadow: none; }

body.rms-front-page .rms-site-header:not(.is-scrolled), body.rms-single .rms-site-header:not(.is-scrolled), body.rms-page .rms-site-header:not(.is-scrolled) { background: transparent !important; border-bottom: 0 !important; }
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-menu a, body.rms-single .rms-site-header:not(.is-scrolled) .rms-menu a, body.rms-page .rms-site-header:not(.is-scrolled) .rms-menu a, body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-site-logo, body.rms-single .rms-site-header:not(.is-scrolled) .rms-site-logo, body.rms-page .rms-site-header:not(.is-scrolled) .rms-site-logo { text-shadow: 0 1px 12px rgba(0,0,0,0.35); }
.rms-hero-overlay::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 180px; background: linear-gradient(180deg, rgba(20,15,10,0.5), rgba(20,15,10,0)); }

/* =========== Logo (legacy) =========== */
.rms-site-logo { gap: 12px; line-height: 1; }
.rms-logo-mark { width: 46px; height: 46px; flex-shrink: 0; overflow: visible; }
.rms-logo-rays { transform-origin: 50px 50px; transition: transform 1.2s cubic-bezier(.2,.7,.2,1); }
.rms-site-logo:hover .rms-logo-rays { transform: rotate(45deg) scale(1.04); }
.rms-logo-heart { transform-origin: 50px 53px; }
.rms-site-logo:hover .rms-logo-heart { animation: rms-beat 1.2s ease-in-out; }
@keyframes rms-beat { 0%,100% { transform: scale(1); } 20% { transform: scale(1.12); } 40% { transform: scale(0.97); } 60% { transform: scale(1.06); } }
.rms-logo-text { display: flex; flex-direction: column; gap: 5px; }
.rms-logo-name { font-family: var(--rms-serif); font-weight: 500; font-size: 1.32rem; letter-spacing: 0.24em; margin-right: -0.24em; }
.rms-logo-sub { font-family: var(--rms-sans); font-weight: 600; font-size: 0.56rem; letter-spacing: 0.44em; text-transform: uppercase; color: var(--rms-gold-deep); }
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-logo-sub,
body.rms-single .rms-site-header:not(.is-scrolled) .rms-logo-sub,
body.rms-page .rms-site-header:not(.is-scrolled) .rms-logo-sub,
body.rms-nav-open .rms-logo-sub { color: var(--rms-gold-light); }
.rms-footer-logo { color: #fff; margin-bottom: 14px; }
.rms-footer-logo .rms-logo-mark { width: 58px; height: 58px; }
.rms-footer-logo .rms-logo-name { font-size: 1.6rem; }
.rms-footer-logo .rms-logo-sub { color: var(--rms-gold-light); }
.rms-site-footer-tagline { letter-spacing: 0.04em; }
@media (max-width: 782px) {
	.rms-logo-mark { width: 38px; height: 38px; }
	.rms-logo-name { font-size: 1.08rem; letter-spacing: 0.2em; }
	.rms-logo-sub { font-size: 0.5rem; letter-spacing: 0.36em; }
}

/* =========== Smoothness =========== */
html { scroll-behavior: smooth; }
::selection { background: var(--rms-gold-light); color: var(--rms-brown-deep); }
.rms-hero-content { will-change: transform, opacity; }
.rms-btn-primary { position: relative; overflow: hidden; }
.rms-btn-primary::after { content: ''; position: absolute; top: 0; left: -75%; width: 50%; height: 100%; background: linear-gradient(120deg, transparent, rgba(255,255,255,0.45), transparent); transform: skewX(-20deg); transition: left 0.7s ease; }
.rms-btn-primary:hover::after { left: 130%; }
body.rms-leaving { opacity: 0; transition: opacity 0.25s ease; }
body.rms-front-page, body.rms-page, body.rms-single, body.rms-archive-page { animation: rms-page-in 0.6s ease both; }
@keyframes rms-page-in { from { opacity: 0; } to { opacity: 1; } }

/* intro (first visit per session, homepage) */
.rms-intro { position: fixed; inset: 0; z-index: 99999; background: var(--rms-green-deep); display: grid; place-items: center; transition: opacity 0.8s ease, visibility 0.8s ease; }
.rms-intro.is-done { opacity: 0; visibility: hidden; }
.rms-intro-inner { text-align: center; color: #fff; }
.rms-intro .rms-logo-mark { width: 110px; height: 110px; }
.rms-intro .rms-logo-rays { animation: rms-rays 2.4s cubic-bezier(.2,.7,.2,1) both; }
.rms-intro .rms-logo-heart { animation: rms-heart-in 1.4s 0.3s ease both; }
.rms-intro-name { display: block; margin-top: 22px; font-family: var(--rms-serif); font-size: 2rem; letter-spacing: 0.36em; margin-right: -0.36em; animation: rms-rise 1s 0.5s ease both; }
.rms-intro-sub { display: block; margin-top: 12px; font-family: var(--rms-sans); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.5em; text-transform: uppercase; color: var(--rms-gold-light); animation: rms-rise 1s 0.8s ease both; }
@keyframes rms-rays { from { transform: rotate(-90deg) scale(0.6); opacity: 0; } to { transform: rotate(0) scale(1); opacity: 1; } }
@keyframes rms-heart-in { from { transform: scale(0.4); opacity: 0; } to { transform: scale(1); opacity: 1; } }
@keyframes rms-rise { from { transform: translateY(14px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.rms-intro { display: none; }
	body.rms-front-page, body.rms-page, body.rms-single, body.rms-archive-page { animation: none; }
}
/* ---------- Reels ---------- */
.rms-reels-section { background: var(--rms-green-deep) !important; color: #fff; overflow: hidden; }
.rms-reels-section h2 { color: #fff; }
.rms-reels-kicker { text-align: center; text-transform: uppercase; letter-spacing: 0.26em; font-size: 0.76rem; font-weight: 700; color: var(--rms-gold-light); margin: 0 0 12px; }
.rms-reels { display: flex; gap: 18px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 6px max(24px, calc((100vw - 1180px) / 2)) 18px; scrollbar-width: thin; scrollbar-color: var(--rms-gold) transparent; }
.rms-reels::-webkit-scrollbar { height: 6px; }
.rms-reels::-webkit-scrollbar-thumb { background: var(--rms-gold); border-radius: 3px; }
.rms-reel { position: relative; flex: 0 0 auto; width: 250px; aspect-ratio: 9 / 16; margin: 0; border-radius: 20px; overflow: hidden; background: #000; scroll-snap-align: center; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35); transition: transform 0.35s ease; }
.rms-reel:hover { transform: translateY(-6px); }
.rms-reel video { width: 100%; height: 100%; object-fit: cover; display: block; }
.rms-reel::after { content: ''; position: absolute; inset: 0; border-radius: 20px; box-shadow: inset 0 0 0 1px rgba(230, 201, 131, 0.35); pointer-events: none; }
.rms-reel-sound { position: absolute; right: 12px; bottom: 12px; width: 38px; height: 38px; border-radius: 50%; border: 0; cursor: pointer; background: rgba(0, 0, 0, 0.45); backdrop-filter: blur(4px); }
.rms-reel-sound span, .rms-reel-sound span::before { position: absolute; left: 50%; top: 50%; }
.rms-reel-sound span { width: 8px; height: 10px; margin: -5px 0 0 -8px; background: #fff; clip-path: polygon(0 30%, 40% 30%, 100% 0, 100% 100%, 40% 70%, 0 70%); }
.rms-reel-sound span::before { content: ''; width: 12px; height: 2px; margin: -1px 0 0 6px; background: #fff; transform: rotate(45deg); }
.rms-reel.is-unmuted .rms-reel-sound span::before { width: 7px; height: 7px; margin: -4px 0 0 5px; border: 2px solid #fff; border-left: 0; border-top: 0; background: none; border-radius: 0 0 8px 0; transform: rotate(-45deg); }
@media (max-width: 782px) { .rms-reel { width: 200px; } }
.rms-page-content .rms-page-gallery { max-width: 1180px !important; margin: 36px auto 10px; padding: 0 !important; }
.rms-band > .rms-page-gallery { margin-top: 36px; }
.rms-poster-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 22px; }
.rms-poster-grid .rms-lightbox-item { aspect-ratio: auto; border-radius: 14px; box-shadow: var(--rms-shadow-lg); background: #fff; }
.rms-poster-grid .rms-lightbox-item img { height: auto; object-fit: contain; }
.rms-page-content .rms-reels-section { margin: 40px 0; border-radius: 0; }
.rms-band > .rms-reels-section { margin-left: -24px; margin-right: -24px; max-width: none; background: transparent !important; padding: 20px 0 0; }
.rms-band-green > .rms-reels-section h2, .rms-band-dark > .rms-reels-section h2 { color: #fff; }
.rms-page-content .rms-reels-section h2::after { margin-bottom: 30px; }
/* media & text (Sana) */
.rms-page-content .wp-block-media-text { max-width: 1100px !important; margin: 30px auto; gap: 0; align-items: center; }
.rms-page-content .wp-block-media-text__media img { border-radius: var(--rms-radius); box-shadow: var(--rms-shadow-lg); width: 100%; height: auto; }
.rms-page-content .wp-block-media-text__content { padding: 10px 0 10px 56px !important; text-align: left; }
.rms-page-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { padding: 10px 56px 10px 0 !important; }
.rms-page-content .wp-block-media-text__content h2, .rms-page-content .wp-block-media-text__content p { text-align: left; }
@media (max-width: 782px) {
	.rms-page-content .wp-block-media-text__content, .rms-page-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { padding: 28px 0 0 !important; }
	.rms-poster-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
}
@media (min-width: 1181px) and (max-width: 1360px) { .rms-menu { gap: 6px 20px; } .rms-menu a { font-size: 0.86rem; } .rms-site-header-inner { gap: 18px; } }

/* ===== Showcase (v1.6) : cinematic bands, mosaics, destination tiles ===== */
.rms-cinema,.rms-mosaic-wrap,.rms-dtiles-wrap,.rms-split{width:100vw;margin-left:calc(50% - 50vw);position:relative}
.rms-cinema{display:flex;align-items:center;justify-content:center;overflow:hidden;color:#fbf3e2;isolation:isolate;margin-top:0;margin-bottom:0}
.rms-cinema-media{position:absolute;inset:-12% 0;z-index:-3;will-change:transform}
.rms-cinema-img,.rms-cinema-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-position:center;animation:rmsKen 28s ease-in-out infinite alternate}
@keyframes rmsKen{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.rms-cinema-shade{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at center,rgba(15,11,6,.25) 0%,rgba(15,11,6,.62) 75%),linear-gradient(180deg,rgba(15,11,6,.35),rgba(15,11,6,.15) 45%,rgba(15,11,6,.6))}
.rms-cinema-frame{position:absolute;inset:28px;border:1px solid rgba(236,208,140,.45);z-index:-1;pointer-events:none}
.rms-cinema-body{max-width:860px;padding:120px 32px;text-align:center}
.rms-cinema-left .rms-cinema-body{margin-right:auto;margin-left:8vw;text-align:left}
.rms-cinema-kicker{font-family:var(--rms-sans,Inter,sans-serif);font-size:.82rem;letter-spacing:.42em;text-transform:uppercase;color:#ecd08c;margin:0 0 18px}
.rms-cinema-title{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(2.6rem,6vw,5.4rem);line-height:1.04;color:#fff;margin:0;text-shadow:0 6px 40px rgba(0,0,0,.45)}
.rms-cinema-title em{color:#f3dca0;font-style:italic;font-weight:400}
.rms-cinema-divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:26px auto}
.rms-cinema-left .rms-cinema-divider{justify-content:flex-start}
.rms-cinema-divider:before,.rms-cinema-divider:after{content:'';height:1px;width:90px;background:linear-gradient(90deg,transparent,#c9a24e)}
.rms-cinema-divider:after{background:linear-gradient(90deg,#c9a24e,transparent)}
.rms-cinema-divider i{width:8px;height:8px;background:#ecd08c;transform:rotate(45deg)}
.rms-cinema-text{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.6;color:#fbf3e2;margin:0 auto 34px;max-width:680px;text-shadow:0 2px 16px rgba(0,0,0,.5)}
.rms-mosaic-wrap,.rms-dtiles-wrap{padding:110px 4vw}
.rms-mosaic-head{text-align:center;max-width:760px;margin:0 auto 48px}
.rms-mosaic-head h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.1;margin:.2em 0}
.rms-mosaic-head h2 em{color:var(--rms-gold,#c9a24e);font-style:italic}
.rms-mosaic-text{color:var(--rms-ink-soft,#5b4a3a)}
.rms-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px;max-width:1400px;margin:0 auto}
.rms-mosaic-item{position:relative;overflow:hidden;border-radius:6px;display:block}
.rms-mosaic-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s;filter:saturate(1.05)}
.rms-mosaic-item:hover img{transform:scale(1.08)}
.rms-mosaic-item:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,11,6,.55),transparent 45%);opacity:0;transition:opacity .5s}
.rms-mosaic-item:hover:after{opacity:1}
.rms-mosaic-cap{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;color:#fff;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:1.02rem;opacity:0;transform:translateY(8px);transition:all .5s}
.rms-mosaic-item:hover .rms-mosaic-cap{opacity:1;transform:none}
.rms-mosaic .m0{grid-column:span 2;grid-row:span 2}.rms-mosaic .m3{grid-row:span 2}.rms-mosaic .m5{grid-column:span 2}.rms-mosaic .m7{grid-row:span 2}
.rms-dtiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1500px;margin:0 auto}
.rms-dtile{position:relative;height:min(78vh,640px);overflow:hidden;border-radius:6px;color:#fff;text-decoration:none;display:block}
.rms-dtile-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.rms-dtile:hover .rms-dtile-img{transform:scale(1.1)}
.rms-dtile-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,11,6,.88) 0%,rgba(15,11,6,.15) 55%,rgba(15,11,6,.25))}
.rms-dtile:before{content:'';position:absolute;inset:14px;border:1px solid rgba(236,208,140,0);z-index:2;transition:border-color .6s}
.rms-dtile:hover:before{border-color:rgba(236,208,140,.6)}
.rms-dtile-body{position:absolute;left:0;right:0;bottom:0;padding:34px 30px;z-index:3;display:flex;flex-direction:column;gap:8px}
.rms-dtile-kicker{font-size:.72rem;letter-spacing:.38em;text-transform:uppercase;color:#ecd08c}
.rms-dtile-name{font-family:'Playfair Display',Georgia,serif;font-size:2.5rem;line-height:1}
.rms-dtile-line{font-family:'Playfair Display',Georgia,serif;font-style:italic;opacity:.92;line-height:1.45;max-height:0;overflow:hidden;transition:max-height .7s}
.rms-dtile:hover .rms-dtile-line{max-height:120px}
.rms-dtile-cta{font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:#f3dca0;margin-top:6px}
.rms-split{display:grid;grid-template-columns:1.1fr 1fr;min-height:82vh;background:var(--rms-sand,#f4ecdc)}
.rms-split-right .rms-split-media{order:2}
.rms-split-media{position:relative;overflow:hidden}
.rms-split-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rms-split-body{padding:9vw 7vw;display:flex;flex-direction:column;justify-content:center}
.rms-split-body h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.08;margin:.15em 0 .5em}
.rms-split-body h2 em{color:var(--rms-gold,#c9a24e);font-style:italic}
.rms-split-body .rms-btn{align-self:flex-start;margin-top:14px}
.rms-manifesto{background:linear-gradient(rgba(15,11,6,.72),rgba(15,11,6,.82)),url('/wp-content/uploads/2026/10/ssm-dcamp0-1229x1536.jpg') center/cover fixed !important}
@media (max-width:1024px){.rms-dtiles{grid-template-columns:repeat(2,1fr)}.rms-dtile{height:62vh}.rms-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.rms-split{grid-template-columns:1fr}.rms-split-media{min-height:60vh}.rms-split-right .rms-split-media{order:0}}
@media (max-width:640px){.rms-dtiles{grid-template-columns:1fr}.rms-dtile{height:72vh}.rms-dtile-line{max-height:120px}.rms-cinema-frame{inset:14px}.rms-mosaic .m0,.rms-mosaic .m5{grid-column:span 2}.rms-manifesto{background-attachment:scroll !important}}
@media (prefers-reduced-motion:reduce){.rms-cinema-img,.rms-cinema-video{animation:none}}
/* showcase overrides */
.rms-page-content > .rms-cinema,.rms-page-content > .rms-mosaic-wrap,.rms-page-content > .rms-dtiles-wrap,.rms-page-content > .rms-split{max-width:none !important;width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:0 !important;padding-left:0;padding-right:0}
.rms-page-content > .rms-mosaic-wrap,.rms-page-content > .rms-dtiles-wrap{padding:110px 4vw !important}
.rms-page-content > .rms-cinema + *, .rms-page-content > * + .rms-cinema, .rms-page-content > .rms-split + *, .rms-page-content > * + .rms-split{margin-top:0 !important}
.rms-page-content a.rms-dtile,.rms-page-content a.rms-dtile *{color:#fff;text-decoration:none}
.rms-page-content a.rms-dtile .rms-dtile-kicker{color:#ecd08c}.rms-page-content a.rms-dtile .rms-dtile-cta{color:#f3dca0}
.rms-page-content .rms-cinema h2.rms-cinema-title{color:#fff;margin:0}
.rms-page-content .rms-cinema .rms-btn{color:var(--rms-brown-deep,#1d1610);text-decoration:none}
.rms-page-content .rms-split .rms-btn{text-decoration:none}
.rms-page-content .rms-split-body h2{margin-top:.15em}
.rms-page-content > .rms-band:last-child{margin-bottom:-40px}

.rms-page-content > .rms-cinema,.rms-page-content > .rms-split{padding-left:0 !important;padding-right:0 !important}
html,body{overflow-x:clip}
.rms-mosaic{grid-auto-flow:dense}

/* =========== The Peace Center logo (v1.7) =========== */
.rms-site-logo{gap:14px;align-items:center}
.rms-logo-mark{width:56px;height:55px;overflow:visible}
.rms-logo-fol{transform-origin:100px 78px;transition:transform 2.4s cubic-bezier(.2,.7,.2,1)}
.rms-site-logo:hover .rms-logo-fol{transform:rotate(60deg)}
.rms-logo-lotus{transform-origin:100px 176px;transition:transform 1s ease}
.rms-site-logo:hover .rms-logo-lotus{transform:scale(1.04)}
.rms-logo-text{display:flex;flex-direction:column;gap:3px;line-height:1}
.rms-logo-the{font-family:'Cinzel',serif;font-weight:500;font-size:.6rem;letter-spacing:.55em;color:var(--rms-gold-deep,#a97c2c)}
.rms-logo-name{font-family:'Cinzel',serif !important;font-weight:500 !important;font-size:1.3rem !important;letter-spacing:.07em !important;margin-right:0 !important;white-space:nowrap}
.rms-logo-sub{font-family:'Cinzel',serif !important;font-weight:500 !important;font-size:.52rem !important;letter-spacing:.24em !important;text-transform:uppercase;white-space:nowrap}
body.rms-front-page .rms-site-header:not(.is-scrolled) .rms-logo-the,body.rms-single .rms-site-header:not(.is-scrolled) .rms-logo-the,body.rms-page .rms-site-header:not(.is-scrolled) .rms-logo-the,body.rms-nav-open .rms-logo-the{color:var(--rms-gold-light,#ecd08c)}
.rms-footer-logo .rms-logo-mark{width:74px;height:72px}
.rms-footer-logo .rms-logo-name{font-size:1.7rem !important}
.rms-footer-logo .rms-logo-the{color:var(--rms-gold-light,#ecd08c)}
.rms-site-footer-tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.25rem;color:var(--rms-gold-light,#ecd08c)}
.rms-intro .rms-logo-mark{width:150px;height:147px}
.rms-intro .rms-logo-fol{animation:pcFol 2.6s cubic-bezier(.2,.7,.2,1) both}
.rms-intro .rms-logo-lotus{animation:pcLotus 1.6s .4s ease both}
@keyframes pcFol{from{transform:rotate(-120deg) scale(.6);opacity:0}to{transform:none;opacity:1}}
@keyframes pcLotus{from{transform:translateY(16px) scale(.9);opacity:0}to{transform:none;opacity:1}}
.rms-intro-the{display:block;margin-top:24px;font-family:'Cinzel',serif;font-size:.9rem;letter-spacing:.6em;padding-left:.6em;color:var(--rms-gold-light,#ecd08c);animation:rms-rise 1s .4s ease both}
.rms-intro-name{font-family:'Cinzel',serif !important;letter-spacing:.08em !important;margin-right:0 !important;font-size:2.4rem !important;margin-top:8px !important}
.rms-intro-for{display:block;margin-top:10px;font-family:'Cinzel',serif;font-size:.72rem;letter-spacing:.32em;color:#fbf3e2;animation:rms-rise 1s .7s ease both}
.rms-intro-sub{font-family:'Cormorant Garamond',serif !important;font-style:italic;font-size:1.2rem !important;letter-spacing:.08em !important;text-transform:none !important;margin-top:18px !important}
@media (max-width:782px){.rms-logo-mark{width:44px;height:43px}.rms-logo-name{font-size:1.02rem !important}.rms-logo-sub{font-size:.44rem !important;letter-spacing:.18em !important}.rms-logo-the{font-size:.5rem}}

/* =====================================================================
   v1.9 Emerald & Gold: the client's reference poster look
   ===================================================================== */
:root{--rms-green:#0b3d17;--rms-green-deep:#06300f;--rms-green-soft:#e6efe2;--rms-gold:#d4a94a;--rms-gold-light:#f0d27e;--rms-gold-deep:#9e6f1c;--rms-brown-deep:#052a0d;--rms-ink:#1f2a1f;--rms-sand:#f8f3e6;--rms-sand-dark:#e6dcc3;--rms-emerald:radial-gradient(ellipse 85% 75% at 50% 18%,#1b5222 0%,#0b3d17 40%,#06300f 70%,#03200a 100%);--rms-cinzel:'Cinzel',Georgia,serif}
body.rms-front-page,body.rms-page,body.rms-single,body.rms-archive-page{background:#fbf7ec !important}
/* gold text helper */
.rms-logo-name,.rms-logo-the,.rms-logo-sub{background:linear-gradient(180deg,#f8e29c,#e3b955 55%,#b8862e);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#e3b955}
.rms-logo-name{font-family:var(--rms-cinzel) !important;font-weight:600 !important;text-transform:none !important;letter-spacing:.01em !important}
.rms-logo-sub{font-family:'Poppins',var(--rms-sans) !important;font-weight:500 !important;text-transform:uppercase !important}
.rms-site-header .rms-logo-mark{width:54px !important;height:56px !important}
.rms-footer-logo .rms-logo-mark{width:96px !important;height:100px !important}
/* header */
.rms-site-header,.rms-site-header.is-scrolled{background:rgba(5,38,12,.97) !important;border-bottom:1px solid rgba(212,169,74,.45) !important;box-shadow:0 8px 30px rgba(0,20,5,.25)}
.rms-site-header:not(.is-scrolled),body.rms-single .rms-site-header:not(.is-scrolled),body.rms-page .rms-site-header:not(.is-scrolled){background:linear-gradient(180deg,rgba(3,32,10,.78) 0%,rgba(3,32,10,0) 100%) !important;border-color:transparent !important;box-shadow:none}
.rms-site-header .rms-menu a,.rms-site-header.is-scrolled .rms-menu a{color:#f6efd9 !important}
.rms-site-header .rms-menu a:hover,.rms-site-header .rms-menu .current-menu-item>a{color:#f0d27e !important}
.rms-site-header .rms-menu-toggle,.rms-site-header .rms-menu-toggle span{color:#f0d27e;border-color:#f0d27e}
/* buttons */
.rms-btn-primary,.wp-block-button:not(.is-style-outline) .wp-block-button__link{background:linear-gradient(135deg,#f3d88e,#d4a94a 55%,#a97c2c) !important;color:#1d1a0e !important;border:0 !important}
.rms-btn-primary:hover{filter:brightness(1.06)}
/* hero */
.rms-hero-overlay{background:radial-gradient(ellipse at center,rgba(3,32,10,.15) 0%,rgba(3,32,10,.6) 100%),linear-gradient(180deg,rgba(3,32,10,.35) 0%,rgba(3,32,10,.1) 40%,rgba(3,32,10,.85) 100%) !important}
.rms-hero-overlay::before{background:linear-gradient(180deg,rgba(3,32,10,.55),rgba(3,32,10,0)) !important}
.rms-hero-emblem{display:flex;justify-content:center;margin:0 0 14px}
.rms-hero-emblem .rms-logo-mark{width:clamp(96px,11vw,150px) !important;height:auto !important;filter:drop-shadow(0 6px 26px rgba(0,0,0,.45))}
.rms-hero-eyebrow{color:#f0d27e !important;font-family:var(--rms-cinzel) !important;letter-spacing:.28em !important}
.rms-hero h1{text-shadow:0 6px 40px rgba(0,0,0,.5)}
/* emerald poster sections */
.rms-ticker{background:#052a0d !important;color:#f0d27e !important;border-top:1px solid rgba(212,169,74,.35);border-bottom:1px solid rgba(212,169,74,.35)}
.rms-band-sand,.rms-split,.rms-cta-band,.rms-site-footer,.rms-emerald{position:relative;isolation:isolate;background:url('/wp-content/uploads/brand/pc-orn-0.svg') left -60px top -80px/440px auto no-repeat,url('/wp-content/uploads/brand/pc-orn-1.svg') right -60px bottom -80px/440px auto no-repeat,var(--rms-emerald) !important;color:#f6efd9}
.rms-split{background:var(--rms-emerald) !important}
.rms-band-sand>*,.rms-cta-band>*,.rms-site-footer>*{position:relative;z-index:2}
.rms-band-sand::before,.rms-cta-band::before,.rms-site-footer::before{content:'' !important;position:absolute !important;inset:22px !important;width:auto !important;height:auto !important;border-radius:0 !important;border:1px solid rgba(217,181,98,.7) !important;pointer-events:none;z-index:1;left:22px !important;right:22px !important;top:22px !important;bottom:22px !important}
.rms-band-sand::after,.rms-cta-band::after,.rms-site-footer::after{content:'' !important;position:absolute !important;inset:30px !important;width:auto !important;height:auto !important;border:0 !important;border-radius:0 !important;pointer-events:none;z-index:1;left:30px !important;right:30px !important;top:30px !important;bottom:30px !important;background:url('/wp-content/uploads/brand/pc-orn-2.svg') left top/30px no-repeat,url('/wp-content/uploads/brand/pc-orn-3.svg') right top/30px no-repeat,url('/wp-content/uploads/brand/pc-orn-4.svg') left bottom/30px no-repeat,url('/wp-content/uploads/brand/pc-orn-5.svg') right bottom/30px no-repeat !important}
.rms-band-sand h1,.rms-band-sand h2,.rms-band-sand h3,.rms-band-sand h4,.rms-split h2,.rms-split h3,.rms-cta-band h2,.rms-site-footer h2,.rms-site-footer h3{color:#f6efd9 !important}
.rms-band-sand h2 em,.rms-split h2 em,.rms-cta-band h2 em,.rms-band-sand em{color:#f0d27e !important}
.rms-band-sand p,.rms-band-sand li,.rms-split p,.rms-split li,.rms-cta-band p{color:rgba(246,239,217,.86) !important}
.rms-band-sand .rms-kicker,.rms-split .rms-kicker,.rms-cta-band .rms-kicker,.rms-band-sand .has-text-color{color:#f0d27e !important}
.rms-band-sand a:not(.rms-btn):not(.wp-block-button__link),.rms-split a:not(.rms-btn):not(.wp-block-button__link){color:#f0d27e}
.rms-band-sand .is-style-outline .wp-block-button__link,.rms-split .rms-btn-outline,.rms-split .is-style-outline .wp-block-button__link{border-color:#f0d27e !important;color:#f0d27e !important;background:transparent !important}
.rms-band-sand .rms-card,.rms-band-sand .wp-block-column>.wp-block-group,.rms-band-sand details{color:var(--rms-ink)}
.rms-band-sand details summary,.rms-band-sand details p{color:inherit !important}
.rms-split img{border:1px solid rgba(217,181,98,.6);box-shadow:0 20px 50px rgba(0,0,0,.35)}
/* dark/manifesto bands */
.rms-band-dark{background:linear-gradient(135deg,#052a0d,#0b3d17) !important}
.rms-manifesto{background:linear-gradient(rgba(3,32,10,.78),rgba(3,32,10,.88)),url('/wp-content/uploads/2026/10/ssm-dcamp0-1229x1536.jpg') center/cover !important}
.rms-manifesto p.rms-manifesto-close{font-family:var(--rms-cinzel) !important;color:#f0d27e !important}
.rms-kicker{font-family:var(--rms-cinzel) !important;letter-spacing:.24em !important;color:#9e6f1c}
h2 em,.rms-section-title em{color:#9e6f1c}
/* footer */
.rms-site-footer{padding:90px 0 40px !important}
.rms-site-footer-inner{border-bottom:1px solid rgba(212,169,74,.3) !important}
.rms-site-footer-tagline{font-family:'Cormorant Garamond',var(--rms-serif) !important;font-size:1.45rem !important;color:#f0d27e !important}
.rms-footer-nav .rms-menu a{color:rgba(246,239,217,.85) !important}
.rms-footer-nav .rms-menu a:hover{color:#f0d27e !important}
.rms-site-footer-copy{color:rgba(246,239,217,.55) !important}
.rms-footer-logo{flex-direction:column;align-items:flex-start;gap:10px}
.rms-footer-logo .rms-logo-name{font-size:2rem !important}
/* intro loader */
.rms-intro{background:radial-gradient(ellipse 85% 75% at 50% 18%,#1b5222 0%,#0b3d17 40%,#06300f 70%,#03200a 100%) !important}
.rms-intro .rms-logo-mark{width:170px !important;height:176px !important}
.rms-tag,.rms-pill,.rms-badge{background:rgba(11,61,23,.08);color:#0b3d17}
@media (max-width:700px){
 .rms-band-sand::before,.rms-cta-band::before,.rms-site-footer::before{inset:10px !important;left:10px !important;right:10px !important;top:10px !important;bottom:10px !important}
 .rms-band-sand::after,.rms-cta-band::after,.rms-site-footer::after{left:16px !important;right:16px !important;top:16px !important;bottom:16px !important;background-size:22px,22px,22px,22px !important}
 .rms-band-sand,.rms-cta-band,.rms-site-footer{background-size:240px auto,240px auto,auto !important}
}
.rms-band-sand .wp-block-column,.rms-split .wp-block-column{background:rgba(255,255,255,.05) !important;border:1px solid rgba(217,181,98,.45) !important;box-shadow:none !important;backdrop-filter:blur(2px)}
.rms-band-sand .wp-block-column h3,.rms-band-sand .wp-block-column h4{color:#f0d27e !important}
