/* =========================================================
   TECH CONNECT — PREMIUM CONTACT PAGE V2
========================================================= */
.tc-contact-premium{
  --ct-red:#f21820;
  --ct-red-dark:#d3131a;
  --ct-black:#080808;
  --ct-ink:#141414;
  --ct-muted:#6d7177;
  --ct-soft:#f5f5f7;
  --ct-line:#e5e5e7;
  background:#fff;
  color:var(--ct-ink);
  font-family:Arial,Helvetica,sans-serif;
}
.tc-contact-premium *{box-sizing:border-box}
.tc-contact-shell{width:min(1240px,calc(100% - 48px));margin:0 auto}
.tc-contact-kicker{font-size:12px;font-weight:700;letter-spacing:.09em;color:rgba(255,255,255,.64)}
.tc-contact-kicker--dark{color:#74787e}
.tc-contact-kicker--red{color:var(--ct-red)}

/* HERO */
.tc-contact-premium__hero{
  background:
    radial-gradient(circle at 78% 45%,rgba(242,24,32,.18),transparent 24%),
    linear-gradient(135deg,#050505,#101010 72%,#060606);
  color:#fff;
}
.tc-contact-premium__hero-grid{
  min-height:530px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  align-items:center;
  gap:80px;
}
.tc-contact-premium__hero h1{
  max-width:800px;
  margin:15px 0 22px;
  font-size:clamp(62px,7vw,104px);
  line-height:.91;
  letter-spacing:-.066em;
}
.tc-contact-premium__hero-copy>p{
  max-width:620px;
  margin:0;
  color:#b4b8be;
  font-size:18px;
  line-height:1.67;
}
.tc-contact-premium__hero-meta{
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:45px;
}
.tc-contact-premium__hero-meta>div{
  padding:20px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.tc-contact-premium__hero-meta>div:last-child{border-bottom:0}
.tc-contact-premium__hero-meta span{
  display:block;
  margin-bottom:8px;
  color:#777c83;
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
}
.tc-contact-premium__hero-meta a,
.tc-contact-premium__hero-meta strong{
  color:#fff;
  text-decoration:none;
  font-size:18px;
  line-height:1.45;
}

/* MAIN */
.tc-contact-premium__main{padding:105px 0;background:#fff}
.tc-contact-premium__main-grid{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:78px;
  align-items:start;
}
.tc-contact-premium__sidebar-head h2,
.tc-contact-premium__form-head h2{
  margin:11px 0 13px;
  font-size:clamp(38px,4vw,56px);
  line-height:1;
  letter-spacing:-.05em;
}
.tc-contact-premium__sidebar-head p,
.tc-contact-premium__form-head p{
  margin:0;
  color:var(--ct-muted);
  line-height:1.62;
}
.tc-contact-premium__contact-cards{margin-top:34px}
.tc-contact-premium__contact-card{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:16px;
  padding:22px 0;
  border-bottom:1px solid var(--ct-line);
  color:#111;
  text-decoration:none;
  transition:.22s ease;
}
.tc-contact-premium__contact-card:hover{padding-left:5px}
.tc-contact-premium__icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#111;
  color:#fff;
  font-size:10px;
  font-weight:700;
}
.tc-contact-premium__contact-card small{
  display:block;
  color:#8b8f94;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  margin-bottom:6px;
}
.tc-contact-premium__contact-card strong{
  display:block;
  font-size:18px;
  letter-spacing:-.02em;
}
.tc-contact-premium__contact-card p{
  margin:7px 0 0;
  color:#7b7f84;
  font-size:13px;
  line-height:1.5;
}
.tc-contact-premium__hours-note{
  margin-top:34px;
  padding:22px;
  border-radius:18px;
  background:#111;
  color:#fff;
}
.tc-contact-premium__hours-note span{
  display:block;
  color:var(--ct-red);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.tc-contact-premium__hours-note p{
  margin:9px 0 0;
  color:#b2b5ba;
  font-size:13px;
  line-height:1.58;
}

/* FORM */
.tc-contact-premium__form-panel{
  padding:36px;
  border:1px solid var(--ct-line);
  border-radius:30px;
  background:#fff;
  box-shadow:0 25px 70px rgba(0,0,0,.07);
}
.tc-contact-premium__form{display:grid;gap:19px;margin-top:30px}
.tc-contact-premium__row{display:grid;gap:8px}
.tc-contact-premium__row--two{grid-template-columns:repeat(2,1fr);gap:14px}
.tc-contact-premium__form label span{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:700;
}
.tc-contact-premium__form input,
.tc-contact-premium__form select,
.tc-contact-premium__form textarea{
  width:100%;
  border:1px solid #d9dbde;
  border-radius:14px;
  background:#fafafa;
  color:#111;
  padding:15px 16px;
  font:inherit;
  transition:.2s ease;
}
.tc-contact-premium__form textarea{resize:vertical;min-height:180px}
.tc-contact-premium__form input:focus,
.tc-contact-premium__form select:focus,
.tc-contact-premium__form textarea:focus{
  outline:0;
  border-color:var(--ct-red);
  background:#fff;
  box-shadow:0 0 0 4px rgba(242,24,32,.07);
}
.tc-contact-hp{position:absolute!important;left:-9999px!important}
.tc-contact-premium__form-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:3px;
}
.tc-contact-premium__submit{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  gap:30px;
  padding:0 21px;
  border:0;
  border-radius:999px;
  background:var(--ct-red);
  color:#fff;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:.23s ease;
}
.tc-contact-premium__submit:hover{
  background:var(--ct-red-dark);
  transform:translateY(-2px);
}
.tc-contact-premium__submit span{font-size:18px}
.tc-contact-premium__form-footer p{
  max-width:330px;
  margin:0;
  color:#92969b;
  font-size:11px;
  line-height:1.5;
}
.tc-contact-premium__status{
  margin:24px 0 0;
  padding:14px 16px;
  border-radius:12px;
  font-size:14px;
}
.tc-contact-premium__status--success{background:#effaf3;color:#176d37}
.tc-contact-premium__status--error{background:#fff1f1;color:#9b1515}

/* MAP */
.tc-contact-premium__map-section{
  padding:100px 0;
  background:var(--ct-soft);
}
.tc-contact-premium__map-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:38px;
}
.tc-contact-premium__map-head h2{
  margin:10px 0 0;
  font-size:clamp(44px,5vw,72px);
  line-height:.98;
  letter-spacing:-.055em;
}
.tc-contact-premium__map-address{
  max-width:380px;
}
.tc-contact-premium__map-address>span{
  display:block;
  color:#85898f;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.tc-contact-premium__map-address strong{
  display:block;
  margin:9px 0 16px;
  font-size:18px;
  line-height:1.45;
}
.tc-contact-premium__map-address a{
  color:var(--ct-red);
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
.tc-contact-premium__map-frame{
  height:540px;
  overflow:hidden;
  border-radius:30px;
  border:1px solid var(--ct-line);
  background:#ddd;
  box-shadow:0 20px 60px rgba(0,0,0,.06);
}
.tc-contact-premium__map-frame iframe{display:block}

/* BOTTOM */
.tc-contact-premium__bottom{
  padding:42px 0;
  background:#111;
  color:#fff;
  border-top:4px solid var(--ct-red);
}
.tc-contact-premium__bottom-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.tc-contact-premium__bottom-grid>div{
  padding:10px 26px;
  border-right:1px solid rgba(255,255,255,.13);
}
.tc-contact-premium__bottom-grid>div:last-child{border-right:0}
.tc-contact-premium__bottom span{
  display:block;
  color:var(--ct-red);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
}
.tc-contact-premium__bottom strong{
  display:block;
  margin:8px 0 13px;
  font-size:18px;
  line-height:1.35;
}
.tc-contact-premium__bottom a{
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}

@media(max-width:980px){
  .tc-contact-premium__hero-grid,
  .tc-contact-premium__main-grid{
    grid-template-columns:1fr;
  }

  .tc-contact-premium__hero-grid{padding:55px 0}
  .tc-contact-premium__hero-meta{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.12);
    padding:20px 0 0;
  }

  .tc-contact-premium__bottom-grid{grid-template-columns:repeat(2,1fr)}
  .tc-contact-premium__bottom-grid>div{border-right:0;padding:16px}
}

@media(max-width:680px){
  .tc-contact-shell{width:min(100% - 28px,1240px)}
  .tc-contact-premium__hero h1{font-size:52px}
  .tc-contact-premium__hero-copy>p{font-size:17px}
  .tc-contact-premium__main,
  .tc-contact-premium__map-section{padding:72px 0}
  .tc-contact-premium__form-panel{padding:23px 18px;border-radius:22px}
  .tc-contact-premium__row--two{grid-template-columns:1fr}
  .tc-contact-premium__form-footer{display:block}
  .tc-contact-premium__form-footer p{margin-top:13px}
  .tc-contact-premium__map-head{display:block}
  .tc-contact-premium__map-address{margin-top:24px}
  .tc-contact-premium__map-frame{height:430px;border-radius:22px}
  .tc-contact-premium__bottom-grid{grid-template-columns:1fr}
  .tc-contact-premium__bottom-grid>div{
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .tc-contact-premium__bottom-grid>div:last-child{border-bottom:0}
}
