/*
Theme Name: TT5 Child
Template: twentytwentyfive
Version: 1.0.2
*/

html {
	scroll-behavior: smooth;
	overflow-wrap: break-word;
}

.slide-in-menu {
    width: 95%;
    max-width: 500px;
    position: absolute;
    right: 0;
}
.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
    height: 34px;
    width: 34px;
}

.hero-banner, .image-text-banner {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
}

.hero-banner__image {
    overflow: hidden;
    border-radius: 999px;
    min-height: 450px;
}

.image-text-banner__text-block {
    overflow: hidden;
    border-radius: 999px;
    min-height: 390px;
}

.hero-banner__image img, .image-text-banner__text-block img {
    display: block;
    width: 100%;
    height: auto;
}

.hero-banner .hero-banner__circle, .image-text-banner .image-text-banner__circle {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    height: 100%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #c9dceb;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    box-sizing: border-box;
}

.hero-banner__text, .image-text-banner__text {
    font-size: clamp(28px, 6vw, 48px);
    line-height: 1;
    font-weight: 500;
    color: #1d3470;
    margin: 0;
}

@media (min-width: 601px) and (max-width: 1000px) {

    .hero-banner__circle, .image-text-banner__circle {
        padding: 24px;
    }

    .hero-banner__text, .image-text-banner__text {
        font-size: 28px;
    }

    .hero-banner__image, .image-text-banner__text-block {
        border-radius: 40px;
        min-height: 275px;
    }
	
	.image-text-banner__text-block {
    padding-left: 305px !important;
}
}

@media (max-width: 600px) {
.hero-banner__image, .image-text-banner__image {
        border-radius: 40px;
        min-height: 150px;
    }

.hero-banner__text, .image-text-banner__text {
        font-size: 18px;
    }
	
	.image-text-banner__text-block {
    min-height: 60px;
    padding: clamp(1rem, 3vw, 3rem) 1rem clamp(1rem, 3vw, 3rem) clamp(6.5rem, 20vw, 20rem) !important;
}
}

.timeline {
position: relative;
}

.timeline p {
background-color: var(--wp--preset--color--base);
}

.timeline > .wp-block-group:nth-child(odd):not(:last-child) p {
    position: relative;
}

.timeline > .wp-block-group:nth-child(odd):not(:nth-last-child(2)) p:before {
    content: '';
    background-color: black;
    height: 200%;
    width: 2px;
    position: absolute;
    left: 50%;
    top: 100%;
    z-index: -1;
}

.cover-image-spacer {
    min-height: 390px;
}

@media (min-width: 601px) and (max-width: 1000px) {
.cover-image-spacer {
    min-height: 275px;
}
}

@media (max-width: 600px) {
.cover-image-spacer {
    min-height: 150px;
}
}

.editor-styles-wrapper .hero-banner, .editor-styles-wrapper .image-text-banner {
    max-width: 100%;
}

.editor-styles-wrapper .block-editor-block-list__layout {
    overflow: visible;
}

a.ewd-ufaq-post-margin {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
}

.ewd-ufaq-faq-title-text {
    float: left;
    width: 100%;
}

.ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    padding: 1rem 2rem;
    border-radius: 500px;
}

.ewd-ufaq-faq-div:not(:last-child) .ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    margin-bottom: 1rem;
}

.ewd-ufaq-faq-title .ewd-ufaq-post-margin-symbol span {
    font-size: 18px;
}

.ewd-ufaq-faq-body {
    padding: 0.5rem 2rem;
}

.faqs-sok .ewd-ufaq-faq-div:nth-child(odd) .ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    background-color: var(--wp--preset--color--accent-2);
	border: 2px solid var(--wp--preset--color--accent-2);
}

.faqs-sok .ewd-ufaq-faq-div:nth-child(even) .ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    background-color: var(--wp--preset--color--accent-1);
	border: 2px solid var(--wp--preset--color--accent-1);
}

