.clubHome{
  width:min(calc(100% - 40px),1180px);
  padding:0!important;
  margin:30px auto 82px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  overflow:hidden;
  border:1px solid rgba(218,174,63,.42);
  border-radius:30px;
  background:#07152f;
  box-shadow:0 28px 70px rgba(7,21,47,.16);
}
.clubHomePhoto{
  min-height:520px;
  display:flex;
  flex-direction:column;
  background:#07152f;
  overflow:hidden;
}
.clubPhotoMark{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  min-height:92px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:4px;
  padding:18px 30px 17px;
  background:
    radial-gradient(circle at 88% 15%,rgba(229,181,58,.12),transparent 34%),
    linear-gradient(135deg,#06142d,#0a2445);
  border-bottom:1px solid rgba(229,181,58,.28);
}
.clubPhotoMark:after{
  content:"";
  width:54px;
  height:1px;
  margin-top:6px;
  background:linear-gradient(90deg,#e6ba4d,rgba(230,186,77,0));
}
.clubPhotoMark span{
  color:#e8bd50;
  font-size:10px;
  font-weight:950;
  letter-spacing:.20em;
  line-height:1;
}
.clubPhotoMark strong{
  color:#fff;
  font-size:20px;
  font-weight:950;
  letter-spacing:.12em;
  line-height:1.05;
}
.clubHomeImage{
  position:relative;
  flex:1 1 auto;
  min-height:428px;
  overflow:hidden;
  background:#13233d;
}
.clubHomeImage:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,21,47,0) 58%,rgba(7,21,47,.42) 100%);
  pointer-events:none;
}
.clubHomeImage img{
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  inset:0;
  object-fit:cover;
}
.clubHomeCopy{
  position:relative;
  padding:clamp(34px,4.7vw,66px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  color:#fff;
  background:
    radial-gradient(circle at 92% 8%,rgba(221,171,47,.15),transparent 28%),
    linear-gradient(145deg,#07152f,#0a2447);
}
.clubHomeCopy:after{
  content:"";
  position:absolute;
  right:-66px;
  top:-66px;
  width:170px;
  height:170px;
  border:1px solid rgba(230,187,72,.28);
  border-radius:50%;
  pointer-events:none;
}
.clubHomeBadge{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 11px;
  border:1px solid rgba(239,201,102,.42);
  border-radius:999px;
  background:rgba(239,201,102,.09);
  color:#f2cf70;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.clubHome h2{
  max-width:12ch;
  margin:20px 0 12px;
  color:#fff;
  font-size:clamp(2.1rem,3.7vw,3.8rem);
  line-height:1.02;
  letter-spacing:-.05em;
}
.clubHome p{
  max-width:36rem;
  margin:0 0 22px;
  color:#cbd5e3;
  font-size:1.02rem;
  line-height:1.6;
}
.clubEventCard{
  width:100%;
  margin:2px 0 22px;
  overflow:hidden;
  border:1px solid rgba(239,201,102,.34);
  border-radius:18px;
  background:rgba(255,255,255,.055);
}
.clubEventRow{
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  align-items:center;
  gap:16px;
  min-height:64px;
  padding:14px 17px;
  border-top:1px solid rgba(255,255,255,.10);
}
.clubEventRow:first-child{border-top:0}
.clubEventRow>span{
  color:#edc75f;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
}
.clubEventRow strong{
  color:#fff;
  font-size:16px;
  font-weight:850;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.clubEventDate>div{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}
.clubEventDate strong{font-size:19px}
.clubEventDate small{
  color:#c7d2e1;
  font-size:13px;
  font-weight:750;
  white-space:nowrap;
}
.clubHomeButton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:50px;
  padding:11px 19px;
  border-radius:999px;
  background:linear-gradient(135deg,#f3cf69,#dfab32);
  color:#07152f!important;
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(217,166,46,.18);
  transition:transform .2s ease,box-shadow .2s ease;
}
.clubHomeButton:hover,.clubHomeButton:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 15px 32px rgba(217,166,46,.24);
  outline:none;
}
.clubHomeNote{
  margin-top:14px;
  color:#9eacc0;
  font-size:9px;
  font-weight:750;
  letter-spacing:.02em;
}
@media(max-width:850px){
  .clubHome{
    grid-template-columns:1fr;
    margin:20px auto 56px;
  }
  .clubHomePhoto{min-height:0}
  .clubHomeImage{min-height:330px}
  .clubHomeCopy{padding:32px}
  .clubHome h2{max-width:14ch}
}
@media(max-width:550px){
  #home{background:#e7edf4}
  .clubHome{
    width:calc(100% - 16px);
    margin:0 auto 20px;
    padding:0!important;
    border-radius:22px;
    box-shadow:0 18px 48px rgba(7,21,47,.13);
  }
  .clubHomePhoto{
    min-height:0;
  }
  .clubPhotoMark{
    min-height:62px;
    padding:10px 22px 9px;
    gap:3px;
  }
  .clubPhotoMark span{font-size:8px;letter-spacing:.18em}
  .clubPhotoMark strong{font-size:15px;letter-spacing:.105em}
  .clubPhotoMark:after{width:42px;margin-top:4px}
  .clubHomeImage{
    min-height:0;
    aspect-ratio:1.45/1;
    flex:none;
  }
  .clubHomeImage img{
    position:absolute;
    inset:0;
  }
  .clubHomeCopy{padding:18px 22px 13px}
  .clubHomeBadge{min-height:29px;font-size:8.5px}
  .clubHome h2{
    max-width:none;
    margin:14px 0 9px;
    font-size:1.95rem;
    line-height:1.04;
  }
  .clubHome p{
    margin-bottom:15px;
    font-size:.98rem;
    line-height:1.54;
  }
  .clubEventCard{
    margin-bottom:14px;
    border-radius:15px;
  }
  .clubEventRow{
    grid-template-columns:92px minmax(0,1fr);
    min-height:61px;
    gap:10px;
    padding:12px 13px;
  }
  .clubEventRow>span{font-size:8px}
  .clubEventRow strong{font-size:15px}
  .clubEventDate strong{font-size:17px}
  .clubEventDate>div{
    align-items:flex-start;
    flex-direction:column;
    gap:2px;
  }
  .clubEventDate small{font-size:12px}
  .clubHomeButton{
    width:100%;
    min-height:50px;
    font-size:12.5px;
  }
  .clubHomeNote{
    margin-top:8px;
    align-self:center;
    text-align:center;
    line-height:1.35;
  }
}
@media(prefers-reduced-motion:reduce){
  .clubHomeButton{transition:none}
}
