/* Keep WordPress's constrained layout from shrinking the page sections. */
html, body { width: 100%; margin: 0; }
body .wp-site-blocks, body .wp-site-blocks > .entry-content { width: 100%; max-width: none !important; min-width: 0; margin: 0 !important; }
body .entry-content > :where(:not(.alignleft):not(.alignright)) { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
body .entry-content > section, body .entry-content > footer, body .entry-content > .trust-bar, body .entry-content > .editorial-band, body .entry-content > .video-interlude, body .entry-content > .quote-banner { width: 100%; }
img, video { max-width: 100%; }
.footer-col, .footer-brand, .hero-content, .cgp-content { min-width: 0; }
.footer a { overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .trust-bar-inner { flex-wrap: wrap; }
  .hero h1 { overflow-wrap: break-word; }
  html body nav.nav { gap: 8px !important; }
  html body nav.nav .nav-logo img { max-width: 95px; height: auto !important; }
  html body nav.nav .nav-actions { gap: 6px !important; }
  .lang-switch { margin-left: 0; }
}
#registration { position: fixed; inset: 0; margin: auto; width: min(460px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; padding: 36px 28px; border: 1px solid #e8e3dd; border-radius: 16px; background: #faf8f5; color: #1a1a1c; box-sizing: border-box; }
#registration::backdrop { background: rgb(0 0 0 / 65%); }
#registration h2 { font-size: 2rem; padding-right: 20px; margin-bottom: 16px; }
#registration p { margin-bottom: 20px; }
#registration label { display: block; margin: 12px 0 4px; }
#registration input { display: block; width: 100%; padding: 12px; font: inherit; border: 1px solid #bdb5ad; border-radius: 6px; background: white; color: #1a1a1c; }
#registration form > button { margin-top: 24px; width: 100%; }
.registration-close { position: absolute; top: 8px; right: 12px; border: 0; background: transparent; font-size: 28px; cursor: pointer; padding: 4px 10px; }
body.registration-open { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .reveal { transition: none !important; } }
body .entry-content > .section { max-width: 1200px !important; margin-left: auto !important; margin-right: auto !important; }
body .entry-content > .sep { margin-left: auto !important; margin-right: auto !important; }
@media (max-width: 600px) {
  .trust-bar { padding-left: 20px; padding-right: 20px; }
  .trust-item { white-space: normal; }
}
