/* ============================================================
   LAKE REGION CONSTRUCTION INTELLIGENCE
   Shared Stylesheet v2.0 — Place × Topic × Time × Entity
   Powered by Sebago Lake Contractor Index
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');

/* ── TOKENS ─────────────────────────────────────────────────*/
:root {
  /* Brand (matches Contractor Index) */
  --pine:       #1a3a2a;
  --lake-mid:   #2a5a85;
  --gold:       #c8922a;
  /* Platform extensions */
  --ink:        #141820;
  --slate:      #3d4a5c;
  --mist:       #e8eef4;
  --fog:        #f4f7fa;
  --rule:       #cdd6e0;
  --green:      #2a6645;
  --amber:      #7a5000;
  /* Type */
  --ff-display: 'Playfair Display', Georgia, serif;
  --ff-body:    'Source Sans 3', system-ui, sans-serif;
  /* Rhythm */
  --gap:        2.75rem;
  --r:          4px;
}

/* ── RESET ───────────────────────────────────────────────────*/
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--ff-body);font-size:16px;line-height:1.65;color:var(--ink);background:#fff}
a{color:var(--lake-mid);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}

/* ══════════════════════════════════════════════════════════
   MASTHEAD
══════════════════════════════════════════════════════════ */
.mast {
  background: var(--ink);
  border-bottom: 3px solid var(--gold);
}
.mast-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
  display: grid;
  grid-template-rows: auto auto;
}
/* Top bar: platform brand + utility */
.mast-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .9rem 0 .75rem;
  border-bottom: 1px solid rgba(255,255,255,.08);
  flex-wrap: wrap;
  gap: .5rem;
}
.mast-brand {
  display: flex;
  flex-direction: column;
  gap: .05rem;
}
.mast-platform {
  font-family: var(--ff-display);
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: -.01em;
  line-height: 1.15;
}
.mast-powered {
  font-size: .68rem;
  color: var(--gold);
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.mast-powered a { color: var(--gold); }
.mast-powered a:hover { text-decoration: underline; }
.mast-util {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.mast-util a {
  font-size: .75rem;
  color: rgba(255,255,255,.55);
  font-weight: 500;
}
.mast-util a:hover { color: rgba(255,255,255,.9); text-decoration: none; }
.mast-cta {
  background: var(--gold);
  color: var(--ink) !important;
  font-weight: 700 !important;
  padding: .3rem .85rem;
  border-radius: var(--r);
  font-size: .73rem !important;
  letter-spacing: .03em;
  white-space: nowrap;
}
.mast-cta:hover { background: #daa030; text-decoration: none !important; }
/* Primary nav */
.mast-nav {
  display: flex;
  gap: 0;
  padding: 0;
}
.mast-nav a {
  display: block;
  padding: .65rem .9rem;
  font-size: .8rem;
  font-weight: 600;
  color: rgba(255,255,255,.7);
  letter-spacing: .02em;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
}
.mast-nav a:hover,
.mast-nav a.active {
  color: #fff;
  border-bottom-color: var(--gold);
  text-decoration: none;
}
/* Dimension pills in nav */
.nav-pill {
  display: inline-block;
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  padding: .1rem .4rem;
  border-radius: 2px;
  margin-left: .3rem;
  vertical-align: middle;
  background: rgba(200,146,42,.25);
  color: var(--gold);
}

/* ── STATUS RIBBON ──────────────────────────────────────────*/
.ribbon {
  background: rgba(200,146,42,.1);
  border-bottom: 1px solid rgba(200,146,42,.25);
  padding: .4rem 2rem;
  font-size: .72rem;
  color: var(--amber);
  text-align: center;
  letter-spacing: .01em;
  font-weight: 500;
}
.ribbon strong { color: var(--pine); }

/* ══════════════════════════════════════════════════════════
   PAGE HERO
══════════════════════════════════════════════════════════ */
.hero {
  background: var(--pine);
  color: #fff;
  padding: 3rem 2rem 2.5rem;
  border-bottom: 4px solid rgba(255,255,255,.07);
}
.hero-inner { max-width: 1200px; margin: 0 auto; }
.hero-eyebrow {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--gold);
  display: block;
  margin-bottom: .6rem;
}
.hero h1 {
  font-family: var(--ff-display);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
  margin-bottom: .75rem;
}
.hero-desc {
  font-size: 1.05rem;
  color: rgba(255,255,255,.72);
  max-width: 680px;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}
/* Dimension tags under hero */
.hero-dims {
  display: flex;
  gap: .6rem;
  flex-wrap: wrap;
}
.dim-tag {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .28rem .75rem;
  border-radius: 2px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  border: 1px solid rgba(255,255,255,.2);
  color: rgba(255,255,255,.75);
}
.dim-tag.place  { border-color: rgba(42,90,133,.6);  background: rgba(42,90,133,.2);  }
.dim-tag.topic  { border-color: rgba(200,146,42,.5); background: rgba(200,146,42,.15); color: var(--gold); }
.dim-tag.time   { border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.07); }
.dim-tag.entity { border-color: rgba(42,100,69,.6);  background: rgba(42,100,69,.2);  }

/* ══════════════════════════════════════════════════════════
   LAYOUT
══════════════════════════════════════════════════════════ */
.wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2.5rem 2rem var(--gap);
}
.section { margin-bottom: var(--gap); }

