/* v14 refinement: calmer editorial typography and balanced enterprise/public record */
:root {
  --display-serif: "Arno Pro", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
}

h1,
h2,
h3,
blockquote,
.brand-mark,
.brand-name,
.prose .lede,
.bio-overview__grid > p:last-child,
.press-lead__grid > p:last-child,
.press-kit-identity__grid > p:last-child,
.story-fact span,
.story-quote p,
.evidence-links strong,
.proof-band__grid strong,
.promise-story__date,
.promise-story__copy .promise-story__lede,
.promise-story__quote p,
.promise-story__records strong,
.policy-date strong,
.map-story strong,
.press-bio-card__meta strong,
.press-facts-grid strong,
.hero-proof a strong,
.studio-portrait figcaption > strong,
.record-grid strong,
.motto-latin,
.legacy-conclusion,
.finale-latin {
  font-family: var(--display-serif);
}

h1 {
  font-size: clamp(2.75rem, 5.25vw, 5.45rem);
  line-height: 1.025;
  letter-spacing: .003em;
}

h2 {
  font-size: clamp(2rem, 3.45vw, 3.45rem);
  line-height: 1.1;
  letter-spacing: .004em;
}

h3 {
  font-size: 1.45rem;
  line-height: 1.28;
  letter-spacing: .006em;
}

.page-hero h1 { max-width: 980px; }
.promise-story__copy h2 { font-size: clamp(2.6rem, 4.8vw, 4.8rem); }
.promise-story__quote p { font-size: clamp(2.9rem, 5.9vw, 5.6rem); letter-spacing: -.012em; }
.enterprise-intro h2 { font-size: clamp(2.15rem, 3.8vw, 3.75rem); }
.wartime-layout h2 { font-size: clamp(2.35rem, 4.2vw, 4.15rem); }
.motto-latin { font-size: clamp(2.65rem, 5.8vw, 5.45rem); letter-spacing: 0; }
.finale-latin { font-size: clamp(2.85rem, 6.2vw, 6rem); letter-spacing: -.005em; }
.writing-grid h3,
.opinion-grid h3 { letter-spacing: 0; }
.heraldry-status .status-grid { grid-template-columns: repeat(2, 1fr); }

