/* Homepage v2 refinements — three directions. Loads after Homepage v2 Season Rail.css.
   .rf = shared polish · .rA Editorial · .rB Immersive · .rC Light */

/* ---------- shared polish ---------- */
.rf .hero__ghost,.rf .hero__water,.rf .scroll-hint,.rf .fifty__ghost{display:none}
.rf .section{padding-block:clamp(80px,10vw,128px)}
.rf .rule-h,.v2.rf .rule-h{flex-direction:row;align-items:flex-end;justify-content:space-between;text-align:left;gap:24px 48px;margin-bottom:clamp(36px,5vw,56px);flex-wrap:wrap}
.v2.rf .rule-h .rule-top{margin-inline:0}
.rf .rule-h::before{display:none}
.v2.rf .hero__main{margin-inline:auto!important;max-width:none;width:min(var(--tr-content-max,1200px),100% - 2*var(--tr-content-pad,24px));text-align:left}
.v2.rf .hero__main>*{max-width:900px}
.v2.rf .hero__lede{max-width:560px}
.rf .rfe__card picture{position:absolute;inset:0}
.v2.rf .rule-h h2{font-size:clamp(32px,4vw,52px);line-height:1.02}
.v2.rf .rule-h .side{text-align:left;max-width:400px;margin-top:0;font-size:16px;line-height:1.6}
.rf .rfe__card img,.rf .rfe__card image-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--tr-ease)}
.rf .rfe__card:hover img{transform:scale(1.04)}
.rf .rfe__card .scrim{pointer-events:none}
.rf .rfe__label{font-weight:700;font-size:24px}
.rf .season__foot p{font-size:13px}
.rf .footer__partners>div{flex:0 0 auto}
.rf hb-eco-badge{display:block;width:400px;max-width:100%}
.rf .join h2,.rf .fifty h2{font-weight:700}
.rf .hero h1{font-weight:700;letter-spacing:-0.025em}
.rf .acf-toggle{opacity:.5}.rf .acf-toggle:hover{opacity:1}

/* ---------- A · Editorial: left-aligned, hairlines, square corners, restrained yellow ---------- */
.rA{--tr-radius-5:6px}
.rA .hero{align-items:flex-end;min-height:min(86vh,820px)}
.v2.rA .hero__main{padding-bottom:clamp(40px,6vw,72px)}
.v2.rA .hero__lede{margin-inline:0}
.v2.rA .hero__ctas{justify-content:flex-start}
.rA .hero h1 .y{color:var(--tr-white);display:inline}
.rA .hero h1 .y::before{content:" "}
.rA .hero__bg::after{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.25) 70%),linear-gradient(180deg,transparent 50%,rgba(0,0,0,.6))!important}
.rA .rule-top{width:100%;height:1px;background:var(--tr-line-2);margin-bottom:28px}
.rA .rule-h{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,400px);position:relative}
.rA .rule-h>div:first-child{grid-column:1/-1}
.rA .rule-h .rule-top{grid-column:1/-1}
.rA .section--charcoal{background:var(--tr-black)}
.rA .fx{background:transparent;border-radius:6px}
.rA .fx:hover{transform:none;background:var(--tr-charcoal)}
.rA .fx__when .d{font-weight:700}
.rA .rfe__card{border-radius:6px}
.rA .rfe__card:hover{transform:none}
.rA .evc{background:transparent;border-radius:6px}
.rA .evc:hover{transform:none;background:var(--tr-charcoal)}
.rA .intro__lead{font-weight:500}
.rA .intro__lead em{font-style:normal;color:var(--tr-white);text-decoration:underline;text-decoration-color:var(--tr-yellow);text-decoration-thickness:3px;text-underline-offset:6px}
.rA .join{text-align:left}
.rA .join p{margin-left:0}

