/*   
Theme Name:  Svenska Spahotell Theme
Theme URI: https://svenskaspahotell.se
Description: The official Svenska spahotell Wordpress Theme
Author: Ola Eborn
Author URI: https://bravissimo.se
Version: 1.0
*/

/* CSS Document */

/* */


* {
	box-sizing:border-box;
	-moz-box-sizing:border-box;
}

::-webkit-scrollbar { 
    display: none; 
    }

html {
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none;  /* IE and Edge */
}

@font-face {
    font-family: 'Contralto Bold';
    src: url('fonts/Contralto_Big_Bold.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Contralto Demi Bold';
    src: url('fonts/Contralto_Big_Demi_Bold.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Contralto Regular';
    src: url('fonts/Contralto_Big_Regular.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto Light';
    src: url('fonts/Roboto-Light.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto Regular';
    src: url('fonts/Roboto-Regular.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto Medium';
    src: url('fonts/Roboto-Medium.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto Bold';
    src: url('fonts/Roboto-Bold.woff2') format('woff');
    font-weight: normal;
    font-style: normal;
}


:root {
	--black: #2C2C2B;
	--dimmedtext: #8b827b;
	--white: #fff;
	--lightpink: #eae4de; /* gradient from #fff */
	--midpink: #D9D1CD;
	--gold: #AD9969;
	--darkgold: #867449;
	--darkgray: #272727;
	--darkergray: #202020;
	--lightgray: #ddd;
	--strokegray: #ebe4df;
	--overlay: #2A2525; 
	--overlay-grad-light: rgba(42,37,37,0);
	--overlay-grad: rgba(42,37,37,1);
	--inner-margin: 100px;
	--inner-inner-margin: 50px;
	--listitem-margin: 15px;
	--blockbottom-margin: 150px;
	--heading-xl: normal 100px/0.9 'Contralto Regular', serif;
	--heading-l: normal 80px/1 'Contralto Regular', serif;
	--heading-m: normal 60px/1 'Contralto Regular', serif;
	--heading-s: normal 36px/1.1 'Contralto Regular', serif;
	--text: normal 16px/1.5 'Roboto Light', sans-serif;
	--text-overlay: normal 16px/1.5 'Roboto Regular', sans-serif;
	--text-l-overlay: normal 20px/1.5 'Roboto Regular', sans-serif;
	--preheading: normal 12px/1.5 'Roboto Bold', sans-serif;
} 

.midpink-back {
	background: var(--midpink);
}

.inner-padding {
	padding: var(--inner-margin) 0;
}

body {
	background:var(--lightpink);
	color:var(--black);
	margin:0;
	padding:0;
	font: var(--text);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color: var(--gold);
}

b, strong {
	 font-family: 'Roboto Bold';
	 font-weight: normal !important;
	 -webkit-font-smoothing: antialiased;
	 -moz-osx-font-smoothing: grayscale;
}

.columns a {
	color: var(--gold);
	font-family: 'Roboto Regular';
}

.invisible {
	position: absolute;
	opacity: 0;
}

.glink {
	display: none !important;
}

.preloader {
	position: fixed;
	width: 70px;
	z-index: 70;
	left: calc(50% - 35px);
	top: calc(50% - 35px);
	display: none;
}

.ajaxcontent {
	opacity: 0;
	transition:0.5s all ease;
}

.fadein {
	opacity: 1 !important;
}

.left-align {
	justify-content: flex-start !important;
}

.right-align {
	justify-content: flex-end !important;
}

.center-align {
	justify-content: center !important;
}

::selection {
    background-color: var(--gold); /* Background color of the selected text */
    color: var(--black); /* Text color of the selected text */
}

.top-margin {
	margin-top: var(--inner-margin) !important;
} 

.top-margin-extra {
	margin-top: var(--blockbottom-margin) !important;
}

.top-margin-spec {
	margin-top: 130px !important;
}

.bottom-margin {
	margin-bottom: var(--blockbottom-margin) !important;
}

.bottom-margin-less {
	margin-bottom: var(--inner-margin);
}

/*a:hover {
	text-decoration: underline;
	text-underline-offset: 6px;
	text-decoration-color: var(--gold);
}*/

h1, h2 {
	font: var(--heading-xl);
	margin-bottom: 25px !important;
}

h1,h2,h3,h4,h5,h6 {
	font-family: 'Contralto Regular';
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong, h1 b, h2 b, h3 b, h4 b, h5 b, h6 b {
	font-weight:normal;
}

#page-wrap {
	width:100%;
	position:relative;
	overflow: hidden;
}

.inner-content {
	margin:0 auto;
	overflow:visible;
	max-width:1720px;
	width:calc(100% - (var(--inner-margin)*2));
	position:relative;
}

header {
	background: var(--white);	
	position: fixed;
	z-index: 20;
	width: 100%;
	top: 0;
	left: 0;
	height: 125px;
	transform: translate3d(0, 0, 0);
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: visible;
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

header.header-hidden {
	transform: translate3d(0, -100%, 0);
	transition: transform 0.25s ease-out;
	-webkit-transform: translate3d(0, -100%, 0);
	-webkit-transition: -webkit-transform 0.25s ease-out;
}

header.header-hidden .header-content {
	opacity: 0;
	transition: opacity 0.15s ease-out;
}

header.scrolled-up {
	transform: translate3d(0, 0, 0);
}

header.boxshadow {
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}

.headercomp {
	height: 125px;
	background: var(--white);	
}

header .inner-content {
	overflow: visible;
	height: 100%;
}

.header-content {
	font: var(--text);
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0;
	height: 100%;
}

.admin-bar .header-content {
	margin-top: 32px;
}

.header-content .left-section, .header-content .right-section {
	flex: 1;
	position: relative;
	z-index: 6;
}

.header-content.darktheme .left-section, .header-content.darktheme .right-section {
	color: var(--white);
}

.header-content .right-section {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    margin-top: 3px;
}


.header-content .left-section {
	display: flex;
}

.header-content .search.leftside {
	display: none;
}

.header-content .search:after {
	content:url(images/ikon-sok.svg);
	margin-left: 10px;
	width: 20px;
	display: inline-block;
	vertical-align: top;
	margin-top: 2px;
}

.header-content.darktheme .search:after {
	content:url(images/ikon-sok-gold.svg);
}

.header-content .right-section .menu .menuopen, .header-content .right-section .menu .menuclose {
	width: 80px;
	cursor: pointer;
}

.logoplate-responsive-menu, .responsive-menu-logo {
	display: none;
}

.responsive-bottom-plate {
	position: fixed;
	bottom: 0;
	right: 0;
	width: calc(100% - 90px);
	height: 70px;
background: rgb(39,39,39);
background: linear-gradient(180deg, rgba(39,39,39,0) 0%, rgba(39,39,39,1) 50%, rgba(39,39,39,1) 100%);
	display: none;
	z-index: 60;
}

.responsive-menu-logo {
    width: 65px;
    margin-top: 50px;
    z-index: 1;
    position: fixed;
    top: -25px;
    left: calc(50% - 33px);
}

.logoplate-responsive-menu {
	width: 580px;
	height: 160px;
	position: absolute;
	top: 0;
	left: -60px;
	background: rgb(39,39,39);
	background: linear-gradient(0deg, rgba(39,39,39,0) 0%, rgba(39,39,39,1) 37%, rgba(39,39,39,1) 100%);
}

.header-content .right-section .menu .menuopen:after {
	content:url(images/ikon-menu.svg);
	margin-left: 10px;
	width: 25px;
	display: inline-block;
	vertical-align: top;
	margin-top: 0;
}

.menuclose:after {
	content:url(images/ikon-closebtn-gold.svg);
	margin-left: 10px;
	width: 25px;
	display: inline-block;
	vertical-align: top;
	margin-top: 1px;
}

.header-content .right-section .menu {
	margin-left: 30px;
}

.header-content .right-section .buy-gift-card {
	margin-right: 30px;
}

.header-content .right-section .buy-gift-card a {
	color: inherit;
	text-decoration: none;
}

.header-content .left-section .boka-spa {
	color: inherit;
}

.header-content .left-section .boka-spa.locicon:after {
	content:url(images/ikon-bokadinspavistelse.svg);
	display: inline-block;
	width: 16px;
	margin-left: 10px;
	vertical-align: top;
	margin-top: 3px;
}

.header-content.darktheme .boka-spa.locicon:after {
	content:url(images/ikon-bokadinspavistelse-gold.svg);
}


.header-content .left-section .language {
	margin-left: 30px;
	padding: 0 5px 0 0;
	position: relative;
	display: flex;
	overflow:hidden;
}

.header-content .left-section .language-link {
	background: transparent;
	position: relative;
	z-index: 1;
	cursor: pointer;
}


.header-content.darktheme .left-section .language-link.action {
	background: var(--darkgray);
}

.header-content .left-section .language-link.action {
	background: var(--white);
}

.header-content .left-section .language-link:after {
	content:url(images/ikon-dropdown.svg);
	display: inline-block;
	width: 12px;
	margin-left: 10px;
	vertical-align: top;
	margin-top: -1px;
	transition:0.3s all ease;
}

.header-content.darktheme .language-link:after {
	content:url(images/ikon-dropdown-gold.svg);
}


.header-content .left-section .language-link.active:after {
	transform:rotate(-90deg);
	margin-top: 1px;
}

.header-content .left-section .language-link.active + .languages {
	display: block;
	transform: translateX(0)
}

.header-content .left-section .languages {
	position: relative;
	display:inline-block;
	font-size: 14px;
	margin: 3px 0 0 14px;
	transform: translateX(-170px);
	transition:0.5s transform ease;
	opacity: 0;
}

.header-content .left-section .language-link.active + .languages {
	display: block;
	transform: translateX(0);
	opacity: 1;
}

.header-content .left-section .language-link.action + .languages {
	opacity: 1;
}

.header-content .left-section .languages a.lang {
	color: inherit;
}

.header-content .left-section .languages a.lang:hover {
	text-decoration: none;
}


.header-content .left-section .languages a.lang.selected {
	color: var(--gold);
	font-family: 'Roboto Medium';
	border-bottom: 1px solid var(--gold);
}

.header-content .left-section .languages a.lang.selected:after {
	color: inherit;
	font-family: 'Roboto Light';
	border-bottom: 1px solid var(--white);
}

.header-content.darktheme .left-section .languages a.lang.selected:after {
	border-bottom: 1px solid var(--darkgray);
}

.header-content .left-section .languages .lang:after {
	content: " / ";
	color: var(--dimmedtext) !important;
}

.header-content.darktheme .left-section .languages .lang:after {
	content: " / ";
	color: var(--dimmedtext) !important;
}

.header-content .left-section .languages .lang:last-child:after {
	content: "";
}

.logosection, .platesection {
	position: relative;
	width: 280px;
	height: 95px;
}

.platesection {
	position: relative;
	transform: translate3d(0, 0, 0);
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
	opacity: 1;
}

.platesection.hidden {
	transform: translate3d(0, -300px, 0);
	opacity: 0;
	pointer-events: none;
	transition: transform 0s, opacity 0s;
}

/* .logosection.show {
	width: auto;
	margin-left: 35px;
} */

.platesection {
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
}

.logoplate {
	width: 280px;
	position: absolute;
	top:-185px;
	left: 0;
	z-index: 1;
}

#logo {
	width: 120px;
	position: relative;
	z-index: 1;
	margin-top: 120px;
}


.secondlogo {
    width: 75px;
    position: absolute;
    z-index: 1;
    top: 2px;
    left: calc(50% - 45px);
    opacity: 0;
    visibility: hidden;
	margin-left: 8px;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.secondlogo.visible {
	opacity: 1;
	visibility: visible;
}

.admin-bar .secondlogo {
	width: 55px;
	margin-top: 16px;
	margin-top: -3px;
}

#main-content {
	
}

#main-content .inner-content {
	
}

@media only screen and (min-aspect-ratio: 1/1) and (max-width: 1024px) {
    .logosection {
        margin-bottom: 25px;
    }
}

@media only screen and (max-aspect-ratio: 1/1) {
    .logosection {
        margin-bottom: 0;
    }
}

/* @media only screen and (max-aspect-ratio: 1/1) {
    .logosection {
        margin-bottom: 0;
    }
} */


footer a {
	color: inherit;
}

html {
    scrollbar-gutter: stable;
}

body.no-scroll {
    overflow-y: hidden;
    /* width: 100%; */
	/* scrollbar-gutter: stable; */
}

/* main-menu */
.mainmenu-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	height: 100vh; /* Keep this for non-mobile browsers */
		/* height: 100dvh; Add this for mobile browsers */
	background: var(--darkgray);
	z-index: 5;
	/* z-index: 50; */
	/* transform: translateY(calc(-100vh - 40px)); */
	/* transition: .7s cubic-bezier(.77,0,.175,1); */
	/* transition: transform .7s cubic-bezier(.77,0,.175,1); */
    transition: transform 0.6s cubic-bezier(0.6, 0.0, 0.2, 1);

	overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transform: translateY(-100%); /* Hide initially */
	-webkit-transform: translateY(-100%);
	
	/* overflow: hidden; */
	/* overflow: auto; */
}

.mainmenu-container.open {
    transform: translateY(0);
}


.mainmenu-container .menuimage {
	margin-right: var(--inner-inner-margin);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.menuimage .menuimage-logo {
	width: 160px;
	position: absolute;
	z-index: 1;
}

.mainmenu-container .topborder {
	position: fixed;
	height: 125px;
	top: 0;
	left: 0;
	width: 100%;
	background: var(--darkgray);
	z-index: 1;
}


#main-nav ul li {
	font: var(--heading-m);
	margin: 0;
	position: relative;
	padding: 17px 0;
}

.menuindikator {
	background: var(--gold);
	width: 2px;
	height:20px;
	position: absolute;
	left: -2px;
	top: 0;
	transition:0.3s all ease;
	display: none;
}

#second-nav ul, #main-nav ul {
	padding: 30px 0;
}

#second-nav ul li {
	font-size: 22px;
	 font-family: 'Roboto Regular';
	 -webkit-font-smoothing: antialiased;
	 -moz-osx-font-smoothing: grayscale;
	 padding: 7px 0;
	 line-height: 1.3;
}

/* Testar expanderad meny - AMANDA */




/* SLUT på expanderad meny - TEST */
.mainmenu-container .the-area {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	/* height: calc(100%); */
	height: 100vh;
    height: 100dvh;
	overflow: auto;	
}

.mainmenu-container.no-scroll {
	overflow: hidden;
}

.open {
	transform: translateY(0) !important;
}

.mainmenu-container .inner-content {
	display: flex;
	flex-direction: column;
	align-items: space-between;
	justify-content: space-between;
	margin-bottom: 0;
	height: 100%;
}

.mainmenu-container .inner-content .top {
	padding-top: 125px;
	/* padding-top: 140px; */
	display: flex;
}

.mainmenu-container .inner-content .bottom {
	display: flex;
	/* align-items: flex-end; */
	align-items: flex-start;
	justify-content: flex-end;
	width: 100%;
	padding-top: 0;
}

.mainmenu-container .inner-content .menus {
	display: flex;
	color: var(--white);
	align-items: center;
	/* align-items: flex-start; */
	justify-content: flex-start;
}

.mainmenu-container .inner-content .menucols {
	display: flex;
	flex: 1;
	/* height: calc(100% - 5.5rem); 
	overflow-y: auto;
	-ms-overflow-style: none; */

	max-height: calc(100vh - 125px - 100px); /* Viewport height minus header and footer space */
	overflow-y: auto;
    -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
	
	mask-image: linear-gradient(to bottom,
		var(--darkgray) 0%,
		var(--darkgray) 90%,
		transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom,
		var(--darkgray) 0%,
		var(--darkgray) 90%,
		transparent 100%);

}

.mainmenu-container .inner-content .menucols.scrolled {
	mask-image: linear-gradient(to bottom,
		transparent 0%,
		var(--darkgray) 10%,
		var(--darkgray) 90%,
		transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom,
		transparent 0%,
		var(--darkgray) 10%,
		var(--darkgray) 90%,
		transparent 100%);
}

@media only screen and (min-aspect-ratio: 1/1) and (max-width: 1024px) {
    .mainmenu-container .inner-content .menucols {
        max-height: inherit;
    }
}

.mainmenu-container .inner-content .menucols .col {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.mainmenu-container .inner-content .menucols .col.col1 {
	padding-right: var(--inner-inner-margin);
	padding-left: var(--inner-inner-margin);
	border-right: 2px solid #3a3a3a;
	border-left: 2px solid #3a3a3a;
	width: 60%
}

.mainmenu-container .inner-content .menucols .col.col2 {
	padding-left: var(--inner-inner-margin);
	width: 40%;
}

.mainmenu-container .inner-content :is(.menuimage, .menus) {
	width: 50%;
}


.menuimage {
	position: relative;
}

.mainmenu-container .socials-container {
	/* display: flex;
	align-items: flex-end; */
	/* align-items: flex-start; */
	/* justify-content: flex-end; */

	position: fixed;
    bottom: 0;
    right: 0;
    width: 100%;

	padding-bottom:	50px;
	position: relative;
	z-index: 60;
}

.mainmenu-container  .socials {
	bottom: var(--inner-margin);
	right: var(--inner-margin);
	margin-top: -60px !important;
	display: flex;
	justify-content: flex-end;
}


@media only screen and (min-aspect-ratio: 1/1) and (max-width: 1024px) {
	.mainmenu-container .socials {
		margin-top: -0px !important;
	}
}


/* end menu-menu */


.wp-block-image.is-style-top-margin {
    margin-top: 40px; /* Adjust as needed */
}


/* topsection block */
.home .topsection-block {
	height: calc(100vh - 125px);
}

.home.admin-bar .topsection-block {
	height: calc(100vh - 152px);
}

.topsection-block {
	height: 787px;
	position: relative;
	max-height: calc(100vh - 125px); 
	contain: layout style;
}

.topsection-block {
	height: 787px;
	position: relative;
	max-height: calc(100vh - 125px); 
	min-height: 600px;
	contain: layout style;
}

.single-member_facility .topsection-block {
	min-height: 850px;
}

.topsection-block .city {
	text-transform: uppercase;
	letter-spacing:	6px;
	font-family: 'Roboto Bold';
	margin-bottom: 25px;
	font-size: 14px;
	position: relative;
}

.topsection-block .city .linkblock {
    bottom: 0;
    top: unset;
    height: 75px;
}

.topsection-block .city:before {
	content:url(images/ikon-googlemaps-marker-pink.svg);
	width: 30px;
	position: absolute;
	top: -55px;
	left: calc(50% - 15px);
}


.topsection-block .backimage {
	width: 100%;
	height: 100%;
}

.topsection-block .backimage img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit:cover;
}

.topsection-block .textcontainer {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;	
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.overlay {
	position: absolute;
	z-index: 1;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background:var(--overlay);
}

.overlay.gradient {
	background: rgb(0,0,0);
	background: linear-gradient(0deg, var(--overlay-grad) 0%,  var(--overlay-grad-light) 100%);
}

.footerpuff-block .overlay.gradient {
	background: rgb(0,0,0);
	background: linear-gradient(0deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.3) 20%, rgba(0,0,0,0) 100%);
	opacity:1 !important;
}

.footerpuff-block .overlay.gradient.accessability {
	background: rgb(0,0,0);
	background: linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 100%);
	opacity:1 !important;
}

.topsection-block img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	top: 0;
	left: 0;
	position: absolute;
}

