/* Deutschsovet «Coming Soon» — static stub for the old WordPress root (DS-073).
   Design F2 «Сервис 3D · коралл» (docs/design/DESIGN.md, web/app/globals.css `.portal`).
   Shared by /, /impressum/, /datenschutz/. No JS, no cookies, no third-party requests.
   Layout: logo bar → one centred card → footer with the legal links. */

@font-face { font-family: Geologica; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/geologica-cyrillic.woff2) format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Geologica; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/geologica-latin-ext.woff2) format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Geologica; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/geologica-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Onest; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/onest-cyrillic.woff2) format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Onest; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/onest-latin-ext.woff2) format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Onest; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(/_cs/fonts/onest-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
  /* F2 «Коралл», light */
  --bg: #FFF8F3;            /* cream ground */
  --card: #FFFFFF;
  --fg: #1E2B57;            /* navy: text + actions */
  --ink-2: #3A4670;
  --muted: #5B6385;
  --border: #F1E2D7;
  --coral-ink: #B23A1F;     /* coral text on light */
  --coral-soft: #FFE6D9;
  --tile: #F4D6C2;          /* = baked-in background of the clay images */
  --primary: #1E2B57;
  --primary-fg: #FFFFFF;
  --mark-dot: #FF6B4A;
  --shadow: 0 1px 2px rgb(30 43 87 / 0.06), 0 12px 32px rgb(255 107 74 / 0.12);
  --font-display: Geologica, Onest, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-sans: Onest, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --r-card: 24px;
  --r-inset: 20px;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #10152B; --card: #182041; --fg: #F4F1EC; --ink-2: #D9D6E6; --muted: #A7AECB; --border: #2A3358;
    --coral-ink: #FFB59E; --coral-soft: #3A2420;
    --primary: #FFB59E; --primary-fg: #1B1428; --mark-dot: #1B1428;
    --shadow: 0 1px 2px rgb(0 0 0 / 0.4), 0 12px 32px rgb(0 0 0 / 0.35);
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --bg: #10152B; --card: #182041; --fg: #F4F1EC; --ink-2: #D9D6E6; --muted: #A7AECB; --border: #2A3358;
  --coral-ink: #FFB59E; --coral-soft: #3A2420;
  --primary: #FFB59E; --primary-fg: #1B1428; --mark-dot: #1B1428;
  --shadow: 0 1px 2px rgb(0 0 0 / 0.4), 0 12px 32px rgb(0 0 0 / 0.35);
  color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; height: 100%; }
body {
  margin: 0;
  min-height: 100%;
  background: var(--bg);
  color: var(--fg);
  font-family: var(--font-sans);
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; border-radius: 6px; }
::selection { background: var(--coral-soft); color: var(--fg); }
h1, h2 { font-family: var(--font-display); font-weight: 700; letter-spacing: -0.02em; text-wrap: balance; margin: 0; }

.page { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; }
.wrap {
  width: 100%;
  max-width: 1152px;
  margin-inline: auto;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
}
@media (min-width: 768px) {
  .wrap { padding-left: max(40px, env(safe-area-inset-left, 0px)); padding-right: max(40px, env(safe-area-inset-right, 0px)); }
}

/* --- logo bar --- */
.top { padding-block: 18px; }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.brand-name { font-family: var(--font-display); font-weight: 700; font-size: 21px; letter-spacing: -0.02em; }
.mark { width: 36px; height: 36px; flex: none; }
.mark .m-bg { fill: var(--primary); }
.mark .m-fg { fill: var(--primary-fg); }
.mark .m-dot { fill: var(--mark-dot); }

/* --- the one block --- */
.main { flex: 1; display: flex; align-items: center; padding-block: 16px 48px; }
.hero {
  width: 100%;
  background: var(--card);
  border-radius: var(--r-card);
  box-shadow: var(--shadow);
  padding: 20px;
  display: grid;
  gap: 24px;
  align-items: center;
}
.hero-art { margin: 0; background: var(--tile); border-radius: var(--r-inset); overflow: hidden; }
.hero-art img { width: 100%; aspect-ratio: 1344 / 768; object-fit: cover; }
.hero-text { min-width: 0; display: grid; gap: 16px; padding: 4px 4px 8px; }
.hero h1 { font-size: 32px; line-height: 1.1; }
.hero h1 .accent { color: var(--coral-ink); }
.lead { margin: 0; font-size: 18px; line-height: 1.6; color: var(--ink-2); max-width: 32em; }
@media (min-width: 880px) {
  .hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 24px 24px 24px 48px; gap: 40px; }
  .hero-text { padding: 24px 0; gap: 20px; }
  .hero h1 { font-size: 48px; line-height: 1.08; }
  .lead { font-size: 20px; line-height: 1.5; }
}
@media (max-width: 879px) { .hero-art { order: -1; } }

/* --- footer --- */
.foot {
  border-top: 1px solid var(--border);
  padding-block: 20px max(24px, env(safe-area-inset-bottom, 0px));
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px;
  font-size: 14px; color: var(--muted);
}
.foot-links { display: flex; flex-wrap: wrap; gap: 4px 20px; font-size: 15px; font-weight: 600; }
.foot-links a { color: var(--ink-2); text-decoration: none; }
.foot-links a:hover, .foot-links a[aria-current="page"] { color: var(--coral-ink); text-decoration: underline; text-underline-offset: 3px; }

/* --- legal pages --- */
.main-legal { flex: 1; padding-block: 8px 48px; }
.legal {
  max-width: 760px;
  background: var(--card); border-radius: var(--r-card); box-shadow: var(--shadow);
  padding: 24px 20px; font-size: 15px; line-height: 1.65; color: var(--ink-2);
}
@media (min-width: 768px) { .legal { padding: 40px 48px; } }
.legal .back { display: inline-block; margin-bottom: 16px; font-size: 15px; font-weight: 600; color: var(--coral-ink); text-decoration: none; }
.legal .back:hover { text-decoration: underline; text-underline-offset: 3px; }
.legal h1 { font-size: 32px; line-height: 1.15; color: var(--fg); }
@media (min-width: 768px) { .legal h1 { font-size: 40px; } }
.legal .ru { margin: 6px 0 0; color: var(--muted); font-size: 14px; }
.legal h2 {
  font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin: 28px 0 6px;
}
.legal p { margin: 0; }
.legal p + p { margin-top: 10px; }
.legal a:not(.back) { color: var(--coral-ink); font-weight: 600; text-underline-offset: 3px; }
