/* DrapOn — Shared CSS for legal/support pages */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #FAF7F2; color: #1A1A1A; font-family: 'DM Sans', -apple-system, sans-serif; font-weight: 400; line-height: 1.6; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
a { color: #C4908A; text-decoration: none; }
a:hover { text-decoration: underline; }

/* Navbar */
.navbar, nav { position: fixed; top: 0; width: 100%; padding: 16px 40px; display: flex; justify-content: space-between; align-items: center; background: rgba(250,247,242,0.9); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); z-index: 100; border-bottom: 1px solid rgba(0,0,0,0.04); }
.navbar.scrolled { background: rgba(250,247,242,0.95); }
.navbar__brand, .nav-logo { font-family: 'Playfair Display', Georgia, serif; font-size: 1.5rem; font-weight: 900; color: #1A1A1A; text-decoration: none; }
.navbar__inner { display: flex; justify-content: space-between; align-items: center; max-width: 800px; margin: 0 auto; padding: 0 24px; width: 100%; }
.navbar__right { display: flex; gap: 16px; align-items: center; }

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

/* Page Header */
.page-header { padding: 120px 0 40px; }
.page-header h1 { font-family: 'Playfair Display', Georgia, serif; font-size: clamp(2rem, 4vw, 3rem); font-weight: 700; color: #1A1A1A; }
.page-header p { color: #9B9590; margin-top: 8px; font-size: 1rem; }

/* Legal Content */
.legal-content { padding-bottom: 80px; }
.legal-content h2 { font-family: 'Playfair Display', Georgia, serif; font-size: 1.4rem; margin: 32px 0 12px; color: #1A1A1A; font-weight: 700; }
.legal-content h3 { font-size: 1.1rem; margin: 20px 0 8px; font-weight: 600; }
.legal-content p { color: #9B9590; font-size: 0.9375rem; line-height: 1.7; margin-bottom: 12px; }
.legal-content ul { list-style: none; padding: 0; margin-bottom: 12px; }
.legal-content ul li { position: relative; padding-left: 18px; margin-bottom: 6px; color: #9B9590; font-size: 0.9375rem; }
.legal-content ul li::before { content: ''; position: absolute; left: 0; top: 0.6em; width: 6px; height: 6px; border-radius: 50%; background: #C4908A; }
.legal-content a { color: #C4908A; }

/* Support Form */
.support-form { max-width: 500px; margin-top: 24px; }
.form-group { margin-bottom: 16px; }
.form-group label { display: block; font-size: 0.85rem; color: #9B9590; font-weight: 500; margin-bottom: 6px; }
.form-group input, .form-group textarea, .form-group select { width: 100%; padding: 12px 14px; background: #FFFDF9; border: 1px solid #E8E4DF; border-radius: 10px; color: #1A1A1A; font-family: 'DM Sans', sans-serif; font-size: 0.9rem; outline: none; transition: border-color 0.2s; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color: #C4908A; }
.form-group textarea { min-height: 120px; resize: vertical; }
.form-group select { appearance: none; cursor: pointer; }
.form-submit { padding: 12px 32px; background: #C4908A; color: #FFFDF9; border: none; border-radius: 50px; font-family: 'DM Sans', sans-serif; font-size: 0.9rem; font-weight: 600; cursor: pointer; transition: background 0.2s; }
.form-submit:hover { background: #9B6B6B; }
.form-success { display: none; padding: 16px; background: #FFFDF9; border: 1px solid #C4908A; border-radius: 10px; margin-top: 16px; }
.form-success.visible { display: block; }
.form-success p { color: #1A1A1A; }

/* Footer */
footer, .footer { background: #1A1A1A; color: rgba(255,255,255,0.4); padding: 40px 80px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.footer-logo, .footer__brand-name { font-family: 'Playfair Display', Georgia, serif; font-size: 1.2rem; font-weight: 700; color: #FFFDF9; }
.footer-links, .footer__links { display: flex; gap: 24px; }
.footer-links a, .footer__links a { color: rgba(255,255,255,0.4); text-decoration: none; font-size: 0.8rem; transition: color 0.3s; }
.footer-links a:hover, .footer__links a:hover { color: #E8C4B8; }
.footer-copy, .footer__bottom { font-size: 0.75rem; }
.footer__inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }

@media (max-width: 768px) {
  .navbar, nav { padding: 12px 20px; }
  footer, .footer { flex-direction: column; text-align: center; padding: 32px 20px; }
  .footer__inner { flex-direction: column; }
  .footer-links, .footer__links { flex-wrap: wrap; justify-content: center; }
}
