/* Layout: a financial-broadsheet product page. Masthead, a lead story (the hero), then columns of "reports". */
:root{
  --ink:#16112A; --paper:#F7F5EF; --card:#FFFFFF; --fg:#16112A; --muted:#5E5A6E; --rule:#D9D5CA;
  --accent:#5B3FA6; --accent-soft:#ECE7F7; --go:#1F7A52; --go-soft:#E1F0E8; --gold:#9A7406; --gold-soft:#F8EFD2;
  --display:"Playfair Display",Georgia,"Times New Roman",serif; --body:"Libre Caslon Text",Georgia,"Times New Roman",serif; --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--paper:#121020;--card:#1B1730;--fg:#EDEAF4;--muted:#A8A3BB;--rule:#2F2A45;--accent:#BBA8F4;--accent-soft:#2A2148;--go:#72D2A2;--go-soft:#173528;--gold:#E3B21F;--gold-soft:#3A3113;color-scheme:dark}}
:root[data-theme="dark"]{--paper:#121020;--card:#1B1730;--fg:#EDEAF4;--muted:#A8A3BB;--rule:#2F2A45;--accent:#BBA8F4;--accent-soft:#2A2148;--go:#72D2A2;--go-soft:#173528;--gold:#E3B21F;--gold-soft:#3A3113;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--fg);font:18px/1.65 var(--body);font-variant-numeric:tabular-nums}
a{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
.ticker{background:var(--ink);color:#EDEAF6;font:500 13px var(--mono);overflow:hidden;white-space:nowrap;padding-block:8px}
.ticker .track{display:inline-flex;gap:40px;animation:tick 48s linear infinite;padding-left:20px}
.ticker b{color:#E3B21F;font-weight:600}
@keyframes tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.ticker .track{animation:none}}
.mast{border-bottom:4px double var(--fg);padding-block:22px 14px;text-align:center}
.mast .meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:500 12px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:14px}
.mast h1{font:900 clamp(46px,9vw,104px)/0.95 var(--display);letter-spacing:-.02em;margin:0;display:inline-flex;align-items:center;gap:18px}
.mast h1 svg{width:clamp(48px,8vw,86px);height:auto}
.mast .tag{font:italic 400 clamp(17px,2.4vw,22px) var(--body);color:var(--muted);margin:10px 0 0}
.lead{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px;padding-block:36px;border-bottom:1px solid var(--rule)}
.kicker{font:600 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.lead h2{font:900 clamp(34px,5vw,58px)/1.04 var(--display);margin:8px 0 14px;text-wrap:balance}
.lead p.dek{font-size:20px;color:var(--muted);max-width:56ch;margin:0 0 20px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;font:600 15px var(--mono);letter-spacing:.02em;padding:12px 18px;border:2px solid var(--fg);color:var(--fg);text-decoration:none;background:transparent}
.btn.primary{background:var(--fg);color:var(--paper)}
.btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.phone{background:var(--card);border:1px solid var(--rule);padding:18px;display:grid;gap:10px;align-content:start}
.phone .h{font:600 12px var(--mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;display:flex;justify-content:space-between}
.msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:15px;line-height:1.45}
.msg.in{background:var(--paper);border:1px solid var(--rule);justify-self:start}
.msg.out{background:var(--go);color:#fff;justify-self:end}
.msg small{display:block;font:500 11px var(--mono);opacity:.8;margin-top:4px}
.note{font:500 12px var(--mono);color:var(--muted)}
.section{padding-block:40px;border-bottom:1px solid var(--rule)}
.section h3{font:900 clamp(28px,4vw,40px)/1.1 var(--display);margin:6px 0 18px;text-wrap:balance}
.cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.cols3 > div{padding:0 22px;border-left:1px solid var(--rule)}
.cols3 > div:first-child{padding-left:0;border-left:0}
.cols3 h4{font:700 22px/1.2 var(--display);margin:6px 0 8px}
.cols3 p{margin:0;color:var(--fg)}
.num{font:600 12px var(--mono);color:var(--accent);letter-spacing:.1em}
.plats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.plats div{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:12px 14px}
.plats b{display:block;font:700 18px var(--display)}
.plats span{font:500 12px var(--mono);color:var(--muted)}
.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--rule);background:var(--card)}
.week>div{border-left:1px solid var(--rule);padding:10px;min-height:120px}
.week>div:first-child{border-left:0}
.week .d{font:600 12px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.slot{margin-top:8px;font:500 13px var(--mono);border-left:3px solid var(--c);padding:4px 6px;background:var(--paper)}
.wkwrap{overflow-x:auto}
.wkwrap .week{min-width:700px}
table{width:100%;border-collapse:collapse;font-size:15px}
.tw{overflow-x:auto;border-top:2px solid var(--fg)}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
th{font:600 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
td.us{font-weight:700}
.honest{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.honest .box{border-top:3px solid var(--fg);padding-top:10px}
.honest h4{font:700 20px var(--display);margin:0 0 6px}
.honest ul{margin:0;padding-left:1.1em}
.honest li{margin:4px 0}
details{border-bottom:1px solid var(--rule);padding-block:12px}
summary{cursor:pointer;font:700 20px var(--display);list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;font-family:var(--mono);color:var(--accent)}
details[open] summary::after{content:"–"}
details p{margin:10px 0 0;color:var(--muted);max-width:70ch}
.links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.links a{display:block;text-decoration:none;color:var(--fg);border:1px solid var(--rule);background:var(--card);padding:14px}
.links a b{display:block;font:700 18px var(--display)}
.links a span{font:500 12px var(--mono);color:var(--muted)}
.links a:hover{border-color:var(--accent)}
footer{padding-block:28px 48px;font:500 12px var(--mono);color:var(--muted);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media (max-width:860px){
  .lead{grid-template-columns:minmax(0,1fr)}
  .cols3{grid-template-columns:minmax(0,1fr)}
  .cols3 > div{padding:16px 0;border-left:0;border-top:1px solid var(--rule)}
  .cols3 > div:first-child{border-top:0}
  .honest{grid-template-columns:minmax(0,1fr)}
}

.vid{margin:0;align-self:start;background:var(--card);border:1px solid var(--rule);padding:10px}
.vid video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#16112A}
.vid figcaption{font-size:14px;color:var(--muted);padding:10px 4px 2px}
.vid figcaption b{display:block;color:var(--ink,inherit);font-size:15px;margin-bottom:2px}
