/* Contact strip only. Existing navigation, page layout and headings are retained. */
.topbar.contact-strip {
  background:rgba(15,5,20,.18);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(236,154,185,.28);
}
.topbar.contact-strip.topbar--peach { background:rgba(255,244,238,.25); }
.contact-strip .topbar__inner {
  display:grid;
  grid-template-columns:220px minmax(180px,.8fr) minmax(330px,1.35fr) minmax(290px,1.15fr);
  column-gap:28px;
  min-height:var(--contact-strip-height);
  color:#fff7f4;
  text-shadow:0 1px 4px rgba(0,0,0,.2);
}
.contact-strip.topbar--peach .topbar__inner { color:#351333; text-shadow:none; }
.contact-strip .contact-brand { position:relative; width:210px; height:80px; padding:0; }
.contact-strip .contact-brand .contact-logo { width:210px; height:76px; object-fit:contain; padding:0; }
.contact-strip .contact-brand .contact-logo--dark { display:none; }
.contact-strip.topbar--peach .contact-brand .contact-logo--light { display:none; }
.contact-strip.topbar--peach .contact-brand .contact-logo--dark { display:block; }
.contact-strip .contact-detail {
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
  margin:0;
  line-height:1.35;
  padding:0;
  text-align:left;
}
.contact-strip .contact-detail--email,
.contact-strip .contact-detail--hours { border-left:1px solid rgba(229,158,140,.5); padding-left:28px; }
.contact-strip .contact-icon { width:28px; height:28px; flex:none; color:#ef4297; margin:0; }
.contact-strip .contact-icon svg { display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.contact-strip .contact-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
.contact-strip .contact-label { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.contact-strip .contact-value { font-size:18px; font-weight:600; letter-spacing:0; }
.contact-strip .contact-detail--phone .contact-value { font-size:20px; }
.contact-strip .contact-detail--hours .contact-value { font-size:15px; font-weight:500; line-height:1.4; }
.contact-strip .contact-detail:focus-visible { outline:2px solid #ef4297; outline-offset:6px; border-radius:2px; }
@media(max-width:1250px) and (min-width:901px) {
  .contact-strip .topbar__inner { grid-template-columns:190px 174px minmax(290px,1fr) minmax(270px,1fr); column-gap:16px; }
  .contact-strip .contact-brand,.contact-strip .contact-brand .contact-logo { width:180px; }
  .contact-strip .contact-detail { gap:10px; }
  .contact-strip .contact-detail--email,.contact-strip .contact-detail--hours { padding-left:16px; }
  .contact-strip .contact-value { font-size:16px; }
  .contact-strip .contact-detail--phone .contact-value { font-size:18px; }
  .contact-strip .contact-detail--hours .contact-value { font-size:13px; }
  .contact-strip .contact-icon { width:25px; height:25px; }
}
@media(max-width:1050px) and (min-width:901px) {
  .contact-strip .topbar__inner { grid-template-columns:155px 160px minmax(260px,1fr) minmax(224px,1fr); column-gap:12px; }
  .contact-strip .contact-brand,.contact-strip .contact-brand .contact-logo { width:150px; }
  .contact-strip .contact-detail--email,.contact-strip .contact-detail--hours { padding-left:12px; }
  .contact-strip .contact-value { font-size:14px; }
  .contact-strip .contact-detail--hours .contact-value { font-size:12px; }
}
@media(max-width:900px) {
  .contact-strip .topbar__inner { grid-template-columns:180px minmax(0,1fr); column-gap:18px; row-gap:4px; padding:6px 0; }
  .contact-strip .contact-brand { grid-row:1/3; width:170px; height:76px; }
  .contact-strip .contact-brand .contact-logo { width:170px; height:72px; }
  .contact-strip .contact-detail { gap:10px; }
  .contact-strip .contact-detail--email { border:0; padding-left:0; }
  .contact-strip .contact-detail--hours { grid-column:1/-1; border-left:0; border-top:1px solid rgba(229,158,140,.3); padding:4px 0 0; justify-content:center; }
  .contact-strip .contact-detail--hours .contact-copy { flex-direction:row; align-items:center; gap:12px; }
  .contact-strip .contact-detail--hours .contact-value { font-size:11px; }
  .contact-strip .contact-detail--hours .contact-icon { width:22px; height:22px; }
  .contact-strip .contact-detail--phone .contact-value { font-size:17px; }
  .contact-strip .contact-value { font-size:14px; }
  .contact-strip .contact-label { font-size:9px; }
  .contact-strip .contact-copy { gap:1px; }
  .contact-strip .contact-icon { width:23px; height:23px; }
}
@media(max-width:480px) {
  .contact-strip .topbar__inner { grid-template-columns:112px minmax(0,1fr); column-gap:12px; }
  .contact-strip .contact-brand,.contact-strip .contact-brand .contact-logo { width:112px; height:64px; }
  .contact-strip .contact-detail { gap:6px; }
  .contact-strip .contact-icon { width:19px; height:19px; }
  .contact-strip .contact-value { font-size:12px; overflow-wrap:anywhere; }
  .contact-strip .contact-detail--phone .contact-value { font-size:16px; }
  .contact-strip .contact-detail--hours .contact-value { font-size:10px; }
  .contact-strip .contact-detail--hours .contact-copy { gap:6px; }
  .contact-strip .contact-detail--hours .contact-label { font-size:8px; }
}
