/* GLOBAL */
body {
	color: #000;
	font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
}
a {
	color: #000;
    text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
.h1, .h2, .h3, .h4, .h5, .h6, 
h1, h2, h3, h4, h5, h6 {
	font-weight: 500;
    line-height: 1.25;
}
.h1, h1 {
	font-size: 36px;
}
.h2, h2 {
	font-size: 30px;
}
.h3, h3 {
	font-size: 24px;
}
.h4, h4 {
	font-size: 18px;
}
.h5, h5 {
	font-size: 14px;
}
.h6, h6 {
	font-size: 12px;
}
.navbar {
	--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 90, 164, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='4' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar .navbar-toggler:hover {
	--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28252, 175, 23, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='4' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-toggler:focus {
	box-shadow: none;
}
.form-control:focus,
.gt_selector:focus,
.gt_selector:focus-visible {
	box-shadow: none;
}
.btn {
	display: inline-block;
    font-size: 14px;
    font-weight: 700;
    border-radius: 20px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    box-shadow: 0;
    padding: 10px 22px;
    line-height: 1;
}
.btn:hover {
	text-decoration: none;
}
.btn-primary {
	--bs-btn-bg: #003b5d;	
	--bs-btn-hover-color: #000;
	--bs-btn-hover-bg: #fcaf17;
	--bs-btn-hover-border-color: #fcaf17;
}
.btn-secondary {
	--bs-btn-color: #000;
	--bs-btn-bg: #fec502;
	--bs-btn-border-color: transparent;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #003b5d;
	--bs-btn-hover-border-color: transparent;
}
.btn-outline-primary {
	--bs-btn-color: #003b5d;
    --bs-btn-border-color: #003b5d;
    --bs-btn-hover-color: #003b5d;
    --bs-btn-hover-bg: #fff;
    --bs-btn-hover-border-color: #b4b3b3;
}
.btn-outline-secondary {
	--bs-btn-color: #000;
	--bs-btn-bg: #ffc602;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #003b5d;
    --bs-btn-hover-border-color: transparent;	
}

/** Image inserted via ckeditor **/
.field--name-body.field--type-text-with-summary  img {
	max-width: 100%;
	height: auto;
}

.carousel-item {
    transition: transform 1s ease-in-out;
}
/** Change Carousel's next/prev buttons to Fontawesome icons
 * to easily change the colors
 */
.carousel-control-prev,
.carousel-control-next {
    height: 1.5rem;
    width: 1.5rem;    
    top: 50%;
	opacity: 1;
	padding: 0 0.5rem;
}
.carousel-control-prev {
	padding-left: 1rem;
}
.carousel-control-next {
	padding-right: 1rem;
}
.carousel-control-prev .carousel-control-prev-icon,
.carousel-control-next .carousel-control-next-icon {
	background-image: none;
	height: auto;
	width: auto;
}
.carousel-control-prev .carousel-control-prev-icon::before,
.carousel-control-next .carousel-control-next-icon::before {
	font-family: "Font Awesome 6 Free";	
	font-size: 1.5rem;
	padding-right: 0.5rem;	
	font-weight: 900;	
}
.carousel-control-prev .carousel-control-prev-icon::before {
	content: "\f104";
}
.carousel-control-next .carousel-control-next-icon::before {
	content: "\f105";
}
.carousel-indicators [data-bs-target] {
	background-color: transparent;
    width: 14px;
    height: 14px;
    margin: 0 8px;
    border: 0px none;
    opacity: 1;
    border-radius: 100%;
	border: 1px solid #a1af06;
}
.carousel-indicators [data-bs-target].active {
	background-color: #005BA3;
    width: 16px;
    height: 16px;
	border: none;
}
.banner-slider-block .js-slide-toggler {
	display: block;
	padding: 0px;
	background: transparent;
	border: 0px;
	margin: 0px 4px;
	color: #fff;
	line-height: 14px;
}

.high-contrast .carousel-indicators [data-bs-target] {
	background-color: yellow !important;
}
.high-contrast .carousel-indicators [data-bs-target].active {
	background-color: #fff !important;
}
.high-contrast .carousel-control-prev,
.high-contrast .carousel-control-next,
.high-contrast .carousel-control-prev .carousel-control-prev-icon,
.high-contrast .carousel-control-next .carousel-control-next-icon {
	background-color: transparent !important;
}
.high-contrast .carousel-control-prev .carousel-control-prev-icon::before,
.high-contrast .carousel-control-next .carousel-control-next-icon::before {
	color: yellow;	
}
@media all and (min-width: 768px) {
	.carousel-control-prev,
	.carousel-control-next {
		height: 2.5rem;
		width: 3.5rem;    
	}	
	.carousel-control-prev .carousel-control-prev-icon::before,
	.carousel-control-next .carousel-control-next-icon::before {
		font-size: 2.5rem;
	}	
}

/* LAYOUT BUILDER */
main .layout {
	--bs-gutter-x: 1.5rem;
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}
main .layout > .layout__region {
	flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
}

/* HEADER */
.navbar-brand img {
	height: 80px;
	margin: 0;
}

@media all and (min-width: 768px) {
	.navbar-brand img {
		height: 100px;
	}
}

/* MAIN */
.region-content {
	padding: 0px;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: ">";
}
.breadcrumb {
	margin: 30px 0px;
}
.breadcrumb li a {
	color: #333333;
	text-decoration: none;
}
.breadcrumb li a:hover {
	text-decoration: underline;
}
.breadcrumb li:last-child {
	color: #003b5d;
    font-weight: bold;
}

/* CANVAS */
#drupal-off-canvas-wrapper {
    width: 756px !important;
    left: auto !important;
    right: 0px;
}
#drupal-off-canvas-wrapper .paragraphs-actions .button {
	width: auto !important;
}
#drupal-off-canvas-wrapper .paragraphs-actions .paragraphs-dropdown {
	display: inline-block;
}
#drupal-off-canvas-wrapper summary {
	background: #fcaf17 !important;
}

/* MEGAMENU */
/* Make sub menu position fixed to auto */
.tbm-submenu.tbm-has-width {
	left: auto !important;
	right: auto !important;
}
.tbm-button-container span:nth-child(2), .tbm-button-container span:nth-child(3) {
	top: calc(50% - 0.15rem);
}

/** MODAL **/
.modal-dialog {
	max-width: 100vw !important;
	margin: 0;
}
.modal-header {
	border-bottom: none;
}
.modal-content {
	background-color: #e5e5e5;
	border-radius: 0;
	border: none;
}
.modal-content .container {
	padding-top: 5rem;
	padding-bottom: 5rem;
}
.modal-title {
	font-size: 1.8rem;
	font-weight: bold;
}
.modal-content .btn-close {
	background: transparent var(--bs-btn-close-bg) left/1em auto no-repeat;
	width: 4rem;
	height: 2rem;
	font-size: 0.9rem;
}

@media all and (min-width: 768px) {
	.modal-content .container {
		width: 768px;
		padding-top: 8rem;
		padding-bottom: 8rem;		
	}
}