/* ---------- B · Immersive: full-bleed photography, bigger type, image-led cards ---------- */
.rB .nav{position:fixed;left:0;right:0;background:rgba(0,0,0,.82);border-bottom:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.rB .hero{min-height:max(480px,calc(100svh - 300px));align-items:stretch;justify-content:center;padding-block:calc(96px + clamp(64px,10vh,128px)) clamp(64px,10vh,128px)}
.v2.rB .hero__main{padding-bottom:0;padding-top:0}
.v2.rB .hero__main>*{max-width:1040px}
.v2.rB .hero__lede{margin-inline:0;font-size:19px}
.v2.rB .hero__ctas{justify-content:flex-start}
.v2.rB .hero h1{font-size:clamp(44px,7vw,104px);line-height:.95}
.rB .hero__bg::after{background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 35%,rgba(0,0,0,.75))!important}
.rB .rfe__grid,.v2.rB .rfe__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.rB .rfe__card{aspect-ratio:3/5;border-radius:8px}
.rB .rfe__label{font-size:26px;bottom:22px;left:22px}
.rB .fx{border-radius:8px}
.rB .evc{border-radius:8px}
.rB .evc__rail{grid-auto-columns:minmax(300px,420px)}
.rB .evc__img{aspect-ratio:16/10}
.rB .intro__lead{font-size:clamp(28px,3.6vw,46px)}
@media (max-width:1100px){.v2.rB .rfe__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.v2.rB .rfe__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rB .rfe__card{aspect-ratio:4/5}}

