/*
Theme Name: Lynea
Theme URI: https://wonderfour.se
Author: WONDERFOUR W4 Webbyrå Stockholm
Author URI: https://wonderfour.se/
*/

/* Root variables */
:root {
	--lightpink: #ea9b98;
	--white-cream: #fcf0d9;
	--mocha: #453223;
	--sand: #fcedd2;
	--khaki: #ffe4af;
	--mandarin: #f4784e;
	--lime: #589566;
	--wine: #4d182e;

    --font-size-small: 15px; 
	--font-size-paragraf: 16px;
	--font-size-slogan: 19px;
	--font-size-heading: 24px;
	--font-size-medium: 30px;
	--font-size-large: 50px;
	--font-size-large-title: 90px;
	--font-size-button: 21px;
	
	--line-height-paragraf: 20px;
	--line-height-large-title: 75px;
	
	--rounded-radius: 35px;

	--puff-border-radius: 20px;
	
	--font-regular: 'ApercuRegular';
	--font-medium: 'ApercuMedium';
	--font-bold: 'ApercuBold';
	--font-goodman: 'GoodmanSemiBold';

    --letter-spacing-tight: -0.01em;
	--letter-spacing-tighter: -0.02em;
	--letter-spacing-tightest: -0.03em;
}


@font-face {
	font-family: 'ApercuRegular';
	src: url('fonts/ApercuRegular.woff'),
	url('fonts/ApercuRegular.woff2') format("woff2");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'ApercuMedium';
	src: url('fonts/ApercuMedium.woff'),
	url('fonts/ApercuMedium.woff2') format("woff2");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'ApercuBold';
	src: url('fonts/ApercuBold.woff'),
	url('fonts/ApercuBold.woff2') format("woff2");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'GoodmanSemiBold';
	src: url('fonts/goodman-semibold.woff'),
	url('fonts/goodman-semibold.woff2') format("woff2");
	font-weight: normal;
	font-style: normal;
	font-display: block;
}


/**
 * 1.0 Reset
 */
.b-lazy {
	 opacity: 0;
	 -webkit-transition: opacity .2s ease-in-out,transform .15s ease-out;
	 -moz-transition: opacity .2s ease-in-out,transform .15s ease-out;
	 -o-transition: opacity .2s ease-in-out,transform .15s ease-out;
	 transition: opacity .2s ease-in-out,transform .15s ease-out;
}
.b-lazy.b-loaded{
	opacity: 1;
}

.grecaptcha-badge{
display: none !important;
}

html {
	width: 100vw;
	overflow: hidden;
    background-color: var(--khaki);
	scroll-behavior: auto !important;
    /* scroll-snap-type: y proximity;  */
}
html * {
	box-sizing: border-box;
}

/* body.admin-bar {
	margin-top: 46px;
} */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

html, body {
    scroll-behavior: smooth;
	position: relative;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}
article{
	position: relative;
	z-index: 2;
}

audio,
canvas {
	display: inline-block;
	max-width: 100%;
}

