/*
Theme Name: Hannover Mod
Theme URI: https://florianbrinkmann.de/wordpress-themes/hannover/
Author: Florian Brinkmann
Author URI: https://florianbrinkmann.de
Version: 1.0.8
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hannover
*/

html {
	background-color: transparent;
}

body {
  font-size: 24px;
  font-family: 'Crimson Text', serif;
  color: #dbd3ce;
  background-color: #3a3430;
  transition: background-color 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
}

@media screen and (min-width: 720px) {
	body {
		font-size: 16px;
	}
}

@media screen and (min-width: 22em) {
  body {
    padding: 0;
  }
}

a {
  color: #fff;
}

html #wpadminbar {
	display: none !important;
}

@media screen and (max-width: 719px) {
	.page-template-template-gallery:before {
		content: '';
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 150vh;
		opacity: .8;
		transform: scale3d(0);
		transition: background-color 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms, transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
		z-index: 1;
	}
	
	.page-template-template-gallery {
		background-color: #372f26 !important;
	}
}

.page-template-default #content {
	padding-left: 6%;
	padding-right: 6%;
	margin-top: 2rem;
}

#header .site-branding {
    max-width: 65%;
}

#header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 6%;
  padding-right: 6%;
  margin-bottom: 0;
}

.page-template-template-gallery #header {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 5;
}

@media screen and (min-width: 720px) {
	#header {
		flex-wrap: nowrap;
	}
}

#header:after {
	display: none;
}

#header, #content, #footer {
  max-width: none;
}

.page-template-template-gallery #content {
	height: 100vh;
	position: absolute;
	top:0;
}


.mobile #content {
	height: auto;
	position: relative;
}

@media screen and (min-width: 720px) {
	#header .primary-menu {
		margin-top: 0;
	}
	#content {
  		overflow: hidden;
	}
}

#footer {
	padding-top: 0;
}

.site-branding {
  font-family: 'Crimson Text', sans-serif;
  margin-right: 25px;
}

.site-branding > a {
	text-decoration: none;
}

.site-title {
	margin-top: .5rem;
	margin-bottom: .5rem !important;
	font-size: 26px !important;
}

main {
	height: inherit;
}

@media screen and (min-width: 1300px) {
	main:only-child {
		max-width: initial;
	}
}

@media screen and (max-width: 719px) {
	nav.toggled-on {
		flex-basis: 100%;
	}
}

.nav-expanded-bg {
	overflow: hidden;
}

.nav-expanded-bg:before {
	background-color: #3a3430;
}

.menu-item a {
	text-decoration: none;
	opacity: .5;
}

.menu-item:hover a {
	opacity: 1;
}

.current-menu-item a {
	opacity: 1;
}

@media screen and (max-width: 719px) {
	.menu-item a {
		transition: 450ms cubic-bezier(0.23, 1, 0.32, 1);
	}
.menu-item:hover,
.menu-item:focus {
	background-color: #fff;
}

.menu-item:hover a,
.menu-item:focus a {
	color: #372f26;
}
}
@media screen and (min-width: 720px) {

.menu-item a:after {
	position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 1px;
    background: #fff;
    content: '';
    opacity: 0;
    transition: height 0.3s, opacity 0.3s, transform 0.3s;
    transform: translateY(-10px);
}

.menu-item:hover a:after,
.menu-item:focus a:after {
	height: 2px;
    opacity: 1;
    transform: translateY(0);
}
	
	.current-menu-item a:after {
		position: absolute;
    	top: 100%;
    	left: 0;
    	width: 100%;
    	height: 2px;
    	background: #fff;
    	content: '';
		opacity: 1;
    	transition: height 0.3s, opacity 0.3s, transform 0.3s;
    	transform: translateY(0);
	}
}

