/*
 * mitGefühl Webelsiep (http://mitgefuehl.webelsiep.de)
 * Traumzeit Webelsiep (http://traumzeit.webelsiep.de)
 * © 2024 Melanie Webelsiep
 */

/* ----- general ----- */
:root {
	/* ----- colors ----- */
	--web-white: rgb(255, 255, 255);
	--web-white-a: rgb(255, 255, 255, 0.7);
	--web-bg: rgb(255, 235, 205);
	--web-bg-l: rgb(255, 245, 230);
	--web-bg-l-a: rgba(255, 245, 230, 0.7);
	--web-bg-d: rgb(255, 222, 173);
	--web-gray: rgb(119, 136, 156);
	--web-gray-l: rgb(211, 211, 211);
	--web-font: DarkSlateGray;

	--web-main: rgb(0, 139, 139);
	--web-main-shiny: rgba(0, 139, 139, 0.8);
	--web-main-shadow: rgba(0, 139, 139, 0.3);
	--web-main-dark: rgba(0, 102, 102, 0.8);

	--web-hightlight: MediumTurquoise;

	--web-gray: LightSlateGray;
	--web-shadow: rgba(47, 79, 79, 0.2);
	--web-shiny: rgba(255, 245, 230, 0.67);
	--web-red: rgb(211, 47, 102);

	/* ----- sizes ----- */
	--size05: 0.5rem;
	--size08: 0.8rem;
	--size1: 1rem;
	--size12: 1.2rem;
	--size15: 1.5rem;
	--size2: 2rem;
	--size3: 3rem;
	--size4: 4rem;
	--size-05: -1rem;
	--size-1: -1rem;
	--size-15: -1.5rem;
	--size-2: -2rem;
	--size-3: -3rem;
	--size-4: -4rem;
}

/* ----- preloader ----- */
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	overflow: hidden;
	background: var(--web-bg);
}

#preloader:before {
	content: "";
	position: fixed;
	top: calc(50% - 2rem);
	left: calc(50% - 2rem);
	border: 0.2rem solid var(--web-main);
	border-top-color: var(--web-hightlight);
	border-radius: 50%;
	width: var(--size4);
	height: var(--size4);
	animation: animate-preloader 1s linear infinite;
}

