
/* LVRIA homepage restoration — scoped, responsive overrides */
html { box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }
html, body { max-width: 100%; overflow-x: hidden; }
body { margin: 0; color: #203448; background: #f4f8fc; }
#wrapper, #container, #header, #nav, #main-col, #content, #sidebar {
  max-width: 100%; min-width: 0;
}
#wrapper { width: min(1120px, calc(100% - 32px)); margin: 0 auto; }
#header { height: auto; min-height: 110px; }
#header img, #content img, #sidebar img { max-width: 100%; height: auto; }
#container { display: flex; gap: 24px; align-items: flex-start; }
#main-col { float: none; flex: 1 1 0; width: auto; min-width: 0; }
#sidebar { float: none; flex: 0 0 255px; width: 255px; }
#content { width: 100%; float: none; }
#content p, #sidebar p { line-height: 1.7; }
#nav { height: auto; min-height: 45px; }
#nav ul { display: flex; flex-wrap: wrap; }
#nav li { float: none; }
select, input, textarea, button { max-width: 100%; }
@media (max-width: 820px) {
  #wrapper { width: calc(100% - 24px); }
  #container { display: flex; flex-direction: column; }
  #main-col, #sidebar { width: 100% !important; flex: auto; margin: 0 !important; }
  #header { min-height: 0; padding: 12px; }
  #nav ul { display: flex; flex-wrap: wrap; padding: 0; margin: 0; }
  #nav li { width: auto; }
  #content { padding: 0; }
}
@media (max-width: 480px) {
  #wrapper { width: calc(100% - 16px); }
  #nav li a { padding: 10px 12px; }
  h1 { font-size: clamp(24px, 7vw, 34px); line-height: 1.2; }
  h2 { font-size: clamp(20px, 6vw, 28px); }
}