.topsection-block .textcontent {
	position: relative;
	z-index: 1;
	color: var(--white);
	max-width: 870px;
	width: 90%;
	text-align: center;
	font: var(--text-l-overlay);
}

.topsection-block .textcontent .btn-container {
	margin: 40px 0 0;
}

.pagination-container {
	position: absolute;
	bottom: 27px;
	left: 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

span.swiper-pagination-bullet {
    width: 4px !important;
    height: 4px !important;
    margin: 0 10px;
    display: inline-block;
    vertical-align: top;
}

span.swiper-pagination-bullet-active {
	width: 10px !important;
	height: 10px !important;
	background: var(--gold) !important;
	margin-top: -4px;
}
/* end topsection block */

/* button block */
.btn-container {
	margin: 40px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.btn-container.left {
	justify-content: flex-start !important;
}

.btn, input[type=submit] {	
	font-size: 16px;
	font-family:'Roboto Bold', Helvetica ,Arial,  sans-serif;
	color: var(--black);
	-webkit-font-smoothing: none;
	-moz-osx-font-smoothing: auto;
	position: relative;
	z-index: 1;
	transition:0.25s all ease;
}

a.btn {
	color: var(--black);
}

a.btn.selected .btn-inner {
    background: var(--gold);
    color: var(--white);
}

.btn-inner {
	padding: 18px 40px 18px 43px;
}

.btn-inner .btn-frame {
	border: 2px solid var(--gold);
	transition:0.25s all ease;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.btn:before {
	content:"";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--gold);
	z-index: -1;
	transform-origin: center;
	transition:0.25s all ease;
	transform:scaleX(0);
}


.btn:not(.selected):hover:before {
	transform:scaleX(1.05) !important; 
}

.btn:not(.selected):hover .btn-inner .btn-frame {
	transform:scale(1.05);
	box-shadow:0 20px 30px 0 rgba(0,0,0,.2);
}

a.btn:hover {
	text-decoration: none !important;
}

.btn:hover .btn-text {
	color: var(--white);
	
}

.btn:not(.no-arrow):hover .btn-text:after {
	content:url(images/ikon-knapp-pil-vit.svg) !important;
}

.btn:not(.no-arrow) .btn-inner .btn-text:after {
	content:url(images/ikon-knapp-pil.svg);
	display: inline-block;
	margin-left: 15px;
	width: 13px;
	vertical-align: top;
	margin-top: 2px;	
}

.darktheme a.btn, .footerpuff-block .btn, .topsection-block a.btn {
	color: var(--white);
}

.darktheme .btn:not(.no-arrow) .btn-text:after, .footerpuff-block .btn:not(.no-arrow) .btn-text:after, .topsection-block .btn:not(.no-arrow) .btn-text:after {
	content:url(images/ikon-knapp-pil-vit.svg);
}
/* end buttonblock */

/* startpage puff-block */

.startpage-puffblock .inner-content {
	padding: var(--inner-margin) 0;
	display: flex;
}

.startpage-puffblock .puff {
	background: var(--gold);
	color: var(--white);
	cursor: pointer;
	padding:3.021vw;
	margin-left: var(--listitem-margin);
	width:calc(33.33333333% - 8px);
	position: relative;
}

.startpage-puffblock .puff:first-child {
	margin-left: 0;
}

.preheading {
	font-size: 1.25vw;
	margin-bottom: 0.521vw;
	font-family: 'Contralto Regular';
}

.startpage-puffblock .puff h2 {
	font-size:2.604vw;
}

.startpage-puffblock .puff h2.linkarrow:after {
	content:url(images/ikon-knapp-pil-vit.svg);
	display: inline-block;
	margin-left: 15px;
	width: 18px;
	vertical-align: top;
	margin-top: -1px;
}
/* end startpage puff-block */

/* fullwidth puff-block */
.fullwidthpuff-block {
	margin: 0 0 var(--blockbottom-margin) 0;
}

.fullwidthpuff-block.reverse .inner-content {
	justify-content:flex-start;
}

.fullwidthpuff-block .inner-content {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	position: relative;	
}

.fullwidthpuff-block .image {
	width: calc(100% - 250px);
	min-height:500px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.fullwidthpuff-block.reverse .image {
	left: unset;
	right: 0;
}

.fullwidthpuff-block .image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit:cover;
}

.fullwidthpuff-block .textplatta {
	margin: 120px 0;
	padding: var(--inner-margin) 80px;
	z-index: 1;
	position: relative;
	background: var(--white);
	max-width: 810px;
}


.fullwidthpuff-block .textplatta p:last-of-type {
	margin-bottom: 0 !important;
}

.fullwidthpuff-block .textplatta .btn-container {
	margin-bottom: 0;
}

.fullwidthpuff-block .btn-container {
	justify-content: flex-start !important;
}
/* end fullwidth puff-block */

/* card */
.cards {
	display: flex;
	flex-wrap: wrap;
}

.cards .card {
	width:calc(33.33333333% - 10px) !important;
	margin-left: 0;
	background: var(--white);
	height: auto;
	display: flex;
	flex-direction: column;
	margin-left: var(--listitem-margin);
	position: relative;
}

.cards .card:nth-child(3n + 1) {
	margin-left: 0;
}

.card .text .bottom {
	display: flex;
	width: 100%;
}

.card .image {
	position: relative;
}

.card .text {
	padding: 2.604vw;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	flex: 1;	
}


.card .text .top {
	margin-bottom: 25px;
	width: 100%;
}

.card .text h3 {
	font: var(--heading-s);
}

.card .text .preheading {
	text-transform:uppercase;
	letter-spacing: 4px;
	color: var(--gold);
	margin-bottom: 5px;
	font: var(--preheading);
}


.squarelist .card .text {
	padding: 1.9vw 2.604vw 2.604vw;
}


.squarelist .cards {
	display: flex;
	flex-wrap:wrap;
}

.squarelist .cards .card {
	margin-bottom: var(--listitem-margin);
	width: calc(33.33333333% - 10px);
	margin-left: var(--listitem-margin);
}

.squarelist .cards .card:nth-child(3n + 1) {
	margin-left: 0;
}

.squarelist .btn-container {
	margin: 0;
}

.offer-cards .card .text .bottom .btn {
	padding-left: 20px;
	padding-right: 20px;
}

.offer-cards .cards .card .text .price {
	border-top: 2px solid var(--strokegray);
	border-bottom: 2px solid var(--strokegray);
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.offer-cards .cards .card .text .bottom .btn-container {
	width: 120px;
	margin: 0 0 0 15px;
}

.offer-cards .cards .card .text .bottom .btn-container .btn {
	width: 100%;
	padding: 0 1.042vw 0 20px; 
	text-align: center;
}

.offer-cards .cards .card .text .bottom .btn-container .btn .btn-inner {
    padding: 18px 0 16px 0;
}

.offer-cards .cards .card .text .bottom .btn-container .btn .btn-text:after {
	margin-left: 0.55vw;
}
/* end card */


/* popular offers block */

.popularoffers-block .cards {
	display: block;
	flex-wrap: unset;
}

.popularoffers-block .cards .card {
	width:calc((1440/3)px) !important;
	margin-left: 0;
}

.popularoffers-block {
	 overflow: hidden;
}

.cards .card .image {
	height: 16vw;
}

.cards .card .image img {
	width: 100%;
	height: 100%;
	object-fit:cover;
}

.popularoffers-block .offers {
	/*display: flex;*/
}

.popularoffers-block .small-link.mobile {
	display: none;
	margin: -10px 0 35px 0 !important;
}

.popularoffers-block h2 {
	font-size: 60px !important;
	margin-bottom: 50px !important;
}

.popularoffers-block .card:first-child {
	margin-left: 0;
}

.popularoffers-block .top-section .row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}


.popularoffers-block .top-section .nav-section {
    display: flex;
    min-width: 230px;
    justify-content: flex-end;
    margin-top: -7px;
}

.popularoffers-block .top-section .small-link {
	color: inherit;
	text-decoration: underline;
	margin-right: 20px;
	text-underline-offset: 6px;
	text-decoration-color: var(--gold);
	margin-top: -4px;
}

.popularoffers-block .top-section .nav {
	position: relative;
}

.popularoffers-block .swiper-container {
	overflow: visible !important;
}

.popularoffers-block :is(.swiper-button-next, .swiper-button-prev) {
	position: relative;
	top: unset;
	left: inset;
	display: inline-block;
	height: 25px;
	line-height: 0;
}

.popularoffers-block .swiper-button-next:after {
	content:url(images/ikon-slideshow-nav.svg);
	width: 11px;
	display: block;
	margin-left: 25px;
	top: 0;
	left: 0;
}

.popularoffers-block .swiper-button-prev:after {
	content:url(images/ikon-slideshow-nav.svg);
	transform: rotate(180deg);
	width: 11px;
	display: block;
}
/* end popular offers block */


/* Itemslist block */

/* End itemslist block */



/* Pufflista Block */
.shortcuts-block {
	
}

.shortcuts-block .inner-content {
	background: var(--midpink);
	padding: var(--inner-inner-margin) var(--inner-inner-margin) calc(var(--inner-inner-margin) - var(--listitem-margin));
}

.shortcuts-block .puffar {
	display: flex;
	flex-wrap:wrap;
}

.shortcuts-block .puffar .puff {
	width: calc(50% - 7.5px);
	position: relative;
	margin-left: var(--listitem-margin);
	margin-bottom: var(--listitem-margin);
}

.shortcuts-block .puffar .puff .image {
	overflow: hidden;
}

.shortcuts-block .puffar .puff .image img {
	transition:1.7s all ease;
	display: block;
}

.shortcuts-block .puffar .puff:hover img {
	transform: scale(1.15);
}

.shortcuts-block .puffar .puff:nth-child(2n + 1) {
	margin-left: 0
}

.shortcuts-block .puffar .puff .text {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: var(--listitem-margin) 50px;
	color: var(--white);
	z-index: 1;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	font: var(--text-overlay);
}

.shortcuts-block .puffar .puff .text:after {
	content:url(images/ikon-knapp-pil-vit.svg);
	width: 20px;
	position: relative;
	margin-bottom: 5px;
}

.shortcuts-block .puffar .puff .text h2 {
	color: var(--white);
	font: var(--heading-s);
	margin-bottom:13px !important;
}
/* End pufflista Block */

/* Footerpuff Block */
.footerpuff-block {
	position: relative;
}

.footerpuff-block .inner-content {
	height: 850px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	z-index: 1;	
}

.footerpuff-block img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	top: 0;
	left: 0;
	position: absolute;
}

.footerpuff-block .text {
	width: 750px;
}

.footerpuff-block .text h2 {
	color: var(--white);
	font:var(--heading-l);
}
/* End footerpuff Block */


/* footer */
.footer-main {
	background:var(--darkgray);
	color: var(--white);
	font-size: 12px;
}

.footer-main .inner-content {
	padding: var(--inner-margin) 0;
	max-width: 750px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 16px;
}

.footer-main .footerlogo {
	width: 150px;
	margin-bottom: 40px;
}

.socials {
	display: flex;
	margin-top: 40px;
}

.socials .icon {
	width:20px;
	margin: 0 7px;
}

.socials .facebook.icon {
	width:12px;
	margin-top: -1px;
}

.gold {
	color: var(--gold);
}

.dimmed {
	color: var(--dimmedtext);
}

.footer-bottom {
	background: var(--darkergray);
	color: #636363;
	padding: 32px var(--inner-margin) 32px;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sidfot-row, .sidfot-postadress {
	display: flex;
}

.sidfot-row {
	align-items: center;
	justify-content: center;
}

.adresspost:before {
	content:"|";
	color: var(--gold);
	padding: 0 12px;
}

.sidfot-row>.adresspost:first-child:before {
	content:"";
	padding: 0;
}

.sidfot-row>.adresspost:first-child:before {
	content:"";
}

.sidfot-namn {
	font-family: 'Roboto Medium';
}

.sidfot-oppettider.adresspost:before {
	content:"";
	padding: 0 0 0 10px;
}

.footer-main .adress {
	text-align: center;
}
/* end footer */


/* fullwidth image block */
.fullwidthimage-block {
	position: relative;
	min-height: 700px;
}

.fullwidthimage-block h3 {
	font: var(--heading-s);
	color: var(--gold);
	margin: 10px 0 20px 0;
}

.fullwidthimage-block .textcontainer {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;	
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.fullwidthimage-block img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	top: 0;
	left: 0;
	position: absolute;
}

.fullwidthimage-block .textcontent {
	position: relative;
	z-index: 1;
	color: var(--white);
	max-width: 870px;
	width: 90%;
	text-align: center;
	font: var(--text-overlay);
	padding: var(--blockbottom-margin) 0;
}

/* end fullwidth image block */

/* searchfilter block */
::-webkit-input-placeholder { /* WebKit browsers */
	font-family: 'Roboto Light';
	font-size: 16px;
	color: var(--black);
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	font-family: 'Roboto Light';
	font-size: 16px;
	color: var(--black);
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	font-family: 'Roboto Light';
	font-size: 16px;
	color: var(--black);
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
	font-family: 'Roboto Light';
	font-size: 16px;
	color: var(--black);
}

.no-results {
    text-align: center;
    margin: 100px auto 130px auto;
	font: var(--heading-s);
}


.infotags {
	position: absolute;
	top: 10px;
	right: var(--listitem-margin);
}

.infotags .tag {
	background:var(--black);
	padding: 3px 9px 3px 7px;
	color: var(--white);
	font-size: 13px;
	font-family: 'Roboto Bold';
	display: inline-block;
	margin-left: 3px;
}

.infotags .tag.distance:before {
    content: url(images/ikon-googlemaps-marker-gold.svg);
    width: 10px;
    display: inline-block;
    margin-right: 5px;
    margin-top: 2px;
    vertical-align: top;
    line-height: 1;
}

.infotags .tag.duration:before {
    content: url(images/ikon-time.svg);
    width: 13px;
    display: inline-block;
    margin-right: 5px;
    margin-top: 3px;
    vertical-align: top;
    line-height: 1;
}

.searchfilter-block .filterbox {
	padding: var(--inner-inner-margin);
	background: var(--midpink);
	display: flex;
	align-items: flex-start;
	justify-content: center;
}

.searchfilter-block .filterbox .filters {
	display: flex;
	width: 100%;
	max-width: 1050px;
	align-items: flex-start;
	justify-content: center;
}

.searchfilter-block .filterbox .filters input[type=text] {
	background: var(--lightpink);
	height:60px;
	padding: 0 20px;
	border: none;
	width: 100%;
	outline: 2px solid transparent;
}

.searchfilter-block .filterbox .filters input[type=text]:focus {
	outline:2px solid var(--gold);
	font-family: 'Roboto Regular';
	font-size: 16px;
}

.searchfilter-block .filterbox .filter label {
	display: block;
	font: var(--heading-s); 
	margin-bottom: 20px !important;
}

.searchfilter-block .filterbox .filters .filter {
	width: 50%;
}

.searchfilter-block .filterbox .filters .filter.distance {
	padding-right: var(--inner-inner-margin);
}

.searchfilter-block .filterbox .filters .filter.spa {
	padding-left: var(--inner-inner-margin);
}

.slider-container {
	margin-top: 30px;
	position: relative;
	opacity: 0;
}

.slider-container .labels {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	font-size: 14px;
	margin-bottom: 0;
}

.slider-container .slider .rail {
	height:	2px;
	width: 100%;
	background: var(--lightpink);
}

.slider-container .notice {
	display: none;
}

.tooltip {
	background: var(--black);
	padding: 6px 8px;
	color: var(--white);
	position: absolute;
	font-family: 'Roboto Bold';
	text-align: center;
	font-size: 12px;
	top: -17px;
	width: 75px;
}

.tooltip:before {
	content:" ";
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	width:0;
	height:0;
	border-top: 8px solid var(--black);
	bottom:-8px;
	left:calc(50% - 6px);
	display:block;
	position:absolute;
	z-index:2;
}


/* General slider styles */
input[type=range] {
  -webkit-appearance: none;
  width: 100%;
  height: 2px;
  background: transparent; /* Transparent background for custom track */
  outline: none; /* Remove default outline */
}

/* Filled track (left side of thumb) */
input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 2px;
  background: var(--lightpink); /* Unfilled track color */
  border-radius: 0;
  cursor: pointer;
}

input[type=range]::-moz-range-track {
  width: 100%;
  height: 2px;
  background: var(--lightpink);
  border-radius: 0;
  cursor: pointer;
}

input[type=range]::-ms-track {
  width: 100%;
  height: 2px;
  background: transparent;
  border-color: transparent;
  color: transparent;
}

input[type=range]::-ms-fill-lower {
  background: var(--gold); /* Filled part color */
  border-radius: 10px;
}

input[type=range]::-ms-fill-upper {
  background: var(--lightpink);
  border-radius: 10px;
}

/* Thumb styles */
input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  background: var(--gold); /* Thumb color */
  border-radius: 50%; /* Make it circular */
  cursor: pointer;
  margin-top: -10px; /* Center the thumb vertically */
}