html {
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body,
button,
input,
textarea {
	border:none;
	color: var(--white-cream);
	font-size: 18px;
	letter-spacing: -0.015em;
	line-height: 1.5;
	-webkit-appearance: none;
	border-radius: 0;
}
input[type="radio"]{
	-webkit-appearance: radio;
}

body{
	font-family: var(--font-regular);	
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
	font-size: 16px;
	line-height: 18px;
	-webkit-font-feature-settings: 'lnum';
	-moz-font-feature-settings: 'lnum';
	-ms-font-feature-settings: 'lnum';
	background-color: var(--sand);
    width: 100%;
    /* overflow-y: scroll; */
	scroll-behavior: smooth;
}

a {
	color: var(--white-cream);
	text-decoration: none;
}
.the_content a,
.content a {
    color: var(--mocha);
	
}
.the_content a:not(:has(img)):not(.lynea_button),
.content a:not(:has(img)):not(.lynea_button) {
	border-bottom: 1px solid var(--mandarin);
}
.the_content a:hover,
.content a:hover {
    color: var(--mandarin);
	
}
.textcontent a,
.textcontent a {
    color: var(--mocha);
	border-bottom: 2px solid var(--mocha);
	transition: color 0.1s ease-in-out, border-color 0.1s ease-in-out;
}
.textcontent a:hover,
.textcontent a:hover {
    color: var(--mandarin);;
	border-color: var(--mandarin);;
}
a:focus {
	outline: none;
}

a:hover,
a:active {
	outline: 0;
}

a:active,
a:hover {
	
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	margin: 36px 0 12px;
}

h1 {
	font-size: 26px;
	line-height: 1.3846153846;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

h2 {
	font-size: 24px;
	line-height: 1;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

h3 {
	font-size: 22px;
	line-height: 1.0909090909;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

h4 {
	font-size: 20px;
	line-height: 1.2;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

h5 {
	font-size: 18px;
	line-height: 1.3333333333;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

h6 {
	font-size: 16px;
	line-height: 1.5;
    font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
}

address {
	font-style: italic;
	margin-bottom: 24px;
}

abbr[title] {
	border-bottom: 1px dotted #2b2b2b;
	cursor: help;
}

b,
strong {
    font-family: var(--font-medium);
}

cite,
dfn,
em,
i {
	font-style: italic;
}

mark,
ins {
	text-decoration: none;
}

p {
	margin-bottom: 24px;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: monospace, serif;
	font-size: 15px;
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
	line-height: 1.6;
}

pre {
	border: 1px solid rgba(0, 0, 0, 0.1);
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	margin-bottom: 24px;
	max-width: 100%;
	overflow: auto;
	padding: 12px;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
	quotes: none;
}

small {
	font-size: smaller;
}

big {
	font-size: 125%;
}

sup,
sub {
	font-size: 65%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1.7ex;
}

sub {
	top: 1.7ex;
}

dl {
	margin-bottom: 24px;
}

dt {

}

dd {
	margin-bottom: 24px;
}

ul,
ol {
	list-style: none;
	margin: 0 0 24px 20px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin: 0 0 0 20px;
}

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
}

figure {
	margin: 0;
}

fieldset {
	border: 1px solid rgba(0, 0, 0, 0.1);
	margin: 0 0 24px;
	padding: 11px 12px 0;
}

legend {
	white-space: normal;
}

button,
input,
select,
textarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 100%;
	margin: 0;
	max-width: 100%;
	vertical-align: baseline;
}

button,
input {
	line-height: normal;
}


button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
input[disabled] {
	cursor: default;
}

input[type="radio"] {
	padding: 0;
}

input[type="checkbox"]{
	-webkit-appearance: checkbox;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

table,
th,
td {
	border: 1px solid rgba(0, 0, 0, 0.1);
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin-bottom: 24px;
	width: 100%;
}

caption,
th,
td {
	text-align: left;
}

th {
	border-width: 0 1px 1px 0;
}

td {
	border-width: 0 1px 1px 0;
}

del {
	color: #767676;
}

hr {
	background-color: rgba(0, 0, 0, 0.1);
	border: 0;
	height: 1px;
	margin-bottom: 23px;
}


::selection {
	background: #222222;
	color: #fff;
	text-shadow: none;
}

::-moz-selection {
	background: #222222;
	color: #fff;
	text-shadow: none;
}

.custom-cursor {
	display: none;
}

.cky-btn-revisit-wrapper {
	background-color: var(--mocha) !important;
	bottom: 20px !important;
	left: 20px !important;
	position: absolute !important;
}
.cky-preference-content-wrapper a,
.cky-notice-des a {
	color: var(--mocha);
	font-family: var(--font-medium);
}
.cky-preference-center{
	background-color: white !important;
}
.cky-footer-shadow{
	display: none !important;
}
.cky-switch input[type="checkbox"]:checked{
	background-color: #589566 !important;
}
.cky-revisit-bottom-left:hover::before{
	background-color: #453223 !important;
}
.cky-revisit-bottom-left:hover::after{
	border-right-color: #453223 !important;
}

footer .inner p.lang_switcher{
	margin-top: 30px;
}
footer .inner p.lang_switcher a{
	font-size: 14px;
	line-height: 16px;
	margin: 0 10px;
}

/**
*TRANSITIONS
*/
.bgtransition{
	-webkit-transition : background 150ms ease-in-out;
	  -moz-transition : background 150ms ease-in-out;
	  -o-transition : background 150ms ease-in-out;
	  transition : background 150ms ease-in-out;
}
.widthtransition{
	-webkit-transition : width 250ms ease-out;
	  -moz-transition : width 250ms ease-out;
	  -o-transition : width 250ms ease-out;
	  transition : width 250ms ease-out;
}
.heighttransition{
	-webkit-transition : height 250ms ease-out;
	  -moz-transition : height 250ms ease-out;
	  -o-transition : height 250ms ease-out;
	  transition : height 250ms ease-out;
}
.bgcolortransition{
	-webkit-transition : background-color 250ms ease-out;
	  -moz-transition : background-color 250ms ease-out;
	  -o-transition : background-color 250ms ease-out;
	  transition : background-color 250ms ease-out;
}
.colortransition{
	-webkit-transition : color 250ms ease-out;
	  -moz-transition : color 250ms ease-out;
	  -o-transition : color 250ms ease-out;
	  transition : color 250ms ease-out;
}
.bordercolortransition{
	-webkit-transition : border-color 250ms ease-out;
	  -moz-transition : border-color 250ms ease-out;
	  -o-transition : border-color 250ms ease-out;
	  transition : border-color 250ms ease-out;
}

.opacitytransition{
	-webkit-transition : opacity 250ms ease-out;
	  -moz-transition : opacity 250ms ease-out;
	  -o-transition : opacity 250ms ease-out;
	  transition : opacity 250ms ease-out;
}
.toptransition{
	-webkit-transition : top 250ms ease-out;
	  -moz-transition : top 250ms ease-out;
	  -o-transition : top 250ms ease-out;
	  transition : top 250ms ease-out;
}

.uprc{
	text-transform: uppercase;
}	

.posr{
	position: relative;
}
.posa{
	position: absolute;
}
.inlb{
	display: inline-block;
}

.desktext{
	display: none;	
}
.mobext{
	display: inline;	
}

.table{
	width: 100%;
	height: 100%;
	display: table;
}
.table .cell{
	width: 100%;
	display: table-cell;
	vertical-align: middle;
}

.hide {
	display: none;
}
.centerit{
	text-align: center;
	display: block;
	clear: both;
}

.fixfloat{
	clear: both;
}

/* LIBRARY */

.modulmargin {
    margin: 50px 0;
}


/**
 * 2.0 Repeatable Patterns
 * -----------------------------------------------------------------------------
 */

input:not(.cky-switch input),
textarea {
	background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0));
	text-align: left;
	border-style: none;
	color: var(--mocha);
	padding: 18px 18px 11px;
	font-size: var(--font-size-small);
	line-height: 20px;
	letter-spacing: 0em;
	border: solid 2px #dadada;
	background: none;
	background-color: var(--sand);
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0px 1000px var(--white-cream) inset !important;
	box-shadow: 0 0 0px 1000px var(--white-cream) inset !important;
	background-color: transparent !important;
	color: var(--mocha) !important;
	opacity: 1 !important;
}


textarea {
	width: 100%;
	line-height: 16px;
}

input:focus,
textarea:focus {
	outline: 0;
}

.smallgrid,
.textgrid {
	width: calc(100% - 46px);
	margin: 0 auto !important;
}
.widegrid {
	width: calc(100% - 20px);
	margin: 0 auto !important;
}

.roundbtn {
	border-radius: var(--rounded-radius);
	font-size: var(--font-size-button);
	border: 1px solid var(--darkpink);
	letter-spacing: var(--letter-spacing-tight);
	color: var(--darkpink);
	padding: 24px 30px 22px;
	transition : background-color 200ms ease-in-out;
	font-family: var(--font-regular);
}
.roundbtn:hover {
	background-color: var(--white);
}

#main {
	margin-bottom: 100px;
}
/*
 *	Header
 * ------------------------------------
 */
 
 .lang_menu {
    position: relative;
    top: 1px;
    font-family: var(--font-medium);
    margin-right: 10px;
    font-size: 16px;
 }

 body.fullscreen-open header {
	 display: none;
 }
 header {
	 position: fixed;
	 top: 0;
	  width: 100%;
	  z-index: 10;
	  padding: 20px 0;
	  background: transparent;
	  transition: background 0.3s ease-in-out;
 }
 header.scrolled:not(.active),
 html body.single-nyheter header:not(.active), 
 html body.page.singular:not(.has_banner) header:not(.active),
 html body:not(.has_banner).post-type-archive header:not(.active),
 .error404 header:not(.active)  {
	  /* background: rgba(69, 50, 35, 0.5); */
	  background: var(--sand);
	  border-bottom: 1px solid rgba(69, 50, 35, 0.2);
 }

header.active {
	background: var(--lime) !important;
	border-bottom: 1px solid rgba(255, 228, 175, 0.2);
}
header.active .logo {
	background-image: url(images/logo/lynea-logo-sand.svg) !important;
}
header.active .menu-toggle span {
	background: var(--khaki) !important;
}
 .site-header {
	 display: flex;
	 justify-content: space-between;
	 align-items: center;
	 /* padding: 15px 20px; */
	 color: #fff;
	 width: 100%;
 }

 .site-header .right {
    display: flex;
 }
 .site-header .right .menu {
    display: none;
    list-style-type: none;
    margin: 0;
    gap: 30px;
    margin-right: 60px

 }
 header .right .menu li a {
    transition: border 0.2s ease-in-out;
    position: relative;
    padding-bottom: 2px;
	font-size: 20px;
	font-family: var(--font-medium);
 }
header .right .menu li a::after,
header .right .menu .current-menu-item a::after {
	 content: '';
	 position: absolute;
	/* width: 100%;
	 height: 2px;
	 background-image: repeating-linear-gradient(to right, var(--khaki) 0%, var(--khaki) 2px, transparent 2px, transparent 7px);
	 background-size: 7px 100%;  
	 bottom: 0;
	 left: 0;  */
	 opacity: 0;
	 transition: opacity 0.2s ease-in-out;

     /* width: calc(100% + 3px); */
     width: var(--dot-width, 100%);
     left: var(--dot-offset, 0);
     height: 4px;
     background-image: url(images/svg/dot-khaki.svg);
     /* background-repeat: repeat-x; */
     background-size: 10px 100%;
     bottom: 0;
     /* left: -1.5px; */
     /* transform: translateX(-1.5px); */
 }


  header.scrolled:not(.active) .right .menu li a {
    color: var(--mocha);
    font-family: var(--font-medium);
 }
  header.scrolled:not(.active) .right .menu li a::after,
  body:not(.has_banner) header .right .menu .current-menu-item a::after {
   /* background-image: repeating-linear-gradient(to right, var(--mocha) 0%, var(--mocha) 2px, transparent 2px, transparent 7px);  */
   background-image: url(images/svg/dot-mocha.svg);
 }
 header .right .menu li:hover a::after,
header .right .menu .current-menu-item a::after  {
    opacity: 1;
 }

 .home header:not(.scrolled) .right .menu,
 .home header.active .right .menu,
 .home header.active .lang_menu {
    display: none;
 }  
 .home header:not(.scrolled) .lang_menu,
 .home header:not(.scrolled) .lang_menu a {
    color: var(--khaki);
 }  
 
 /* Logo */
 body.home header:not(.scrolled):not(.active) .logo{
    opacity: 0;
 }
 header .logo {
 	width: 75px;
	height: 22px;
	background-image: url(images/logo/lynea-logo-sand.svg);
	background-size: contain;
	background-repeat: no-repeat;
	position: relative;
	top: 2px;
 }
 
 header.scrolled:not(.active) .logo,
 html body.single-nyheter header .logo, 
 html body.page.singular:not(.has_banner) header .logo,
 html body:not(.has_banner).post-type-archive header .logo,
 .error404 header:not(.active) .logo {
	 background-image: url(images/logo/lynea-logo-mocha.svg);
 }
 
 /* 3-Dot Menu Button */
 .menu-toggle {
	 display: flex;
	 /* gap: 5px; */
	 background: none;
	 border: none;
	 cursor: pointer;
	 padding: 5px;
	 /* transition: gap 0.2s linear, transform 0.2s linear; */
	 transform: translate3d(0, 0, 0);
     width: 60px;
     justify-content: end;
     position: relative;
     top: -2px;
 }
 .menu-toggle:hover,
 header.active .menu-toggle {
 	/* gap: 7px; */
	/* transform: translateX(2px); */
 }
 .menu-toggle span {
    transition: margin 0.1s linear;
 }
 .menu-toggle span:first-of-type {
    margin-right: 5px;
 }
 .menu-toggle span:last-of-type {
    margin-left: 5px;
    margin-right: 3px;
 }
 .menu-toggle:hover span:first-of-type,
 header.active .menu-toggle span:first-of-type {
    margin-right: 8px;
 }
 .menu-toggle:hover span:last-of-type,
 header.active .menu-toggle span:last-of-type {
    margin-left: 8px;
    margin-right: 0px;
 }
 
 .menu-toggle span {
	 width: 10px;
	 height: 10px;
	 background: var(--khaki);
	 border-radius: 50%;
	 display: block;
 }
 
 header.scrolled:not(.active) .menu-toggle span,
 html body.single-nyheter header .menu-toggle span,
 html body.page.singular:not(.has_banner) header .menu-toggle span,
 html body:not(.has_banner).post-type-archive header .menu-toggle span,
 .error404 header:not(.active) .menu-toggle span  {
	 background: var(--mocha);
 }


 html body.single-nyheter header .menu li a,
 html body.page.singular:not(.has_banner) header .menu li a,
 html body:not(.has_banner).post-type-archive header .menu li a,
 .error404 header:not(.active) .menu li a,
 header.scrolled:not(.active)  .lang_menu a,
 header.scrolled:not(.active)  .lang_menu{
	 color: var(--mocha);
 }
 header.scrolled:not(.active)  .lang_menu a:hover {
    border-bottom: 1px solid var(--mocha);
 }
 .lang_menu a:hover {
	border-bottom: 1px solid var(--khaki);
 }

 header.active .lang_menu {
    display: none;
 }
 html body.single-nyheter header .menu li:hover a::after,
 html body.page.singular:not(.has_banner) header .menu li:hover a::after,
 html body:not(.has_banner).post-type-archive header .menu li:hover a::after  {
	 /* background-image: repeating-linear-gradient(to right, var(--mocha) 0%, var(--mocha) 2px, transparent 2px, transparent 7px);  */

     background-image: url(images/svg/dot-mocha.svg);
 }
 
 /* Hidden Menu */
.mobile-menu {
	 position: fixed;
	 top: 0;
	 left: 0;
	 width: 100%;
	 height: 100vh;
	 background: var(--lime);
	 padding: 20px;
	 padding-top: 80px;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 flex-direction: column;
	 z-index: 3;
	 transform: translateY(-100%);
	 transition: transform 0.3s ease-in-out;
 }
 
 .mobile-menu.active {
	 transform: translateY(0);
 }

  
 .mobile-menu ul {
	 list-style: none;
	 padding: 0;
	 margin: 0;
 }
 .mobile-menu ul {
 	opacity: 0;
	 transition: opacity 1.3s ease-in;
 }
.active.mobile-menu ul {
 	opacity: 1;
 }
 
 .mobile-menu ul li {
	 margin-bottom: 20px;
	 text-align: center;
 }
 
 .mobile-menu ul li a {
	 color: var(--sand);
	 text-decoration: none;
	 font-size: 18px;
	 position: relative;
	 font-family: var(--font-goodman);
 }
 .mobile-menu ul li a::after {
	content: '';
	position: absolute;
	opacity: 0;
	transition: opacity 0.2s ease-in-out;
	/* bottom: -3px;
	left: 0; */
 }
 .mobile-menu ul li:hover a::after {
	/* width: 100%;
	height: 2px;
	background-image: repeating-linear-gradient(to right, var(--khaki) 0%, var(--khaki) 2px, transparent 2px, transparent 7px); 
	background-size: 7px 100%;  */
	opacity: 1;

    /* width: calc(100% + 3px); */
    width: var(--dot-width, 100%);
    left: var(--dot-offset, 0);
    height: 4px;
    background-image: url(images/svg/dot-khaki.svg);
    /* background-repeat: repeat-x; */
    background-size: 10px 100%;
    bottom: -2px;
    /* transform: translateX(-1.5px); */
 }
 .mobile-menu img {
	 width: 80px;
	 height: auto;
	 object-fit: contain;
	 margin: 50px 0 0 20px;
 }
 

 /* @supports (-moz-appearance: none) {
    html, body {
      scroll-snap-type: none !important;
    }
  } */
  
 /* 404 */

 .title-404, 
 .title-404 a {
    color: var(--mocha);
    text-align: center;
 }
 .title-404 a {
    font-family: var(--font-medium);
 }
 
 
 
 .multi-dropdown {
	 margin-bottom: 10px;
 }
 .md-label { 
	 display:block; 
	 font-weight:600; 
	 margin-bottom:0.4rem; 
 }
 
 .md-title {
	 margin-left: 18px;
	 position: relative;
	 top: 4px;
 }
 /* Knapp */
 .md-toggle {
 	position: relative;
   display:flex;
   align-items:center;
   cursor:pointer;
   width: 100%;
   height: 60px;
   border: solid 1px #453223;
   border-radius: 8px;
   font-size: 14px;
   font-family: 'ApercuRegular';
   color: var(--mocha);
   background-color: #f2e0c0;
   background-color: var(--white-cream);
   padding: 0;
 }
 .md-toggle:hover,
 .md-toggle.open {
   background-color: #f2e0c0;
 }
 .md-toggle::after {
 	 content: "";
	 position: absolute;
	 width: 30px;
	 height: 30px;
	 border: 1px solid #453223;
	 border-radius: 50%;
	 right: 4%;
	 top: 53%;
	 transform: translateY(-50%);
	 z-index: 0;
	 background-image: url(images/svg/dropdown-pil.svg);
	 background-repeat: no-repeat;
	 background-size: 50%;
	 background-position: 48.5% 55%;
 }
 .md-toggle.open {
 	border-bottom-left-radius: 0px; 
	  border-bottom-right-radius: 0px; 
 }
 .md-toggle.open::after {
	  transform: translateY(-50%) rotate(180deg);
	  background-position: 50% 50%;
 }

 
 /* Summering av val inuti knappen */
 .md-summary { 
	 position:relative;
	 top: 4px;
	 color: var(--mocha);
	 margin-left: 5px;
 }
 
 /* Panel som expanderar i flödet (pushar ner innehåll) */
 .md-panel { 
	 display:none; 
	 border:1px solid var(--mocha); 
	 padding:0.6rem; 
	 border-bottom-left-radius: 8px; 
	 border-bottom-right-radius: 8px; 
	 background-color: #f2e0c0;
	 color: var(--mocha);
	 top: -1px;
	 position: relative;
	 padding-bottom: 0;
 }
 .md-panel[aria-hidden="false"] { 
	 display:block;
  }
 
 /* Items */
 .md-item {
	  display: flex;
	  padding: 0.3rem 0;
	  cursor: pointer;
	  align-items: center;
	  margin-bottom: 5px;
  }
 .md-item:first-of-type {
 	font-family: var(--font-medium);
  }
 .md-item input { 
	 margin-right:0.6rem;
  }
 
 /* Actions */
 .md-panel-actions { 
	 margin-top:0.6rem; display:flex; gap:0.5rem; 
 }
 .md-clear, .md-close { padding:0.35rem 0.6rem; border-radius:5px; border:0; cursor:pointer; background:#eee; }
 
 
/*
 *	Top splash
 * ------------------------------------
 */
 
 .topsplash {
	  background-size: cover;
	  height: 100vh;
	  width: 100%;
	  position: relative;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  background-position: center;
  }
  
  .topsplash .video {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
  }
 .topsplash .overlay{
	 position: absolute;
	 top: 0;
	 left: 0;
	 width: 100%;
	 height: 100%;
	 z-index: 2;
  }
 .topsplash .content {
	 position: relative;
	 z-index: 2;
     width: 100%;
	 margin-top: 0px;
 }
 .topsplash .content .slogan{
 	font-size: var(--font-size-slogan);
	line-height: 1;
	color: var(--darkpink);
	font-family: var(--font-medium);
	letter-spacing: var(--letter-spacing-tight);
	width: 90%;
	text-align: center;
	margin: 0 auto 24px;
 }
 
 .topsplash .btn_holder {
	 align-items: center;
	 display: flex;
	 justify-content: center;
	 gap: 10px;
	 flex-wrap: wrap;
 }
 
 .topsplash .lynea_button {
	 margin: 0;
 }
 .topsplash .content .extra_text{
 	font-size: 16px;
	line-height: 1;
	color: var(--darkpink);
	font-family: var(--font-medium);
	letter-spacing: var(--letter-spacing-tight);
	width: 90%;
	text-align: center;
	margin: 0 auto 24px;
	/* max-width: 300px; */
 }
 .topsplash .content .img-holder{
	 width: 90%;
	 margin: 0 auto;
     max-width: 300px;
 }
.single-project .topsplash .content .img-holder{
	 width: 90%;
	 margin: 0 auto;
 }
.single-project .topsplash .content{
	margin-top: 0;
 }
 .topsplash .content .img-holder img{
	 width: 100%;
	 margin-bottom: 20px;
 }
 .project_page .topsplash .content .img-holder img{
	 margin-bottom: 0px !important;
 }
 
  
 /*
  *	Modules
  * ------------------------------------
  */
  
  
/*** Floating projects module ***/

.floating_projects {
	padding-top: 40px;
	padding-bottom: 20px;
	/* height: 980px; */
	max-width: 1800px;
	margin: 100px auto !important;
} 
.floating_projects .inner {
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: relative;
	opacity: 1;
	transition: transform 0.1s linear;
	-webkit-transition: transform 0.1s linear;
	z-index: 1;
	will-change: transform;
}

.floating_projects .item {
	background-size: cover;
	background-position: center top;
	width: 100%;
	height: 450px;
	border-radius: var(--puff-border-radius);
	padding: 20px 22px 26px;
	color: var(--white-cream);
	position: relative;
	display: block;
	will-change: height, transform;
	transform: translate3d(0, 0, 0);
	backface-visibility: hidden;
	perspective: 1000px;
	/* Optional tiny rotation for extra GPU hint */
	transform: translate3d(0, 0, 0) rotate(0.001deg);
	/* transition: height 0.1s linear;
	-webkit-transition: height 0.1s linear; */
}
.floating_projects .item .overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: var(--puff-border-radius);
	transition: background-color 0.2s ease-in-out;
	-webkit-transition: background-color 0.2s ease-in-out;
}

.floating_projects .item:hover .overlay{
	background-color: rgba(0,0,0, 0.2);
}
/* .floating_projects .item.expanded {
	height: 450px;
    transition: height 0.9s ease-in-out;
} */
.floating_projects .item .content {
	opacity: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
    transition: opacity 0.3s ease-in-out;
}
.floating_projects .item.expanded .content {
    opacity: 1;
    transition: opacity 1.5s ease-in-out;
	z-index: 1;
	position: relative;
}
.floating_projects .item .content .vinjett {
	font-family: var(--font-medium);
	font-size: 18px;
	letter-spacing: var(--letter-spacing-tight);
}
.floating_projects .item .content .title {
	font-family: var(--font-medium);
	font-size: 22px;
	letter-spacing: var(--letter-spacing-tight);
	margin-bottom: 10px;
}
.floating_projects .item .content .ingress {
	font-size: 15px;
	letter-spacing: var(--letter-spacing-tight);
	margin-bottom: 10px;
}
.floating_projects .item .content .link {
	border-bottom: 2px solid var(--white-cream);
	font-family: var(--font-medium);
	width: fit-content;
	font-size: 15px;
}
.floating_projects .item .logo {
	height: 80%;
    max-width: 75%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    max-height: 150px;
    transition: opacity 1s ease-in-out;
	opacity: 0;
}
/* Ändring här */
.floating_projects .item.in_view .logo{
 	opacity: 1;
}


/* Timeline */

.timeline-container {
    position: relative;
    width: 100%;
    height: 120px;
    margin-bottom: 40px;
}

.timeline-line {
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: black;
}

.timeline-points {
    position: relative;
    height: 100%;
}

.timeline-point {
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    text-align: center;
    /* width: 20%; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.timeline-svg {
    position: relative;
    top: 39px;
    /* transform: translateX(-50%); */
    background-image: url('images/svg/tidlinje.svg');
    width: 25px;
    height: 25px;
    background-size: contain;
    background-repeat: no-repeat;
    left: 0px;
    background-position: center;
}
.timeline-svg.last {
    left: -10px;
}
.timeline-svg.point-1 {
    left: 10px;
}
.timeline-text.last {
    position: relative;
    left: -50%;
}
.timeline-text.point-1 {
    position: relative;
    left: 50%;
	text-align: left;
}
@keyframes pulse {
    0%, 100% {
        transform: translate(-50%, -50%) scale(1);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.2);
    }
}

.timeline-svg.aktiv::after {
    position: absolute;
    content: '';
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url('images/svg/blob-list.svg');
    width: 40%;
    height: 40%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    animation: pulse 2s ease-in-out infinite;
}

.timeline-svg.point-2 {
    transform: rotate(35deg);
}
.timeline-svg.point-3 {
    transform: rotate(70deg);
}
.timeline-svg.point-4 {
    transform: rotate(105deg);
}
.timeline-svg.point-5 {
    transform: rotate(140deg);
}
.timeline-svg.point-6 {
    transform: rotate(175deg);
}
.timeline-text {
    margin-top: 45px;
    font-size: 12px;
    line-height: normal;
    font-family: var(--font-medium);
    width: 100%;
    text-align: center;
    white-space: nowrap;
}


/* .timeline-text.last {
    transform: translateX(-15px);
} 
.timeline-text.point-1 {
    text-align: right;
    transform: translateX(23px);
} */


/*** Text module ***/

.text_module {
	margin: 100px 0px;
}
.text_module .inner {
	color: var(--mocha);
}
.text_module .inner .title {
	text-align: center;
	font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
	line-height: 1;
	margin-bottom: 30px;
}
.text_module .inner p {
	font-size: var(--font-size-paragraf);
	line-height: var(--line-height-paragraf);
    text-align: justify;
}
.text_module .signature p {
	margin-bottom: 10px;
}
.text_module .signature .name {
	font-size: 26px;
	line-height: 30px;
}
.text_module .signature .role {
	font-size: 13px;
	line-height: 17px;
}

.flexible_text_module.expandable {
	overflow: hidden;
}
.flexible_text_module.closed {
	/* display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 8;
	overflow: hidden;
	position: relative; */
    /* max-height: 365px;  */
	overflow: hidden;
	position: relative;
}
/* .flexible_text_module.closed > .textcontent:nth-of-type(n+3) {
    display: none;
  } */

.flexible_text_module.closed::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 2.5em;
	background: linear-gradient(to bottom, rgba(252, 237, 210, 0), #fcedd2);
	pointer-events: none;
}


.text_module_container .readmore {
	color: var(--mocha);
	width: fit-content;
	margin: 0 auto;
	cursor: pointer;
	font-family: var(--font-medium);
	margin-top: 13px;
	font-size: 18px;
	position: relative;
    padding-left: 25px;
}
.text_module_container .readmore::before {
	width: 14px;
	height: 14px;
	left: 3px;
	top: 0px;
	position: absolute;
	content: '';
	background-image: url(images/svg/plus-mandarin.svg);
}
.text_module_container .readmore.open::before {
	background-image: url(images/svg/minus-mandarin.svg);
	height: 3px;
	top: 6px;
}


/***** Distance & Connections ******/

.project_info .module_title,
.archive .module_title {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 25px;
}
.distance_connections .columns {
	display: flex;
	flex-direction: column;
    gap: 20px;
}
.distance_connections .column .row {
	display: flex;
	padding: 14px 10px 11px 0px;
	border-bottom: 1px solid #d7cab5;
	font-size: 14px;
	gap: 6px;
    align-items: center;
}

.distance_connections .row .icon img {
	width: 100%;
    height: 100%;
    object-fit: contain;

}
.distance_connections .row .icon {
	width: 25px;
    height: 25px;
    flex-shrink: 0;
}
.distance_connections .row .place {
	font-family: var(--font-medium);
    padding-top: 3px;
    flex-shrink: 0;
}
.distance_connections .row .distance {
    padding-top: 3px;
    flex-shrink: 1;
}
.distance_connections .title {
	font-family: var(--font-medium);
    font-size: 25px;
    margin: 0 0 10px 0;
}
/***** Key documents ******/

.key_documents {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.key_documents .title {
    margin-bottom: 25px;
}

.key_documents .lynea_button {
    /* background-color: var(--mocha);
    color: var(--sand) !important; */
    border: 2px solid var(--mocha)
}
/* .key_documents .lynea_button:hover {
    background-color: var(--white-cream);
    color: var(--mocha) !important;
} */
.key_documents .documents {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.key_documents .document {
    width: 250px;
}
.doc_title {
    font-family: var(--font-medium);
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    margin-bottom: 20px;
}

/***** House tour ******/


.embed_container .video-preview {
	position:relative; 
	cursor:pointer;
    
}

.embed_container .textcontent {
    text-align: center;
}

.embed_container .video-preview img{
	width:100%; 
	display:block;
	height:75vh; 
	border-radius: 12px;
	object-fit: cover;
	max-height: 800px;
    box-shadow: 0 0 8px rgba(128, 128, 128, 0.4);
}
.embed_container .video-preview .start-video{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	font-size:1.2rem;
	cursor:pointer;
	color: #000;
	padding: 23px 30px 21px;
	border-radius: 36px;
	width: 180px;
	background-color: var(--sand);
	color: var(--mocha) !important;
	transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
	letter-spacing: var(--letter-spacing-tight);
    border: 2px solid var(--mocha);
}
.embed_container .video-preview .start-video:hover{
	background-color: var(--mocha);
	color: var(--sand) !important;
}

.mobile-fullscreen-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 9999;
}

.mobile-fullscreen-overlay .close-fullscreen {
	position: absolute;
	top: 1rem;
	right: 1rem;
	font-size: 1rem;
	cursor: pointer;
	z-index: 10;
	padding: 18px 23px 16px;
	border-radius: 36px;
	background-color: var(--sand);
	color: var(--mocha) !important;
	transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
	letter-spacing: var(--letter-spacing-tight);
}


/***** Koncept module ******/
.concept_section {

	height: calc(100vh - 63px);
	position: relative;
	/* padding-top: 63px; */
}
.has_nav .concept_section {
	/* padding-top: 126px; */
	height: calc(100vh - 126px);
}
.concept_section .swiper-container{
	height: 100%;
}

.konceptswiper .slide-overlay {
	width: 100%;
	height: 100%;
	background-color: rgba(65, 44, 3, 0.3);
	text-align: center;
	/* display: flex;
	justify-content: end;
	align-items: center;
	flex-direction: column; */
	position: absolute;
	top: 0;
	left: 0;
}

.konceptswiper .swiper-slide {
	background-repeat: no-repeat;
	background-size: cover;
}

.konceptswiper .slide-content {
	width: 90%;
	position: absolute;
	bottom: 0px;
	left: 5%;
	height: 280px;
    color: var(--white-cream);
}
.konceptswiper .slide-overlay .title{
	margin: 0 0 35px;
	font-size: 33px;
	line-height: 1;
}

.konceptswiper .slide-overlay .desc{
	font-size: 17px;
	line-height: 21px;
}

.concept_section .swiper-pagination {
	position: absolute;
	bottom: 20px; /* adjust as needed */
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 10px;
    z-index: 1;
}
.concept_section .swiper-pagination-bullet {
	width: 40px;
	/* opacity: 0.7; */
	height: 4px;
	border-radius: 4px;
	background: #b9a077;
	opacity: 0.3;
}
.concept_section .swiper-pagination {
	position: absolute;
	bottom: 20px; /* adjust as needed */
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 10px;
}
.concept_section .swiper-pagination-bullet-active {
	background: #b9a077;
	opacity: 1;
}
.concept_section .swiper-button-next::after,
.concept_section .swiper-button-prev::after {
	content: '';
}
.concept_section .swiper-button-next {
	background-image: url('images/svg/carousel-right.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 25px;
    right: 15px;
}
.concept_section .swiper-button-prev {
	background-image: url('images/svg/carousel-left.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 25px;
    left: 15px;
}

/**** News slider module ****/

.news-thumbnail {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
.news-slider .current {
    pointer-events: none;
}
.news-slider .current .news-thumbnail::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    background-color: var(--mocha);
    opacity: 0.7;
}
.news-slider .item:not(.current):hover img {
    transform: scale(1.06);
}
.news-slider {
    overflow: hidden;
    position: relative;
    margin: 150px 0;
}
.news-thumbnail img {
    object-fit: cover;
    width: 100%;
    height: 220px;
    transition: transform 0.25s ease-in-out;
}
.alternate .news-thumbnail img {
    height: 280px;
}
.news-slider .item {
    width: 280px;
}
.news-slider .module_title {
    color: var(--mocha);
    text-align: center;
    margin: 0 0 50px;
    font-size: var(--font-size-large);
    font-family: var(--font-goodman);
}
.news-slider .inner {
    /* position: relative; */
    clip-path: inset(-100vw -100vw -100vw 0);
    /* overflow: hidden; */
}
.news-slider .item .title {
    color: var(--mocha);
    margin: 15px 10px 15px 10px;
    font-size: var(--font-size-paragraf);
    line-height: var(--line-height-paragraf);
    font-family: var(--font-medium);
}
.news-slider .item .date {
    color: var(--mocha);
    margin: 0 10px;
    font-size: 13px;
}
.news-slider .swiper-button-next, 
.news-slider .swiper-button-prev {
    top: 47%;
}
.news-slider .swiper-button-next {
    right: 40px;
}
.swiper-button-disabled {
    display: none;
}


/** Single Nyheter / News **/

.single-nyheter header {
    /* background: var(--mocha); */
}

.page_container {
    color: var(--mocha);
    padding-top: 150px;
    margin-bottom: 200px;
    position: relative;
}
/* .page_container:not(.has_banner) {
    padding-top: 200px;
} */

.page_container.news_article .date {
    font-family: var(--font-medium);
    margin: 0 0 25px 0px;
    font-size: var(--font-size-small);
	text-align: center;
}
.the_content{
    color: var(--mocha);
    margin: 0 auto;
    position: relative;
}

.the_content h1,
.content h1 {
    font-size: 36px;
    line-height: 1.15;
    font-family: var(--font-goodman);
    margin: 0 0 35px;
    text-align: center;
}

.the_content figure,
.content figure {
    margin-bottom: 30px;
}

.the_content .wp-block-button__link,
.content .wp-block-button__link {
    background: var(--mocha);
    margin-bottom: 20px;
    color: var(--white-cream);
    padding: calc(.877em + 2px) calc(3.333em + 2px);
}

.the_content h2,
.the_content h3,
.the_content h4,
.the_content h5,
.the_content h6,
.the_content h2 strong,
.the_content h3 strong,
.the_content h4 strong,
.the_content h5 strong,
.the_content h6 strong,
.the_content h2 b,
.the_content h3 b,
.the_content h4 b,
.the_content h5 b,
.the_content h6 b,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6,
.content h2 strong,
.content h3 strong,
.content h4 strong,
.content h5 strong,
.content h6 strong,
.content h2 b,
.content h3 b,
.content h4 b,
.content h5 b,
.content h6 b {
    font-size: var(--font-size-heading);
    font-family: var(--font-goodman);
}

.the_content h3,
.content h3 strong {
	font-size: calc(var(--font-size-heading) - 5px);
}

.the_content h4,
.content h4 strong{
	font-size: calc(var(--font-size-heading) - 6px);
}

.the_content h5,
.the_content h6,
.content h5 strong,
.content h6 strong {
	font-size: calc(var(--font-size-heading) - 7px);
}

.the_content p,
.the_content ul li,
.the_content ol li,
.the_content a,
.content p,
.content ul li,
.content ol li,
.content a {
    font-size: var(--font-size-paragraf);
    line-height: var(--line-height-paragraf);
    /* text-align: justify; */
}

/* FÖR ÖVER NEDAN */
.project_info .content p a {
	font-family: var(--font-medium);
	/* border-bottom: 1px solid var(--mocha); */
}
/* SLUT PÅ FÖR ÖVER */
.the_content ul,
.content ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.the_content ul li:not(.ui-menu-item),
.content ul li:not(.ui-menu-item) {
    position: relative;
    padding-left: 1.5em;
    margin-bottom: 8px;
}

.the_content ul li:not(.ui-menu-item)::before,
.content ul li:not(.ui-menu-item)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 15px;
    height: 15px;
    /* background-color: var(--mandarin);
    border-radius: 50%; */
    background: url(images/svg/blob-list.svg);
    background-size: contain;
    background-repeat: no-repeat;
}


.article_top img {
    width: 100%;
    height: auto;
    object-fit: contain;
    margin-bottom: 50px;
	border-radius: 25px;
    z-index: 1;
    position: relative;
}

/*** FAQ module ***/

.faq_module {
	background-size: cover;
	background-position: center;
	padding: 80px 0 100px;
	position: relative;
    margin-bottom: 100px;
	z-index: 1;
}
.faq_module .overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: #412c03;
	top: 0;
	left: 0;
	opacity: 0.6;
	z-index: 1;
}
.faq_module .inner {
	z-index: 1;
	position: relative;
}
.faq_module .title {
	text-align: center;
    color: var(--mandarin);
	margin: 0 0 45px;
}

.faq_module  .item {
	cursor: pointer;
	padding-top: 25px;
	padding-bottom: 20px;
	position: relative;
}
.faq_module .item .question {
    color: var(--white-cream);
    transition: color 0.2s ease-in-out;
}
.faq_module .item.open .question {
    color: var(--mocha);
}

.faq_module .item::after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 50%;
	transform: translateX(-50%);
	width: 95%; /* Adjust the width to 95% */
	border-bottom: 1px solid var(--khaki); /* Apply the border */
	z-index: 1;
	opacity: 0.5;
}
.faq_module  .item.open::after {
	opacity: 0;
}
.faq_module .textcontent a {
	position: relative; z-index: 2 !important; pointer-events: auto !important;
}


.faq_module  .item .upper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 23px;
}

