.home-intro .original-copy {
  font-size: 1.02rem;
}

/* Let stacked grid content shrink so wide tables scroll within their wrapper. */
@media (max-width: 1024px) {
  .two-col > * {
    min-width: 0;
  }
}

/* CMS additions retain the original colour, typography and spacing system. */
.cms-banner{background:var(--ink);padding:0}.banner-carousel{position:relative;min-height:420px;overflow:hidden}.banner-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .75s var(--ease)}.banner-slide.is-active{position:relative;opacity:1;visibility:visible}.banner-slide>img{width:100%;height:420px;object-fit:cover;display:block}.banner-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,2,14,.82),rgba(8,2,14,.2))}.banner-overlay{position:absolute;inset:0;z-index:2;display:flex;align-items:center;color:#fff}.banner-overlay h2{max-width:720px;font-size:var(--fs-xl);margin:.4rem 0 1rem}.banner-overlay p{max-width:650px}.banner-control{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(0,0,0,.35);color:#fff;font-size:30px;cursor:pointer}.banner-control.is-prev{left:20px}.banner-control.is-next{right:20px}.banner-dots{position:absolute;z-index:4;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px}.banner-dots button{width:10px;height:10px;border:0;border-radius:50%;background:rgba(255,255,255,.5);padding:0}.banner-dots button.is-active{background:#fff;transform:scale(1.25)}.compact-hero{min-height:360px;display:flex;align-items:center;background:linear-gradient(135deg,var(--ink),var(--ink-soft));color:#fff}.compact-hero .container{position:relative;z-index:2}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);display:flex;flex-direction:column}.blog-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.blog-card-body{padding:22px}.blog-card h2{font-size:var(--fs-lg);margin:.4rem 0}.blog-card h2 a{color:var(--text)}.blog-featured{margin-top:3rem}.blog-featured img{width:100%;max-height:620px;object-fit:cover}.blog-body{padding-top:3rem;padding-bottom:5rem}.pagination{display:flex;gap:8px;justify-content:center;margin-top:40px}.pagination a,.pagination span{min-width:42px;padding:9px 12px;text-align:center;border:1px solid var(--line-strong)}.pagination .is-current{background:var(--bronze-deep);color:#fff}.empty-state{text-align:center;padding:80px 20px}.design-credit{text-align:center;padding:0 0 18px;color:rgba(255,255,255,.65)}.design-credit a{color:rgba(255,255,255,.82);text-decoration:underline;text-underline-offset:3px}.footer-contact:empty{display:none}@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.banner-carousel,.banner-slide>img{min-height:360px;height:360px}.banner-overlay{padding:30px 42px}.banner-control{width:36px;height:36px}.banner-control.is-prev{left:5px}.banner-control.is-next{right:5px}.blog-grid{grid-template-columns:1fr}}

.original-copy {
  background: var(--white);
  border: 1px solid var(--line);
  padding: 1.5rem 1.4rem;
}

.about-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem;
}

@media (min-width: 901px) {
  .stat-row:has(> .stat:nth-child(2):last-child),
  .about-values:has(> .card:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1.2rem;
}

.timeline li {
  display: grid;
  grid-template-columns: 4.5rem 1fr;
  gap: 1rem;
  align-items: start;
}

.timeline b {
  font-family: var(--font-serif);
  color: var(--bronze-deep);
}

.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 42rem);
  gap: 2.5rem;
}

.confidential {
  font-size: var(--fs-sm);
  letter-spacing: 0.08em;
  color: var(--bronze-deep);
}

.sitemap-list {
  columns: 2;
  gap: 2rem;
}

.sitemap-list a {
  display: block;
  padding: 0.35rem 0;
}

@media (max-width: 900px) {
  .about-values,
  .contact-grid,
  .sitemap-list {
    grid-template-columns: 1fr;
    columns: 1;
  }

  .timeline li {
    grid-template-columns: 1fr;
  }
}
