/* EventOS — styles des pages internes (légal, contact) */

.page-hero{
  position:relative;padding:170px 0 60px;text-align:center;overflow:hidden;
}
.page-hero .halo{
  position:absolute;left:50%;top:-320px;transform:translateX(-50%);
  width:800px;height:800px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 50% 55%,rgba(255,200,0,.28),rgba(255,120,0,.16) 40%,transparent 70%);
  filter:blur(12px);
}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{font-size:clamp(32px,5vw,52px);font-weight:800;margin-bottom:14px}
.page-hero p{color:var(--muted);max-width:620px;margin:0 auto;font-size:17px}
.page-hero .updated{
  display:inline-block;margin-top:18px;font-family:'JetBrains Mono',monospace;
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);
  padding:6px 14px;border:1px solid var(--line);border-radius:99px;background:#fff;
}

/* Corps de texte légal */
.legal{max-width:780px;margin:0 auto;padding:30px 24px 110px}
.legal h2{font-size:23px;font-weight:700;margin:44px 0 14px;scroll-margin-top:100px}
.legal h2:first-of-type{margin-top:0}
.legal h3{font-size:17px;font-weight:700;margin:26px 0 10px}
.legal p{color:#46392A;margin-bottom:14px;font-size:16px}
.legal ul{margin:0 0 16px 22px;color:#46392A;font-size:16px}
.legal ul li{margin-bottom:8px}
.legal strong{color:var(--text)}
.legal .callout{
  background:#fff;border:1px solid var(--line);border-left:3px solid var(--orange);
  border-radius:14px;padding:16px 18px;margin:20px 0;font-size:15px;color:#46392A;
}
.legal a{color:#B4520A;font-weight:600;border-bottom:1px solid rgba(255,106,0,.35)}
.legal a:hover{color:var(--orange)}

/* Sommaire */
.toc{
  background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:20px 22px;margin-bottom:38px;
}
.toc b{font-family:'Sora',sans-serif;font-size:14px;display:block;margin-bottom:10px}
.toc ol{margin-left:20px;font-size:14.5px;color:var(--muted)}
.toc ol li{margin-bottom:6px}
.toc a{border-bottom:none;color:#75695A;font-weight:500}
.toc a:hover{color:var(--orange)}

/* Page contact */
.contact-grid{
  display:grid;grid-template-columns:1fr 1.2fr;gap:40px;
  max-width:980px;margin:0 auto;padding:30px 24px 110px;align-items:start;
}
.contact-card{
  background:var(--card);border:1px solid var(--line);border-radius:22px;padding:30px;
}
.contact-card h2{font-size:20px;margin-bottom:10px}
.contact-card p{font-size:15px;color:var(--muted);margin-bottom:18px}
.c-line{display:flex;align-items:center;gap:12px;padding:11px 0;font-size:15px;color:#46392A;border-bottom:1px dashed rgba(36,26,14,.1)}
.c-line:last-child{border-bottom:none}
.c-line .ci{width:36px;height:36px;border-radius:11px;background:rgba(255,106,0,.1);border:1px solid rgba(255,150,40,.25);display:flex;align-items:center;justify-content:center;font-size:16px;flex:none}
.c-line a{color:#B4520A;font-weight:600}

.form{display:flex;flex-direction:column;gap:16px}
.field label{display:block;font-family:'Sora',sans-serif;font-weight:600;font-size:13.5px;margin-bottom:7px}
.field input,.field select,.field textarea{
  width:100%;padding:13px 15px;border-radius:13px;font-family:'Inter',sans-serif;font-size:15px;
  border:1px solid rgba(36,26,14,.15);background:#fff;color:var(--text);
  transition:border-color .2s,box-shadow .2s;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,106,0,.15);
}
.field textarea{min-height:130px;resize:vertical}
.form .btn{align-self:flex-start}
.form-note{font-size:12.5px;color:var(--dim)}
.form-ok{
  display:none;background:rgba(40,170,90,.1);border:1px solid rgba(40,170,90,.35);
  color:#1E8A46;border-radius:13px;padding:14px 16px;font-size:14.5px;font-weight:600;
}
.form-ok.show{display:block}

@media(max-width:820px){
  .contact-grid{grid-template-columns:1fr}
  .page-hero{padding:150px 0 40px}
}
