/* GlowBright — Responsive + layout alignment */

img, video, canvas, svg { max-width: 100%; height: auto; }

.container {
  width: 96%;
  max-width: none;
  margin-left: 0;
  margin-right: auto;
  padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
  padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
  box-sizing: border-box;
}

#gb-lang { max-width: 42vw; }

/* Always left-aligned reading flow */
body, main, #main-content, .section {
  text-align: left;
}

@media (max-width: 1024px) {
  .container { width: 96%; max-width: none; margin-left: 0; margin-right: auto; }
}

@media (max-width: 900px) {
  .container {
    padding-left: max(0.85rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.85rem, env(safe-area-inset-right, 0px));
  }
  main.container,
  #main-content.container {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: max(0.85rem, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(0.85rem, env(safe-area-inset-right, 0px)) !important;
  }
}

@media (max-width: 768px) {
  main.container, .container { padding-inline: max(0.85rem, env(safe-area-inset-left, 0px)); }
  .hide-mobile { display: none !important; }
  table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

@media (max-width: 560px) {
  .container {
    padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
  }
  h1 { font-size: 1.5rem; }
  .btn-lg { width: 100%; }
  .hero-actions { width: 100%; }
  .hero-actions .btn { flex: 1 1 auto; justify-content: center; }
}

@media (max-width: 380px) {
  .container { padding-inline: 0.65rem; }
}

/* Safe area for notched phones */
@supports (padding: max(0px)) {
  body {
    padding-left: 0;
    padding-right: 0;
  }
  .site-header {
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
  }
}
