/* Club brand finish: drawn from the supplied crest, jersey and membership artwork.
   Sparse print wear belongs on poster lettering and rules, never on faces or copy. */
:root {
  --night:#080d16;
  --ink:#0b1017;
  --navy:#0b274f;
  --blue:#15529b;
  --red:#d9272d;
  --chalk:#eeeae1;
  --white:#f8f6ef;
}

/* A little ink missing from the largest type recalls the club's printed posters. */
.home .big,
.home .foot .motto,
.support-page .page-main h1,
.support-page .page-footer h2,
.support-page .shop-signoff {
  -webkit-mask-image:url("assets/brand-wear.svg");
  mask-image:url("assets/brand-wear.svg");
  -webkit-mask-size:300px 180px;
  mask-size:300px 180px;
}

/* Hard, short brush marks keep labels legible against all four club fields. */
.home .kicker,
.support-page .page-label { position:relative; padding-bottom:14px; }
.home .kicker::after,
.support-page .page-label::after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:clamp(70px,8vw,122px);
  height:8px;
  background:currentColor;
  -webkit-mask:url("assets/brand-brush.svg") left center / 100% 100% no-repeat;
  mask:url("assets/brand-brush.svg") left center / 100% 100% no-repeat;
}
.support-page .page-label { color:var(--red); }
.support-page .women-opening .page-label,
.support-page .team-enquiry .page-label { color:#fff; }

/* The original recruitment posters set their lead line over a broad paint swipe. */
.home #club .big::after,
.home #teams .big::after,
.support-page .page-main > section:first-child h1::after {
  content:"";
  display:block;
  width:clamp(120px,18vw,290px);
  height:clamp(13px,1.7vw,24px);
  margin:20px 0 0;
  background:var(--red);
  transform:rotate(-2deg);
  -webkit-mask:url("assets/brand-brush.svg") center / 100% 100% no-repeat;
  mask:url("assets/brand-brush.svg") center / 100% 100% no-repeat;
}
.support-page .women-opening h1::after { background:#fff; }

/* The jersey's navy/white bands get one firm red break. */
.home .hoop:nth-child(2) {
  border-top:6px solid var(--red);
  border-bottom:6px solid var(--red);
}
.home .hoop:nth-child(odd) { background:var(--navy); }
.home .hoop:nth-child(even) { background:var(--white); color:var(--night); }

/* Emphasis is angular and direct, with no soft cards around the story. */
.home .btn,
.support-page .page-button,
.support-page .page-nav-cta {
  clip-path:polygon(0 0,100% 0,calc(100% - 11px) 100%,0 100%);
  border-radius:0;
}
.home .btn.ghost,
.support-page .page-button.outline { clip-path:none; }
.home .btn:hover,
.support-page .page-button:hover,
.support-page .page-nav-cta:hover { filter:brightness(1.12); }
.home .link,
.support-page .page-footer-links a:hover { text-decoration-thickness:2px; text-underline-offset:5px; }

/* Documentary photos stay clean. Small colored marks anchor their captions. */
.home .shot figcaption::before,
.support-page figure figcaption::before {
  content:"/";
  color:var(--red);
  font:400 1.4em/.5 var(--display);
  padding-right:.42em;
}
.home #club .shot img { outline:1px solid #ffffff55; outline-offset:0; }
.home .loop .tag { background:var(--night); border-left:3px solid var(--red); }

/* Two larger paint strokes carry the poster vocabulary through the homepage. */
.home #play .fixtures { position:relative; }
.home #play .fixtures::before,
.home #shop .sponsor::before {
  content:"";
  position:absolute;
  top:-13px;
  right:0;
  width:clamp(110px,16vw,260px);
  height:12px;
  background:var(--red);
  -webkit-mask:url("assets/brand-brush.svg") center / 100% 100% no-repeat;
  mask:url("assets/brand-brush.svg") center / 100% 100% no-repeat;
}
.home #shop .sponsor { position:relative; }
.home #club .reasons li.on::after { transform:skewX(-18deg) rotate(-3deg); }
.home .foot { border-top:7px solid var(--red); }
.home .foot .motto { letter-spacing:-.012em; }

/* A matching visual grammar on the four supporting routes. Layout remains theirs. */
.support-page .page-header { border-bottom:4px solid var(--red); }
.support-page .page-logo { letter-spacing:.015em; }
.support-page .page-nav { text-transform:uppercase; letter-spacing:.055em; }
.support-page .page-nav a[aria-current="page"] { border-bottom-width:3px; }
.support-page .page-main h1 { letter-spacing:-.012em; }
.support-page .page-button { text-transform:uppercase; letter-spacing:.045em; }
.support-page .page-footer { border-top:7px solid var(--red); }
.support-page .page-footer h2 { letter-spacing:-.012em; }
.support-page .page-rule { border-top-width:3px; }

/* Route-specific touches echo the original posters without masking any photograph. */
.support-page .women-hero { border-bottom:7px solid var(--night); }
.support-page .women-picture img { outline:2px solid #ffffff80; outline-offset:-2px; }
.support-page .women-steps li { border-top-width:2px; }
.support-page .teams-opening { border-bottom:7px solid var(--red); }
.support-page .offer-details { border-top-width:3px; }
.support-page .shop-title .range-status { border-top-width:4px; border-bottom-width:4px; }
.support-page .shop-signoff { border-top:7px solid var(--navy); }
.support-page .partners-opening { border-bottom:7px solid var(--red); }
.support-page .partners-possibilities .possibility { border-top-width:2px; }

@media(max-width:600px) {
  .home .hoop:nth-child(2) { border-top-width:4px; border-bottom-width:4px; }
  .home #play .fixtures::before,
  .home #shop .sponsor::before { height:9px; top:-10px; }
  .support-page .page-header { border-bottom-width:3px; }
}
