/* OffPlan Insider components. Every value resolves to a token. */

.opi-container{max-width:var(--container-page);margin-inline:auto;padding-inline:var(--space-6)}
.opi-overline{font-family:var(--font-mono);font-size:var(--text-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-accent);margin:0 0 var(--space-3);font-weight:var(--weight-medium)}
.opi-ink .opi-overline{color:var(--sapphire-400)}

/* Breadcrumbs */
.opi-breadcrumbs{margin:0 0 var(--space-6);font-size:var(--text-caption)}
.opi-breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}
.opi-breadcrumbs li{color:var(--text-3)}
.opi-breadcrumbs li+li::before{content:"\00B7";margin-right:var(--space-2);color:var(--gray-300)}
.opi-breadcrumbs a{color:var(--text-3)}
.opi-breadcrumbs a:hover{color:var(--link-hover)}


/* Key takeaways. Rule-bounded, not a card: hairlines only, mono numerals,
   no box and no shadow. Single source of truth for every post type. */
.opi-takeaways{background:none;border:0;border-top:2px solid var(--ink-900);border-bottom:1px solid var(--border-1);box-shadow:none;padding:var(--space-6) 0 var(--space-2);margin:var(--space-12) 0}
.opi-takeaways>h2{font-family:var(--font-mono);font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin:0 0 var(--space-5);border:0;padding:0}
.opi-takeaways>h2::before{content:none}
.opi-takeaways ul{margin:0;padding:0;list-style:none;counter-reset:opi-take}
.opi-takeaways li{counter-increment:opi-take;position:relative;padding:0 0 0 var(--space-8);margin:0 0 var(--space-5);border:0;font-size:1.0625rem;line-height:1.62;color:var(--text-2)}
.opi-takeaways li:last-child{margin-bottom:var(--space-4);border:0;padding-bottom:0}
/* width/height/background are reset explicitly: the old rule drew an 8x2
   accent bar here, which survived as a stray tick above each numeral. */
.opi-takeaways li::before{content:counter(opi-take,decimal-leading-zero);position:absolute;left:0;top:.12em;width:auto;height:auto;background:none;font-family:var(--font-mono);font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:.04em;color:var(--accent)}
@media(max-width:640px){.opi-takeaways{padding:var(--space-5) 0 var(--space-2)}}

/* Tables and the project fact block */
.opi-facts{margin:0 0 var(--space-10)}
.opi-facts h2,.opi-facts h3{font-size:var(--text-h4);margin:var(--space-8) 0 var(--space-4)}
.opi-facts h2:first-child{margin-top:0}
.opi-facts table,.wp-block-table table,.opi-prose table{width:100%;border-collapse:collapse;background:var(--surface-card);border:1px solid var(--border-1);font-size:var(--text-body-sm)}
.opi-facts th,.opi-facts td,.wp-block-table th,.wp-block-table td,.opi-prose th,.opi-prose td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-1);text-align:left;vertical-align:top}
.opi-facts thead th,.wp-block-table thead th,.opi-prose thead th{background:var(--surface-sunken);font-family:var(--font-mono);font-size:var(--text-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-3);font-weight:var(--weight-medium);white-space:nowrap}
.opi-facts tbody tr:last-child td,.opi-facts tbody tr:last-child th,.wp-block-table tbody tr:last-child td,.opi-prose tbody tr:last-child td{border-bottom:none}
.opi-facts th[scope="row"]{width:44%;font-weight:var(--weight-medium);color:var(--text-2)}
.opi-facts td{font-weight:var(--weight-semibold);color:var(--text-1)}
.wp-block-table figcaption,.opi-prose figcaption{font-size:var(--text-caption);color:var(--text-3);margin-top:var(--space-3);text-align:left}
.wp-block-table{overflow-x:auto}
.opi-prose td .num,.opi-facts .num{font-family:var(--font-mono);font-size:var(--text-body-sm)}

/* Stat cards */
.opi-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--border-1);border:1px solid var(--border-1)}
.opi-stat{background:var(--surface-card);padding:var(--space-6)}
.opi-stat__label{font-family:var(--font-mono);font-size:var(--text-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-3);margin:0 0 var(--space-2)}
.opi-stat__value{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:2rem;line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--text-1);margin:0}
.opi-stat__note{font-size:var(--text-caption);color:var(--text-3);margin:var(--space-2) 0 0}
.opi-ink .opi-stats{background:var(--border-ink);border-color:var(--border-ink)}
.opi-ink .opi-stat{background:var(--ink-950)}
.opi-ink .opi-stat__value{color:var(--text-inverse)}
.opi-ink .opi-stat__label,.opi-ink .opi-stat__note{color:var(--text-inverse-2)}


/* Trust block */

/* Quick answer, FAQ, references and sources are defined once, in
   article-parts.css, which is now loaded on every singular view. Keeping a
   second copy here is what produced the FAQ box outline, the flush-left
   question text and the display-font Quick answer. */
