/* Field images. Color, no filter. Bylines meet 4.5:1 on #0d0d0d and #181818. */
.swc-fig{margin:0}
.swc-fig picture{display:block}
.swc-fig img{display:block;width:100%;height:auto;filter:none;background:#111}
.swc-fig figcaption{padding:7px 2px 0}
.swc-by{margin:0;font-family:'Barlow Condensed',sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.04em;line-height:1.35;color:#c4c0b8}
.swc-line{margin:0 0 4px;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.15rem;color:#f0ede6;line-height:1.35}
.swc-break{margin:0}
.swc-break figcaption,.swc-band figcaption{padding:8px clamp(24px,5vw,80px) 18px}
.door-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.door-card{display:block;background:#181818;border:1px solid #272727;padding:10px 10px 14px;text-decoration:none;color:inherit}
.door-card h3{font-family:'Barlow Condensed',sans-serif;font-size:.84rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#f0ede6;margin:10px 2px 0}
.door-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.door-panels .swc-fig img{height:auto;object-fit:contain}
#door-cards{padding:0 0 clamp(80px,10vw,136px);background:#0d0d0d}
.inquiry-cow{margin:0 0 18px}
.swc-fullframe img{height:auto;max-height:none;object-fit:contain}

.swc-by{display:none}
.swc-cap{margin:0;font-family:'Barlow Condensed',sans-serif;font-size:.7rem;font-style:italic;letter-spacing:.03em;line-height:1.35;color:rgba(240,237,230,.5)}
.disc-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.disc-card{display:block;background:#181818;border:1px solid #272727;padding:10px 10px 14px;text-decoration:none;color:inherit}
.disc-card:last-child:nth-child(odd){grid-column:1/-1}
.disc-card .disc-label{font-family:var(--font-display,'Bebas Neue'),sans-serif;font-weight:400;font-variant:normal;font-size:clamp(2.4rem,4.2vw,3.8rem);letter-spacing:.02em;line-height:.9;color:var(--white,#f0ede6);margin:6px 2px 12px;display:block}
/* Flush two-column packs: column flex ratios equalize stacked native aspect boxes, 9px gutters, uncropped (gauge excepted). */
.disc-shot{display:flex;gap:9px;align-items:stretch}
.disc-col{display:flex;flex-direction:column;gap:9px;min-width:0}
.disc-col .swc-fig,.disc-shot--derailment .swc-fig{margin:0;width:100%}
.disc-shot img{display:block;width:100%;height:auto}
.disc-shot--transport .disc-col:nth-child(1){flex:265.3 1 0}
.disc-shot--transport .disc-col:nth-child(2){flex:225.7 1 0}
.disc-shot--engineering .disc-col:nth-child(1){flex:295.6 1 0}
.disc-shot--engineering .disc-col:nth-child(2){flex:193.4 1 0}
.disc-shot--mechanical .disc-col:nth-child(1){flex:305 1 0}
.disc-shot--mechanical .disc-col:nth-child(2){flex:184 1 0}
.disc-shot--regulatory .disc-col:nth-child(1){flex:273.9 1 0}
.disc-shot--regulatory .disc-col:nth-child(2){flex:217.1 1 0}
.disc-shot--derailment{display:block}
.disc-crop-gauge img{aspect-ratio:1/1;object-fit:cover;object-position:center}
.disc-card>.swc-cap{margin:8px 2px 0}
#door-cards{padding:0 0 clamp(80px,10vw,136px);background:#0d0d0d}
.dylan-card{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center;max-width:760px}
.dylan-card .swc-fig{margin:0}
.dylan-card img{width:100%;height:auto}
.industry-hd{margin:56px 0 24px}
@media(max-width:700px){.disc-cards{grid-template-columns:1fr}.dylan-card{grid-template-columns:1fr}}

/* Discipline image cards are not door CTAs: drop the shared nav arrow, which
   otherwise sits at mid-height over the photographs. Keep door arrows as-is. */
a.disc-card{padding-right:10px}
a.disc-card::after{content:none;display:none}

/* Round 2: the shared desk-nav red arrow sits mid-card and collides with the
   italic quote on .door cards. Drop it (do not edit desk-nav.css) and put a
   white arrow after each card title instead, same weight/size as the title. */
a.door{padding-right:16px}
a.door::after{content:none;display:none}
.door h3::after{
  content:var(--swc-arrow-glyph,"\2192");
  color:var(--white,#f0ede6);
  font:inherit;
  letter-spacing:inherit;
  margin-left:.4em;
}
