/* @fonts: IBM Plex Sans Condensed | IBM Plex Sans */
/* --- generated fonts --- */
@font-face{font-family:"IBM Plex Sans Condensed";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/plexsanscond-500-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:"IBM Plex Sans Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/plexsanscond-600-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:"IBM Plex Sans Condensed";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/plexsanscond-700-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:"IBM Plex Sans";font-style:normal;font-weight:300 700;font-display:swap;src:url("/assets/fonts/plexsans-300-700-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}
/* --- end generated fonts --- */
/* Services hub: "Spec sheet". A catalog you can scan: warm paper, black ink, one
   signal orange. Low-context US buyers want the menu stated plainly, so the cards
   become a ruled table with big catalog numbers instead of floating tiles. */
:root {
  --bg: #f4f1ea; --bg-raised: #ebe6db; --bg-card: #ffffff;
  --line: rgba(21, 23, 27, 0.14); --line-strong: rgba(21, 23, 27, 0.34);
  --text: #15171b; --text-dim: #3d434c; --text-faint: #5f6670;
  --accent: #c2410c; --accent-rgb: 194, 65, 12; --accent2-rgb: 21, 23, 27; --grid-rgb: 21, 23, 27;
  --cta-bg: #15171b; --cta-ink: #ffffff; --cta-hover: #c2410c;
  --font-display: "IBM Plex Sans Condensed", "Arial Narrow", sans-serif;
  --font-body: "IBM Plex Sans", system-ui, sans-serif;
  --num-font: "IBM Plex Sans Condensed", sans-serif;
  --btn-radius: 0; --card-radius: 0; --card-radius-lg: 0;
}
h1, h2, h3 { font-weight: 700; letter-spacing: -0.01em; }
.page-hero h1 { text-transform: uppercase; font-size: clamp(2.6rem, 1.2rem + 5vw, 5.4rem); line-height: 0.95; }
.page-hero h1 em, .section__title em, .band h2 em { color: var(--accent); }
.section__title { text-transform: uppercase; }
.section__kicker { text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.8rem; }
/* ruled catalog grid: shared borders, no gaps, no floating */
.grid-2 { gap: 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.grid-2 > .service-card, .grid-2 > .feature-card { border: 0; border-right: 1px solid var(--line-strong); border-bottom: 1px solid var(--line-strong); background: var(--bg-card); }
.service-card:hover { transform: none; background: #fff7f1; box-shadow: inset 6px 0 0 var(--accent); }
.service-card__num { font-size: 3.4rem; font-weight: 700; line-height: 0.9; letter-spacing: -0.03em; color: var(--text); opacity: 0.18; margin-bottom: 0.8rem; }
.service-card:hover .service-card__num { opacity: 1; color: var(--accent); }
.service-card__icon { background: transparent; border-color: var(--line-strong); }
.service-card__icon svg { stroke: var(--text); }
.service-card__link { color: var(--accent); text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.8rem; }
.band { background: var(--text); color: #fff; border-left-color: var(--accent); }
.band h2, .band p { color: #fff; }
.band .btn--primary { background: var(--accent); color: #fff; }
.why__card { background: var(--bg-card); }
.px-orb { opacity: 0.08; }