input[type=range]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  background: var(--gold);
  border-radius: 50%;
  cursor: pointer;
}

input[type=range]::-ms-thumb {
  width: 22px;
  height: 22px;
  background: var(--gold);
  border-radius: 50%;
  cursor: pointer;
  margin-top: 0px; /* Ensure alignment in Edge */
}

/* Style for the filled part of the track */
input[type=range]::-webkit-slider-runnable-track {
  background: linear-gradient(to right, var(--gold) 0%, var(--gold) calc((var(--value) - 1) / 2000 * 100%), var(--lightpink) calc((var(--value) - 1) / 2000 * 100%), var(--lightpink) 100%);
}

input[type=range]::-moz-range-track {
  background: linear-gradient(to right, var(--gold) 0%, var(--gold) calc((var(--value) - 1) / 2000 * 100%), var(--lightpink) calc((var(--value) - 1) / 2000 * 100%), var(--lightpink) 100%);
}

/* Handle when the input value changes for dynamic fill */
input[type=range] {
  --value: 30; /* Set initial value */
}

input[type=range]:focus {
  outline: none; /* Ensure no outline on focus */
}

.filter.distance .hidden-fields input {
	margin-bottom: 5px;
}

.filter.distance .black-back-message {
    margin: -20px 1px;
    text-align: right;
    height: 18px;
    font-family: 'Roboto Regular';
}

