/*
 * single.css — generated by wordpress/tools/extract-css.mjs
 *
 * Lifted verbatim from the Astro components listed below, with :global()
 * wrappers unwrapped and dead rules dropped. DO NOT hand-edit: rerun the
 * extractor instead, or the theme and the Astro source drift apart.
 */

/* ==========================================================
   [slug].astro
   ========================================================== */

  .svc__grid {
    display: grid;
    gap: var(--s-7);
  }

  @media (min-width: 940px) {
    .svc__grid {
      grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
      gap: var(--s-9);
      align-items: start;
    }
  }

  .svc__intro {
    font-size: var(--t-lead);
    color: var(--c-ink-soft);
  }

  .svc__includes {
    display: grid;
    gap: var(--s-3);
    padding-left: 0;
    list-style: none;
  }

  .svc__includes li {
    position: relative;
    padding-left: var(--s-6);
  }

  .svc__includes li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 12px;
    height: 1.5px;
    background: var(--c-taupe-deeper);
  }

  /* ---- aside ---- */

  .svc__aside {
    padding: var(--s-6);
    background: var(--c-cream);
    position: sticky;
    top: calc(var(--s-9) + var(--s-4));
  }

  @media (max-width: 939px) {
    .svc__aside {
      position: static;
    }
  }

  .svc__asideTitle {
    margin-bottom: var(--s-5);
  }

  .svc__facts {
    margin: 0 0 var(--s-6);
    display: grid;
    gap: var(--s-1);
  }

  .svc__facts dt {
    font-family: var(--font-display);
    font-weight: var(--fw-medium);
    font-size: var(--t-micro);
    letter-spacing: var(--ls-label);
    text-transform: uppercase;
    color: var(--c-taupe-deeper);
  }

  .svc__facts dd {
    margin: 0 0 var(--s-4);
    font-size: var(--t-small);
    color: var(--c-ink);
  }

  .svc__asideNote {
    margin: var(--s-4) 0 0;
    font-size: var(--t-micro);
    color: var(--c-ink-muted);
    text-align: center;
  }

  .svc__asideNote a {
    color: var(--c-navy);
  }

  /* ---- process ---- */

  .svc__procHeading {
    max-width: 28ch;
    margin-bottom: var(--s-7);
  }

  .svc__proc {
    display: grid;
    gap: var(--s-6);
    list-style: none;
    margin: 0;
    padding: 0;
  }

  @media (min-width: 700px) {
    .svc__proc {
      grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
      gap: var(--s-5);
    }
  }

  .svc__procItem {
    padding-top: var(--s-4);
    border-top: 1px solid var(--c-taupe-deep);
  }

  .svc__procN {
    display: block;
    margin-bottom: var(--s-3);
    font-family: var(--font-display);
    font-weight: var(--fw-medium);
    font-size: var(--t-small);
    letter-spacing: var(--ls-label);
    color: var(--c-taupe-deeper);
  }

  .svc__procTitle {
    margin-bottom: var(--s-3);
  }

  .svc__procItem p {
    margin: 0;
    font-size: var(--t-small);
    color: var(--c-ink-muted);
    text-wrap: pretty;
  }

  @media (min-width: 900px) {
  }

  /* ---- other services ---- */

  .svc__otherHeading {
    margin-bottom: var(--s-6);
  }

  .svc__other {
    display: grid;
    gap: var(--s-5);
    list-style: none;
    margin: 0;
    padding: 0;
  }

  @media (min-width: 760px) {
    .svc__other {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  .svc__other a {
    display: flex;
    flex-direction: column;
    gap: var(--s-3);
    height: 100%;
    padding: var(--s-5);
    background: var(--c-cream);
    text-decoration: none;
    transition: background-color var(--dur-base) var(--ease-out);
  }

  .svc__other a:hover {
    background: var(--c-cream-deep);
  }

  .svc__other p {
    flex: 1;
    margin: 0;
    font-size: var(--t-small);
    color: var(--c-ink-muted);
  }

/* ==========================================================
   [slug].astro
   ========================================================== */

  .city__grid {
    display: grid;
    gap: var(--s-7);
  }

  @media (min-width: 940px) {
    .city__grid {
      grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
      gap: var(--s-9);
      align-items: start;
    }
  }

  .city__intro {
    font-size: var(--t-lead);
    color: var(--c-ink-soft);
  }

  .city__aside {
    padding: var(--s-6);
    background: var(--c-cream);
    position: sticky;
    top: calc(var(--s-9) + var(--s-4));
  }

  @media (max-width: 939px) {
    .city__aside {
      position: static;
    }
  }

  .city__asideTitle {
    margin-bottom: var(--s-5);
  }

  .city__facts {
    margin: 0 0 var(--s-6);
  }

  .city__facts dt {
    font-family: var(--font-display);
    font-weight: var(--fw-medium);
    font-size: var(--t-micro);
    letter-spacing: var(--ls-label);
    text-transform: uppercase;
    color: var(--c-taupe-deeper);
  }

  .city__facts dd {
    margin: 0 0 var(--s-4);
    font-size: var(--t-small);
    color: var(--c-ink);
  }

  .city__asideNote {
    margin: var(--s-4) 0 0;
    font-size: var(--t-micro);
    text-align: center;
    color: var(--c-ink-muted);
  }

  .city__asideNote a {
    color: var(--c-navy);
    font-weight: var(--fw-semibold);
  }

  /* ---- projects ---- */

  .city__projHeading {
    max-width: 30ch;
    margin-bottom: var(--s-7);
  }

  .city__proj {
    display: grid;
    gap: var(--s-6);
    list-style: none;
    margin: 0;
    padding: 0;
  }

  @media (min-width: 820px) {
    .city__proj {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: var(--s-5);
    }
  }

  .city__projItem {
    padding-top: var(--s-4);
    border-top: 1px solid var(--c-taupe-deep);
  }

  .city__projItem h3 {
    margin-bottom: var(--s-3);
  }

  .city__projItem p {
    margin: 0;
    font-size: var(--t-small);
    color: var(--c-ink-muted);
    text-wrap: pretty;
  }