@keyframes animate-preloader {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

@media screen and (max-width: 768px) {
	[data-aos-delay] {
		transition-delay: 0 !important;
	}
}

/* ----- html ----- */

body {
	background-color: var(--web-bg);
	color: var(--web-font);

	font-family: "Open Sans", sans-serif;
	font-size: 1rem;

	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

a {
	color: var(--web-main);
	text-decoration: none;
}

a:hover {
	color: var(--web-hightlight);
	text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--web-main);
	font-family: "Arima", sans-serif;
	font-variant: small-caps;
	font-weight: 600;
}

input:placeholder-shown {
	font-style: italic;
}

textarea {
	resize: none;
}

select {
	overflow: auto;
}

option {
	text-align: left;
}

input:focus,
select:focus-visible,
textArea:focus-visible { 
	box-shadow: 0 0 0 .15rem var(--web-main-shadow) !important;
}

img {
	pointer-events: none;
}

table.table-fixed thead,
table.table-fixed tbody,
table.table-fixed tr,
table.table-fixed td,
table.table-fixed th {
	display: block;
}

table.table-fixed tr:after {
	content: ' ';
	display: block;
	visibility: hidden;
	clear: both;
}

table.table-fixed tbody {
	height: 10rem;
	overflow-y: auto;
}

table.table-fixed thead th,
table.table-fixed tbody td {
	float: left;
	text-wrap: nowrap;
}

table.table-fixed thead .th10,
table.table-fixed tbody .td10 {
	width: 10%;
}

table.table-fixed thead .th15,
table.table-fixed tbody .td15 {
	width: 15%;
}

table.table-fixed thead .th35,
table.table-fixed tbody .td35 {
	width: 35%;
}


table.table-fixed thead th {
	background-color: var(--web-main-dark);
	color: var(--web-white);
}

table.table-fixed thead th:first-child {
	border-top-left-radius: var(--size05);
}

table.table-fixed thead th:last-child {
	border-top-right-radius: var(--size05);
}

/* ----- editor ----- */
.imagePreview,
.iconPreview {
	display: none;
	height: var(--size3);
	font-size: var(--size15);
}

.sun-editor,
.sun-editor-common,
.se-container {
	border-radius: 0.375rem;
	font-family: inherit;
	font-size: inherit;
}

.sun-editor-editable {
	font-family: inherit;
	font-size: inherit;
	padding: var(--size05);
}

/* ----- buttons ----- */
.btn {
	font-family: "Arima", sans-serif;
	font-weight: 500;
	display: inline-block;
	padding: 0.3rem 1.2rem;
	margin: 1rem;
	border: 0.1rem solid;
	border-radius: 4rem;
	transition: 0.3s;
}

.btn:hover {
	text-decoration: none;
}

.btn:focus-visible {
	box-shadow: 0 0 0 .15rem var(--web-main-shadow);
}

.btn.btn-primary {
	color: var(--web-bg-l);
	background-color: var(--web-main-dark);
	border-color: var(--web-hightlight);
	text-wrap: nowrap;
}

.btn.btn-primary:active,
.btn.btn-primary:focus,
.btn.btn-primary:hover {
	background: var(--web-main-shiny);
	color: var(--web-white);
}

.btn.btn-primary:active {
	border-color: var(--web-main-dark);
}

.btn.btn-secondary {
	color: var(--web-main-dark);
	background-color: var(--web-bg);
	border-color: var(--web-main-dark);
	text-wrap: nowrap;
}

.btn.btn-secondary:active,
.btn.btn-secondary:focus,
.btn.btn-secondary:hover {
	color: var(--web-bg-l);
	background: var(--web-main-shiny);
	border-color: var(--web-bg-l);
}

.btn.btn-secondary:active {
	border-color: var(--web-main-dark);
}

.btn.btn-light {
	color: var(--web-main-dark);
	background-color: var(--web-shiny);
	border-color: var(--web-main-dark);
	text-wrap: nowrap;
}

.btn.btn-light:active,
.btn.btn-light:focus,
.btn.btn-light:hover {
	color: var(--web-bg-l);
	background: var(--web-main-shiny);
	border-color: var(--web-bg-l);
}

.btn.btn-light:active {
	border-color: var(--web-main-dark);
}

/* ----- icons ----- */
.text-danger i {
	margin-right: 0.2rem;
}

/* ----- text ----- */
.text-hightlight {
	color: var(--web-hightlight) !important;
}

.text-light {
	color: var(--web-bg) !important;
}

.text-main {
	color: var(--web-main) !important;
}

.white-shadow {
	text-shadow: 2px 0 3px #fff, -2px 0 3px #fff, 0 2px 3px #fff, 0 -2px 3px #fff
}

/* ----- top bar ----- */
.topbar {
	height: var(--size4);
	padding: 0;
	transition: all 0.5s;
	overflow: hidden;
	color: var(--web-bg);
	z-index: 996;
}

.topbar.topbar-scrolled {
	top: var(--size-4);
}

.topbar .topbar-container {
	display: flex;
	align-items: center;
	justify-content: center;
}

.topbar .contact-info {
	display: flex;
	align-items: center;
	gap: var(--size1);
}

.topbar .contact-info a {
	color: var(--web-bg);
	transition: all 0.2s;
}

.topbar .contact-info a:hover {
	color: var(--web-white);
}

.topbar .contact-info i {
	line-height: 0;
	margin: 0 var(--size05);
}

.topbar .start-btn {
	position: absolute;
	right: 0;
	display: block;
}

.topbar .start-btn .btn {
	margin-right: 0;
}

@media (max-width: 991px) {
	.topbar {
		font-size: var(--size08);
	}

	.topbar .topbar-container {
		padding-right: var(--size4);
	}
}

@media (max-width: 768px) {
	.topbar {
		font-size: var(--size1);
	}

	.topbar .topbar-container {
		justify-content: end;
		padding-right: 0;
	}

	.topbar .contact-info {
		align-items: end;
	}

	.topbar .contact-info a span {
		display: none;
	}

	.topbar .start-btn {
		display: none;
	}
}

/* ----- header ----- */
#header {
	background: var(--web-main-dark);
	transition: all 0.5s;
	z-index: 997;
	height: var(--size4);
	top: var(--size4);
}