.hidden-fields {
	display: none;
}

/* dropdown */
.custom-dropdown {
    position: relative;
}

.custom-dropdown label {
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
}

.dropdown {
    position: relative;
    width: 100%; /* Adjust based on your design */
    z-index: 2;
    clip-path: inset(0 0 -400px 0);  /* Adjust to match the masked area */
}

.bottomgrad {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100px;
	background: rgb(234,228,222);
	background: linear-gradient(0deg, rgba(234,228,222,1) 0%, rgba(234,228,222,1) 30%, rgba(234,228,222,0) 100%);
	z-index: 2;
}

.dropdown-button {
    background: var(--lightpink);
    height: 60px;
    padding: 0 25px;
    border: none;
    width: 100%;
    text-align: left;
    font: var(--text);
    color: var(--black);
    z-index: 2;
    position: relative;
    cursor: pointer;
}

.dropdown-container {
    position: absolute;
    background-color: var(--lightpink);
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.1);
    z-index: 1;
    width: 100%;
    height: 400px;
    margin-top: 0px;
    margin-left: 0 !important;
    box-shadow: none;
    border-radius: 0;
    border: 0;
    padding:0 25px 0 25px;
    overflow:hidden;
	transform-origin:top left;
    transition:0.3s all ease;
    transform: translateY(-400px);
}

