/* ==========================================================================
   CrossPiece — privacy.html page styles
   Values carried over verbatim from the retired inline styles.
   ========================================================================== */

/* --------------------------------------------------------------------------
   privacy policy section
   -------------------------------------------------------------------------- */
.cp-privacy { background: #F3F5FC; }
.cp-privacy__rail { display: flex; justify-content: flex-end; align-items: flex-start; padding: clamp(172px,21vh,210px) clamp(14px,min(1.8vw, 25.92px),26px) 48px 12px; }
.cp-privacy__body { min-width: 0; max-width: 920px; padding: clamp(160px,19vh,200px) clamp(24px,min(5vw, 72px),88px) clamp(88px,min(12vw, 172.8px),150px) clamp(28px,min(4.5vw, 64.8px),68px); }
.cp-privacy__eyebrow-row { display: flex; align-items: center; gap: 12px; margin-bottom: clamp(24px,min(3vw, 43.2px),36px); }
.cp-privacy__eyebrow { font: 700 12px/1 'Urbanist',sans-serif; letter-spacing: .26em; color: #BE2E96; }
.cp-privacy__bar { height: 1px; width: 48px; background: #cfd6e2; }
.cp-privacy__title { font-family: 'Noto Sans JP',sans-serif; font-weight: 600; font-size: clamp(28px,min(4.2vw, 60.48px),48px); line-height: 1.4; letter-spacing: .01em; color: #1B2B4D; margin: 0 0 clamp(20px,min(2.6vw, 37.44px),28px); }
.cp-privacy__lead { font-family: 'Noto Sans JP',sans-serif; font-weight: 400; font-size: clamp(14px,min(1.2vw, 17.28px),15px); line-height: 2.05; letter-spacing: .02em; color: #3a3f45; max-width: 640px; margin: 0 0 clamp(40px,min(6vw, 86.4px),64px); }

/* numbered clauses */
.cp-privacy__list { border-top: 1px solid #cfd6e2; }
.cp-privacy__item { display: grid; grid-template-columns: clamp(40px,min(5vw, 72px),64px) 1fr; gap: clamp(14px,min(2vw, 28.8px),28px); align-items: baseline; border-bottom: 1px solid #cfd6e2; padding: clamp(24px,min(3vw, 43.2px),34px) 0; }
.cp-privacy__num { font: 300 clamp(20px,min(2.4vw, 34.56px),30px)/1 'Urbanist',sans-serif; color: #BE2E96; }
.cp-privacy__item-body { min-width: 0; }
.cp-privacy__item-title { font-family: 'Noto Sans JP',sans-serif; font-weight: 600; font-size: clamp(15.5px,min(1.7vw, 24.48px),18px); line-height: 1.6; color: #1B2B4D; margin: 0 0 10px; }
.cp-privacy__item-desc { font-family: 'Noto Sans JP',sans-serif; font-weight: 400; font-size: 13.5px; line-height: 2; color: #6B7178; margin: 0; max-width: 640px; white-space: pre-line; }

/* enactment date / signature */
.cp-privacy__meta { display: flex; flex-direction: column; gap: 6px; margin-top: clamp(28px,min(4vw, 57.6px),40px); }
.cp-privacy__meta-line { font-family: 'Noto Sans JP',sans-serif; font-size: 12.5px; line-height: 1.9; color: #9aa0a6; }

/* --------------------------------------------------------------------------
   privacy responsive (page-specific)
   -------------------------------------------------------------------------- */
@media (max-width: 720px) {
  .cp-privacy__bar { width: 32px; }
}