.faq_module .item .answer {
	font-size: 15px;
	line-height: 18px;
}
.faq_module  .item p {
	margin: 0;
}
.faq_module  .item .icon {
	background-image: url(images/svg/meny-plus.svg);
	width: 10px;
	height: 10px;
	background-size: contain;
	background-repeat: no-repeat;
	transition: background-image 0.2s ease-in-out, transform 0.2s ease-in-out;
	padding: 0 10px;
}
.faq_module .item.open .icon {
	background-image: url(images/svg/meny-plus-mandarin.svg);
	transform: rotate(45deg) translateX(2px) translateY(4px);
}
.faq_module  .item .question {
	font-size: 18px;
	line-height: 20px;
	font-family: var(--font-medium);
}
.faq_module  .item .answer{
	height: 0;
	padding: 0 23px;
	opacity: 0;
	transition: padding 0.25s ease-in-out, height 0.25s ease-in-out, background-color 0.25s ease-in-out, color 0.25s ease-in-out;
	will-change: padding, opacity, height;
	pointer-events: none;
}
.faq_module .item.open .answer{
	height: fit-content;
	padding: 20px 23px;
	opacity: 1;
	font-size: 15px;
	line-height: 17px;
	transition: padding 0.25s ease-in-out, opacity 0.4s ease-in-out, height 0.25s ease-in-out, background-color 0.25s ease-in-out, color 0.25s ease-in-out;
}
html body .faq_module .item.open .answer {
	max-width: unset !important;
}
.faq_module  .item.open {
    background-color: var(--khaki);
    color: var(--mocha);
}