@media screen and (max-width: 719px) {
	.js #header nav.toggled-on {
		margin-left: 0;
	}
	
	.menu-item {
		text-align: center;
	}
	.menu-item {
		opacity: 0;
		margin-top: -1rem;
		text-decoration: none;
		transition: 450ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	
	.toggled-on .menu-item {
		opacity: 1;
		margin-top: 0;
	}
	
	.menu-item:nth-child(2) {
		transition-delay: 50ms
	}
	.menu-item:nth-child(3) {
		transition-delay: 100ms
	}
	.menu-item:nth-child(3) {
		transition-delay: 150ms
	}
	.menu-item:nth-child(4) {
		transition-delay: 200ms
	}
	.menu-item:nth-child(5) {
		transition-delay: 250ms
	}
	.menu-item:nth-child(6) {
		transition-delay: 300ms
	}
	.menu-item:nth-child(7) {
		transition-delay: 350ms
	}
} 

[class^='post-'] {
	height: inherit;
}

.page-template-template-gallery .entry-content {
	height: inherit;
	display: flex;
	align-items: center;
}

.gallery-wrapper {
	margin: 0 auto;
	/*max-width: 845px;*/
    display: flex;
    align-items: center;
}

@media screen and (min-width: 720px) {
	.gallery-wrapper {
		width: 100vw;
		height: 100vh;
	}
}

.gallery {
    display: flex;
	align-items: center;
    flex-direction: column;
}

@media screen and (max-width: 719px) {
	.gallery {
		width: auto !important;
		transform: none !important;
	}
}

.gallery-item {
    padding: 1em 0 1em 0;
    float: none;
	user-select: none;
}

.gallery-item:first-child {
	padding-top: 0;
}

.gallery-item img {
    display: block;
    max-width: 100%;
    height: auto;
}

.gallery-icon {
    overflow: hidden;
}

.gallery-icon > img {
	border-radius: 3px;
}

.gallery-icon.portrait {
	width: 45vw;
	display: flex;
	justify-content: center;
}

.mobile .gallery-icon.portrait {
	width: 82vw;
}

.gallery-icon > img {
	width: auto;
}

.gallery-icon.landscape > img {
	width: 100%;
} 

@media screen and (min-width: 720px) {
	.gallery {
		flex-direction: row;
 	 	transition: transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
	}
	.isResizing .gallery {
		transition: none;
	}

	.gallery-item {
		display: flex;
    	align-items: center;
    	justify-content: center;
		padding: 0;
		width: 60vw;
		height: 100vh;
	  	flex: 1 1 0;
	}
	
	.gallery-item:first-child {
		padding-left: 0;
	}
	
	.gallery-item:not(.active) .gallery-icon {
	  filter: grayscale(1);
	  opacity: .7;
	  transform: scale(.7);
	}

	.gallery-item img {
	  max-width: none;
	  min-height: 100px;
	}
	
	.gallery-icon {
		transition: 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
	}
}

@media screen and (max-width: 100em) {
    .galleries {
      display: block;
      white-space: normal;
    }
}

.nav-slides {
	display: none;
}

@media screen and (min-width: 720px) {
	.nav-slides {
		display: block;
		position: relative;
		height: 0;
		right: 0;
		width: 100%;
	}
}

.btn-scroll {
	position: absolute;
    top: 0;
    bottom: 0;
    width: 30%;
	height: calc(100vh - 3.375rem);
    display: flex;
    align-items: center;
	opacity: .5;
	z-index: 1;
}

.btn-scroll:hover {
	opacity: 1;
}

.btn-scroll:focus {
	outline: none;
}

.btn-scroll[disabled] {
	transition: 450ms cubic-bezier(0.72, 0, 0.87, 0) 0ms;
}

.btn-scroll:not([disabled]) {
	transition: 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
}

.prev {
	left: 0;
}

.prev .icon-prev {
	transform: translateX(2rem);
	transition: transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
}

.prev:hover .icon-prev{
	transform: translateX(0);
}

.prev[disabled] {
	transform: translateX(-100%);
}

.next {
	right: 0;
	justify-content: flex-end;
}

.next .icon-next {
	transform: translateX(-2rem);
	transition: transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
}

.next:hover .icon-next {
	transform: translateX(0);
}

.next[disabled] {
	transform: translateX(100%);
}

.icon-prev,
.icon-next {
	width: 48px;
	height: 48px;
}

.main-link { position: relative; margin-right: 20px; display: inline-block; }	 	 
.main-link .link-title { color: white; text-decoration: none; position: absolute; bottom: 20px; z-index: 1; right: 10px; font-size: 2em; }	 	 
.main-link:hover { opacity: 0.8; }