/* Press archive navigator */
.press-glance { padding: clamp(58px, 8vw, 92px) 0; scroll-margin-top: 145px; background: linear-gradient(132deg,#071622 0%,#102f42 100%); color: #fff; }
.press-glance__head { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr); gap: clamp(34px,6vw,82px); align-items: end; }
.press-glance__head .eyebrow { color: var(--gold2); }
.press-glance__head h2 { max-width: 650px; margin: 12px 0 0; color: #fff; }
.press-glance__stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.16); }
.press-glance__stats span { min-height: 105px; padding: 18px; background: rgba(7,22,34,.82); color: #b8c7d0; font-size: .58rem; font-weight: 800; letter-spacing: .08em; line-height: 1.45; text-transform: uppercase; }
.press-glance__stats strong { display: block; margin-bottom: 10px; color: var(--gold2); font: 700 2.25rem/1 var(--display-serif); letter-spacing: 0; }
.outlet-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; margin-top: 42px; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.15); }
.outlet-grid article { display: flex; min-height: 230px; flex-direction: column; padding: 25px; background: rgba(7,22,34,.9); transition: background .18s ease,transform .18s ease; }
.outlet-grid article:hover { background: rgba(18,54,74,.98); }
.outlet-grid article>span { color: var(--gold2); font-size: .58rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.outlet-grid h3 { margin: 42px 0 8px; color: #fff; font-size: clamp(1.35rem,2vw,1.8rem); }
.outlet-grid p { margin: 0 0 22px; color: #aebfc9; font-size: .75rem; line-height: 1.5; }
.outlet-grid article>a,.outlet-grid__links { margin-top: auto; }
.outlet-grid article>a,.outlet-grid__links a { color: #fff; font-size: .61rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.outlet-grid__links { display: flex; flex-wrap: wrap; gap: 8px 15px; }
.official-record-strip { display: grid; grid-template-columns: 160px 1fr auto; gap: 24px; align-items: center; padding: 24px 26px; border: 1px solid rgba(255,255,255,.18); border-top: 0; color: #fff; text-decoration: none; background: rgba(255,255,255,.055); }
.official-record-strip span { color: var(--gold2); font-size: .59rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.official-record-strip strong { color: #d9e2e7; font-size: .75rem; line-height: 1.55; }
.official-record-strip b { color: #fff; font-size: .61rem; letter-spacing: .08em; text-transform: uppercase; }
.audio-feature[id],.media-card[id] { scroll-margin-top: 155px; }

/* Home enterprise story */
.enterprise-home { background: #fff; }
.enterprise-home__grid {
  display: grid;
  grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr);
  gap: clamp(45px, 7vw, 95px);
  align-items: start;
}
.enterprise-home__intro { position: sticky; top: 132px; }
.enterprise-home__intro h2 { color: var(--navy); }
.enterprise-home__intro p:last-child { color: var(--muted); }
.enterprise-home__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--line);
  background: var(--line);
}
.enterprise-home__cards article {
  min-height: 260px;
  padding: clamp(25px, 4vw, 38px);
  background: var(--paper);
}
.enterprise-home__cards article:last-child { grid-column: 1 / -1; min-height: 220px; }
.enterprise-home__cards span {
  color: var(--gold);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.enterprise-home__cards h3 { margin: 46px 0 14px; color: var(--navy); }
.enterprise-home__cards p { margin: 0; color: var(--muted); }
.enterprise-home__cards a { display: inline-block; margin-top: 18px; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }

/* Laws-at-a-glance rollup */
.campaign-rollup { padding: clamp(70px, 9vw, 112px) 0; color: #fff; background: linear-gradient(125deg, #071622, #12364a); }
.campaign-rollup__head { display: grid; grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr); gap: clamp(38px, 7vw, 90px); align-items: end; }
.campaign-rollup__head h2 { margin: 0; color: #fff; }
.campaign-rollup__head > p:last-child { margin: 0; color: #c5d1d8; font-size: 1.04rem; }
.campaign-rollup__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 48px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.16); }
.campaign-rollup__grid article { min-height: 205px; padding: 30px; background: rgba(7,22,34,.86); }
.campaign-rollup__grid strong { display: block; margin-bottom: 35px; color: var(--gold2); font: 700 clamp(2.4rem, 4vw, 4rem)/1 var(--display-serif); }
.campaign-rollup__grid h3 { margin: 0 0 9px; color: #fff; font-size: 1.15rem; }
.campaign-rollup__grid p { margin: 0; color: #b9c7d0; font-size: .84rem; line-height: 1.6; }
.campaign-rollup__note { max-width: 930px; margin: 22px 0 0; color: #9fb0bb; font-size: .72rem; line-height: 1.6; }

/* Enterprise evidence on the press page */
.press-enterprise { scroll-margin-top: 150px; }
.enterprise-proof { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.enterprise-proof article { display: flex; min-height: 330px; flex-direction: column; padding: 32px; border-top: 3px solid var(--gold); background: #fff; box-shadow: 0 9px 30px rgba(7,22,34,.06); }
.enterprise-proof span { color: var(--gold); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.enterprise-proof h3 { margin: 52px 0 15px; color: var(--navy); }
.enterprise-proof p { color: var(--muted); }
.enterprise-proof a { margin-top: auto; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }

/* Portrait-career case study */
.portrait-case-study {
  display: grid;
  grid-template-columns: minmax(175px, .52fr) minmax(0, 1.48fr);
  grid-template-areas: "image copy" "rail copy";
  gap: clamp(28px, 5vw, 58px);
  margin: clamp(42px, 6vw, 72px) 0;
  padding: clamp(30px, 5vw, 54px);
  border-top: 4px solid var(--gold);
  background: linear-gradient(135deg, #071622, #12364a);
  box-shadow: 0 20px 55px rgba(7,22,34,.16);
  color: #fff;
}
.portrait-case-study__image { grid-area: image; margin: 0; align-self: start; }
.portrait-case-study__image img { display: block; width: 100%; height: auto; border: 1px solid rgba(255,255,255,.18); }
.portrait-case-study__image figcaption { padding: 12px 2px 0; color: #9fb0bb; font-size: .65rem; line-height: 1.55; }
.portrait-case-study__rail { grid-area: rail; display: grid; align-content: start; gap: 1px; background: rgba(255,255,255,.14); }
.portrait-case-study__rail div { min-height: 118px; padding: 20px 18px; background: rgba(7,22,34,.9); }
.portrait-case-study__rail strong { display: block; color: var(--gold2); font: 700 2rem/1 var(--display-serif); }
.portrait-case-study__rail span { display: block; margin-top: 10px; color: #b9c7d0; font-size: .61rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.portrait-case-study__copy { grid-area: copy; }
.portrait-case-study__copy .eyebrow { color: var(--gold2); }
.portrait-case-study__copy h3 { max-width: 660px; margin: 10px 0 24px; color: #fff; font-size: clamp(2rem, 3.5vw, 3.2rem); line-height: 1.08; }
.portrait-case-study__copy h4 { margin: 34px 0 14px; color: #fff; font: 700 clamp(1.45rem, 2.4vw, 2.1rem)/1.2 var(--display-serif); letter-spacing: .008em; }
.portrait-case-study__copy > p:not(.eyebrow):not(.portrait-case-study__source) { color: #d1dbe1; }
.portrait-case-study blockquote { margin: 30px 0; padding: 6px 0 6px 24px; border-left: 2px solid var(--gold2); }
.portrait-case-study blockquote p { margin: 0; color: #fff; font: 600 clamp(1.3rem, 2.4vw, 1.9rem)/1.35 var(--display-serif); }
.portrait-case-study blockquote cite { display: block; margin-top: 12px; color: #9fb0bb; font: 800 .6rem/1.45 Arial,sans-serif; letter-spacing: .09em; text-transform: uppercase; }
.portrait-case-study__testimonial { border: 1px solid rgba(255,255,255,.15); border-left: 3px solid var(--gold2) !important; padding: 22px 24px !important; background: rgba(255,255,255,.045); }
.portrait-case-study__testimonial p { font-size: clamp(1.2rem, 2vw, 1.65rem) !important; }
.portrait-case-study__source { margin-top: 34px !important; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); color: #9fb0bb; font-size: .71rem; line-height: 1.65; }
.portrait-case-study__source strong { color: #d9e2e7; }
.print-standard { margin: clamp(46px, 7vw, 82px) 0; padding: clamp(32px, 5vw, 58px); border: 1px solid var(--line); border-top: 4px solid var(--gold); background: linear-gradient(145deg,#fbf8f1,#eee5d7); box-shadow: 0 18px 48px rgba(7,22,34,.09); scroll-margin-top: 150px; }
.print-standard__intro { display: grid; grid-template-columns: minmax(220px,.75fr) minmax(0,1.25fr); column-gap: clamp(34px,6vw,78px); align-items: start; }
.print-standard__intro .eyebrow { grid-column: 1/-1; }
.print-standard__intro h3 { margin: 14px 0 0; color: var(--navy); font-size: clamp(2rem,4vw,3.65rem); line-height: 1.05; }
.print-standard__intro>p:last-child { margin: 14px 0 0; color: #465965; font: 1.08rem/1.72 Georgia,serif; }
.print-standard__principles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 42px; border: 1px solid rgba(16,41,61,.14); background: rgba(16,41,61,.14); }
.print-standard__principles article { min-height: 265px; padding: 28px; background: rgba(255,255,255,.76); }
.print-standard__principles span { display: block; margin-bottom: 38px; color: var(--gold); font: 700 1.45rem/1 var(--display-serif); }
.print-standard__principles h4 { margin: 0 0 13px; color: var(--navy); font: 700 1.3rem/1.25 var(--display-serif); }
.print-standard__principles p { margin: 0; color: var(--muted); font-size: .83rem; line-height: 1.65; }
.print-standard blockquote { margin: 38px 0 0; padding: 8px 0 8px 27px; border-left: 3px solid var(--gold); }
.print-standard blockquote p { margin: 0; color: var(--navy); font: 600 clamp(1.55rem,3vw,2.55rem)/1.28 var(--display-serif); }
.print-standard blockquote cite { display: block; margin-top: 12px; color: var(--muted); font: 800 .6rem/1.45 Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.print-standard__footer { display: flex; gap: 24px; align-items: center; justify-content: space-between; margin-top: 36px; padding-top: 24px; border-top: 1px solid rgba(16,41,61,.16); }
.print-standard__footer p { max-width: 650px; margin: 0; color: #465965; }
.print-standard__footer a { flex: 0 0 auto; color: var(--navy); font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.print-standard__note { margin: 24px 0 0 !important; color: #6d777d !important; font-size: .7rem !important; line-height: 1.65 !important; }
.portrait-record { scroll-margin-top: 150px; background: #fff; }
.portrait-testimonials { margin: 42px 0; padding: 28px 30px; border: 1px solid var(--line); border-left: 4px solid var(--gold); background: var(--paper); }
.portrait-testimonials > .eyebrow { margin-bottom: 24px; }
.portrait-testimonials > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.portrait-testimonials blockquote { margin: 0; padding: 28px; background: #fff; }
.portrait-testimonials blockquote p { margin: 0; color: var(--navy); font: 600 clamp(1.45rem, 2.6vw, 2.2rem)/1.25 var(--display-serif); }
.portrait-testimonials cite { display: block; margin-top: 14px; color: var(--muted); font: 800 .61rem/1.5 Arial,sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.selected-portraits { margin: clamp(42px, 6vw, 70px) 0; }
.selected-portraits__head { display: grid; grid-template-columns: minmax(220px,.72fr) minmax(0,1.28fr); gap: 12px clamp(30px,6vw,72px); align-items: end; margin-bottom: 28px; }
.selected-portraits__head .eyebrow { grid-column: 1 / -1; margin: 0; }
.selected-portraits__head h3 { margin: 0; color: var(--navy); font-size: clamp(1.8rem,3.3vw,3rem); line-height: 1.08; }
.selected-portraits__head > p:last-child { margin: 0; color: var(--muted); font-size: .87rem; line-height: 1.65; }
.selected-portraits__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.selected-portraits__grid figure { margin: 0; background: var(--deep); box-shadow: 0 15px 40px rgba(7,22,34,.13); overflow: hidden; }
.selected-portraits__grid img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: center top; }
.selected-portraits__grid figure:last-child img { object-position: 40% top; }
.selected-portraits__grid figcaption { min-height: 92px; padding: 18px 20px; }
.selected-portraits__grid figcaption strong,
.selected-portraits__grid figcaption span { display: block; }
.selected-portraits__grid figcaption strong { color: #fff; font: 700 1.08rem/1.25 var(--display-serif); }
.selected-portraits__grid figcaption span { margin-top: 7px; color: #aebdc6; font-size: .59rem; font-weight: 800; letter-spacing: .08em; line-height: 1.45; text-transform: uppercase; }

/* NPR audio record */
.audio-feature { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); margin: 0 0 28px; border: 1px solid var(--line); background: #fff; box-shadow: 0 12px 38px rgba(7,22,34,.07); }
.audio-feature__copy { display: flex; flex-direction: column; padding: clamp(28px, 4vw, 44px); background: var(--navy); color: #fff; }
.audio-feature__copy .eyebrow { margin-bottom: 34px; color: var(--gold2); }
.audio-feature__copy h3 { margin: 0 0 16px; color: #fff; font-size: clamp(1.75rem, 3vw, 2.75rem); }
.audio-feature__copy p:not(.eyebrow) { color: #c9d5dc; }
.audio-feature__links { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: auto; padding-top: 22px; }
.audio-feature__links a { color: var(--gold2); font-size: .67rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.audio-feature__player { display: grid; place-items: center; min-height: 290px; padding: 26px; background: var(--paper); }
.audio-feature__player iframe { width: 100%; height: 290px; border: 0; }

@media (max-width: 900px) {
  .enterprise-home__grid,
  .campaign-rollup__head,
  .audio-feature,
  .portrait-case-study { grid-template-columns: 1fr; grid-template-areas: "image" "rail" "copy"; }
  .portrait-case-study__image { max-width: 360px; }
  .portrait-case-study__rail { grid-template-columns: repeat(3, 1fr); }
  .portrait-case-study__rail div { min-height: auto; }
  .portrait-testimonials > div { grid-template-columns: 1fr; }
  .selected-portraits__head { grid-template-columns: 1fr; align-items: start; }
  .print-standard__intro { grid-template-columns: 1fr; }
  .print-standard__principles { grid-template-columns: 1fr; }
  .print-standard__principles article { min-height: auto; }
  .print-standard__principles span { margin-bottom: 20px; }
  .enterprise-home__intro { position: static; }
  .campaign-rollup__grid { grid-template-columns: repeat(2, 1fr); }
  .enterprise-proof { grid-template-columns: 1fr; }
  .heraldry-status .status-grid { grid-template-columns: 1fr; }
  .enterprise-proof article { min-height: auto; }
  .press-glance__head { grid-template-columns: 1fr; }
  .outlet-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .official-record-strip { grid-template-columns: 1fr; gap: 8px; }
}

@media (max-width: 620px) {
  h1 { font-size: clamp(2.45rem, 12vw, 3.65rem); line-height: 1.04; }
  h2 { font-size: clamp(1.85rem, 8.5vw, 2.65rem); }
  h3 { font-size: 1.3rem; }
  .promise-story__copy h2 { font-size: clamp(2.35rem, 11vw, 3.35rem); }
  .enterprise-home__cards,
  .campaign-rollup__grid { grid-template-columns: 1fr; }
  .enterprise-home__cards article:last-child { grid-column: auto; }
  .campaign-rollup__grid article { min-height: auto; }
  .audio-feature__player { min-height: 250px; padding: 12px; }
  .audio-feature__player iframe { height: 260px; }
  .portrait-case-study { margin-right: 0; margin-left: 0; padding: 28px 20px; }
  .portrait-case-study__rail { grid-template-columns: 1fr; }
  .portrait-case-study__rail div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 14px 16px; }
  .portrait-case-study__rail strong { font-size: 1.55rem; }
  .portrait-case-study__rail span { margin-top: 0; text-align: right; }
  .print-standard { padding: 28px 20px; }
  .print-standard__footer { display: block; }
  .print-standard__footer a { display: inline-block; margin-top: 16px; }
  .press-glance__stats { grid-template-columns: 1fr; }
  .press-glance__stats span { min-height: auto; }
  .outlet-grid { grid-template-columns: 1fr; }
  .outlet-grid article { min-height: 190px; }
  .selected-portraits__grid { grid-template-columns: 1fr; }
  .selected-portraits__grid figure { display: grid; grid-template-columns: minmax(120px,.62fr) minmax(0,1.38fr); align-items: center; }
  .selected-portraits__grid img { height: 100%; min-height: 215px; aspect-ratio: auto; }
  .selected-portraits__grid figcaption { min-height: 0; padding: 20px; }
}