/*** Intresseanmälan module / Intresseanmälan form ***/

.intrese_form {
	/* margin-top: 150px; */
	padding: 150px 0 120px;
	/* margin-bottom: 120px; */
}
.intrese_form ul li {
	padding-left: 0 !important;
}
.wpcf7-form {
	position: relative;
}
.wpcf7-response-output {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: white;
	border-radius: 16px;
}

.intrese_form #ui-id-3 {
    font-family: var(--font-medium);
}
/* .intrese_form #ui-id-3, 
.intrese_form .ui-selectmenu-text {
    font-family: var(--font-medium);
} */
.the_content *:not(figure):not(img):not(.wp-block-image) {
	max-width: 635px !important;
	width: 100%;
}
.the_content figure {
	display: flex;
	justify-content: center;
}
.the_content img {
	border-radius: 20px;
	width: 100%;
}
.wp-block-image {
	width: 100%;
}
.the_content {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.wp-block-heading,
.wp-block-list {
	width: 100%;
}

.intrese_form .form_container h5 {
	margin-top: 0;
	margin-bottom: 20px;
	color: var(--mocha);
	font-family: var(--font-medium);
	font-size: 20px;
	text-align: center;
}
.intrese_form .ingress {
    text-align: center;
    font-size: 15px;
    margin-bottom: 25px !important;
	color: var(--mocha);
    line-height: 1.2;
}
.intrese_form .form_container input{
	color: var(--mocha) !important;
	margin-bottom: 10px;
	border: 1px solid var(--mocha);
	border-radius: 5px;
	background-color: var(--white-cream);
	font-family: var(--font-regular);
}
.intrese_form .form_container input::placeholder{
	color: #b0a391;
}
.intrese_form .form_container input[type="checkbox"]{
	-webkit-appearance: none;
	appearance: none;
	width: 24px;
	height: 24px;
	background-color: var(--sand);
	border: 1px solid var(--mocha);
	border-radius: 3px;
	margin: 0;
	padding: 0;
	position: relative;
	top: -2px;
	margin-right: 10px;
}
.intrese_form .form_container input[type="checkbox"]:checked {
	background-color: var(--sand);
	position: relative;
}

.intrese_form .form_container input[type="checkbox"]:checked::after {
	content: '';
	position: absolute;
	left: 4px;
	top: 4px;
	width: 14px;
	height: 14px;
	background-image: url(images/svg/check-green.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transform: rotate(-10deg);
}
.intrese_form .form_container p {
	margin: 0;
}
.wpcf7-acceptance .wpcf7-list-item-label,
.wpcf7-checkbox .wpcf7-list-item-label {
	color: var(--mocha);
	display: inline-block;
	width: calc(100% - 50px);
	font-size: 12px;
	line-height: 12px;
	font-family: var(--font-regular);
}
/* .wpcf7-checkbox .wpcf7-list-item-label {
	font-size: 14px;
	line-height: 16px;
} */
.wpcf7-checkbox {
	margin: 8px 0 13px;
	display: inline-block;
	width: 100%;
}
/* .wpcf7-checkbox input[type=checkbox]{
	width: 40px !important;
	height: 40px !important;
} */
.wpcf7-checkbox .wpcf7-list-item {
	width: 100%;
		display: flex;
		align-items: center;
}
.wpcf7-form-control.wpcf7-acceptance,
.wpcf7-list-item,
.intrese_form .form_container input:not([type="submit"]):not([type="checkbox"]) {
	width: 100%;
	display: inline-block;
}
.wpcf7-form-control.wpcf7-acceptance label {
	width: 100%;
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.wpcf7-form-control-wrap:has(.wpcf7-validates-as-required):not(:has(select))::after {
	content: '*';
	position: absolute;
	right: 20px;
	top: 20px;
	color: #000;
}
.wpcf7-form-control-wrap:has(.wpcf7-validates-as-required):has(.wpcf7-not-valid):not(:has(select))::after {
	color: var(--mandarin);
}
.wpcf7-form-control-wrap:has(.wpcf7-validates-as-required):has(.wpcf7-not-valid):not(:has(select)) input {
	border-width: 2px;
	border-color: var(--mandarin);
}
.wpcf7-form-control-wrap:has(.wpcf7-validates-as-required):has(.wpcf7-not-valid):has(select) .ui-icon {
	border-color: var(--mandarin) !important;
	border-width: 2px;
}
.multi-dropdown.unvalid .md-toggle,
.multi-dropdown.unvalid .md-panel {
	border-width: 2px;
	border-color: var(--mandarin);
}
/* .wpcf7-form-control-wrap .wpcf7-validates-as-required[aria-invalid="false"]:not(select) {
    border-width: 2px;
    border-color: green;
}   */
.wpcf7-not-valid-tip {
	display: none !important;
}
.wpcf7 form .wpcf7-response-output {
	max-width: 700px;
	color: var(--mocha) !important;
	text-align: center;
	margin: 0 auto 20px !important;
	padding: 1.5em 1em !important;
}
.intrese_form .form_container input[type="text"] {
	position: relative;
}
.intrese_form .form_container input[type="text"]::after {
	position: absolute;
	top: 5px;
	right: 5px;
	content: '*';
	color: var(--lime);
}
.intrese_form .form_container input[type="text"].wpcf7-not-valid::after {
	color: var(--mocha);
}
.intrese_form .form_container input[type="submit"],
.lynea_button {
	padding: 18px 35px 13px;
	border-radius: 36px;
	background-color: var(--sand);
	color: var(--mocha) !important;
	width: fit-content;
	transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
	transform: translateZ(0);
	margin: 0 auto;
	display: block;
	letter-spacing: var(--letter-spacing-tight);
}
html body .intrese_form .form_container input[type="submit"]:disabled {
	background-color: var(--sand);
	color: var(--mocha) !important;
}
.intrese_form .form_container input[type="submit"]:hover,
.lynea_button:hover {
	background-color: var(--mocha);
	color: var(--sand) !important;
}
.wpcf7-form-control-wrap {
	position: relative;
	width: 100%;
	display: inline-block;
}
.wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
	content: " ";
}
.wpcf7 form.sent .wpcf7-response-output {
	color: var(--mocha);
	margin: 1em 1.5em;
}


/*** Project single page ***/

.acf-map {
    height: 500px;
    margin: 100px 0;
    border-radius: 20px;
    box-shadow: 0 0 8px rgba(128, 128, 128, 0.4);
    max-height: 75vh;
}
.acf-map .info-rubrik {
	font-family: var(--font-goodman);
}
.acf-map .info-ort {
	font-family: var(--font-medium);
	text-align: center;
}
.custom-info-window,
.gm-style-iw-chr {
	background-color: var(--khaki);
}
.gm-style-cc, .gmnoscreen {
    display: none;
}
.gm-style .gm-style-iw-d {
	overflow: hidden !important;
}
.gm-style-iw.gm-style-iw-c {
	padding: 0 !important;
}
.gm-style .gm-style-iw-tc::after {
	background: var(--khaki);
}
.custom-info-window .info-link {
	margin-top: 10px;
	font-family: var(--font-medium);
}

.project_nav  {
	position: sticky;
	top: calc(100vh - 63px);
	padding: 25px 0 20px;
	background-color: var(--sand);
	z-index: 2;
	/* border-top: 1px solid rgba(69, 50, 35, 0.2); */
	font-family: var(--font-medium);
	font-size: 19px;
	letter-spacing: var(--letter-spacing-tight);
	transition: border 0.25s ease-in-out;
    min-height:63px;
}
.project_nav .inner  {
	display: flex;
	justify-content: space-between;
	color: var(--mocha);
	position: relative;
	white-space: nowrap;
}

.project_nav .current {
	padding-right: 30px;
	position: relative;
	cursor: pointer;
    height: 14px;
}
.project_nav .current::after {
	content: '';
	position: absolute;
	background-image: url(images/svg/up-down.svg);
	background-size: contain;
	background-repeat: no-repeat;
	width: 15px;
	height: 15px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.project_nav .links {
	margin: 0;
	list-style-type: none;
	position: absolute;
	text-align: right;
	width: 100%;
	background-color: var(--sand);
	padding: 25px 0 0;
	opacity: 0;
	pointer-events: none;
	z-index: -1;
	transition: opacity 0.25s ease-in-out;
	bottom: 100%;
	border-top-left-radius: 24px;
	border-top-right-radius: 24px;
}
.project_nav .links.desktop {
	margin: 0;
	list-style-type: none;
	position: relative;
	text-align: right;
	width: fit-content;
	padding: 0 0;
	bottom: unset;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
    left: unset;
    transform: unset;
    display: none;
}

/* .project_nav.open {
	border: 0;
} */
.project_nav.open .links {
	opacity: 1;
	z-index: 6;
	pointer-events: all;
}
.project_nav .links li {
	margin-bottom: 10px;
	padding-right: 30px;
}
.project_nav .links li a{
	color: var(--mocha);
}
.project_info {
	color: var(--mocha);
	margin-top: 50px;
}
.project_info .content .wp-block-heading,
.project_info .content h1,
.project_info .content h2,
.project_info .content h3,
.project_info .content h4,
.project_info .content h5,
.project_info .content h6 {
	font-family: var(--font-goodman);
	font-size: var(--font-size-medium);
	line-height: 1.15;
	text-align: center;
	margin-bottom: 44px;
}
.project_info .content .wp-block-gallery{
	margin: 35px 0;
}
.project_info .content .wp-block-gallery > figure{
	height: 250px;
}
.project_info .content .wp-block-gallery figure img{
	object-fit: contain !important;
}
.text_module_container .textcontent,
.embed_container .textcontent {
    margin-left: auto;
    margin-right: auto;
}
.text_module_container p:not(.textcontent) {
    display: flex;
    justify-content: center;
    align-items: center;
}
.text_module_container img {
    border-radius: 20px;
}
.project_facts {
	margin: 150px 0;
}
.project_facts .fact {
	padding: 0 10px;
	border-bottom: 1px solid rgba(69, 50, 35, 0.3);
}
.project_facts .fact p{
	margin: 8px 0;
	letter-spacing: var(--letter-spacing-tight);
}
.project_facts .fact .fat {
	font-family: var(--font-medium);
}
.intrese_form .form_container .wpcf7-list-item {
 margin: 0;
}


.bildspelet {
	position: relative;
}
.projektbildspel {
	margin: 150px 0;
}
.bildspelet .swiper-pagination-bullets{
	background-color: rgba(0, 0, 0, 0.2);
	display: flex;
	padding: 4px 0px 4px 5px;
	border-radius: 10px;
}
.bildspelet .swiper-pagination-bullet{
	width: 13px;
	height: 13px;
	border: 2px solid #fff;
	opacity: 1;
	background: transparent;
}
.bildspelet .swiper-pagination-bullet-active {
	/* background: var(--lightpink); */
	background: radial-gradient(circle, rgba(234, 155, 152, 1) 32%, transparent 41%);
}
.projektbildspel.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 3px;
}
.bildspelet .swiper-pagination {
	margin-left: 5px;
	text-align: left;
	width: fit-content !important;
	bottom: 10px;
	left: 5px;
	z-index: 1;
}
.bildspelet .swiper-pagination span{
	margin-right: 5px;
}
.bildspelet .swiper-button-prev,
.bildspelet .swiper-button-next {
	display: none;
}
.projektbildspel .swiper-slide {
	height: 400px;
	border-radius: 20px;
	overflow: hidden;
    max-height: 75vh;
}
.projektbildspel .swiper-slide img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.swiper-container.projektbildspel .swiper-slide > * {
	width: 100%;
	height: 100%;
	object-fit: cover; /* If it's an image */
	display: block;
}

.swiper-button-next, .swiper-button-prev {
    z-index: 2 !important;
}

/**** Floating blurb  ****/

.blurb {
	position: fixed;
	bottom: 10px;
	right: 10px;
	background-image: url(images/svg/anim-blurb.svg);
	background-size: 98%;
	background-repeat: no-repeat;
	color: var(--sand);
	font-size: 12px;
	line-height: 12px;
	font-family: var(--font-medium);
	height: 95px;
	width: 95px;
    background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
    transition: transform 0.4s ease-in-out;
}

.blurb span{
	transform: rotate(-5deg) translateY(-1px);
    text-align: center;

}

body.has_navbar .blurb {
	bottom: 60px;
}
body.project_nav_open .blurb {
	display: none !important;
}

/***** Projects footer *****/

.people_module .info {
	color: var(--mocha);
	font-size: 18px;
	line-height: 21px;
}
.people_module .row {
	margin: 10px 15px;
}
.people_module .row a{
	color: var(--mocha);
}
.projects_footer {
	margin-bottom: 150px;
	/* margin-top: 100px; */
}
.projects_footer.people_module {
	margin-top: 100px;
}

.projektpuff_item {
    padding: 25px;
    height: 380px;
    height: calc(100vw - 46px);
    border-radius: 20px;
    background-size: cover;
    background-position: center;
    font-family: var(--font-regular);
    color: var(--sand);
    position: relative;
    margin: 15px 0px;
    display: block;
    overflow: hidden;
	font-size: 14px;
}
.puff_wrapper {
    width: 100%;
}

.projektpuff_item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    transition: transform 0.25s ease-in-out;
    z-index: 0;
}

.projektpuff_item:not(.active):not(.people):hover::before {
    transform: scale(1.06);
}

.projects_footer .container {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding-top: 150px;
    position: relative;
}

.projects_footer .container::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: calc(100% + 6px); /* Add extra width to accommodate the dot radius */
	height: 3px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='6' viewBox='0 0 400 6'%3E%3Cstyle%3Ecircle%7Bfill:%234d182e;%7D%3C/style%3E%3Ccircle cx='20' cy='3' r='3'/%3E%3Ccircle cx='60' cy='3' r='3'/%3E%3Ccircle cx='100' cy='3' r='3'/%3E%3Ccircle cx='140' cy='3' r='3'/%3E%3Ccircle cx='180' cy='3' r='3'/%3E%3Ccircle cx='220' cy='3' r='3'/%3E%3Ccircle cx='260' cy='3' r='3'/%3E%3Ccircle cx='300' cy='3' r='3'/%3E%3Ccircle cx='340' cy='3' r='3'/%3E%3Ccircle cx='380' cy='3' r='3'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: auto 100%;
	transform: translateX(-50%);
	background-position: left center;
	overflow: visible; /* Allow content to overflow */
	margin-top: 13px;
}
.projects_footer.people_module .container {
	padding-top: 50px;
	padding-bottom: 150px;
}
.projects_footer.people_module .container::before {
	bottom: 0;
	top: unset;
}