/* Commercial sub-site */

.page-template-commercial {
	background-color: #fff;
	color: #333;
	margin-top: 64px;
}

.page-template-commercial a {
	color: #333;
}

.page-template-commercial #header {
	background: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .25);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.page-template-commercial #header:after {
	display: none;
}

.page-template-commercial #header .site-branding .site-title {
	margin-bottom: 0;
}

.page-template-commercial #header .primary-menu {
	margin-top: 0;
}

.page-template-commercial .site-branding > a {
	text-decoration: none;
}

main.commercial {
  width: 100%;
}

main.commercial .entry-content {
  text-align: center;
}

main.commercial .entry-content h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 18px;
}

main.commercial .entry-content p {
  max-width: 900px;
  padding: 0 30px;
  font-size: 20px;
  margin: 0 auto 18px auto;
}

main.commercial .entry-content p img {
  margin: 0 7px;
  height: auto;
}

.icon-mail,
.icon-phone,
.icon-facebook {
	width: 1rem;
	margin-right: 1rem;
}

.wp-block-image img {
	height: auto;
}

.d-flex {
	display: flex;
}

.align-items-center {
	align-items: center;
}

.mb-5 {
	margin-bottom: 5rem;
}

.wpcf7-form-control {
	background-color: transparent;
	border: 2px solid #5e5955;
    border-radius: 0.25rem;
}

input, textarea {
	font-family: 'Crimson Text', serif;
	font-weight: 400;
	color: #dbd3ce;
}

input:hover, input:focus, input:active, textarea:hover, textarea:focus, textarea:active {
	border-color: #7e7974;
}

.wpcf7-form-control:focus,
.wpcf7-form-control:active {
	outline: none;
	border: 2px solid #7e7974;
}

.wpcf7 form .wpcf7-response-output {
	border: none;
	border-radius: 0.25rem;
	padding: 1rem 0.75rem; 
	background-color: rgb(255 185 0 / 24%);
	margin-left:0;
	margin-right : 0;
}

.wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	
}

.sign-aka {
	width: 10rem;
	height: auto;
	fill: #dbd3ce;
}

.form-label {
	font-weight: 700;
	color: #7c726b;
}

input[type=submit].wpcf7-submit {
	min-width: 10rem;
	background-color: transparent;
	border: 2px solid #5e5955;
	color: #dbd3ce;
	text-transform: uppercase;
}

input[type=submit].wpcf7-submit:hover {
	border-color: #7e7974;
}


.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 0.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  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);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 4.16666667%;
}

.col-2 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-3 {
  flex: 0 0 auto;
  width: 12.5%;
}

.col-4 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-5 {
  flex: 0 0 auto;
  width: 20.83333333%;
}

.col-6 {
  flex: 0 0 auto;
  width: 25%;
}

.col-7 {
  flex: 0 0 auto;
  width: 29.16666667%;
}

.col-8 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-9 {
  flex: 0 0 auto;
  width: 37.5%;
}

.col-10 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-11 {
  flex: 0 0 auto;
  width: 45.83333333%;
}

.col-12 {
  flex: 0 0 auto;
  width: 50%;
}

.col-13 {
  flex: 0 0 auto;
  width: 54.16666667%;
}

.col-14 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-15 {
  flex: 0 0 auto;
  width: 62.5%;
}

.col-16 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-17 {
  flex: 0 0 auto;
  width: 70.83333333%;
}

.col-18 {
  flex: 0 0 auto;
  width: 75%;
}

.col-19 {
  flex: 0 0 auto;
  width: 79.16666667%;
}

.col-20 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-21 {
  flex: 0 0 auto;
  width: 87.5%;
}

.col-22 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-23 {
  flex: 0 0 auto;
  width: 95.83333333%;
}

.col-24 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 4.16666667%;
}

.offset-2 {
  margin-left: 8.33333333%;
}

.offset-3 {
  margin-left: 12.5%;
}

.offset-4 {
  margin-left: 16.66666667%;
}

.offset-5 {
  margin-left: 20.83333333%;
}

