/* =========================================
   CLUB PAGE
========================================= */

.clubPage {
    width: min(100% - 48px, 1320px);
    margin: 0 auto;
    padding: 22px 0 64px;
}

@media (max-width: 768px) {
    .clubPage {
        width: min(100% - 28px, 1320px);
        padding: 18px 0 48px;
    }
}

/* HERO */

/* =========================================================
   CLUB SECTION HERO
========================================================= */

.clubHero {
  position: relative;
  overflow: hidden;

  min-height: 280px;

  display: flex;
  align-items: center;

  margin-bottom: 36px;
  padding: 48px;

  border-radius: 28px;

  color: #ffffff;

  background:
    linear-gradient(
      90deg,
      rgba(4, 18, 14, .78) 0%,
      rgba(4, 18, 14, .52) 42%,
      rgba(4, 18, 14, .18) 72%,
      rgba(4, 18, 14, .08) 100%
    ),
    url('/assets/images/heroes/hero-home.jpeg');

  background-size: cover;
  background-position: center;

  box-shadow:
    0 28px 70px rgba(0, 0, 0, .18);

  transition:
    transform .35s ease,
    box-shadow .35s ease;
}

.clubHero:hover {
  transform: translateY(-2px);

  box-shadow:
    0 34px 90px rgba(0, 0, 0, .22);
}

.clubHero::before {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(3, 22, 16, .92) 0%,
      rgba(3, 22, 16, .78) 38%,
      rgba(3, 22, 16, .35) 65%,
      rgba(3, 22, 16, .08) 100%
    );

  z-index: 1;
}

.clubHero__content {
  position: relative;
  z-index: 2;

  max-width: 760px;
}

.clubHero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  margin-bottom: 16px;
  padding: 8px 12px;

  border-radius: 999px;

  color: rgba(255,255,255,.94);
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.08);

  backdrop-filter: blur(10px);

  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.clubHero__title {
  max-width: 920px;

  margin: 0 0 18px 0;

  font-size: 52px;
  line-height: .96;
  font-weight: 900;
  letter-spacing: -0.045em;

  color: #ffffff;

  text-shadow:
    0 6px 28px rgba(0,0,0,.34);
}

.clubHero__text {
  max-width: 620px;

  margin: 0;

  color: rgba(255,255,255,.86);

  font-size: 17px;
  line-height: 1.7;
}

@media (max-width: 768px) {
  .clubHero {
    min-height: 240px;
    padding: 34px 26px;
    border-radius: 26px;
  }

  .clubHero__title {
    font-size: 38px;
  }
}
/* LAYOUT */

.clubLayout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 320px;
    gap:28px;
}

.clubMain{
    display:flex;
    flex-direction:column;
    gap:28px;
}

/* SECTION */

.clubSection{
    padding:32px;

    border-radius:28px;

    background:#fff;

    border:1px solid rgba(0,0,0,.04);

    box-shadow:
        0 14px 40px rgba(0,0,0,.04);
}

.clubSection__head{
    margin-bottom:26px;

    display:flex;
    flex-direction:column;
    gap:10px;
}

.clubSection__head span{
    color:#0b5a38;

    font-size:12px;
    font-weight:900;

    letter-spacing:.08em;
    text-transform:uppercase;
}

.clubSection__head h2{
    margin:0;

    color:#05281d;

    font-size:2rem;
    line-height:1;
    letter-spacing:-.05em;

    font-weight:900;
}

/* STORY */

.clubStory{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.clubStory p{
    margin:0;

    color:#5f6f68;

    line-height:1.9;

    font-size:1rem;
}

/* VALUES */

.clubValues{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.clubValueCard{
    padding:24px;

    border-radius:22px;

    background:#f7faf8;

    border:1px solid rgba(11,61,46,.06);
}

.clubValueCard h3{
    margin:0 0 12px;

    color:#05281d;

    font-size:1.15rem;
    font-weight:900;
}

.clubValueCard p{
    margin:0;

    color:#5f6f68;

    line-height:1.7;
}

/* SPORTS */

.clubSports{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.clubSportCard{
    padding:24px;

    border-radius:22px;

    background:
        linear-gradient(
            135deg,
            #03291f 0%,
            #0b5a38 100%
        );

    color:#fff;

    display:flex;
    flex-direction:column;
    gap:10px;
}

.clubSportCard strong{
    font-size:1.15rem;
    font-weight:900;
}

.clubSportCard span{
    color:rgba(255,255,255,.78);

    line-height:1.6;
}

/* SIDEBAR */

.clubSidebar{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.clubInfoCard{
    padding:26px;

    border-radius:24px;

    background:#fff;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:
        0 14px 40px rgba(0,0,0,.04);
}

.clubInfoCard--dark{
    background:
        linear-gradient(
            135deg,
            #03291f 0%,
            #0b5a38 100%
        );

    color:#fff;
}

.clubInfoCard h3{
    margin:0 0 16px;

    font-size:1.15rem;
    font-weight:900;
}

.clubInfoCard p,
.clubInfoCard li{
    color:#5f6f68;

    line-height:1.7;
}

.clubInfoCard--dark p{
    color:rgba(255,255,255,.82);
}

.clubInfoCard ul{
    margin:0;
    padding-left:18px;

    display:flex;
    flex-direction:column;
    gap:10px;
}

/* MOBILE */

@media (max-width: 1100px){

    .clubLayout{
        grid-template-columns:1fr;
    }

    .clubSidebar{
        order:-1;
    }
}

@media (max-width: 800px){

    .clubHero{
        min-height:220px;
        padding:28px;
        border-radius:24px;
    }

    .clubSection{
        padding:24px;
    }

    .clubValues,
    .clubSports{
        grid-template-columns:1fr;
    }
}