/* Shared by every page: self-hosted fonts, color tokens, base styles, the site footer,
   and the layout for the info pages (privacy, terms, contact). */

@font-face{font-family:"Oswald";font-weight:500;font-display:swap;src:url(/assets/fonts/oswald-latin-500-normal.woff2) format("woff2");}
@font-face{font-family:"Oswald";font-weight:600;font-display:swap;src:url(/assets/fonts/oswald-latin-600-normal.woff2) format("woff2");}
@font-face{font-family:"Oswald";font-weight:700;font-display:swap;src:url(/assets/fonts/oswald-latin-700-normal.woff2) format("woff2");}
@font-face{font-family:"Public Sans";font-weight:400;font-display:swap;src:url(/assets/fonts/public-sans-latin-400-normal.woff2) format("woff2");}
@font-face{font-family:"Public Sans";font-weight:500;font-display:swap;src:url(/assets/fonts/public-sans-latin-500-normal.woff2) format("woff2");}
@font-face{font-family:"Public Sans";font-weight:600;font-display:swap;src:url(/assets/fonts/public-sans-latin-600-normal.woff2) format("woff2");}
@font-face{font-family:"Public Sans";font-weight:700;font-display:swap;src:url(/assets/fonts/public-sans-latin-700-normal.woff2) format("woff2");}
@font-face{font-family:"IBM Plex Mono";font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");}
@font-face{font-family:"IBM Plex Mono";font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");}
@font-face{font-family:"IBM Plex Mono";font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-600-normal.woff2) format("woff2");}

:root{
  --bg:#e9ebe6; --surface:#ffffff; --surface-2:#f3f4ef;
  --ink:#14181a; --muted:#5b625e; --faint:#767b74;
  --line:#c9cdc3; --line-strong:#a7ac9f;
  --accent:#c23b3b; --accent-ink:#ffffff;
  --good:#1f7a52; --bad:#c23b3b; --warn:#9a6b17;
  --bond:#5f739c; --gold:#a8831f;
  --acc-cafe:#c23b3b; --acc-grill:#b4521c; --acc-startup:#2b5fd9; --acc-salary:#8a5a1c; --acc-invest:#1f6f8b;
  --acc-foodtruck:#0e7c6b; --acc-bakery:#b0446e; --acc-buyrent:#586174; --acc-firsthire:#6a4cc0; --acc-joboffers:#8a6d00; --acc-onlinestore:#9b2c8f; --acc-grocery:#3f7d20; --acc-mobileapp:#4338ca; --acc-competitor:#7c3a2d; --acc-school:#1d4e89; --acc-realestate:#6b5b45; --acc-lastcash:#8b1e3f; --acc-farm:#6b7f12; --acc-airline:#0369a1; --acc-priceproduct:#b45309; --acc-debt:#be123c; --acc-clothing:#7e22ce; --acc-delivery:#0f766e; --acc-autorepair:#57534e; --acc-staff:#c2410c; --acc-construction:#a15c07; --acc-gamestudio:#9d174d; --acc-stockcrash:#166534; --acc-amusement:#a21caf; --acc-youtube:#b42318; --acc-production:#334155; --acc-clinic:#0d9488; --acc-karak:#9a5b13; --acc-barber:#155e75;
  --display:'Oswald',"Arial Narrow",sans-serif;
  --body:'Public Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,"Courier New",monospace;
  --radius:3px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#121412; --surface:#1b1d19; --surface-2:#20221d;
    --ink:#ecebe3; --muted:#a3a89c; --faint:#80857a;
    --line:#35382f; --line-strong:#4a4f41;
    --accent:#e35050; --accent-ink:#161616;
    --good:#3a9f73; --bad:#e35050; --warn:#d9a53c;
    --bond:#8ea2cb; --gold:#d6b04f;
    --acc-cafe:#e35050; --acc-grill:#e9803f; --acc-startup:#7a9bff; --acc-salary:#d9a04f; --acc-invest:#4fb2d3;
    --acc-foodtruck:#39c2a8; --acc-bakery:#ec85ae; --acc-buyrent:#a5afc4; --acc-firsthire:#a993f2; --acc-joboffers:#e0bf45; --acc-onlinestore:#df7ad2; --acc-grocery:#86c95c; --acc-mobileapp:#8f8bf5; --acc-competitor:#d38b7c; --acc-school:#6c9bd6; --acc-realestate:#c4b08f; --acc-lastcash:#e4728f; --acc-farm:#bcd04a; --acc-airline:#4fb3e8; --acc-priceproduct:#f0a050; --acc-debt:#f47391; --acc-clothing:#c084fc; --acc-delivery:#2dd4bf; --acc-autorepair:#b8b2ac; --acc-staff:#fb923c; --acc-construction:#f2b54a; --acc-gamestudio:#f2729f; --acc-stockcrash:#5fcf8a; --acc-amusement:#e879f9; --acc-youtube:#f97066; --acc-production:#94a3b8; --acc-clinic:#5eead4; --acc-karak:#e3a857; --acc-barber:#5cc6dd;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#121412; --surface:#1b1d19; --surface-2:#20221d;
  --ink:#ecebe3; --muted:#a3a89c; --faint:#80857a;
  --line:#35382f; --line-strong:#4a4f41;
  --accent:#e35050; --accent-ink:#161616;
  --good:#3a9f73; --bad:#e35050; --warn:#d9a53c;
  --bond:#8ea2cb; --gold:#d6b04f;
  --acc-cafe:#e35050; --acc-grill:#e9803f; --acc-startup:#7a9bff; --acc-salary:#d9a04f; --acc-invest:#4fb2d3;
  --acc-foodtruck:#39c2a8; --acc-bakery:#ec85ae; --acc-buyrent:#a5afc4; --acc-firsthire:#a993f2; --acc-joboffers:#e0bf45; --acc-onlinestore:#df7ad2; --acc-grocery:#86c95c; --acc-mobileapp:#8f8bf5; --acc-competitor:#d38b7c; --acc-school:#6c9bd6; --acc-realestate:#c4b08f; --acc-lastcash:#e4728f; --acc-farm:#bcd04a; --acc-airline:#4fb3e8; --acc-priceproduct:#f0a050; --acc-debt:#f47391; --acc-clothing:#c084fc; --acc-delivery:#2dd4bf; --acc-autorepair:#b8b2ac; --acc-staff:#fb923c; --acc-construction:#f2b54a; --acc-gamestudio:#f2729f; --acc-stockcrash:#5fcf8a; --acc-amusement:#e879f9; --acc-youtube:#f97066; --acc-production:#94a3b8; --acc-clinic:#5eead4; --acc-karak:#e3a857; --acc-barber:#5cc6dd;
  color-scheme:dark;
}
*{box-sizing:border-box;}
[hidden]{display:none !important;}
html,body{margin:0;}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.45;}
button,input,select,textarea{font-family:inherit;}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
@media (prefers-reduced-motion: reduce){ *{transition:none !important;animation:none !important;} }

