/* Mogoo — shared stylesheet for legal, FAQ and information pages.
   Uses the site's own tokens and self-hosted fonts. No external requests. */

@font-face{font-family:'Brave Phoenix';src:url('fonts/bravephoenix.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Brave Phoenix';src:url('fonts/bravephoenixital.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'League Spartan';src:url('fonts/LeagueSpartan-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/DMSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/DMSans-Medium.ttf') format('truetype');font-weight:500;font-display:swap}

:root{
  --red:#C12027; --red-deep:#8f151b; --dark:#333333; --ink:#1d1d1d; --coal:#161616;
  --white:#ffffff; --bone:#f4f2ef; --grey:#8a8a8a;
  --line:rgba(255,255,255,.12); --line-dark:rgba(0,0,0,.1);
  --display:'Brave Phoenix','League Spartan',sans-serif;
  --body:'League Spartan',sans-serif;
  --detail:'DM Sans',sans-serif;
  --gutter:clamp(1.25rem,4vw,4.5rem);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bone);color:var(--ink);line-height:1.7;font-size:16.5px}
img{max-width:100%;display:block}
a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--red-deep)}
.wrap{max-width:900px;margin:0 auto;padding:0 var(--gutter)}

.skip{position:absolute;left:-9999px;top:0;background:var(--red);color:#fff;padding:12px 20px;
  font-family:var(--detail);font-weight:500;z-index:200}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--red);outline-offset:2px}

/* ---------- nav (matches the site's fixed dark bar) ---------- */
nav.lg{position:sticky;top:0;z-index:60;background:var(--coal);border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:0 var(--gutter);height:74px}
nav.lg .nav-brand{display:flex;align-items:center;gap:12px}
nav.lg .mark{height:34px;width:auto}
nav.lg .word{height:19px;width:auto}
nav.lg .back{font-family:var(--detail);font-size:.78rem;font-weight:500;letter-spacing:.16em;
  text-transform:uppercase;color:#cfcfcf;text-decoration:none;white-space:nowrap}
nav.lg .back:hover{color:var(--red)}

/* ---------- page head (dark, like a section opener) ---------- */
.phead{background:var(--coal);color:#fff;padding:64px 0 56px;border-bottom:3px solid var(--red)}
.phead .crumb{font-family:var(--detail);font-size:.76rem;letter-spacing:.1em;color:var(--grey);
  margin-bottom:20px}
.phead .crumb a{color:var(--grey);text-decoration:none}
.phead .crumb a:hover{color:var(--red)}
.sec-idx{font-family:var(--detail);font-size:.72rem;font-weight:500;letter-spacing:.22em;
  text-transform:uppercase;color:var(--red);display:flex;align-items:center;gap:9px;margin-bottom:16px}
.sec-idx i{font-style:normal;opacity:.55}
.phead h1{font-family:var(--display);font-style:italic;text-transform:uppercase;
  font-size:clamp(2.1rem,6vw,3.6rem);line-height:1.02;letter-spacing:.01em;margin-bottom:18px}
.phead .lead{color:#c9c9c9;font-size:1.06rem;max-width:64ch}
.phead .updated{margin-top:22px;font-family:var(--detail);font-size:.8rem;color:var(--grey)}

/* ---------- body ---------- */
main{padding:56px 0 80px}
main h2{font-family:var(--display);font-style:italic;text-transform:uppercase;
  font-size:clamp(1.28rem,2.8vw,1.85rem);line-height:1.12;color:var(--ink);
  margin:48px 0 16px;scroll-margin-top:96px}
main h2:first-of-type{margin-top:0}
main h3{font-family:var(--body);font-weight:600;font-size:1.08rem;margin:30px 0 10px;color:var(--ink)}
main p{margin-bottom:1.05em;max-width:74ch}
main ul,main ol{margin:0 0 1.15em 1.3em;max-width:74ch}
main li{margin-bottom:.5em}
main strong{font-weight:600}
hr{border:0;border-top:1px solid var(--line-dark);margin:48px 0}

/* ---------- table of contents ---------- */
.toc{background:var(--white);border:1px solid var(--line-dark);padding:26px 30px;margin-bottom:48px}
.toc h2{font-family:var(--detail)!important;font-style:normal!important;font-size:.72rem!important;
  font-weight:500;letter-spacing:.22em;color:var(--red);margin:0 0 14px!important}
.toc ol{margin:0;padding-left:1.25em;columns:2;column-gap:34px}
.toc li{margin-bottom:.42em;break-inside:avoid}
.toc a{text-decoration:none;font-size:.95rem;color:var(--ink)}
.toc a:hover{color:var(--red);text-decoration:underline}
@media(max-width:640px){.toc ol{columns:1}}

/* ---------- callout, tables, facts ---------- */
.note{background:var(--white);border-left:4px solid var(--red);padding:20px 24px;margin:26px 0}
.note p:last-child{margin-bottom:0}
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:22px 0 30px}
.tbl{width:100%;border-collapse:collapse;font-size:.95rem;background:var(--white)}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:13px 15px;border-bottom:1px solid var(--line-dark)}
.tbl th{font-family:var(--detail);font-weight:500;font-size:.74rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--red);background:#faf9f7}
.tbl tr:last-child td{border-bottom:0}
.facts{display:grid;grid-template-columns:minmax(150px,230px) 1fr;background:var(--white);
  border:1px solid var(--line-dark);margin:26px 0 34px}
.facts dt{font-family:var(--detail);font-weight:500;font-size:.8rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--red);padding:14px 18px;border-bottom:1px solid var(--line-dark)}
.facts dd{padding:14px 18px;border-bottom:1px solid var(--line-dark);font-size:.97rem}
.facts dt:last-of-type,.facts dd:last-of-type{border-bottom:0}
@media(max-width:560px){
  .facts{grid-template-columns:1fr}
  .facts dt{border-bottom:0;padding-bottom:2px}
  .facts dd{padding-top:2px}
}

