/* Photo Rail: natural-height photographs, sticky copy and captions. */
.ct2-hero-rail { --ct6-accent: var(--color-main); }
.ct2-hero-rail.is-dark, .ct2-hero-rail.ct2-hp-main { --ct6-accent: currentColor; }
.ct2-hero-rail .ct6-rl { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:clamp(40px,5vw,100px); align-items:start; padding-bottom:clamp(56px,7vw,120px); }
.ct2-hero-rail.is-full { box-sizing:border-box; min-height:100svh; }
.ct2-hero-rail .ct6-rl--photos-left { grid-template-columns:minmax(0,7fr) minmax(0,5fr); }
.ct2-hero-rail .ct6-rl--photos-left .ct6-rl-copy { grid-column:2; grid-row:1; }
.ct2-hero-rail .ct6-rl--photos-left .ct6-rl-media { grid-column:1; grid-row:1; }
.ct2-hero-rail .ct6-rl-copy { align-self:stretch; min-width:0; }
.ct2-hero-rail .ct6-rl-sticky, .ct2-hero-rail .ct6-rl-rail { position:sticky; top:calc(var(--ct-header-h,90px) + 32px); }
.ct2-hero-rail .ct6-rl-media { display:grid; grid-template-columns:minmax(0,1fr) clamp(120px,11vw,170px); gap:clamp(20px,2vw,32px); margin:0; min-width:0; align-items:start; }
.ct2-hero-rail .ct6-rl--photos-left .ct6-rl-media { grid-template-columns:clamp(120px,11vw,170px) minmax(0,1fr); }
.ct2-hero-rail .ct6-rl--photos-left .ct6-rl-photos { grid-column:2; grid-row:1; }
.ct2-hero-rail .ct6-rl--photos-left .ct6-rl-rail { grid-column:1; grid-row:1; }
.ct2-hero-rail .ct6-rl-photos, .ct2-hero-rail .ct6-rl-caps { list-style:none; padding:0; margin:0; }
.ct2-hero-rail .ct6-rl-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(14px,1.6vw,24px); counter-reset:ct6-photo; }
.ct2-hero-rail .ct6-rl-ph { position:relative; margin:0; min-width:0; width:100%; align-self:start; counter-increment:ct6-photo; aspect-ratio:4/5; }
.ct2-hero-rail .ct6-rl-ph:nth-child(2), .ct2-hero-rail .ct6-rl-ph:nth-child(3) { aspect-ratio:3/4; }
.ct2-hero-rail .ct6-rl-ph:nth-child(even) { margin-top:clamp(80px,12vw,220px); }
.ct2-hero-rail .ct6-rl-img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; border-radius:var(--img-radius,0); }
.ct2-hero-rail .ct6-rl-rail { border-inline-start:1px solid color-mix(in srgb,currentColor 22%,transparent); padding-inline-start:18px; }
.ct2-hero-rail .ct6-rl-caps { display:flex; flex-direction:column; gap:22px; }
.ct2-hero-rail .ct6-rl-cap { position:relative; display:flex; flex-direction:column; gap:6px; margin:0; }
.ct2-hero-rail .ct6-rl-capnum { font-size:13px; font-variant-numeric:tabular-nums; }
.ct2-hero-rail .ct6-rl-captext { font-size:15px; line-height:1.4; overflow-wrap:anywhere; }
.ct2-hero-rail .ct6-rl-cap::before { content:''; position:absolute; left:-19px; top:7px; width:20px; height:2px; background:var(--ct6-accent); transform:scaleX(0); transform-origin:left; }
.ct2-hero-rail .is-live .ct6-rl-cap.is-on::before { transform:scaleX(1); }
.ct2-hero-rail .ct6-rl--norail .ct6-rl-media { display:block; }
.ct2-hero-rail .ct6-rl--n1 .ct6-rl-photos { grid-template-columns:minmax(0,1fr); max-width:560px; }
.ct2-hero-rail .ct6-rl--n0 { display:block; max-width:900px; }
@media (min-width:1001px) and (max-width:1100px) {
 .ct2-hero-rail .ct6-rl-media { grid-template-columns:minmax(0,1fr) clamp(104px,12vw,130px); }
 .ct2-hero-rail .ct6-rl--photos-left .ct6-rl-media { grid-template-columns:clamp(104px,12vw,130px) minmax(0,1fr); }
}
@media (max-width:1000px) {
 .ct2-hero-rail .ct6-rl { grid-template-columns:minmax(0,1fr); }
 .ct2-hero-rail .ct6-rl--photos-left .ct6-rl-copy, .ct2-hero-rail .ct6-rl--photos-left .ct6-rl-media { grid-column:auto; grid-row:auto; }
 .ct2-hero-rail .ct6-rl-media, .ct2-hero-rail .ct6-rl--photos-left .ct6-rl-media { display:block; }
 .ct2-hero-rail .ct6-rl-sticky, .ct2-hero-rail .ct6-rl-rail { position:static; }
 .ct2-hero-rail .ct6-rl-ph:nth-child(even) { margin-top:clamp(40px,10vw,96px); }
 .ct2-hero-rail .ct6-rl:not(.ct6-rl--norail) .ct6-rl-ph::after { content:counter(ct6-photo,decimal-leading-zero); position:absolute; top:10px; left:10px; padding:6px 8px; background:rgb(0 0 0 / .55); color:#fff; font-size:13px; line-height:1; border-radius:calc(var(--img-radius,0px) / 2); }
 .ct2-hero-rail .ct6-rl-rail { margin-top:28px; border:0; padding:0; }
 .ct2-hero-rail .ct6-rl-caps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ct2-hero-rail .ct6-rl-cap::before { display:none; }
}
@media (max-width:480px) { .ct2-hero-rail .ct6-rl-caps { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:no-preference) { .ct2-hero-rail .ct6-rl-cap::before { transition:transform .3s ease-out; } }
