:root {
  --font-latin: "Nourd", "Futura", "Century Gothic", "Avenir Next", system-ui, sans-serif;
  --color-text: #14161a;
  --color-bg: #f4f5f7;
  --color-surface: #eaecef;
  --color-divider: color-mix(in srgb, #14161a 14%, transparent);
  --color-accent: #2a4a86;
  --color-accent-100: #eceff7;
  --color-accent-200: #ccd5ea;
  --color-accent-300: #a6b7d8;
  --color-accent-400: #6b83b5;
  --color-accent-500: #2a4a86;
  --color-accent-600: #223c6e;
  --color-accent-700: #1b3058;
  --color-accent-800: #152443;
  --color-accent-900: #101c33;
  --color-accent-2: #46c96e;
  --color-accent-2-100: #ecfbf0;
  --color-accent-2-200: #cdf3d8;
  --color-accent-2-300: #a3e7b8;
  --color-accent-2-400: #6fd68f;
  --color-accent-2-500: #46c96e;
  --color-accent-2-600: #35a458;
  --color-accent-2-700: #2a7f45;
  --color-accent-2-800: #1f5c33;
  --color-accent-2-900: #143d22;
}
.duotone::after { background: #808080 !important; }
.duotone img { filter: grayscale(1); }
#gr-hero-wrap .duotone::after { opacity: 0.35; }
#gr-hero-wrap .duotone img { filter: grayscale(0.35) saturate(1.1); }
#gr-mobile-cta { display: none; }
@media (max-width: 700px) {
  #gr-header-nav, #gr-header-cta { display: none !important; }
  #gr-mobile-cta { display: flex !important; }
  body { padding-bottom: 76px; }
}
body { margin: 0; font-family: "Zen Kaku Gothic New", system-ui, sans-serif; font-size: 15px; line-height: 1.9; text-wrap: pretty; -webkit-font-smoothing: antialiased; }
a { color: var(--color-accent-700); text-decoration: none; }
a:hover { color: var(--color-accent); }
h1, h2, h3, h4 { font-family: "Shippori Mincho", serif; font-weight: 600; letter-spacing: 0.02em; }