.offset-6 {
  margin-left: 25%;
}

.offset-7 {
  margin-left: 29.16666667%;
}

.offset-8 {
  margin-left: 33.33333333%;
}

.offset-9 {
  margin-left: 37.5%;
}

.offset-10 {
  margin-left: 41.66666667%;
}

.offset-11 {
  margin-left: 45.83333333%;
}

.offset-12 {
  margin-left: 50%;
}

.offset-13 {
  margin-left: 54.16666667%;
}

.offset-14 {
  margin-left: 58.33333333%;
}

.offset-15 {
  margin-left: 62.5%;
}

.offset-16 {
  margin-left: 66.66666667%;
}

.offset-17 {
  margin-left: 70.83333333%;
}

.offset-18 {
  margin-left: 75%;
}

.offset-19 {
  margin-left: 79.16666667%;
}

.offset-20 {
  margin-left: 83.33333333%;
}

.offset-21 {
  margin-left: 87.5%;
}

.offset-22 {
  margin-left: 91.66666667%;
}

.offset-23 {
  margin-left: 95.83333333%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }

  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
  }

  .col-sm-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-sm-3 {
    flex: 0 0 auto;
    width: 12.5%;
  }

  .col-sm-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-sm-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
  }

  .col-sm-6 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-sm-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
  }

  .col-sm-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-sm-9 {
    flex: 0 0 auto;
    width: 37.5%;
  }

  .col-sm-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-sm-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
  }

  .col-sm-12 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-sm-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
  }

  .col-sm-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-sm-15 {
    flex: 0 0 auto;
    width: 62.5%;
  }

  .col-sm-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-sm-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
  }

  .col-sm-18 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-sm-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
  }

  .col-sm-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-sm-21 {
    flex: 0 0 auto;
    width: 87.5%;
  }

  .col-sm-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-sm-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
  }

  .col-sm-24 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 4.16666667%;
  }

  .offset-sm-2 {
    margin-left: 8.33333333%;
  }

  .offset-sm-3 {
    margin-left: 12.5%;
  }

  .offset-sm-4 {
    margin-left: 16.66666667%;
  }

  .offset-sm-5 {
    margin-left: 20.83333333%;
  }

  .offset-sm-6 {
    margin-left: 25%;
  }

  .offset-sm-7 {
    margin-left: 29.16666667%;
  }

  .offset-sm-8 {
    margin-left: 33.33333333%;
  }

  .offset-sm-9 {
    margin-left: 37.5%;
  }

  .offset-sm-10 {
    margin-left: 41.66666667%;
  }

  .offset-sm-11 {
    margin-left: 45.83333333%;
  }

  .offset-sm-12 {
    margin-left: 50%;
  }

  .offset-sm-13 {
    margin-left: 54.16666667%;
  }

  .offset-sm-14 {
    margin-left: 58.33333333%;
  }

  .offset-sm-15 {
    margin-left: 62.5%;
  }

  .offset-sm-16 {
    margin-left: 66.66666667%;
  }

  .offset-sm-17 {
    margin-left: 70.83333333%;
  }

  .offset-sm-18 {
    margin-left: 75%;
  }

  .offset-sm-19 {
    margin-left: 79.16666667%;
  }

  .offset-sm-20 {
    margin-left: 83.33333333%;
  }

  .offset-sm-21 {
    margin-left: 87.5%;
  }

  .offset-sm-22 {
    margin-left: 91.66666667%;
  }

  .offset-sm-23 {
    margin-left: 95.83333333%;
  }

  .g-sm-0,
.gx-sm-0 {
    --bs-gutter-x: 0;
  }

  .g-sm-0,
.gy-sm-0 {
    --bs-gutter-y: 0;
  }

  .g-sm-1,
.gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-sm-1,
.gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-sm-2,
.gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-sm-2,
.gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-sm-3,
.gx-sm-3 {
    --bs-gutter-x: 1rem;
  }

  .g-sm-3,
.gy-sm-3 {
    --bs-gutter-y: 1rem;
  }

  .g-sm-4,
.gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-sm-4,
.gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-sm-5,
.gx-sm-5 {
    --bs-gutter-x: 3rem;
  }

  .g-sm-5,
.gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
  }

  .col-md-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-md-3 {
    flex: 0 0 auto;
    width: 12.5%;
  }

  .col-md-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-md-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
  }

  .col-md-6 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-md-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
  }

  .col-md-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-md-9 {
    flex: 0 0 auto;
    width: 37.5%;
  }

  .col-md-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-md-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
  }

  .col-md-12 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-md-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
  }

  .col-md-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-md-15 {
    flex: 0 0 auto;
    width: 62.5%;
  }

  .col-md-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-md-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
  }

  .col-md-18 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-md-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
  }

  .col-md-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-md-21 {
    flex: 0 0 auto;
    width: 87.5%;
  }

  .col-md-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-md-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
  }

  .col-md-24 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 4.16666667%;
  }

  .offset-md-2 {
    margin-left: 8.33333333%;
  }

  .offset-md-3 {
    margin-left: 12.5%;
  }

  .offset-md-4 {
    margin-left: 16.66666667%;
  }

  .offset-md-5 {
    margin-left: 20.83333333%;
  }

  .offset-md-6 {
    margin-left: 25%;
  }

  .offset-md-7 {
    margin-left: 29.16666667%;
  }

  .offset-md-8 {
    margin-left: 33.33333333%;
  }

  .offset-md-9 {
    margin-left: 37.5%;
  }

  .offset-md-10 {
    margin-left: 41.66666667%;
  }

  .offset-md-11 {
    margin-left: 45.83333333%;
  }

  .offset-md-12 {
    margin-left: 50%;
  }

  .offset-md-13 {
    margin-left: 54.16666667%;
  }

  .offset-md-14 {
    margin-left: 58.33333333%;
  }

  .offset-md-15 {
    margin-left: 62.5%;
  }

  .offset-md-16 {
    margin-left: 66.66666667%;
  }

  .offset-md-17 {
    margin-left: 70.83333333%;
  }

  .offset-md-18 {
    margin-left: 75%;
  }

  .offset-md-19 {
    margin-left: 79.16666667%;
  }

  .offset-md-20 {
    margin-left: 83.33333333%;
  }

  .offset-md-21 {
    margin-left: 87.5%;
  }

  .offset-md-22 {
    margin-left: 91.66666667%;
  }

  .offset-md-23 {
    margin-left: 95.83333333%;
  }

  .g-md-0,
.gx-md-0 {
    --bs-gutter-x: 0;
  }

  .g-md-0,
.gy-md-0 {
    --bs-gutter-y: 0;
  }

  .g-md-1,
.gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-md-1,
.gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-md-2,
.gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-md-2,
.gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-md-3,
.gx-md-3 {
    --bs-gutter-x: 1rem;
  }

  .g-md-3,
.gy-md-3 {
    --bs-gutter-y: 1rem;
  }

  .g-md-4,
.gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-md-4,
.gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-md-5,
.gx-md-5 {
    --bs-gutter-x: 3rem;
  }

  .g-md-5,
.gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-lg-3 {
    flex: 0 0 auto;
    width: 12.5%;
  }

  .col-lg-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-lg-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
  }

  .col-lg-6 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-lg-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
  }

  .col-lg-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-lg-9 {
    flex: 0 0 auto;
    width: 37.5%;
  }

  .col-lg-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-lg-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
  }

  .col-lg-12 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-lg-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
  }

  .col-lg-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-lg-15 {
    flex: 0 0 auto;
    width: 62.5%;
  }

  .col-lg-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-lg-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
  }

  .col-lg-18 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-lg-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
  }

  .col-lg-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-lg-21 {
    flex: 0 0 auto;
    width: 87.5%;
  }

  .col-lg-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-lg-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
  }

  .col-lg-24 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 4.16666667%;
  }

  .offset-lg-2 {
    margin-left: 8.33333333%;
  }

  .offset-lg-3 {
    margin-left: 12.5%;
  }

  .offset-lg-4 {
    margin-left: 16.66666667%;
  }

  .offset-lg-5 {
    margin-left: 20.83333333%;
  }

  .offset-lg-6 {
    margin-left: 25%;
  }

  .offset-lg-7 {
    margin-left: 29.16666667%;
  }

  .offset-lg-8 {
    margin-left: 33.33333333%;
  }

  .offset-lg-9 {
    margin-left: 37.5%;
  }

  .offset-lg-10 {
    margin-left: 41.66666667%;
  }

  .offset-lg-11 {
    margin-left: 45.83333333%;
  }

  .offset-lg-12 {
    margin-left: 50%;
  }

  .offset-lg-13 {
    margin-left: 54.16666667%;
  }

  .offset-lg-14 {
    margin-left: 58.33333333%;
  }

  .offset-lg-15 {
    margin-left: 62.5%;
  }

  .offset-lg-16 {
    margin-left: 66.66666667%;
  }

  .offset-lg-17 {
    margin-left: 70.83333333%;
  }

  .offset-lg-18 {
    margin-left: 75%;
  }

  .offset-lg-19 {
    margin-left: 79.16666667%;
  }

  .offset-lg-20 {
    margin-left: 83.33333333%;
  }

  .offset-lg-21 {
    margin-left: 87.5%;
  }

  .offset-lg-22 {
    margin-left: 91.66666667%;
  }

  .offset-lg-23 {
    margin-left: 95.83333333%;
  }

  .g-lg-0,
.gx-lg-0 {
    --bs-gutter-x: 0;
  }

  .g-lg-0,
.gy-lg-0 {
    --bs-gutter-y: 0;
  }

  .g-lg-1,
.gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-lg-1,
.gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-lg-2,
.gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-lg-2,
.gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-lg-3,
.gx-lg-3 {
    --bs-gutter-x: 1rem;
  }

  .g-lg-3,
.gy-lg-3 {
    --bs-gutter-y: 1rem;
  }

  .g-lg-4,
.gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-lg-4,
.gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-lg-5,
.gx-lg-5 {
    --bs-gutter-x: 3rem;
  }

  .g-lg-5,
.gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
  }

  .col-xl-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xl-3 {
    flex: 0 0 auto;
    width: 12.5%;
  }

  .col-xl-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-xl-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
  }

  .col-xl-6 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-xl-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
  }

  .col-xl-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xl-9 {
    flex: 0 0 auto;
    width: 37.5%;
  }

  .col-xl-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-xl-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
  }

  .col-xl-12 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-xl-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
  }

  .col-xl-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xl-15 {
    flex: 0 0 auto;
    width: 62.5%;
  }

  .col-xl-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-xl-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
  }

  .col-xl-18 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-xl-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
  }

  .col-xl-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xl-21 {
    flex: 0 0 auto;
    width: 87.5%;
  }

  .col-xl-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-xl-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
  }

  .col-xl-24 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 4.16666667%;
  }

  .offset-xl-2 {
    margin-left: 8.33333333%;
  }

  .offset-xl-3 {
    margin-left: 12.5%;
  }

  .offset-xl-4 {
    margin-left: 16.66666667%;
  }

  .offset-xl-5 {
    margin-left: 20.83333333%;
  }

  .offset-xl-6 {
    margin-left: 25%;
  }

  .offset-xl-7 {
    margin-left: 29.16666667%;
  }

  .offset-xl-8 {
    margin-left: 33.33333333%;
  }

  .offset-xl-9 {
    margin-left: 37.5%;
  }

  .offset-xl-10 {
    margin-left: 41.66666667%;
  }

  .offset-xl-11 {
    margin-left: 45.83333333%;
  }

  .offset-xl-12 {
    margin-left: 50%;
  }

  .offset-xl-13 {
    margin-left: 54.16666667%;
  }

  .offset-xl-14 {
    margin-left: 58.33333333%;
  }

  .offset-xl-15 {
    margin-left: 62.5%;
  }

  .offset-xl-16 {
    margin-left: 66.66666667%;
  }

  .offset-xl-17 {
    margin-left: 70.83333333%;
  }

  .offset-xl-18 {
    margin-left: 75%;
  }

  .offset-xl-19 {
    margin-left: 79.16666667%;
  }

  .offset-xl-20 {
    margin-left: 83.33333333%;
  }

  .offset-xl-21 {
    margin-left: 87.5%;
  }

  .offset-xl-22 {
    margin-left: 91.66666667%;
  }

  .offset-xl-23 {
    margin-left: 95.83333333%;
  }

  .g-xl-0,