.faqs-sok .ewd-ufaq-faq-list .ewd-ufaq-post-active .ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    border: 2px solid black;
}

.faqs-general .ewd-ufaq-faq-title.ewd-ufaq-faq-toggle {
    border: 2px solid var(--wp--preset--color--contrast);
}

.faqs-general .ewd-ufaq-post-active .ewd-ufaq-faq-title {
    background-color: #ece6e3;
}

.wp-block-details {
    display: flex;
    flex-direction: column-reverse;
}

.wp-load-more__button {
    border-radius: 50px;
    background-color: var(--wp--preset--color--accent-3);
    color: var(--wp--preset--color--contrast);
}

.prosjekter .wp-block-post-content p {
    margin-bottom: var(--wp--preset--spacing--40);
}

.prosjekter .wp-block-list {
	list-style: disc;
}

.prosjekter .wp-block-list .wp-block-list {
	list-style: circle;
}

.prosjekter .wp-block-post-terms a {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}

/* Hide default marker (modern browsers) */
details summary::marker {
  content: "";
}

/* Safari / WebKit */
details summary::-webkit-details-marker {
  display: none;
}

details summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}

/* Closed state icon */
details summary::after {
  content: url("/wp-content/uploads/2026/06/caret-down.svg");
  display: inline-block;
  width: 16px;
  height: 16px;
}

/* Open state icon */
details[open] summary::after {
  content: url("/wp-content/uploads/2026/06/caret-up.svg");
}

.wp-block-button:hover {
    scale: 105%;
}

.wp-block-button {
	transition: 150ms ease-in-out;
}

.wp-block-button.is-style-outline .wp-element-button:hover {
    background-color: transparent;
}

@media (max-width: 600px) {
	.eierstiftelser-logo-section {
	grid-template-columns: 1fr;
}
	
	.eierstiftelsen-logo__half-width-mobile {
		width: 60%;
	}
}


input,
textarea {
	font: inherit;
	letter-spacing: inherit;
	word-spacing: inherit;
	accent-color: var(--wp--preset--color--accent-1);
	color: currentColor;
	background: none;
	border: 0;
	padding: 0.5em;
	box-sizing: border-box;
}

input {
	&[type='text'],
	&[type='email'],
	&[type='tel'] {
		width: 100%;
	}
}

textarea {
	width: 100%;
}

.wpcf7-field-group-add, .wpcf7-field-group-remove {
    background: transparent;
    border: 1px solid white;
    color: white;
	  font-size: 1.5rem;
    line-height: 1;
  	padding-bottom: 0.3rem;
}

.wpcf7-field-group-remove {
    margin-right: 0.5rem;
}

.navn-group-container {
    padding: 1rem 0;
}

.navn-group-container .wpcf7-field-group {
    padding: 1rem;
    border: 1px solid white;
    margin-bottom: 1rem;
}


@media(min-width: 782px) {
	div#navngroup {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0px 12px;
}
}


.wpcf7 .no-resize {
        resize: none;
    }

.header-logo {
	width: 19vw;
	max-width: 175px;
}

.position-relative {
	position: relative;
}


	.position-absolute {
	position: absolute;
		z-index: 1;
}

.bottom-left {
	bottom: 1em;
	left: 1em;
}

.wpcf7 p {
    margin-bottom: -5px;
}

.wpcf7-form p label.meeting-time {
    padding-bottom: 20px;
}

.wpcf7-form p > label {
	border-bottom: 1px solid currentColor;
	display: grid;
	grid-template-columns: 108px auto;
	align-items: center;
	gap: 1lh;
}

.wpcf7-submit {
	padding-inline: 2em;
	background-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	transition: all ease-out 150ms;
	border-radius: 100px;
}

.wpcf7-submit:hover:not(:disabled) {
	scale: 1.05;
	cursor: pointer;
}

.wpcf7-submit:disabled {
	opacity: 0.2;
}

/* .wpcf7-not-valid-tip {
    color: #ffffff;
} */

