:root{
  --ovc-navy:#0A0F29;
  --ovc-deep:#0B2DA2;
  --ovc-blue:#0056B3;
  --ovc-bright:#007BFF;
  --ovc-cyan:#03B8FD;

  --ovc-white:#FFFFFF;
  --ovc-soft:#F6F9FF;
  --ovc-text:#334155;
  --ovc-muted:#64748B;
  --ovc-border:#E2E8F0;

  --ovc-red:#FD2A2E;
  --ovc-red-soft:#FEF2F2;
}


/* =========================
   GLOBAL
========================= */

.ovc-contact-page,
.ovc-contact-page *{
  box-sizing:border-box;
}

.ovc-contact-page{
  width:100%;
  overflow:hidden;
  color:var(--ovc-text);
  font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.ovc-contact-container{
  width:min(calc(100% - 64px),1120px);
  margin-inline:auto;
}

.ovc-contact-reading{
  width:min(calc(100% - 64px),800px);
  margin-inline:auto;
}


/* =========================
   TYPOGRAPHY
========================= */

.ovc-contact-page h1,
.ovc-contact-page h2,
.ovc-contact-page p{
  margin-top:0;
}

.ovc-contact-page h1{
  margin-bottom:0;
  color:var(--ovc-navy);
  font-size:clamp(42px,4.6vw,64px);
  line-height:1.08;
  letter-spacing:-1.4px;
  font-weight:700;
}

.ovc-contact-page h2{
  margin-bottom:14px;
  color:var(--ovc-navy);
  font-size:clamp(26px,3vw,34px);
  line-height:1.2;
  font-weight:700;
}

.ovc-contact-page p{
  color:var(--ovc-text);
  font-size:16px;
  line-height:1.7;
}

.ovc-contact-page a{
  text-decoration:none;
}


/* =========================
   TITLE SECTION
========================= */

.ovc-contact-title-section{
  padding:70px 0 58px;
  background:#fff;
}


/* =========================
   GENERAL SECTION
========================= */

.ovc-contact-section{
  padding:70px 0;
  background:#fff;
}

.ovc-contact-soft{
  background:var(--ovc-soft);
}


/* =========================
   CONTACT GRID
========================= */

.ovc-contact-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
}

.ovc-contact-info-block{
  min-width:0;
}

.ovc-contact-label{
  margin-bottom:7px;
  color:#94A3B8;
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:1px;
}

.ovc-contact-label-space{
  margin-top:18px;
}

.ovc-contact-phone{
  display:inline-block;
  color:var(--ovc-navy);
  font-size:22px;
  line-height:1.3;
  font-weight:700;
}

.ovc-contact-info-block p{
  margin-bottom:7px;
}

.ovc-contact-info-block p a{
  color:var(--ovc-text);
}

.ovc-contact-info-block p a:hover,
.ovc-contact-phone:hover{
  color:var(--ovc-blue);
}


/* =========================
   EMERGENCY NOTICE
========================= */

.ovc-contact-emergency{
  margin-bottom:20px;
  padding:16px 18px;
  border:1px solid #FECACA;
  border-left:4px solid var(--ovc-red);
  border-radius:8px;
  background:var(--ovc-red-soft);
}

.ovc-contact-emergency p{
  margin-bottom:4px;
  font-size:14px;
}

.ovc-contact-emergency p:last-child{
  margin-bottom:0;
}

.ovc-contact-emergency strong{
  color:var(--ovc-navy);
}

.ovc-contact-small{
  color:var(--ovc-muted) !important;
  font-size:13px !important;
}


/* =========================
   ACTION BUTTONS
========================= */

.ovc-contact-actions{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ovc-contact-btn{
  min-height:50px;
  padding:0 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius:10px;
  font-size:15px;
  font-weight:600;
  transition:.2s ease;
}

.ovc-contact-btn:hover{
  transform:translateY(-1px);
}

.ovc-contact-btn-primary{
  background:var(--ovc-deep);
  color:#fff;
}

.ovc-contact-btn-primary:hover{
  background:var(--ovc-navy);
  color:#fff;
}

.ovc-contact-btn-secondary{
  border:2px solid var(--ovc-navy);
  background:transparent;
  color:var(--ovc-navy);
}

.ovc-contact-btn-secondary:hover{
  border-color:var(--ovc-blue);
  color:var(--ovc-blue);
}


/* =========================
   REFERRAL NOTE
========================= */

.ovc-contact-note{
  margin-top:18px;
  padding:15px 18px;
  border:1px solid var(--ovc-border);
  border-left:4px solid var(--ovc-deep);
  border-radius:8px;
  background:var(--ovc-soft);
}

.ovc-contact-note p{
  margin:0;
  font-size:14px;
}


/* =========================
   TEXT LINK
========================= */

.ovc-contact-text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
  color:var(--ovc-blue);
  font-size:15px;
  font-weight:600;
}

.ovc-contact-text-link:hover{
  color:var(--ovc-navy);
}


/* =========================
   CAREERS
========================= */

.ovc-contact-careers{
  text-align:center;
}

.ovc-contact-careers p{
  margin-bottom:16px;
}


/* =========================
   ACCESSIBILITY
========================= */

.ovc-contact-page a:focus-visible{
  outline:3px solid rgba(0,123,255,.35);
  outline-offset:4px;
}


/* =========================
   TABLET
========================= */

@media(max-width:900px){

  .ovc-contact-container,
  .ovc-contact-reading{
    width:calc(100% - 48px);
  }

  .ovc-contact-two-col{
    gap:32px;
  }

}


/* =========================
   MOBILE
========================= */

@media(max-width:767px){

  .ovc-contact-container,
  .ovc-contact-reading{
    width:calc(100% - 36px);
  }

  .ovc-contact-title-section{
    padding:50px 0 42px;
  }

  .ovc-contact-section{
    padding:52px 0;
  }

  .ovc-contact-page h1{
    font-size:40px;
  }

  .ovc-contact-page h2{
    font-size:28px;
  }

  .ovc-contact-two-col{
    grid-template-columns:1fr;
    gap:36px;
  }

  .ovc-contact-actions{
    flex-direction:column;
  }

  .ovc-contact-btn{
    width:100%;
  }

  .ovc-contact-careers{
    text-align:left;
  }

}


/* =========================
   SMALL MOBILE
========================= */

@media(max-width:374px){

  .ovc-contact-container,
  .ovc-contact-reading{
    width:calc(100% - 32px);
  }

  .ovc-contact-page h1{
    font-size:35px;
  }

}