.projektpuff_item .inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    position: relative;
    z-index: 1;
}

.projektpuff_item .inner .upper, 
.projektpuff_item .inner .lower {
    display: flex;
    justify-content: space-between;
}

.projektpuff_item .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 20px;
    transition: background-color 0.2s ease-in-out;
    background-color: rgba(69, 50, 35, 0.25);
    z-index: 1;
}

.projektpuff_item:hover .overlay {
    background-color: rgba(69, 50, 35, 0.4);
}

.projektpuff_item.active  {
    pointer-events: none;
}
.projektpuff_item.active .overlay {
    background-color: var(--mocha) !important;
    opacity: 0.7;
}
.projektpuff_item.active .inner {
   z-index: 0;
}

/*** Arkiv / Archive ***/

.page_container .image-banner {
	height: 45vh;
	width: 100%;
	background-size: cover;
	background-position: center;
	/* margin-bottom: 175px; */
	position: relative;
}
.banner_padding {
	padding-top: 30px;
	padding-bottom: 25px;
}
.page_container .image-banner .overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: rgba(0,0,0,0.2);
	top: 0;
	left: 0;
}
.page_container.has_banner {
	padding-top: 0 !important;
	margin-bottom: 0;
	padding-bottom: 1px;
}

.page_container.puffar .inner_content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 50px;
}

