/* romantic-escapes.css */
.romantic-hero-band { background: linear-gradient(135deg, #1a0a0a 0%, #4a1520 50%, #2d0a18 100%); color: var(--white); padding: 5rem 2rem 4rem; text-align: center; position: relative; overflow: hidden; }
.romantic-hero-band::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(224,92,64,0.25), transparent); }
.romantic-hero-band h1 { font-family: var(--font-display); font-size: var(--fs-3xl); font-weight: 900; margin-bottom: 1rem; position: relative; }
.romantic-hero-band p  { font-size: var(--fs-md); color: rgba(255,255,255,0.8); max-width: 560px; margin: 0 auto; position: relative; }
.romantic-eyebrow { display: block; font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); margin-bottom: 1rem; position: relative; }
.resort-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
.resort-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; transition: all var(--transition); }
.resort-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); }
.resort-img { aspect-ratio: 3/2; background: linear-gradient(135deg, #f5e0e8, #f0c8d8); display: flex; align-items: center; justify-content: center; font-size: 4rem; position: relative; }
.resort-stars { position: absolute; bottom: 0.75rem; left: 0.75rem; background: rgba(0,0,0,0.6); color: var(--gold); font-size: var(--fs-sm); padding: 0.25rem 0.6rem; border-radius: var(--radius-sm); }
.resort-body { padding: 2rem; }
.resort-type  { font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #9b3060; margin-bottom: 0.5rem; }
.resort-name  { font-family: var(--font-display); font-size: var(--fs-xl); font-weight: 900; margin-bottom: 0.75rem; }
.resort-desc  { font-size: var(--fs-sm); color: var(--mid); margin-bottom: 1.25rem; }
.resort-features { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1.5rem; }
.resort-feature { background: #fdf0f5; color: #7a2040; font-size: var(--fs-xs); padding: 0.25rem 0.7rem; border-radius: 20px; font-weight: 600; }
.resort-price-row { display: flex; align-items: center; justify-content: space-between; padding-top: 1.25rem; border-top: 1px solid var(--border); }
.resort-price { font-family: var(--font-display); font-size: var(--fs-xl); font-weight: 900; color: var(--ocean); }
.resort-price-note { font-size: var(--fs-xs); color: var(--muted); }
.experiences-romantic { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.exp-card { text-align: center; padding: 2rem 1.5rem; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); transition: all var(--transition); }
.exp-card:hover { box-shadow: var(--shadow); transform: translateY(-4px); border-color: #e8a0b8; }
.exp-icon  { font-size: 2.5rem; display: block; margin-bottom: 1rem; }
.exp-title { font-family: var(--font-display); font-size: var(--fs-md); font-weight: 700; margin-bottom: 0.5rem; }
.exp-text  { font-size: var(--fs-sm); color: var(--mid); }
@media(max-width:900px){.resort-grid{grid-template-columns:1fr}.experiences-romantic{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.experiences-romantic{grid-template-columns:1fr}}
