/* CATSOCIETY design tokens. Every colour and font face on the site comes from here, as do the shared type, space, radius and motion scales. */

@font-face {
  font-family: "Archivo";
  src: url("../fonts/archivo-latin.woff2") format("woff2");
  font-weight: 400 800;
  font-stretch: 100% 125%;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212;
}
@font-face {
  font-family: "Archivo";
  src: url("../fonts/archivo-ro.woff2") format("woff2");
  font-weight: 400 800;
  font-stretch: 100% 125%;
  font-display: swap;
  unicode-range: U+0102-0103, U+015E-015F, U+0162-0163, U+0218-021B;
}
@font-face {
  font-family: "Literata";
  src: url("../fonts/literata-latin.woff2") format("woff2");
  font-weight: 400 600;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2212;
}
@font-face {
  font-family: "Literata";
  src: url("../fonts/literata-ro.woff2") format("woff2");
  font-weight: 400 600;
  font-display: swap;
  unicode-range: U+0102-0103, U+015E-015F, U+0162-0163, U+0218-021B;
}
/* Fallbacks tuned to the web faces' metrics, so the swap does not shift the layout. */
@font-face {
  font-family: "Archivo Fallback";
  src: local("Arial"), local("Helvetica Neue"), local("Helvetica");
  size-adjust: 99.96%;
  ascent-override: 87.84%;
  descent-override: 21.01%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "Literata Fallback";
  src: local("Georgia");
  size-adjust: 108.15%;
  ascent-override: 108.83%;
  descent-override: 28.48%;
  line-gap-override: 0%;
}

:root {
  /* Sky and limewash */
  --color-paper: oklch(97.6% 0.006 240);
  --color-paper-2: oklch(94.4% 0.010 240);
  --color-ink: oklch(23% 0.03 258);
  --color-ink-2: oklch(38% 0.03 256);
  --color-muted: oklch(46% 0.025 252);
  --color-rule: oklch(84% 0.016 245);
  --color-neighbour: oklch(86.5% 0.014 245);
  --color-ground: oklch(23% 0.03 258);
  --color-roof: oklch(42% 0.085 33);
  --color-roof-dark: oklch(33% 0.06 33);
  --color-frame: oklch(96.5% 0.006 80);

  /* Enamel: the company's own colour */
  --color-enamel: oklch(41% 0.13 262);
  --color-enamel-deep: oklch(34% 0.11 263);
  --color-enamel-ink: oklch(97% 0.012 250);
  --color-enamel-muted: oklch(86% 0.04 255);
  --color-enamel-line: oklch(58% 0.1 260);

  /* Night: the footer */
  --color-night: oklch(23% 0.03 258);
  --color-night-ink: oklch(97.6% 0.006 240);
  --color-night-muted: oklch(76% 0.03 250);
  --color-night-line: oklch(36% 0.03 256);
  --color-night-edge: oklch(56% 0.03 254);

  /* t3lly (its own palette: charcoal, bone, one amber light) */
  --color-t3-charcoal: oklch(18.8% 0.005 67.5);
  --color-t3-charcoal-2: oklch(24.5% 0.007 67.5);
  --color-t3-window: oklch(30% 0.008 67.5);
  --color-t3-bone: oklch(92.9% 0.010 81.8);
  --color-t3-bone-muted: oklch(76% 0.012 80);
  --color-t3-line: oklch(36% 0.008 70);
  --color-t3-amber: oklch(80.1% 0.145 72);
  --color-t3-amber-hover: oklch(86% 0.12 75);

  /* Kraftbuch (its own palette: signal orange, night navy, amber mark) */
  --color-kb-orange: oklch(70% 0.202 44.4);
  --color-kb-orange-deep: oklch(55.4% 0.192 35.5);
  --color-kb-window: oklch(48% 0.15 38);
  --color-kb-night: oklch(21% 0.032 264.7);
  --color-kb-amber: oklch(76.9% 0.165 70.1);
  --color-kb-ink: oklch(22% 0.007 67.4);
  --color-kb-ink-hover: oklch(30% 0.01 60);
  --color-kb-cream: oklch(98% 0.005 78.3);
  --color-kb-line: oklch(52% 0.17 40);

  /* Itemerary (its own palette: receipt paper, ink, one vermilion mark) */
  --color-it-paper: oklch(98.7% 0.005 67.8);
  --color-it-paper-2: oklch(96% 0.005 67.8);
  --color-it-ink: oklch(20.9% 0.008 48.3);
  --color-it-ink-hover: oklch(32% 0.01 48);
  --color-it-muted: oklch(51% 0.008 53.3);
  --color-it-rule: oklch(85.1% 0.006 59.6);
  --color-it-vermilion: oklch(55% 0.2 33.1);

  /* Lit window: the one shared light */
  --color-light: oklch(86% 0.13 85);
  --color-light-warm: oklch(80.1% 0.145 72);

  /* Faces */
  --font-sign: "Archivo", "Archivo Fallback", Arial, sans-serif;
  --font-body: "Literata", "Literata Fallback", Georgia, serif;

  /* Type scale, major third from 1rem */
  --text-xs: 0.8125rem;
  --text-sm: 0.9375rem;
  --text-base: 1.0625rem;
  --text-md: 1.25rem;
  --text-lg: 1.5625rem;
  --text-xl: clamp(1.75rem, 1.2rem + 1.6vw, 2.4rem);
  --text-2xl: clamp(2.25rem, 1.4rem + 3vw, 3.6rem);
  --text-display: clamp(2.6rem, 1.6rem + 4.4vw, 4.75rem);

  /* Space, 4pt base */
  --space-3xs: 0.125rem;
  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2.5rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 9rem;

  /* Lines and corners */
  --rule-hair: 1px;
  --rule-frame: 2px;
  --radius: 4px;
  --radius-plate: 7px;
  --radius-screen: 22px;

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 220ms;
  --dur-long: 480ms;
  --dur-settle: 720ms;
  /* A damped spring: overshoots a little, then settles. Used only for the phones straightening on hover. */
  --ease-settle: linear(0, 0.36 8%, 0.94 20%, 1.12 30%, 1.07 41%, 0.98 55%, 1.01 70%, 1);
  --dur-swish: 1100ms;
  /* A tail swish: out, back past rest, out again, then a few degrees out. Used only for the cat's tail on the plate. */
  --ease-swish: linear(0, 1.55, 2.83, 3.76, 4.29, 4.44, 4.23, 3.74, 3.06, 2.27, 1.47, 0.74, 0.13, -0.3, -0.56, -0.62, -0.53, -0.29, 0.03, 0.4, 0.78, 1.12, 1.41, 1.62, 1.73, 1.77, 1.72, 1.61, 1.46, 1.28, 1.11, 0.94, 0.81, 0.71, 0.65, 0.64, 0.66, 0.71, 0.78, 0.87, 1);

  /* Layers */
  --z-base: 1;
  --z-raised: 10;
  --z-sticky: 200;

  /* Layout */
  --wrap: 75rem;
  --gutter: clamp(1.125rem, 4.5vw, 3rem);
}
