@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;400;600&family=Open+Sans:wght@300;400;600;800&display=swap');

:root {
    --transparent: rgba(0,0,0,0);
    /*--theme1: rgb(0, 145, 63);*/
    --theme1: rgb(235, 62, 2);
    --theme1darker: rgb(203, 54, 0);
    --theme1darkest: rgb(157, 41, 0);
    --theme2: rgb(38, 116, 201);
    --theme2darker: rgb(32, 86, 145);
    --theme2darkest: rgb(26, 56, 90);
    --theme3: rgb(52,58,64);
    --theme3darker: rgb(41, 46, 51);
    --theme3darkest: rgb(31, 35, 38);
    --themebg: #d1d7ec;
    --themebglight: #e9ebf3;
}

.btn.btn-theme1 { color: #fff; background-color: var(--theme1); border-color: var(--theme1); }
.btn.btn-theme1:hover { color: #fff; background-color: var(--theme1darker); border-color: var(--theme1darker); }
.btn.btn-theme1:focus { color: #fff; background-color: var(--theme1darker); border-color: var(--theme1darker); box-shadow: 0 0 0 0.2rem var(--theme1); }
.btn.btn-outline-theme1 { color: var(--theme1); border-color: var(--theme1);}
.btn.btn-outline-theme1:hover { color: #FFFFFF; border-color: var(--theme1); background-color: var(--theme1); }
.btn.btn-outline-theme1:focus { color: var(--theme1); border-color: var(--theme1); box-shadow: 0 0 0 0.2rem var(--theme1);}

.btn.btn-theme2 { color: #fff; background-color: var(--theme2); border-color: var(--theme2); }
.btn.btn-theme2:hover { color: #fff; background-color: var(--theme2darker); border-color: var(--theme2darker); }
.btn.btn-theme2:focus { color: #fff; background-color: var(--theme2darker); border-color: var(--theme2darker); box-shadow: 0 0 0 0.2rem var(--theme2); }
.btn.btn-outline-theme2 { color: var(--theme2); border-color: var(--theme2);}
.btn.btn-outline-theme2:hover { color: #FFFFFF; border-color: var(--theme2); var(--theme2); }
.btn.btn-outline-theme2:focus { color: var(--theme2); border-color: var(--theme2); box-shadow: 0 0 0 0.2rem var(--theme2);}

.btn.btn-theme3 { color: #fff; background-color: var(--theme3); border-color: var(--theme3); }
.btn.btn-theme3:hover { color: #fff; background-color: var(--theme3darker); border-color: var(--theme3darker); }
.btn.btn-theme3:focus { color: #fff; background-color: var(--theme3darker); border-color: var(--theme3darker); box-shadow: 0 0 0 0.2rem var(--theme3); }
.btn.btn-outline-theme3 { color: var(--theme3); border-color: var(--theme3);}
.btn.btn-outline-theme3:hover { color: #FFFFFF; border-color: var(--theme3); var(--theme3); }
.btn.btn-outline-theme3:focus { color: var(--theme3); border-color: var(--theme3); box-shadow: 0 0 0 0.2rem var(--theme3);}

.bg-theme1 {background-color: var(--theme1);}
.text-theme1 {color: var(--theme1darkest);}
.bg-theme2 {background-color: var(--theme2) !important;}
.text-theme2 {color: var(--theme2darkest);}
.bg-theme3 {background-color: var(--theme3) !important;}
.bg-theme3-darker {background-color: var(--theme3darker) !important;}
.bg-theme3-darkest {background-color: var(--theme3darkest) !important;}
.text-theme3 {color: var(--theme3darkest);}

.btn-link {color: var(--theme1darker); }
.btn-link:hover {color: var(--theme1darkest); }

:focus {outline: 2px solid #000000; z-index: 1;}
#footer :focus, #footer2 :focus {outline-color: #FFFFFF;}

h2 {font-size: 1.75rem;}
h3 {font-size: 1.5rem;}
h4 {font-size: 1.4rem;}

html {font-size: 16px;}
body {font-family: "Open Sans", sans-serif; background-color: #FFFFFF; }
.body-class {background-color: var(--themebglight); }
a {color: var(--theme1darkest)}
a:hover {color: var(--theme1darker);}
#scrolltop {display: flex; position: fixed; right: 1rem; bottom: 1rem; border: 2px solid var(--theme3); height: 3rem; width: 3rem; justify-content: center; align-items: center; color: var(--theme3); border-radius: 50%; background-color: rgba(255,255,255,.8); cursor: pointer; font-size:1.5rem; }
.hover-outline-1:hover {outline: 2px solid var(--theme1);}
.hover-outline-white:hover {outline: 2px solid #FFFFFF;}
.hover-outline-black:hover {outline: 2px solid #000000;}
.hidden {display: none !important;}

b, strong { font-weight: 600; }
b.ultra, strong.ultra { font-weight: 800; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: Montserrat, sans-serif; font-weight: 600; }


#loader {position: fixed; left:0; right:0;top:0;bottom:0; background-color:#FFFFFF;display:flex;align-items:center; justify-content: center; z-index: 999999999;}
#loader i {color: var(--theme1); font-size: 2rem;}

h1 { margin-bottom: 1rem;}

#header1 { font-size: .8rem; padding: .5rem 0; background-color: var(--themebg); }

#header2 { padding: 1rem 0; background: var(--themebg); }
#header2 .container > .row > * { align-self: stretch; align-items: center; display: flex; }
#header2 .container > .row .buttons .row { align-items: stretch; display: flex; flex: 1; }
#header2 .container > .row .buttons .row > * { align-self: stretch; align-items: center; display: flex; }
#header2 .container > .row .buttons [role="button"] { align-self: center; align-items: center; display:flex; padding: 0 15px; color: #6c757d; text-decoration: none; position: relative; flex: 1; justify-content: center; }
#header2 .container > .row .buttons [role="button"]:hover {background-color: rgba(0,0,0,0.05); z-index: 1;}
#header2 .container > .row .buttons .row > *:last-child a {border-right: 1px solid #e9ecef; }
#header2 .font-size-addon {position: relative; }
#header2 .font-size-addon .font-size-addon-sign {position: absolute; }
#header2 .font-size-addon.font-size-addon-small {font-size: .75rem; left: -.25rem;}
#header2 .font-size-addon.font-size-addon-small .font-size-addon-sign {font-size: .6rem; margin-left: -.175rem; margin-top: .3rem;}
#header2 .font-size-addon.font-size-addon-medium {;}
#header2 .font-size-addon.font-size-addon-big {font-size: 1.2rem; left: -.25rem;}
#header2 .font-size-addon.font-size-addon-big .font-size-addon-sign {font-size: .6rem; margin-left: -.25rem; margin-top: .6rem;}
#header2 .bip-logo {max-height: 20px;}

#navigation {padding: 0 1rem; }
#navigation .nav-item {flex:1 1 auto!important;}
#navigation .nav-item.active .nav-link {background-color: var(--theme1); color: var(--white); }
#navigation .nav-link {font-weight: 600; font-size: 1.25rem; color: var(--theme3); flex:1 1 auto!important; text-align: center; padding: 1rem .5rem; }
#navigation .nav-link:hover {background-color: var(--light); }

#breadcrumb {background-color: var(--theme3darkest); }
#breadcrumb ol.breadcrumb {margin: 0; padding: .75rem .5rem; background-color: var(--theme3darkest); }
#breadcrumb ol.breadcrumb > li > i {position: relative; top: 4px;}
#breadcrumb ol.breadcrumb > li.active {font-weight: 600; color: var(--white); }
#breadcrumb ol.breadcrumb a {color: var(--themebg);}
#breadcrumb ol.breadcrumb > li.active a {color: var(--white);}

#slider {padding: 1rem 0; }
#slider #carousel { box-shadow: 0 0 1.5rem rgba(0,0,0,.5);}
#slider .carousel-caption {left: 0; right: 0; bottom: 0; background-color: /*rgba(0,0,0,.75)*/ transparent; display: flex; flex-wrap: wrap; align-items: center; top: 0; justify-content: center; }
#slider .carousel-indicators {margin-bottom: 0; bottom: .5rem;}
#slider .carousel-caption .carousel-caption-inside h5 { font-size: 2.25rem; background: rgba(0,0,0,.5); display: table; padding: .25rem .5rem; margin: 0 auto; }
#slider .carousel-caption .carousel-caption-inside p { font-size: 1.25rem; display: table; background: rgba(0,0,0,.25); padding: .25rem .5rem; margin: 1rem auto 0; }

#main { background-color: #FFFFFF;}
#main > .container, #main > .container-fluid {padding: 0 15px;}
#main h1 { margin: 2rem 0 2rem;}
#sidenav .widget {margin-bottom: 2rem;}
#sidenav .menu {padding:0 0; background-color: #FFFFFF;background-clip: border-box;border: 1px solid var(--theme1darkest);border-radius: .25rem; list-style: none; margin: 0;}
#sidenav .menu ul {margin: 0; padding: 0 0 0 1rem; border-bottom: 1px solid rgba(0,0,0,0); transition: all 400ms ease;}
#sidenav .menu li {list-style:none; padding:0; margin:0;}
#sidenav .menu li a {border-radius: 0; color: #6C757D; display: block; padding: .5rem 1rem; position: relative; border: 1px solid rgba(0,0,0,0); border-width: 1px 0 0 0; transition: border-top 400ms ease; }
#sidenav .menu li a:hover, #sidenav .menu li a:focus, #sidenav .menu li a[aria-expanded="true"] {background-color: #F8F9FA; text-decoration: none; color: var(--theme1darkest); }
#sidenav .menu li a[aria-expanded="true"] {border-top: 1px solid var(--theme1);}
#sidenav .menu li a[aria-expanded="true"] + ul { border-bottom: 1px solid var(--theme1); background-color: #F8F9FA;  }
#sidenav .menu > li:last-child a[aria-expanded="true"] + ul { border-bottom: 0 none; border-radius: 0 0 .25rem .25rem;  }
#sidenav .menu li a.submenu .caret {position: absolute; right: 1rem; top: .75rem; transition: transform 400ms ease; }
#sidenav .menu li a.submenu:not([aria-expanded="true"]) .caret {transform: rotate(90deg);}
#sidenav .menu li a.active, #sidenav .menu ul.show a.active {background-color: var(--theme1); color: #FFFFFF; }
#sidenav .menu ul.show a {color: var(--theme1darkest);}
#sidenav .menu ul.show a:not(.active):hover {background-color: #f2f0f1;}
#sidenav .menu > li:first-child a {border-radius: .25rem .25rem 0 0;}
#sidenav .menu > li:last-child > a:last-child {border-radius: 0 0 .25rem .25rem;}


#sidenav ul.menu-cards { padding: 0; list-style: none; margin: 0;}
#sidenav ul.menu-cards li { padding: 0; list-style: none; margin: 0 0 .5rem 0;}
#sidenav ul.menu-cards li:last-child {margin-bottom: 0;}
#sidenav ul.menu-cards li a {padding: .25rem 0; border-radius: .25rem; border: 1px solid var(--theme1darkest); color: var(--theme1); display: flex; transition: padding 400ms ease;}
#sidenav ul.menu-cards li a:hover {text-decoration: none; padding: .25rem 0 .25rem .5rem; }
#sidenav ul.menu-cards li a .icon {font-size: 2rem; margin-top: .1rem; width: 4rem; display: inline-block; text-align: center;}
#sidenav ul.menu-cards li a .text {font-size: 1.1rem;line-height: 1.5rem;margin-top: .1rem;}

#sidenav .card-record { border-bottom: 1px solid rgba(0,0,0,.125); padding: .75rem 1.25rem;}
#sidenav .card-record:last-child {border-bottom: 0 none;}

#sidenav .pictures div {margin-bottom: .5rem; }
#sidenav .pictures img { max-width: 100%; height: auto; vertical-align: middle; border: 1px solid rgba(0,0,0,.125); border-radius: .25rem; }
#sidenav .pictures a img { opacity: 0.8; transition: opacity 400ms ease; }
#sidenav .pictures a:hover img { opacity: 1;  }

#sidenav ul.menu-buttons { padding: 0; list-style: none; margin: 0;}
#sidenav ul.menu-buttons li { padding: 0; list-style: none; margin: 0 0 .5rem 0;}
#sidenav ul.menu-buttons i { margin-right: .5rem;}

.article-record { margin-bottom: 1rem; }

.article-meta {font-size: .9rem; color: var(--theme3); padding: .5rem; border: 1px solid #dee2e6; }
.article-meta:not(.card-header) {color: var(--theme3); margin: 0 0 1rem 0; padding: .5rem; border-radius: .25rem; background-color: #f8f9fa;  }
.article-meta.card-header {border-width: 0 0 1px 0;}
.article-meta-item:not(:last-child) {padding-right: 1rem; margin-right: .5rem; border-right: 1px solid #dee2e6; }
.article-meta-item strong { color: var(--theme1darkest); }
.article-image + .article-meta { border-width: 1px 0;}

.sitemap {}
.sitemap .sitemap-item.sitemap-depth-1:not(:first-child) {margin-top: 1rem;}
.sitemap .sitemap-item.sitemap-depth-1 > a {font-weight: 600;}

.search-result {padding: 1rem 0; border-top: 1px solid #dee2e6; }
.search-result h5 {margin: 0 0 0.1rem; font-weight: 600;}
.search-result .text {margin: 0;}
.search-result .summary {font-size: .9rem; color: #6C757D; padding: .25rem 0;}

.page-item.active .page-link {background-color: var(--theme1); border-color:var(--theme1);}
.page-link {color: var(--theme1);}
.page-link:hover {color: var(--theme1darker);}
.page-link:focus {box-shadow: 0 0 0 0.2rem var(--theme1);}

.separated-card {border-bottom: 1px solid #dee2e6; padding: 0 0 1rem; margin: 0 0 1rem;}
.separated-card h2 {margin: 0;}

p.text:empty {display:none;}

#article { }
#article-content {margin-bottom: 2rem;}
#article-content img:not([class]),
#article-content img[class=""] {max-width: 100%;height: auto;vertical-align: middle;}

#case-content .case-field {margin-bottom: 1.5rem;}
#case-content .case-title {color: var(--theme1); }
#case-content .case-content {padding: .5rem 0 .5rem 1rem; border-left: 1px solid #dee2e6; }

#gallery { margin-bottom: 2rem; }
#gallery .gallery-list { border-radius: .25rem; border: 1px solid #dee2e6; padding: .5rem; }
#gallery .gallery-list .gallery-item a { position: relative; }
#gallery .gallery-list .gallery-item a:hover {opacity: 1; z-index: 1; }

#attachments {margin-bottom: 2rem;}
#attachments .attachments-list { border-radius: .25rem; border: 1px solid #dee2e6;}
#attachments .attachments-list .attachment-item:not(:last-child) {border-bottom: 1px solid #dee2e6; }
#attachments .attachments-list .attachment-item a {display: block; padding: .5rem; }
#attachments .attachments-list .attachment-item:first-child a {border-radius: .25rem .25rem 0 0;}
#attachments .attachments-list .attachment-item:last-child a {border-radius: 0 0 .25rem .25rem;}
#attachments .attachments-list .attachment-item:first-child:last-child a {border-radius: .25rem;}
#attachments .attachments-list .attachment-item a:hover {text-decoration: none; background-color: #F8F9FA; }
#attachments .attachments-list .attachment-item a strong {display: block }
#attachments .attachments-list .attachment-item a span.description {color: var(--theme3darker); display: block; }
#attachments .attachments-list .attachment-item a span.file-meta {color: var(--theme3); display: block; font-size: .9rem; }
#attachments .attachments-list .attachment-item a span.file-meta .file-meta-item:not(:last-child)::after {content: "·"; padding: 0 .25rem;}

#tags {margin-bottom: 2rem;}

#print {margin-bottom: 2rem;}

#share {margin-bottom: 2rem;}
#share a:hover {color: #FFFFFF;}
#share .icon-facebook {color: #3b5998;}
#share .icon-twitter {color: #00ACEE;}
#share .icon-google {color: #db4a39;}
#share .icon-pinterest {color: #c8232c;}
#share .icon-linkedin {color: #0e76a8;}
#share .icon-facebook:hover {background-color: #3b5998;}
#share .icon-twitter:hover {background-color: #00ACEE;}
#share .icon-google:hover {background-color: #db4a39;}
#share .icon-pinterest:hover {background-color: #c8232c;}
#share .icon-linkedin:hover {background-color: #0e76a8;}

#children {margin-bottom: 2rem;}
#contact-map {margin-bottom: 2rem;}
#contact-form {margin-bottom: 2rem;}

#cases {padding: 2rem 0; background-color: #F8F9FA}
.cases-bg {background-color: #F8F9FA; }
/*#cases h3 {font-size: 1.5rem;}*/
#cases .case-box {margin-left: -1px; margin-top: -1px; background-color: #FFFFFF;}
#cases .case-item { border: 1px solid #e9ecef; display: flex; position: relative; height: 100%; align-items: center; padding: .75rem .5rem 1rem 1rem;}
#cases .case-item.active { outline: 2px solid var(--theme1); z-index: 1;  }
#cases .case-item i {color: var(--theme1); font-size: 2rem; }
#cases .case-item strong {color: var(--theme3); font-size: 1rem; display: block; margin-left: 1rem; font-weight: 600; line-height: 1.625rem; }
#cases .case-item:hover {text-decoration: none; background-color: rgba(0,0,0,0.05); z-index:1; }
#cases .case-item:focus {z-index: 2; }

#footer {padding: 2rem 0; color: #bfbfbf;}
#footer .logo {opacity:.5;}
#footer h4 { color: #f8f9fa; }
#footer a {color: #e9ecef;}
#footer .nav {margin-top: 1rem;}
#footer .nav .nav-item {border-top: 1px solid rgba(255,255,255,.15);}
#footer .nav .nav-item:last-child {border-bottom: 1px solid rgba(255,255,255,.15); }
#footer .nav .nav-item .nav-link {padding: .3rem 1rem;}
#footer .nav .nav-item .nav-link:hover {background-color: rgba(0,0,0,.1);}

#footer2 {padding: 2rem 0; background-color: #1b1e21;}
#footer2 .item {display: flex; text-align: center;}
#footer2 .item a {color: #F8F9FA; display: flex; padding: 1rem 0; flex: 1; opacity: .8; }
#footer2 .item a:hover {background-color: var(--theme3); opacity: 1; text-decoration: none;}
#footer2 .item figure { display: flex; flex-direction: column; margin: 0; flex: 1; align-items: center; justify-content: center; }
#footer2 .item figure img {max-width: 75%; max-height: 150px; width: auto; height: auto; }
#footer2 .item figure figcaption { display: flex; margin-top: 1rem;}

#copyright {font-size: .8rem; padding: .75rem 0; color: var(--theme3);}
#copyright .separator {margin: 0 .25rem;}
#article-content figure {text-align: center;}

.product-category-record { height: calc(100% - 1rem); }
.product-category-record .product-icon-anchor { font-size: 3rem; color: var(--theme1); }
.product-category-record .product-category-anchor { color: var(--theme3); }
.full-width {width: 100vw;position: relative;margin-left: -50vw;left: 50%;}

.font-weight-medium { font-weight: 600; }
.lh-1 { line-height: 125%; display: block;  }

@media (max-width: 991px) {
    #navigation .nav-item .nav-link { padding: 0.5rem 0.5rem; }
}
@media (max-width: 767px) {
    #slider .carousel-caption .carousel-caption-inside h5 { font-size: 1.5rem; }
    #slider .carousel-caption .carousel-caption-inside p { display: none; }
}