label.group-count {
    display: block !important;
    border-bottom: none !important;
}

label.group-count input {
    border-bottom: 1px solid white;
    border-bottom-left-radius: 0;
	  border-bottom-right-radius: 0;
}

.c-contact {
	text-align: center;
}

.c-contact__name {
	font-size: var(--wp--preset--font-size--medium);
}

.c-contact__title {
    margin-top: 0;
    font-size: var(--wp--preset--font-size--normal);
    font-style: italic;
}

.c-contact__fact {
	margin: 0;
}

.c-contact__telephone, .c-contact__email {
    font-weight: bold;
}

.c-contact__telephone::before {
	content: 'Ring ';
/* 	font-weight: bold; */
}

.c-contact__figure {
    display: flex;
    justify-content: center;
}

.c-contact__figure img {
    height: auto;
}

.c-contact__name {
    text-transform: capitalize;
}

.c-contact__small-name .c-contact__name {
    font-size: var(--wp--preset--font-size-large);
}

.tiled-gallery__gallery, .tiled-gallery__row, .tiled-gallery__col {
    gap: 0.5rem;
}

.box-shadow {
	box-shadow: 5px 5px 10px rgba(0 0 0 / 20%);
}

.flower img {
	width: clamp(5rem, 11vw, 10rem);
}

.flower-yellow {
	bottom: 0;
    left: 0;
    translate: -25% 25%;
}

.flower-green {
    top: 0;
    right: 0;
    translate: -50% -50%;
}

.flower-white {
    top: 0;
    left: 0;
    translate: 25% 25%;
}

@media (max-width: 600px) {
	.wp-block-cover .wp-block-media-text>.wp-block-media-text__content, .wp-block-group .wp-block-media-text>.wp-block-media-text__content {
		padding: 0;
	}
}

@media (max-width: 781px) {
	.flower-yellow {
		top: 0;
        right: 0;
        translate: 20% -15%;
        left: unset;
        bottom: 0;
	}
}

@media (min-width: 782px) {
	
	.wp-block-column.is-vertically-aligned-center.is-layout-flow.wp-block-column-is-layout-flow > * {
		padding: 0 8%;
	}
	
	.wp-block-column:has(> figure:only-child) figure {
		padding: 0 !important;
	}
	
	.push-up-15-percent {
		margin-top: -15%!important;
	}
	
/* 	.border-left {
	   border-left: solid;
	}

	.border-accent-4 {
	   border-color: var(--wp--preset--color--accent-4);
	}

	.border-2 {
	   border-width: 2px;
	} */
	
	.divider-left:before {
    width: 1px;
    height: 20%;
    position: absolute;
    background-color: var(--wp--preset--color--accent-4);
    content: '';
    top: 50%;
    translate: 0 -50%;
}
}


@media (min-width: 1080px) {
	.bubble {
  position: absolute;
  z-index: 3;
  top: 14em;
  left: 4em;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 325px;
  border-radius: 100%;
  padding: 2em;
  font-size: 1em;
  text-align: center;
  display: inline-flex;
/* 	rotate: -8deg; */
	aspect-ratio: 1/1;
}
	
	.wobble-animation {
		-webkit-animation: wobble 2.8s both infinite;
	     animation: wobble 2.8s both infinite;
	}
	
	@keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    -webkit-transform-origin: 50%50%;
    transform-origin: 50%50%;
  }
  7.5% {
    -webkit-transform: rotate(-3deg);
    transform: rotate(-3deg);
  }
  15% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }
  22.5% {
    -webkit-transform: rotate(-1.8deg);
    transform: rotate(-1.8deg);
  }
  30% {
    -webkit-transform: rotate(1.2deg);
    transform: rotate(1.2deg);
  }
  37.5% {
    -webkit-transform: rotate(-0.6deg);
    transform: rotate(-0.6deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

}
@media (max-width: 1079px) {
  .bubble {
    padding: 40px 0;
  }
}