.section-hd {
  display: flex;
  align-items: baseline;
  gap: .75rem;
  padding-bottom: .55rem;
  border-bottom: 2px solid var(--pine);
  margin-bottom: 1.25rem;
}
.section-hd h2 {
  font-family: var(--ff-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--pine);
  flex: 1;
}
.section-tag {
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--slate);
  white-space: nowrap;
}
.section-intro {
  font-size: .9rem;
  color: var(--slate);
  line-height: 1.65;
  margin-bottom: 1.25rem;
  max-width: 760px;
}

/* ── GRID SYSTEMS ───────────────────────────────────────────*/
.g2 { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px,1fr)); gap: 1.15rem; }
.g3 { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 1.15rem; }
.g4 { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px,1fr)); gap: 1rem; }

/* ── CARDS ──────────────────────────────────────────────────*/
.card {
  border: 1px solid var(--rule);
  border-radius: var(--r);
  padding: 1.25rem 1.4rem;
  background: #fff;
  transition: box-shadow .15s, border-color .15s;
}
.card:hover { box-shadow: 0 2px 14px rgba(42,90,133,.1); border-color: var(--lake-mid); }

/* Entry cards (By Town / By Topic) */
.entry-card {
  border: 1px solid var(--rule);
  border-radius: var(--r);
  overflow: hidden;
  background: #fff;
  transition: box-shadow .15s, border-color .15s;
  display: flex;
  flex-direction: column;
}
.entry-card:hover { box-shadow: 0 3px 16px rgba(42,90,133,.12); border-color: var(--lake-mid); }
.entry-card-head {
  background: var(--pine);
  padding: .85rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}
.entry-card-head h3 {
  font-family: var(--ff-display);
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
}
.entry-card-body {
  padding: 1rem 1.25rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .7rem;
}
.entry-card-body p {
  font-size: .84rem;
  color: var(--slate);
  line-height: 1.55;
  flex: 1;
}
.entry-card-foot {
  padding: .65rem 1.25rem;
  border-top: 1px solid var(--rule);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: .73rem;
  color: var(--slate);
  background: var(--fog);
}
.entry-card-foot a { font-weight: 700; color: var(--lake-mid); }
.entry-card-foot a:hover { color: var(--pine); }

/* Sub-item lists inside cards */
.item-list { list-style: none; padding: 0; }
.item-list li {
  font-size: .81rem;
  color: var(--slate);
  padding: .28rem 0;
  border-bottom: 1px solid var(--mist);
  display: flex;
  align-items: baseline;
  gap: .5rem;
  line-height: 1.45;
}
.item-list li:last-child { border-bottom: none; }
.item-list li::before { content: '→'; color: var(--lake-mid); flex-shrink: 0; font-size: .68rem; }