/* ---------- C · Light: paper sections between dark bookends ---------- */
.rC{--paper:#F5F3EE;--ink:#111;--ink-2:#4F4C46;--ink-3:#77736A;--pline:#E1DDD3}
.v2.rC .hero__lede{margin-inline:0}
.v2.rC .hero__ctas{justify-content:flex-start}
.rC .hero{align-items:flex-end;padding-bottom:clamp(48px,7vw,88px)}
.rC .season,.rC #rowing,.rC #events{background:var(--paper);color:var(--ink);border-color:var(--pline)}
.rC #events{background:#fff}
.rC .season h2,.rC #rowing h2,.rC #events h2{color:var(--ink)}
.rC .season .side,.rC #rowing .side,.rC #events .side{color:var(--ink-2)}
.rC .season .eyebrow,.rC #rowing .eyebrow,.rC #events .eyebrow{color:var(--ink-3)}
.rC .rule-top{background:var(--ink)}
.rC .season__meta{color:var(--ink-3)}
.rC .season__meta .pill{border-color:var(--pline);color:var(--ink-2)}
.rC .season__meta .pill.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.rC .fx{background:#fff;border-color:var(--pline);box-shadow:0 1px 0 rgba(0,0,0,.02)}
.rC .fx:hover{border-color:var(--ink);transform:translateY(-2px)}
.rC .fx__when{border-color:var(--pline)}
.rC .fx__when .d{color:var(--ink)}
.rC .fx__when .w,.rC .fx__when .m{color:var(--ink-2)}
.rC .fx__when .t{color:var(--ink-3)}
.rC .fx__host .club{color:var(--ink-2)}
.rC .fx__host .role{color:var(--ink-3)}
.rC .fx__body h3{color:var(--ink)}
.rC .fx__body .venue{color:var(--ink-3)}
.rC .fx__deadline{color:var(--ink);text-decoration:underline;text-decoration-color:var(--tr-yellow);text-decoration-thickness:2px;text-underline-offset:4px}
.rC .fx__deadline.is-closed{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--pline)}
.rC .fx__tags span{border-color:var(--pline);color:var(--ink-2)}
.rC .fx--home{background:#FFFBEA;border-color:var(--tr-yellow)}
.rC .fx--pending{background:transparent}
.rC .fx--pending .fx__when .d,.rC .fx--pending .fx__body h3{color:var(--ink-3)}
.rC .crest{background:var(--paper);border-color:var(--pline);color:var(--ink-2)}
.rC .crest:has(img){background:#fff;border-color:var(--pline)}
.rC .crest--home{background:#000}
.rC .season__foot{border-color:var(--pline)}
.rC .season__foot p,.rC .season__hint{color:var(--ink-3)}
.rC .season__foot a{color:var(--ink)}
.rC .rail{scrollbar-color:var(--pline) transparent}
.rC .evc{background:var(--paper);border-color:var(--pline);color:var(--ink)}
.rC .evc:hover{border-color:var(--ink)}
.rC .evc__date{color:var(--ink-3)}
.rC .evc__meta{color:var(--ink-2)}
.rC .evc__go{color:var(--ink)}
.rC .evc__rail{scrollbar-color:var(--pline) transparent}
.rC .rfe__card{border-radius:12px}

/* ---------- S · Split hero: text left on black, photo right ---------- */
.rS .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:min(88vh,820px);padding:0;align-items:stretch}
.rS .hero__bg{position:relative;inset:auto;z-index:0;grid-column:2;grid-row:1}
.rS .hero__bg::after{background:linear-gradient(90deg,#000,transparent 30%)!important}
.v2.rS .hero__main{grid-column:1;grid-row:1;width:auto;margin:0!important;align-self:end;padding:clamp(120px,14vw,160px) clamp(24px,4vw,64px) clamp(48px,6vw,80px)}
.v2.rS .hero h1{font-size:clamp(36px,4.6vw,68px)}
@media (max-width:860px){.rS .hero{grid-template-columns:minmax(0,1fr)}.rS .hero__bg{grid-column:1;height:56vh}.rS .hero__bg::after{background:linear-gradient(180deg,transparent 50%,#000)!important}.v2.rS .hero__main{grid-row:2;padding-top:24px}}

/* ---------- F · Framed hero: inset rounded photo ---------- */
.rF .hero{margin:clamp(8px,1.6vw,20px);margin-top:0;border-radius:10px;overflow:hidden;min-height:min(84vh,780px);align-items:flex-end}
.rF .hero__bg::after{background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 35%,rgba(0,0,0,.8))!important}
.v2.rF .hero__main{padding-bottom:clamp(40px,5vw,64px)}

/* ---------- M · Centred hero ---------- */
.rM .hero{align-items:center;min-height:100svh}
.v2.rM .hero__main{text-align:center}
.v2.rM .hero__main>*{margin-inline:auto}
.v2.rM .hero__ctas{justify-content:center}
.v2.rM .hero h1{font-size:clamp(44px,7.4vw,112px);line-height:.95}
.rM .hero__bg::after{background:radial-gradient(ellipse at center,rgba(0,0,0,.35),rgba(0,0,0,.75))!important}

.rB .hero__bg img{object-position:center 58%}
.rB .hero__bg::after{background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.2) 45%,rgba(0,0,0,.6))!important}

a.fx{color:inherit;text-decoration:none;cursor:pointer}
a.fx:hover h3{color:var(--tr-yellow)}
a.fx:focus-visible{outline:2px solid var(--tr-yellow);outline-offset:3px}

/* --- Primary nav: Gaillimh, tidier rhythm, clear current-page state --- */
.rf .nav__links{gap:32px}
.rf .nav__links a{font-family:var(--tr-font-display);font-weight:700;font-size:15.5px;letter-spacing:.02em;color:var(--tr-white);padding:8px 0}
.rf .nav__links a::after{height:2px;bottom:2px;border-radius:2px}
.rf .nav__links a:hover{color:var(--tr-yellow)}
.rf .nav__links a.is-active,.rf .nav__links a[aria-current="page"]{color:var(--tr-yellow);font-weight:900}
.rf .nav__links a.is-active::after,.rf .nav__links a[aria-current="page"]::after{right:0;background:var(--tr-yellow)}
.rf .nav__login{font-family:var(--tr-font-display);font-weight:700;font-size:15.5px}
@media (min-width:861px) and (max-width:1179px){.rf .nav__links{gap:20px}.rf .nav__links a,.rf .nav__login{font-size:14.5px}}
@media (max-width:860px){.rf .nav--open .nav__links a{font-size:22px;padding:12px 0}.rf .nav--open .nav__links a::after{display:none}.rf .nav--open .nav__links a.is-active{padding-left:14px;box-shadow:inset 3px 0 0 var(--tr-yellow)}}


/* ==========================================================
   Design fixes — Nov 2026
   ========================================================== */

/* 1. Hero — keep the lede readable over the photo */
.v2.rB .hero__bg::after{background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.45) 45%,rgba(0,0,0,.08) 78%,transparent 100%),linear-gradient(180deg,rgba(0,0,0,.25),transparent 35%,rgba(0,0,0,.75))!important}
.v2 .hero h1{text-shadow:0 2px 24px rgba(0,0,0,.35)}
.v2 .hero__lede{color:#fff;max-width:520px;text-shadow:0 1px 2px rgba(0,0,0,.6),0 2px 18px rgba(0,0,0,.55)}
@media (max-width:760px){
  .v2.rB .hero__bg::after{background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.6) 45%,rgba(0,0,0,.88) 100%)!important}
}

/* 2. Club events — equal image heights so dates/titles line up */
.evc__img{flex:none;overflow:hidden;min-height:0;aspect-ratio:16/10}
.evc__img img{width:100%;height:100%;object-fit:cover;display:block}

/* 3. About — keep the lead statement in view beside the taller aside */
@media (min-width:761px){
  .intro__lead{position:sticky;top:128px}
}

/* 4. Fixtures — consistent header and title heights across cards */
.fx__host{min-height:100px}
.fx__body{flex:1}
.fx__body h3{min-height:2.5em}
.fx__deadline{margin-top:auto}
