/* ============================================================
   THE INSTITUTIONAL MASTERPLAN EDITION — a distinct flagship
   design system. Steel navy, burgundy, architectural paper.
   Executive-report / annual-report register: numbered pillar
   blocks in place of octagram/hexagon/polaroid icon systems,
   a blueprint grid background, and a horizontal milestone
   timeline. IBM Plex Sans typography — not Cinzel/Amiri/Space
   Grotesk/Playfair.
   Independent stylesheet — does not extend any other prospectus
   stylesheet in this repo.
   ============================================================ */

:root{
  --im-navy:#1B3A5C; --im-navy-deep:#122740; --im-steel:#4A5568;
  --im-burgundy:rgb(var(--lv-w236,138,107,54)); --im-burgundy-bright:rgb(var(--lv-g,198,161,91));
  --im-paper:rgb(var(--lv-w05,245,243,238)); --im-paper-dim:rgb(var(--lv-w237,237,233,223)); --im-white:#FFFFFF;
  --im-ink:#1E2429; --im-ink-soft:rgba(30,36,41,0.62);
  --im-line:rgba(30,36,41,0.14);
}

*{box-sizing:border-box;}
body.pros-body{margin:0; background:#33383e; font-family:'IBM Plex Sans','Arial',sans-serif;}

.im-toolbar{
  position:sticky; top:0; z-index:50; display:flex; justify-content:space-between; align-items:center;
  padding:12px 24px; background:var(--im-navy-deep); color:var(--im-paper);
}
.im-toolbar button{
  background:var(--im-burgundy); color:#fff; border:none; padding:8px 18px;
  font-family:'IBM Plex Sans',sans-serif; font-weight:600; letter-spacing:0.02em; cursor:pointer;
}

.im-spread{
  width:210mm; min-height:297mm; margin:20px auto; position:relative; overflow:hidden; isolation:isolate;
  background:var(--im-white); box-shadow:0 30px 70px -20px rgba(0,0,0,0.6);
  padding:18mm 16mm; box-sizing:border-box; page-break-after:always;
}
.im-spread + .im-spread{margin-top:20px;}
.im-spread.dark{background:var(--im-navy-deep); color:var(--im-paper);}
.im-spread.cover{padding:0; display:flex; align-items:flex-end;}

/* ---- Blueprint grid overlay — architectural drafting-table feel ---- */
.im-grid-bg{
  position:absolute; inset:0; z-index:0; pointer-events:none; opacity:0.55;
  background-image:linear-gradient(rgba(27,58,92,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(27,58,92,0.06) 1px, transparent 1px);
  background-size:12mm 12mm;
}
.im-spread.dark .im-grid-bg{background-image:linear-gradient(rgba(var(--lv-w05s,245,243,238),0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--lv-w05s,245,243,238),0.06) 1px, transparent 1px);}

.im-folio{position:absolute; bottom:9mm; left:16mm; right:16mm; z-index:3; display:flex; justify-content:space-between; font-family:'IBM Plex Sans',sans-serif; font-size:7.5pt; letter-spacing:0.1em; text-transform:uppercase; color:var(--im-ink-soft);}
.im-spread.dark .im-folio{color:rgba(var(--lv-w05,245,243,238),0.55);}

/* ---- Pillar block — numbered square badge, the icon/marker system
   throughout this edition, replacing octagram/hexagon/polaroid. ---- */
.im-pillar{
  position:relative; width:44px; height:44px; flex:0 0 auto;
  border:1.5pt solid var(--im-burgundy); display:flex; align-items:center; justify-content:center;
}
.im-pillar .im-pillar-label{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:13pt; color:var(--im-burgundy);}
.im-pillar.filled{background:var(--im-navy); border-color:var(--im-navy);}
.im-pillar.filled .im-pillar-label{color:#fff;}

/* ---- Eyebrow / heading system ---- */
.im-eyebrow{
  font-family:'IBM Plex Sans',sans-serif; font-size:8.5pt; font-weight:700; letter-spacing:0.18em; text-transform:uppercase;
  color:var(--im-burgundy); margin:0 0 8px; padding-bottom:6px; border-bottom:2px solid var(--im-navy);
  display:inline-block;
}
.im-spread.dark .im-eyebrow{color:var(--im-burgundy-bright); border-bottom-color:rgba(var(--lv-w05s,245,243,238),0.4);}
h2.im-h2{
  font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:25pt; line-height:1.15; color:var(--im-navy); margin:0 0 10px;
}
.im-spread.dark h2.im-h2{color:#fff;}
h3.im-h3{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:13.5pt; color:var(--im-navy); margin:0 0 6px;}
.im-spread.dark h3.im-h3{color:var(--im-burgundy-bright);}
.im-spread p{font-family:'IBM Plex Sans',sans-serif; font-weight:400; font-size:10pt; line-height:1.7; color:var(--im-ink); margin:0 0 12px;}
.im-spread.dark p{color:rgba(var(--lv-w05,245,243,238),0.85);}
.im-lede{
  font-family:'IBM Plex Sans',sans-serif; font-weight:300; font-size:13pt; line-height:1.55; color:var(--im-steel);
  margin:0 0 18px; max-width:92%;
}
.im-spread.dark .im-lede{color:rgba(var(--lv-w05,245,243,238),0.7);}
.im-caption{font-family:'IBM Plex Sans',sans-serif; font-size:7.5pt; letter-spacing:0.05em; text-transform:uppercase; color:var(--im-ink-soft); margin-top:6px;}

/* ---- Report panel — bordered callout, the executive-report
   equivalent of a sidebar note ---- */
.im-panel{
  border:1px solid var(--im-line); border-left:4px solid var(--im-navy); background:var(--im-paper); padding:16px 18px; margin:14px 0;
}
.im-spread.dark .im-panel{background:rgba(var(--lv-w05s,245,243,238),0.06); border-color:rgba(var(--lv-w05s,245,243,238),0.16); border-left-color:var(--im-burgundy-bright);}
.im-panel .im-panel-tag{display:block; font-family:'IBM Plex Sans',sans-serif; font-size:7.5pt; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--im-burgundy); margin-bottom:6px;}
.im-spread.dark .im-panel .im-panel-tag{color:var(--im-burgundy-bright);}
.im-panel p{margin:0; font-size:9.5pt;}

/* ---- Grid ---- */
.im-grid{display:grid; grid-template-columns:repeat(12,1fr); gap:6mm;}
.im-col-4{grid-column:span 4;} .im-col-5{grid-column:span 5;} .im-col-6{grid-column:span 6;} .im-col-7{grid-column:span 7;} .im-col-8{grid-column:span 8;} .im-col-12{grid-column:span 12;}

/* ---- Full-bleed hero photo ---- */
.im-hero{position:relative; margin:-18mm -16mm 0; height:110mm;}
.im-hero img{width:100%; height:100%; object-fit:cover; display:block; filter:grayscale(0.2) contrast(1.05);}
.im-hero .im-hero-bar{
  position:absolute; left:0; right:0; bottom:0; padding:14mm 16mm 10mm;
  background:linear-gradient(0deg, rgba(18,39,64,0.94) 0%, rgba(18,39,64,0) 100%);
}
.im-hero .im-hero-bar h2{color:#fff; margin:0;}
.im-photo{width:100%; aspect-ratio:4/3; object-fit:cover; background:var(--im-paper);}

/* ---- Milestone timeline — horizontal line with year markers,
   the "annual report journey" visual signature of this edition ---- */
.im-timeline{position:relative; padding-left:6px; margin:16px 0;}
.im-timeline-item{display:flex; gap:16px; padding:14px 0; border-left:2px solid var(--im-navy); padding-left:18px; margin-left:6px; position:relative;}
.im-timeline-item::before{content:''; position:absolute; left:-7px; top:18px; width:12px; height:12px; background:var(--im-burgundy); border:2px solid #fff;}
.im-spread.dark .im-timeline-item::before{border-color:var(--im-navy-deep);}
.im-timeline-year{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:11pt; color:var(--im-burgundy); flex:0 0 66px;}
.im-spread.dark .im-timeline-year{color:var(--im-burgundy-bright);}
.im-timeline-body{flex:1;}
.im-timeline-title{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:11pt; color:var(--im-navy); margin-bottom:3px;}
.im-spread.dark .im-timeline-title{color:#fff;}
.im-timeline-desc{font-family:'IBM Plex Sans',sans-serif; font-size:9.5pt; color:var(--im-ink-soft); line-height:1.6;}
.im-spread.dark .im-timeline-desc{color:rgba(var(--lv-w05,245,243,238),0.65);}

/* ---- Strategic pillar row ---- */
.im-pillar-row{display:flex; gap:16px; padding:14px 0; border-bottom:1px solid var(--im-line); align-items:flex-start;}
.im-pillar-row:last-child{border-bottom:none;}
.im-pillar-body{flex:1;}
.im-pillar-title{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:12pt; color:var(--im-navy); margin-bottom:4px;}
.im-pillar-desc{font-family:'IBM Plex Sans',sans-serif; font-size:9.5pt; color:var(--im-ink-soft); line-height:1.6;}
.im-spread.dark .im-pillar-row{border-color:rgba(var(--lv-w05s,245,243,238),0.14);}
.im-spread.dark .im-pillar-title{color:#fff;}
.im-spread.dark .im-pillar-desc{color:rgba(var(--lv-w05,245,243,238),0.68);}

/* ---- Stat band ---- */
.im-stats{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--im-navy); margin:16px 0;}
.im-stats .im-stat-cell{background:var(--im-paper); text-align:center; padding:16px 6px;}
.im-stats .im-stat-num{font-family:'IBM Plex Sans',sans-serif; font-weight:700; font-size:21pt; color:var(--im-navy);}
.im-stats .im-stat-label{font-family:'IBM Plex Sans',sans-serif; font-size:7.5pt; letter-spacing:0.06em; text-transform:uppercase; color:var(--im-ink-soft); margin-top:2px;}
.im-spread.dark .im-stats{background:rgba(var(--lv-w05s,245,243,238),0.15);}
.im-spread.dark .im-stats .im-stat-cell{background:#1E3350;}
.im-spread.dark .im-stats .im-stat-num{color:var(--im-burgundy-bright);}
.im-spread.dark .im-stats .im-stat-label{color:rgba(var(--lv-w05,245,243,238),0.55);}

/* ---- Institutional Publication Information (imprint) page — a
   key/value ownership table matching the Governance Charter's own
   .imprint-table (constitution-print.css) in structure, restyled to
   this edition's own tokens (IBM Plex Sans throughout) so every
   flagship publication's ownership page reads as one family while
   keeping this edition's own visual voice. ---- */
.im-imprint-table{width:100%; border-collapse:collapse; margin-top:8px;}
.im-imprint-table th{
  font-family:'IBM Plex Sans',sans-serif; font-size:7.5pt; font-weight:700; letter-spacing:0.06em; text-transform:uppercase;
  color:var(--im-burgundy); text-align:left; vertical-align:top; padding:9px 14px 9px 0; width:2.1in;
  border-bottom:1px solid var(--im-line); white-space:nowrap;
}
.im-imprint-table td{
  font-family:'IBM Plex Sans',sans-serif; font-size:9.5pt; line-height:1.6; color:var(--im-ink);
  text-align:left; padding:9px 0; border-bottom:1px solid var(--im-line);
}
.im-spread.dark .im-imprint-table th{color:var(--im-burgundy-bright); border-bottom-color:rgba(var(--lv-w05s,245,243,238),0.16);}
.im-spread.dark .im-imprint-table td{color:rgba(var(--lv-w05,245,243,238),0.85); border-bottom-color:rgba(var(--lv-w05s,245,243,238),0.16);}

@media print{
  .im-toolbar{display:none;}
  body.pros-body{background:rgb(var(--lv-wh,255,255,255));}
  .im-spread{box-shadow:none; margin:0; width:auto; height:297mm; min-height:297mm; max-height:297mm;}
  @page{size:210mm 297mm; margin:0;}
}
@media screen and (max-width:1000px){
  .im-spread{width:100%; min-height:auto; padding:8vw;}
  .im-grid{display:block;}
  .im-col-4,.im-col-5,.im-col-6,.im-col-7,.im-col-8{grid-column:auto;}
}
