/* @fonts: DM Serif Display | DM Sans */
/* --- generated fonts --- */
@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/dmserifdisplay-400-italic-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:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/dmserifdisplay-400-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:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("/assets/fonts/dmsans-400-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 --- */
/* Graphic design: "Studio". Warm print cream, tomato red, black ink, and hard offset
   shadows like a paste-up board. Red is energy and appetite in US advertising; the
   high-contrast serif shows taste before a single portfolio piece loads. */
:root {
  --bg: #f3ece0; --bg-raised: #eae1d1; --bg-card: #fbf7f0;
  --line: rgba(27, 23, 18, 0.16); --line-strong: rgba(27, 23, 18, 0.4);
  --text: #1b1712; --text-dim: #4a4238; --text-faint: #6c6155;
  --accent: #c8361c; --accent-rgb: 200, 54, 28; --accent2-rgb: 36, 99, 235; --grid-rgb: 27, 23, 18;
  --cta-bg: #c8361c; --cta-ink: #ffffff; --cta-hover: #a82c16;
  --font-display: "DM Serif Display", Georgia, serif;
  --font-body: "DM Sans", system-ui, sans-serif;
  --num-font: "DM Sans", sans-serif;
  --btn-radius: 0; --card-radius: 0; --card-radius-lg: 0;
}
h1, h2, h3 { font-weight: 400; letter-spacing: -0.01em; }
.page-hero h1 { font-size: clamp(2.8rem, 1.2rem + 5.6vw, 6rem); line-height: 0.95; }
.page-hero h1 em, .section__title em, .band h2 em { color: var(--accent); font-style: italic; }
.section__kicker { font-family: var(--font-body); text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.78rem; font-weight: 700; }
/* paste-up board: hard offset shadows, press-down on hover */
.btn--primary { box-shadow: 4px 4px 0 var(--text); }
.btn--primary:hover { box-shadow: 1px 1px 0 var(--text); transform: translate(3px, 3px); }
.feature-card, .process__step { border: 1.5px solid var(--text); box-shadow: 6px 6px 0 var(--text); background: var(--bg-card); }
.gtile { border: 1.5px solid var(--text); box-shadow: 6px 6px 0 var(--text); }
.feature-card:hover, .process__step:hover { transform: translate(3px, 3px); box-shadow: 3px 3px 0 var(--accent); }
.gtile:hover { box-shadow: 3px 3px 0 var(--accent); }
.feature-card h3, .process__step h3, .price-card h3 { font-family: var(--font-body); font-weight: 700; }
.process__step h3 { color: var(--text); }
.pill { background: var(--bg-card); border-color: var(--text); }
.pill strong { color: var(--accent); }
.band { background: var(--text); border-left-color: var(--accent); }
.band h2, .band p { color: #fbf7f0; }
.band h2 em { color: #ff8a6b; }
.gallery__note { text-align: left; }
.px-orb { opacity: 0.08; }
