/* Old tour-in-stpetersburg.com look on stock Cassiopeia Extended: dark blue page, panorama header, white content box, blue menu box. */
.site-grid, .container-header .grid-child, .container-topbar, .container-footer .grid-child { max-width: 1100px; margin-left: auto; margin-right: auto; }
.container-header { background-image: none; padding: 0; }
.container-header .grid-child { padding: 0; }
.container-header .navbar-brand { width: 100%; margin: 0; padding: 0; }
.container-header .brand-logo { display: block; }
.container-header .brand-logo img { display: block; width: 100%; max-height: 180px; object-fit: cover; object-position: center 40%; }
.container-topbar { margin: 0 auto; padding: .35rem .5rem 0; display: flex; justify-content: flex-end; }
.container-topbar .mod-languages__list { margin: 0; }
.site-grid { background: #fff; border-radius: 0 0 10px 10px; padding-top: 1rem; padding-bottom: 1.5rem; box-shadow: 0 4px 18px rgba(0, 0, 0, .25); }
.container-component h1, .container-component .page-header h1 { color: #135cae; font-size: 1.6rem; font-weight: 600; }
.container-component h2 { color: #135cae; font-size: 1.35rem; }
.container-component h3 { color: #135cae; font-size: 1.15rem; }
.com-content-article__body { line-height: 1.55; }
.com-content-article__body a { text-decoration: none; }
.com-content-article__body a:hover { text-decoration: underline; }
.com-content-article__body img { max-width: 100%; height: auto; }
.com-content-article__body table { max-width: 100%; }
.sidebar-left.card { border: 0; border-radius: 10px; overflow: hidden; background: #1a5aa8; padding: 0 5px 6px; }
.sidebar-left.card > .card-header { background: transparent; color: #fff; font-size: .95rem; font-weight: 700; border: 0; padding: .55rem .6rem .45rem; }
.sidebar-left.card > .card-body { background: #fff; border-radius: 7px; padding: .5rem .6rem; }
.sidebar-left .mod-menu a { color: #135cae; font-weight: 600; text-decoration: none; }
.sidebar-left .mod-menu a:hover { text-decoration: underline; }
.sidebar-left .mod-menu .current > a { color: #0c3a6d; }
.sidebar-left .mod-menu > li { padding: .15rem 0; }
.container-footer { background: transparent; }
/* Legacy article HTML carries fixed widths (tables, divs, width attributes); keep it inside the column. */
.com-content-article__body * { max-width: 100%; }
.com-content-article__body table { width: auto; }
.com-content-article__body iframe { aspect-ratio: 16 / 9; height: auto; }
@media (max-width: 767.98px) {
  .container-header .brand-logo img { max-height: 110px; }
  .site-grid { border-radius: 0; }
  /* Menu before content on phones, as on the old site's single column. */
  .site-grid { display: flex; flex-direction: column; }
  .site-grid > * { padding-left: 1rem; padding-right: 1rem; }
  .container-sidebar-left { order: -1; }
  .com-content-article__body, .com-content-article__body p, .com-content-article__body div { text-align: left !important; }
  .com-content-article__body table, .com-content-article__body tbody, .com-content-article__body tr,
  .com-content-article__body td { display: block; width: 100% !important; }
  .com-content-article__body img, .com-content-article__body [style*="float"] { float: none !important; display: block; margin: .5rem auto; }
}
