/* MIR DMC — custom CSS on top of theme.json
   Enqueue site-wide (Appearance → Customize → Additional CSS, or a tiny mu-plugin).
   Covers what core blocks / theme.json cannot express. */

/* ---- Quickbrush accent line (the handwritten orange line above each section heading) ---- */
.mir-accent {
  font-family: 'Quickbrush', cursive !important;
  font-size: 38px;
  line-height: 1;
  color: #AC6525;
  margin: 0;
}
.mir-accent--on-dark { color: #C9833D; }
.mir-accent--hero {
  color: #C9833D;
  font-size: clamp(34px, 4.6vw, 64px);
  text-shadow: 0 2px 6px rgba(35,26,18,0.85), 0 0 24px rgba(35,26,18,0.5);
}
.mir-accent--cta { font-size: 44px; }

/* ---- Eyebrow labels (uppercase letterspaced) ---- */
.mir-eyebrow {
  font-size: 12px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: #8D7F56;
}
.mir-eyebrow--on-dark { color: #B1A58D; }
.mir-eyebrow--ruled { border-bottom: 1px solid #D4CBB4; padding-bottom: 12px; }

/* ---- Header nav links over hero ---- */
.mir-nav a {
  color: #F5F3F2;
  font-size: 13px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  transition: color 0.2s ease;
}
.mir-nav a:hover { color: #C9833D; }

/* ---- Outline button variant (is-style-outline refinement) ---- */
.wp-block-button.is-style-outline .wp-block-button__link {
  border: 1px solid #AC6525;
  color: #AC6525;
  background: transparent;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: #AC6525;
  color: #F5F3F2;
}
/* On dark bands */
.mir-on-dark .wp-block-button.is-style-outline .wp-block-button__link {
  border-color: rgba(245,243,242,0.7);
  color: #F5F3F2;
}
.mir-on-dark .wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color: #C9833D;
  color: #C9833D;
  background: transparent;
}

/* ---- Hero H1s: serif, tight leading, slight tracking on country pages ---- */
.mir-hero-title {
  font-family: 'IBM Plex Serif', serif;
  font-weight: 400;
  color: #F5F3F2;
  line-height: 1;
  letter-spacing: 0.04em;
  margin: 0;
}

/* ---- At-a-Glance grid cells (hairline mosaic) ---- */
.mir-glance { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1px; }
.mir-glance > * { background: #F5F3F2; padding: 38px 32px; box-shadow: 0 0 0 1px #D4CBB4; }
.mir-glance .mir-glance-num {
  font-family: 'IBM Plex Serif', serif;
  font-size: 38px; color: #D4CBB4; line-height: 1; margin-bottom: 18px;
}

/* ---- Definition rows (label left, text right, hairline rules) ---- */
.mir-rows > * {
  display: grid;
  grid-template-columns: minmax(120px, 150px) 1fr;
  gap: 24px;
  padding: 22px 0;
  border-bottom: 1px solid #D4CBB4;
}
.mir-rows > *:first-child { border-top: 1px solid #D4CBB4; }

/* ---- Footer link color on dark ---- */
.mir-footer a { color: #B1A58D; text-decoration: none; }
.mir-footer a:hover { color: #C9833D; }

/* ---- Gravity Forms skin (matches the mock forms) ---- */
.gform_wrapper.gravity-theme input[type=text],
.gform_wrapper.gravity-theme input[type=email],
.gform_wrapper.gravity-theme input[type=tel],
.gform_wrapper.gravity-theme textarea {
  background: #fff;
  border: 1px solid #D4CBB4;
  border-radius: 0;
  color: #3A342C;
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 16px;
  padding: 15px 16px;
}
.gform_wrapper.gravity-theme input:focus,
.gform_wrapper.gravity-theme textarea:focus { border-color: #AC6525; outline: none; }
.gform_wrapper.gravity-theme ::placeholder { color: #8D7F56; opacity: 1; }
.gform_wrapper.gravity-theme .gfield_label {
  font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase;
  color: #8D7F56; font-weight: 400;
}
.gform_wrapper.gravity-theme input[type=checkbox] { accent-color: #AC6525; width: 18px; height: 18px; }
.gform_wrapper.gravity-theme .gform_button {
  background: #AC6525; color: #F5F3F2; border: none; border-radius: 0;
  font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase;
  padding: 18px 42px; cursor: pointer;
}
.gform_wrapper.gravity-theme .gform_button:hover { background: #C9833D; }