#header.header-fixed,
#header.header-scrolled {
	background: var(--web-main-shiny);
	top: 0;
}

#header.header-bar {
	display: flex;
	align-items: center;
}

#header .container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#header .header-title {
	align-items: center;
	z-index: 999;
}

#header .logo {
	position: absolute;
	background-color: var(--web-white);
	outline: var(--web-main-dark) solid 2px;
	border-radius: 50%;
	height: 8rem;
	width: 8rem;
	margin-top: var(--size-15);
	transition: all 0.5s;
}

#header .logo img {
	height: 8rem;
	width: 8rem;
	transition: all 0.5s;
}

#header h1 {
	font-family: "DancingScript", sans-serif;
	font-size: var(--size3);
	font-variant: normal;
	color: var(--web-white);
	text-align: center;
	padding-left: 9rem;
	transition: all 0.5s;
}

#header p {
	position: absolute;
	font-family: "DancingScript", sans-serif;
	font-variant: normal;
	color: var(--web-white);
	text-align: center;
	padding-left: 9rem;
	margin: 0;
	transition: all 0.5s;
}

.traumzeit #header h1 {
	font-family: "Marck Script", sans-serif;
	font-weight: 500;
	margin-bottom: 0;
}

.traumzeit #header p {
	font-family: "Marck Script", sans-serif;
	margin-top: 0.2rem;
}

#header.header-scrolled p,
#header.header-fixed p {
	display: none;
}

#header.header-scrolled .logo,
#header.header-fixed .logo {
	margin-top: var(--size05);
	height: 6rem;
	width: 6rem;
}

#header.header-scrolled .logo img,
#header.header-fixed .logo img {
	height: 6rem;
	width: 6rem;
}

#header.header-scrolled h1,
#header.header-fixed h1 {
	padding-left: 7rem;
}

@media (max-width: 576px) {
	#header logo {
		margin-left: var(--size-1)
	}
}

.header-inner-pages {
	background: var(--web-hightlight) !important;
}

.topbar-inner-pages {
	background: var(--web-hightlight) !important;
}

/* ----- navigation ----- */
.navbar {
	padding: 0;
}

.navbar ul {
	margin: 0;
	padding: 0;
	display: flex;
	list-style: none;
	align-items: center;
}

.navbar li {
	position: relative;
}

.navbar>ul>li {
	position: relative;
	white-space: nowrap;
	padding: 0.6rem 0 0.6rem 1rem;
}

.navbar a,
.navbar a:focus {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0.2rem;
	font-size: var(--size1);
	color: var(--web-bg);
	white-space: nowrap;
	transition: 0.3s;
	position: relative;
}

.navbar>ul>li>a:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 0.1rem;
	bottom: -0.2rem;
	left: 0;
	background-color: var(--web-hightlight);
	visibility: hidden;
	width: 0;
	transition: all 0.3s ease-in-out 0s;
}

.navbar a:hover:before,
.navbar li:hover>a:before,
.navbar .active:before {
	visibility: visible;
	width: 100%;
}

.navbar a:hover,
.navbar .active,
.navbar .active:focus,
.navbar li:hover>a {
	color: var(--web-white);
}

/* ----- mobile navigation ----- */
.mobile-nav-toggle {
	display: none;
	color: var(--web-white);
	font-size: var(--size2);
	cursor: pointer;
	line-height: 0;
	transition: 0.5s;
}

.mobile-nav-toggle.bi-x {
	display: block;
}

@media (max-width: 767px) {
	.mobile-nav-toggle {
		display: block;
	}

	.navbar ul {
		display: none;
	}
}

.navbar-mobile {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	height: 18rem;
	width: 100%;
	min-width: 20rem;
	background: var(--web-main-shiny);
	border-bottom-left-radius: var(--size1);
	border-bottom-right-radius: var(--size1);
	transition: 0.5s;
	z-index: 998;
}

