/* ==========================================================================
   bs5-compat.css — Bootstrap 3 -> 5 migration bridge
   This template's markup uses Bootstrap 3's FLOAT-based grid (columns are not
   always wrapped in a flex .row), its visibility helpers, panels and a custom
   float navbar. Bootstrap 5 replaced all of that with flexbox, so we re-create
   the Bootstrap-3 behaviour here. Load LAST (after BS5 + the template CSS) so
   it wins. BS3 breakpoints kept: xs 0-767, sm 768-991, md 992-1199, lg >=1200.
   ========================================================================== */

/* ---- Reboot overrides: BS5 underlines links and adds dropdown carets ----- */
a{text-decoration:none}
a:hover,a:focus{text-decoration:none}
.dropdown-toggle::after{display:none}   /* template reuses .dropdown-toggle on plain links */
/* dark footer copyright links: BS5's default blue is invisible on dark bg */
.section-copyrights a{color:#fff}
.section-copyrights a:hover{color:#fd7e4b}

/* ---- Bootstrap 3 float grid (overrides BS5 flexbox grid) ----------------- */
.row{display:block;margin-right:-15px;margin-left:-15px}
.row::before,.row::after{content:" ";display:table}
.row::after{clear:both}
.row>*{flex:0 0 auto;width:auto;max-width:none}            /* neutralise BS5 .row>* {width:100%} */
[class*="col-"]{position:relative;min-height:1px;padding-right:15px;padding-left:15px}
a[class*="col-"]{display:block}   /* anchors used as grid columns (e.g. video tiles) */

/* xs (all widths, the mobile-first base) */
.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}
.col-xs-12{width:100%}.col-xs-11{width:91.66667%}.col-xs-10{width:83.33333%}.col-xs-9{width:75%}
.col-xs-8{width:66.66667%}.col-xs-7{width:58.33333%}.col-xs-6{width:50%}.col-xs-5{width:41.66667%}
.col-xs-4{width:33.33333%}.col-xs-3{width:25%}.col-xs-2{width:16.66667%}.col-xs-1{width:8.33333%}

@media (min-width:768px){
  .col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}
  .col-sm-12{width:100%}.col-sm-11{width:91.66667%}.col-sm-10{width:83.33333%}.col-sm-9{width:75%}
  .col-sm-8{width:66.66667%}.col-sm-7{width:58.33333%}.col-sm-6{width:50%}.col-sm-5{width:41.66667%}
  .col-sm-4{width:33.33333%}.col-sm-3{width:25%}.col-sm-2{width:16.66667%}.col-sm-1{width:8.33333%}
}
@media (min-width:992px){
  .col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}
  .col-md-12{width:100%}.col-md-11{width:91.66667%}.col-md-10{width:83.33333%}.col-md-9{width:75%}
  .col-md-8{width:66.66667%}.col-md-7{width:58.33333%}.col-md-6{width:50%}.col-md-5{width:41.66667%}
  .col-md-4{width:33.33333%}.col-md-3{width:25%}.col-md-2{width:16.66667%}.col-md-1{width:8.33333%}
}
@media (min-width:1200px){
  .col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}
  .col-lg-12{width:100%}.col-lg-11{width:91.66667%}.col-lg-10{width:83.33333%}.col-lg-9{width:75%}
  .col-lg-8{width:66.66667%}.col-lg-7{width:58.33333%}.col-lg-6{width:50%}.col-lg-5{width:41.66667%}
  .col-lg-4{width:33.33333%}.col-lg-3{width:25%}.col-lg-2{width:16.66667%}.col-lg-1{width:8.33333%}
}
/* column offsets (removed in BS5; e.g. committee-members centers its table with col-md-offset-1) */
.col-xs-offset-0{margin-left:0}.col-xs-offset-1{margin-left:8.33333%}.col-xs-offset-2{margin-left:16.66667%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-4{margin-left:33.33333%}.col-xs-offset-5{margin-left:41.66667%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-7{margin-left:58.33333%}.col-xs-offset-8{margin-left:66.66667%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-10{margin-left:83.33333%}.col-xs-offset-11{margin-left:91.66667%}
@media (min-width:768px){.col-sm-offset-0{margin-left:0}.col-sm-offset-1{margin-left:8.33333%}.col-sm-offset-2{margin-left:16.66667%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333%}.col-sm-offset-5{margin-left:41.66667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.33333%}.col-sm-offset-8{margin-left:66.66667%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333%}.col-sm-offset-11{margin-left:91.66667%}}
@media (min-width:992px){.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.33333%}.col-md-offset-2{margin-left:16.66667%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333%}.col-md-offset-5{margin-left:41.66667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.33333%}.col-md-offset-8{margin-left:66.66667%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333%}.col-md-offset-11{margin-left:91.66667%}}
@media (min-width:1200px){.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.33333%}.col-lg-offset-2{margin-left:16.66667%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333%}.col-lg-offset-5{margin-left:41.66667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.33333%}.col-lg-offset-8{margin-left:66.66667%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333%}.col-lg-offset-11{margin-left:91.66667%}}
.container,.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}
.container::before,.container::after,.container-fluid::before,.container-fluid::after{content:" ";display:table}
.container::after,.container-fluid::after{clear:both}
@media (min-width:768px){.container{width:750px;max-width:100%}}
@media (min-width:992px){.container{width:970px}}
@media (min-width:1200px){.container{width:1170px}}

