/* Fluid frame; desktop styling remains in main_style.css. */
.site-shell { width:100%; max-width:960px; }
.site-shell .container { width:100%; max-width:960px; box-sizing:border-box; }
.site-shell #header-wrap,.site-shell #nav-wrap,.site-shell #banner-wrap,
.site-shell #main-wrap,.site-shell #main-wrap-bottom,.site-shell #footer-wrap { min-width:0; }
.site-shell #main-wrap .container { width:100%; }
.site-shell #banner-top { width:100%; }
#wsite-content { overflow-wrap:break-word; }
#wsite-content img { max-width:100%; height:auto; box-sizing:border-box; }
#wsite-content iframe,#wsite-content video { max-width:100%; }
.tour-menu-toggle { display:none; }

@media (max-width:959px) {
  #nav-wrap .container > table { padding:14px 20px; }
  #nav-wrap .container > table > tbody > tr,
  #nav-wrap .container > table > tr { display:flex; flex-direction:column; align-items:center; gap:12px; }
  #nav-wrap .container > table > tbody > tr > td,
  #nav-wrap .container > table > tr > td { display:block; width:100%; box-sizing:border-box; }
  #nav-wrap #logo { width:100%; padding:0; max-width:none; text-align:center; }
  #nav-wrap #logo .wsite-logo { display:block; width:100%; float:none; }
  #nav-wrap #logo .wsite-logo > a { display:flex; width:100%; justify-content:center; }
  #nav-wrap #logo img { transform:none; margin:0 auto!important; max-width:200px; }
  .tour-navigation { justify-content:center; flex-wrap:wrap; }
  .tour-navigation .tour-nav-home,.tour-navigation summary { padding:8px 12px; font-size:21px; }
  #main-wrap .container { padding:26px 30px; }
  #footer-wrap .site-copyright { margin-left:30px; margin-right:30px; }
}

@media (max-width:640px) {
  #header-wrap > .container { padding:0 16px; }
  #header-wrap #header { height:46px; }
  #header-right .search { display:none; }
  #header-wrap #header-right .wsite-social { gap:8px; }
  #nav-wrap .container > table { padding:14px 16px 12px; }
  #nav-wrap #logo img { max-width:180px; }
  .has-mobile-menu .tour-menu-toggle {
    display:flex; align-items:center; justify-content:space-between; width:100%;
    min-height:44px; padding:8px 14px; border:1px solid #d6e4c9; border-radius:9px;
    background:#edf3e6; color:#294b2b; font:700 22px/1.3 'Rabiohead',sans-serif;
    cursor:pointer;
  }
  .tour-menu-toggle svg { width:22px; height:22px; }
  .tour-menu-toggle:focus-visible { outline:2px solid #496432; outline-offset:3px; }
  .has-mobile-menu .tour-navigation { display:none; }
  .has-mobile-menu .tour-navigation.is-expanded { display:flex; }
  .tour-navigation { flex-direction:column; align-items:stretch; gap:4px; padding-top:8px; }
  .tour-nav-group { width:100%; }
  .tour-navigation .tour-nav-home,.tour-navigation summary { min-height:44px; font-size:22px; justify-content:space-between; }
  .tour-nav-group::after { display:none; }
  #nav-wrap .container .tour-nav-submenu {
    position:static; width:100%; margin:4px 0 6px; padding:4px 8px;
    border-radius:8px; background:#f7f9f4; box-shadow:none;
  }
  #nav-wrap .container .tour-nav-group:not([open]) > .tour-nav-submenu { display:none; }
  #nav-wrap .container .tour-nav-submenu a { min-height:44px; box-sizing:border-box; padding:10px 12px; font-size:19px; }
  #main-wrap .container { padding:22px 18px 28px; min-height:0; }
  #wsite-content h1 { font-size:30px; line-height:1.2; }
  #wsite-content h2 { line-height:1.25; }
  #wsite-content font[size="7"] { font-size:30px; }
  #wsite-content font[size="6"] { font-size:25px; }
  #wsite-content font[size="5"] { font-size:22px; }
  #wsite-content font[size="4"] { font-size:18px; }
  #wsite-content div.paragraph,#wsite-content p { line-height:1.6; }
  #wsite-content .wsite-multicol-table-wrap { margin:0!important; }
  #wsite-content .wsite-multicol-table,
  #wsite-content .wsite-multicol-tbody,
  #wsite-content .wsite-multicol-tr,
  #wsite-content .wsite-multicol-col { display:block; width:100%!important; box-sizing:border-box; }
  #wsite-content .wsite-multicol-col { padding:0!important; }
  #wsite-content .wsite-image { padding-left:0!important; padding-right:0!important; }
  #wsite-content .wsite-image a { max-width:100%; }
  #wsite-content .wsite-image img { max-width:100%!important; }
  #wsite-content [class$="-table-wrap"] { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  #wsite-content article table { min-width:580px; font-size:16px; }
  #wsite-content article th,#wsite-content article td { padding:10px; }
  .article-photo { margin:18px 0 22px; }
  .article-photo figcaption { font-size:14px; }
  #footer-wrap .container { padding-top:10px; padding-bottom:10px; }
  #footer-wrap .site-copyright { margin:0 18px; padding:12px 0 4px; }
  #footer-wrap .site-copyright-brand { font-size:22px; }
  #footer-wrap .site-copyright-legal { font-size:16px; }
}
