
:root{
  --ink:#14314d;
  --body:#465c6d;
  --gold:#c8a66a;
  --paper:#f7f4ed;
  --paper2:#fbfaf6;
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  background:#e5eaee;
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
}
.iw12{
  width:min(1180px,100%);
  margin:0 auto;
  overflow:hidden;
  background:var(--paper);
  box-shadow:0 18px 55px rgba(13,32,48,.12);
}

/* HERO */
.hero{
  min-height:500px;
  position:relative;
  background:url("assets/hero-clean.jpg") 60% center/cover no-repeat;
  color:#fff;
}
.hero-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(12,24,34,.96) 0%,rgba(12,24,34,.91) 31%,rgba(12,24,34,.52) 55%,rgba(12,24,34,.08) 82%),
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.16));
}
.hero-copy{
  position:relative;
  z-index:2;
  width:55%;
  padding:68px 54px 60px;
}
.kicker{
  font:600 10px/1.3 Arial,sans-serif;
  letter-spacing:.27em;
  color:#d6b576;
  margin-bottom:16px;
}
.hero h1{
  margin:0;
  font-size:clamp(48px,5vw,72px);
  line-height:1;
  font-weight:400;
  letter-spacing:-.025em;
}
.gold-rule{width:35px;height:1px;background:var(--gold);margin:24px 0 20px}
.deck{max-width:500px;margin:0;font-size:19px;line-height:1.5;color:#f1eee7}
.hero-quote{max-width:480px;margin:25px 0 0;font-size:20px;line-height:1.4;font-style:italic;color:#eadfce}

/* ARTICLE */
.article{
  background:linear-gradient(180deg,var(--paper2),var(--paper));
}
.article-grid{
  max-width:1080px;
  margin:0 auto;
  padding:72px 48px 12px;
  display:grid;
  grid-template-columns:1.28fr .92fr;
  gap:58px;
  align-items:start;
}
.second-grid{padding-top:38px}
.main-copy,.side-column{min-width:0}
.section-block{
  display:grid;
  grid-template-columns:44px 18px minmax(0,1fr);
  gap:9px;
  align-items:start;
  margin-bottom:38px;
}
.spacer{width:44px;height:1px}
.dash{width:13px;height:1px;background:var(--gold);margin-top:18px}
.article h2{
  margin:0 0 11px;
  font-size:30px;
  line-height:1.17;
  font-weight:400;
}
.article h3{font-weight:400}
.article p{
  margin:0 0 15px;
  font-size:16.5px;
  line-height:1.65;
  color:var(--body);
}
.lede{font-size:18px!important;color:#344e64!important}
.pullquote{
  margin:10px 0 20px 70px;
  padding:26px 30px;
  border-left:1px solid var(--gold);
  background:rgba(255,255,255,.53);
  font-size:27px;
  line-height:1.4;
  font-style:italic;
}
.notice-card{
  border:1px solid rgba(200,166,106,.48);
  background:rgba(255,255,255,.43);
  padding:24px 25px 18px;
}
.notice-card h3{margin:0 0 5px;font-size:24px}
.mini-title{
  font:600 8.5px/1.4 Arial,sans-serif!important;
  letter-spacing:.22em;
  color:#6e8293!important;
  margin-bottom:16px!important;
}
.notice-row{
  display:grid;
  grid-template-columns:92px 1fr;
  gap:10px;
  padding:11px 0;
  border-top:1px solid rgba(20,49,77,.08);
  font-size:13.5px;
  line-height:1.4;
}
.notice-row b{font-weight:400}
.notice-row span{color:#607486}
.support-image{
  margin:34px 0 0;
}
.support-image img{
  display:block;
  width:100%;
  aspect-ratio:5/3;
  object-fit:cover;
}
.support-image figcaption{
  min-height:28px;
  padding-top:8px;
  text-align:center;
  font:600 7.5px/1.4 Arial,sans-serif;
  letter-spacing:.17em;
  color:#71818d;
}
.technical-note{
  margin:4px 0 26px 70px;
  padding:24px 28px;
  background:rgba(237,241,241,.72);
  display:grid;
  grid-template-columns:32px 1fr;
  gap:14px;
}
.technical-note .symbol{
  font-size:24px;
  color:var(--gold);
  line-height:1;
}
.technical-note h3{
  margin:0 0 8px;
  font-size:21px;
}
.technical-note p{font-size:14.5px;line-height:1.58;margin:0}

/* CLOSING SECTION — side artwork kept clear of body text */
.closing{
  position:relative;
  min-height:500px;
  padding:64px 84px 0;
  overflow:hidden;
  background:#faf8f3;
}
.edge-art{position:absolute;bottom:0;display:block;pointer-events:none;user-select:none;z-index:1}
.edge-left{left:0;width:220px}
.edge-right{right:0;width:220px}
.closing-inner{
  position:relative;
  z-index:2;
  max-width:930px;
  min-height:425px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.24fr .76fr;
  gap:88px; /* breathing room before right-side artwork */
  align-items:center;
  padding-bottom:100px;
}
.closing-copy{margin:0}
.closing-copy p{max-width:610px}
.closing-quote{
  width:310px;
  justify-self:start;
  transform:translateX(-24px);
  text-align:center;
  font-size:25px;
  line-height:1.4;
  font-style:italic;
}
.closing-quote span{
  display:block;
  width:26px;
  height:1px;
  background:var(--gold);
  margin:11px auto;
}

@media(max-width:820px){

  .hero{min-height:540px;background-position:64% center}
  .hero-copy{width:76%;padding:50px 27px 44px}
  .article-grid{grid-template-columns:1fr;padding:54px 28px 10px;gap:30px}
  .section-block{grid-template-columns:38px 16px 1fr}
  .spacer{width:38px}
  .pullquote,.technical-note{margin-left:54px}
  .side-column-spaced{gap:34px}
  .closing{padding:44px 34px 0;min-height:570px}
  .closing-inner{grid-template-columns:1fr;gap:32px;min-height:505px;padding-bottom:120px}
  .closing-quote{justify-self:center;transform:none;width:270px}
  .edge-left{width:150px}
  .edge-right{width:150px}
}

/* V14 editorial simplification */
.single-column{
  grid-template-columns:1fr;
  max-width:930px;
}
.single-column .main-copy{
  max-width:820px;
}
.single-column .technical-note{
  max-width:690px;
}

/* Supporting imagery is occasional, not automatic. */
.side-column{
  align-self:start;
}
.support-image{
  margin-top:38px;
}
