/* SKY & STONE - Shared Static Stylesheet */

/* Self-hosted variable fonts */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url('./fonts/outfit-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url('./fonts/plus-jakarta-sans-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

body {
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
  color: #334155 !important; /* Slate 700 */
  background: #ffffff !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Outfit', system-ui, -apple-system, sans-serif !important;
  color: #0f172a !important; /* Slate 900 */
}

p, li, ul {
  color: #475569 !important; /* Slate 600 */
}

a {
  color: #0d2745 !important;
  transition: color 0.2s ease;
}

a:hover {
  color: #1e3a8a !important;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgb(13 39 69 / 35%) !important;
  outline-offset: 3px !important;
}

/* Navigation (Header) */
.nav, header {
  background: #ffffff !important;
  border-bottom: 1px solid #e2e8f0 !important;
  padding: 1.25rem 1.5rem !important;
}

.nav a, header a {
  color: #475569 !important;
}

.nav a:hover, header a:hover {
  color: #0d2745 !important;
  text-decoration: none !important;
}

.nav-inner {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
}

.nav span {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.5rem 1.25rem !important;
  margin: 0 !important;
}

.nav span a {
  margin: 0 !important;
}

.nav a.brand {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
}

.nav a.brand img,
header a.brand img {
  height: 48px !important;
  width: auto !important;
  max-width: 180px !important;
}

/* Specifics for legal.html */
header .logo {
  color: #0f172a !important;
}
.subtitle {
  color: #64748b !important;
  border-bottom-color: #e2e8f0 !important;
}
.reg-ref {
  color: #64748b !important;
  border-top-color: #e2e8f0 !important;
}
.highlight-box {
  background: #f8fafc !important;
  border-color: #e2e8f0 !important;
  border-left-color: #0d2745 !important;
}
.highlight-box p, .highlight-box strong {
  color: #334155 !important;
}
main ul li strong {
  color: #0f172a !important;
}

/* Facts / Grid Sections */
.fact {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px -1px rgba(0, 0, 0, 0.05) !important;
  border-radius: 0.5rem !important;
}

.fact strong {
  color: #0d2745 !important;
  font-family: 'Outfit', sans-serif !important;
}

.fact span {
  color: #64748b !important;
}

/* Hero Section in Insights */
.hero {
  background: #f3f7fb !important; /* Pale Aviation Blue */
  color: #0f172a !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.hero h1 {
  color: #0f172a !important;
}

.hero p {
  color: #475569 !important;
}

/* CTA Sections */
.cta {
  background: #f3f7fb !important; /* Pale Aviation Blue */
  border: 1px solid #e2e8f0 !important;
  color: #334155 !important;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05) !important;
}

.cta h2 {
  color: #0f172a !important;
}

.cta a.btn {
  background: #0d2745 !important;
  color: #ffffff !important;
  border-radius: 0.25rem !important;
  transition: background-color 0.2s ease !important;
}

.cta a.btn:hover {
  background: #1e3a8a !important;
  text-decoration: none !important;
}

.action.primary {
  background: #0d2745 !important;
  border-color: #0d2745 !important;
  color: #ffffff !important;
}

.action.primary:hover {
  background: #1e3a8a !important;
  border-color: #1e3a8a !important;
}

/* Overriding index.html/owners crawler fallbacks inline styles */
div[style*="background:#0f2540"], div[style*="background:#1e3a5f"], nav[style*="background:#0f2540"] {
  background: #ffffff !important;
  color: #334155 !important;
  border-bottom: 1px solid #e2e8f0 !important;
}
div[style*="background:#1e3a5f"] {
  background: #f3f7fb !important; /* Aviation blue for hero areas */
}
span[style*="color:#93c5fd"] {
  color: #0d2745 !important; /* Navy */
}
p[style*="color:#bfdbfe"], p[style*="color:#4b5563"] {
  color: #475569 !important; /* Slate 600 */
}
a[style*="background:#2563eb"], a[style*="background:#fff"] {
  background: #0d2745 !important; /* Navy actions */
  color: #ffffff !important;
}
a[style*="background:#2563eb"]:hover, a[style*="background:#fff"]:hover {
  background: #1e3a8a !important;
  text-decoration: none !important;
}
a[style*="color:#93c5fd"] {
  color: #475569 !important;
}
a[style*="color:#93c5fd"]:hover {
  color: #0d2745 !important;
}

/* Footer (Selective Dark Navy) */
footer, nav[style*="text-align:center"] {
  background: #0d2745 !important; /* Navy */
  color: #94a3b8 !important; /* Slate 400 */
  border-top: none !important;
}

footer a, nav[style*="text-align:center"] a {
  color: #cbd5e1 !important;
}

footer a:hover, nav[style*="text-align:center"] a:hover {
  color: #ffffff !important;
}

footer p,
footer li,
footer address,
nav[style*="text-align:center"] p {
  color: #cbd5e1 !important;
}

@media (max-width: 42rem) {
  .nav-inner {
    align-items: flex-start !important;
  }

  .nav span {
    width: 100% !important;
  }

  .nav a.brand img,
  header a.brand img {
    height: 42px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
