/* ============================================================
   global.css — Base styles, CSS variables, fonts, resets
   ============================================================ */

/* ── Variables ─────────────────────────────────────────────── */
:root {
  /* Core colours */
  --color-black:         #000000;
  --color-white:         #ffffff;
  --color-grey:          #6b7280;
  --color-blue:          #235785;
  --color-blue-dark:     #11375B;

  /* Accent / primary — #286499 dominates the palette */
  --color-accent:        #286499;
  --color-accent-light:  #3a7bbf;
  --color-accent-dark:   #1c4a72;
  --color-accent-tag:    #e8eef6;
  --color-accent-border: #c5d8ea;

  /* Surfaces */
  --color-bg:            #f4f8fc;
  --color-white-card:    #ffffff;
  --color-border:        #e2e8f0;
  --color-tag:           #f0f4f8;

  /* Legacy aliases (kept for header/footer compat) */
  --color-light-blue-bg: #f4f8fc;
  --footer-light:        #ffffff;
  --footer-dark:         #000000;
  --color-oshad-blue:    #00503b;

  /* Layout */
  --nav-height:          64px;

  /* Typography */
  --font-main: 'e-Ukraine', 'Segoe UI', Arial, sans-serif;

  /* Easing */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── Font ──────────────────────────────────────────────────── */
@font-face {
  font-family: 'e-Ukraine';
  src: url('/assets/fonts/e-Ukraine-Regular.eot');
  src: url('/assets/fonts/e-Ukraine-Regular.eot?#iefix') format('embedded-opentype'),
       url('/assets/fonts/e-Ukraine-Regular.woff2') format('woff2'),
       url('/assets/fonts/e-Ukraine-Regular.woff')  format('woff'),
       url('/assets/fonts/e-Ukraine-Regular.ttf')   format('truetype');
  font-weight: normal;
  font-style:  normal;
  font-display: swap;
}

/* ── Reset ─────────────────────────────────────────────────── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-main);
  color: var(--color-black);
  background: var(--color-bg);
  min-height: 100vh;
  overflow-x: hidden;
}

main {
  min-height: calc(100vh - 400px);
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
}

ul { list-style: none; }

button { font-family: var(--font-main); }

.planned { display: none !important; }

/* ── Responsive utilities ──────────────────────────────────── */
.pc-only     { display: block; }
.mobile-only { display: none;  }

@media (max-width: 991px) {
  .pc-only     { display: none !important; }
  .mobile-only { display: block; }
}

/* ── Scroll-reveal (JS adds .revealed) ───────────────────── */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.8s var(--ease-out-expo),
              transform 0.8s var(--ease-out-expo);
}
.reveal.revealed {
  opacity: 1;
  transform: translateY(0);
}

/* ── Copy icon button (shared) ─────────────────────────────── */
.copy-icon-btn {
  flex-shrink: 0;
  background: none;
  border: none;
  padding: 3px;
  cursor: pointer;
  color: rgba(255,255,255,0.35);
  display: inline-flex;
  align-items: flex-start;
  border-radius: 4px;
  transition: color 0.15s, background 0.15s;
  font-family: var(--font-main);
  line-height: 1;
}
.copy-icon-btn:hover  { color: rgba(255,255,255,0.8); background: rgba(255,255,255,0.08); }
.copy-icon-btn.copied { color: #4caf7d; }