.dropdown.open .dropdown-container {
	transform: translateY(0);
}

.dropdown-container .scroller {
	padding-top: 30px;
}

.dropdown-container .scroller {
	overflow-y: auto;
	height: 100%;
}

.dropdown-content {
    position: relative;
    z-index: 1;
    width: 100%;
    margin-top: 0px;
    margin-left: 0 !important;
    box-shadow: none;
    border-radius: 0;
    border: 0;
    padding:0 25px 60px 0px !important;  
}

.dropdown-content ul {
	margin: 0 0 30px 0;
	padding: 0;
}

.searchfilter-block  .separator {
	margin: 0;
	height: 2px;
	width: 100%;
	background:var(--midpink);
	position: relative;
	z-index: 3;
}

.searchfilter-block .filterbox .filters .filter .dropdown-content li {
    padding: 0 0 10px 0;
    list-style-type: none;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 8px !important;
}

.searchfilter-block .filterbox .filters .filter .dropdown-content li label {
	margin-bottom: 0 !important;
	cursor: pointer;
}

.searchfilter-block .filterbox .filters .filter .dropdown-content label {
    font: var(--text);
}

.dropdown-content input[type="checkbox"] {
    margin-right: 10px;
}

.dropdown-button::after {
    content:url(images/ikon-dropdown-gold.svg);
    float: right;
	width: 15px;
	transition:0.3s all ease;
}

.dropdown.open .dropdown-button::after {
	transform: rotate(-180deg);
}

.open .dropdown-container {
    display: block;
}

/* Hide the default checkbox */
.custom-checkbox input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  transition:0.5s all ease;
  cursor: pointer;
}



/* Base style for the checkmark box */
.custom-checkbox .checkmark {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: var(--midpink); /* Base color always visible */
    border-radius: 50%;
    position: relative;
    vertical-align: top;
    margin-top: 1px;
    margin-right: 12px;
    cursor:	pointer;
}

/* Checkmark SVG that fades in on checked state */
.custom-checkbox .checkmark::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background-image: url('images/checkmark.svg'); /* Link to your SVG image */
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0; /* Initially hidden */
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease;
}