/* ---- BS3 visibility helpers --------------------------------------------- */
@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}}
.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}
@media (max-width:767px){.visible-xs{display:block!important}}
@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}}
@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}}
@media (min-width:1200px){.visible-lg{display:block!important}}

/* ---- float / misc utilities --------------------------------------------- */
.clearfix::before,.clearfix::after{content:" ";display:table}
.clearfix::after{clear:both}
.pull-left{float:left!important}
.pull-right{float:right!important}
.center-block{display:block;margin-left:auto;margin-right:auto}
.img-responsive{display:block;max-width:100%;height:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}

/* ---- panels (removed in BS5; used by the SEVAS card grid) ---------------- */
.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.05)}
.panel-default{border-color:#ddd}
.panel-body{padding:0}
.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}
.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}

/* ---- navbar bridge: restore BS3 float header from BS5 flexbox ------------ */
.navbar{position:relative;display:block;padding:0;margin-bottom:0;border:none}
.navbar::after{content:"";display:table;clear:both}   /* contain floated logo + menu so the header band has height */
.navbar .container,.navbar .container-fluid{display:block}
.navbar .container::after,.navbar .container-fluid::after{content:"";display:table;clear:both}
.navbar-nav{display:block;padding-left:0;margin:0;list-style:none}
.navbar-nav>li{position:relative;display:block;float:left}
.navbar-nav>li>a{position:relative;display:block;padding-left:15px;padding-right:15px}   /* menu.css sets 30px vertical; restore BS3's horizontal spacing */
.navbar-header{float:left}
.navbar-header::after{content:"";display:table;clear:both}
@media (min-width:992px){
  .navbar-collapse.collapse{display:block!important;height:auto!important;overflow:visible!important}
  #header .navbar-nav{float:left}
}
.navbar-nav .dropdown-menu{position:absolute;display:none;float:left;min-width:200px;margin-top:0;background:#fff;border:1px solid #e4e4e4;border-radius:0;list-style:none;padding:5px 0;z-index:1000}
.navbar-nav .dropdown-menu>li{display:block;float:none}
.navbar-nav .dropdown-menu>li>a{display:block;padding:8px 30px;color:#727272;white-space:nowrap;text-decoration:none}
.navbar-nav .dropdown-menu>li>a:hover{color:#242424;background:#f7f7f7}
@media (min-width:992px){.navbar-nav li.dropdown:hover>.dropdown-menu{display:block}}
.navbar-nav .dropdown.open>.dropdown-menu{display:block}   /* opened by click/tap (site.js) */
@media (max-width:991px){
  .navbar-nav>li{float:none}
  .navbar-collapse.collapse:not(.show){display:none}
  .navbar-collapse.collapse.show{display:block}
  /* mobile menu panel (the #navbar dropdown) */
  #navbar.navbar-collapse{width:100%;background:#fff;border-top:3px solid #cc4117;box-shadow:0 12px 20px rgba(0,0,0,.14);max-height:78vh;overflow-y:auto!important;padding:0!important;margin:0}
  #navbar .navbar-nav{margin:0;width:100%}
  #navbar .navbar-nav>li{float:none;width:100%}
  #navbar .navbar-nav>li>a{display:block;padding:13px 18px;border-bottom:1px solid #f1f1f1;color:#2b2b2b;font-size:15px;font-weight:500}
  #navbar .navbar-nav>li>a:hover,#navbar .navbar-nav>li>a:focus{background:#fff3ee;color:#cc4117}
  #navbar .dropdown-menu{position:static;float:none;display:block;border:0;box-shadow:none;background:#faf7f5;padding:0;margin:0}
  #navbar .dropdown-menu>li>a{display:block;padding:11px 18px 11px 36px;font-size:14px;color:#555;border-bottom:1px solid #f1f1f1}
  #navbar .dropdown-menu>li>a:hover{background:#fff3ee;color:#cc4117}
  #navbar .dropdown>.dropdown-toggle .caret{float:right;margin-top:9px}
  /* hamburger open state */
  .navbar-fixed-top .navbar-toggle.is-open .icon-bar{background:#cc4117 !important}
  /* other (#header) collapses' dropdowns stay inline on mobile too */
  .navbar-nav .dropdown-menu{position:static;float:none;display:block;border:0;box-shadow:none;background:transparent}
}
.navbar-toggle{position:relative;float:right;padding:9px 10px;margin:8px;background-color:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer}
.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px;background:#888}
.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}

/* ---- owl-carousel galleries: JS removed -> show items as a static row ---- */
.owl-carousel{display:flex!important;flex-wrap:wrap;gap:10px;visibility:visible!important;opacity:1!important;width:auto}
.owl-carousel>.item{flex:1 1 0;min-width:140px;margin:0}
.owl-carousel>.item img{display:block;width:100%;height:auto;border-radius:4px}
@media (max-width:575px){.owl-carousel>.item{flex:1 1 100%}}

/* ---- table fix: responsive-leyouts.css has a buggy UNSCOPED rule -----------
   (".classes-table table, thead, tbody, th, td, tr{display:block}") that meant
   to target only .classes-table but stacks the cells of EVERY table on mobile.
   Re-assert normal table display for all non-.classes-table tables. */
table:not(.classes-table){display:table;width:100%}
table:not(.classes-table)>thead,table:not(.classes-table) thead{display:table-header-group}
table:not(.classes-table)>tbody,table:not(.classes-table) tbody{display:table-row-group}
table:not(.classes-table) tfoot{display:table-footer-group}
table:not(.classes-table) tr{display:table-row}
table:not(.classes-table) th,table:not(.classes-table) td{display:table-cell}