/* ---------- FAQ ---------- */
.faq-group{margin-bottom:56px}
.faq-group>.grp-lead{color:var(--dark);margin-bottom:26px;max-width:74ch}
details.qa{background:var(--white);border:1px solid var(--line-dark);margin-bottom:10px;
  transition:border-color .2s}
details.qa[open]{border-color:rgba(193,32,39,.4)}
details.qa summary{cursor:pointer;list-style:none;padding:18px 54px 18px 22px;position:relative;
  font-weight:600;font-size:1.02rem;color:var(--ink)}
details.qa summary::-webkit-details-marker{display:none}
details.qa summary::after{content:"";position:absolute;right:24px;top:25px;width:9px;height:9px;
  border-right:2px solid var(--red);border-bottom:2px solid var(--red);
  transform:rotate(45deg);transition:transform .22s}
details.qa[open] summary::after{transform:rotate(-135deg);top:28px}
details.qa summary:hover{color:var(--red)}
details.qa .ans{padding:0 22px 22px;margin-top:2px;border-top:1px solid var(--line-dark);padding-top:17px}
details.qa .ans p:last-child,details.qa .ans ul:last-child{margin-bottom:0}

/* ---------- footer ---------- */
footer.lg{background:var(--coal);color:#9b9b9b;padding:58px 0 28px;font-size:.93rem}
footer.lg .wrap{max-width:1180px}
footer.lg .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:42px;margin-bottom:38px}
footer.lg h4{font-family:var(--detail);font-size:.72rem;font-weight:500;letter-spacing:.22em;
  text-transform:uppercase;color:var(--red);margin-bottom:16px}
footer.lg a{color:#c4c4c4;text-decoration:none;display:block;margin-bottom:9px}
footer.lg a:hover{color:var(--red)}
footer.lg .blurb{max-width:40ch;line-height:1.65;color:#8f8f8f}
footer.lg .ftag{font-family:var(--display);font-style:italic;text-transform:uppercase;
  color:#fff;margin-top:16px;letter-spacing:.04em}
footer.lg .base{border-top:1px solid var(--line);padding-top:22px;display:flex;
  justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.8rem;color:#7a7a7a}
@media(max-width:800px){footer.lg .cols{grid-template-columns:1fr;gap:30px}}

/* ---------- cookie consent ---------- */
#cc{position:fixed;left:0;right:0;bottom:0;z-index:300;background:var(--coal);color:#dcdcdc;
  border-top:3px solid var(--red);padding:20px var(--gutter);display:none}
#cc.show{display:block}
#cc .cc-in{max-width:1180px;margin:0 auto;display:flex;gap:22px;align-items:center;
  flex-wrap:wrap;justify-content:space-between}
#cc p{margin:0;max-width:62ch;font-size:.92rem;line-height:1.6}
#cc a{color:var(--red)}
#cc .cc-btns{display:flex;gap:10px;flex-wrap:wrap}
#cc button{font-family:var(--detail);font-weight:500;font-size:.82rem;letter-spacing:.12em;
  text-transform:uppercase;padding:13px 26px;border:1px solid transparent;cursor:pointer;
  transition:.2s;background:transparent;color:#dcdcdc}
#cc .yes{background:var(--red);color:#fff;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%);padding:13px 32px}
#cc .yes:hover{background:var(--red-deep)}
#cc .no{border-color:rgba(255,255,255,.35)}
#cc .no:hover{background:rgba(255,255,255,.1)}
@media(max-width:700px){#cc .cc-in{flex-direction:column;align-items:flex-start}
  #cc .cc-btns{width:100%}#cc button{flex:1}}

@media print{
  nav.lg,footer.lg,#cc,.skip,.toc{display:none!important}
  body{background:#fff;font-size:11pt}
  .phead{background:#fff;color:#000;border-bottom:2px solid #000;padding:0 0 20px}
  .phead h1,.phead .lead{color:#000}
  a{color:#000;text-decoration:none}
  main{padding:0}
}