@media (min-width: 576px) {
	.navbar-mobile {
		max-width: 540px;
	}
}

@media (min-width: 768px) {
	.navbar-mobile {
		max-width: 720px;
	}
}

@media (max-width: 576px) {
	.navbar-mobile {
		top: -0.6rem;
	}
}

#header.header-scrolled .navbar-mobile {
	top: 0;
}

.navbar-mobile .mobile-nav-toggle {
	position: absolute;
	top: var(--size1);
	right: var(--size1);
}

.navbar-mobile ul {
	display: block;
	position: absolute;
	top: var(--size4);
	right: var(--size15);
	bottom: var(--size15);
	left: var(--size15);
	padding: 1rem 0;
	border-radius: 1rem;
	background-color: var(--web-bg);
	direction: rtl;
	transition: 0.3s;
}

.navbar-mobile>ul>li {
	padding: 0;
}

.navbar-mobile a,
.navbar-mobile a:focus {
	padding: 0.3rem var(--size15);
	color: var(--web-main);
}

.navbar-mobile a:hover:before,
.navbar-mobile li:hover>a:before,
.navbar-mobile .active:before {
	visibility: hidden;
}

.navbar-mobile a:hover,
.navbar-mobile .active,
.navbar-mobile li:hover>a {
	color: var(--web-hightlight);
}

/* ----- section general ----- */
section {
	padding: var(--size4) 0;
	position: relative;
	overflow: hidden;
}

.section-small {
	padding: var(--size1) 0;
}

.section-top {
	padding: var(--size4) 0 var(--size1) 0;
}

.section-light {
	background: var(--web-bg-l);
}

.section-title {
	text-align: center;
	padding-bottom: var(--size1);
}

.section-title p {
	margin-bottom: 0;
	font-style: italic;
}

@media (max-width: 768px) {
	section {
		padding: var(--size2) 0;
	}
}

/* ----- hero section ----- */
.hero {
	background: var(--web-main);
	width: 100%;
	overflow: hidden;
	padding: calc(2 * var(--size4) + var(--size15)) 0 calc(3 * var(--size15)) 0;
	z-index: 99;
	transition: 0.3s;
}

.hero.section-small {
	padding: calc(2 * var(--size4) + var(--size15)) 0 var(--size15) 0;
}

.hero.hero-carousel {
	min-height: 70vh;
	margin-bottom: var(--size-3);
}

.hero .carousel-container {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	min-height: 20rem;
	height: 50vh;
}

.hero .carousel-image::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100vw;
	z-index: -1;
}

.hero .carousel-image .carousel-background {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	width: 100vw;
	height: 100%;
	z-index: -1;
}

.hero h1,
.hero h2,
.hero h3,
.hero h4,
.hero p {
	color: var(--web-bg);
}

.hero .carousel-container h3 {
	color: var(--web-main-dark);
	font-size: var(--size15);
	font-style: italic;
}

.hero .carousel-container h2 {
	color: var(--web-main-dark);
	font-size: var(--size3);
	font-weight: 700;
}

.hero .carousel-container h3 {
	color: var(--web-main-dark);
	font-size: var(--size15);
	font-style: italic;
}

.hero .carousel-container p {
	color: var(--web-font);
	font-weight: 500;
	text-shadow: 2px 0 3px #fff, -2px 0 3px #fff, 0 2px 3px #fff, 0 -2px 3px #fff;
	width: 80%;
	margin: 0 auto 2rem auto;
	animation-delay: 0.4s;
}

.hero .carousel-control-prev,
.hero .carousel-control-next {
	width: 10%;
}

.hero .carousel-control-next-icon,
.hero .carousel-control-prev-icon {
	background: none;
	font-size: var(--size3);
	line-height: 1;
	width: auto;
	height: auto;
}

@media (min-width: 1024px) {
	.hero .carousel-container p {
		font-size: var(--size12);
		width: 60%;
	}

	.hero .carousel-control-prev,
	.hero .carousel-control-next {
		width: 5%;
	}
}

@media (max-width: 768px),
(max-height: 700px) {
	.hero .carousel-container h2 {
		font-size: var(--size2);
	}
}

