/* Sub-page (legal) layout — builds on styles.css */

.legal-main{
  max-width:1000px; margin:0 auto;
  padding:150px var(--pad) clamp(60px,9vw,120px);
}

.legal-head{ margin-bottom:clamp(34px,5vw,64px); }
.legal-back{
  font-family:var(--mono); font-size:12px; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; color:var(--white-dim);
  display:inline-flex; align-items:center; gap:8px; margin-bottom:24px;
  transition:color .14s;
}
.legal-back:hover{ color:var(--yellow); }
.legal-back .arr{ color:var(--yellow); }

.legal-title{
  font-family:var(--display); text-transform:uppercase;
  font-size:clamp(46px,10vw,150px); line-height:.84; letter-spacing:-.03em;
  margin:0;
}
.legal-title .y{ color:var(--yellow); }
.legal-sub{
  font-family:var(--mono); font-size:13px; letter-spacing:.06em;
  color:var(--white-dim); margin-top:18px;
}
.legal-sub b{ color:var(--white); }

.legal-body{
  border-top:2px solid var(--white); padding-top:clamp(34px,5vw,56px);
}

.legal-section{ margin-bottom:clamp(38px,5vw,64px); }
.legal-section:last-child{ margin-bottom:0; }

.legal-section h2{
  font-family:var(--display); text-transform:uppercase;
  font-size:clamp(20px,2.4vw,30px); line-height:1; letter-spacing:-.01em;
  margin:0 0 18px; display:flex; align-items:baseline; gap:14px;
}
.legal-section h2 .idx{
  font-family:var(--mono); font-size:14px; color:var(--yellow); font-weight:700;
}

.legal-section p,
.legal-section li{
  font-family:var(--body); font-weight:500;
  font-size:clamp(15px,1.3vw,17px); line-height:1.6; color:var(--white-dim);
  max-width:70ch;
}
.legal-section p{ margin:0 0 14px; }
.legal-section p:last-child{ margin-bottom:0; }
.legal-section a{ color:var(--white); text-decoration:underline; text-underline-offset:3px; }
.legal-section a:hover{ color:var(--yellow); }
.legal-section b, .legal-section strong{ color:var(--white); }

.legal-section ul{ margin:0 0 14px; padding-left:0; list-style:none; }
.legal-section li{ position:relative; padding-left:24px; margin-bottom:8px; }
.legal-section li::before{
  content:'■'; position:absolute; left:0; top:0; color:var(--yellow); font-size:9px; top:.45em;
}

.legal-data{
  font-family:var(--mono); font-size:14px; line-height:1.9; color:var(--white);
  border-left:3px solid var(--yellow); padding-left:18px; margin:0;
}
.legal-data .k{ color:var(--white-dim); }

.legal-note{
  font-family:var(--mono); font-size:12px; letter-spacing:.04em;
  color:var(--white-dim); background:var(--card); border:2px solid var(--line);
  padding:16px 18px; margin-top:10px;
}
.legal-note b{ color:var(--yellow); }
