/* Shared CROWN EPOS palette: royal blue, silver, and crown gold. */
:root {
  --crown-primary: #0759d3;
  --crown-secondary: #c5cddc;
  --crown-dark: #071e50;
  --crown-light-bg: #f3f6fc;
  --crown-gray: #475569;
  --crown-gold: #ffc328;
  --primary: #408cff;
  --primary-2: #80b6ff;
  --accent: #ffc328;
  --bg-0: #040c21;
  --bg-1: #081a40;
  --bg-2: #102b60;
  --border: rgba(128,182,255,.23);
  --card-bg-1: rgba(16,43,96,.9);
  --card-bg-2: rgba(8,26,64,.96);
  --grid-line: rgba(128,182,255,.05);
}
[data-theme="light"] {
  --primary: #0759d3;
  --primary-2: #0643a3;
  --accent: #8a5900;
  --bg-0: #e0e8f7;
  --bg-1: #f4f7fd;
  --bg-2: #e7eefb;
  --border: rgba(7,89,211,.2);
  --card-bg-1: rgba(248,250,255,.98);
  --card-bg-2: rgba(231,238,251,.98);
}
body { text-align: start; }
:focus-visible { outline: 3px solid #b47700; outline-offset: 4px; }
.btn { background-color: var(--crown-primary); }
.btn:hover { background-color: #0643a3; box-shadow: 0 10px 24px rgba(7,89,211,.22); }
.btn-outline { background: transparent; color: var(--crown-primary); }
.btn-outline:hover { background: var(--crown-primary); }
.navbar.scrolled { background: rgba(7,30,80,.96); }
.hero-bg::after {
  background: linear-gradient(115deg, rgba(4,16,48,.9), rgba(6,50,130,.7));
}
.hero-highlight { color: #ffc328; }
.hero-badge { background: rgba(7,89,211,.3); border-color: rgba(255,195,40,.5); }
.section-header h2::after, .solutions::before {
  background: linear-gradient(90deg, #0759d3, #c5cddc, #ffc328);
}
.cta { background: linear-gradient(115deg, #0759d3, #071e50); border-top: 3px solid #ffc328; }
.feature-card, .leaflet-card { border-color: #dce4f2; }
.feature-card:hover { border-color: #0759d3; }
.policy-hero {
  background: radial-gradient(ellipse at top right, #0964e0, transparent 65%),
              linear-gradient(120deg, #071e50, #063b99);
  border-bottom: 4px solid #ffc328;
}
.policy-hero .subtitle, .policy-hero .meta { color: #e1e9f8; }
.policy-body { background: #fff; }
.policy-body .container { max-width: 900px; }
.policy-body h2 { display: block; border-bottom: 1px solid #dce4f2; padding-bottom: 12px; }
.policy-body h2 .num { color: #0759d3; }
.intro-card { border-left-color: #e4a600; background: #f3f6fc; }
.contact-block { background: #f3f6fc; }
.nav-inner img.logo-img { height: 72px; width: auto; object-fit: contain; border-radius: 0; }
footer { background: #071a43; color: #e1e9f8; }
footer a, footer .copyright { color: #d5e1f7; }
footer a:hover { color: #ffc328; }
.site-legal-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 24px;
  padding: 22px 20px;
  font-size: .85rem;
  line-height: 1.6;
  text-align: center;
}
.site-legal-links a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.site-legal-links a:hover { color: #ffc328; }
.card-footer img { height: 44px; width: auto; object-fit: contain; opacity: 1; border-radius: 0; }
.card-footer + .site-legal-links { color: var(--text); border-top: 1px solid var(--border); }
.download-page nav img { width: 80px; }
.download-page { background: #f3f6fc; color: #071e50; }
.download-page a { color: #0759d3; }
.download-page .card { border-top: 4px solid #ffc328; box-shadow: 0 18px 60px rgba(7,30,80,.1); }
.download-page .icon { background: #e8f0ff; color: #0759d3; }
.download-page button:enabled { background: #0759d3; }
.download-page button:hover:enabled { background: #0643a3; }
.download-page footer a { color: #d5e1f7; }
@media (max-width: 600px) {
  .nav-inner img.logo-img { height: 56px; }
  .policy-hero { padding: 40px 0 32px; }
  .policy-body .container { padding: 0 20px; }
  .site-legal-links { gap: 10px 18px; font-size: .8rem; }
}