/* Fade in the checkmark SVG on checked state */
.custom-checkbox input[type="checkbox"]:checked + .checkmark::after {
    opacity: 1; /* Fade in */
}

/* end searchfilter block */


/*  suppliers block */
.suppliers-block  .supplier-cards {
	display: flex;
	flex-wrap:wrap;
	align-items: flex-end;
	justify-content: flex-start;
	align-items: stretch;
}

.suppliers-block h2 {
	font: var(--heading-m);
	margin-bottom: var(--inner-inner-margin) !important;
	margin-top: var(--inner-inner-margin) !important;
}

.suppliers-block .inner-content h2:first-of-type {
	margin-top: 0 !important;
}

.suppliers-block .supplier-card:nth-child(2n + 1) {
	margin-left: 0;
}

.suppliers-block  .supplier-card {
	background: var(--white);
	box-shadow:0 5px 60px rgba(0,0,0,0.08);
	display: flex;
	width: calc(50% - 24px);
	margin-left: 36px;
	margin-bottom: 36px;
}

.suppliers-block  .supplier-card h3 {
	font:var(--heading-s);
}

.suppliers-block  .supplier-card .logocol {
	width: 33.333333%;
	padding: 7%;
	border-right: 2px solid var(--lightpink);
	display: flex;
	align-items: center;
	justify-content: center;
}

.suppliers-block  .supplier-card .textcol {
	width: 66.666666666%;
	padding: var(--inner-inner-margin);
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
}

.suppliers-block  .supplier-card img {
	width: 300px;
}
/* end suppliers block */


/* FAQ Block */
.faq-block .inner-content {

}

.faqs {
	display: flex;
	gap:var(--inner-inner-margin);
}

.twocolumn-block .inner-content .columns .column .faq-section h3 {
    margin: 0 !important;
}

.twocolumn-block .inner-content .columns .column .faq h3 {
    font: var(--heading-s);
    margin: 0 0 0 0 !important;
}

.twocolumn-block .inner-content .columns .column .faq .answer h3 {
	font-size: 32px;
    margin: 0 0 20px 0 !important;
}

.faqs .col {
	width: 50%;
}

.faq {
    padding: 14px 0 23px 0;
    border-bottom: 2px solid var(--midpink);
}

.faq .question h3 {
	font:var(--heading-s);
	padding-right: 40px;
	margin-bottom: 0 !important;
}

.faq .question {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	cursor: pointer;
}

.faq .question .plus {
	width: 20px;
	margin-top: 13px;
	cursor:pointer;
	flex-shrink: 0;
}

.faq .question .plus .ikon {
	display: block;
}

.faq .answer {
	padding-top: 20px;
	display: none;
}

.faq .answer p:last-child {
	margin-bottom: 0;
}

.single-member_facility .faq .question .plus {
    margin-top: 13px;
}

.single-member_facility .faq {
    padding: 15px 0 23px 0;
}
/* End FAQ Block */


/* two column Block */
.twocolumn-block .inner-content .columns {
	display: flex;
	gap:var(--inner-margin);
}



.twocolumn-block .inner-content .columns .column {
	width: 50%;
}

.twocolumn-block .inner-content .columns .column h2 {
	font: var(--heading-m);
	margin: 20px 0 15px 0 !important;
}

.twocolumn-block .inner-content .columns .column h3 {
	font: var(--heading-s);
	margin: 20px 0 15px 0 !important;
}


.twocolumn-block .inner-content .columns .column h2:first-child {
	margin: 0 0 15px 0 !important;
}

.twocolumn-block .inner-content .columns .column .ingress {
	font-size: 28px;
	font-weight: normal;
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 2px solid var(--midpink);
}

.twocolumn-block .column figure.no-bottom {
	margin-bottom: 0 !important;
}

.twocolumn-block .column figure img {
	width: 100% !important;
}

/*Bildspel swiper*/
.gallery-wrapper {
	background: var(--midpink);
	padding-bottom: 30px;
	position: relative;
}


.gallery-wrapper .gallery-top .navigation {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
}

.gallery-wrapper .gallery-top .navigation :is(.gallery-swiper-button-prev,.gallery-swiper-button-next)  {
	position: relative;
	opacity:1;
	width: 60px;
	height: 60px;
	background:rgba(43,38,38,0.7);
	left:unset;
	top:unset;
	right: unset;
	margin-top: 0;
	margin-left: 2px;
	z-index: 2;
	display: block;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.gallery-wrapper .gallery-top .navigation .gallery-swiper-button-prev:after, .gallery-wrapper .gallery-top .navigation .gallery-swiper-button-next:after   {
	content: url(images/ikon-dropdown-gold.svg);
	width: 25px;
	display: inline-block;
	text-align: center;
	margin-top: -2px;
}

.gallery-wrapper .gallery-top .navigation .gallery-swiper-button-prev:after  {
	transform:rotate(90deg);
}

.gallery-wrapper .gallery-top .navigation .gallery-swiper-button-next:after  {
	transform:rotate(-90deg);
	margin-left: 6px;
}

.gallery-wrapper:after {
	content:"";
	position: absolute;
	top: 0;
	left: 0;
	background: var(--midpink);
	width: 50vw;
	height: 100%;
}

.gallery-wrapper .gallery-top .swiper-slide:before {
	content:"";
	position: absolute;
	top: -50px;
	left: calc(100% - 250px);
	background: var(--gold);
	width: 50vw;
	height: calc(100% + 100px);
	z-index: -1;
}

.gallery-wrapper .gallery-top {
	margin-bottom: 80px;
}

.gallery-wrapper .swiper-container .swiper-slide {
	width: 100%;
	z-index: 3;
}

.gallery-wrapper .gallery-thumbs .swiper-slide {
	cursor: pointer;
	height: 100%;
}

.gallery-wrapper .gallery-thumbs {
	overflow: hidden;
}

.gallery-wrapper {
	box-shadow: -3.21px -4.04px 80px rgba(150, 140, 130, 0.19);
}

.gallery-wrapper .swiper-slide img {
	height: 100%;
	object-fit:cover;
	width: 100%;
}

/* End two column Block */

/* logolist Block */
.logolist-block {
}

.logolist-block .logos {
	display: flex;
	flex-wrap:wrap;
}

.logolist-block .logos .logo {
    width: calc(20% - calc(var(--listitem-margin) * 4 / 5));
    padding: 30px 40px;
    background: var(--white);
    margin-bottom: var(--listitem-margin);
    height: 205px;
    margin-left: 15px;
    position: relative;
    box-shadow: 0 0 60px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
}

.logolist-block .logos .logo:hover img {
	transform: scale(1.1);
}

.logolist-block .logos .logo img {
	max-width: 234px;
	max-height: 122px;
	transition:0.3s all ease;
}

.logolist-block .logos .logo:nth-child(5n +1) {
	margin-left: 0;
}


.logolist-block .logos .logo img {
	width:100%;
	height: 100%;
	object-fit:contain;
}
/* End logolist Block */


/* textimage block */
.textimage-block {

}

.textimage-block .text-image {
	display: flex;
	background: var(--white);
}

.reverse .text-image {
	flex-direction: row-reverse;
}

.textimage-block .text-image .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.textimage-block.logotype .text-image .image img {
	object-fit: contain !important;
}

.textimage-block .text-image .col {
	width: 50%;
}

.textimage-block .text-image .text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: var(--inner-inner-margin);
}

.textimage-block .text-image .text p:last-of-type {
	margin-bottom: 0 !important;
}

.textimage-block .text-image .text h2 {
	font: var(--heading-s);
}

.textimage-block .text-image .text .btn-container {
	margin-bottom: 0;
}
/* end textimage block */

/* program block */
.program-block .headingsection {
	margin-bottom: var(--inner-inner-margin);
	text-align: center;
}

.program-block .card {
	background: transparent;
	margin-bottom: var(--listitem-margin);
}

.program-block .card .text {
	background: var(--white);
	flex: unset;
	position: relative;
}

.program-block .card  h3 {
	margin-bottom: 20px !important;
}

.program-block .card .hallpunkt {
	margin-bottom: 15px;
}

.program-block .card .tid {
	font-family: 'Roboto Bold';
}

.program-block .card .text-inner {
	max-height: 300px;
	overflow: hidden;
	margin-bottom: 50px;
	position: relative;
	width: 100%;
}

