.rc-page { max-width: 1260px; margin: auto; padding: 130px 40px 0; }
.rc-page h1, .rc-page h2, .rc-page h3 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; }
.rc-page h1 { font-size: clamp(3.6rem, 7vw, 6.7rem); line-height: .99; letter-spacing: -.045em; margin: 22px 0; }
.rc-page h1 span, .rc-page h2 span { color: var(--brass); }
.rc-page h2 { font-size: clamp(2rem, 3.4vw, 3.25rem); line-height: 1.12; letter-spacing: -.025em; margin: 14px 0 24px; }
.rc-page h3 { font-size: 1.65rem; line-height: 1.22; margin: 14px 0; }
.rc-page p { color: var(--ivory-dim); }
.rc-hero { display: grid; grid-template-columns: 1.3fr .8fr; align-items: center; gap: 70px; padding-bottom: 56px; scroll-margin-top: 110px; }
.rc-tagline { font-family: Georgia, serif; font-size: 1.8rem; line-height: 1.3; color: var(--ivory) !important; margin: 25px 0 20px; }
.rc-lede { font-size: 1.05rem; max-width: 520px; }
.rc-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 28px 0; }
.rc-release { border-top: 1px solid var(--line-strong); padding-top: 22px; display: grid; grid-template-columns: 10px 1fr; align-items: center; gap: 3px 12px; font-size: .8rem; }
.rc-release strong { color: var(--ivory); font-size: .95rem; }
.rc-release > span:last-child { grid-column: 2; }
.rc-hero-image { margin: 0; justify-self: center; width: min(100%, 325px); }
.rc-hero-image img { border: 1px solid var(--line-strong); box-shadow: 0 24px 70px #0009; border-radius: 8px; }
.rc-hero-image figcaption { font: italic .85rem/1.6 Georgia, serif; text-align: center; margin-top: 20px; color: var(--ivory-dim); }
.rc-principles { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 30px; padding: 22px 0; border-block: 1px solid var(--line-strong); font-size: .75rem; letter-spacing: .035em; }
.rc-principles span::before { content: '✓'; color: var(--brass); margin-right: 10px; }
.rc-section { padding: 78px 0; scroll-margin-top: 110px; }
.rc-heading { max-width: 680px; margin-bottom: 34px; }
.rc-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.rc-feature-grid article { padding: 30px; background: #111313e8; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); }
.rc-feature-grid p { font-size: .92rem; margin-bottom: 0; }
.rc-index { font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: var(--brass); }
.rc-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 42px 22px; }
.rc-gallery figure { margin: 0; min-width: 0; }
.rc-gallery button { display: block; padding: 0; width: 100%; background: #101212; border: 1px solid var(--line-strong); cursor: zoom-in; transition: transform .2s, border-color .2s; }
.rc-gallery button:hover { transform: translateY(-5px); border-color: var(--brass); }
.rc-gallery img { width: 100%; }
.rc-gallery figcaption { font-size: .78rem; color: var(--ivory-dim); line-height: 1.6; margin-top: 17px; }
.rc-gallery figcaption span { float: right; color: var(--brass); font-size: .65rem; padding-top: 3px; }
.rc-gallery figcaption strong { display: block; font-weight: 500; color: var(--ivory); font-size: .94rem; padding-right: 22px; margin-bottom: 4px; }
.rc-reassurance { border-top: 1px solid var(--line-strong); display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 60px; }
.rc-note { font-size: .85rem; }
.rc-policy { background: #101212ed; border: 1px solid var(--line-strong); }
.rc-policy summary { cursor: pointer; padding: 24px; font-size: .9rem; color: var(--ivory); }
.rc-policy > div { padding: 0 24px 24px; }
.rc-policy h3 { font-size: 1.4rem; }.rc-policy h4 { margin-bottom: 5px; font-weight: 500; }
.rc-policy p { font-size: .85rem; }.rc-policy a { overflow-wrap: anywhere; }
.rc-support { border-top: 1px solid var(--line-strong); display: grid; grid-template-columns: 1.2fr 1fr; gap: 70px; }
.rc-support aside { border-left: 1px solid var(--line-strong); padding-left: 40px; align-self: center; }
.rc-support aside a { font-size: .9rem; overflow-wrap: anywhere; text-underline-offset: 5px; }
.rc-back { display: block; margin-top: 32px; }
.rc-lightbox { color: var(--ivory); background: #101212; border: 1px solid var(--brass); width: min(1100px, 96vw); max-width: 96vw; height: 94dvh; max-height: 94dvh; padding: 0; overflow: hidden; }
.rc-lightbox[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.rc-lightbox::backdrop { background: #000d; backdrop-filter: blur(6px); }
.rc-lightbox-bar, .rc-lightbox-controls { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 18px; background: #171919; }
.rc-lightbox-bar p { font-size: .85rem; margin: 0; }
.rc-lightbox button { color: var(--ivory); background: transparent; border: 1px solid var(--line-strong); padding: 10px 14px; min-height: 44px; font: inherit; font-size: .8rem; cursor: pointer; white-space: nowrap; }
.rc-lightbox button:hover { background: #ffffff0a; border-color: var(--brass); }
.rc-lightbox-view { overflow: auto; overscroll-behavior: contain; padding: 12px; }
.rc-lightbox-view img { height: 100%; width: auto; max-width: 100%; object-fit: contain; margin: auto; }
.rc-lightbox-view.is-zoomed img { width: 1080px; max-width: none; height: auto; margin: 0 auto; }
body.rc-modal-open { overflow: hidden; }
.rc-page :focus-visible, .rc-lightbox :focus-visible { outline: 2px solid var(--ember-bright); outline-offset: 5px; }
@media (max-width: 1000px) {
  .rc-hero { gap: 40px; }.rc-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .rc-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px 26px; }
  .rc-reassurance, .rc-support { gap: 32px; }
}
@media (max-width: 640px) {
  .rc-page { padding: 105px 22px 0; }.rc-hero { grid-template-columns: 1fr; gap: 32px; }
  .rc-page h1 { font-size: clamp(3.4rem, 14vw, 5rem); }.rc-tagline { font-size: 1.6rem; }
  .rc-hero-image { width: 270px; }.rc-principles { display: grid; grid-template-columns: 1fr 1fr; font-size: .7rem; gap: 14px; }
  .rc-section { padding: 50px 0; }.rc-feature-grid { grid-template-columns: 1fr; }
  .rc-feature-grid article { padding: 25px; }.rc-gallery { gap: 28px 14px; }
  .rc-gallery figcaption { font-size: .72rem; }.rc-gallery figcaption strong { font-size: .85rem; }
  .rc-reassurance, .rc-support { grid-template-columns: 1fr; gap: 16px; }
  .rc-support aside { border-left: 0; border-top: 1px solid var(--line-strong); padding: 24px 0 0; }
  .rc-lightbox-bar, .rc-lightbox-controls { padding: 10px; gap: 6px; }
  .rc-lightbox button { padding: 8px; font-size: .73rem; }.rc-lightbox-bar p { font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) { .rc-gallery button { transition: none; } }
