/*
 * Bootstrap 3 -> 5 compatibility layer (UBAP theme)
 * Loaded AFTER Bootstrap 5.3.8 and BEFORE the theme's own CSS (style.css, responsive.css).
 * The theme was built on a customised Bootstrap 3.3.7. This file restores the BS3 base
 * styles, grid sizing and navbar/utility classes the theme's CSS and markup rely on,
 * so the site looks the same while running Bootstrap 5.
 * Rules marked "BS3:" are copied from the theme's original bootstrap.min.css.
 */

/* ---- Bootstrap 5 defaults that BS3 didn't have ---- */
:root { scroll-behavior: auto; }
body { color: #000; }              /* BS5 sets #212529; this BS3 build left text at the browser default */
hr { opacity: 1; color: inherit; }
legend { float: none; }
ol, ul { padding-left: 40px; }     /* BS5 uses 2rem, which is 20px with BS3's 10px root size */

/* ---- BS3: base typography & normalize (element selectors only) ---- */
html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}
body{margin:0}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}
audio,canvas,progress,video{display:inline-block;vertical-align:baseline}
audio:not([controls]){display:none;height:0}
[hidden],template{display:none}
a{background-color:transparent}
a:active,a:hover{outline:0}
abbr[title]{border-bottom:1px dotted}
b,strong{font-weight:700}
dfn{font-style:italic}
h1{margin:.67em 0;font-size:2em}
mark{color:#000;background:#ff0}
small{font-size:80%}
sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:1em 40px}
hr{height:0;box-sizing:content-box}
pre{overflow:auto}
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}
button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}
button{overflow:visible}
button,select{text-transform:none}
button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
input{line-height:normal}
input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}
input[type=search]{box-sizing:content-box;-webkit-appearance:textfield}
fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}
legend{padding:0;border:0}
textarea{overflow:auto}
optgroup{font-weight:700}
table{border-spacing:0;border-collapse:collapse}
td,th{padding:0}
:after,:before{box-sizing:border-box}
html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;background-color:#fff}
button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}
a{color:#337ab7;text-decoration:none}
a:focus,a:hover{color:#23527c;text-decoration:underline}
a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
figure{margin:0}
img{vertical-align:middle}
hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}
[role=button]{cursor:pointer}
h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}
h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:400;line-height:1;color:#777}
h1,h2,h3{margin-top:20px;margin-bottom:10px}
h1 small,h2 small,h3 small{font-size:65%}
h4,h5,h6{margin-top:10px;margin-bottom:10px}
h4 small,h5 small,h6 small{font-size:75%}
h1{font-size:36px}
h2{font-size:30px}
h3{font-size:24px}
h4{font-size:18px}
h5{font-size:14px}
h6{font-size:12px}
p{margin:0 0 10px}
small{font-size:85%}
mark{padding:.2em;background-color:#fcf8e3}
ol,ul{margin-top:0;margin-bottom:10px}
ol ol,ol ul,ul ol,ul ul{margin-bottom:0}
dl{margin-top:0;margin-bottom:20px}
dd,dt{line-height:1.42857143}
dt{font-weight:700}
dd{margin-left:0}
abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}
blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}
blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}
blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}
blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}
address{margin-bottom:20px;font-style:normal;line-height:1.42857143}
code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}
code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}
kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}
kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}
pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}
pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}
table{background-color:transparent}
caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}
th{text-align:left}
fieldset{min-width:0;padding:0;margin:0;border:0}
legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}
label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}
input[type=search]{box-sizing:border-box}
input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}
input[type=file]{display:block}
input[type=range]{display:block;width:100%}
select[multiple],select[size]{height:auto}
input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}
input[type=search]{-webkit-appearance:none}
fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}

/* ---- Grid: BS3 sizing on BS5's flex grid ---- */
/* Markup was converted: col-xs-* -> col-*, col-sm-* -> col-md-*, col-md-* -> col-lg-*, col-lg-* -> col-xl-*,
   which keeps BS3's 768/992/1200px breakpoints. */
.container, .container-fluid, .row { --bs-gutter-x: 30px; }
.container { max-width: none; }
@media (min-width: 576px)  { .container { max-width: none; } }
/* Live BS3 css has a stray brace that voids the 750/970 container widths, so the container stays fluid below 1200px */
@media (min-width: 768px)  { .container { max-width: none; } }
@media (min-width: 992px)  { .container { max-width: none; } }
@media (min-width: 1200px) { .container { max-width: 1170px; } }
@media (min-width: 1400px) { .container { max-width: 1170px; } }
/* BS5 styles every direct child of .row as a column; BS3 only styled .col-* children */
.row > :where(:not([class^="col"]):not([class*=" col-"])) {
	flex-shrink: 1; width: auto; max-width: none; padding-right: 0; padding-left: 0; margin-top: 0;
}
/* BS3 columns were position:relative with min-height:1px */
.col, .col-auto, [class^="col-"], [class*=" col-"] { position: relative; min-height: 1px; }

/* BS3 rows were floats, so columns kept their own height; BS5 flex rows stretch them to match */
.row { align-items: flex-start; }
/* BS3 containers cleared their floated children */
.container:before, .container:after, .container-fluid:before, .container-fluid:after { display: table; content: " "; }
.container:after, .container-fluid:after { clear: both; }

/* ---- Navbar: undo BS5 flex layout so the BS3 navbar rules below apply as before ---- */
.navbar { display: block; flex-wrap: nowrap; align-items: normal; justify-content: normal; padding: 0; }
.navbar > .container, .navbar > .container-fluid { display: block; flex-wrap: nowrap; align-items: normal; justify-content: normal; }
.nav, .navbar-nav { display: block; flex-wrap: nowrap; flex-direction: initial; }
.navbar-brand { margin-right: 0; white-space: normal; color: inherit; }
.navbar-collapse { flex-basis: auto; flex-grow: 0; align-items: normal; }