.show-all {
	height: auto !important;
}

.program-block .card .show-more {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	cursor: pointer;
}

.program-block .card .show-more .inner {
	margin: 0 2.604vw 0 2.604vw;
	border-top: 2px solid var(--lightpink);
	padding: 14px 0 35px;
	color: var(--gold);
	text-transform: uppercase;
	letter-spacing: 4px;
	font-family: 'Roboto Bold';
	font-size: 12px;
	position: relative;
}

.program-block .card .show-more:before {
	content:"";
	position: absolute;
	top: -80px;
	left: 0;
	width: 100%;
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,0) 100%);
	height: 80px;
}

.program-block .card .show-all + .show-more:before {
	display: none;
}

.program-block .card .show-more .inner:after {
	content:url(images/ikon-plus.svg);
	position: absolute;
	top: 12px;
	right: 0;
	width: 15px;
}

.program-block .card .text-inner.show-all + .show-more .inner:after {
	content:url(images/ikon-minus.svg);
}
/* end program block */

/*  Toppnotis */
.toppnotis {
	position: relative;
	top: 0;
	left: 0;
	padding: 30px 0;
	background: var(--black);
	color: var(--white);
	text-align: center;
	z-index: 20;
	width: 100%;
	display: none;
}

.toppnotis.open {
	display: block !important;
}

.toppnotis .heading {
	color: var(--gold);
	font-family: 'Roboto Bold';
}

.toppnotis .entry {
	max-width: 850px;
	margin: 0 auto;
}

.toppnotis .closebtn {
	position: absolute;
	right: 0;
	top:0;
	cursor: pointer;
}

.toppnotis .closebtn:after {
	content:url(images/ikon-closebtn-gold.svg);
	width: 28px;
	margin-left: 10px;
	display: inline-block;
	vertical-align: top;
	margin-top: -1px;
}
/* End Toppnotis */

/* Presentkort edit block */
.editpresentkort-block .columns {
	display: flex;
}

.editpresentkort-block .columns .col {
	width: 50%;
}

.editpresentkort-block .columns .col.edit-section {
	padding-right: var(--inner-inner-margin);
}

.editpresentkort-block .columns .col.preview-section {
	padding-left: var(--inner-inner-margin);
}

.editpresentkort-block .editpart .columns .left-col {
	width: 45%;
	padding-right: 30px;
}

.editpresentkort-block h2 {
	font: var(--heading-m);
	margin-bottom: 60px !important;
}

.editpresentkort-block .editpart .columns .right-col {
	width: 55%;
}

.editpresentkort-block .editpart .columns .right-col .desc {
	margin-left: 40px;
	font-size: 14px;
	font-style:italic;
}

.editpresentkort-block .content {
	padding: 30px 30px;
	background: var(--lightpink);
}

.editpresentkort-block .editpart .heading {
	background: var(--gold);
	padding: 18px 30px;
	display: block;
}

.editpresentkort-block .editpart .heading h3 {
	color: var(--white);
	padding: 10px var(--inner-inner-content);
	font-family: 'Roboto Medium';
	margin-bottom: 0 !important;
}

.radio-group {
    display: flex;
    flex-direction: column;
}

.radio-container {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    color: #4f4f4f;
    font-size: 16px;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
}

.radio-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.radio-custom {
    position: absolute;
    top: 0;
    left: 0;
    height: 28px;
    width: 28px;
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid var(--gold);
    transition: background 0.2s;
    display: inline-block;
    vertical-align: top;
    margin-top: -2px;
    margin-right: 8px;
}

.radio-container label {
	display: inline-block;
	margin-left: 8px;
}

.radio-container input:checked ~ .radio-custom {
    background-color: transparent; /* Fyll i cirkeln när den är vald */
    border-color: var(--gold); /* Ytterringens färg när vald */
}

.radio-container input:checked ~ .radio-custom:before {
    content: "";
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    background-color: var(--gold); /* Mörkare prick i mitten */
    border-radius: 50%;
}

.labeltext {
	display: inline-block;
	margin-left: 8px;
}

fieldset {
    border: none;
    margin: 0;
    padding: 0;
}


.editpresentkort-block .image-list {
    list-style-type: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.editpresentkort-block .image-list li {
	width: calc(33.33333333% - 17.333333px);
	margin-left: 26px;
	margin-bottom: 26px !important;
	position: relative;
}

.editpresentkort-block .image-list li:nth-child(3n + 1) {
	margin-left: 0;
}

.image-list img {
    width: 100%;
    height: auto;
     border: 2px solid transparent;
}

.image-list img {
	cursor: pointer;
}

.image-list input[type="radio"] {
    position: absolute;
    opacity: 0;
}

.image-selection ul, .image-selection ul li {
    padding: 0;
}

.image-selection ul {
    margin-left: 0 !important;
    margin: 30px 0 10px 0 !important 
}

.editpresentkort-block .image-list label {
	margin-bottom: 0;
}

input[type="radio"]:checked + img {
    border: 2px solid var(--white);
}

#main-content ul, #main-content ol, .entry ul, .entry ol {
    margin-bottom: 0;
    margin-left: 0;
    padding: 0;
}

.editpresentkort-block label {
	display: block;
	margin-bottom: 20px;
}

textarea  {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    width: 100%;
    min-height: 200px;
    border: none;
    padding: 15px;
    font-size: 16px;
}

textarea:focus, input[type=text]:focus, input[type=number]:focus {
	outline: 2px solid var(--gold);
	font-family: 'Roboto Regular';
}

input[type=text], input[type=number], input[type=tel], input[type=email]  {
	border:none;
	height: 60px;
	width: 100%;
	padding: 0 15px;
	font-family: 'Roboto Regular';
	font-size: 16px;
}

.amount-counter {
	display: flex;
}

.amount-counter input[type=number] {
	text-align: center;
	width: 60px;
	margin: 0 10px;
	font-size: 18px;
	font-family: 'Roboto Light';
}

.amount-counter :is(.plus,.minus) {
	background: var(--gold);
	width: 60px;
	color: var(--white);
	height: 60px;
	display: block;
	align-items: center;
	justify-content: center;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor:pointer;
	font-size: 36px;
}

/* För Chrome, Safari, Edge, Opera */
.amount-counter input[type=number]::-webkit-outer-spin-button,
.amount-counter input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* För Firefox */
.amount-counter input[type=number] {
    -moz-appearance: textfield;
}

.editpresentkort-block .order .columns {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
}

.editpresentkort-block .col.sum {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-top: 2px solid var(--midpink);
	border-bottom: 2px solid var(--midpink);
	flex: 1;
}

.editpresentkort-block .col.amount-count {
	width: 225px;
}

.editpresentkort-block .col .btn {
	width: 100%;
	display: inline-block;
}

.editpresentkort-block .col.button {
	width: 200px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-left: 15px;
}


/* PDF preview */
.dokument {
	width:21cm;
	height:29.7cm;
	background:#fff;
	padding:0.8cm 0.8cm;
	font-size:14px;	
	transform-origin:left top;
	position: relative;
	overflow: hidden;
}

.dokument:before {
	content:"";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 0.8cm;
	background: #fff;
	z-index: 5;
}

.dokument .platesection {
	position: absolute;
	top: 5px;
	left: calc(50% - 159px);
	transform: scale(0.48);
}

.dokument .toppbild {
	overflow: hidden;
}

.dokument h2 {
	text-align: center;
	font: var(--heading-l);
	margin: 40px 0 20px 0 !important;
	color: var(--gold);
}

.dokument .personlig_halsning {
	text-align: center;
	font-family: 'Roboto Light';
	font-size: 16px;
}

.dokument .rubrik-section {
    position: absolute;
    width: 100%;
    left: 0;
    top: 13.2cm;
    left: 10%;
	width: 80%;
}

.dokument .bottom {
	position: absolute;
	left: 0;
	bottom: 0.7cm;
	width: 100%;
}

.dokument .varde-section {
	border-top: 2px solid var(--lightpink);
	border-bottom: 2px solid var(--lightpink);
	padding: 15px 15px 18px;
	font-size: 28px;
	font-family: 'Roboto Bold';
	text-align: center;
	margin: 0 auto 1cm auto;
	width: 80%;
	color: var(--gold);
}

.dokument .footer {
	text-align: center;
	margin: 0 auto;
	width: 80%;
	font-size: 12px;
}