/**** citat / team module ****/

.team_citat_module .row_wrapper img {
	border-radius: 20px;
	width: 100%;
	object-fit: cover;
}

.team_citat_module .person_title {
	font-family: var(--font-goodman);
	font-size: 20px;
	margin-top: 20px;
	line-height: 1;
	margin-bottom: 15px;
}





/**** Footer ****/

.wave {
	background-image: url(images/svg/waveform3.svg);
	background-size: 517%;
	background-position: bottom; /* Positioned above the footer */
	background-repeat: repeat-x;
	height: 30px;
	width: 100%;
	position: relative;
	bottom: -1px;
}
.wave.mocha {
	background-image: url(images/svg/waveform3-mocha.svg);
}
footer {
    background-color: var(--khaki);
    color: var(--mocha);
    padding: 100px 0;
    text-align: center;
}
footer .logo{
    width: 150px;
    margin-bottom: 40px;
}
footer .inner p {
    margin-bottom: 10px;
    font-size: var(--font-size-small);
}
footer .inner a {
    color: var(--mocha);
    border-bottom: 1px solid var(--mocha);
	font-size: var(--font-size-small);
    transition: border-color 0.15s ease-in-out;
}
footer .inner a:hover {
    border-color: var(--white-cream);
}
footer ul {
    margin: 35px 0 0 0;
}
footer ul li {
    list-style-type: none;
    margin-bottom: 10px;
}

footer #menu-socialmenu {
	display: flex;
	gap: 20px;
	justify-content: center;
}

footer .madeby{
	font-size: 12px !important;
	line-height: 12px;
	color: var(--mocha);
	opacity: 0.7;
	letter-spacing: 0em;
	margin-top: 40px;
}
footer .madeby a{
	font-size: 12px !important;
	line-height: 12px;
	color: var(--mocha);
	opacity: 1;
	letter-spacing: 0em;
	border: 0;
}
footer .madeby .heart::after{
	content: "\2665\FE0E";
	-webkit-appearance: none !important;
}

/* OBS: MAX-WIDTH */
@media (max-width: 1024px) {
    .project_info:last-child {
        padding-bottom: 50px;
    }
    .single-project #main {
        margin-bottom: 0;
    }
}