/* ----- info cards ----- */
.info-cards {
	padding: 0;
	z-index: 100;
}

/* ----- card ----- */

.card {
	background: var(--web-white);
	box-shadow: 0.1rem 0.2rem var(--size05) 0 var(--web-shadow);
	border-radius: var(--size1);
	min-width: 10rem;
	min-height: 10rem;
	width: 100%;
	overflow: hidden;
}

.card h3 {
	margin-bottom: 0;
	padding: 1rem 1rem;
	color: var(--web-main);
	background: var(--web-bg-d);
	text-align: center;
}

.card .h6 {
	color: var(--web-main);
	font-family: "Arima", sans-serif;
	font-weight: 600;
}

.card .card-body {
	padding: var(--size15);
}

.card img {
	overflow: hidden;
	width: 100%;
	max-width: 10rem;
	min-width: 2rem;
	border-radius: 50%;
	margin: 0 0 var(--size15) 0;
	transition: ease-in-out 0.3s;
	box-shadow: 0.1rem 0.2rem var(--size05) 0 var(--web-shadow);
}

.card hr {
	max-width: var(--size4);
	color: var(--web-main-dark);
}

.card:hover img {
	transform: scale(1.1);
}

.card span {
	position: relative;
	font-weight: 500;
}

.card p {
	margin: var(--size05) 0 0 0;
}

.card .btn-wrap {
	background: var(--web-bg-d);
	text-align: center;
}

/* ----- card-circle ----- */

.card.card-circle {
	text-align: center;
	color: var(--web-font);
	background: var(--web-white);
	border-radius: 50%;
	width: 14rem;
	height: 14rem;
	min-width: 14rem;
	min-height: 14rem;
	padding: var(--size15);
	margin: var(--size05) 0;
	transition: all 0.3s ease-in-out;
}

.card.card-circle::before {
	content: "";
	position: absolute;
	background: url(../../img/card-circle-bg.svg) center center no-repeat;
	background-size: cover;
	width: 103%;
	height: 100%;
	top: 0;
	left: -0.3rem;
}

.card.card-circle .card-body {
	padding: var(--size05);
}

.card.card-circle .card-icon i {
	font-size: var(--size15);
	display: block;
}

.card.card-circle .card-icon i,
.card-circle {
	transition: all ease-in-out 0.2s;
}

.card.card-circle:hover i {
	text-shadow: 0px -0.1rem 0.5rem var(--web-hightlight);
	transform: scale(1.2)rotate(20deg);
}

@media (min-width: 992px) {
	.card.card-circle {
		width: 16rem;
		height: 16rem;
	}
}

@media (min-width: 1200px) {
	.card.card-circle {
		width: 18rem;
		height: 18rem;
	}

	.card.card-circle .card-body {
		padding: var(--size1);
	}
	

	.card.card-circle .card-icon i {
		font-size: var(--size2);
		margin-top: 0;
	}

	.card.card-circle p {
		font-size: var(--size12);
	}
}

/* ----- backround scroll ----- */
.services {
	background: linear-gradient(var(--web-main-shiny), var(--web-main-dark)), url("../../img/services-bg.jpg") fixed center center;
	background-size: cover;
}

.services h2 {
	color: var(--web-white);
}

@media (max-width: 576px) {
	.services {
		background-attachment: scroll;
	}
}

/* ----- publish ----- */
.publish .card img {
	overflow: hidden;
	border-radius: var(--size05);
	margin: 0 0 var(--size15) 0;
}

.publish .card a {
	height: 100%;
	display: block;
}

.publish .card .landscape a,
.publish .card .landscape img {
	width: 12rem;
	max-width: 12rem;
	margin-right: var(--size15);
}

.publish .card .portrait a,
.publish .card .portrait img {
	width: 8rem;
	max-width: 8rem;
	margin-right: var(--size15);
}

.publish .card:hover img {
	transform: scale(1.05);
}


/* ----- services ----- */
.services .accordion-list {
	width: 100%;
}

.services .accordion-list .card {
	min-height: var(--size1);
}

.services .accordion-list .accordion-list-item+.accordion-list-item {
	margin-top: var(--bs-gutter-y);
}