.dokument .varde-section .varde {
	font-family: 'Roboto Light';
	color: var(--dimmedtext) !important;
}

.preview-presentkort {
    box-shadow: 0 0 50px rgba(0,0,0,0.15);
}
/* end Presentkort edit block */


/* karta block */
.karta-block {
	width: 100%;
	height: 100%;
}

.karta-block .inner {
	width: 100%;
	height: 100%;
	background: var(--midpink);
	padding: var(--listitem-margin);
	opacity: 0;
	display: block;
} 

.karta-container {
	height: 100%;
}

.marker {
	position: relative !important;
}

.markercontent {
	color: var(--black);
	text-align: center;
	margin:0 20px 15px 20px;
}

.custom-info-window-container {
    background-color: var(--black);
    color: #fff;
    border-radius: 0;
    padding: 0 40px;
    max-width: 200px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    position: relative;
    text-align: center;
}

.twocolumn-block .inner-content .columns .column .markercontent h3 {
    font-size: 16px !important;
    margin: 0 0 10px 0 !important;
    padding: 0;
    font-family: 'Roboto Medium' !important;
}

.twocolumn-block .inner-content .columns .column .markercontent a {
	color:#cfcdd0;
	text-decoration: underline;
	font-size: 16px;
	text-decoration-color: var(--gold);
	text-underline-offset: 5px;
	text-decoration-thickness: 1px;
}

.custom-info-window-container::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid var(--black);
}

/* end karta block */

/* formulär nyhetsbrev */
.subscribe-form .cols {
	display: flex;
	gap:50px;
}

.subscribe-form fieldset .cols {
	margin-top:15px;
}

.subscribe-form .cols.typ {
	margin-top: 50px;
}

.subscribe-form .cols .col {
	flex: 1;
}

.subscribe-form .radio-group {
    display: flex;
    flex-direction: row;
}

fieldset {
    border: none;
    margin-bottom: 20px;
}

legend {
    font-weight: bold;
    margin-bottom: 10px;
}


.subscribe-form .radio-group input[type="radio"],
.checkbox-group input[type="checkbox"] {
    margin-right: 10px;
    accent-color: var(--gold); /* Gold color */
}

.form-group label {
    flex: 1;
}

.form-group input {
    flex: 2;
    border: none;
    border-bottom: 2px solid var(--gold);
    padding: 5px 0;
    outline: none;
    font-size: 16px;
}

.subscribe-form .radio-container {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    color: #4f4f4f;
    font-size: 16px;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    margin-right: 30px;
}

.radio-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.radio-custom {
    position: absolute;
    top: 0;
    left: 0;
    height: 28px;
    width: 28px;
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid var(--gold);
    transition: background 0.2s;
    display: inline-block;
    vertical-align: top;
    margin-top: -2px;
    margin-right: 8px;
}

.radio-container label {
	display: inline-block;
	margin-left: 8px;
}

.radio-container input:checked ~ .radio-custom, .radio-container input:checked ~ .cols .col .radio-custom {
    background-color: transparent; /* Fyll i cirkeln när den är vald */
    border-color: var(--gold); /* Ytterringens färg när vald */
}

.radio-container input:checked ~ .radio-custom:before, .radio-container input:checked ~ .cols .col .radio-custom:before {
    content: "";
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    background-color: var(--gold); /* Mörkare prick i mitten */
    border-radius: 50%;
}

.checkbox-container {
    display: flex;
    align-items: center;
    cursor: pointer;
}

.checkbox-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.checkbox-custom {
    position: relative;
    height: 28px;
    width: 28px;
    background-color: transparent;
    border: 2px solid var(--gold);
    border-radius: 50%; /* Slightly rounded edges */
    display: inline-block;
    margin-right: 8px;
    transition: background-color 0.2s;
}

/* Apply the filled circle when checkbox is checked */
.radio-container input[type="checkbox"]:checked + .radio-custom:before {
    content: "";
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    background-color: var(--gold); /* Inner circle color */
    border-radius: 50%;
}

.labeltext.consent {
	font-size: 13px;
	 font-family: 'Roboto Regular';
}

.radio-container[for=consent] {
	margin-top: 20px;
	margin-bottom:-10px;
}

.subscribe-form  textarea:focus, input[type=text]:focus, input[type=number]:focus {
	outline: none;
}

/* end formulär nyhetsbrev */

/* searchwindow */
.searchwindow {
	display: flex;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 50;
	align-items: center;
	justify-content: center;
	display: none;
}

.searchwindow .backimage {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
	z-index: 1;
}

.searchwindow .backimage img {
	width: 100%;
	height:100%;
	object-fit:cover;
} 

.searchwindow  .searcharea {
	z-index: 1;
	width: 100%;
	max-width: 700px;
	margin: 0 auto;	
	z-index: 1;
	position: relative;
}

.searchwindow  .searcharea h2 {
	color: var(--white);
	font-size: 60px;
	text-align: center;
}

.searchwindow  .formarea {
	margin-top: 90px;
	border-bottom: 2px solid var(--gold);
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	padding-bottom: 7px;
}

.searchwindow .inner-content {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
}

.searchwindow .menuclose {
    position: absolute;
    color: var(--white);
    right: 4px;
    top: 44px;
    z-index: 1;
}

.searchwindow  .formarea input#s {
	border: none;
	background: none;
	height: 50px;
	color: var(--white);
	font-size: 20px;
	padding: 0;
}

.searchwindow ::-webkit-input-placeholder { /* WebKit browsers */
    color:    var(--white);
    font-size: 20px;
}
.searchwindow :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    var(--white);
	font-size: 20px;
}
.searchwindow ::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    var(--white);
	font-size: 20px;
}
.searchwindow :-ms-input-placeholder { /* Internet Explorer 10+ */
    color:    var(--white);
    font-size: 20px;
}

.searchwindow #searchsubmit {
	border: none;
	background: none;
	padding: 10px 23px 13px 10px;
	color: var(--white);
	font-size: 20px;
	cursor: pointer;
}

.searchwindow .searchbtn {
	position: relative;
}

.searchwindow .searchbtn:after {
	content:url(images/ikon-knapp-pil-gold.svg);
	width: 16px;
	display: inline-block;
	vertical-align: top;
	margin-top: 12px;
	margin-left: -16px;
}

.header-content .search, .searchwindow .menuclose {
	cursor:pointer;
}

/* searchpage */
.searchfilter-section {
	padding-bottom:var(--inner-inner-margin); 
}

.searchfilter-section .searchinfo {
	padding: 100px 0 30px 0;
	text-align:center;
	font-size: 20px;
}

.searchfilter-section .searchfilter {
	padding: 30px 0;
	text-align:center;
	font-size: 20px;
	background: var(--midpink);
	margin-bottom: var(--inner-inner-margin);
}

.searchfilter-section .searchfilter .btn {
	margin-left: var(--inner-inner-margin);
	min-width: 215px;
}

.searchfilter-section .searchfilter .btn:first-child {
	margin-left: 0 !important;
}

.searchfilter-section .searchfilter .btn-text.selected:after {
	content:url(images/ikon-knapp-pil-vit.svg);
}

.searchfilter-section .btn:not(.no-arrow).selected .btn-inner  .btn-text:after {
    content: url(images/ikon-knapp-pil-vit.svg);
}

.shortcuts-block.searchpage .puff .image {
	height: 22.5vw;
	max-height: 443px;
	min-height: 230px;
}

.shortcuts-block.searchpage .puff .image img {
	width: 100%;
	height: 100%;
	object-fit:cover;
}
/* end searchwindow */


body {
    position: relative;  /* Required for absolute positioning of children */
}

/* Custom scrollbar track */
.custom-scrollbar-track {
    position: fixed;
    right: 0px;
    top: 0px;
	bottom: 0;
    width: 8px;
    background: rgba(44, 44, 43, 0.6);  /* Dark track for light backgrounds */
    border-radius: 1.5px;
    z-index: 9999;  /* High z-index but below modal content */
}

/* Custom scrollbar thumb */
.custom-scrollbar-thumb {
    position: absolute;
    width: 100%;
    background: rgba(44, 44, 43, 1);  /* Dark thumb for light backgrounds */
    border-radius: 1.5px;
    cursor: pointer;
    transition: background 0.2s ease;
}

/* Hover state for scrollbar thumb */
.custom-scrollbar-thumb:hover {
    background: rgba(44, 44, 43, 0.7);
}