/* ── BADGES ─────────────────────────────────────────────────*/
.badge {
  display: inline-block;
  font-size: .59rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  padding: .15rem .5rem;
  border-radius: 2px;
  white-space: nowrap;
}
.b-active   { background: #dff0e8; color: var(--green); }
.b-pending  { background: #fef6e4; color: var(--amber); }
.b-prelim   { background: #fff3e0; color: var(--amber); border: 1px solid #eac96a; }
.b-inactive { background: var(--mist); color: var(--slate); }
.b-planned  { background: #e8eef4; color: var(--lake-mid); }

/* ── PRELIM NOTICE ──────────────────────────────────────────*/
.prelim {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: #fffae8;
  border: 1px solid #e8c96a;
  color: var(--amber);
  font-size: .72rem;
  font-weight: 600;
  padding: .28rem .75rem;
  border-radius: 2px;
  margin-bottom: 1.2rem;
}

/* ── OBSERVATION BLOCKS ─────────────────────────────────────*/
.obs {
  border-left: 4px solid var(--lake-mid);
  background: var(--fog);
  padding: .9rem 1.2rem;
  margin-bottom: .75rem;
  border-radius: 0 var(--r) var(--r) 0;
}
.obs p { font-size: .88rem; color: var(--slate); line-height: 1.62; }
.obs strong { color: var(--pine); }

/* ── TABLES ─────────────────────────────────────────────────*/
.tbl {
  width: 100%;
  border-collapse: collapse;
  font-size: .85rem;
  margin-bottom: var(--gap);
}
.tbl th {
  background: var(--pine);
  color: #fff;
  padding: .55rem .9rem;
  text-align: left;
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tbl td {
  padding: .58rem .9rem;
  border-bottom: 1px solid var(--rule);
  vertical-align: top;
}
.tbl tr:last-child td { border-bottom: none; }
.tbl tr:nth-child(even) td { background: var(--fog); }
.tbl td.it { font-style: italic; color: var(--slate); font-size: .82rem; }

/* ── SCOREBOARD ─────────────────────────────────────────────*/
.scoreboard {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px,1fr));
  background: var(--ink);
  border-radius: var(--r);
  overflow: hidden;
  margin-bottom: var(--gap);
}
.score-cell {
  padding: 1.4rem 1rem;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.07);
}
.score-cell:last-child { border-right: none; }
.score-label {
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.45);
  margin-bottom: .35rem;
}
.score-val {
  font-family: var(--ff-display);
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--gold);
  line-height: 1;
}
.score-note { font-size: .65rem; color: rgba(255,255,255,.3); margin-top: .2rem; }

/* ── CONNECTOR STRIP (directory link) ───────────────────────*/
.connector {
  border: 1px solid var(--rule);
  border-left: 4px solid var(--gold);
  border-radius: var(--r);
  padding: .8rem 1.2rem;
  background: var(--fog);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}
.connector p { font-size: .84rem; color: var(--slate); }
.connector a.link-btn {
  font-size: .78rem;
  font-weight: 700;
  color: var(--lake-mid);
  white-space: nowrap;
}
.connector a.link-btn:hover { color: var(--pine); }

/* ── TIMELINE (archive) ─────────────────────────────────────*/
.timeline { margin-bottom: var(--gap); }
.timeline-year {
  font-family: var(--ff-display);
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--pine);
  padding: .75rem 0 .4rem;
  border-bottom: 2px solid var(--pine);
  margin-bottom: .75rem;
}
.timeline-entry {
  display: grid;
  grid-template-columns: 8rem 1fr;
  gap: .75rem;
  padding: .55rem 0;
  border-bottom: 1px solid var(--mist);
  align-items: start;
}
.timeline-entry:last-child { border-bottom: none; }
.t-date { font-size: .78rem; font-weight: 600; color: var(--slate); white-space: nowrap; padding-top: .1rem; }
.t-body h4 { font-size: .9rem; font-weight: 700; color: var(--ink); margin-bottom: .1rem; }
.t-body p { font-size: .8rem; color: var(--slate); line-height: 1.5; }
.t-placeholder { font-style: italic; color: var(--rule); }