.gx-xl-0 {
    --bs-gutter-x: 0;
  }

  .g-xl-0,
.gy-xl-0 {
    --bs-gutter-y: 0;
  }

  .g-xl-1,
.gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xl-1,
.gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xl-2,
.gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xl-2,
.gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xl-3,
.gx-xl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xl-3,
.gy-xl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xl-4,
.gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xl-4,
.gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xl-5,
.gx-xl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xl-5,
.gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }

  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }

  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }

  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }

  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }

  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xxl-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
  }

  .col-xxl-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xxl-3 {
    flex: 0 0 auto;
    width: 12.5%;
  }

  .col-xxl-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

  .col-xxl-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
  }

  .col-xxl-6 {
    flex: 0 0 auto;
    width: 25%;
  }

  .col-xxl-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
  }

  .col-xxl-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xxl-9 {
    flex: 0 0 auto;
    width: 37.5%;
  }

  .col-xxl-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .col-xxl-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
  }

  .col-xxl-12 {
    flex: 0 0 auto;
    width: 50%;
  }

  .col-xxl-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
  }

  .col-xxl-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xxl-15 {
    flex: 0 0 auto;
    width: 62.5%;
  }

  .col-xxl-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

  .col-xxl-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
  }

  .col-xxl-18 {
    flex: 0 0 auto;
    width: 75%;
  }

  .col-xxl-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
  }

  .col-xxl-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xxl-21 {
    flex: 0 0 auto;
    width: 87.5%;
  }

  .col-xxl-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

  .col-xxl-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
  }

  .col-xxl-24 {
    flex: 0 0 auto;
    width: 100%;
  }

  .offset-xxl-0 {
    margin-left: 0;
  }

  .offset-xxl-1 {
    margin-left: 4.16666667%;
  }

  .offset-xxl-2 {
    margin-left: 8.33333333%;
  }

  .offset-xxl-3 {
    margin-left: 12.5%;
  }

  .offset-xxl-4 {
    margin-left: 16.66666667%;
  }

  .offset-xxl-5 {
    margin-left: 20.83333333%;
  }

  .offset-xxl-6 {
    margin-left: 25%;
  }

  .offset-xxl-7 {
    margin-left: 29.16666667%;
  }

  .offset-xxl-8 {
    margin-left: 33.33333333%;
  }

  .offset-xxl-9 {
    margin-left: 37.5%;
  }

  .offset-xxl-10 {
    margin-left: 41.66666667%;
  }

  .offset-xxl-11 {
    margin-left: 45.83333333%;
  }

  .offset-xxl-12 {
    margin-left: 50%;
  }

  .offset-xxl-13 {
    margin-left: 54.16666667%;
  }

  .offset-xxl-14 {
    margin-left: 58.33333333%;
  }

  .offset-xxl-15 {
    margin-left: 62.5%;
  }

  .offset-xxl-16 {
    margin-left: 66.66666667%;
  }

  .offset-xxl-17 {
    margin-left: 70.83333333%;
  }

  .offset-xxl-18 {
    margin-left: 75%;
  }

  .offset-xxl-19 {
    margin-left: 79.16666667%;
  }

  .offset-xxl-20 {
    margin-left: 83.33333333%;
  }

  .offset-xxl-21 {
    margin-left: 87.5%;
  }

  .offset-xxl-22 {
    margin-left: 91.66666667%;
  }

  .offset-xxl-23 {
    margin-left: 95.83333333%;
  }

  .g-xxl-0,
.gx-xxl-0 {
    --bs-gutter-x: 0;
  }

  .g-xxl-0,
.gy-xxl-0 {
    --bs-gutter-y: 0;
  }

  .g-xxl-1,
.gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xxl-1,
.gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xxl-2,
.gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xxl-2,
.gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xxl-3,
.gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xxl-3,
.gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xxl-4,
.gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xxl-4,
.gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xxl-5,
.gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xxl-5,
.gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}