ul#menu li:hover > ul, ul#menu li:focus-within > ul { visibility: visible; }
ul#menu ul { background-color: #17101e; }
img { max-width: 100%; }
button#topcontrol { position: fixed; right: 10px; bottom: 10px; z-index: 9999; width: 31px; height: 31px; padding: 0; border: 0; border-radius: 4px; color: #fff; background: #956fb8; font-size: 24px; line-height: 31px; cursor: pointer; }
a:not([href]) { cursor: default; }
.rs-slide:first-child { display: block; }
@media (max-width: 1140px) {
  #header, #custom-header-content, #footer, #bottom, .content, #hb { box-sizing: border-box; width: calc(100% - 32px); max-width: 1100px; }
  #header { min-height: 175px; }
  #menu-wrap { position: relative; top: auto; right: auto; height: auto; margin: 0; float: none; display: block; clear: both; }
  ul#menu { display: flex; flex-wrap: wrap; justify-content: center; }
  ul#menu li { margin-left: 0; }
  #slider-wrap { width: calc(100% - 24px); height: auto; padding: 0; aspect-ratio: 1088 / 388; margin-bottom: 35px; }
  #homepage-slider { width: 100% !important; height: 100% !important; margin: 0; }
  #homepage-slider .rs-slide { width: 100% !important; height: 100% !important; }
  #homepage-slider img { width: 100%; height: auto; }
  #hb-col1, #hb-col2, #hb-col3 { box-sizing: border-box; }
  .entry { overflow-wrap: anywhere; }
  #bg-wrap { display: block; width: 100%; min-width: 0; }
  #header-content { width: 100%; min-width: 0; }
}
@media (max-width: 740px) {
  #logo { float: none; text-align: center; }
  #logo img { max-width: min(100%, 295px); }
  #header { min-height: 225px; }
  ul#menu li a { padding: 0 8px; font-size: 11px; line-height: 34px; }
  ul#menu ul { top: 34px; }
  ul#menu li:last-child ul { left: auto; right: 0; }
  #hb-col1, #hb-col2, #hb-col3, #hb-col-min, #hb-col-min1, #hb-col-max, #left, #right, .footer-col, .footer-col-2 { width: 100%; float: none; margin: 0 0 24px; }
  #recent { position: relative; left: 0; top: 0; }
  #recent-wrap { min-height: 240px; }
  #copyright { width: 100%; }
  .portfolio2 { max-width: calc(50% - 10px); }
  .entry img { height: auto; }
  .col-1-2, .col-2-3, .col-1-3, .col-1-4 { max-width: 100%; }
  #footer { overflow: hidden; }
  #righty-tab { display: none; }
  #left-top, #page, #page-wrap, .entry { box-sizing: border-box; max-width: 100%; }
  #left, #right { box-sizing: border-box; display: block; min-width: 0; max-width: 100%; padding: 20px; }
  .content, .entry-content, #comments, #respond, fieldset, .r-form, .rf { box-sizing: border-box; min-width: 0; max-width: 100%; }
  .column { box-sizing: border-box; width: 100% !important; max-width: 100%; float: none; margin-right: 0; }
  .entry-content > *, .entry-content form, .entry-content input, .entry-content textarea { box-sizing: border-box; max-width: 100%; }
  .entry table { display: block; max-width: 100%; overflow-x: auto; }
  .image-xl, .image-l, .image-m, .image-s, .image-xs { box-sizing: border-box; max-width: 100%; }
  .image-xl a, .image-l a, .image-m a, .image-s a, .image-xs a { max-width: 100%; }
  .image-xl-frame, .image-l-frame, .image-m-frame, .image-s-frame, .image-xs-frame { width: calc(100% + 20px); max-width: calc(100% + 20px); background-size: 100% 100%; }
  #respond fieldset { width: 100%; }
  .rf label { float: none; display: block; width: auto; }
  .rf input, .rf textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
}
@media (max-width: 1140px) {
  #left, #right { box-sizing: border-box; display: block; float: none; width: 100%; min-width: 0; max-width: 100%; padding: 20px; margin: 0 0 24px; }
  .column { box-sizing: border-box; width: 100% !important; max-width: 100%; float: none; margin-right: 0; }
  #breadcrumb-wrap { width: 100%; max-width: 100%; box-sizing: border-box; }
  #intro { width: calc(100% - 32px); max-width: 960px; margin-inline: auto; }
  #intro .custom-image { width: 100% !important; height: auto !important; aspect-ratio: 960 / 202; box-sizing: border-box; }
  #intro-slider { width: 100% !important; height: 100% !important; }
  #intro-slider .rs-content, #intro-slider .rs-slide, #intro-slider .rs-slide-content, #intro-slider .rs-image { width: 100% !important; height: 100% !important; }
  #intro-slider img { width: 100%; height: auto; }
  #respond fieldset, #respond input, #respond textarea, #respond .submit-wrap, .rf-submit { box-sizing: border-box; min-width: 0; max-width: 100%; }
  #respond textarea, #respond .submit-wrap, .rf-submit { width: 100%; }
  .image-xl, .image-l, .image-m, .image-s, .image-xs { max-width: 100%; }
  .image-xl a, .image-l a, .image-m a, .image-s a, .image-xs a { max-width: 100%; }
  .image-xl-frame, .image-l-frame, .image-m-frame, .image-s-frame, .image-xs-frame { width: calc(100% + 20px); background-size: 100% 100%; }
  .entry object, .entry embed, .entry iframe { max-width: 100%; }
  .portfolio2-image, .portfolio2-image .caption, .portfolio2-image a { box-sizing: border-box; max-width: 100%; }
  .portfolio2-frame { left: 0; width: 100%; max-width: 100%; background-size: 100% 100%; }
}
