/* Hotel page specific styles (built on top of base.css) */
.section-hero {
  position: relative;
  padding: var(--space-20) 0 var(--space-16) 0;
  background: radial-gradient(80% 60% at 20% 20%, rgba(178, 75, 243, 0.12) 0%, transparent 60%),
              radial-gradient(60% 50% at 80% 80%, rgba(14, 165, 233, 0.12) 0%, transparent 60%);
}
.section {
  padding: var(--space-16) 0;
}
.section-accent {
  background: linear-gradient(180deg, rgba(178, 75, 243, 0.06) 0%, rgba(14, 165, 233, 0.06) 100%);
}
.section-alt {
  background: linear-gradient(180deg, rgba(14, 165, 233, 0.05) 0%, rgba(6, 182, 212, 0.05) 100%);
}
.section-contrast {
  background: var(--color-bg-secondary);
}
.hero-copy p { max-width: 60ch; }
.hero-media { border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--glow-purple), var(--shadow-xl); }

.feature-list { list-style: none; padding-left: 0; }
.feature-list li { position: relative; padding-left: var(--space-6); margin-bottom: var(--space-3); color: var(--color-text-secondary); }
.feature-list li::before {
  content: '';
  position: absolute;
  left: 0; top: 0.6em;
  width: 10px; height: 10px;
  border-radius: 2px;
  background: linear-gradient(135deg, var(--color-neon-purple), var(--color-electric-blue));
  box-shadow: var(--glow-purple);
}

/* FAQ */
.faq-list details { transition: border-color var(--transition-base), transform var(--transition-fast); }
.faq-list details[open] { border-color: var(--color-border-primary); transform: translateY(-2px); box-shadow: var(--glow-purple); }
.faq-list summary { cursor: pointer; font-family: var(--font-display); letter-spacing: 0.04em; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: '+';
  float: right;
  color: var(--color-primary);
  transition: transform var(--transition-base);
}
.faq-list details[open] summary::after { transform: rotate(45deg); }

/* Responsive tweaks */
@media (max-width: 768px) {
  .section-hero { padding: var(--space-16) 0 var(--space-12) 0; }
}
