/* Piccolo Studios — legal / policy pages, extends piccolo.css tokens */

/* reveal system (base states; JS adds .is-in) */
[data-reveal]{opacity:0;transform:translateY(24px);
  transition:opacity .8s cubic-bezier(.25,.8,.35,1),transform .8s cubic-bezier(.25,.8,.35,1)}
[data-reveal].is-in{opacity:1;transform:none}
.no-motion [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}

.legal-head{border-bottom:1px solid rgba(16,16,20,.1)}
.legal-eff{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin-top:clamp(14px,1.8vw,22px)}
.legal-eff b{color:var(--purple)}

.legal-sec{padding:clamp(64px,7vw,110px) 0}
.legal-intro{max-width:66ch}
.legal-intro p+p{margin-top:18px}

.legal-list{display:flex;flex-direction:column;gap:clamp(52px,6vw,88px)}
.legal-item{display:grid;grid-template-columns:clamp(56px,6vw,88px) 1fr;gap:clamp(18px,2.6vw,36px);
  padding-top:clamp(28px,3vw,44px);border-top:1px solid rgba(16,16,20,.12)}
.legal-item:first-child{border-top:none;padding-top:0}
.legal-num{font-family:var(--cond);font-weight:700;font-size:clamp(34px,3.4vw,54px);line-height:1;
  color:transparent;-webkit-text-stroke:1.5px rgba(16,16,20,.5)}
.legal-item h2{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:-.005em;
  font-size:clamp(20px,1.8vw,30px);margin-bottom:clamp(14px,1.6vw,20px)}
.legal-item .body-t{max-width:66ch}
.legal-item .body-t+.body-t,.legal-item .body-t+ul,.legal-item ul+p{margin-top:16px}

.legal-bullets{display:flex;flex-direction:column;gap:10px;margin-top:16px;max-width:66ch;list-style:none}
.legal-bullets li{position:relative;padding-left:24px;font-size:clamp(15px,1.15vw,18px);color:#4c4a52;line-height:1.65}
.legal-bullets li::before{content:"";position:absolute;left:0;top:.72em;width:12px;height:2px;background:var(--orange)}

.legal-item a{color:var(--purple);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
.legal-item a:hover{color:var(--ink)}

.legal-foot{margin-top:clamp(56px,6vw,88px);padding-top:clamp(24px,2.6vw,36px);border-top:2px solid var(--ink);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:13px;color:var(--grey)}
