/* =========================================================
   HAUS KARIN / FOOTER
   Porto- und Bootstrap-kompatibel
========================================================= */
.white {color:#FFFFFF!important;}

#footer {
	background: #143260;
	margin-top: 110px;
}
		
#footer a:not(.btn):not(.no-footer-css):hover {
  text-decoration: none;
  color: #FFF580!important;
 
}
#footer a:not(.btn):not(.no-footer-css) {
  color: #FFFFFF!important;
  transition: all 0.1s ease-in-out;
}

#footer .footer-copyright {
	font-style: normal;
	font-family: "source_sans_proregular", sans-serif!important;
	font-weight: normal!important;
	font-size: clamp(0.95rem, 1vw, 1.1rem);
	line-height: 1.6;
	color: #ffffff!important;
}

#footer .footer-copyright a:not(.btn):not(.no-footer-css):hover {
  text-decoration: none;
  color: #FFF580!important;
}
#footer .footer-copyright a:not(.btn):not(.no-footer-css) {
  color: #FFFFFF!important;
  transition: all 0.1s ease-in-out;
}

.hk-footer-main{
	color: #ffffff;
}

.hk-footer__col{
	height: 100%;
}

.hk-footer__logo-link{
	display: inline-block;
	margin-bottom: clamp(1.125rem, 1.8vw, 1.5rem);
	text-decoration: none;
}

.hk-footer__logo{
	display: block;
	width: 100%;
	max-width: 10rem;
	height: auto;
}

.hk-footer__heading-adress {
	margin: 0 0 0.2rem 0;
	font-family: "source_sans_prosemibold", sans-serif !important;
	font-weight: normal!important;
	font-size: clamp(0.95rem, 1vw, 1.1rem);
	line-height: 1.2;
	letter-spacing: 0.015em;
	text-transform: uppercase;
	color: #fff580!important;
}

.hk-footer__heading{
	margin: 0 0 clamp(0.875rem, 1.5vw, 1.125rem);
	font-family: "source_sans_prosemibold", sans-serif !important;
	font-weight: normal!important;
	font-size: clamp(0.95rem, 1vw, 1.1rem);
	line-height: 1.2;
	letter-spacing: 0.015em;
	text-transform: uppercase;
	color: #fff580!important;
}

#footer .hk-footer__heading a,
#footer .hk-footer__heading a:link,
#footer .hk-footer__heading a:visited,
#footer .hk-footer__heading a:hover,
#footer .hk-footer__heading a:focus,
#footer .hk-footer__heading a:active {
	color: #fff580 !important;
	text-decoration: none;
}


.hk-footer__address-block{
	margin-bottom: clamp(1.125rem, 1.8vw, 1.5rem);
}

.hk-footer__address{
	margin: 0;
	font-style: normal;
	font-family: "source_sans_proregular", sans-serif;
	font-weight: normal;
	font-size: clamp(0.95rem, 1vw, 1.1rem);
	color: #ffffff;
}

.hk-footer__address-line{
	margin: 0;
	color: #FFFFFF;
}

.hk-footer__address-line:last-child{
	margin-bottom: 0;
}

.hk-footer__address-link{
	display: inline-flex;
	align-items: center;
	gap: clamp(0.65rem, 0.8vw, 0.9rem);
	color: #ffffff;
	text-decoration: none;
	transition: color 180ms ease;
}

/* Icon-Grundlage (Mask-Technik) */
.hk-footer__address-link::before{
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	width: clamp(1rem, 1.1vw, 1.15rem);
	height: clamp(1rem, 1.1vw, 1.15rem);

	background-color: currentColor; /* übernimmt Textfarbe */

	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;

	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;

	transition: background-color 180ms ease;
}

/* Telefon */
.hk-footer__address-link--phone::before{
	-webkit-mask-image: url("../img/hk-img/hk-icons/phone.svg");
	mask-image: url("../img/hk-img/hk-icons/phone.svg");
}

/* Mail */
.hk-footer__address-link--mail::before{
	-webkit-mask-image: url("../img/hk-img/hk-icons/mail.svg");
	mask-image: url("../img/hk-img/hk-icons/mail.svg");
}

/* Hover-Zustand (Text + Icon gleichzeitig) */
.hk-footer__address a:hover,
.hk-footer__address a:focus{
	color: #fff580;
	text-decoration: none;
}

.hk-footer__address a:focus-visible{
	outline: 0.125rem solid #fff580;
	outline-offset: 0.2rem;
	border-radius: 0.25rem;
}


.hk-footer__menu{
	margin: 0;
	padding: 0;
}

.hk-footer__menu li{
	margin: 0 0 clamp(0.95rem, 1.5vw, 1.35rem);
	padding: 0;
}

.hk-footer__menu li:last-child{
	margin-bottom: 0;
}

.hk-footer__menu a{
	display: inline-flex;
	align-items: center;
	gap: 0.625rem;
	font-family: "source_sans_proregular", sans-serif;
	font-weight: normal;
	font-size: clamp(0.95rem, 1vw, 1.1rem);
	line-height: 1.35;
	color: #ffffff;
	text-decoration: none;
	transition: color 180ms ease;
}

.hk-footer__menu a:hover,
.hk-footer__menu a:focus{
	color: #fff580;
	text-decoration: none;
}

.hk-footer__menu--icons{
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.hk-footer__icon{
	display: inline-block;
	width: 1.125rem;
	height: 1.125rem;
	flex: 0 0 1.125rem;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition:
		opacity 180ms ease,
		filter 180ms ease;
}

.hk-footer__icon--arrow{
	background-image: url("../img/hk-img/hk-icons/arrow-right-white.svg");
}

.hk-footer__icon--download{
	background-image: url("../img/hk-img/hk-icons/download-white.svg");
}

/* Hover-Färbung der weißen SVGs nach #fff580 */
.hk-footer__menu--icons a:hover .hk-footer__icon,
.hk-footer__menu--icons a:focus .hk-footer__icon{
	filter: brightness(0) saturate(100%) invert(89%) sepia(47%) saturate(507%) hue-rotate(9deg) brightness(104%) contrast(103%);
}

.hk-footer__social{
	margin-left: -0.25rem;
}

.hk-footer__social .list-inline-item{
	margin-right: 0.75rem;
	margin-bottom: 0.5rem;
}

.hk-footer__social .list-inline-item:last-child{
	margin-right: 0;
}

.hk-footer__social a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	color: #ffffff;
	text-decoration: none;
	transition: color 180ms ease, transform 180ms ease;
}

.hk-footer__social a:hover,
.hk-footer__social a:focus{
	color: #fff580;
	text-decoration: none;
	transform: translateY(-0.0625rem);
}

.hk-footer__social i{
	font-size: 2rem;
	line-height: 1;
}

/* Feinabstände auf kleineren Ansichten */
@media (max-width: 991.98px){
	.hk-footer__logo{
		max-width: 20rem;
	}
}

@media (max-width: 767.98px){
	.hk-footer__logo{
		max-width: 14rem;
	}

	.hk-footer__col{
		padding-right: 0;
	}
}