/*
 * Hereford Couriers Gutenberg homepage styling.
 * Scope: only blocks inside .hcrc-homepage. Does not change other pages.
 * The supplied artwork is kept intact; edit the Logo Image block to replace it.
 * Optional font: if @import is unavailable in the theme, Century Gothic/Jost fallbacks apply.
 */
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700;800;900&display=swap');

.hcrc-homepage {
  --hcrc-red: #c51d2c;
  --hcrc-gold: #f7cb58;
  --hcrc-ink: #1a1d1c;
  --hcrc-cream: #f8f6ef;
  --hcrc-muted: #5f6563;
  position: relative;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 0 0 calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden;
  box-sizing: border-box;
  background: var(--hcrc-cream);
  color: var(--hcrc-ink);
  font-family: 'ITC Avant Garde Gothic', 'Avant Garde', 'Century Gothic', 'Jost', sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
.hcrc-homepage *, .hcrc-homepage *::before, .hcrc-homepage *::after { box-sizing: border-box; }
.hcrc-homepage :is(h1,h2,h3,p) { margin-top: 0; }
.hcrc-homepage :is(h1,h2,h3) {
  font-family: inherit;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.06;
  letter-spacing: -0.045em;
}
.hcrc-homepage :is(a,a:visited) { color: inherit; }
.hcrc-homepage .wp-block-columns { margin-bottom: 0; }
.hcrc-homepage .wp-block-group { box-sizing: border-box; }
.hcrc-homepage .hcrc-eyebrow {
  margin: 0 0 19px;
  color: var(--hcrc-red);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.hcrc-homepage .hcrc-eyebrow::before {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 3px;
  margin-right: 10px;
  background: currentColor;
  content: '';
}
.hcrc-homepage .hcrc-section-title {
  margin-bottom: 23px;
  font-size: clamp(2.7rem, 4.8vw, 4.75rem);
}
.hcrc-homepage .hcrc-text-link { margin: 16px 0 0; font-size: .87rem; font-weight: 800; }
.hcrc-homepage .hcrc-text-link a,
.hcrc-homepage .hcrc-training-note a {
  color: var(--hcrc-red);
  border-bottom: 2px solid var(--hcrc-red);
  text-decoration: none;
}

/* Page-specific brand bar; the normal WordPress theme header remains separate. */
.hcrc-homepage .hcrc-top-strip { padding: 6px 24px; background: var(--hcrc-ink); color: #fff; }
.hcrc-homepage .hcrc-top-strip p { margin: 0; text-align: center; font-size: .67rem; font-weight: 800; letter-spacing: .16em; }
.hcrc-homepage .hcrc-brand-bar { padding: 8px max(24px, calc((100vw - 1160px) / 2)); background: #fff; }
.hcrc-homepage .hcrc-brand-columns { gap: 26px; min-height: 112px; }
.hcrc-homepage .hcrc-logo { position: relative; overflow: hidden; width: 178px; height: 112px; max-width: 100%; margin: 0; background: #ff0808; }
/* Crop only the solid-red outer margin; the uploaded logo art remains untouched. */
.hcrc-homepage .hcrc-logo img { position: absolute; display: block; max-width: none; width: 200px; height: auto; left: -12px; top: -48px; }
.hcrc-homepage .hcrc-brand-menu { flex: 1; }
.hcrc-homepage .hcrc-nav-links { margin: 0; text-align: right; font-size: .81rem; font-weight: 800; white-space: nowrap; }
.hcrc-homepage .hcrc-nav-links a { text-decoration: none; }
.hcrc-homepage .hcrc-nav-links a:hover { color: var(--hcrc-red); }
.hcrc-homepage .hcrc-brand-action { flex: 0 0 auto; }

/* Gutenberg Buttons remain native and editable. */
.hcrc-homepage .wp-block-buttons { gap: 11px; }
.hcrc-homepage .wp-block-button .wp-block-button__link {
  display: inline-block;
  min-height: 52px;
  padding: 15px 20px;
  border: 2px solid transparent;
  border-radius: 3px;
  box-shadow: none;
  font: 800 .84rem/1.25 'ITC Avant Garde Gothic', 'Avant Garde', 'Century Gothic', 'Jost', sans-serif;
  letter-spacing: .02em;
  text-decoration: none;
  text-transform: uppercase;
}
.hcrc-homepage .hcrc-button-red .wp-block-button__link { background: var(--hcrc-red); color: #fff; }
.hcrc-homepage .hcrc-button-red .wp-block-button__link:hover { background: #9e1723; }
.hcrc-homepage .hcrc-button-outline .wp-block-button__link { background: transparent; border-color: var(--hcrc-ink); color: var(--hcrc-ink); }
.hcrc-homepage .hcrc-button-white .wp-block-button__link { background: #fff; color: #9e1723; }
.hcrc-homepage .hcrc-button-white-outline .wp-block-button__link { background: transparent; border-color: #fff; color: #fff; }
.hcrc-homepage .hcrc-button-white-outline .wp-block-button__link:hover { background: #ffffff1a; }

/* Hero */
.hcrc-homepage .hcrc-hero { padding: 0 max(24px, calc((100vw - 1160px) / 2)); background: var(--hcrc-cream); }
.hcrc-homepage .hcrc-hero-columns { gap: 48px; min-height: 640px; }
.hcrc-homepage .hcrc-hero-copy { padding: 70px 0; }
.hcrc-homepage .hcrc-hero-title {
  margin: 0 0 23px;
  font-size: clamp(3.7rem, 5.8vw, 6.3rem);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -.065em;
}
.hcrc-homepage .hcrc-hero-lead { max-width: 480px; margin: 0 0 29px; color: #414843; font-size: 1.04rem; line-height: 1.8; }
.hcrc-homepage .hcrc-hero-media { position: relative; align-self: stretch; }
.hcrc-homepage .hcrc-hero-photo { height: 100%; margin: 0; }
.hcrc-homepage .hcrc-hero-photo img { display: block; width: 100%; height: 100%; min-height: 610px; object-fit: cover; object-position: 50% 38%; }
.hcrc-homepage .hcrc-photo-caption {
  position: absolute;
  bottom: 20px;
  left: 20px;
  margin: 0;
  padding: 8px 12px;
  background: #fff;
  color: var(--hcrc-ink);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .02em;
}

/* Statistics ribbon */
.hcrc-homepage .hcrc-ticker { padding: 20px max(24px, calc((100vw - 1160px) / 2)); background: var(--hcrc-red); color: #fff; }
.hcrc-homepage .hcrc-ticker-columns { gap: 0; }
.hcrc-homepage .hcrc-ticker-columns > .wp-block-column { padding: 0 18px; text-align: center; border-right: 1px solid #ffffff60; }
.hcrc-homepage .hcrc-ticker-columns > .wp-block-column:last-child { border-right: 0; }
.hcrc-homepage .hcrc-ticker h3 { margin: 0 0 4px; color: var(--hcrc-gold); font-size: 1.35rem; letter-spacing: 0; }
.hcrc-homepage .hcrc-ticker p { margin: 0; color: #fff; font-size: .66rem; font-weight: 800; letter-spacing: .08em; }

/* About and training */
.hcrc-homepage .hcrc-about { padding: 105px max(24px, calc((100vw - 1160px) / 2)); }
.hcrc-homepage .hcrc-about-columns { gap: 82px; }
.hcrc-homepage .hcrc-about-copy { padding-left: 32px; border-left: 4px solid var(--hcrc-gold); }
.hcrc-homepage .hcrc-about-copy > p:first-child { max-width: 500px; color: #454a48; font-size: 1.07rem; line-height: 1.9; }
.hcrc-homepage .hcrc-training { padding: 96px max(24px, calc((100vw - 1160px) / 2)) 100px; background: #fff; }
.hcrc-homepage .hcrc-training .hcrc-section-title { margin-bottom: 12px; }
.hcrc-homepage .hcrc-section-intro { max-width: 540px; margin: 0 0 30px; color: var(--hcrc-muted); }
.hcrc-homepage .hcrc-card-columns { gap: 17px; }
.hcrc-homepage .hcrc-card-columns > .wp-block-column { display: flex; }
.hcrc-homepage .hcrc-session-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 360px;
  padding: 30px 27px 26px;
  border: 1px solid #e3e1db;
  border-radius: 5px;
}
.hcrc-homepage .hcrc-card-cream { background: #f6f5f0; }
.hcrc-homepage .hcrc-card-dark { background: #242827; color: #fff; border-color: #242827; }
.hcrc-homepage .hcrc-card-pink { background: #f8e0d9; border-color: #f8e0d9; }
.hcrc-homepage .hcrc-card-label {
  align-self: flex-start;
  margin: 0 0 40px;
  padding: 5px 10px;
  border: 1px solid currentColor;
  border-radius: 30px;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .07em;
}
.hcrc-homepage .hcrc-session-card h3 { margin-bottom: 13px; font-size: clamp(1.65rem, 2.5vw, 2.25rem); }
.hcrc-homepage .hcrc-session-card > p:not(.hcrc-card-label):not(.hcrc-card-link):not(.hcrc-card-detail) { margin-bottom: 25px; font-size: .9rem; opacity: .8; }
.hcrc-homepage .hcrc-card-detail { margin: auto 0 11px; font-size: .76rem; line-height: 1.7; }
.hcrc-homepage .hcrc-card-detail strong { font-size: .85rem; }
.hcrc-homepage .hcrc-card-link { margin: 0; font-size: .79rem; font-weight: 800; }
.hcrc-homepage .hcrc-card-link a { text-decoration: underline; text-underline-offset: 4px; }
.hcrc-homepage .hcrc-training-note { margin: 25px 0 0; color: var(--hcrc-muted); font-size: .83rem; }
.hcrc-homepage .hcrc-training-note a { margin-left: 12px; font-weight: 800; }

/* Club community image feature */
.hcrc-homepage .hcrc-feature { padding: 0 max(24px, calc((100vw - 1160px) / 2)); background: var(--hcrc-ink); color: #fff; }
.hcrc-homepage .hcrc-feature-columns { gap: 70px; min-height: 555px; }
.hcrc-homepage .hcrc-feature-photo { align-self: stretch; }
.hcrc-homepage .hcrc-feature-photo figure { height: 100%; margin: 0; }
.hcrc-homepage .hcrc-feature-photo img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; object-position: 50% 45%; }
.hcrc-homepage .hcrc-feature-copy { padding: 65px 0; }
.hcrc-homepage .hcrc-feature .hcrc-eyebrow { color: var(--hcrc-gold); }
.hcrc-homepage .hcrc-feature-copy > p:not(.hcrc-eyebrow) { max-width: 450px; margin: 0 0 30px; color: #d2d7d3; line-height: 1.85; }

/* Benefits */
.hcrc-homepage .hcrc-reasons { padding: 100px max(24px, calc((100vw - 1160px) / 2)); }
.hcrc-homepage .hcrc-reason-columns { gap: 30px; margin-top: 37px; }
.hcrc-homepage .hcrc-reason { padding-top: 26px; border-top: 3px solid var(--hcrc-ink); }
.hcrc-homepage .hcrc-number { margin: 0 0 12px; color: var(--hcrc-red); font-size: 2.6rem; font-weight: 900; line-height: 1; }
.hcrc-homepage .hcrc-reason h3 { margin-bottom: 11px; font-size: 1.75rem; }
.hcrc-homepage .hcrc-reason p:last-child { color: #565c58; }

/* Join call to action */
.hcrc-homepage .hcrc-cta { padding: 74px max(24px, calc((100vw - 1160px) / 2)); background: var(--hcrc-red); color: #fff; }
.hcrc-homepage .hcrc-cta .hcrc-eyebrow { color: var(--hcrc-gold); }
.hcrc-homepage .hcrc-cta .hcrc-section-title { max-width: 790px; margin-bottom: 10px; }
.hcrc-homepage .hcrc-cta p:last-child { margin-bottom: 0; }
.hcrc-homepage .hcrc-cta-actions .wp-block-buttons { flex-direction: column; align-items: stretch; }
.hcrc-homepage .hcrc-cta-actions .wp-block-button { width: 100%; }
.hcrc-homepage .hcrc-cta-actions .wp-block-button__link { display: block; text-align: center; }

/* Practical information */
.hcrc-homepage .hcrc-info { padding: 82px max(24px, calc((100vw - 1160px) / 2)); background: #fff; }
.hcrc-homepage .hcrc-info-columns { gap: 25px; }
.hcrc-homepage .hcrc-info-card { min-height: 220px; padding: 33px; border: 1px solid #e6e5de; background: #fbfaf6; }
.hcrc-homepage .hcrc-info-card h3 { margin-bottom: 11px; font-size: 1.55rem; }
.hcrc-homepage .hcrc-info-card p:not(.hcrc-text-link) { max-width: 430px; color: #545a56; font-size: .9rem; }
.hcrc-homepage .hcrc-page-footer { padding: 45px max(24px, calc((100vw - 1160px) / 2)); background: var(--hcrc-ink); color: #fff; }
.hcrc-homepage .hcrc-page-footer p { margin: 0 0 14px; font-size: .72rem; letter-spacing: .045em; }
.hcrc-homepage .hcrc-footer-links { font-weight: 800; }
.hcrc-homepage .hcrc-footer-links a { text-decoration: none; }
.hcrc-homepage .hcrc-footer-links a:hover { color: var(--hcrc-gold); }

@media (max-width: 1120px) {
  .hcrc-homepage .hcrc-nav-links { font-size: .7rem; white-space: normal; }
  .hcrc-homepage .hcrc-hero-columns { gap: 25px; }
  .hcrc-homepage .hcrc-feature-columns { gap: 40px; }
}
@media (max-width: 800px) {
  .hcrc-homepage .hcrc-brand-menu { display: none; }
  .hcrc-homepage .hcrc-brand-columns { flex-wrap: nowrap; justify-content: space-between; }
  .hcrc-homepage .hcrc-brand-columns > .wp-block-column:first-child { flex-basis: 155px !important; }
  .hcrc-homepage .hcrc-hero-columns,
  .hcrc-homepage .hcrc-about-columns,
  .hcrc-homepage .hcrc-feature-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-hero-columns > .wp-block-column,
  .hcrc-homepage .hcrc-about-columns > .wp-block-column,
  .hcrc-homepage .hcrc-feature-columns > .wp-block-column { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-hero-copy { padding: 65px 0 15px; }
  .hcrc-homepage .hcrc-hero-title { font-size: clamp(3.3rem, 9.5vw, 5.2rem); }
  .hcrc-homepage .hcrc-hero-photo img { min-height: 440px; max-height: 490px; }
  .hcrc-homepage .hcrc-about { padding-top: 78px; padding-bottom: 78px; }
  .hcrc-homepage .hcrc-about-copy { margin-top: 18px; }
  .hcrc-homepage .hcrc-card-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-card-columns > .wp-block-column { flex-basis: calc(50% - 9px) !important; }
  .hcrc-homepage .hcrc-card-columns > .wp-block-column:last-child { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-feature-photo img { min-height: 360px; max-height: 440px; }
  .hcrc-homepage .hcrc-feature-copy { padding: 18px 0 72px; }
}
@media (max-width: 600px) {
  .hcrc-homepage .hcrc-brand-columns { gap: 12px; min-height: 90px; }
  .hcrc-homepage .hcrc-logo { width: 151px; height: 95px; }
  .hcrc-homepage .hcrc-logo img { width: 170px; left: -10px; top: -41px; }
  .hcrc-homepage .hcrc-brand-action .wp-block-button__link { padding: 11px 13px; font-size: .69rem; }
  .hcrc-homepage .hcrc-hero-copy { padding: 48px 0 15px; }
  .hcrc-homepage .hcrc-hero-title { font-size: clamp(2.8rem, 10.7vw, 4.4rem); }
  .hcrc-homepage .hcrc-buttons { display: block; }
  .hcrc-homepage .hcrc-buttons .wp-block-button { display: block; margin: 0 0 10px; }
  .hcrc-homepage .hcrc-buttons .wp-block-button__link { display: block; text-align: center; }
  .hcrc-homepage .hcrc-hero-photo img { min-height: 335px; max-height: 380px; }
  .hcrc-homepage .hcrc-ticker-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-ticker-columns > .wp-block-column { flex-basis: 100% !important; padding: 10px 0; border: 0; border-bottom: 1px solid #ffffff55; }
  .hcrc-homepage .hcrc-ticker-columns > .wp-block-column:last-child { border-bottom: 0; }
  .hcrc-homepage .hcrc-section-title { font-size: clamp(2.4rem, 8.7vw, 3.7rem); }
  .hcrc-homepage .hcrc-about, .hcrc-homepage .hcrc-training, .hcrc-homepage .hcrc-reasons { padding-top: 65px; padding-bottom: 65px; }
  .hcrc-homepage .hcrc-about-copy { padding-left: 19px; }
  .hcrc-homepage .hcrc-card-columns > .wp-block-column { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-session-card { min-height: 310px; }
  .hcrc-homepage .hcrc-training-note a { display: inline-block; margin: 10px 0 0; }
  .hcrc-homepage .hcrc-reason-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-reason-columns > .wp-block-column { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-cta-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-cta-columns > .wp-block-column { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-info-columns { flex-wrap: wrap; }
  .hcrc-homepage .hcrc-info-columns > .wp-block-column { flex-basis: 100% !important; }
  .hcrc-homepage .hcrc-info-card { min-height: 0; }
  .hcrc-homepage .hcrc-footer-links a { display: inline-block; margin: 5px 8px 5px 0; }
}
/* Hide the old theme header on our new homepage only */
body:has(.hcrc-homepage) .site-header,
body:has(.hcrc-homepage) .custom-header,
body:has(.hcrc-homepage) .entry-header {
    display: none !important;
}

/* Hide the original WordPress footer on the new homepage only */
body:has(.hcrc-homepage) .site-footer,
body:has(.hcrc-homepage) .footer-widgets,
body:has(.hcrc-homepage) .footer-widget-area {
    display: none !important;
}
/* More red space around the Hereford Couriers logo */

.hcrc-homepage .hcrc-logo {
    width: 195px !important;
    height: 155px !important;
}

.hcrc-homepage .hcrc-logo img {
    width: 180px !important;
    left: 7px !important;
    top: -20px !important;
}

/* Logo size on mobile */
@media (max-width: 600px) {
    .hcrc-homepage .hcrc-logo {
        width: 155px !important;
        height: 125px !important;
    }

    .hcrc-homepage .hcrc-logo img {
        width: 147px !important;
        left: 4px !important;
        top: -17px !important;
    }
}