/* =====================================================
   BetCombinator — Contact Page v1.0.0
   ===================================================== */
.bc-contact-shell{
  --bc-pink:#ff2ea6;
  --bc-purple:#8f62ff;
  --bc-bg:#070817;
  --bc-card:#121632;
  --bc-card2:#202452;
  --bc-text:#ffffff;
  --bc-muted:rgba(255,255,255,.76);
  --bc-border:rgba(255,255,255,.12);
  max-width:1180px;
  margin:0 auto;
  padding:32px 16px 54px;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--bc-text);
}
.bc-contact-hero{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  padding:42px 34px;
  margin-bottom:22px;
  background:
    radial-gradient(circle at 14% 0%,rgba(255,46,166,.32),transparent 34%),
    radial-gradient(circle at 98% 0%,rgba(143,98,255,.34),transparent 36%),
    linear-gradient(180deg,#262a63 0%,#090d24 100%);
  border:1px solid var(--bc-border);
  box-shadow:0 32px 80px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06);
}
.bc-contact-kicker{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  color:#ffd7ef;
  background:rgba(255,46,166,.16);
  border:1px solid rgba(255,46,166,.42);
  font-weight:950;
  font-size:12px;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.bc-contact-hero h1{
  margin:16px 0 10px;
  color:#fff;
  font-size:clamp(34px,5vw,58px);
  line-height:.98;
  letter-spacing:-.06em;
  font-weight:950;
}
.bc-contact-hero p{
  max-width:760px;
  margin:0;
  color:var(--bc-muted);
  font-size:17px;
  line-height:1.6;
}
.bc-contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
  gap:22px;
  align-items:start;
}
.bc-contact-card{
  border-radius:28px;
  color:#fff;
  background:
    radial-gradient(circle at 100% 0%,rgba(143,98,255,.16),transparent 32%),
    linear-gradient(180deg,rgba(36,40,88,.96) 0%,rgba(10,13,36,.98) 100%);
  border:1px solid var(--bc-border);
  box-shadow:0 24px 64px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05);
}
.bc-contact-form-card{
  padding:26px;
}
.bc-contact-form{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.bc-contact-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.bc-contact-form label{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.bc-contact-form label > span,
.bc-contact-check span{
  color:rgba(255,255,255,.86);
  font-size:14px;
  font-weight:850;
}
.bc-contact-form input[type="text"],
.bc-contact-form input[type="email"],
.bc-contact-form select,
.bc-contact-form textarea{
  width:100%;
  box-sizing:border-box;
  min-height:48px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:13px 14px;
  font-size:15px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.bc-contact-form textarea{
  resize:vertical;
  min-height:190px;
  line-height:1.5;
}
.bc-contact-form input::placeholder,
.bc-contact-form textarea::placeholder{
  color:rgba(255,255,255,.44);
}
.bc-contact-form select option{
  color:#111;
  background:#fff;
}
.bc-contact-form input:focus,
.bc-contact-form select:focus,
.bc-contact-form textarea:focus{
  border-color:rgba(255,46,166,.72);
  background:rgba(255,255,255,.11);
  box-shadow:0 0 0 4px rgba(255,46,166,.12);
}
.bc-contact-check{
  flex-direction:row !important;
  align-items:flex-start;
  gap:12px !important;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
}
.bc-contact-check input{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:var(--bc-pink);
  flex:0 0 auto;
}
.bc-contact-check a,
.bc-contact-legal-note a{
  color:#ffc4ec;
  text-decoration:underline;
  text-underline-offset:3px;
}
.bc-contact-submit{
  appearance:none;
  border:1px solid rgba(255,255,255,.18);
  min-height:54px;
  border-radius:999px;
  color:#fff;
  cursor:pointer;
  font-weight:950;
  font-size:16px;
  background:linear-gradient(135deg,var(--bc-pink),var(--bc-purple));
  box-shadow:0 18px 42px rgba(255,46,166,.25), inset 0 1px 0 rgba(255,255,255,.10);
  transition:transform .16s ease, filter .16s ease, box-shadow .16s ease;
}
.bc-contact-submit:hover{
  transform:translateY(-1px);
  filter:brightness(1.05);
  box-shadow:0 24px 52px rgba(255,46,166,.32), 0 0 0 4px rgba(255,46,166,.10);
}
.bc-contact-legal-note{
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:12px;
  line-height:1.45;
}
.bc-contact-hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.bc-contact-notice{
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:18px;
  font-weight:850;
  line-height:1.45;
}
.bc-contact-notice-success{
  color:#d8ffe8;
  background:rgba(25,135,84,.18);
  border:1px solid rgba(25,135,84,.42);
}
.bc-contact-notice-error{
  color:#ffe0e8;
  background:rgba(220,53,69,.18);
  border:1px solid rgba(220,53,69,.42);
}
.bc-contact-side-card{
  position:sticky;
  top:18px;
  padding:26px;
}
.bc-contact-side-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--bc-pink),var(--bc-purple));
  color:#fff;
  font-weight:950;
  box-shadow:0 18px 38px rgba(255,46,166,.24);
}
.bc-contact-side-card h2{
  margin:18px 0 10px;
  color:#fff;
  font-size:26px;
  line-height:1.1;
  letter-spacing:-.03em;
  font-weight:950;
}
.bc-contact-side-card p{
  margin:0 0 18px;
  color:var(--bc-muted);
  line-height:1.55;
}
.bc-contact-side-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:18px 0 22px;
}
.bc-contact-side-list div{
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
}
.bc-contact-side-list strong{
  display:block;
  color:#fff;
  font-size:14px;
  margin-bottom:4px;
}
.bc-contact-side-list span{
  display:block;
  color:rgba(255,255,255,.68);
  font-size:13px;
  line-height:1.35;
}
.bc-contact-side-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  border-radius:999px;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:900;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
}
.bc-contact-side-link:hover{
  background:rgba(255,255,255,.12);
}
@media(max-width:900px){
  .bc-contact-layout{
    grid-template-columns:1fr;
  }
  .bc-contact-side-card{
    position:relative;
    top:auto;
  }
}
@media(max-width:680px){
  .bc-contact-shell{
    padding:18px 10px 38px;
  }
  .bc-contact-hero{
    border-radius:24px;
    padding:30px 20px;
  }
  .bc-contact-form-card,
  .bc-contact-side-card{
    border-radius:24px;
    padding:20px;
  }
  .bc-contact-grid{
    grid-template-columns:1fr;
  }
  .bc-contact-form textarea{
    min-height:170px;
  }
}
