/*
Theme Name:   Bridge Child — Waveland
Theme URI:    https://www.wavelandprop.com/
Description:  Child theme for Waveland Property Group. Holds the property post type, the portfolio and contact templates, and the map component. Custom work belongs here — never in the Bridge parent, which is overwritten on update.
Author:       Hires Creative
Template:     bridge
Version:      1.0.0
Text Domain:  bridge-child
*/

/* ---------------------------------------------------------------------------
   Brand tokens, sampled from the logo. Everything downstream reads these.
   --------------------------------------------------------------------------- */
:root {
  --wpg-gold: #8B7539;
  --wpg-gold-lift: #B8963F;   /* small text and pills need the lift to pass contrast */
  --wpg-sky: #A3C4D9;
  --wpg-ink: #1A1A1A;
  --wpg-dark: #232323;
  --wpg-text: #DCDCDC;
}

/* ---------------------------------------------------------------------------
   Footer offices.
   This replaces the hand-pasted Custom HTML widget. Because this stylesheet is
   enqueued AFTER bridge-style-dynamic-responsive, Bridge's #818181 footer rule
   no longer wins and none of this needs !important.
   --------------------------------------------------------------------------- */
.wpg-foot {
  max-width: 60rem;
  margin: 0 auto;
  padding: 1rem 15px 0;
  text-align: center;
}

.wpg-foot__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: center;
}

.wpg-foot__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .9rem;
}

.wpg-foot__logo {
  display: block;
  width: 100%;
  max-width: 260px;
  height: auto;
  margin: 0 auto;
}

.wpg-foot__city {
  font-size: .72rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--wpg-gold-lift);
  margin: 0 0 .7rem;
}

.wpg-foot__addr {
  margin: 0;
  font-size: 1rem;
  line-height: 1.75;
  color: var(--wpg-text);
}

.wpg-foot__addr a { color: inherit; text-decoration: none; }
.wpg-foot__addr a:hover,
.wpg-foot__addr a:focus-visible { color: var(--wpg-sky); text-decoration: underline; }
.wpg-foot__addr a:focus-visible { outline: 2px solid var(--wpg-sky); outline-offset: 3px; }

.wpg-foot__pill {
  display: inline-block;
  margin-top: .9rem;
  padding: .42rem 1rem;
  border-radius: 100px;
  background: var(--wpg-gold-lift);
  color: var(--wpg-ink);
  font-size: .68rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1.4;
}

/* Divider between offices: horizontal when stacked, vertical when side by side. */
.wpg-foot__office:not(:last-child) {
  border-bottom: 1px solid rgba(184, 150, 63, .35);
  padding-bottom: 2rem;
}

@media (min-width: 768px) {
  .wpg-foot__grid { grid-template-columns: 1fr auto 1fr; gap: 2.5rem; }

  /* Source order is mobile order (brand first). Desktop places columns explicitly. */
  .wpg-foot__office--1 { grid-column: 1; grid-row: 1; }
  .wpg-foot__brand     { grid-column: 2; grid-row: 1; }
  .wpg-foot__office--2 { grid-column: 3; grid-row: 1; }

  .wpg-foot__office:not(:last-child) { border-bottom: 0; padding-bottom: 0; }
}

/* ---------------------------------------------------------------------------
   Wider content grid. Bridge ships a 1100px grid that reads narrow and dated on
   modern displays. Widen to 1350 from the desktop breakpoint up, staying fluid
   with 40px gutters below 1430 so nothing overflows. Bridge's own responsive
   handling stands untouched below 1000px.
   --------------------------------------------------------------------------- */
@media (min-width: 1000px) {
  .container_inner {
    width: 1350px;
    max-width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
  }
}

/* ---------------------------------------------------------------------------
   Social (LinkedIn) — top bar icon + footer badge, plus the footer heritage
   line. The base .wpg-social carries the inline glyph sizing.
   --------------------------------------------------------------------------- */
.wpg-social { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.wpg-social__glyph { width: 1em; height: 1em; display: block; }

/* Top bar: sits after the phone text. The phone text lives in a Text widget
   coloured white, but the icon mounts one level up (in .inner), so inheriting
   would pick up Bridge's grey link colour instead. Set it light explicitly, at a
   specificity that beats Bridge's global `a { color:#303030 }`. */
.wpg-social--topbar {
  margin-left: 16px;
  font-size: 16px;
  vertical-align: middle;
  transition: color .15s ease;
}
.header_top .right a.wpg-social--topbar { color: rgba(255, 255, 255, .85); }
.header_top .right a.wpg-social--topbar:hover,
.header_top .right a.wpg-social--topbar:focus-visible { color: #fff; }
.header_top .right a.wpg-social--topbar:focus-visible { outline: 2px solid rgba(255, 255, 255, .8); outline-offset: 2px; }

/* Footer: a bordered gold badge under the logo. */
.wpg-foot__since {
  margin: 0;
  font-size: .82rem;
  letter-spacing: .03em;
  font-style: italic;
  color: var(--wpg-gold-lift);
}
.wpg-foot__social {
  width: 38px;
  height: 38px;
  font-size: 18px;
  border: 1px solid rgba(184, 150, 63, .5);
  border-radius: 50%;
  color: var(--wpg-text);
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.wpg-foot__social:hover {
  background: var(--wpg-gold-lift);
  color: var(--wpg-ink);
  border-color: var(--wpg-gold-lift);
}
.wpg-foot__social:focus-visible { outline: 2px solid var(--wpg-sky); outline-offset: 3px; }

/* Legal links in the footer copyright bar. Specificity is raised past Bridge's
   footer margin reset so the separator spacing actually applies. */
.wpg-legal-links { display: inline; }
.footer_bottom .wpg-legal-links a {
  color: inherit;
  opacity: .8;
  text-decoration: none;
  transition: opacity .15s ease, color .15s ease;
}
.footer_bottom .wpg-legal-links a:hover,
.footer_bottom .wpg-legal-links a:focus-visible { opacity: 1; color: var(--wpg-gold-lift); }
.footer_bottom .wpg-legal-links .wpg-legal-sep { margin: 0 .3rem; opacity: .45; }
