/* CECIL Official v1.0.90 — legal page refinements */
/* =========================================================
   CECIL v1.0.78 — Legal / policy pages
   ========================================================= */
.legal-page{background:var(--cecil-ivory);color:var(--cecil-ink)}
.legal-hero{min-height:clamp(330px,42vw,520px);position:relative;overflow:hidden;background:#665D52}
.legal-hero-bg{position:absolute;inset:0;background:
  radial-gradient(circle at 82% 24%,rgba(201,216,166,.18),transparent 32%),
  linear-gradient(118deg,#665D52 0%,#665D52 58%,#756A5D 100%)}
.legal-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(75,66,56,.2),transparent 55%)}
.legal-hero .cecil-simple-hero-inner{position:relative;z-index:1}
.legal-container{width:min(900px,calc(100% - 48px));margin-inline:auto}
.legal-intro{padding:clamp(56px,7vw,92px) 0 34px}
.legal-lead{font-family:var(--font-serif,serif);font-size:clamp(19px,2vw,25px);line-height:2;letter-spacing:.02em;color:#756A5D;margin:0;max-width:48em}
.legal-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:34px;padding-top:20px;border-top:1px solid rgba(102,93,82,.14);font-size:13px;color:#736C62;letter-spacing:.04em}
.legal-body{padding:34px 0 70px}
.legal-sections{display:grid;gap:0}
.legal-section{display:grid;grid-template-columns:68px 1fr;gap:26px;padding:36px 0;border-top:1px solid rgba(102,93,82,.13)}
.legal-section:last-child{border-bottom:1px solid rgba(102,93,82,.13)}
.legal-section-no{font-family:Georgia,serif;font-size:14px;color:var(--cecil-gold-dark);letter-spacing:.15em;padding-top:6px}
.legal-section h2{font-family:var(--font-serif,serif);font-size:clamp(21px,2vw,27px);font-weight:500;line-height:1.55;margin:0 0 14px;color:#665D52;text-wrap:balance}
.legal-section p{font-size:15px;line-height:2.05;margin:0;color:#4B4238}
.legal-table-wrap{overflow:hidden;border:1px solid rgba(102,93,82,.14);border-radius:18px;background:#FAF7EF;box-shadow:0 16px 46px rgba(102,93,82,.07)}
.legal-table{margin:0}
.legal-table>div{display:grid;grid-template-columns:220px minmax(0,1fr);border-bottom:1px solid rgba(102,93,82,.1)}
.legal-table>div:last-child{border-bottom:0}
.legal-table dt,.legal-table dd{margin:0;padding:22px 24px;line-height:1.85;font-size:14px}
.legal-table dt{background:rgba(102,93,82,.045);font-weight:700;color:#756A5D}
.legal-table dd{color:#4B4238}
.legal-table a{color:#4B4238;font-weight:700;text-decoration:none}
.legal-contact{padding:20px 0 clamp(80px,10vw,128px)}
.legal-contact-card{position:relative;padding:clamp(32px,5vw,54px);border-radius:20px;background:#665D52;color:#FAF7EF;box-shadow:0 24px 60px rgba(102,93,82,.18);overflow:hidden}
.legal-contact-card::after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(201,216,166,.18);border-radius:50%;right:-80px;top:-90px}
.legal-contact-card>span{display:block;color:var(--cecil-gold-light);font-size:11px;letter-spacing:.24em;margin-bottom:10px}
.legal-contact-card h2{font-family:var(--font-serif,serif);font-size:clamp(24px,3vw,34px);font-weight:500;margin:0 0 14px}
.legal-contact-card p{line-height:1.9;color:rgba(250,247,239,.78);max-width:42em;margin:0 0 26px}
.legal-contact-card dl{margin:0 0 28px;display:grid;gap:10px}
.legal-contact-card dl>div{display:grid;grid-template-columns:80px 1fr;gap:12px}
.legal-contact-card dt{font-size:12px;color:var(--cecil-gold-light)}
.legal-contact-card dd{margin:0;font-size:14px;color:#FAF7EF}
.legal-contact-card a:not(.btn){color:#FAF7EF}

@media(max-width:760px){
  .legal-hero{min-height:330px}
  .legal-container{width:min(calc(100% - 32px),900px)}
  .legal-intro{padding:48px 0 20px}
  .legal-lead{font-size:18px;line-height:1.9}
  .legal-meta{align-items:flex-start;flex-direction:column;gap:7px;margin-top:26px}
  .legal-body{padding:24px 0 52px}
  .legal-section{grid-template-columns:1fr;gap:10px;padding:28px 0}
  .legal-section-no{padding:0;font-size:12px}
  .legal-section h2{font-size:21px;margin-bottom:10px}
  .legal-section p{font-size:14px;line-height:1.95}
  .legal-table-wrap{border-radius:14px}
  .legal-table>div{grid-template-columns:1fr}
  .legal-table dt,.legal-table dd{padding:15px 18px}
  .legal-table dt{padding-bottom:8px;border-bottom:0;background:rgba(102,93,82,.055);font-size:13px}
  .legal-table dd{padding-top:12px;font-size:14px}
  .legal-contact-card{border-radius:16px;padding:30px 24px}
  .legal-contact-card dl>div{grid-template-columns:1fr;gap:3px}
}