/* ── SCHEMA PAGE ────────────────────────────────────────────*/
.schema-card {
  border: 1px solid var(--rule);
  border-radius: var(--r);
  margin-bottom: 1.25rem;
  overflow: hidden;
}
.schema-card-head {
  background: var(--lake-mid);
  color: #fff;
  padding: .75rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.schema-card-head h3 { font-family: var(--ff-display); font-size: 1rem; font-weight: 700; }
.schema-card-body {
  padding: 1rem 1.25rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.schema-field-list { list-style: none; padding: 0; }
.schema-field-list li {
  font-size: .81rem;
  color: var(--slate);
  padding: .22rem 0;
  border-bottom: 1px solid var(--mist);
  display: flex;
  gap: .5rem;
}
.schema-field-list li:last-child { border-bottom: none; }
.field-name { font-weight: 700; color: var(--pine); white-space: nowrap; min-width: 130px; }
.field-type { color: var(--lake-mid); font-size: .73rem; font-family: monospace; }

/* ── SEARCH PAGE ────────────────────────────────────────────*/
.search-placeholder {
  border: 2px dashed var(--rule);
  border-radius: var(--r);
  padding: 3.5rem 2rem;
  text-align: center;
  background: var(--fog);
  margin-bottom: var(--gap);
}
.search-placeholder h3 { font-family: var(--ff-display); font-size: 1.3rem; color: var(--pine); margin-bottom: .75rem; }
.search-placeholder p { font-size: .9rem; color: var(--slate); max-width: 560px; margin: 0 auto .5rem; }
.search-fields-preview {
  display: flex;
  gap: .6rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 1.25rem;
}
.search-field-tag {
  border: 1px solid var(--rule);
  border-radius: 2px;
  padding: .28rem .7rem;
  font-size: .75rem;
  color: var(--slate);
  background: #fff;
}

/* ── REPORT SPECIFIC ────────────────────────────────────────*/
.report-stamp {
  border: 2px solid var(--pine);
  border-radius: var(--r);
  padding: .75rem 1.25rem;
  text-align: center;
  min-width: 130px;
  background: #fff;
}
.report-stamp-label { font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--slate); }
.report-stamp-num { font-family: var(--ff-display); font-size: 2rem; font-weight: 700; color: var(--pine); line-height: 1.1; }
.report-meta-block {
  background: var(--fog);
  border: 1px solid var(--rule);
  border-radius: var(--r);
  padding: 1.25rem 1.5rem;
  margin-bottom: 1.75rem;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1.5rem;
  align-items: start;
}
.report-meta-dl { font-size: .8rem; color: var(--slate); line-height: 2; }
.report-meta-dl strong { color: var(--pine); }
.toc {
  background: var(--fog);
  border: 1px solid var(--rule);
  border-radius: var(--r);
  padding: 1rem 1.25rem;
  margin-bottom: 2rem;
}
.toc-label { font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--slate); margin-bottom: .6rem; }
.toc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px,1fr)); gap: .2rem; }
.toc-grid a { font-size: .82rem; color: var(--lake-mid); padding: .18rem 0; display: block; }
.toc-grid a::before { content: '↓ '; color: var(--gold); font-size: .68rem; }
.spotlight-box {
  border: 2px solid var(--gold);
  border-radius: var(--r);
  padding: 1.5rem 1.75rem;
  background: #fffaf0;
  margin-bottom: var(--gap);
}
.spotlight-eyebrow { font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); margin-bottom: .4rem; }
.spotlight-box h3 { font-family: var(--ff-display); font-size: 1.1rem; color: var(--pine); margin-bottom: .7rem; }
.spotlight-box p { font-size: .87rem; color: var(--slate); line-height: 1.65; margin-bottom: .55rem; }
.trade-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px,1fr)); gap: 1rem; margin-bottom: var(--gap); }
.trade-cell {
  border: 1px solid var(--rule);
  border-radius: var(--r);
  padding: .9rem 1rem;
  text-align: center;
  background: #fff;
}
.trade-name { font-size: .7rem; font-weight: 700; letter-spacing: .04em; color: var(--slate); text-transform: uppercase; margin-bottom: .4rem; }
.trade-ind { font-size: 1.4rem; margin-bottom: .15rem; }
.trade-level { font-size: .78rem; font-weight: 700; color: var(--pine); }
.trade-note { font-size: .67rem; color: var(--slate); font-style: italic; margin-top: .1rem; }

