.page-privacy-policy { color: #333333; background-color: #F5F7FA; }
.page-privacy-policy__hero-section { display: flex; flex-direction: column; align-items: center; width: 100%; padding-top: 10px; padding-bottom: 20px; background: linear-gradient(135deg, #FFFFFF 0%, #FFEBEE 100%); }
.page-privacy-policy__hero-image { width: 100%; max-width: 1200px; height: auto; aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.08); }
.page-privacy-policy__hero-content { width: 100%; max-width: 800px; text-align: center; padding: 24px 16px 0; }
.page-privacy-policy__hero-title { font-weight: 700; line-height: 1.25; letter-spacing: 0.5px; color: #333333; margin: 0 0 12px; }
.page-privacy-policy__hero-description { font-size: 1.05em; line-height: 1.6; color: #444444; margin: 0 auto 20px; max-width: 40rem; }
.page-privacy-policy__btn { display: inline-block; padding: 14px 32px; border-radius: 50px; background: linear-gradient(180deg, #FF5A4F 0%, #E53935 100%); color: #FFFFFF; font-weight: 700; text-decoration: none; box-shadow: 0 4px 15px rgba(229, 57, 53, 0.3); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.page-privacy-policy__btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(229, 57, 53, 0.4); }
.page-privacy-policy__btn--secondary { background: #FFFFFF; color: #E53935; border: 2px solid #E53935; box-shadow: none; }
.page-privacy-policy__btn--secondary:hover { background: #FFEBEE; }
.page-privacy-policy__container { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.page-privacy-policy__section { padding: 30px 0 10px; background-color: #FFFFFF; }
.page-privacy-policy__intro-section { padding: 30px 0 10px; background-color: #F5F7FA; }
.page-privacy-policy__section-title { font-size: 1.6em; font-weight: 700; color: #E53935; margin: 20px 0 16px; }
.page-privacy-policy__sub-title { font-size: 1.2em; font-weight: 600; color: #333333; margin: 20px 0 10px; }
.page-privacy-policy__text { font-size: 1em; line-height: 1.7; color: #333333; margin-bottom: 14px; }
.page-privacy-policy__list { list-style: disc; padding-left: 24px; margin: 0 0 16px; }
.page-privacy-policy__list-item { font-size: 1em; line-height: 1.6; color: #333333; margin-bottom: 8px; }
.page-privacy-policy__link { color: #E53935; text-decoration: underline; }
.page-privacy-policy__content-image { width: 100%; max-width: 800px; height: auto; aspect-ratio: 2/1; object-fit: cover; border-radius: 8px; margin: 16px 0; display: block; }
.page-privacy-policy__faq-list { margin-top: 16px; }
.page-privacy-policy__faq-item { background-color: #F5F7FA; border: 1px solid #E0E0E0; border-radius: 8px; margin-bottom: 12px; padding: 0 16px; }
.page-privacy-policy__faq-question { font-weight: 600; color: #E53935; padding: 14px 0; cursor: pointer; list-style: none; position: relative; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.page-privacy-policy__faq-question::-webkit-details-marker { display: none; }
.page-privacy-policy__faq-question::after { content: '+'; font-size: 1.4em; font-weight: 700; color: #E53935; }
.page-privacy-policy__faq-item[open] .page-privacy-policy__faq-question::after { content: '−'; }
.page-privacy-policy__faq-answer { padding: 0 0 14px; margin: 0; line-height: 1.6; color: #333333; }
.page-privacy-policy__cta-section { background: linear-gradient(135deg, #E53935 0%, #FF5A4F 100%); padding: 32px 0; text-align: center; }
.page-privacy-policy__cta-title { color: #FFFFFF; margin-bottom: 12px; }
.page-privacy-policy__cta-text { color: #FFFFFF; max-width: 700px; margin: 0 auto 20px; line-height: 1.6; }
.page-privacy-policy__cta-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; width: 100%; max-width: 100%; overflow: hidden; box-sizing: border-box; }
.page-privacy-policy__cta-buttons .page-privacy-policy__btn { max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; }
@media (max-width: 1024px) {
  .page-privacy-policy__hero-title { line-height: 1.3; }
  .page-privacy-policy__section-title { font-size: 1.4em; }
}
@media (max-width: 768px) {
  .page-privacy-policy__hero-image { aspect-ratio: 2/1; }
  .page-privacy-policy__hero-section { padding-top: 8px; }
  .page-privacy-policy p, .page-privacy-policy__hero-description, .page-privacy-policy__text, .page-privacy-policy__cta-text { font-size: 0.95em; line-height: 1.6; }
  .page-privacy-policy__section { padding: 20px 0 10px; }
  .page-privacy-policy__section-title { font-size: 1.3em; }
  .page-privacy-policy__sub-title { font-size: 1.1em; }
  .page-privacy-policy img { max-width: 100%; height: auto; }
  .page-privacy-policy__hero-content { padding: 16px 16px 0; }
  .page-privacy-policy__btn { width: auto; max-width: 100%; box-sizing: border-box; white-space: normal; word-wrap: break-word; display: inline-block; padding: 12px 24px; }
  .page-privacy-policy__cta-buttons { gap: 12px; }
}