@media (min-width: 450px) {

    .distance_connections .column .row {
        font-size: 17px;
        gap: 10px;
    }
	
	.md-toggle {
	   font-size: 16px;
	 }
	 .md-summary { 
		 position:relative;
		 top: 4px;
		 color: var(--mocha);
		 margin-left: 10px;
	 }

}


@media (min-width: 576px) {
    .key_documents .document {
        padding: 10px;
    }
    .wave {
        height: 40px;
        background-size: 300%;
    }

	.projektbildspel .swiper-slide {
		height: 510px;
	}
	
	.projektpuff_item {
		font-size: 20px;
	}
	
	.team_citat_module .person_title {
		font-size: 26px;
	}

}


@media (min-width: 783px) {

    .concept_section .swiper-pagination-bullet {
        width: 50px;
    }

    .textgrid {
        width: 635px;
    }
	body.admin-bar header {
		top: 32px;
	}
	
	.projektpuff_item {
		height: calc(49vw);
		max-width: 100%;
		/* margin: 0 10px; */
		width: 100%;
		margin: 0 0 10px;
	}
    .puff_wrapper {
        max-width: 49%;
		margin-bottom: 10px;
    }
	.projects_footer .container {
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	
	.projektbildspel .swiper-slide {
		height: 580px;
	}

    .news-thumbnail img {
        height: 310px;
    }
    .news-slider .item {
        width: 400px;
    }
    .alternate .news-thumbnail img {
        height: 400px;
    }

    /* .desktopgrid {
		width: 635px;
		margin: 0 auto !important;
	} */
    .faq_module .item .upper, .faq_module .item .answer {
        padding-left: 55px !important;
        padding-right: 55px !important;
    }
    .faq_module .item .question {
        font-size: 25px;
        line-height: 30px;
    }
    .faq_module .item.open .answer {
        font-size: 17px;
        line-height: 20px;
    }
    .faq_module .title {
        font-size: 24px;
    }
    .project_info .content p,
	.project_info .content p a {
        font-size: 18px;
        line-height: 24px;
    }
    .intrese_form .form_container h5 {
        font-size: 25px;
    }
    :root {
		--font-size-medium: 36px;
		--font-size-paragraf: 17px;
	}
    .intrese_form .form_container, .project_info .textcontent {
        max-width: 550px !important;
    }
    header .logo {
        width: 135px;
        height: 40px;
    }
    header {
        padding: 15px 0 9px;
    }

    .news-slider .item .title {
        font-size: 18px;
        line-height: 22px;
        margin: 15px 20px 15px 20px;
    }
    .news-slider .item .date {
        font-size: 14px;
        margin: 0 20px;
    }

    .the_content h1 {
        font-size: 45px;
        margin: 0 0 40px;
    }

    /* .floating_projects {
		height: 660px;
	} */

	.floating_projects .inner {
		flex-direction: row;
        flex-wrap: wrap;
	}
    
    .intrese_form .ingress {
        font-size: 18px;
    }

    .floating_projects .inner .item {
        width: calc(50% - 10px);
        margin: 0;
        height: 600px;
    }
	
	.team_citat_module .row_wrapper	 {
		display: flex;
		align-items: center;
		margin-bottom: 30px;
	}
	.team_citat_module .row_wrapper.odd	 {
		flex-direction: row-reverse;
	}
	.team_citat_module .row_wrapper.even	 {
		flex-direction: row;
	}
	.team_citat_module .row_wrapper img {
		width: 35%;
	}
	.team_citat_module .row_wrapper .content {
        margin: 0 20px 0 60px;
        width: 65%;
	}
	.team_citat_module .person_title {
		margin-top: 0;
	}
	
	.concept_section {
		/* padding-top: 65px; */
		height: calc(100vh - 65px);
	}
	.has_nav .concept_section {
		height: calc(100vh - 128px);
	}
	.topsplash .btn_holder {
		 gap: 20px;
	 }

}


@media (min-width: 1024px) {
	
	body.has_navbar .blurb {
		bottom: 10px;

	}
     .blurb {
		bottom: 10px;
		width: 110px;
		height: 110px;
		font-size: 14px;
		line-height: 13px;
	}
	/* body.project_nav_open .blurb {
		display: none;
	} */
	
	.md-toggle {
		height: 77px;
		font-size: 19px;
	}
	.md-item {
		font-size: 17px;
		margin-bottom: 7px;
	}

    .project_info .module_title,
	.archive .module_title  {
        margin-bottom: 50px;
    }
	
	/* .bildspelet .swiper-pagination-bullet{
		border: 2px solid var(--mocha);
	} */
	
	.konceptswiper .slide-content {
		width: 80%;
		left: 10%;
		height: 300px;
	}
	.konceptswiper .slide-overlay .title{
		margin: 0 0 40px;
		font-size: 40px;
	}
	
	.konceptswiper .slide-overlay .desc{
		font-size: 19px;
		line-height: 23px;
	}

	 
	.team_citat_module .person_title {
		font-size: 32px;
	}
	
	.banner_padding {
		padding-top: 175px;
		/* padding-bottom: 50px; */
	}

    .single-project .blurb {
        display: flex;
    }
	
	.widegrid.bildspel {
		width: 100%;
	}


    .intrese_form .form_container,
    .project_info .textcontent {
        max-width: 635px !important;
    }
	.project_info {
		margin-top: 100px;
	}

    /* .desktopgrid {
		width: 100%;
		margin: 0 auto !important;
	} */

    .project_info .content.the_facts {
        max-width: 830px !important;
    }
	
	.acf-map {
		margin: 150px 0;
	}
	
	.projektbildspel {
		margin: 200px 0;
	}

    .modulmargin {
        margin: 100px 0;
    }
	
	.people_module .info {
		font-size: 23px;
		line-height: 27px;
	}
	.people_module .row {
		margin: 12px 35px;
	}
	
	.project_info .content p,
	.project_info .content p a {
		font-size: 20px;
		line-height: 26px;
	}
	
	
	.news-slider {
		margin: 250px 0;
	}
	
	.floating_projects .item .content .title {
		font-size: 24px;
	}
	.floating_projects {
		margin: 200px auto !important;
	}
	.floating_projects .item {
		padding: 40px;
	}
	.floating_projects .item .content .vinjett {
		font-size: 20px;
	}
	.floating_projects .item .content .ingress,
	.floating_projects .item .content .link {
		font-size: 18px;
	}

    .article_top {
        margin-top: 50px;
    }
	
	.news-slider .item .title {
		margin: 15px 50px 15px 30px;
		font-size: 28px;
		line-height: 30px;
	}
	
	.news-slider .item .date {
		margin: 0 30px;
		font-size: 15px;
	}
	.page_container .date {
		margin: 0 0 40px 0px;
	}
	.page_container {
		padding-top: 230px;
	}
	.page_container.has_banner:not(.has_nav):not(.archive_page) .banner_padding {
		padding-top: 230px !important;
	}
	.project_facts {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 200px 0;
	}
	.project_nav .project_title {
		margin-right: 15px;
	}
	.project_facts .fact{
		width: 49%;
	}
    .text_module .inner .title {
        margin-bottom: 50px;
    }


    .textgrid {
        width: 950px;
    }

    .site-header .right .menu {
        display: flex;
     }
    .active .site-header .right .menu {
        display: none;
     }
	 /* header {
		 padding: 20px 0;
	 } */
	 /* header {
		 padding: 5px 0 0 0;
	 } */
    /* header .logo {
        width: 170px;
        height: 60px;
    } */
    .acf-map {
        height: 700px;
    }
	.widegrid {
		width: calc(100% - 80px);
	}
    /* .floating_projects .item.expanded {
        height: 750px;
    } */
	
	.faq_module .item .upper, 
	.faq_module .item .answer {
		padding-left: 65px !important;
		padding-right: 65px !important;
	}
	
	.text_module .paragraphs,
	.text_module .lower  {
		display: flex;
		gap: 30px;
		justify-content: center;
	}
	.text_module .lower *{
		width: 50%;
	}
	.text_module .inner p {
		width: 50%;
	}
	.text_module .inner .title {
		font-size: 60px;
	}
	
	.intrese_form .form_container h5,
	.faq_module .title {
		font-size: 30px;
	}
	.wpcf7-acceptance .wpcf7-list-item-label,
	.wpcf7-checkbox .wpcf7-list-item-label {
		font-size: 15px;
		line-height: 15px;
	}
	.intrese_form .form_container input[type="checkbox"]{
		width: 40px;
		height: 40px;
		margin-right: 15px;
	}
	.intrese_form .form_container input[type="checkbox"]:checked::after {
		left: 8px;
		top: 8px;
		width: 22px;
		height: 22px;
	}
	.faq_module {
		padding: 200px 0 150px;
		margin-bottom: 150px;
	}
	.faq_module .item {
		transition: background-color 0.25s ease-in-out;
	}
	.faq_module .item:not(.open):hover {
		background-color: rgba(69, 50, 35, 0.7)
	}
	.faq_module .item .question {
		font-size: 35px;
		line-height: 40px;
	}
	.faq_module .item.open .answer {
		font-size: 19px;
		line-height: 23px;
	}
	.faq_module .item {
		padding-top: 30px;
		padding-bottom: 25px;
	}
	.faq_module .item .icon {
		width: 15px;
		height: 15px;
	}
	.faq_module .item .question,
	.faq_module .item .answer {
		margin-right: 80px;
	}
	.faq_module .item::after {
		width: 100%;
	}
	input:not(.cky-switch input), textarea {
		padding: 30px 20px 25px;
	}
	:root {
		--font-size-small: 19px;
		--font-size-slogan: 25px;
		--font-size-medium: 44px;
		--font-size-paragraf: 18px;
		--line-height-paragraf: 23px;
        --font-size-heading: 38px;	
	}
	
	.the_content h3,
	.content h3 strong {
		font-size: calc(var(--font-size-heading) - 9px);
	}
	
	.the_content h4,
	.content h4 strong{
		font-size: calc(var(--font-size-heading) - 10px);
	}

	.the_content h5,
	.the_content h6,
	.content h5 strong,
	.content h6 strong {
		font-size: calc(var(--font-size-heading) - 11px);
	}
    .topsplash .content .extra_text{
        font-size: 20px;
    }
    .the_content h1 {
        font-size: 60px;
		margin: 0 0 45px;
    }
    .mobile-menu ul li a {
        font-size: 30px;
        line-height: 1;
        transition: border-color 0.2s ease-in-out;
        border-width: 2px;
    }
    .mobile-menu ul li a:hover {
        border-color: var(--mocha);
    }
    .mobile-menu ul li {
        margin-bottom: 30px;
    }
    .wave {
        background-size: 200%;
    }
    .blurb:hover {
        transform: scale(1.15);
    }

    .topsplash .content .img-holder{
        width: 30%;
        max-width: 500px;
    }
    /* .topsplash .content .img-holder img{
        margin-bottom: 65px;
    } */
	
	footer .inner p {
		font-size: 20px;
	}
	footer .inner a {
		font-size: 20px;
	}
	
	.single-project .topsplash .content .img-holder {
		width: 40%;
		max-width: 500px;
	}
	
    .swiper-container.projektbildspel .swiper-slide {
        height: 100%; /* define height */
        aspect-ratio: 3 / 2;
        width: auto;
      }
	.bildspelet .swiper-pagination {
		bottom: -28px;
		left: 50%;
		transform: translateX(-50%);
	}
	.bildspelet .swiper-button-prev,
	.bildspelet .swiper-button-next {
		width: 20%; /* Each button takes up 20% of the swiper */
		height: 100%; /* Full height */
		background: transparent; /* Invisible */
		position: absolute;
		top: 22px;
		z-index: 10;
		cursor: none;
		display: block;
	}
	.bildspelet .swiper-button-prev::after,
	.bildspelet .swiper-button-next::after {
		display: none;
	}
	.bildspelet .swiper-button-prev {
		left: 0;
		/* cursor: url('images/svg/tappa-pil-left.svg') 64 64, auto; */
		-webkit-transform-style: preserve-3d;
		-webkit-backface-visibility: hidden;
}

	
	.bildspelet .swiper-button-next {
		right: 0;
		/* cursor: url('images/svg/tappa-pil-right.svg') 64 64, auto; */
		-webkit-transform-style: preserve-3d;
		-webkit-backface-visibility: hidden;
	}
	
	.custom-cursor {
		position: fixed;
		width: 64px;
		height: 64px;
		pointer-events: none;
		transform: translate(-50%, -50%);
		transition: color 0.2s ease-in-out, opacity 0.1s ease-in-out;
		z-index: 9999;
		color: black; /* Default cursor color */
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	.cursor-prev, .cursor-next {
		position: absolute;
		width: 100%;
		height: 100%;
		display: none; /* Hide both by default */
	}
	
	.custom-cursor.prev-active .cursor-prev {
		display: block; /* Show left arrow when hovering prev button */
	}
	
	.custom-cursor.next-active .cursor-next {
		display: block; /* Show right arrow when hovering next button */
	}

	
	
	.project_nav {
		top: 65px;
		border-bottom: 1px solid rgba(69, 50, 35, 0.2);
		padding: 25px 0 5px
	}
	.project_nav .inner  {
		justify-content: center;
	}
	body.admin-bar .project_nav{
		top: 97px;
	}
	.project_nav .links {
		bottom: unset;
		top: calc(100% + 1px);
		left: 50%;
		transform: translateX(-50%);
		border-radius: 0;
		border-bottom-left-radius: 24px;
		border-bottom-right-radius: 24px;
	}
    .project_nav .links.desktop {
        display: flex;
        opacity: 1;
        z-index: 6;
        pointer-events: all;
		
    }
    .project_nav .links.desktop li {
		padding-right: 0px;
    }
    .project_nav .links.desktop li a {
        position: relative;
		margin-right: 15px;
    }
    .project_nav .links.desktop li a::after {
		content: '';
		position: absolute;
		/* width: 100%;
		height: 2px;
		background-image: repeating-linear-gradient(to right, var(--mocha) 0%, var(--mocha) 2px, transparent 2px, transparent 7px);
		background-size: 7px 100%;
		bottom: 0;
		left: 0; */
		opacity: 0;
		transition: opacity 0.2s ease-in-out;

        /* width: calc(100% + 3px); */
        width: var(--dot-width, 100%);
        left: var(--dot-offset, 0);
        height: 4px;
        background-image: url(images/svg/dot-mocha.svg);
        /* background-repeat: repeat-x; */
        background-size: 10px 100%;
        bottom: -1px;
        /* left: -1.5px; */
        /* transform: translateX(-1.5px); */
    }
    .project_nav .links.desktop li a.active::after {
        opacity: 1;
    }
    .project_nav .links.desktop li:hover a::after {
        opacity: 1;
    }
    .project_nav .links.mobile,
    .project_nav .current {
        display: none;
    }
	
	.projektpuff_item {
		width: 100%;
		padding: 40px;
	}

	#footer .mainmenu_cont {
		display: none;
	}

    h1, h2, h3, h4, h5, h6 {
        margin: 40px 0 20px;
    }

    .project_facts .fact {
        display: flex;
        gap: 10px;
        padding: 10px;
    }

    .page_container .the_content:first-of-type:before, 
    .page_container .the_content:first-of-type:after {
        content: '';
        width: 125px;
        height: 125px;
        position: absolute;
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        opacity: 0;
        transition: opacity 0.8s ease-in-out;
        will-change: transform;
    }

    .page_container .the_content::before {
        left: -40px;
        top: -5px;
    }
    .page_container .the_content::after {
        right: 70px;
        top: -120px;
    }
    .intrese_form .form_container{
        position: relative;
    }
    .intrese_form .form_container::before, 
    .intrese_form .form_container::after {
        content: '';
        width: 125px;
        height: 125px;
        position: absolute;
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        opacity: 0;
        transition: opacity 0.8s ease-in-out;
        will-change: transform;
    }

    .intrese_form .form_container::before {
        display: none;
    }
    .intrese_form .form_container::after {
        right: -200px;
        top: -150px;
    }

    .timeline-svg {
        top: 30px;
        width: 45px;
        height: 45px;
    }
    .timeline-text {
        margin-top: 40px;
        font-size: 20px;
    }
    .timeline-svg.last {
        left: -19px;
    }
    .timeline-svg.point-1 {
        left: 19px;
    }

    .distance_connections .columns {
		flex-direction: row;
        gap: unset;
	}
	.distance_connections .columns .column {
		width: 33.33%;
	}
    .distance_connections .column .row {
        margin-right: 10px;
        font-size: 14px;
        gap: 7px;
    }
    .distance_connections .title {
        margin: 0 0 20px 0;
        font-size: 30px;
    }
}


@media (min-width: 1200px) {
	
	/* .projektbildspel .swiper-slide {} */

    .text_module .inner  {
        position: relative;
    }

    .text_module .inner:before, 
    .text_module .inner:after {
        content: '';
        width: 100px;
        height: 100px;
        position: absolute;
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        opacity: 0;
        transition: opacity 0.8s ease-in-out;
        will-change: transform;
    }

    .text_module .inner::before {
        left: -130px;
        top: -230px;
    }
    .text_module .inner::after {
        right: -130px;
        bottom: -250px;
    }

	.smallgrid,
	.project_nav .links {
		width: 1000px;
	}

	.desktopgrid {
		width: 1000px;
		margin: 0 auto !important;
	}
	.widegrid {
		margin: 0 auto;
		width: 1150px;
	}
	.projektpuff_item {
		height: 490px;
		max-width: 490px;
	}
	.puff_wrapper {
		max-width: 490px;
	}

    .page_container .the_content::before {
        left: -90px;
    }
    .page_container .the_content::after {
        right: 30px;
    }

    .text_module {
        margin: 250px 0;
    }
    

}


@media (min-width: 1400px) {
	
	.project_nav .links.desktop li a {
		margin-right: 30px;
	}
	.project_nav .project_title {
		margin-right: 35px;
	}
	
	.team_citat_module .person_title {
		margin-bottom: 30px;
	}
	
	/* .projektbildspel .swiper-slide {
		height: 610px;
	} */

    .intrese_form .form_container::after {
        right: -250px;
    }

    .text_module .inner:before, 
    .text_module .inner:after {
        width: 125px;
        height: 125px;
    }

    .text_module .inner::before {
        left: -230px;
    }
    .text_module .inner::after {
        right: -230px;
    }

	.smallgrid,
	.desktopgrid,
	/* .widegrid, */
	.project_nav .links  {
		width: 1190px;
	}
	.widegrid {
		width: 1240px;
	}
	:root {
		--font-size-slogan: 34px;
	}

    .topsplash .content .extra_text{
        font-size: 24px;
    }
	
	.projektpuff_item {
		height: 580px;
		max-width: 580px;
	}
	.puff_wrapper {
		max-width: 580px;
	}
	
	

    .page_container .the_content::before {
        left: -90px;
    }
    .page_container .the_content::after {
        right: 80px;
    }
    .distance_connections .column .row {
        font-size: 17px;
        gap: 10px;
    }


}
@media (min-width: 1600px) {

    .floating_projects .inner .item {
        width: calc(50% - 15px);
    }

    .distance_connections .column .row {
        margin-right: 30px;
        padding-right: 20px;
    }
	
	.floating_projects .inner {
		gap: 30px;
	}
	
	/* .projektbildspel .swiper-slide {
		height: 730px;
	} */
    .intrese_form {
        padding: 200px 0 0;
		margin-bottom: 150px
    }

    /* .page_container .the_content::before {
        left: 30px;
    }
    .page_container .the_content::after {
        right: 250px;
    } */

    .floating_projects .inner .item{
		height: 750px;
	}
	/* .floating_projects {
		height: 810px;
	} */

    .widegrid {
		width: 1440px;
	}

    .wave {
        background-size: 150%;
    }
	
	.news-thumbnail img {
		height: 490px;
	}
	.news-slider .item {
		width: 580px;
	}
	.alternate .news-thumbnail img {
		height: 580px;
	}
	
	.bildspelet .swiper-button-prev, .bildspelet .swiper-button-next {
		width: 15%;
	}
	
	.single-project .topsplash .content .img-holder {
		max-width: 600px;
	}
}
@media (min-width: 1850px) {
	
}
@media (min-width: 2000px) {
	
	.konceptswiper .slide-content {
		width: 70%;
		left: 15%;
		height: 280px;
	}
	
	/* .bildspelet .swiper-button-prev, .bildspelet .swiper-button-next {
		width: 12%;
	} */
	/* .smallgrid {
		width: 60%;
	} */

    /* .page_container .the_content::before {
        left: 200px;
    }
    .page_container .the_content::after {
        right: 420px;
    } */

    .widegrid {
		width: 1800px;
	}

    .wave {
        background-size: 150%;
    }
    .floating_projects .inner .item{
		height: 830px;
	}
	/* .floating_projects {
		height: 890px;
	} */
}




