/* ==========================================================================
   MONEYFROMDEBT.COM: attorney section, violation cards and popups (2026-09-29).
   Patterns from Mobbin references (Pitch team mosaic, Origin team cards, Rivian "+" feature cards),
   drawn in this site's own palette.
   ========================================================================== */

/* ---- attorneys: dark editorial mosaic ---------------------------------------- */
.lw-sec{background:radial-gradient(900px 500px at 10% 0,rgba(181,138,50,.14),transparent 60%),linear-gradient(160deg,#0C2E24,#0F3D2E);color:#DCEBE3}
body.mfd .lw-sec h2{color:#fff;font-size:clamp(2rem,3.6vw,3rem);line-height:1.05}
.lw-sec .eyebrow{background:rgba(255,255,255,.08);color:#CFE7DA}
.lw-sec .eyebrow::before{background:var(--m-brass)}
.lw-in{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,4vw,64px);align-items:center}
.lw-copy p{color:#BFD6CA;font-size:1.06rem}
.lw-facts{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}
.lw-facts li{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:baseline;border-top:1px solid rgba(255,255,255,.12);padding-top:12px}
.lw-facts b{font:800 1.5rem/1 var(--font-display);letter-spacing:-.03em;color:#fff}
.lw-facts span{color:#BFD6CA;font-size:.94rem}
.lw-hint{font-size:.86rem;color:#9FC2B1;margin:0 0 14px}
body.mfd .lw-sec .btn-ghost{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}
body.mfd .lw-sec .btn-gold{background:var(--m-brass);color:var(--m-deep);box-shadow:none}
.lw-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:14px;min-height:560px}
.lw-tile{position:relative;overflow:hidden;border-radius:20px;border:0;padding:0;cursor:pointer;background:#0A241C;text-align:left;font:inherit;color:#fff}
.lw-tile.lw-big{grid-row:1/3}
.lw-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 18%;transition:transform .7s var(--ease,ease)}
.lw-tile:hover img,.lw-tile:focus-visible img{transform:scale(1.045)}
.lw-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,33,26,.88) 100%)}
.lw-tile:focus-visible{outline:3px solid var(--m-brass);outline-offset:3px}
.lw-cap{position:absolute;left:18px;right:18px;bottom:16px;z-index:1;display:grid;gap:3px}
.lw-cap b{font:800 1.25rem/1.15 var(--font-display);letter-spacing:-.02em;color:#fff}
.lw-big .lw-cap b{font-size:1.6rem}
.lw-cap i{font-style:normal;color:#CFE0D7;font-size:.88rem}
.lw-chips{display:flex;gap:5px;margin-bottom:6px}
.lw-chips span{font:700 .66rem/1 'Inter',sans-serif;letter-spacing:.08em;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:5px 8px;color:#fff}
.lw-more{margin-top:6px;font-weight:700;font-size:.84rem;color:var(--m-brass)}
body.mfd .art-main .lw-grid{min-height:520px}
body.mfd .art-main .lw-hint{color:var(--m-muted)}
@media(max-width:960px){.lw-in{grid-template-columns:1fr}.lw-grid{min-height:0;grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .lw-tile{aspect-ratio:4/5}.lw-tile.lw-big{grid-row:auto;grid-column:1/-1;aspect-ratio:4/3}}
@media(max-width:480px){.lw-grid{grid-template-columns:1fr}.lw-tile{aspect-ratio:4/5}}

/* ---- violation cards --------------------------------------------------------- */
.vp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.vp-card{position:relative;display:flex;flex-direction:column;text-align:left;font:inherit;color:var(--m-ink);background:#fff;border:1px solid var(--m-line);
  border-radius:18px;overflow:hidden;padding:0;cursor:pointer;transition:transform .25s,box-shadow .25s,border-color .25s}
.vp-card:hover,.vp-card:focus-visible{transform:translateY(-4px);box-shadow:0 22px 44px rgba(16,35,28,.12);border-color:#C9DCD1}
.vp-card:focus-visible{outline:3px solid var(--m-green);outline-offset:3px}
.vp-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .6s}
.vp-card:hover img{transform:scale(1.04)}
.vp-body{display:grid;gap:6px;padding:16px 18px 20px}
.vp-chip{justify-self:start;font:700 .66rem/1 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--m-brass-2);background:#FBF3E2;border-radius:999px;padding:5px 9px}
.vp-body b{font:700 1.12rem/1.25 var(--font-display);letter-spacing:-.015em}
.vp-t{color:var(--m-muted);font-size:.93rem;line-height:1.5}
.vp-plus{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--m-green);
  font:700 1.4rem/1 'Inter',sans-serif;box-shadow:0 8px 20px rgba(16,35,28,.2);transition:transform .25s,background .25s,color .25s}
.vp-card:hover .vp-plus{transform:rotate(90deg);background:var(--m-green);color:#fff}
body.mfd .art-main .vp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:960px){.vp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vp-grid,body.mfd .art-main .vp-grid{grid-template-columns:1fr}}

/* ---- the popup ---------------------------------------------------------------- */
html.md-open{overflow:hidden}
dialog.md{width:min(860px,calc(100vw - 24px));max-height:calc(100vh - 32px);border:0;border-radius:22px;padding:0;background:#fff;color:var(--m-ink-2);
  box-shadow:0 40px 100px rgba(7,33,26,.45);overflow:auto}
dialog.md::backdrop{background:rgba(7,33,26,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
dialog.md[open]{animation:md-in .28s cubic-bezier(.2,.8,.2,1)}
@keyframes md-in{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.md-x{position:sticky;top:12px;float:right;margin:12px 12px 0 0;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid var(--m-line);background:#fff;
  font:400 1.6rem/1 'Inter',sans-serif;color:var(--m-ink);cursor:pointer}
.md-x:hover{background:var(--m-mint)}
.md-in{padding:clamp(22px,4vw,44px)}
body.mfd .md-in h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:.35em 0 .3em;padding-right:40px}
body.mfd .md-in h3{font-size:1.08rem;margin:1.4em 0 .5em;color:var(--m-green);text-transform:uppercase;letter-spacing:.06em;font-family:'Inter',sans-serif}
.md-lede{font-size:1.08rem;color:var(--m-ink)}
.md-list{list-style:none;counter-reset:ml;padding:0;margin:0;display:grid;gap:10px}
.md-list li{counter-increment:ml;position:relative;padding:12px 14px 12px 52px;background:#F4F8F5;border-radius:12px;font-size:.97rem}
.md-list li::before{content:counter(ml,decimal-leading-zero);position:absolute;left:14px;top:12px;font:800 1rem/1.4 var(--font-display);color:var(--m-green)}
.md-list li b{display:block;color:var(--m-ink)}
.md-todo{padding-left:1.2em;margin:0}
.md-todo li{margin:.35em 0}
.md-viol .ctarow,.md-bio .ctarow{margin-top:24px}
.md-bio{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.md-bio img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;border-radius:16px}
.md-facts{display:grid;grid-template-columns:130px 1fr;gap:8px 16px;margin:18px 0 0;font-size:.94rem}
.md-facts dt{font-weight:700;color:var(--m-ink)}
.md-facts dd{margin:0}
@media(max-width:640px){.md-bio{grid-template-columns:1fr}.md-bio img{max-width:220px}.md-facts{grid-template-columns:1fr}.md-facts dt{margin-top:6px}}
.lw-facts li{grid-template-columns:140px 1fr}.lw-facts b{white-space:nowrap}

/* ---- news items (news.html) --------------------------------------------------- */
.newsitem{position:relative;background:#fff;border:1px solid var(--m-line);border-radius:16px;padding:20px 22px 18px 22px;margin:0 0 14px;display:grid;gap:6px}
.newsitem time{font:700 .8rem/1 'Inter',sans-serif;color:var(--m-muted);letter-spacing:.02em}
.newsitem .n-tag{position:absolute;top:18px;right:18px;font:700 .64rem/1 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;background:var(--m-mint);color:var(--m-green);border-radius:999px;padding:5px 9px}
body.mfd .newsitem h3{margin:.2em 0 .1em;font-size:1.14rem;padding-right:90px}
body.mfd .newsitem p{margin:0;font-size:.98rem}
.newsitem .src{font-size:.82rem;color:var(--m-muted)}
.newsitem:target{border-color:var(--m-green);box-shadow:0 0 0 3px rgba(15,92,69,.15)}
/* home: latest news band */
.newsband{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.newsband a{display:grid;gap:8px;background:#fff;border:1px solid var(--m-line);border-radius:16px;padding:20px;text-decoration:none;color:var(--m-ink);transition:transform .2s,box-shadow .2s}
.newsband a:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(16,35,28,.1)}
.newsband time{font:700 .78rem/1 'Inter',sans-serif;color:var(--m-muted)}
.newsband b{font:700 1.06rem/1.3 var(--font-display);letter-spacing:-.01em}
.newsband span{font-size:.92rem;color:var(--m-muted);line-height:1.5}
@media(max-width:860px){.newsband{grid-template-columns:1fr}}

/* ---- company directory ---------------------------------------------------------- */
.co-searchbox{position:relative;margin:8px 0 22px}
#co-search{width:100%;min-height:58px;border:1.5px solid var(--m-line);border-radius:14px;padding:14px 18px 14px 50px;font:600 1.05rem/1 var(--font-display);color:var(--m-ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%230F5C45' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 18px 50%;box-shadow:0 10px 26px rgba(16,35,28,.06)}
#co-search:focus{outline:none;border-color:var(--m-green);box-shadow:0 0 0 4px rgba(15,92,69,.14)}
.co-list{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.co-list li[hidden]{display:none}
.co-list a{display:grid;gap:3px;background:#fff;border:1px solid var(--m-line);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--m-ink);transition:border-color .15s,transform .15s}
.co-list a:hover{border-color:var(--m-green);transform:translateY(-2px)}
.co-list b{font:700 1.02rem/1.25 var(--font-display)}
.co-list span{font-size:.86rem;color:var(--m-muted)}
.co-empty{display:none;color:var(--m-muted)}
.co-empty.on{display:block}
@media(max-width:640px){.co-list{grid-template-columns:1fr}}

.dirband{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;background:linear-gradient(135deg,#fff,var(--m-mint));border:1px solid var(--m-line);border-radius:22px;padding:clamp(22px,3.5vw,40px)}
body.mfd .dirband h2{margin:.3em 0 .25em}
.dir-form{display:flex;gap:10px}
.dir-form input{flex:1;min-height:56px;border:1.5px solid var(--m-line);border-radius:12px;padding:12px 16px;font:600 1rem/1 var(--font-display);background:#fff;min-width:0}
.dir-form input:focus{outline:none;border-color:var(--m-green);box-shadow:0 0 0 4px rgba(15,92,69,.14)}
@media(max-width:860px){.dirband{grid-template-columns:1fr}}
@media(max-width:480px){.dir-form{flex-direction:column}}
.lw-chips{margin:8px 0 2px}
