/* ==========================================================================
   Fairly Claims: Tokens und Reset (Vertrag für alle Sektionen, Stand feat/ia-v2 04.09.2026)
   Marke: nur die 7 Guide-Farben, Ableitungen sind Grautöne mit Grünstich. Kein Verlauf außer Symbol-Kugel.
   Webflow-sicher: keine Keyframes, Breakpoints nur 991 / 767 / 479.
   ========================================================================== */
:where(.home-services, .home-ways) {
  /* Marke (Brand-Guide S. 12) */
  --fc-black: #191b19;
  --fc-gray-dark: #393d3f;
  --fc-green-950: #0b271e;
  --fc-green-800: #1a513f;
  --fc-green-600: #2a7955;
  --fc-green-300: #5fffa7;
  --fc-white: #ffffff;

  /* Flächen und Linien (Ableitungen, Canvas 04.09.) */
  --fc-soft: #f6f7f6;        /* ruhige Zwischenfläche */
  --fc-band: #f4f5f3;        /* Dach-Band, 3 bis 4 % unter Weiß */
  --fc-hero: #eef0ef;        /* Hero-Grund hinter Bild */
  --fc-line: #e3e6e4;        /* Haarlinie */
  --fc-line-strong: #c9cdca;
  --fc-muted: #6b706d;       /* Kicker, Bildunterschriften */
  --fc-tint: #dcf2e6;        /* Tag-Hintergrund, Fokus-Ring */
  --fc-green-50: #f1f7f3;    /* getoente Sektionsflaeche */
  --fc-green-100: #e3efe8;   /* Panel im Tint, Tabellenzeile */
  --fc-line-green: rgba(26, 81, 63, 0.16);
  --fc-line-green-strong: rgba(26, 81, 63, 0.28);
  --fc-ink: var(--fc-black);
  --fc-copy: var(--fc-gray-dark);
  --fc-on-dark-soft: rgba(255, 255, 255, 0.78);
  --fc-on-dark-line: rgba(255, 255, 255, 0.16);

  /* Komponierte Gruende (Herkunft: main/v3, dort styles.css 347 und v3.css 1273) */
  --fc-flow:
    radial-gradient(circle at 14% 6%, rgba(95, 255, 167, 0.16), transparent 34%),
    radial-gradient(circle at 88% 20%, rgba(26, 81, 63, 0.09), transparent 34%),
    linear-gradient(145deg, #f6f7f6, #ffffff 56%, #eef3ef);
  --fc-dark-panel:
    radial-gradient(circle at 16% 14%, rgba(31, 104, 77, 0.42), transparent 30%),
    linear-gradient(118deg, #0b271e 0%, #1a513f 52%, #0b271e 100%);
  --fc-ring:
    conic-gradient(from 210deg,
      rgba(255, 255, 255, 0) 0deg, rgba(255, 255, 255, 0.28) 60deg,
      rgba(95, 255, 167, 0.45) 92deg, rgba(255, 255, 255, 0.06) 130deg,
      rgba(255, 255, 255, 0.18) 200deg, rgba(95, 255, 167, 0.16) 260deg,
      rgba(255, 255, 255, 0) 320deg);

  /* Schrift (entschieden 04.09.: Instrument Serif + Work Sans + DM Mono) */
  --fc-font: "Work Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --fc-font-display: "Teko", "Work Sans", system-ui, sans-serif; /* Sichtprobe Teko nur Startseite, 09.09.2026 */
  --fc-font-mono: "DM Mono", ui-monospace, "SF Mono", Menlo, monospace;

  /* Layout-Token (Container, Gosse, Header-Hoehe, Sektionsstaffel) kommen aus skala.css
     (07.09.). Hier gesetzt haetten sie die Grossbild-Stufe und die Mobile-Staffel von dort
     auf .home-services und .home-ways ueberschrieben. */

  /* Radien (Karten-Rezept 04.09.) */
  --fc-radius: 20px;         /* Karten */
  --fc-radius-band: 28px;    /* Dach-Band, grosse Panels */
  --fc-radius-media: 0;      /* Fotos kantig wie auf den Unterseiten (08.09.2026, docs/design-radien-2026-09-08.md) */
  --fc-radius-sm: 16px;      /* Bausteine, Platzhalter */
  --fc-radius-pill: 999px;   /* Buttons, Chips */

  /* Motion und Tiefe */
  --fc-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --fc-shadow-card: 0 1px 2px rgba(20, 30, 25, 0.04), 0 12px 32px -8px rgba(20, 30, 25, 0.10);
  --fc-shadow-card-hover: 0 20px 40px -10px rgba(20, 30, 25, 0.14);
  --fc-card-border: rgba(20, 30, 25, 0.06);
}


/* Lokale Fonts und v4-Bausteine; Live-Sektionen und Netzwerkkarte werden nicht überschrieben. */
:where(.home-services, .home-ways) .fc-link { min-height: 0; padding: 0; }
:where(.home-services, .home-ways) .fc-link { min-height: 0; padding: 0; }
@font-face { font-family: "Teko"; font-style: normal; font-weight: 300 700; font-display: swap; src: url("/assets/fonts/teko-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Instrument Serif"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/instrument-serif-400.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Instrument Serif"; font-style: italic; font-weight: 400; font-display: swap; src: url("/assets/fonts/instrument-serif-400i.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "DM Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/dm-mono-400.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "DM Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/dm-mono-500.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Work Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/work-sans-400.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Work Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/work-sans-500.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Work Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/work-sans-600.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Work Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/work-sans-700.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:where(.home-services, .home-ways) h2 { font-family: var(--fc-font-display); font-weight: 400; letter-spacing: -0.02em; line-height: 1.02; color: var(--fc-ink); text-wrap: balance; hyphens: manual; }
:where(.home-services, .home-ways) h2 { font-size: clamp(36px, 4.2vw, 60px); line-height: 1.06; }
:where(.home-services, .home-ways) h3 { font-family: var(--fc-font-display); font-size: 26px; font-weight: 400; line-height: 1.15; letter-spacing: -0.015em; color: var(--fc-ink); }
:where(.home-services, .home-ways).fc-container, :where(.home-services, .home-ways) .fc-container { width: 100%; max-width: calc(var(--fc-container) + (var(--fc-gutter) * 2)); margin-inline: auto; padding-inline: var(--fc-gutter); }
:where(.home-services, .home-ways).fc-container--wide, :where(.home-services, .home-ways) .fc-container--wide { max-width: calc(var(--fc-container-wide) + (var(--fc-gutter) * 2)); }
:where(.home-services, .home-ways).fc-lead, :where(.home-services, .home-ways) .fc-lead { max-width: 34em; color: var(--fc-copy); font-size: 19px; line-height: 1.58; }
:where(.home-services, .home-ways).fc-lead--wide, :where(.home-services, .home-ways) .fc-lead--wide { max-width: 60ch; }
:where(.home-services, .home-ways).fc-ph-text, :where(.home-services, .home-ways) .fc-ph-text { color: var(--fc-muted); }
:where(.home-services, .home-ways).sec, :where(.home-services, .home-ways) .sec { padding-block: var(--fc-section); background: var(--fc-white); }
:where(.home-services, .home-ways).sec--lg, :where(.home-services, .home-ways) .sec--lg { padding-block: var(--fc-section-lg); }
:where(.home-services, .home-ways).sec--sm, :where(.home-services, .home-ways) .sec--sm { padding-block: var(--fc-section-sm); }
:where(.home-services, .home-ways).sec--soft, :where(.home-services, .home-ways) .sec--soft { background: var(--fc-soft); }
:where(.home-services, .home-ways).sec--tint, :where(.home-services, .home-ways) .sec--tint { background: var(--fc-green-50); }
:where(.home-services, .home-ways).sec--flow, :where(.home-services, .home-ways) .sec--flow { background: var(--fc-flow); }
:where(.home-services, .home-ways).sec--dark, :where(.home-services, .home-ways) .sec--dark { background: var(--fc-green-950); color: var(--fc-white); }
:where(.home-services, .home-ways).sec--dark h1, :where(.home-services, .home-ways) .sec--dark h1, :where(.home-services, .home-ways).sec--dark h2, :where(.home-services, .home-ways) .sec--dark h2, :where(.home-services, .home-ways).sec--dark h3, :where(.home-services, .home-ways) .sec--dark h3 { color: var(--fc-white); }
:where(.home-services, .home-ways).sec--dark .fc-kicker, :where(.home-services, .home-ways) .sec--dark .fc-kicker { color: rgba(255,255,255,.55); }
:where(.home-services, .home-ways).sec--dark .fc-lead, :where(.home-services, .home-ways) .sec--dark .fc-lead, :where(.home-services, .home-ways).sec--dark .fc-copy, :where(.home-services, .home-ways) .sec--dark .fc-copy { color: var(--fc-on-dark-soft); }
:where(.home-services, .home-ways).sec--flush-top, :where(.home-services, .home-ways) .sec--flush-top { padding-top: 0; }
:where(.home-services, .home-ways).sec--flush-bottom, :where(.home-services, .home-ways) .sec--flush-bottom { padding-bottom: 0; }
:where(.home-services, .home-ways).fc-link, :where(.home-services, .home-ways) .fc-link { display: inline-flex; align-items: center; gap: 7px; color: var(--fc-ink); font-size: 16px; font-weight: 500; text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 6px; transition: text-decoration-color 180ms var(--fc-ease), color 180ms var(--fc-ease); }
:where(.home-services, .home-ways).fc-link:hover, :where(.home-services, .home-ways) .fc-link:hover { text-decoration-color: currentColor; color: var(--fc-green-800); }
:where(.home-services, .home-ways).fc-link--sm, :where(.home-services, .home-ways) .fc-link--sm { font-size: 15px; }
:where(.home-services, .home-ways).fc-actions, :where(.home-services, .home-ways) .fc-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
:where(.home-services, .home-ways).fc-actions--center, :where(.home-services, .home-ways) .fc-actions--center { justify-content: center; }
:where(.home-services, .home-ways).split, :where(.home-services, .home-ways) .split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: start; }
:where(.home-services, .home-ways).split--6-6, :where(.home-services, .home-ways) .split--6-6 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
:where(.home-services, .home-ways).split--4-8, :where(.home-services, .home-ways) .split--4-8 { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; }
:where(.home-services, .home-ways).split--7-5, :where(.home-services, .home-ways) .split--7-5 { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
:where(.home-services, .home-ways).split--9-11, :where(.home-services, .home-ways) .split--9-11 { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 96px; }
:where(.home-services, .home-ways).split--10-8, :where(.home-services, .home-ways) .split--10-8 { grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); gap: 96px; }
:where(.home-services, .home-ways).split > h2, :where(.home-services, .home-ways) .split > h2, :where(.home-services, .home-ways).split__head > h2, :where(.home-services, .home-ways) .split__head > h2 { margin-top: -2px; }
:where(.home-services, .home-ways).split__head .fc-lead, :where(.home-services, .home-ways) .split__head .fc-lead { margin-top: 24px; }
:where(.home-services, .home-ways).split__head .fc-actions, :where(.home-services, .home-ways) .split__head .fc-actions { margin-top: 48px; }
:where(.home-services, .home-ways).split__body > .fc-copy + .fc-actions, :where(.home-services, .home-ways) .split__body > .fc-copy + .fc-actions, :where(.home-services, .home-ways).split__body > .fc-lead + .fc-actions, :where(.home-services, .home-ways) .split__body > .fc-lead + .fc-actions { margin-top: 24px; }
:where(.home-services, .home-ways).rows, :where(.home-services, .home-ways) .rows { display: block; border-bottom: 1px solid var(--fc-line); }
:where(.home-services, .home-ways).rows__item, :where(.home-services, .home-ways) .rows__item { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 16px; padding: 12px 0; border-top: 1px solid var(--fc-line); font-size: 15px; line-height: 1.5; }
:where(.home-services, .home-ways).rows__label, :where(.home-services, .home-ways) .rows__label { color: var(--fc-ink); font-weight: 500; }
:where(.home-services, .home-ways).rows__text, :where(.home-services, .home-ways) .rows__text { color: var(--fc-copy); }
:where(.home-services, .home-ways).rows--spec .rows__item, :where(.home-services, .home-ways) .rows--spec .rows__item { padding: 10px 0; font-size: 14px; }
:where(.home-services, .home-ways).rows--spec .rows__label, :where(.home-services, .home-ways) .rows--spec .rows__label { padding-top: 3px; color: var(--fc-muted); font-family: var(--fc-font-mono); font-size: 11px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }
:where(.home-services, .home-ways).rows--spec .rows__text, :where(.home-services, .home-ways) .rows--spec .rows__text { color: var(--fc-ink); }
:where(.home-services, .home-ways).rows--stations .rows__item, :where(.home-services, .home-ways) .rows--stations .rows__item { display: block; padding: 20px 0; }
:where(.home-services, .home-ways).rows--stations .rows__label, :where(.home-services, .home-ways) .rows--stations .rows__label { display: block; font-size: 19px; font-weight: 500; }
:where(.home-services, .home-ways).rows--stations .rows__text, :where(.home-services, .home-ways) .rows--stations .rows__text { display: block; margin-top: 6px; font-size: 16px; }
:where(.home-services, .home-ways).rows--titled .rows__item, :where(.home-services, .home-ways) .rows--titled .rows__item { grid-template-columns: minmax(0, .4fr) minmax(0, 1fr); padding: 18px 4px; }
:where(.home-services, .home-ways).rows--titled .rows__label, :where(.home-services, .home-ways) .rows--titled .rows__label { font-family: var(--fc-font-display); font-size: 24px; font-weight: 400; line-height: 1.1; letter-spacing: -.01em; }
:where(.home-services, .home-ways).rows--titled .rows__text, :where(.home-services, .home-ways) .rows--titled .rows__text { padding-top: 2px; font-size: 15px; }
:where(.home-services, .home-ways).rows--wide .rows__item, :where(.home-services, .home-ways) .rows--wide .rows__item { grid-template-columns: 220px minmax(0, 1fr); }
:where(.home-services, .home-ways).rows--link .rows__item, :where(.home-services, .home-ways) .rows--link .rows__item { grid-template-columns: minmax(0, 1fr) auto; align-items: start; }
:where(.home-services, .home-ways).rows--plain .rows__item, :where(.home-services, .home-ways) .rows--plain .rows__item { display: block; }
:where(.home-services, .home-ways).card, :where(.home-services, .home-ways) .card { padding: 32px; border: 1px solid var(--fc-card-border); border-radius: var(--fc-radius); background: var(--fc-white); box-shadow: var(--fc-shadow-card); transition: border-color 160ms var(--fc-ease), background-color 160ms var(--fc-ease); }
:where(.home-services, .home-ways).card--soft, :where(.home-services, .home-ways) .card--soft { background: var(--fc-soft); border-color: transparent; box-shadow: none; }
:where(.home-services, .home-ways).card--flat, :where(.home-services, .home-ways) .card--flat { box-shadow: none; }
:where(.home-services, .home-ways).card--pad-lg, :where(.home-services, .home-ways) .card--pad-lg { padding: 40px; }
:where(.home-services, .home-ways).card--hover:hover, :where(.home-services, .home-ways) .card--hover:hover, :where(.home-services, .home-ways).card--hover:focus-within, :where(.home-services, .home-ways) .card--hover:focus-within { border-color: var(--fc-line-green-strong); background: var(--fc-green-50); }
:where(.home-services, .home-ways).card--soft.card--hover:hover, :where(.home-services, .home-ways) .card--soft.card--hover:hover, :where(.home-services, .home-ways).card--soft.card--hover:focus-within, :where(.home-services, .home-ways) .card--soft.card--hover:focus-within { border-color: var(--fc-line-green); }
:where(.home-services, .home-ways).card__title, :where(.home-services, .home-ways) .card__title { font-family: var(--fc-font-display); font-size: 36px; font-weight: 400; line-height: 1.05; letter-spacing: -.015em; }
:where(.home-services, .home-ways).card__title--sm, :where(.home-services, .home-ways) .card__title--sm { font-size: 28px; }
:where(.home-services, .home-ways).card__text, :where(.home-services, .home-ways) .card__text { margin: 10px 0 20px; color: var(--fc-copy); font-size: 15px; line-height: 1.5; }
:where(.home-services, .home-ways).card__foot, :where(.home-services, .home-ways) .card__foot { margin-top: 24px; }
:where(.home-services, .home-ways).card-grid, :where(.home-services, .home-ways) .card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
:where(.home-services, .home-ways).card-grid--3, :where(.home-services, .home-ways) .card-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
:where(.home-services, .home-ways).card-grid .card, :where(.home-services, .home-ways) .card-grid .card { display: flex; flex-direction: column; }
:where(.home-services, .home-ways).card-grid .card > .rows, :where(.home-services, .home-ways) .card-grid .card > .rows, :where(.home-services, .home-ways).card-grid .card > .card__foot, :where(.home-services, .home-ways) .card-grid .card > .card__foot { margin-top: auto; }
:where(.home-services, .home-ways).band, :where(.home-services, .home-ways) .band { border-radius: var(--fc-radius-band); background: var(--fc-band); padding: 64px 64px 96px; }
:where(.home-services, .home-ways).band--inline, :where(.home-services, .home-ways) .band--inline { padding: 64px; }
:where(.home-services, .home-ways).band--tint, :where(.home-services, .home-ways) .band--tint { background: var(--fc-green-50); }
:where(.home-services, .home-ways).band__pull, :where(.home-services, .home-ways) .band__pull { margin: -64px 48px 0; }
:where(.home-services, .home-ways).band__after, :where(.home-services, .home-ways) .band__after { margin-top: 32px; }
:where(.home-services, .home-ways).band--lg, :where(.home-services, .home-ways) .band--lg { padding: 72px 64px 110px; }
:where(.home-services, .home-ways).tiles, :where(.home-services, .home-ways) .tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
:where(.home-services, .home-ways).tile, :where(.home-services, .home-ways) .tile { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--fc-card-border); border-radius: var(--fc-radius); background: var(--fc-white); box-shadow: var(--fc-shadow-card); color: var(--fc-ink); transition: border-color 160ms var(--fc-ease), background-color 160ms var(--fc-ease); }
:where(.home-services, .home-ways).tile:hover, :where(.home-services, .home-ways) .tile:hover, :where(.home-services, .home-ways).tile:focus-visible, :where(.home-services, .home-ways) .tile:focus-visible { border-color: var(--fc-line-green-strong); background: var(--fc-green-50); }
:where(.home-services, .home-ways).tile__media img, :where(.home-services, .home-ways) .tile__media img { transition: transform 400ms var(--fc-ease); }
:where(.home-services, .home-ways).tile:hover .tile__media img, :where(.home-services, .home-ways) .tile:hover .tile__media img { transform: scale(1.03); }
:where(.home-services, .home-ways).tile__media, :where(.home-services, .home-ways) .tile__media { height: 220px; }
:where(.home-services, .home-ways).tile__media img, :where(.home-services, .home-ways) .tile__media img, :where(.home-services, .home-ways).tile__media .ph, :where(.home-services, .home-ways) .tile__media .ph { width: 100%; height: 100%; border: 0; border-radius: 0; object-fit: cover; }
:where(.home-services, .home-ways).tile__body, :where(.home-services, .home-ways) .tile__body { display: flex; flex: 1; flex-direction: column; padding: 28px; }
:where(.home-services, .home-ways).tile__title, :where(.home-services, .home-ways) .tile__title { font-family: var(--fc-font-display); font-size: 30px; font-weight: 400; line-height: 1.05; letter-spacing: -.015em; }
:where(.home-services, .home-ways).tile__text, :where(.home-services, .home-ways) .tile__text { margin-top: 10px; color: var(--fc-copy); font-size: 15px; line-height: 1.5; }
:where(.home-services, .home-ways).tile__foot, :where(.home-services, .home-ways) .tile__foot { margin-top: auto; padding-top: 24px; }
:where(.home-services, .home-ways).ph, :where(.home-services, .home-ways) .ph { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 120px; padding: 16px; border: 1px dashed var(--fc-line-strong); border-radius: var(--fc-radius-sm); background: repeating-linear-gradient(135deg, #eef0ef 0 12px, #e6e9e7 12px 24px); color: var(--fc-copy); font-family: var(--fc-font-mono); font-size: 12px; letter-spacing: .04em; line-height: 1.5; text-align: center; text-transform: uppercase; }
:where(.home-services, .home-ways).ph--4x5, :where(.home-services, .home-ways) .ph--4x5 { aspect-ratio: 4 / 5; min-height: 0; }
:where(.home-services, .home-ways).ph--4x3, :where(.home-services, .home-ways) .ph--4x3 { aspect-ratio: 4 / 3; min-height: 0; }
:where(.home-services, .home-ways).ph--16x9, :where(.home-services, .home-ways) .ph--16x9 { aspect-ratio: 16 / 9; min-height: 0; }
:where(.home-services, .home-ways).ph--21x9, :where(.home-services, .home-ways) .ph--21x9 { aspect-ratio: 21 / 9; min-height: 0; }
:where(.home-services, .home-ways).ph--1x1, :where(.home-services, .home-ways) .ph--1x1 { aspect-ratio: 1; min-height: 0; }
:where(.home-services, .home-ways).ph--circle, :where(.home-services, .home-ways) .ph--circle { width: 96px; height: 96px; min-height: 0; padding: 0; border-radius: 50%; font-size: 9px; }
:where(.home-services, .home-ways).ph--fill, :where(.home-services, .home-ways) .ph--fill { position: absolute; inset: 0; border: 0; border-radius: 0; align-items: flex-end; justify-content: flex-end; padding: 24px 36px; }
:where(.home-services, .home-ways).ph--dark, :where(.home-services, .home-ways) .ph--dark { background: repeating-linear-gradient(135deg, #123a2c 0 12px, #0f3126 12px 24px); border-color: rgba(255,255,255,.35); color: rgba(255,255,255,.75); }
:where(.home-services, .home-ways).ph--logo, :where(.home-services, .home-ways) .ph--logo { height: 84px; min-height: 0; font-size: 10px; }
.js :where(.home-services, .home-ways)[data-reveal], .js :where(.home-services, .home-ways) [data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity 600ms var(--fc-ease), transform 600ms var(--fc-ease); transition-delay: calc(var(--delay, 0) * 120ms); }
.js :where(.home-services, .home-ways)[data-reveal].is-visible, .js :where(.home-services, .home-ways) [data-reveal].is-visible { opacity: 1; transform: none; }
@media (hover: none) {
  :where(.home-services, .home-ways).card--hover:hover, :where(.home-services, .home-ways) .card--hover:hover, :where(.home-services, .home-ways).tile:hover, :where(.home-services, .home-ways) .tile:hover { border-color: var(--fc-card-border); background: var(--fc-white); }
  :where(.home-services, .home-ways).tile:hover .tile__media img, :where(.home-services, .home-ways) .tile:hover .tile__media img { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .js :where(.home-services, .home-ways)[data-reveal], .js :where(.home-services, .home-ways) [data-reveal] { opacity: 1; transform: none; transition: none; }
}
@media (max-width: 991px) {
  :where(.home-services, .home-ways).split, :where(.home-services, .home-ways) .split, :where(.home-services, .home-ways).split--6-6, :where(.home-services, .home-ways) .split--6-6, :where(.home-services, .home-ways).split--4-8, :where(.home-services, .home-ways) .split--4-8, :where(.home-services, .home-ways).split--7-5, :where(.home-services, .home-ways) .split--7-5, :where(.home-services, .home-ways).split--9-11, :where(.home-services, .home-ways) .split--9-11, :where(.home-services, .home-ways).split--10-8, :where(.home-services, .home-ways) .split--10-8 { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  :where(.home-services, .home-ways).split > h2, :where(.home-services, .home-ways) .split > h2, :where(.home-services, .home-ways).split__head > h2, :where(.home-services, .home-ways) .split__head > h2 { margin-top: 0; }
  :where(.home-services, .home-ways).band, :where(.home-services, .home-ways) .band, :where(.home-services, .home-ways).band--lg, :where(.home-services, .home-ways) .band--lg { padding: 48px 36px 80px; }
  :where(.home-services, .home-ways).band--inline, :where(.home-services, .home-ways) .band--inline { padding: 48px 36px; }
  :where(.home-services, .home-ways).band__pull, :where(.home-services, .home-ways) .band__pull { margin: -48px 20px 0; }
  :where(.home-services, .home-ways).card-grid, :where(.home-services, .home-ways) .card-grid, :where(.home-services, .home-ways).card-grid--3, :where(.home-services, .home-ways) .card-grid--3, :where(.home-services, .home-ways).tiles, :where(.home-services, .home-ways) .tiles { grid-template-columns: minmax(0, 1fr); }
  :where(.home-services, .home-ways).card-grid--3, :where(.home-services, .home-ways) .card-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  :where(.home-services, .home-ways) h2 { font-size: clamp(28px, 7vw, 34px); }
  :where(.home-services, .home-ways).rows__item, :where(.home-services, .home-ways) .rows__item, :where(.home-services, .home-ways).rows--wide .rows__item, :where(.home-services, .home-ways) .rows--wide .rows__item, :where(.home-services, .home-ways).rows--titled .rows__item, :where(.home-services, .home-ways) .rows--titled .rows__item { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  :where(.home-services, .home-ways).rows--titled .rows__label, :where(.home-services, .home-ways) .rows--titled .rows__label { font-size: 22px; }
  :where(.home-services, .home-ways).card-grid--3, :where(.home-services, .home-ways) .card-grid--3, :where(.home-services, .home-ways).tiles, :where(.home-services, .home-ways) .tiles { grid-template-columns: minmax(0, 1fr); }
  :where(.home-services, .home-ways).band, :where(.home-services, .home-ways) .band, :where(.home-services, .home-ways).band--lg, :where(.home-services, .home-ways) .band--lg, :where(.home-services, .home-ways).band--inline, :where(.home-services, .home-ways) .band--inline { padding: 36px 24px 64px; border-radius: var(--fc-radius); }
  :where(.home-services, .home-ways).band--inline, :where(.home-services, .home-ways) .band--inline { padding-bottom: 36px; }
  :where(.home-services, .home-ways).band__pull, :where(.home-services, .home-ways) .band__pull { margin: -40px 8px 0; }
  :where(.home-services, .home-ways).card, :where(.home-services, .home-ways) .card, :where(.home-services, .home-ways).card--pad-lg, :where(.home-services, .home-ways) .card--pad-lg { padding: 24px; }
  :where(.home-services, .home-ways).card__title, :where(.home-services, .home-ways) .card__title { font-size: 28px; }
  :where(.home-services, .home-ways).fc-actions, :where(.home-services, .home-ways) .fc-actions { gap: 12px 20px; }
  .js :where(.home-services, .home-ways)[data-reveal], .js :where(.home-services, .home-ways) [data-reveal] { transform: translateY(16px); transition-delay: 0s; }
}
@media (max-width: 479px) {
  :where(.home-services, .home-ways).band__pull, :where(.home-services, .home-ways) .band__pull { margin: -32px 0 0; }
}