/* ---------- site footer (every page) ---------- */
.site-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;
  border-top:2px dashed var(--line-strong);padding-top:16px;font-size:12.5px;color:var(--faint);}
.site-foot nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;}
.site-foot a{color:var(--muted);text-decoration:none;padding-block:4px;}
.site-foot a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.site-foot a[aria-current="page"]{color:var(--ink);}

/* ---------- info pages ---------- */
.page{max-width:760px;margin:0 auto;padding-inline:16px;padding-block:22px 48px;display:flex;flex-direction:column;gap:28px;}
.page-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.wordmark{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.01em;text-transform:uppercase;color:var(--ink);text-decoration:none;}
.wordmark span{color:var(--acc-cafe);}
.page-top a.back{font-family:var(--mono);font-size:12.5px;color:var(--muted);text-decoration:none;}
.page-top a.back:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}

.page-head{display:flex;flex-direction:column;gap:10px;border-bottom:2px dashed var(--line-strong);padding-bottom:20px;}
.kicker{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.page-head h1{font-family:var(--display);font-weight:700;font-size:clamp(38px,8vw,64px);line-height:.95;letter-spacing:-.005em;margin:0;text-transform:uppercase;}
.page-head p{margin:0;color:var(--muted);font-size:16.5px;line-height:1.5;max-width:60ch;}

/* the "receipt" summary at the top of legal pages */
.receipt{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);padding:16px 18px;}
.receipt h2{font-family:var(--mono);font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;}
.receipt ul{list-style:none;margin:0;padding:0;}
.receipt li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:14.5px;}
.receipt li:last-child{border-bottom:0;}
.receipt li b a{color:inherit;text-underline-offset:3px;}
.receipt li b{font-family:var(--mono);font-weight:600;font-size:13px;white-space:nowrap;text-align:right;}

.prose{font-size:15.5px;line-height:1.65;}
.prose h2{font-family:var(--display);font-weight:600;font-size:21px;letter-spacing:.02em;text-transform:uppercase;margin:30px 0 6px;scroll-margin-top:16px;}
.prose h2 .n{font-family:var(--mono);font-weight:500;font-size:13px;color:var(--faint);margin-right:8px;letter-spacing:0;}
.prose p,.prose ul{margin:0 0 12px;max-width:68ch;}
.prose ul{padding-left:20px;}
.prose li{margin-bottom:6px;}
.prose a{color:var(--accent);text-underline-offset:3px;}
.prose code{font-family:var(--mono);font-size:13.5px;background:var(--surface-2);border:1px solid var(--line);border-radius:2px;padding:0 4px;}
.prose .updated{font-family:var(--mono);font-size:12.5px;color:var(--faint);}

/* ---------- contact form ---------- */
.form-card{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);padding:20px 18px;display:flex;flex-direction:column;gap:16px;}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-weight:600;font-size:14px;}
.field .hint{font-size:12.5px;color:var(--muted);}
.field input,.field select,.field textarea{font-size:16px;color:var(--ink);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius);padding:10px 12px;width:100%;}
.field textarea{min-height:160px;resize:vertical;line-height:1.5;}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent;}
.field [aria-invalid="true"]{border-color:var(--bad);}
.field .err{font-size:13px;color:var(--bad);}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:560px){ .row2{grid-template-columns:1fr;} }
.count{font-family:var(--mono);font-size:12px;color:var(--faint);text-align:right;}
.trap{position:absolute !important;left:-10000px;width:1px;height:1px;overflow:hidden;}
.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.btn{font-family:var(--display);font-weight:600;font-size:16px;letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);border:0;border-radius:var(--radius);padding:12px 22px;cursor:pointer;}
.btn:hover{filter:brightness(1.08);}
.btn[disabled]{opacity:.6;cursor:progress;}
.actions small{color:var(--muted);font-size:12.5px;}
.actions small a{color:var(--accent);text-underline-offset:3px;}
.notice{border-radius:var(--radius);padding:12px 14px;font-size:14.5px;border:1px solid;}
.notice.ok{border-color:var(--good);color:var(--good);background:color-mix(in srgb,var(--good) 8%,transparent);}
.notice.bad{border-color:var(--bad);color:var(--bad);background:color-mix(in srgb,var(--bad) 8%,transparent);}
.notice b{display:block;margin-bottom:2px;}
/* no-JavaScript fallback: contact.php redirects to #sent or #failed */
.nojs-note{display:none;}
.nojs-note:target{display:block;}
