/* Responsive styles are restricted to phones and touch tablets. No print overrides. */
@media screen and (max-width:767px), screen and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 body { -webkit-text-size-adjust:100%; }
 input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=image]), select, textarea {font-size:16px; min-height:40px; box-sizing:border-box; max-width:100%;}
 button, input[type=submit], input[type=button], .btn {min-height:40px; touch-action:manipulation;}
 .touch-table-scroll {width:calc(100vw - 32px);max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;margin:16px auto;border:1px solid #d5dce6;border-radius:8px;background:white;}
 .touch-table-scroll::before{content:"Swipe sideways to see all columns";display:block;position:sticky;left:0;padding:8px 12px;text-align:left;font-size:12px;color:#53657d;background:#f3f6fa;}
 .touch-table-scroll > table {width:100%;margin:0;table-layout:auto;}
 .touch-table-scroll th,.touch-table-scroll td {padding:10px 12px;line-height:1.45;font-size:14px;}
 .touch-table-scroll th {white-space:nowrap;}
 .touch-table-scroll:focus-visible {outline:3px solid #2fa8df;outline-offset:2px;}
 .modal {max-width:calc(100vw - 24px);}
 .modal-body {max-height:70vh;overflow:auto;}
}
@media screen and (max-width:767px){
 input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=image]),select,textarea{font-size:16px!important;}
 .modal:not(.overlayPageContent){left:12px!important;right:12px!important;width:auto!important;margin-left:0!important;}
 .modal-dialog{width:auto;margin:10px 0;}
}
@media screen and (max-width:767px), screen and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 body{margin:0;background:#f3f6fa;font-size:14px;}
 .callout_main,.main_page{width:100%;background:#f3f6fa;}
 #quick_menu{width:100%;border:0;background:#182b52;}
 #quick_menu>tbody>tr{display:block;}
 #quick_menu .quick_menu_left{display:block;width:auto!important;white-space:normal;padding:18px 20px;font-size:15px;line-height:1.6;}
 #quick_menu .header_title{display:block;font-size:20px;color:#fff;font-weight:600;}
 #quick_menu td.quick_menu_tabs{display:block;width:100%;}
 #quick_menu table.quick_menu_tabs{display:block;width:100%;background:#21385e;border:0;}
 #quick_menu table.quick_menu_tabs>tbody{display:block;}
 #quick_menu table.quick_menu_tabs>tbody>tr{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px 12px;gap:4px;}
 #quick_menu .quick_menu_tab{display:block;height:auto;padding:0;border:0;background:none;text-align:center;white-space:normal;}
 #quick_menu .quick_menu_tab a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:8px;font-size:13px;line-height:1.35;border-radius:6px;}
 #quick_menu .quick_menu_tab a:hover,#quick_menu .quick_menu_tab a:focus-visible{background:#33537f;}
 #quick_menu .quick_menu_tab a span{display:none;}
 .touch-module-layout{display:block;width:auto!important;margin:16px;}
 .touch-module-layout>tbody,.touch-module-layout>tbody>tr,.touch-module-layout>tbody>tr>td{display:block;width:auto!important;padding:0;}
 table.main_menu{display:block;width:100%;height:auto;min-height:0;max-height:none;margin:0 0 20px;}
 table.main_menu>tbody{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
 table.main_menu>tbody>tr{display:block;min-width:0;}
 table.main_menu td{display:block;height:auto;background:#fff;border:1px solid #dce3ed;border-radius:7px;}
 table.main_menu td a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:5px 7px;box-sizing:border-box;font-size:13px;line-height:1.3;color:#253c5e;text-align:center;white-space:normal;}
 table.main_menu .main_menu_selected{background:#182b52;border-color:#182b52;}
 table.main_menu .main_menu_selected a{color:#fff;}
 table.touch-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px;width:100%;}
 table.touch-groups>tbody,table.touch-groups>tbody>tr{display:contents;}
 table.touch-groups>tbody>tr>.menu_group_headers{grid-column:var(--group-column);grid-row:1;width:auto;min-width:0;background:#fff;border:1px solid #dce3ed;border-bottom:2px solid #2fa8df;border-radius:9px 9px 0 0;padding:12px;}
 .menu_group_headers table{background:transparent;border:0;width:100%;}
 .menu_group_headers_text{font-size:15px;line-height:1.4;}
 .menu_group_headers img{width:24px;height:24px;object-fit:contain;margin-right:6px;}
 table.touch-groups>tbody>tr>.menu_group_items{grid-column:var(--group-column);grid-row:2;min-width:0;width:auto;padding:6px 12px 12px;background:#fff;border:1px solid #dce3ed;border-top:0;border-radius:0 0 9px 9px;}
 .table_index{width:100%;background:transparent;}
 .table_index .menu_group_item{padding:0;background:#fff;border-bottom:1px solid #eef1f5;}
 .menu_group_item p{margin:0;text-indent:0;font-size:0;}
 .menu_group_item a{display:block;min-height:44px;box-sizing:border-box;padding:12px 0;font-size:14px;line-height:1.45;overflow-wrap:anywhere;}
 .touch-form{width:calc(100% - 32px);max-width:100%;margin:16px auto;border-spacing:8px;}
 .touch-form td{font-size:14px;line-height:1.5;white-space:normal;}
 .page_title_text{font-size:20px;}
 .limiter,#MainOuterContainer{width:auto!important;max-width:100%;margin:0 12px;box-sizing:border-box;}
 #footer{margin-top:20px;}#footer td{padding:8px;}
}
@media screen and (max-width:600px){
 #quick_menu table.quick_menu_tabs>tbody>tr{grid-template-columns:repeat(3,minmax(0,1fr));padding:6px;}
 #quick_menu .quick_menu_left{padding:14px;}
 .touch-module-layout{margin:12px;}
 table.main_menu>tbody{grid-template-columns:repeat(2,minmax(0,1fr));}
 table.touch-groups{grid-template-columns:minmax(0,1fr);gap:0;}
 table.touch-groups>tbody>tr>.menu_group_headers,table.touch-groups>tbody>tr>.menu_group_items{grid-column:1;grid-row:auto;order:var(--group-order);}
 table.touch-groups>tbody>tr>.menu_group_items{margin-bottom:16px;}
 .touch-form:not(.touch-table-scroll table)>tbody>tr>td{display:block;width:auto!important;text-align:left;}
 #container:has(#login_box){width:calc(100% - 24px);max-width:340px;box-sizing:border-box;margin-top:24px;padding:24px 16px;}
 #login_logo img{max-width:100%;}
 .tableLogin{max-width:100%;}
}

/* Upper navigation is collapsed by default only after its Menu button is ready. */
.touch-nav-toggle { display:none; }
@media screen and (max-width:767px), screen and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 html body button.touch-nav-toggle {display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:112px;margin:8px 12px;padding:10px 14px;border:1px solid #526884;border-radius:7px;background:#182b52;color:#fff;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;cursor:pointer;touch-action:manipulation;}
 html body button.touch-nav-toggle:focus-visible {outline:3px solid #2fa8df;outline-offset:3px;}
 #quick_menu .quick_menu_left .touch-nav-toggle{float:right;margin:0 0 8px 16px;background:#29446d;border-color:#6881a3;}
 #quick_menu .quick_menu_left{min-height:62px;box-sizing:border-box;}
 #quick_menu .quick_menu_left:after{content:"";display:block;clear:both;}
 #quick_menu,
 #quick_menu>tbody,
 #quick_menu>tbody>tr,
 #quick_menu>tbody>tr>td{height:auto!important;min-height:0!important;overflow:visible!important;}
 #quick_menu .quick_menu_tabs.touch-nav-panel[data-touch-nav-open="true"]{display:block!important;position:relative!important;clear:both!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;z-index:20;background:#21385e!important;box-shadow:0 6px 14px rgba(10,25,50,.24);}
 #quick_menu .quick_menu_tabs.touch-nav-panel[data-touch-nav-open="true"]>tbody,
 #quick_menu .quick_menu_tabs.touch-nav-panel[data-touch-nav-open="true"]>tbody>tr{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;}
 html body #navbar.touch-nav-panel[data-touch-nav-open="false"],
 html body #quick_menu .touch-nav-panel[data-touch-nav-open="false"],
 html body .touch-nav-panel[data-touch-nav-open="false"]{display:none!important;}
 .global-nav > .touch-nav-toggle{float:right;}
 .global-nav > .row{clear:both;}
 #topMenus.touch-nav-panel[data-touch-nav-open="true"]{height:auto!important;overflow:visible!important;}
 table.hdrTabBg.touch-nav-panel[data-touch-nav-open="true"],table.level2Bg.touch-nav-panel[data-touch-nav-open="true"]{display:block;max-width:100%;overflow-x:auto;}
}

/* 2026-11-12 fix: the theme pins the quick-menu tables at height:28px, so the opened tab grid
   overflowed onto the module buttons. Let the whole bar grow with its rows. */
@media screen and (max-width:767px), screen and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 html body #quick_menu td.quick_menu_tabs,
 html body #quick_menu table.quick_menu_tabs,
 html body #quick_menu table.quick_menu_tabs>tbody,
 html body #quick_menu table.quick_menu_tabs>tbody>tr,
 html body #quick_menu .quick_menu_tab{height:auto!important;min-height:0;max-height:none!important;overflow:visible!important;white-space:normal;}
 html body #quick_menu td.quick_menu_tabs.touch-nav-panel[data-touch-nav-open="true"]{padding:0;border-bottom:3px solid #2fa8df;}
 html body #quick_menu table.quick_menu_tabs{border-bottom:0;background:#21385e;}
 html body #quick_menu table.quick_menu_tabs>tbody>tr{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:12px 16px 14px;box-sizing:border-box;}
 html body #quick_menu .quick_menu_tab{padding:0;border:0;background:none!important;}
 html body #quick_menu .quick_menu_tab a{min-height:48px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:8px;font-size:14px;color:#fff;}
 html body #quick_menu .quick_menu_tab a:active{background:#2fa8df;}
}
@media screen and (min-width:1000px) and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 html body #quick_menu table.quick_menu_tabs>tbody>tr{grid-template-columns:repeat(7,minmax(0,1fr));}
}
@media screen and (max-width:600px){
 html body #quick_menu table.quick_menu_tabs>tbody>tr{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px 12px 12px;}
 html body #quick_menu .quick_menu_tab a{font-size:13px;padding:6px;}
}
@media screen and (max-width:767px), screen and (max-device-width:1366px) and (hover:none) and (pointer:coarse) {
 html body .menu_group_headers table{width:auto;margin:0;}
 html body .menu_group_headers{text-align:left;}
 html body .menu_group_headers table td{padding:0 4px 0 0;width:auto;}
 html body .menu_group_items .menu_group_items{display:block;padding:0!important;margin:0;background:none!important;border:0!important;}
 html body .menu_group_items>table:not(.table_index){width:100%;background:none;border-spacing:0;}
 html body .menu_group_items>table:not(.table_index)>tbody>tr>td{padding:0;}
}
