/*!
 * FinnAdvisor — shared polish layer (additive, site-wide)
 * Universally-safe refinements that unify the professional feel across every
 * page without touching layout. Loaded after each page's own styles.
 * Palette: navy #0D2340, gold #C8962A.
 */

/* Smoother type rendering everywhere */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }

/* On-brand text selection */
::selection { background: rgba(200, 150, 42, .28); color: #0D2340; }
::-moz-selection { background: rgba(200, 150, 42, .28); color: #0D2340; }

/* Accessible, on-brand keyboard focus rings (only for keyboard users) */
a:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible {
  outline: 3px solid #E8B84B;
  outline-offset: 2px;
  border-radius: 6px;
}

/* Refined, subtle scrollbars (WebKit + Firefox) */
* { scrollbar-width: thin; scrollbar-color: rgba(13, 35, 64, .35) transparent; }
::-webkit-scrollbar { width: 11px; height: 11px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(13, 35, 64, .30);
  border-radius: 8px;
  border: 3px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover { background: rgba(13, 35, 64, .50); background-clip: content-box; }

/* Media never overflows its container */
img, svg, video { max-width: 100%; height: auto; }

/* Honor reduced-motion globally */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
