/* Native interactions and responsive fixes around the source's measured visual rules. */
html { overflow-x: clip; }
body { margin: 0; }
.consult-link { position: fixed; top: 50%; right: 2px; transform: translateY(-50%); z-index: 10000; width: 160px; height: 52px; }
.consult-link img { display: block; width: 160px; height: 52px; }
[hidden] { display: none !important; }
a:focus-visible, button:focus-visible, input:focus-visible, [tabindex]:focus-visible { outline: 2px solid #0076bc; outline-offset: 4px; }
.nav > ul > li:hover > .er-sub, .nav > ul > li:focus-within > .er-sub { display: block; }
.er-sub li { background: #fff; }
.er-sub li:hover { background: #80ffca; }
.banner .swiper-container { position: relative; height: 100%; }
.banner .swiper-wrapper, .banner .swiper-slide { width: 100%; height: 100%; }
.banner .swiper-slide img { width: 100%; object-fit: cover; }
.swiper-pagination { position: absolute; z-index: 2; bottom: 13px; left: 0; right: 0; display: flex; justify-content: center; gap: 7px; }
.swiper-pagination-bullet { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #072643; opacity: .5; cursor: pointer; }
.swiper-pagination-bullet-active { opacity: 1; background: #80ffca; }
.mySwiper .swiper-wrapper { display: grid; grid-template-columns: repeat(6, 1fr); grid-auto-rows: auto; }
.mySwiper .swiper-slide { min-width: 0; height: 147px; text-align: center; }
.mySwiper .swiper-slide a { display: inline-block; }
.khleft,.khright,.js-pos,#imgVerify { cursor: pointer; }
@media (min-width: 768px) { .khleft,.khright { display: none !important; } }
.js-pos:focus-visible { outline-offset: 6px; }
.cxbg { clear: both; overflow-x: auto; }
.cxbg table { width: 100%; }
.cxbg td a { color: #0054c5; text-decoration: underline; }
.certificate-file { padding: 20px 0; }
.certificate-file a { color: #0054c5; text-decoration: underline; }
.query-status { margin: 18px 0; color: #6b7280; font-size: 14px; }
.topsearch input:disabled { opacity: .6; cursor: wait; }
.verification-error { position: fixed; inset: 0; background: #fff; z-index: 100000; color: #333; font: 14px Arial, sans-serif; }
.verification-error > div { max-width: 600px; margin: 150px auto; padding: 30px; }
.verification-error p:first-child { font-size: 24px; margin-bottom: 24px; }
.verification-error button { padding: 0; background: none; color: #2e8bcc; border: 0; text-decoration: underline; cursor: pointer; font: inherit; }
.local-search { min-height: 50vh; padding: 40px 50px 70px; }
.local-search h1 { color: #0054c5; font-size: 28px; }
.local-search form { display: flex; gap: 12px; margin: 24px 0; }
.local-search input { width: 380px; max-width: 70%; border: 1px solid #ddd; padding: 10px; }
.local-search button { background: #0054c5; color: white; border: none; padding: 10px 25px; }
.local-search li { padding: 18px 0; border-bottom: 1px solid #ddd; }
.local-search li a { color: #0054c5; font-size: 19px; }
.local-search li p { line-height: 1.7; margin-top: 9px; color: #777; }
@media (max-width: 1199px) {
  .hdr.mobile-open { display: block; }
  .nav > ul > li:hover > .er-sub, .nav > ul > li:focus-within > .er-sub { display: none; }
  .nav > ul > li.menu-expanded > .er-sub { display: block; }
}
@media (max-width: 767px) {
  .mySwiper .swiper-wrapper { grid-template-columns: repeat(2, 1fr); }
  .mySwiper .swiper-slide { margin-bottom: 30px; }
  .cxbg { -webkit-overflow-scrolling: touch; }
  .row-main .col-r { min-width: 0; }
  .m-txt2 img { max-width: 100%; height: auto; }
  .m-txt2 table { max-width: 100%; }
  .local-search { padding: 30px 20px; }
  #backToTop { right: 16px; bottom: 30px; transform: scale(.7); transform-origin: bottom right; }
  .verification-error > div { margin-top: 100px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