.services .accordion-list .accordion-list-item {
	padding: var(--size1);
}

.services .accordion-list .accordion-list-content {
	margin-top: var(--size1);
}

.services .accordion-list a {
	display: block;
	position: relative;
	line-height: 1;
	padding-right: var(--size2);
	cursor: pointer;
}

.services .accordion-list p a {
	display: inline;
	padding: 0;
}


.services .accordion-list span {
	color: var(--web-hightlight);
	font-weight: 600;
	font-size: var(--size12);
	padding-right: var(--size1);
}

.services .accordion-list i.icon-show,
.services .accordion-list i.icon-close {
	font-size: var(--size12);
	position: absolute;
	right: 0;
	top: 0;
}

.services .accordion-list .icon-show {
	display: none;
}

.services .accordion-list a.collapsed {
	color: var(--web-gray);
}

.services .accordion-list a.collapsed:hover {
	color: var(--web-hightlight);
}

.services .accordion-list a.collapsed .icon-show {
	display: inline-block;
}

.services .accordion-list a.collapsed .icon-close {
	display: none;
}

/* ----- appointment ----- */

.services .appointment ul {
	list-style: none;
	padding: 0;
}

.services .appointment li+li {
	margin-top: var(--size1);
}

.services .appointment h6 {
	font-variant: normal;
	margin: 0;
}

.services .appointment h6 small {
	font-style: italic;
	white-space: nowrap;
}

/* ----- pricing ----- */
.pricing .card {
	text-align: center;
}

.pricing h4 {
	color: var(--web-main);
	margin-bottom: 1rem;
}

.pricing h4 del {
	position: relative;
	text-decoration: none;
	margin-right: var(--size1);
}

.pricing h4 del::after {
	content:"";
	position: absolute;
	top: 40%; left: 0; width: 100%; height: 3px; 
	background: var(--web-red);
	transform: rotate(-10deg);
}

.pricing ul {
	padding: 0;
	list-style: none;
	/* color: var(--web-gray); */
	text-align: center;
}

.pricing ul li {
	padding-bottom: 0.75rem;
}

.pricing ul .na {
	color: var(--web-gray-l);
	text-decoration: line-through;
}

.pricing .featured h3 {
	color: var(--web-white);
	background: var(--web-main);
}

.pricing .advanced {
	position: absolute;
	width: 14rem;
	top: 1.5rem;
	right: -4.5rem;
	transform: rotate(45deg);
	z-index: 1;
	font-size: 0.9rem;
	padding: 0.1rem 0 0.2rem 0;
	background: var(--web-main);
	color: var(--web-white);
}

.pricing .logo {
	position: absolute;
	padding: var(--size1); 
}

.pricing img {
	height: var(--size2); 
	width: var(--size2); 
}

/* ----- experience ----- */
.experience .experience-container {
	position: relative;
}

.experience .carousel-prev,
.experience .carousel-next {
	position: absolute;
	display: flex;
	top: 0;
	bottom: 0;
	width: 15%;
	z-index: 1;
	align-items: center;
	justify-content: center;
}

.experience .carousel-prev {
	left: -2.5rem;
}

.experience .carousel-next {
	right: -2.5rem;
}

.experience .carousel-control-prev-icon,
.experience .carousel-control-next-icon {
	background-color: var(--web-main-dark);
	background-size: 2rem;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
}

.experience .carousel-control-prev-icon {
	background-position-x: 0.15rem;
}

.experience .carousel-control-next-icon {
	background-position-x: 0.35rem;
}

.experience .card-carousel {
	display: flex;
	position: relative;
	z-index: 1;
	
	height: 24rem;
	margin-bottom: var(--size2);
	transition: filter .3s ease;
	justify-content: center;
}

.experience .carousel-item.card {
	position: absolute;
	width: 24rem;
	height: 24rem;
	text-align: center;
	margin-right: 0;
}

.experience .carousel-item {
	transition: all .5s ease;
}

.experience .carousel-item.activePrev {
	display: block;
	margin-right: 50%;
	transform:scale(0.6);
	opacity: 0.5;
}

