/* ============================================================================
   Legal / info pages (Terms, Privacy, Programme white paper)
   Brand theme: obsidian + rose (#c11d99), Cormorant Garamond + Inter.
   ============================================================================ */
:root{
  --obsidian:#070606; --ink:#0c0b09; --panel:#100e0b; --line:rgba(193,29,153,.16); --line-2:rgba(193,29,153,.3);
  --rose:#c11d99; --rose-br:#f4addd; --rose-dp:#7e1264;
  --ivory:#f4efe6; --ivory-dim:#cfc7b6; --muted:#8f886f;
  --serif:"Cormorant Garamond","Iowan Old Style",Garamond,serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--obsidian); color:var(--ivory-dim);
  font:400 16px/1.7 var(--sans); -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(120% 80% at 50% -10%, rgba(193,29,153,.10), transparent 60%);
  background-attachment:fixed;
}
a{color:var(--rose-br); text-decoration:none}
a:hover{text-decoration:underline}

.lp-head{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  max-width:1100px; margin:0 auto; padding:1.4rem clamp(1.2rem,4vw,2.4rem);
}
.lp-logo img{height:52px; width:auto; display:block; border-radius:6px}
.lp-back{
  font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ivory-dim);
  white-space:nowrap;
}

.lp-main{
  max-width:780px; margin:0 auto; padding:1rem clamp(1.2rem,4vw,2.4rem) 4rem;
}
.lp-main h1{
  font-family:var(--serif); font-weight:600; font-size:clamp(2rem,5vw,2.9rem);
  line-height:1.1; color:var(--ivory); margin:1.2rem 0 .4rem;
}
.lp-meta{font-size:.8rem; letter-spacing:.04em; color:var(--muted); margin:0 0 2.2rem; text-transform:uppercase}
.lp-lead{font-size:1.06rem; color:var(--ivory-dim); margin:0 0 2rem}

.lp-main h2{
  font-family:var(--serif); font-weight:600; font-size:1.5rem; color:var(--rose-br);
  margin:2.6rem 0 .8rem; padding-top:1.4rem; border-top:1px solid var(--line);
}
.lp-main h3{font-size:1rem; font-weight:600; color:var(--ivory); margin:1.6rem 0 .5rem; letter-spacing:.01em}
.lp-main p{margin:0 0 1rem}
.lp-main ul{margin:0 0 1.2rem; padding-left:1.3rem}
.lp-main li{margin:.4rem 0}
.lp-main li::marker{color:var(--rose)}
.lp-main strong, .lp-main b{color:var(--ivory); font-weight:600}
.lp-main code{
  font-family:"JetBrains Mono",ui-monospace,monospace; font-size:.85em;
  background:var(--panel); border:1px solid var(--line); border-radius:5px; padding:.1em .45em; color:var(--rose-br);
}

/* callout / formula box */
.lp-box{
  background:var(--panel); border:1px solid var(--line-2); border-radius:12px;
  padding:1.1rem 1.3rem; margin:1.4rem 0;
}
.lp-formula{
  text-align:center; font-family:"JetBrains Mono",ui-monospace,monospace; font-size:1rem;
  color:var(--ivory); letter-spacing:.02em;
}

/* tables */
.lp-table{width:100%; border-collapse:collapse; margin:1.2rem 0; font-size:.92rem}
.lp-table th, .lp-table td{text-align:left; padding:.7rem .9rem; border-bottom:1px solid var(--line); vertical-align:top}
.lp-table th{color:var(--rose-br); font-weight:600; letter-spacing:.04em; font-size:.78rem; text-transform:uppercase; background:rgba(193,29,153,.06)}
.lp-table td:first-child{color:var(--ivory); font-weight:500; white-space:nowrap}
.lp-yes{color:#6fb78a; font-weight:600}
.lp-no{color:#e0654f; font-weight:600}

/* steps */
.lp-steps{display:grid; gap:1rem; margin:1.4rem 0}
.lp-step{background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:1rem 1.2rem}
.lp-step h3{margin:0 0 .3rem; color:var(--rose-br)}

.lp-foot{
  border-top:1px solid var(--line); max-width:1100px; margin:0 auto;
  padding:1.8rem clamp(1.2rem,4vw,2.4rem); display:flex; flex-wrap:wrap; gap:.6rem 1.6rem;
  justify-content:space-between; align-items:center; font-size:.78rem; color:var(--muted);
}
.lp-foot a{color:var(--ivory-dim)}
.lp-foot nav{display:flex; gap:1.4rem; flex-wrap:wrap}