/* ---- BS3: navbar, nav, affix, page-header ---- */
.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}
.nav{padding-left:0;margin-bottom:0;list-style:none}
.nav>li{position:relative;display:block}
.nav>li>a{position:relative;display:block;padding:10px 15px}
.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}
.nav>li>a>img{max-width:none}
.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}
@media (min-width:768px){.navbar{border-radius:4px}}
@media (min-width:768px){.navbar-header{float:left}}
.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.navbar-collapse.in{overflow-y:auto}
@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse{padding-right:0;padding-left:0}}
.navbar-fixed-top .navbar-collapse{max-height:340px}
@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse{max-height:200px}}
.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}
@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}
.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}
@media (min-width:768px){.navbar-fixed-top{border-radius:0}}
.navbar-fixed-top{top:0;border-width:0 0 1px}
.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}
.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}
.navbar-brand>img{display:block}
@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}
.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:33px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}
.navbar-toggle:focus{outline:0}
.navbar-toggle .icon-bar{display:block;width:25px;height:4px;border-radius:1px}
.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}
@media (min-width:768px){.navbar-toggle{display:none}}
.navbar-nav{margin:7.5px -15px}
.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:16px}
@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px}}
@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}
.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before{display:table;content:" "}
.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after{clear:both}
.affix{position:fixed}
.navbar-inverse{background-color:#222;border-color:#080808}
.navbar-inverse .navbar-brand{color:#9d9d9d}
.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}
.navbar-inverse .navbar-nav>li>a{color:#FFF}
.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}
.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}
.navbar-inverse .navbar-toggle{border-color:#333}
.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}
.navbar-inverse .navbar-toggle .icon-bar{background-color:#75b433}
.navbar-inverse .navbar-collapse{border-color:#101010}

/* ---- BS3: .btn base metrics ---- */
.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}
.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}
.btn.active,.btn:active{background-image:none;outline:0;box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}

/* ---- BS3: responsive visibility & hide utilities (.hidden, .visible-xs, .hidden-xs ...) ---- */
.hide{display:none!important}
.hidden{display:none!important}
.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}
.visible-lg-block,.visible-md-block,.visible-sm-block,.visible-xs-block{display:none!important}
@media (max-width:767px){.visible-xs{display:block!important}}
@media (max-width:767px){.visible-xs-block{display:block!important}}
@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}}
@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}
@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}}
@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}
@media (min-width:1200px){.visible-lg{display:block!important}}
@media (min-width:1200px){.visible-lg-block{display:block!important}}
@media (max-width:767px){.hidden-xs{display:none!important}}
@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}
@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}
@media (min-width:1200px){.hidden-lg{display:none!important}}

/* BS3 .close (used by .close-btn) */
.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2}
.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5}
button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}

/* BS3 rows were plain blocks: rows holding no columns (e.g. the mobile menu close button row) keep block flow so floats work */
.row:not(:has(> [class^="col"], > [class*=" col-"])){display:block}
.row:not(:has(> [class^="col"], > [class*=" col-"])):before,.row:not(:has(> [class^="col"], > [class*=" col-"])):after{display:table;content:" "}
.row:not(:has(> [class^="col"], > [class*=" col-"])):after{clear:both}

/* Below 768px BS3 stacked sm/md/lg columns as plain blocks (margins collapse, floats overflow).
   Rows with no xs (col-N) columns keep that block flow instead of flex. */
@media (max-width: 767.98px) {
.row:not(:has(> :is([class^="col-1"],[class*=" col-1"],[class^="col-2"],[class*=" col-2"],[class^="col-3"],[class*=" col-3"],[class^="col-4"],[class*=" col-4"],[class^="col-5"],[class*=" col-5"],[class^="col-6"],[class*=" col-6"],[class^="col-7"],[class*=" col-7"],[class^="col-8"],[class*=" col-8"],[class^="col-9"],[class*=" col-9"]))){display:block}
.row:not(:has(> :is([class^="col-1"],[class*=" col-1"],[class^="col-2"],[class*=" col-2"],[class^="col-3"],[class*=" col-3"],[class^="col-4"],[class*=" col-4"],[class^="col-5"],[class*=" col-5"],[class^="col-6"],[class*=" col-6"],[class^="col-7"],[class*=" col-7"],[class^="col-8"],[class*=" col-8"],[class^="col-9"],[class*=" col-9"]))):before,.row:not(:has(> :is([class^="col-1"],[class*=" col-1"],[class^="col-2"],[class*=" col-2"],[class^="col-3"],[class*=" col-3"],[class^="col-4"],[class*=" col-4"],[class^="col-5"],[class*=" col-5"],[class^="col-6"],[class*=" col-6"],[class^="col-7"],[class*=" col-7"],[class^="col-8"],[class*=" col-8"],[class^="col-9"],[class*=" col-9"]))):after{display:table;content:" "}
.row:not(:has(> :is([class^="col-1"],[class*=" col-1"],[class^="col-2"],[class*=" col-2"],[class^="col-3"],[class*=" col-3"],[class^="col-4"],[class*=" col-4"],[class^="col-5"],[class*=" col-5"],[class^="col-6"],[class*=" col-6"],[class^="col-7"],[class*=" col-7"],[class^="col-8"],[class*=" col-8"],[class^="col-9"],[class*=" col-9"]))):after{clear:both}
}

/* BS5 reboot sets svg{vertical-align:middle}; BS3 left it at baseline */
svg{vertical-align:baseline}
.navbar-collapse.show{overflow-y:auto}