/* ══════════════════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════════════════ */
.ft {
  background: var(--ink);
  color: rgba(255,255,255,.55);
  padding: 2.5rem 2rem 2rem;
  margin-top: 3rem;
  border-top: 3px solid var(--gold);
  font-size: .78rem;
  line-height: 1.8;
}
.ft-inner { max-width: 1200px; margin: 0 auto; }
.ft-rule {
  text-align: center;
  font-family: var(--ff-display);
  font-size: .95rem;
  font-weight: 700;
  color: var(--gold);
  letter-spacing: .1em;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.ft-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; }
.ft-grid strong { color: rgba(255,255,255,.85); }
.ft a { color: rgba(255,255,255,.45); }
.ft a:hover { color: var(--gold); }
.ft-copy {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: .69rem;
  color: rgba(255,255,255,.28);
  text-align: center;
}
.ft-endmark {
  font-family: var(--ff-display);
  font-size: .78rem;
  font-weight: 700;
  color: rgba(255,255,255,.28);
  letter-spacing: .12em;
  text-align: center;
  margin-top: .5rem;
}

/* ══════════════════════════════════════════════════════════
   UTILITIES
══════════════════════════════════════════════════════════ */
.text-muted { color: var(--slate); font-size: .85rem; }
.mt1 { margin-top: 1rem; }
.mb1 { margin-bottom: 1rem; }
.sources-list { list-style: none; padding: 0; }
.sources-list li {
  font-size: .83rem;
  color: var(--slate);
  padding: .32rem 0;
  border-bottom: 1px solid var(--rule);
  display: flex;
  gap: .6rem;
  align-items: baseline;
}
.sources-list li:last-child { border-bottom: none; }
.sources-list li::before { content: '•'; color: var(--gold); }
.not-advice-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px,1fr));
  gap: .65rem;
  margin: 1rem 0 1.25rem;
}
.not-item {
  background: var(--fog);
  border: 1px solid var(--rule);
  border-radius: var(--r);
  padding: .55rem .8rem;
  font-size: .81rem;
  color: var(--slate);
  display: flex;
  align-items: center;
  gap: .45rem;
}
.not-item::before { content: '✗'; color: #a03030; font-weight: 700; flex-shrink: 0; }

/* ── RESPONSIVE ─────────────────────────────────────────────*/
@media (max-width: 768px) {
  .mast-nav { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .ft-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .scoreboard { grid-template-columns: repeat(2,1fr); }
  .score-cell { border-right: none; border-bottom: 1px solid rgba(255,255,255,.07); }
  .report-meta-block { grid-template-columns: 1fr; }
  .schema-card-body { grid-template-columns: 1fr; }
  .timeline-entry { grid-template-columns: 1fr; gap: .25rem; }
  .hero { padding: 2rem 1.25rem 1.75rem; }
  .wrap { padding: 1.5rem 1.25rem 2rem; }
}
@media (max-width: 480px) {
  .mast-inner { padding: 0 1rem; }
  .hero h1 { font-size: 1.75rem; }
  .g2,.g3,.g4 { grid-template-columns: 1fr; }
}

/* Public intelligence hub — editorial landing page, July 2026 */
.intel-public-hub{background:#fff;color:#24312b;font-family:var(--ff-body,Arial,sans-serif);line-height:1.65}
.intel-public-hub *{box-sizing:border-box}
.intel-public-hub a{color:inherit}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:#fff;color:#122a1e!important;padding:.75rem 1rem;border:2px solid #c8922a;border-radius:4px}
.skip-link:focus{top:1rem}
.intel-shell{width:min(1160px,calc(100% - 3rem));margin-inline:auto}
.intel-mast{background:#122a1e;color:#fff;border-bottom:1px solid rgba(255,255,255,.16)}
.intel-mast__top{width:min(1160px,calc(100% - 3rem));margin:auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.intel-wordmark{display:flex;align-items:center;gap:.85rem;text-decoration:none;font-family:Georgia,serif;letter-spacing:.01em}
.intel-wordmark span{display:grid;place-items:center;width:44px;height:44px;border:1px solid #c8922a;color:#f3d9a1;font:700 .72rem/1 Arial,sans-serif;letter-spacing:.12em}
.intel-wordmark strong{font-size:1.05rem}
.intel-directory-link{font-size:.78rem;text-decoration:none;color:#dce7df!important;border-bottom:1px solid rgba(255,255,255,.35)}
.intel-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:0 1.5rem;padding:.72rem 1.5rem;background:#1a3a2a;font-size:.78rem;font-weight:700;letter-spacing:.02em}
.intel-nav a{color:#fff;text-decoration:none;padding:.35rem 0;border-bottom:2px solid transparent}
.intel-nav a:hover,.intel-nav a:focus-visible,.intel-nav a[aria-current="page"]{border-color:#c8922a}
.intel-public-hub :focus-visible{outline:3px solid #e3ad47;outline-offset:3px}
.intel-hero{background:linear-gradient(135deg,#122a1e 0%,#1a3a2a 68%,#1c2b4a 100%);color:#fff;padding:clamp(3.75rem,8vw,7rem) 0}
.intel-hero__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.intel-eyebrow,.intel-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.69rem;font-weight:800}
.intel-eyebrow{color:#9c6720;margin:0 0 .7rem}.intel-hero .intel-eyebrow,.intel-section--pine .intel-eyebrow{color:#e5b65f}
.intel-hero h1{font:700 clamp(2.25rem,4vw,4rem)/1.03 Georgia,serif;letter-spacing:-.035em;max-width:820px;margin:0 0 1.5rem;text-wrap:balance}
.intel-hero__lead{font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65;max-width:760px;color:#e4ece7}
.intel-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0 1.4rem}
.intel-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.82rem 1.2rem;border:1px solid transparent;border-radius:3px;font-size:.82rem;font-weight:800;text-decoration:none;cursor:pointer;font-family:inherit}
.intel-button--gold{background:#c8922a;color:#122a1e!important}.intel-button--gold:hover{background:#e1aa42}
.intel-button--ghost{border-color:rgba(255,255,255,.55);color:#fff!important}.intel-button--ghost:hover{border-color:#fff}
.intel-trust-line{font-size:.78rem;color:#c7d3cc;max-width:720px}
.intel-hero__brief{position:relative;background:#f7f3ea;color:#24312b;border-top:5px solid #c8922a;padding:2rem;box-shadow:0 24px 60px rgba(0,0,0,.23)}
.intel-hero__brief:before{content:"LRCI";display:block;color:#c8922a;font:800 .65rem/1 Arial,sans-serif;letter-spacing:.2em;margin-bottom:2.3rem}
.intel-hero__brief h2{font:700 2rem/1.08 Georgia,serif;color:#122a1e;margin:.45rem 0 1rem}
.intel-kicker{color:#8a621f;margin:0}.intel-date{font-size:.78rem;font-weight:700;border-top:1px solid #d9cfbc;padding-top:1rem;margin-top:1.25rem}
.intel-tags{display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:1.15rem 0;list-style:none}
.intel-tags li{border:1px solid #c9bfae;border-radius:999px;padding:.25rem .58rem;font-size:.68rem;font-weight:700}
.intel-section{padding:clamp(4rem,7vw,6.5rem) 0}
.intel-section--ivory{background:#f7f3ea}.intel-section--pine{background:#122a1e;color:#fff}.intel-section--trust{background:#1c2b4a;color:#fff}
.intel-section__head{max-width:760px;margin-bottom:2.3rem}.intel-section__head h2,.intel-method h2,.intel-audience h2,.intel-request h2,.intel-trust-grid h2{font:700 clamp(1.8rem,3vw,2.75rem)/1.08 Georgia,serif;letter-spacing:-.02em;color:#122a1e;margin:.35rem 0 1rem;text-wrap:balance}
.intel-section--pine .intel-section__head h2,.intel-trust-grid h2{color:#fff}.intel-section__head>p:last-child{font-size:1.03rem;color:#5c6862}.intel-section--pine .intel-section__head>p:last-child{color:#cbd6d0}
.intel-track-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #d9d3c7}
.intel-track-grid article{padding:1.6rem;border-right:1px solid #d9d3c7}.intel-track-grid article:last-child{border:0}.intel-track-grid h3{font:700 1.15rem/1.2 Georgia,serif;color:#1a3a2a;margin:0 0 .65rem}.intel-track-grid p{font-size:.86rem;color:#5b6660;margin:0}
.intel-method{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,6rem);align-items:start}.intel-large-copy{font-size:1.07rem}.intel-questions{list-style:none;padding:0;margin:0;border-top:1px solid #d8cfbf}.intel-questions li{display:grid;grid-template-columns:50px 1fr;gap:.4rem 1rem;padding:1.25rem 0;border-bottom:1px solid #d8cfbf}.intel-questions span{grid-row:1/3;color:#a16d1f;font-weight:800}.intel-questions strong{font:700 1.15rem Georgia,serif;color:#122a1e}.intel-questions p{margin:0;font-size:.86rem}
.intel-issue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.intel-issue-card{display:flex;flex-direction:column;border:1px solid #d8d2c6;background:#fff;min-width:0}.intel-cover{min-height:190px;padding:1.3rem;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:#1a3a2a;overflow:hidden;position:relative}.intel-cover:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 24px,rgba(255,255,255,.045) 24px 25px)}.intel-cover--route{background:linear-gradient(135deg,#1c2b4a,#1a3a2a)}.intel-cover--market{background:linear-gradient(135deg,#5d3d16,#c8922a)}.intel-cover--school{background:linear-gradient(135deg,#122a1e,#315f45)}.intel-cover span,.intel-cover strong{position:relative;z-index:1}.intel-cover span{text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;font-weight:800}.intel-cover strong{font:700 1.6rem/1.05 Georgia,serif;max-width:260px}.intel-issue-card__body{display:flex;flex:1;flex-direction:column;padding:1.45rem}.intel-issue-card h3{font:700 1.5rem/1.12 Georgia,serif;color:#122a1e;margin:.55rem 0 .8rem}.intel-issue-card p:not(.intel-kicker){font-size:.87rem;color:#59655f}.intel-issue-card a{margin-top:auto;font-size:.8rem;font-weight:800;color:#1a3a2a;text-decoration-thickness:1px;text-underline-offset:4px}.intel-center{text-align:center;margin:2rem 0 0}.intel-text-link{font-weight:800;color:#1a3a2a;text-underline-offset:4px}
.intel-monitor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.intel-monitor-grid article{background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.2);padding:1.5rem}.intel-monitor-grid span{display:inline-block;background:#c8922a;color:#122a1e;padding:.2rem .5rem;font-size:.64rem;font-weight:800;text-transform:uppercase}.intel-monitor-grid h3{font:700 1.3rem Georgia,serif;margin:1rem 0}.intel-monitor-grid p{font-size:.84rem;color:#d1d9d4}.intel-monitor-grid a{font-size:.78rem;font-weight:800;color:#f0c36e;text-underline-offset:4px}
.intel-event-list{border-top:1px solid #d7d1c5}.intel-event-list article{display:grid;grid-template-columns:105px 1fr;gap:1.4rem;padding:1.7rem 0;border-bottom:1px solid #d7d1c5}.intel-event-date{background:#1c2b4a;color:#fff;padding:1rem;text-align:center;align-self:start}.intel-event-date strong,.intel-event-date span{display:block}.intel-event-date strong{text-transform:uppercase;color:#e9bc68;font-size:.72rem;letter-spacing:.13em}.intel-event-date span{font:700 1.25rem Georgia,serif}.intel-event-list h3{font:700 1.4rem Georgia,serif;color:#122a1e;margin:.3rem 0}.intel-event-list p{margin:.25rem 0 .6rem}.intel-event-list a{font-size:.78rem;font-weight:800;color:#1a3a2a;text-underline-offset:4px}.intel-note{margin-top:1.25rem;font-size:.8rem;color:#606b65}
.intel-audience{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,7vw,6rem)}.intel-audience__value{border-left:4px solid #c8922a;padding-left:1.5rem}.intel-audience__value h3{font:700 1.25rem Georgia,serif;color:#122a1e}.intel-audience__value ul{padding-left:1.15rem}
.intel-request{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,6rem);align-items:start}.intel-request form{padding:1.6rem;background:#f7f3ea;border:1px solid #d8d0c0}.intel-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.intel-request label{display:grid;gap:.35rem;font-size:.76rem;font-weight:800;color:#24312b}.intel-request input,.intel-request select,.intel-request textarea{width:100%;border:1px solid #a99f8c;background:#fff;padding:.72rem;font:inherit;color:#202a25;border-radius:2px}.intel-request textarea{resize:vertical}.intel-consent{grid-template-columns:20px 1fr!important;align-items:start;margin:1rem 0}.intel-consent input{margin-top:.3rem}.intel-honeypot{position:absolute;left:-9999px}.intel-form-note{font-size:.7rem;color:#67716c}.intel-request a{color:#1a3a2a;font-weight:800}
.intel-trust-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:clamp(2rem,5vw,4rem)}.intel-trust-grid ul{margin:0;padding-left:1.2rem;color:#d9e1dc}.intel-trust-grid li{margin-bottom:.55rem}.intel-trust-grid h3{font:700 1.2rem Georgia,serif;color:#f0c36e}.intel-trust-grid p{color:#d9e1dc;font-size:.86rem}.intel-trust-grid a{color:#f0c36e;font-weight:800;font-size:.8rem}
.intel-footer{background:#0c1d14;color:#d2ddd6;padding:3rem 0}.intel-footer strong{font:700 1.2rem Georgia,serif;color:#fff}.intel-footer p{font-size:.82rem}.intel-footer nav{display:flex;flex-wrap:wrap;gap:.7rem 1.3rem;margin:1.5rem 0}.intel-footer nav a{font-size:.76rem;color:#fff}.intel-footer small{color:#96a79d;font-size:.68rem}
@media(max-width:900px){.intel-hero__grid,.intel-method,.intel-audience,.intel-request{grid-template-columns:1fr}.intel-track-grid{grid-template-columns:1fr 1fr}.intel-track-grid article:nth-child(2){border-right:0}.intel-track-grid article:nth-child(-n+2){border-bottom:1px solid #d9d3c7}.intel-issue-grid,.intel-monitor-grid{grid-template-columns:1fr 1fr}.intel-issue-card--featured,.intel-monitor-grid article:first-child{grid-column:1/-1}.intel-trust-grid{grid-template-columns:1fr 1fr}.intel-trust-grid>div:last-child{grid-column:1/-1}.intel-hero__brief{max-width:620px}}
@media(max-width:640px){.intel-shell,.intel-mast__top{width:min(100% - 2rem,1160px)}.intel-mast__top{min-height:66px}.intel-wordmark strong{font-size:.9rem}.intel-directory-link{display:none}.intel-nav{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid rgba(255,255,255,.15);padding:.35rem 1rem}.intel-nav a{padding:.65rem .5rem;border-bottom:1px solid rgba(255,255,255,.12)}.intel-nav a[aria-current="page"]{border-left:3px solid #c8922a;padding-left:.7rem}.intel-hero{padding:3.5rem 0}.intel-hero h1{font-size:clamp(2.1rem,9vw,2.75rem)}.intel-actions{display:grid}.intel-button{width:100%}.intel-track-grid,.intel-issue-grid,.intel-monitor-grid,.intel-trust-grid,.intel-form-grid{grid-template-columns:1fr}.intel-track-grid article{border-right:0;border-bottom:1px solid #d9d3c7!important}.intel-track-grid article:last-child{border-bottom:0!important}.intel-issue-card--featured,.intel-monitor-grid article:first-child,.intel-trust-grid>div:last-child{grid-column:auto}.intel-event-list article{grid-template-columns:75px 1fr;gap:1rem}.intel-event-date{padding:.75rem .45rem}.intel-event-date span{font-size:1rem}.intel-questions li{grid-template-columns:38px 1fr}.intel-section{padding:3.5rem 0}}