.experience .carousel-item.activeNext {
	display: block;
	margin-right: -50%;
	transform:scale(0.6);
	opacity: 0.5;
}

.experience .card-carousel.smooth-return .card {
	transition: all .5s ease;
}

.experience .card-carousel .card-img,
.experience .card-carousel .card img {
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
	margin: 0;
	border-radius: 0;
}

@media (max-width: 768px) {
	.experience .card-carousel .card {
		width: 20rem;
	}
}

@media (max-width: 576px) {
	.experience .card-carousel .card {
		width: 16rem;
	}

	.experience .carousel-prev {
		left: -1.25rem;
	}
	
	.experience .carousel-next {
		right: -1.25rem;
	}
}

.experience .card-carousel .experience-info {
	position: absolute;
	width: 100%;
	height: 8rem;
	bottom: var(--size-2);
	background: var(--web-bg-l);
	padding: var(--size1) var(--size1);
	opacity: 64%;
	cursor: pointer;
	transition: all ease-in-out 0.3s;
}

.experience .card-carousel .experience-info:hover {
	bottom: 0;
	opacity: 96%;
}

.experience .experience-card {
	display: none;
}

.experience.experience-show .experience-card {
	display: flex;
	min-height: 20rem;
	max-height: 40rem;
}

.experience.experience-show .experience-card #experience-show-text {
	overflow-y: auto;
}

.experience.experience-show .experience-card #experience-show-subtitle {
	text-align: end;
}

.experience.experience-show .hide-experience {
	cursor: pointer;
}

.experience.experience-show .hide-experience h3 {
	padding-left: var(--size3);
	padding-right: var(--size3);
}

.experience.experience-show .hide-experience a {
	position: absolute;
	top: 1rem;
	right: 1rem;
	z-index: 996;
	background: var(--web-main-dark);
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
}

.experience.experience-show .hide-experience .bi {
	font-size: 2rem;
	color: var(--web-bg);
	line-height: 0;
}

/* ----- contact ----- */
.contact .contact-bg {
	position: absolute;
	background: url("/img/contact-bg.png") center center no-repeat;
	background-size: contain;
	opacity: 0.2;
	width: 70%;
	top: var(--size4);
	bottom: var(--size15);
}

.contact i {
	font-size: 1.5rem;
	background: var(--web-main);
	color: var(--web-white);
	float: left;
	width: var(--size3);
	height: var(--size3);
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	transition: all 0.3s ease-in-out;
}

.contact a:hover i {
	font-size: 1.8rem;
}

.contact h4 {
	padding: 0 0 0 60px;
	margin-bottom: 0px;
}

.contact p {
	padding: 0 0 0 60px;
	margin-bottom: 0;
	color: var(--web-font);
}

/* ----- back to top ----- */
.back-to-top {
	position: fixed;
	visibility: hidden;
	opacity: 0;
	right: 1rem;
	bottom: 1rem;
	z-index: 996;
	background: var(--web-main-dark);
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	transition: all 0.4s;
}

.back-to-top i {
	font-size: 2rem;
	color: var(--web-bg);
	line-height: 0;
}

.back-to-top:hover {
	background: var(--web-hightlight);
	color: var(--web-white);
}

.back-to-top.active {
	visibility: visible;
	opacity: 1;
}

/* ----- footer ----- */
#footer {
	background: var(--web-main);
	padding: 0 0 var(--size15) 0;
	color: var(--web-bg);
}

#footer {
	padding: var(--size15) 0 var(--size15) 0;
}

#footer h5 {
	color: var(--web-white);
	position: relative;
	margin-top: var(--size15);
	padding-bottom: 0.5rem;
}

#footer .footer-top ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

#footer .footer-top ul i {
	margin-right: 0.2rem;
}

#footer .footer-top ul li {
	padding: 0.1rem 0;
	display: flex;
	align-items: center;
}

#footer .footer-top ul a {
	color: var(--web-bg);
}

#footer .footer-top ul a:hover {
	color: var(--web-white);
}

#footer .copyright {
	color: var(--web-white);
	font-family: "Arima", sans-serif;
	text-align: center;
	padding-top: var(--size15);
}