/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.2
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/


.kmn-responsive-embed {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 ratio (9/16 = 0.5625) */
  height: 0;
  overflow: hidden;
  max-width: 100%;    
}

.kmn-responsive-embed iframe,
.kmn-responsive-embed embed,
.kmn-responsive-embed video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}


.kmn-media-content-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px 0;
    margin-bottom: 30px;
}

.kmn-media-photo-content-item img {
    width: 100%;
    display: block;
    object-fit: cover;

}

@media (min-width: 750px) {
    .kmn-media-content-wrapper {
        grid-template-columns: 1fr 1fr;
        gap: 30px 20px;
    }

    .kmn-media-photo-content-wrapper {
        grid-template-columns: 1fr 1fr;
    }

}


@media (min-width: 1140px) {

    .kmn-media-content-wrapper {
        gap: 30px 50px;
    }

    .kmn-media-photo-content-wrapper {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

}

/* ── Mobil: hindre lange titler fra å stikke ut av skjermen ──────────────── */
/* Gjelder alle band- og artistprofiler                                       */
@media (max-width: 767px) {

    /* Post-tittel (tema-widget: theme-post-title) */
    .elementor-widget-theme-post-title .elementor-heading-title,
    .elementor-page-title .elementor-heading-title {
        overflow-wrap: break-word;
        word-break:    break-word;
        hyphens:       auto;
        max-width:     100%;
    }

    /* Alle andre heading-widgets på band/artist-sider */
    .type-band   .elementor-heading-title,
    .type-artist .elementor-heading-title {
        overflow-wrap: break-word;
        word-break:    break-word;
        max-width:     100%;
    }

    /* Sikre at ingen widget-container er bredere enn viewport */
    .type-band   .elementor-widget-container,
    .type-artist .elementor-widget-container {
        max-width: 100%;
        min-width: 0;
    }

}


/* ── Mobil: Bandprofil hero-seksjon (tittelkolonne dcf832d) ──────────────── */
/* Desktop-layout: tittelen er plassert til høyre for bildet med 300px        */
/* left-padding. På mobil kollapser kolonnene, men paddinget er fortsatt 300px */
/* → tittel skyves utenfor skjermen. Fix: reset padding og fontsize på mobil. */
@media (max-width: 767px) {

    /* Tilbakestill 300px venstre-padding og 200px topp-padding */
    .elementor-element.elementor-element-dcf832d {
        padding-top:  30px !important;
        padding-left: 15px !important;
    }

    /* Reduser fontstørrelsen fra 60px til mobilvennlig størrelse */
    .elementor-element.elementor-element-1995e220 .elementor-heading-title {
        font-size: 36px !important;
    }

}

/* ═══════════════════════════════════════════════════════════════════════════
   KONTAKTSIDE – FULL PROFESJONELL REDESIGN
   Fjerner alle boksar. Minimalistisk, luftig layout med merkeprofilens fargar.
   Navy (#1B2138) hero · Krem (#FCF6E7) kontaktseksjon · Korall (#F26457) ikoner
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. Hero: tilbake til temaets korall, meir subtil høgde ─────────── */
/* (bakgrunnsfargen er satt direkte i Elementor til #E66F58 – ingen override nødvendig) */
.elementor-381 .elementor-element.elementor-element-b854bb0 > .elementor-container {
    min-height: 360px !important;
}

/* ── 2. Kontaktseksjon: kvit/krem bakgrunn og meir luft ────────────── */
.elementor-381 .elementor-element.elementor-element-fbc5c06 {
    background-color: #FFFFFF !important;
    padding: 60px 0px 60px 0px !important;
    margin-top: 0 !important;
}

/* ── 3. Fjern ALLE boksar – transparent bakgrunn ───────────────────── */
.elementor-381 .elementor-element.elementor-element-5a7e2c5:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-381 .elementor-element.elementor-element-5a7e2c5 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-381 .elementor-element.elementor-element-8093043:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-381 .elementor-element.elementor-element-8093043 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-381 .elementor-element.elementor-element-5eda020:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-381 .elementor-element.elementor-element-5eda020 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-381 .elementor-element.elementor-element-6f3af7b:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-381 .elementor-element.elementor-element-6f3af7b > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-381 .elementor-element.elementor-element-6f8ee4e:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
}

/* ── 4. Ingen radius, ingen skygge – vertikal skiljelinje mellom kolonnane */
.elementor-381 .elementor-element.elementor-element-5a7e2c5 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-5a7e2c5 > .elementor-element-populated > .elementor-background-overlay,
.elementor-381 .elementor-element.elementor-element-8093043 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-8093043 > .elementor-element-populated > .elementor-background-overlay,
.elementor-381 .elementor-element.elementor-element-5eda020 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-5eda020 > .elementor-element-populated > .elementor-background-overlay,
.elementor-381 .elementor-element.elementor-element-6f3af7b > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-6f3af7b > .elementor-element-populated > .elementor-background-overlay,
.elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated > .elementor-background-overlay {
    border-radius: 0 !important;
}
.elementor-381 .elementor-element.elementor-element-5a7e2c5 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-8093043 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-5eda020 > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-6f3af7b > .elementor-element-populated,
.elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated {
    box-shadow: none !important;
    margin: 0 !important;
    padding: 20px 24px !important;
    border-right: 1px solid rgba(27, 56, 44, 0.12) !important;
}
/* Siste kolonne: ingen høgre kant */
.elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated {
    border-right: none !important;
}

/* ── 5. Ikon: koral farge, utan bakgrunn/ramme ─────────────────────── */
.elementor-381 .elementor-element.elementor-element-eb5992e .elementor-icon,
.elementor-381 .elementor-element.elementor-element-da6f5d8 .elementor-icon,
.elementor-381 .elementor-element.elementor-element-7b0830d .elementor-icon,
.elementor-381 .elementor-element.elementor-element-cacb740 .elementor-icon,
.elementor-381 .elementor-element.elementor-element-9ca3a9f .elementor-icon {
    color: #F26457 !important;
    background-color: transparent !important;
    border-color: transparent !important;
    font-size: 28px !important;
}
.elementor-381 .elementor-element.elementor-element-eb5992e .elementor-icon svg,
.elementor-381 .elementor-element.elementor-element-da6f5d8 .elementor-icon svg,
.elementor-381 .elementor-element.elementor-element-7b0830d .elementor-icon svg,
.elementor-381 .elementor-element.elementor-element-cacb740 .elementor-icon svg,
.elementor-381 .elementor-element.elementor-element-9ca3a9f .elementor-icon svg {
    fill: #F26457 !important;
}

/* ── 6. Overskrifter i kontaktkolonnane: mørk navy ─────────────────── */
.elementor-381 .elementor-element.elementor-element-0cd6378 .elementor-heading-title,
.elementor-381 .elementor-element.elementor-element-0448ecb .elementor-heading-title,
.elementor-381 .elementor-element.elementor-element-a45a330 .elementor-heading-title,
.elementor-381 .elementor-element.elementor-element-853f6c4 .elementor-heading-title,
.elementor-381 .elementor-element.elementor-element-2595d5a .elementor-heading-title {
    color: #1B2138 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

/* ── 7. Brødtekst og lenkjer: mørk, pen hover ──────────────────────── */
.elementor-381 .elementor-element.elementor-element-48b39d6,
.elementor-381 .elementor-element.elementor-element-6b84eb6,
.elementor-381 .elementor-element.elementor-element-a14b88f,
.elementor-381 .elementor-element.elementor-element-88e5438,
.elementor-381 .elementor-element.elementor-element-f0f6709 {
    color: #232020 !important;
}
.elementor-381 .elementor-element.elementor-element-48b39d6 a,
.elementor-381 .elementor-element.elementor-element-6b84eb6 a,
.elementor-381 .elementor-element.elementor-element-a14b88f a,
.elementor-381 .elementor-element.elementor-element-88e5438 a,
.elementor-381 .elementor-element.elementor-element-f0f6709 a {
    color: #232020 !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(35, 32, 32, 0.2) !important;
    transition: color 0.2s, border-color 0.2s !important;
}
.elementor-381 .elementor-element.elementor-element-48b39d6 a:hover,
.elementor-381 .elementor-element.elementor-element-6b84eb6 a:hover,
.elementor-381 .elementor-element.elementor-element-a14b88f a:hover,
.elementor-381 .elementor-element.elementor-element-88e5438 a:hover,
.elementor-381 .elementor-element.elementor-element-f0f6709 a:hover {
    color: #F26457 !important;
    border-color: #F26457 !important;
}

/* ── 8. Kart + skjema-seksjon: bruker nettsidens standard bakgrunn ──── */
.elementor-381 .elementor-element.elementor-element-335114dd {
    padding: 60px 0px 60px 0px !important;
}

/* ── 9. Mobil: stabla kolonnar utan kant ────────────────────────────── */
@media (max-width: 1024px) {
    .elementor-381 .elementor-element.elementor-element-5a7e2c5 > .elementor-element-populated,
    .elementor-381 .elementor-element.elementor-element-8093043 > .elementor-element-populated,
    .elementor-381 .elementor-element.elementor-element-5eda020 > .elementor-element-populated,
    .elementor-381 .elementor-element.elementor-element-6f3af7b > .elementor-element-populated,
    .elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated {
        border-right: none !important;
        border-bottom: 1px solid rgba(27, 56, 44, 0.12) !important;
        padding: 24px 16px !important;
    }
    .elementor-381 .elementor-element.elementor-element-6f8ee4e > .elementor-element-populated {
        border-bottom: none !important;
    }
}

/* ============================================================
   Hva skjer?-liste (loop-item 4245 via [samspill_event_card])
   v3 — thumbnail + dato-badge overlay. April 2026.
   ============================================================ */
.samspill-event-card {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 16px 18px;
	color: #FCF6E7;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(252, 246, 231, 0.18);
	transition: background .2s ease;
	position: relative;
}
.elementor-post:last-child .samspill-event-card,
.ecs-post-loop:last-child .samspill-event-card {
	border-bottom: none;
}
.samspill-event-card:hover {
	background: rgba(27, 33, 56, 0.08);
}
.samspill-event-card:hover .samspill-event-card__title {
	color: #FCF6E7;
}
.samspill-event-card:hover .samspill-event-card__thumb img {
	transform: scale(1.05);
}

/* ── Thumbnail-blokk ───────────────────────────────────────── */
.samspill-event-card__thumb {
	flex: 0 0 84px;
	width: 84px;
	height: 84px;
	position: relative;
	border-radius: 4px;
	overflow: hidden;
	background: #1B2138;
	box-shadow: 0 2px 8px rgba(0,0,0,0.18);
}
.samspill-event-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .5s ease;
}
.samspill-event-card__thumb-fallback {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #2A3150 0%, #1B2138 100%);
}

/* Dato-badge overlay (nedre venstre hjørne av thumbnail) */
.samspill-event-card__date {
	position: absolute;
	left: 4px;
	bottom: 4px;
	background: rgba(27, 33, 56, 0.92);
	color: #FCF6E7;
	padding: 4px 6px 3px;
	border-radius: 2px;
	text-align: center;
	font-family: 'Fraunces', Georgia, serif;
	line-height: 1;
	backdrop-filter: blur(2px);
	min-width: 34px;
}
.samspill-event-card__date-day {
	display: block;
	font-size: 17px;
	font-weight: 500;
	margin-bottom: 2px;
}
.samspill-event-card__date-month {
	display: block;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 8px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
}

/* ── Tekst-blokk ───────────────────────────────────────────── */
.samspill-event-card__body {
	flex: 1;
	min-width: 0;
	padding-top: 2px;
}
.samspill-event-card__meta {
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: 600;
	opacity: 0.85;
	margin-bottom: 5px;
}
.samspill-event-card__title {
	font-family: 'Fraunces', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 18px !important;
	line-height: 1.22 !important;
	letter-spacing: -0.01em !important;
	margin: 0 0 6px !important;
	color: #FCF6E7 !important;
	word-wrap: break-word;
}
.samspill-event-card__venue {
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 13px;
	opacity: 0.85;
	display: flex;
	align-items: center;
	gap: 5px;
}
.samspill-event-card__venue svg {
	width: 12px; height: 12px; flex: 0 0 12px;
	opacity: 0.9;
}

/* Elementor-overstyringer (title farge/font) */
.elementor-element-c5d212a .samspill-event-card__title,
.elementor-element-c5d212a h3.samspill-event-card__title,
.samspill-event-card h3.samspill-event-card__title {
	color: #FCF6E7 !important;
	font-family: 'Fraunces', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 18px !important;
	line-height: 1.22 !important;
	margin: 0 0 6px !important;
	letter-spacing: -0.01em !important;
}
.elementor-element-c5d212a .samspill-event-card__meta,
.elementor-element-c5d212a .samspill-event-card__venue {
	color: #FCF6E7 !important;
}

/* Fjern Elementor Posts standardpadding per grid-item */
.elementor-element-c5d212a .ecs-post-loop,
.elementor-element-c5d212a .elementor-post {
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
}

/* Mobil: litt større thumbnail når kolonnen blir full bredde */
@media (max-width: 767px) {
	.samspill-event-card__thumb {
		flex: 0 0 96px;
		width: 96px;
		height: 96px;
	}
	.samspill-event-card__title {
		font-size: 19px !important;
	}
}

/* ============================================================
   Hva skjer? matchHeight: fade-gradient når events klippes
   ============================================================ */
.elementor-element-c5d212a .ecs-posts {
	position: relative;
}
.elementor-element-c5d212a .ecs-posts::after {
	content: '';
	position: sticky;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	height: 60px;
	margin-top: -60px;
	background: linear-gradient(180deg, rgba(242,100,87,0) 0%, rgba(242,100,87,0.85) 70%, rgba(242,100,87,1) 100%);
	pointer-events: none;
	z-index: 1;
}
@media (max-width: 899px) {
	.elementor-element-c5d212a .ecs-posts::after { display: none; }
}

/* ============================================================
   Single-event (template 9751 via [samspill_event_single])
   Hero + info-rad + body. Lagt til april 2026. Farger fra Kit 2993.
   ============================================================ */
.samspill-event-single {
	background: #FCF6E7;
	margin: 0;
}
.samspill-event-single *,
.samspill-event-single *::before,
.samspill-event-single *::after {
	box-sizing: border-box;
}

.samspill-event-single__hero {
	position: relative;
	min-height: 520px;
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	background: #1B2138;
}
.samspill-event-single__hero-bg {
	position: absolute; inset: 0;
	background-size: cover;
	background-position: center;
	filter: brightness(0.85);
}
.samspill-event-single__hero-bg--fallback {
	background: linear-gradient(135deg, #2A3150 0%, #1B2138 100%);
}
.samspill-event-single__hero-bg::after {
	content: '';
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(27,33,56,0.15) 0%, rgba(27,33,56,0.85) 100%);
}
.samspill-event-single__hero-inner {
	position: relative;
	z-index: 2;
	padding: 70px 0 56px;
	width: 100%;
	color: #fff;
}
.samspill-event-single__hero-wrap {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 28px;
}
.samspill-event-single__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #EA6E54;
	color: #fff;
	padding: 8px 14px;
	border-radius: 3px;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 13px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 22px;
}
.samspill-event-single__badge svg {
	width: 16px; height: 16px;
}
.samspill-event-single__title {
	font-family: 'Fraunces', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: clamp(32px, 5.4vw, 60px) !important;
	letter-spacing: -0.02em !important;
	line-height: 1.05 !important;
	margin: 0 0 20px !important;
	max-width: 900px;
	color: #fff !important;
}
.samspill-event-single__sub {
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 17px;
	color: rgba(252, 246, 231, 0.9);
	display: flex;
	gap: 22px;
	flex-wrap: wrap;
	align-items: center;
}
.samspill-event-single__sub span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.samspill-event-single__sub svg {
	width: 16px; height: 16px;
	color: #EA6E54;
	flex: 0 0 16px;
}

.samspill-event-single__wrap {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 28px;
}

.samspill-event-single__info {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	padding: 56px 0 48px;
	border-bottom: 1px solid rgba(27, 33, 56, 0.1);
}
@media (max-width: 860px) {
	.samspill-event-single__info {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 40px 0 32px;
	}
}
.samspill-event-single__info-block h3 {
	font-family: 'DM Sans', -apple-system, sans-serif !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.15em !important;
	color: #EA6E54 !important;
	margin: 0 0 12px !important;
}
.samspill-event-single__info-block p {
	font-family: 'Fraunces', Georgia, serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	color: #1B2138 !important;
	margin: 0 !important;
}
.samspill-event-single__info-block p + p {
	font-family: 'DM Sans', -apple-system, sans-serif !important;
	font-size: 15px !important;
	color: #707070 !important;
	margin-top: 4px !important;
}

.samspill-event-single__cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #EA6E54;
	color: #fff !important;
	padding: 13px 22px;
	border-radius: 3px;
	text-decoration: none !important;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-weight: 600;
	letter-spacing: 0.04em;
	font-size: 14px;
	transition: background .2s, transform .2s;
	margin-top: 4px;
}
.samspill-event-single__cta:hover {
	background: #D85B43;
	transform: translateY(-2px);
	color: #fff !important;
}
.samspill-event-single__cta svg {
	width: 14px; height: 14px;
}

.samspill-event-single__ical {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: transparent;
	color: #1B2138 !important;
	padding: 10px 0;
	text-decoration: none !important;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 13px;
	font-weight: 500;
	margin-top: 8px;
	transition: color .2s;
}
.samspill-event-single__ical:hover {
	color: #EA6E54 !important;
}
.samspill-event-single__ical svg {
	width: 14px; height: 14px;
	color: #EA6E54;
}

.samspill-event-single__body {
	max-width: 720px;
	margin: 0 auto;
	padding: 56px 0 72px;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 17px;
	line-height: 1.7;
	color: #1B2138;
}
.samspill-event-single__body p + p { margin-top: 16px; }
.samspill-event-single__body h2,
.samspill-event-single__body h3 {
	font-family: 'Fraunces', Georgia, serif;
	font-weight: 500;
	margin: 32px 0 12px;
	line-height: 1.25;
}
.samspill-event-single__body h2 { font-size: 28px; }
.samspill-event-single__body h3 { font-size: 22px; }
.samspill-event-single__body a {
	color: #EA6E54;
	text-decoration: underline;
}
.samspill-event-single__body img {
	max-width: 100%;
	height: auto;
	border-radius: 3px;
}

/* Skjul Elementor-arv fra parent-tema som forstyrrer full-bredde hero */
body.single-event .elementor-location-single > .elementor-section:has(.samspill-event-single) {
	padding: 0;
}
/* ============================================================
   Event-polish (A+C+D) — 20. april 2026
   A: "Se alle arrangementer »"-lenke nederst
   C: Tom tilstand når 0 fremtidige events
   D: Hover-lift, NESTE-badge
   ============================================================ */

/* ── D: Hover lift på hele kortet ──────────────────────────── */
.samspill-event-card {
	transition: background .2s ease, transform .25s ease, box-shadow .25s ease;
}
.samspill-event-card:hover {
	background: rgba(27, 33, 56, 0.08);
	transform: translateY(-2px);
}

/* ── D: "NESTE"-badge på første event ──────────────────────── */
.samspill-event-card--next {
	background: rgba(27, 33, 56, 0.10);
}
.samspill-event-card--next::before {
	content: 'NESTE';
	position: absolute;
	top: 10px;
	right: 14px;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: #1B2138;
	background: #FCF6E7;
	padding: 3px 7px 2px;
	border-radius: 2px;
	z-index: 3;
	line-height: 1;
}

/* ── A: "Se alle arrangementer »"-lenke nederst ────────────── */
.samspill-event-see-all {
	display: block;
	padding: 18px 20px 20px;
	margin: 0;
	color: #FCF6E7 !important;
	text-decoration: none !important;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-align: center;
	border-top: 1px solid rgba(252, 246, 231, 0.22);
	transition: background .2s ease;
	position: relative;
	z-index: 2;
}
.samspill-event-see-all:hover {
	background: rgba(27, 33, 56, 0.10);
	color: #FCF6E7 !important;
}
.samspill-event-see-all span {
	display: inline-block;
	transition: transform .2s ease;
	margin-left: 2px;
}
.samspill-event-see-all:hover span {
	transform: translateX(3px);
}

/* ── C: Tom tilstand ───────────────────────────────────────── */
.elementor-element-c5d212a .elementor-posts-nothing-found {
	padding: 0;
	background: transparent;
	border: none;
	color: inherit;
}
.samspill-event-empty {
	padding: 40px 24px;
	text-align: center;
	color: #FCF6E7;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 15px;
	line-height: 1.6;
}
.samspill-event-empty a {
	display: inline-block;
	margin-top: 14px;
	color: #FCF6E7 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
	font-weight: 600;
}
.samspill-event-empty a:hover {
	color: #FCF6E7 !important;
	opacity: 0.85;
}

/* ─────────────────────────────────────────────────────────────
 * Forside-hero – responsiv typografi som holder ingressen på
 * maks 2 linjer uansett skjermbredde. Elementor-widget 31410a3.
 *
 * CSS clamp() progresserer fra mobil til desktop. JS-fallback i
 * functions.php reduserer ytterligere via --samspill-hero-fit-scale
 * dersom teksten fortsatt bryter til 3+ linjer.
 * ──────────────────────────────────────────────────────────── */
.page-id-3157 .elementor-element-31410a3 .elementor-heading-title,
.elementor-page-3157 .elementor-element-31410a3 .elementor-heading-title {
	font-size: clamp(1.25rem, 2.7vw, 2.375rem) !important;
	line-height: 1.22 !important;
}
@media (max-width: 640px) {
	.page-id-3157 .elementor-element-31410a3 .elementor-heading-title {
		font-size: clamp(1.05rem, 4.4vw, 1.5rem) !important;
		line-height: 1.28 !important;
	}
}
/* JS-fit klassene kan sette inline --samspill-hero-fit-scale */
.page-id-3157 .elementor-element-31410a3 .elementor-heading-title.samspill-hero-fitted {
	font-size: calc(clamp(1.25rem, 2.7vw, 2.375rem) * var(--samspill-hero-fit-scale, 1)) !important;
}
@media (max-width: 640px) {
	.page-id-3157 .elementor-element-31410a3 .elementor-heading-title.samspill-hero-fitted {
		font-size: calc(clamp(1.05rem, 4.4vw, 1.5rem) * var(--samspill-hero-fit-scale, 1)) !important;
	}
}

/* ─────────────────────────────────────────────────────────────
 * Fast hamburger – knappen blir pinnet fast på samme posisjon
 * hvor den ligger i headeren ved sideload, og beholder
 * posisjonen uansett hvor brukeren scroller. Den flytter ikke
 * plass. JS leser CSS-vars --samspill-hamburger-top/right
 * basert på faktisk målt posisjon.
 *
 * Når brukeren scroller forbi headeren får knappen en cream
 * sirkel-bakgrunn med skygge (samspill-hamburger-scrolled).
 * ──────────────────────────────────────────────────────────── */
.elementor-element-8459411.samspill-hamburger-pinned {
	position: fixed !important;
	top: var(--samspill-hamburger-top, 45px);
	right: var(--samspill-hamburger-right, 95px);
	z-index: 999;
	width: 52px !important;
	height: 52px !important;
	max-width: none !important;
	border-radius: 50%;
	background-color: transparent;
	box-shadow: none;
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 0 !important;
	margin: 0 !important;
	transition: background-color 0.25s ease, box-shadow 0.25s ease;
}
.elementor-element-8459411.samspill-hamburger-pinned .elementor-widget-container,
.elementor-element-8459411.samspill-hamburger-pinned .elementor-icon-wrapper {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0;
}
.elementor-element-8459411.samspill-hamburger-pinned .elementor-icon {
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
/* Når scrollet forbi headeren: synlig cream-pill rundt */
/* Mørkeblå sirkel med kremhvite streker (14,7:1), og en lys kant som skiller den fra mørke bilder. Endret 7. okt 2026, var kremhvit sirkel på kremhvit bakgrunn. */
.elementor-element-8459411.samspill-hamburger-pinned.samspill-hamburger-scrolled {
	background-color: #1B2138;
	box-shadow: 0 0 0 2px rgba(252, 246, 231, 0.7), 0 6px 18px rgba(27, 33, 56, 0.28);
}
.elementor-element-8459411.samspill-hamburger-pinned.samspill-hamburger-scrolled .elementor-icon,
.elementor-element-8459411.samspill-hamburger-pinned.samspill-hamburger-scrolled .elementor-icon svg,
.elementor-element-8459411.samspill-hamburger-pinned.samspill-hamburger-scrolled .elementor-icon svg * {
	color: #FCF6E7 !important;
	fill: #FCF6E7 !important;
}
.elementor-element-8459411.samspill-hamburger-pinned.samspill-hamburger-scrolled:hover {
	background-color: #B8472F;
	box-shadow: 0 0 0 2px rgba(252, 246, 231, 0.7), 0 8px 22px rgba(27, 33, 56, 0.34);
}
.elementor-element-8459411.samspill-hamburger-pinned .elementor-icon:focus-visible {
	outline: 3px solid #B8472F;
	outline-offset: 4px;
	border-radius: 50%;
}

/* ============================================================
   Events-arkiv (/no/events/) — [samspill_event_archive]
   Grid av større kort + filter-tabs + paginering. April 2026.
   ============================================================ */
.samspill-event-archive {
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 24px 80px;
	font-family: 'DM Sans', -apple-system, sans-serif;
}

/* ── Filter-tabs (Kommende / Tidligere) ────────────────────── */
.samspill-event-archive__tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 36px;
	border-bottom: 1px solid rgba(27, 33, 56, 0.12);
	padding-bottom: 0;
}
.samspill-event-archive__tab {
	display: inline-block;
	padding: 12px 22px;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #707070;
	text-decoration: none !important;
	border-bottom: 3px solid transparent;
	margin-bottom: -1px;
	transition: color .2s, border-color .2s;
}
.samspill-event-archive__tab:hover {
	color: #1B2138;
}
.samspill-event-archive__tab.is-active {
	color: #1B2138;
	border-bottom-color: #EA6E54;
}

/* ── Grid av kort ──────────────────────────────────────────── */
.samspill-event-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
}
@media (max-width: 1000px) {
	.samspill-event-archive__grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
}
@media (max-width: 640px) {
	.samspill-event-archive__grid { grid-template-columns: 1fr; gap: 20px; }
}

/* ── Arkiv-kort (full cover + dato-badge + tekst) ──────────── */
.samspill-event-acard {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(27, 33, 56, 0.08);
	transition: transform .28s ease, box-shadow .28s ease;
	text-decoration: none !important;
	color: #1B2138;
	position: relative;
	height: 100%;
}
.samspill-event-acard:hover {
	transform: translateY(-6px);
	box-shadow: 0 10px 30px rgba(27, 33, 56, 0.14);
}
.samspill-event-acard:hover .samspill-event-acard__title {
	color: #EA6E54;
}
.samspill-event-acard:hover .samspill-event-acard__cover img {
	transform: scale(1.04);
}

.samspill-event-acard__cover {
	position: relative;
	aspect-ratio: 16 / 10;
	background: #1B2138;
	overflow: hidden;
}
.samspill-event-acard__cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .6s ease;
}
.samspill-event-acard__cover-fallback {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #2A3150 0%, #1B2138 100%);
}

.samspill-event-acard__date {
	position: absolute;
	top: 16px;
	left: 16px;
	background: #EA6E54;
	color: #fff;
	padding: 10px 14px 8px;
	border-radius: 3px;
	text-align: center;
	font-family: 'Fraunces', Georgia, serif;
	font-weight: 500;
	line-height: 1;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
	z-index: 2;
	min-width: 52px;
}
.samspill-event-acard__date-day {
	display: block;
	font-size: 26px;
	margin-bottom: 3px;
}
.samspill-event-acard__date-month {
	display: block;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.14em;
}

.samspill-event-acard__body {
	padding: 20px 22px 24px;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.samspill-event-acard__when {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: 600;
	color: #EA6E54;
	margin-bottom: 4px;
}
.samspill-event-acard__title {
	font-family: 'Fraunces', Georgia, serif !important;
	font-weight: 500 !important;
	font-size: 22px !important;
	line-height: 1.22 !important;
	letter-spacing: -0.01em !important;
	margin: 0 0 6px !important;
	color: #1B2138 !important;
	transition: color .2s;
}
.samspill-event-acard__venue {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: #2A3150;
	margin-bottom: 8px;
}
.samspill-event-acard__venue svg {
	width: 13px;
	height: 13px;
	flex: 0 0 13px;
	color: #EA6E54;
}
.samspill-event-acard__excerpt {
	font-size: 14px;
	line-height: 1.55;
	color: #555;
	margin: 0;
	margin-top: auto;
	padding-top: 6px;
}

/* ── Paginering ───────────────────────────────────────────── */
.samspill-event-archive__pager {
	margin-top: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	flex-wrap: wrap;
	font-size: 14px;
}
.samspill-event-archive__pager-link {
	display: inline-block;
	padding: 10px 18px;
	color: #1B2138 !important;
	text-decoration: none !important;
	border: 1px solid rgba(27, 33, 56, 0.22);
	border-radius: 3px;
	font-weight: 600;
	letter-spacing: 0.03em;
	transition: background .2s, border-color .2s;
}
.samspill-event-archive__pager-link:hover {
	background: #EA6E54;
	border-color: #EA6E54;
	color: #fff !important;
}
.samspill-event-archive__pager-info {
	color: #707070;
	font-size: 13px;
}

/* ── Tom tilstand ─────────────────────────────────────────── */
.samspill-event-archive__empty {
	padding: 80px 24px;
	text-align: center;
	color: #1B2138;
	font-size: 18px;
	font-family: 'Fraunces', Georgia, serif;
}
.samspill-event-archive__empty p + p {
	margin-top: 16px;
	font-family: 'DM Sans', -apple-system, sans-serif;
	font-size: 15px;
}
.samspill-event-archive__empty a {
	color: #EA6E54 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
	font-weight: 600;
}

/* ============================================================
   Samspill How-to — felles design for how-to-sider under musician
   Lagt til 20. april 2026. Scope: .samspill-howto
   ============================================================ */

.samspill-howto {
	--howto-cream:    #FCF6E7;
	--howto-navy:     #1B2138;
	--howto-coral:    #F26457;
	--howto-coral-dark: #D84B3F;
	--howto-green:    #7CA692;
	--howto-blue:     #337AB7;
	--howto-red:      #993028;
	--howto-gold:     #F1B96D;
	--howto-ink:      #232020;
	--howto-muted:    #5A5550;
	--howto-line:     rgba(27, 33, 56, 0.12);

	--howto-font-display: 'Fraunces', Georgia, serif;
	--howto-font-body:    'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	background: var(--howto-cream);
	color: var(--howto-ink);
	font-family: var(--howto-font-body);
	font-size: 17px;
	line-height: 1.7;
	padding: 0 0 80px;
}

/* Skjul Elementor single-post theme-builder chrome som parent-tema injiserer */
body.samspill-howto-page .elementor-location-single > .elementor-section:not(:has(.samspill-howto)) {
	display: none;
}
body.samspill-howto-page .elementor-element-1f9f552b,
body.samspill-howto-page .elementor-element-94a0cf3 { display: none; }

/* ── Hero ───────────────────────────────────────────────────── */

.howto-hero {
	position: relative;
	background: var(--howto-cream);
	padding: 64px 24px 56px;
	border-bottom: 1px solid var(--howto-line);
	overflow: hidden;
}
/* Coral aksent-boble fjernet — chip, CTA og gradient-stripe gir nok aksent */
.howto-hero-inner {
	position: relative;
	z-index: 1;
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: 64px;
	align-items: center;
}
.howto-hero-main { min-width: 0; }
.howto-hero-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 16px;
}
.howto-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.howto-chip-category {
	background: var(--howto-green);
	color: #fff;
}
.howto-chip-members {
	background: transparent;
	color: var(--howto-navy);
	border: 1px solid var(--howto-line);
}
.samspill-howto .howto-title {
	font-family: var(--howto-font-display);
	font-weight: 600;
	color: var(--howto-navy) !important;
	font-size: clamp(34px, 5.2vw, 58px);
	line-height: 1.08;
	letter-spacing: -0.01em;
	margin: 0 0 12px;
	background: transparent !important;
	-webkit-text-fill-color: var(--howto-navy);
}
.howto-subtitle {
	font-size: clamp(18px, 2vw, 22px);
	line-height: 1.5;
	color: var(--howto-muted);
	max-width: 720px;
	margin: 0 0 24px;
}
.howto-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 20px;
	align-items: center;
	font-size: 14px;
	color: var(--howto-muted);
}
.howto-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.howto-meta-item svg { flex-shrink: 0; }
.samspill-howto .howto-meta-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--howto-coral);
	color: #fff !important;
	font-weight: 600;
	font-size: 14px;
	padding: 10px 16px;
	border-radius: 6px;
	text-decoration: none !important;
	transition: background .2s ease, transform .2s ease;
}
.samspill-howto .howto-meta-cta:hover {
	background: var(--howto-coral-dark);
	color: #fff !important;
	transform: translateY(-1px);
}
.howto-hero-icon {
	font-size: clamp(72px, 10vw, 120px);
	line-height: 1;
	filter: drop-shadow(0 4px 8px rgba(27, 33, 56, 0.12));
}
.howto-hero-image {
	position: relative;
	width: 100%;
	aspect-ratio: 5 / 4;
	border-radius: 16px;
	overflow: hidden;
	background: rgba(27, 33, 56, 0.06);
	box-shadow:
		0 18px 48px rgba(27, 33, 56, 0.18),
		0 6px 14px rgba(27, 33, 56, 0.08);
	/* Liten rotasjon gir bildet karakter og binder det til bakgrunnsaksenten */
	transform: rotate(1deg);
	transition: transform .4s ease;
}
.howto-hero-image:hover {
	transform: rotate(0deg);
}
.howto-hero-image img,
.howto-hero-image .howto-hero-image-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
/* Diskret coral stripe øverst på bildet for å ekko chip-fargen */
.howto-hero-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--howto-green) 0%, var(--howto-coral) 100%);
	z-index: 2;
}

/* ── TL;DR ─────────────────────────────────────────────────── */

.howto-tldr {
	max-width: 1200px;
	margin: 40px auto 0;
	padding: 0 24px;
}
.howto-section-label {
	font-family: var(--howto-font-display);
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--howto-coral);
	margin: 0 0 16px;
}
.howto-tldr-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
}
.howto-tldr-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	background: #fff;
	padding: 18px 18px 20px;
	border-radius: 8px;
	border: 1px solid var(--howto-line);
}
.howto-tldr-num {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	background: var(--howto-coral);
	color: #fff;
	border-radius: 50%;
	font-family: var(--howto-font-display);
	font-weight: 600;
	font-size: 14px;
	line-height: 1;
}
.howto-tldr-text {
	font-size: 15px;
	line-height: 1.5;
	color: var(--howto-ink);
}

/* ── Layout (TOC + body) ────────────────────────────────────── */

.howto-layout {
	max-width: 1200px;
	margin: 48px auto 0;
	padding: 0 24px;
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 56px;
	align-items: start;
}
.howto-toc {
	position: sticky;
	/* Naturlig startposisjon: sitter øverst i layout-gridet (ved siden av første h2).
	   Når brukeren scroller, klebrer den til sentrum av viewporten.
	   calc(50vh - 190px) ≈ TOC-ens halve høyde, så midtpunktet lander ved viewport-sentrum. */
	top: calc(50vh - 190px);
	align-self: start;
	max-height: calc(100vh - 100px);
	overflow-y: auto;
}
.howto-toc-inner {
	border-left: 2px solid var(--howto-line);
	padding-left: 20px;
}
.howto-toc-heading {
	font-family: var(--howto-font-display);
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--howto-muted);
	margin: 0 0 12px;
}
.howto-toc-list {
	list-style: none;
	padding: 0;
	margin: 0;
	counter-reset: toc;
}
.howto-toc-list li { margin: 0 0 8px; counter-increment: toc; }
.howto-toc-list a {
	display: block;
	font-size: 14px;
	line-height: 1.4;
	color: var(--howto-muted);
	text-decoration: none;
	padding: 4px 0 4px 12px;
	border-left: 2px solid transparent;
	margin-left: -22px;
	padding-left: 20px;
	transition: color .15s ease, border-color .15s ease;
}
.howto-toc-list a:hover { color: var(--howto-navy); }
.howto-toc-list a.is-active {
	color: var(--howto-coral);
	font-weight: 600;
	border-left-color: var(--howto-coral);
}

/* ── Body typografi ────────────────────────────────────────── */

.howto-body {
	max-width: 760px;
	color: var(--howto-ink);
}
.howto-body > :first-child { margin-top: 0; }
.howto-body > :last-child { margin-bottom: 0; }

.howto-body p {
	font-size: 17px;
	line-height: 1.75;
	margin: 0 0 20px;
}
.howto-body p.lead {
	font-size: 20px;
	line-height: 1.6;
	color: var(--howto-navy);
	margin-bottom: 28px;
}
.howto-body h2 {
	font-family: var(--howto-font-display);
	font-size: clamp(24px, 3vw, 32px);
	line-height: 1.2;
	color: var(--howto-navy);
	margin: 56px 0 20px;
	font-weight: 600;
	letter-spacing: -0.01em;
	scroll-margin-top: 80px;
}
.howto-body h3 {
	font-family: var(--howto-font-display);
	font-size: 22px;
	line-height: 1.3;
	color: var(--howto-navy);
	margin: 36px 0 14px;
	font-weight: 600;
	scroll-margin-top: 80px;
}
.howto-body a {
	color: var(--howto-coral);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.howto-body a:hover {
	color: var(--howto-coral-dark);
}
.howto-body strong { color: var(--howto-navy); font-weight: 600; }
.howto-body em { font-style: italic; }

/* Part titles ("1 Kort presentasjon") */
.howto-body .howto-part-title {
	display: flex;
	align-items: baseline;
	gap: 16px;
}
.howto-part-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	background: var(--howto-navy);
	color: var(--howto-cream);
	border-radius: 50%;
	font-family: var(--howto-font-display);
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}

/* Plain lists with good typography */
.howto-body ul.howto-list-plain {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}
.howto-body ul.howto-list-plain li {
	position: relative;
	padding-left: 24px;
	margin-bottom: 10px;
	font-size: 17px;
	line-height: 1.65;
}
.howto-body ul.howto-list-plain li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 11px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--howto-coral);
}

/* Info-boxes */
.howto-box {
	background: #fff;
	border-radius: 10px;
	padding: 20px 24px;
	margin: 28px 0;
	border-left: 4px solid var(--howto-green);
}
.howto-box-label {
	font-family: var(--howto-font-display);
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--howto-green);
	margin: 0 0 8px;
}
.howto-box p { margin-bottom: 0; }
.howto-box-info { border-left-color: var(--howto-green); }
.howto-box-info .howto-box-label { color: var(--howto-green); }
.howto-box-obs {
	background: var(--howto-navy);
	color: var(--howto-cream);
	border-left-color: var(--howto-gold);
}
.howto-box-obs p { color: var(--howto-cream); }
.howto-box-obs strong { color: var(--howto-cream); }
.howto-box-obs em { color: var(--howto-gold); font-style: normal; font-weight: 600; }
.howto-box-obs .howto-box-label { color: var(--howto-gold); }
.howto-box-tip {
	border-left-color: var(--howto-blue);
}
.howto-box-tip .howto-box-label { color: var(--howto-blue); }

/* Timing grid */
.howto-timing-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 24px 0 32px;
}
.howto-timing-card {
	background: #fff;
	padding: 20px;
	border-radius: 10px;
	border: 1px solid var(--howto-line);
}
.howto-timing-when {
	font-family: var(--howto-font-display);
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--howto-coral);
	margin: 0 0 8px;
}
.howto-timing-what {
	margin: 0;
	font-size: 15px;
	line-height: 1.55;
}

/* Quote & example boxes */
.howto-quote {
	background: #fff;
	border-left: 3px solid var(--howto-coral);
	padding: 16px 20px;
	margin: 16px 0 28px;
	border-radius: 0 6px 6px 0;
}
.howto-quote p { margin: 0; font-size: 16px; color: var(--howto-muted); }
.howto-example {
	background: #fff;
	padding: 20px 24px;
	margin: 16px 0 28px;
	border-radius: 10px;
	border: 1px solid var(--howto-line);
}
.howto-example pre {
	margin: 0;
	font-family: 'SF Mono', 'Menlo', 'Consolas', monospace;
	font-size: 14px;
	line-height: 1.7;
	color: var(--howto-navy);
	white-space: pre-wrap;
	word-break: break-word;
}

/* Figure */
.howto-figure {
	margin: 28px 0;
}
.howto-figure img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	border: 1px solid var(--howto-line);
}
.howto-figure figcaption {
	font-size: 14px;
	color: var(--howto-muted);
	margin-top: 10px;
	line-height: 1.5;
}

/* Video embed (responsiv 16:9-ramme) */
.howto-video {
	margin: 28px 0;
}
.howto-video-wrap {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: var(--howto-navy);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(27, 33, 56, 0.12);
}
.howto-video-wrap iframe {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Genre grid */
.howto-genre-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 24px 0 32px;
}
.howto-genre-card {
	background: #fff;
	padding: 22px 20px;
	border-radius: 10px;
	border: 1px solid var(--howto-line);
}
.howto-genre-title {
	font-family: var(--howto-font-display);
	font-size: 17px;
	font-weight: 600;
	color: var(--howto-navy);
	margin: 0 0 10px;
}
.howto-genre-card p:not(.howto-genre-title) {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--howto-ink);
}

/* Tools grid */
.howto-tools-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	margin: 20px 0 32px;
}
.howto-tool-card {
	display: block;
	background: #fff;
	padding: 20px;
	border-radius: 10px;
	border: 1px solid var(--howto-line);
	text-decoration: none !important;
	color: var(--howto-ink) !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.howto-tool-card:hover {
	transform: translateY(-2px);
	border-color: var(--howto-coral);
	box-shadow: 0 4px 14px rgba(27, 33, 56, 0.08);
}
.howto-tool-card .howto-tool-name,
.howto-body .howto-tool-name {
	display: block;
	font-family: var(--howto-font-display);
	font-size: 17px;
	font-weight: 600;
	color: var(--howto-navy) !important;
	margin: 0 0 6px;
}
.howto-tool-card .howto-tool-desc,
.howto-body .howto-tool-desc {
	display: block;
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--howto-muted) !important;
}

/* Mistakes list */
.howto-body ul.howto-mistakes {
	list-style: none;
	padding: 0;
	margin: 20px 0 32px;
}
.howto-mistakes li {
	background: #fff;
	padding: 18px 20px 18px 52px;
	border-radius: 8px;
	border-left: 3px solid var(--howto-red);
	margin-bottom: 12px;
	position: relative;
}
.howto-mistakes li::before {
	content: "✕";
	position: absolute;
	left: 18px;
	top: 18px;
	width: 22px;
	height: 22px;
	background: var(--howto-red);
	color: #fff;
	border-radius: 50%;
	font-size: 12px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}
.howto-mistake-title {
	font-family: var(--howto-font-display);
	font-size: 16px;
	font-weight: 600;
	color: var(--howto-navy);
	margin: 0 0 4px;
}
.howto-mistakes li p:not(.howto-mistake-title) { margin: 0; font-size: 15px; line-height: 1.55; }

/* Checklist */
.howto-body ul.howto-checklist {
	list-style: none;
	padding: 0;
	margin: 20px 0 28px;
	background: #fff;
	border-radius: 10px;
	border: 1px solid var(--howto-line);
	padding: 8px 4px;
}
.howto-checklist li {
	position: relative;
	padding: 12px 16px 12px 48px;
	font-size: 16px;
	line-height: 1.55;
	border-bottom: 1px solid var(--howto-line);
}
.howto-checklist li:last-child { border-bottom: none; }
.howto-checklist li::before {
	content: "";
	position: absolute;
	left: 16px;
	top: 15px;
	width: 20px;
	height: 20px;
	background: transparent;
	border: 2px solid var(--howto-green);
	border-radius: 4px;
}
.howto-checklist li::after {
	content: "✓";
	position: absolute;
	left: 20px;
	top: 12px;
	color: var(--howto-green);
	font-size: 16px;
	font-weight: 700;
}

/* Example preview box */
.howto-example-preview {
	background: var(--howto-navy);
	color: var(--howto-cream);
	padding: 24px 28px;
	border-radius: 12px;
	margin: 24px 0;
}
.howto-example-preview a {
	color: var(--howto-gold);
}
.howto-example-preview .howto-small {
	font-size: 14px;
	opacity: 0.85;
	margin-top: 8px;
	margin-bottom: 0;
}
.howto-example-preview p:first-child { margin-top: 0; }

.howto-body code {
	font-family: 'SF Mono', Menlo, Consolas, monospace;
	font-size: 14px;
	background: rgba(27, 33, 56, 0.07);
	padding: 2px 6px;
	border-radius: 3px;
	color: var(--howto-navy);
}

/* ── Downloads section ─────────────────────────────────────── */

.howto-downloads {
	max-width: 1120px;
	margin: 64px auto 0;
	padding: 40px 32px;
	background: linear-gradient(135deg, #FFF6EA 0%, #FDE4C3 100%);
	border-radius: 16px;
}
.howto-downloads-title {
	font-family: var(--howto-font-display);
	font-size: 28px;
	line-height: 1.2;
	color: var(--howto-navy);
	margin: 0 0 8px;
	font-weight: 600;
}
.howto-downloads-intro {
	margin: 0 0 24px;
	color: var(--howto-muted);
	font-size: 16px;
}
.howto-downloads-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 16px;
}
.howto-download-card {
	display: flex;
	align-items: center;
	gap: 16px;
	background: #fff;
	padding: 20px 22px;
	border-radius: 12px;
	text-decoration: none !important;
	color: var(--howto-ink) !important;
	border: 2px solid transparent;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.howto-download-card:hover {
	transform: translateY(-2px);
	border-color: var(--howto-coral);
	box-shadow: 0 6px 18px rgba(27, 33, 56, 0.1);
}
.howto-download-icon {
	flex-shrink: 0;
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--howto-coral);
	color: #fff;
	border-radius: 10px;
}
.howto-download-secondary .howto-download-icon { background: var(--howto-navy); }
.howto-download-text { min-width: 0; }
.howto-download-label {
	font-family: var(--howto-font-display);
	font-weight: 600;
	font-size: 17px;
	color: var(--howto-navy);
	margin: 0;
}
.howto-download-meta {
	margin: 2px 0 0;
	font-size: 13px;
	color: var(--howto-muted);
	letter-spacing: 0.02em;
}
.howto-downloads-locked {
	margin: 16px 0 0;
	font-size: 14px;
	color: var(--howto-muted);
	display: flex;
	align-items: center;
	gap: 8px;
}
.howto-downloads-locked a { color: var(--howto-coral); font-weight: 600; }

/* ── Related how-to-sider ──────────────────────────────────── */

.howto-related {
	max-width: 1120px;
	margin: 56px auto 0;
	padding: 0 24px;
}
.howto-related-title {
	font-family: var(--howto-font-display);
	font-size: 26px;
	color: var(--howto-navy);
	margin: 0 0 20px;
	font-weight: 600;
}
.howto-related-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
}
.howto-related-card {
	display: block;
	background: #fff;
	padding: 22px 22px 24px;
	border-radius: 12px;
	border: 1px solid var(--howto-line);
	text-decoration: none !important;
	color: var(--howto-ink) !important;
	transition: transform .2s ease, border-color .2s ease;
	position: relative;
}
.howto-related-card:hover {
	transform: translateY(-2px);
	border-color: var(--howto-coral);
}
.howto-related-icon {
	display: block;
	font-size: 32px;
	line-height: 1;
	margin-bottom: 12px;
}
.howto-related-thumb {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 14px;
	background: rgba(27, 33, 56, 0.06);
}
.howto-related-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.howto-related-chip {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--howto-green);
	margin-bottom: 6px;
}
.howto-related-title-text {
	font-family: var(--howto-font-display);
	font-size: 18px;
	font-weight: 600;
	color: var(--howto-navy);
	margin: 0 0 6px;
	line-height: 1.25;
}
.howto-related-subtitle {
	margin: 0;
	font-size: 14px;
	color: var(--howto-muted);
	line-height: 1.5;
}

/* ── Responsive ─────────────────────────────────────────────── */

@media (max-width: 1024px) {
	.howto-layout {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.howto-toc {
		position: static;
		transform: none;
		top: auto;
		max-height: none;
		border: 1px solid var(--howto-line);
		border-radius: 10px;
		background: #fff;
		padding: 16px 20px;
	}
	.howto-toc-inner { border-left: none; padding-left: 0; }
	.howto-body { max-width: none; }
}

@media (max-width: 860px) {
	.howto-hero {
		padding: 40px 20px 32px;
	}
	.howto-hero-inner {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.howto-hero-icon {
		font-size: 80px;
		order: -1;
		align-self: start;
	}
	.howto-hero-image {
		order: -1;
		align-self: start;
		max-width: 100%;
		aspect-ratio: 16 / 10;
		transform: none;
	}
	.howto-hero::before {
		display: none;
	}
	.howto-tldr { padding: 0 20px; margin-top: 32px; }
	.howto-tldr-list { grid-template-columns: 1fr; }
	.howto-layout { padding: 0 20px; margin-top: 40px; }
	.howto-timing-grid,
	.howto-genre-grid,
	.howto-tools-grid {
		grid-template-columns: 1fr;
	}
	.howto-downloads { margin: 48px 20px 0; padding: 32px 24px; }
	.howto-downloads-grid { grid-template-columns: 1fr; }
	.howto-related { padding: 0 20px; }
	.howto-body h2 { margin: 40px 0 16px; }
	.howto-body .howto-part-title {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}
	.howto-part-num { width: 38px; height: 38px; font-size: 17px; }
}

@media (max-width: 480px) {
	.howto-hero { padding: 32px 16px 28px; }
	.howto-meta { font-size: 13px; gap: 10px 16px; }
	.howto-meta-cta { font-size: 13px; padding: 8px 14px; }
	.howto-body { font-size: 16px; }
	.howto-body p { font-size: 16px; }
	.howto-tldr-item { padding: 14px; }
}
/* === Samspill: Mobile whitespace trim (Må 3 — item 10) === */
@media (max-width: 767px) {
    /* "Bli medlem"-mørk boks — kortere luft over/under */
    .page-id-3157 .elementor-element-4bd6432 {
        margin-bottom: 32px !important;
    }
    .page-id-3157 .elementor-element-4bd6432 > .elementor-container {
        padding-top: 16px !important;
    }
    /* "Artist Spotlight" — 104px luft over er for mye */
    .page-id-3157 .elementor-element-07e4f96 {
        margin-top: 48px !important;
    }
    /* "Samspill på Spotify" */
    .page-id-3157 .elementor-element-cfa0a63 {
        margin-top: 36px !important;
    }
}

/* === Samspill: Testimonials mobile layout (Må 2) === */
@media (max-width: 767px) {
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial {
        display: flex;
        flex-direction: column;
    }
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial__content {
        order: 2;
    }
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial__footer {
        order: 1;
        margin-bottom: 18px;
        margin-top: 0;
        justify-content: flex-start;
    }
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial__text {
        text-align: left !important;
        font-size: 16px;
        line-height: 1.55;
    }
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial__cite {
        text-align: left;
    }
    .page-id-3157 .elementor-element-3bfb9ff .elementor-testimonial__image {
        margin-right: 12px;
    }
}

/* === Samspill: Hva skjer? mobile — stramme opp padding (Må 2) === */
@media (max-width: 767px) {
    .page-id-3157 .elementor-element-c5d212a > .elementor-widget-container {
        padding: 28px 0 36px !important;
    }
    .page-id-3157 .samspill-event-card {
        padding: 12px 14px !important;
    }
    .page-id-3157 .samspill-event-card + .samspill-event-card {
        border-top: 1px solid rgba(255,255,255,0.2);
    }
}

/* === Samspill: Hjelper-kort redesign (Må 3 — item 9) === */
/* 6 kort på forsiden: "Hvordan hjelper Samspill medlemmene sine?" */

.page-id-3157 .elementor-element-0892f13 { --sam-card-accent: #F1B96D; }
.page-id-3157 .elementor-element-791c609 { --sam-card-accent: #EA6E54; }
.page-id-3157 .elementor-element-9b7f843 { --sam-card-accent: #7CA692; }
.page-id-3157 .elementor-element-d0def54 { --sam-card-accent: #F26457; }
.page-id-3157 .elementor-element-9094c28 { --sam-card-accent: #6CC9C8; }
.page-id-3157 .elementor-element-e1a4cca { --sam-card-accent: #1B382C; }

.page-id-3157 .elementor-element-0892f13,
.page-id-3157 .elementor-element-791c609,
.page-id-3157 .elementor-element-9b7f843,
.page-id-3157 .elementor-element-d0def54,
.page-id-3157 .elementor-element-9094c28,
.page-id-3157 .elementor-element-e1a4cca {
    display: flex !important;
}

.page-id-3157 .elementor-element-0892f13 > .elementor-element-populated,
.page-id-3157 .elementor-element-791c609 > .elementor-element-populated,
.page-id-3157 .elementor-element-9b7f843 > .elementor-element-populated,
.page-id-3157 .elementor-element-d0def54 > .elementor-element-populated,
.page-id-3157 .elementor-element-9094c28 > .elementor-element-populated,
.page-id-3157 .elementor-element-e1a4cca > .elementor-element-populated {
    background: #FFFFFF !important;
    border-top: 4px solid var(--sam-card-accent);
    border-radius: 16px !important;
    box-shadow: 0 4px 14px rgba(27, 33, 56, 0.06);
    padding: 36px 28px 32px !important;
    display: flex !important;
    flex-direction: column;
    flex: 1;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    position: relative;
    overflow: hidden;
}

.page-id-3157 .elementor-element-0892f13 > .elementor-element-populated:hover,
.page-id-3157 .elementor-element-791c609 > .elementor-element-populated:hover,
.page-id-3157 .elementor-element-9b7f843 > .elementor-element-populated:hover,
.page-id-3157 .elementor-element-d0def54 > .elementor-element-populated:hover,
.page-id-3157 .elementor-element-9094c28 > .elementor-element-populated:hover,
.page-id-3157 .elementor-element-e1a4cca > .elementor-element-populated:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 28px rgba(27, 33, 56, 0.12);
}

/* Ikon-sirkel foran overskriften i hvert kort */
.page-id-3157 .elementor-element-0892f13 .elementor-element-06f223b,
.page-id-3157 .elementor-element-791c609 .elementor-element-7663bb1,
.page-id-3157 .elementor-element-9b7f843 .elementor-element-578daba,
.page-id-3157 .elementor-element-d0def54 .elementor-element-737f73d,
.page-id-3157 .elementor-element-9094c28 .elementor-element-2afb523,
.page-id-3157 .elementor-element-e1a4cca .elementor-element-ec765d2 {
    position: relative;
    padding-top: 72px !important;
    margin-top: 0 !important;
}

.page-id-3157 .elementor-element-0892f13 .elementor-element-06f223b::before,
.page-id-3157 .elementor-element-791c609 .elementor-element-7663bb1::before,
.page-id-3157 .elementor-element-9b7f843 .elementor-element-578daba::before,
.page-id-3157 .elementor-element-d0def54 .elementor-element-737f73d::before,
.page-id-3157 .elementor-element-9094c28 .elementor-element-2afb523::before,
.page-id-3157 .elementor-element-e1a4cca .elementor-element-ec765d2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background-color: var(--sam-card-accent);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 28px 28px;
    opacity: 1;
}

/* Per-kort ikon — inline SVG data URI, hvit stroke */
.page-id-3157 .elementor-element-0892f13 .elementor-element-06f223b::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z'/><line x1='7' y1='7' x2='7.01' y2='7'/></svg>");
}
.page-id-3157 .elementor-element-791c609 .elementor-element-7663bb1::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/><path d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/></svg>");
}
.page-id-3157 .elementor-element-9b7f843 .elementor-element-578daba::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18V5l12-2v13'/><circle cx='6' cy='18' r='3'/><circle cx='18' cy='16' r='3'/></svg>");
}
.page-id-3157 .elementor-element-d0def54 .elementor-element-737f73d::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z'/><path d='M19 10v2a7 7 0 0 1-14 0v-2'/><line x1='12' y1='19' x2='12' y2='23'/><line x1='8' y1='23' x2='16' y2='23'/></svg>");
}
.page-id-3157 .elementor-element-9094c28 .elementor-element-2afb523::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='18' cy='5' r='3'/><circle cx='6' cy='12' r='3'/><circle cx='18' cy='19' r='3'/><line x1='8.59' y1='13.51' x2='15.42' y2='17.49'/><line x1='15.41' y1='6.51' x2='8.59' y2='11.49'/></svg>");
}
.page-id-3157 .elementor-element-e1a4cca .elementor-element-ec765d2::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/><line x1='4' y1='22' x2='4' y2='15'/></svg>");
}

/* Tittel-typografi: navy, fet, tydelig */
.page-id-3157 .elementor-element-0892f13 .elementor-heading-title,
.page-id-3157 .elementor-element-791c609 .elementor-heading-title,
.page-id-3157 .elementor-element-9b7f843 .elementor-heading-title,
.page-id-3157 .elementor-element-d0def54 .elementor-heading-title,
.page-id-3157 .elementor-element-9094c28 .elementor-heading-title,
.page-id-3157 .elementor-element-e1a4cca .elementor-heading-title {
    color: #1B2138 !important;
    font-weight: 700 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    margin-bottom: 8px !important;
}

/* Brødtekst */
.page-id-3157 .elementor-element-0892f13 .elementor-widget-text-editor,
.page-id-3157 .elementor-element-791c609 .elementor-widget-text-editor,
.page-id-3157 .elementor-element-9b7f843 .elementor-widget-text-editor,
.page-id-3157 .elementor-element-d0def54 .elementor-widget-text-editor,
.page-id-3157 .elementor-element-9094c28 .elementor-widget-text-editor,
.page-id-3157 .elementor-element-e1a4cca .elementor-widget-text-editor {
    color: #1B2138 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    flex: 1;
}

.page-id-3157 .elementor-element-0892f13 .elementor-widget-text-editor p,
.page-id-3157 .elementor-element-791c609 .elementor-widget-text-editor p,
.page-id-3157 .elementor-element-9b7f843 .elementor-widget-text-editor p,
.page-id-3157 .elementor-element-d0def54 .elementor-widget-text-editor p,
.page-id-3157 .elementor-element-9094c28 .elementor-widget-text-editor p,
.page-id-3157 .elementor-element-e1a4cca .elementor-widget-text-editor p {
    color: #1B2138 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

/* Mobil: redusert padding og mindre ikon-pad */
@media (max-width: 767px) {
    .page-id-3157 .elementor-element-0892f13 > .elementor-element-populated,
    .page-id-3157 .elementor-element-791c609 > .elementor-element-populated,
    .page-id-3157 .elementor-element-9b7f843 > .elementor-element-populated,
    .page-id-3157 .elementor-element-d0def54 > .elementor-element-populated,
    .page-id-3157 .elementor-element-9094c28 > .elementor-element-populated,
    .page-id-3157 .elementor-element-e1a4cca > .elementor-element-populated {
        padding: 28px 22px 24px !important;
    }
    .page-id-3157 .elementor-element-0892f13 .elementor-heading-title,
    .page-id-3157 .elementor-element-791c609 .elementor-heading-title,
    .page-id-3157 .elementor-element-9b7f843 .elementor-heading-title,
    .page-id-3157 .elementor-element-d0def54 .elementor-heading-title,
    .page-id-3157 .elementor-element-9094c28 .elementor-heading-title,
    .page-id-3157 .elementor-element-e1a4cca .elementor-heading-title {
        font-size: 20px !important;
    }
}

/* =========================================================
   Bli medlem-side (2109) – refresh april 2026
   Keep coral info box + cream checkout layout.
   Fix: readable link contrast, fresh typography, cleaner copy.
   ========================================================= */
.page-id-2109 .elementor-element-13d8b4cc > .elementor-element-populated {
	padding: 56px 36px !important;
}
.page-id-2109 .elementor-element-005fe04 .elementor-heading-title {
	font-family: 'Fraunces', serif !important;
	font-weight: 700 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	font-size: 44px !important;
	line-height: 1.05 !important;
	color: #FCF6E7 !important;
	margin-bottom: 32px !important;
}
.page-id-2109 .elementor-element-356a50c {
	font-family: 'DM Sans', 'Helvetica Neue', Arial, sans-serif !important;
}
.page-id-2109 .elementor-element-356a50c .elementor-widget-container,
.page-id-2109 .elementor-element-356a50c p {
	color: #FCF6E7 !important;
	font-family: 'DM Sans', 'Helvetica Neue', Arial, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.6 !important;
	text-align: center;
}
.page-id-2109 .elementor-element-356a50c .sp-price-label {
	text-transform: uppercase;
	letter-spacing: 0.18em;
	font-size: 11px !important;
	margin: 0 0 6px !important;
	opacity: 0.85;
}
.page-id-2109 .elementor-element-356a50c .sp-price {
	font-family: 'Fraunces', serif !important;
	font-size: 56px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	margin: 0 0 26px !important;
	letter-spacing: -0.01em;
}
.page-id-2109 .elementor-element-356a50c .sp-price strong {
	font-weight: 700;
	color: #FCF6E7;
}
.page-id-2109 .elementor-element-356a50c .sp-intro {
	margin: 0 0 24px !important;
	max-width: 260px;
	margin-left: auto !important;
	margin-right: auto !important;
}
.page-id-2109 .elementor-element-356a50c .sp-benefits-link-wrap {
	margin: 0 !important;
}
.page-id-2109 .sp-benefits-link {
	display: inline-block;
	color: #FCF6E7 !important;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
	padding: 4px 0;
	transition: color 0.18s ease, background 0.18s ease;
}
.page-id-2109 .sp-benefits-link:hover,
.page-id-2109 .sp-benefits-link:focus {
	color: #1B2138 !important;
}

/* Checkout card refresh */
.page-id-2109 .pmpro_card_title.pmpro_font-large {
	font-family: 'Fraunces', serif !important;
	font-weight: 600;
	font-size: 24px;
	color: #1B2138;
	letter-spacing: -0.01em;
}
.page-id-2109 .pmpro_level_cost_text p,
.page-id-2109 .pmpro_level_name_text {
	font-size: 15px;
	line-height: 1.55;
	color: #1B2138;
}
.page-id-2109 .pmpro_btn-submit-checkout,
.page-id-2109 input.pmpro_btn-submit-checkout {
	background-color: #EA6E54 !important;
	border-color: #EA6E54 !important;
	color: #FCF6E7 !important;
	font-weight: 600;
	letter-spacing: 0.02em;
	padding: 12px 22px !important;
	border-radius: 6px !important;
	transition: background 0.18s ease, transform 0.18s ease;
}
.page-id-2109 .pmpro_btn-submit-checkout:hover {
	background-color: #1B2138 !important;
	border-color: #1B2138 !important;
	transform: translateY(-1px);
}

/* Mobile adjustments */
@media (max-width: 767px) {
	.page-id-2109 .elementor-element-13d8b4cc > .elementor-element-populated {
		padding: 40px 24px !important;
	}
	.page-id-2109 .elementor-element-005fe04 .elementor-heading-title {
		font-size: 34px !important;
		margin-bottom: 24px !important;
	}
	.page-id-2109 .elementor-element-356a50c .sp-price {
		font-size: 46px !important;
	}
}
/* =========================================================
   [samspill_testimonials] – CSS
   Scope: .samspill-testimonials
   Fonter: Fraunces (serif display), DM Sans (sans body) – antas
   lastet globalt. Farger fra temaets globale palette.
   ========================================================= */
.samspill-testimonials {
	background: #FCF6E7;
	padding: clamp(48px, 7vw, 96px) 20px;
	color: #1B2138;
}
.samspill-testimonials .st-inner {
	max-width: 1180px;
	margin: 0 auto;
}
.samspill-testimonials .st-heading {
	font-family: 'Fraunces', Georgia, serif;
	font-size: clamp(28px, 4.4vw, 44px);
	line-height: 1.1;
	font-weight: 600;
	color: #1B2138;
	margin: 0 0 12px;
	text-align: center;
	letter-spacing: -0.01em;
}
.samspill-testimonials .st-intro {
	font-family: 'DM Sans', system-ui, sans-serif;
	font-size: 16px;
	line-height: 1.55;
	color: #4a4f66;
	max-width: 620px;
	margin: 0 auto clamp(32px, 5vw, 56px);
	text-align: center;
}
.samspill-testimonials .st-heading + .st-grid {
	margin-top: clamp(32px, 5vw, 56px);
}

/* Grid: 3 kolonner desktop, 2 tablet, 1 mobil. Lik høyde per rad. */
.samspill-testimonials .st-grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
@media (max-width: 1024px) {
	.samspill-testimonials .st-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
@media (max-width: 640px) {
	.samspill-testimonials .st-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* Kort */
.samspill-testimonials .st-card {
	display: flex;
}
.samspill-testimonials .st-figure {
	margin: 0;
	padding: 28px 24px 24px;
	background: #fff;
	border-radius: 14px;
	border: 1px solid rgba(27, 33, 56, 0.08);
	box-shadow: 0 1px 2px rgba(27, 33, 56, 0.04), 0 6px 16px rgba(27, 33, 56, 0.05);
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
	position: relative;
}
.samspill-testimonials .st-figure::before {
	content: "\201C"; /* left double quote */
	position: absolute;
	top: 4px;
	left: 18px;
	font-family: 'Fraunces', Georgia, serif;
	font-size: 72px;
	line-height: 1;
	color: #F26457;
	opacity: 0.9;
	pointer-events: none;
}

/* Portrett */
.samspill-testimonials .st-portrait {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	overflow: hidden;
	background: #F3E6C8;
	margin-top: 24px; /* flytter ned under ornament-« */
	flex-shrink: 0;
	box-shadow: 0 2px 6px rgba(27, 33, 56, 0.12);
}
.samspill-testimonials .st-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Sitatet */
.samspill-testimonials .st-quote {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: 'Fraunces', Georgia, serif;
	font-size: 17px;
	line-height: 1.55;
	color: #1B2138;
	flex-grow: 1;
}
.samspill-testimonials .st-quote p {
	margin: 0;
}

/* Navn + rolle */
.samspill-testimonials .st-cite {
	font-style: normal;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding-top: 12px;
	border-top: 1px solid rgba(27, 33, 56, 0.08);
}
.samspill-testimonials .st-name {
	font-family: 'DM Sans', system-ui, sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: #1B2138;
	letter-spacing: 0.01em;
}
.samspill-testimonials .st-role {
	font-family: 'DM Sans', system-ui, sans-serif;
	font-size: 13px;
	font-weight: 400;
	color: #7C7F91;
	letter-spacing: 0.02em;
}
/* ==========================================================================
   Samspill Artist Dashboard – scoped styles
   --------------------------------------------------------------------------
   Brukes på post 3118 via [samspill_dashboard]. Følger samme mønster som
   .samspill-howto / .samspill-resursbank / .elementor-381 (kontaktside).
   Dato: 27. april 2026
   ========================================================================== */

.samspill-dashboard {
	--dash-bg:        #FCF6E7;
	--dash-surface:   #ffffff;
	--dash-text:      #232020;
	--dash-text-soft: #5A5550;
	--dash-navy:      #1B2138;
	--dash-coral:     #F26457;
	--dash-coral-2:   #EA6E54;
	--dash-green:     #7CA692;
	--dash-darkgreen: #1B382C;
	--dash-gold:      #F1B96D;
	--dash-turquoise: #6CC9C8;
	--dash-line:      rgba(27, 33, 56, 0.08);
	--dash-shadow:    0 4px 14px rgba(27, 33, 56, 0.06);
	--dash-shadow-hi: 0 10px 28px rgba(27, 33, 56, 0.1);
	--dash-radius:    16px;

	font-family: 'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
	color: var(--dash-text);
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}

.samspill-dashboard *,
.samspill-dashboard *::before,
.samspill-dashboard *::after { box-sizing: border-box; }

.samspill-dashboard a { color: inherit; text-decoration: none; }

.samspill-dashboard h1,
.samspill-dashboard h2,
.samspill-dashboard h3 {
	font-family: 'Fraunces', Georgia, serif;
	color: var(--dash-navy);
	margin: 0;
	line-height: 1.15;
}

.samspill-dashboard .screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0,0,0,0);
	white-space: nowrap; border: 0;
}

/* ==========================================================================
   A. Hero
   ========================================================================== */

.samspill-dashboard .dash-hero {
	background: var(--dash-bg);
	border-radius: var(--dash-radius);
	padding: 36px 32px;
	margin: 24px 0 20px;
}

.samspill-dashboard .dash-hero__inner {
	display: flex;
	align-items: center;
	gap: 28px;
}

.samspill-dashboard .dash-avatar {
	flex: 0 0 auto;
	width: 96px;
	height: 96px;
	border-radius: 50%;
	background: var(--dash-navy);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	box-shadow: 0 0 0 4px var(--dash-coral);
	position: relative;
}

.samspill-dashboard .dash-avatar__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.samspill-dashboard .dash-avatar__initial {
	font-family: 'Fraunces', Georgia, serif;
	font-size: 42px;
	font-weight: 600;
	color: var(--dash-bg);
	line-height: 1;
}

.samspill-dashboard .dash-hero__text { flex: 1 1 auto; min-width: 0; }

.samspill-dashboard .dash-hero__title {
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 600;
	margin-bottom: 8px;
	letter-spacing: -0.01em;
}

.samspill-dashboard .dash-hero__lede {
	font-size: 16px;
	line-height: 1.55;
	color: var(--dash-text-soft);
	margin: 0 0 14px;
	max-width: 640px;
}

.samspill-dashboard .dash-hero__cta {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	color: var(--dash-navy);
	border-bottom: 1.5px solid var(--dash-navy);
	padding-bottom: 1px;
	transition: color .15s ease, border-color .15s ease;
}

.samspill-dashboard .dash-hero__cta:hover {
	color: var(--dash-coral);
	border-color: var(--dash-coral);
}

/* Medlemsverktøy-stripe (under hilsen, inni hero) */
.samspill-dashboard .dash-tools {
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--dash-line);
}

.samspill-dashboard .dash-tools__label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--dash-text-soft);
	margin-bottom: 12px;
}

.samspill-dashboard .dash-tools__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
}

.samspill-dashboard .dash-tools__link {
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	color: var(--dash-navy);
	background: var(--dash-bg);
	border: 1px solid var(--dash-line);
	padding: 6px 14px;
	border-radius: 999px;
	line-height: 1.3;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
}

.samspill-dashboard .dash-tools__link:hover {
	background: var(--dash-coral);
	color: #fff;
	border-color: var(--dash-coral);
}

/* ==========================================================================
   B. Profilkompletthet-stripe
   ========================================================================== */

.samspill-dashboard .dash-progress {
	background: var(--dash-surface);
	border: 1px solid var(--dash-line);
	border-radius: var(--dash-radius);
	padding: 18px 24px;
	margin-bottom: 32px;
}

.samspill-dashboard .dash-progress__head {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}

.samspill-dashboard .dash-progress__label {
	font-size: 14px;
	font-weight: 600;
	color: var(--dash-navy);
	letter-spacing: 0.01em;
}

.samspill-dashboard .dash-progress__bar {
	flex: 1 1 200px;
	display: block;
	height: 8px;
	background: var(--dash-line);
	border-radius: 99px;
	overflow: hidden;
	position: relative;
	min-width: 160px;
}

.samspill-dashboard .dash-progress__fill {
	display: block;
	height: 100%;
	background: var(--dash-coral);
	border-radius: 99px;
	transition: width .4s ease;
}

.samspill-dashboard .dash-progress__missing {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.samspill-dashboard .dash-progress__missing li a {
	display: inline-block;
	font-size: 13px;
	font-weight: 500;
	color: var(--dash-navy);
	background: var(--dash-bg);
	border: 1px solid var(--dash-line);
	padding: 6px 12px;
	border-radius: 99px;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
}

.samspill-dashboard .dash-progress__missing li a:hover {
	background: var(--dash-coral);
	color: #fff;
	border-color: var(--dash-coral);
}

.samspill-dashboard .dash-progress__more a {
	background: transparent;
	color: var(--dash-text-soft);
}

/* ==========================================================================
   C. Kortgrid
   ========================================================================== */

.samspill-dashboard .dash-grid { margin-bottom: 48px; }

.samspill-dashboard .dash-grid__title {
	font-size: clamp(22px, 2.5vw, 28px);
	font-weight: 500;
	margin-bottom: 20px;
	letter-spacing: -0.005em;
}

.samspill-dashboard .dash-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.samspill-dashboard .dash-card {
	display: flex;
	flex-direction: column;
	background: var(--dash-surface);
	border-radius: var(--dash-radius);
	padding: 24px 22px 20px;
	box-shadow: var(--dash-shadow);
	border-top: 4px solid var(--dash-coral);
	transition: transform .2s ease, box-shadow .2s ease;
	position: relative;
	min-height: 180px;
	color: var(--dash-text);
}

.samspill-dashboard .dash-card[data-accent="coral"]     { border-top-color: var(--dash-coral); }
.samspill-dashboard .dash-card[data-accent="green"]     { border-top-color: var(--dash-green); }
.samspill-dashboard .dash-card[data-accent="gold"]      { border-top-color: var(--dash-gold); }
.samspill-dashboard .dash-card[data-accent="turquoise"] { border-top-color: var(--dash-turquoise); }
.samspill-dashboard .dash-card[data-accent="darkgreen"] { border-top-color: var(--dash-darkgreen); }
.samspill-dashboard .dash-card[data-accent="muted"]     { border-top-color: var(--dash-text-soft); }
.samspill-dashboard .dash-card[data-accent="navy"]      { border-top-color: var(--dash-navy); }

.samspill-dashboard .dash-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--dash-shadow-hi);
}

.samspill-dashboard .dash-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--dash-bg);
	margin-bottom: 14px;
	color: var(--dash-navy);
}

.samspill-dashboard .dash-card__icon svg {
	width: 28px;
	height: 28px;
	display: block;
}

.samspill-dashboard .dash-card[data-accent="coral"]     .dash-card__icon { color: var(--dash-coral); }
.samspill-dashboard .dash-card[data-accent="green"]     .dash-card__icon { color: var(--dash-darkgreen); }
.samspill-dashboard .dash-card[data-accent="gold"]      .dash-card__icon { color: #B07A2A; }
.samspill-dashboard .dash-card[data-accent="turquoise"] .dash-card__icon { color: #2E8E8E; }
.samspill-dashboard .dash-card[data-accent="darkgreen"] .dash-card__icon { color: var(--dash-darkgreen); }

.samspill-dashboard .dash-card__title {
	font-size: 19px;
	font-weight: 600;
	margin-bottom: 6px;
	letter-spacing: -0.005em;
}

.samspill-dashboard .dash-card__desc {
	font-size: 14px;
	line-height: 1.5;
	color: var(--dash-text-soft);
	margin: 0 0 16px;
	flex: 1 1 auto;
}

.samspill-dashboard .dash-card__arrow {
	display: inline-block;
	font-size: 18px;
	color: var(--dash-coral);
	transition: transform .2s ease, color .15s ease;
	align-self: flex-start;
}

.samspill-dashboard .dash-card:hover .dash-card__arrow {
	transform: translateX(4px);
}

/* ==========================================================================
   D. Hva skjer? (events)
   ========================================================================== */

.samspill-dashboard .dash-events {
	background: var(--dash-navy);
	border-radius: var(--dash-radius);
	padding: 28px 28px 24px;
	margin-bottom: 32px;
	color: var(--dash-bg);
}

.samspill-dashboard .dash-events__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
	flex-wrap: wrap;
}

.samspill-dashboard .dash-events__title {
	font-size: clamp(22px, 2.5vw, 28px);
	font-weight: 500;
	color: var(--dash-bg);
	letter-spacing: -0.005em;
}

.samspill-dashboard .dash-events__more {
	font-size: 14px;
	font-weight: 600;
	color: var(--dash-coral);
	border-bottom: 1.5px solid var(--dash-coral);
	padding-bottom: 1px;
}

.samspill-dashboard .dash-events__more:hover { color: #fff; border-color: #fff; }

.samspill-dashboard .dash-events__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

/* La event-cards beholde sin egen styling — de er allerede laget for navy bakgrunn */
.samspill-dashboard .dash-events__list .samspill-event-card { width: 100%; }

/* ==========================================================================
   E. Footer-rad
   ========================================================================== */

.samspill-dashboard .dash-footer {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 0 32px;
	border-top: 1px solid var(--dash-line);
	font-size: 13px;
	color: var(--dash-text-soft);
}

.samspill-dashboard .dash-footer a {
	color: var(--dash-text-soft);
	border-bottom: 1px solid transparent;
	padding-bottom: 1px;
	transition: color .15s ease, border-color .15s ease;
}

.samspill-dashboard .dash-footer a:hover {
	color: var(--dash-coral);
	border-color: var(--dash-coral);
}

.samspill-dashboard .dash-footer__sep { color: var(--dash-line); }

/* ==========================================================================
   Logged-out fallback
   ========================================================================== */

.samspill-dashboard--logged-out {
	padding: 48px 20px;
	text-align: center;
	background: var(--dash-bg);
	border-radius: var(--dash-radius);
}

.samspill-dashboard--logged-out a {
	color: var(--dash-coral);
	font-weight: 600;
	border-bottom: 1.5px solid var(--dash-coral);
	padding-bottom: 1px;
}

/* ==========================================================================
   Responsivitet
   ========================================================================== */

@media (max-width: 900px) {
	.samspill-dashboard .dash-cards          { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
	.samspill-dashboard .dash-events__list   { grid-template-columns: 1fr; gap: 14px; }
	.samspill-dashboard .dash-hero           { padding: 28px 24px; }
}

@media (max-width: 600px) {
	.samspill-dashboard                      { padding: 0 16px; }
	.samspill-dashboard .dash-cards          { grid-template-columns: 1fr; gap: 14px; }
	.samspill-dashboard .dash-hero__inner    { flex-direction: column; align-items: flex-start; gap: 18px; }
	.samspill-dashboard .dash-avatar         { width: 80px; height: 80px; }
	.samspill-dashboard .dash-avatar__initial{ font-size: 36px; }
	.samspill-dashboard .dash-hero__title    { font-size: 26px; }
	.samspill-dashboard .dash-hero__lede     { font-size: 15px; }
	.samspill-dashboard .dash-progress       { padding: 14px 18px; }
	.samspill-dashboard .dash-progress__head { gap: 12px; }
	.samspill-dashboard .dash-events         { padding: 22px 20px 18px; }
	.samspill-dashboard .dash-tools          { margin-top: 22px; padding-top: 18px; }
	.samspill-dashboard .dash-tools__list    { gap: 6px 8px; }
	.samspill-dashboard .dash-tools__link    { font-size: 13px; padding: 6px 12px; }
}

/* ==========================================================================
   Skjul gammelt #user_featured-element hvis det fortsatt finnes i siden
   ========================================================================== */

body.page-id-3118 #user_featured { display: none !important; }

/* ==========================================================================
   Skattekista breakout-fix: forhindrer horisontal overflow som skjevjusterer
   100vw-bredde hero-seksjoner på arrangementsidene (Schous + Rommen).
   Forårsaket av TranslatePress språkvelger som flyter ut på mobil.
   ========================================================================== */
html, body { overflow-x: clip; }

/* TRP språkvelger holder seg innenfor sin container på små skjermer */
.trp-language-switcher,
.trp-language-switcher-container {
  max-width: 100%;
  box-sizing: border-box;
}
.trp-language-switcher .trp-ls-shortcode-language,
.trp-language-switcher-container .trp-ls-shortcode-language {
  max-width: 100%;
  box-sizing: border-box;
}

/* ============================================================
 * Fix: ECS 4.1.9 (oppdatering 5. mai 2026) la til en CSS-regel som
 * tvinger display: flex på alle .e-con.e-ecs-flex. ECS legger til
 * e-ecs-flex som default-klasse på alle Elementor-containere som
 * ikke har en eksplisitt ecs_container_type satt. Resultat: alle
 * containere som er bygget med Elementor's container_type: grid
 * ble brutt — alle grid-children kollapset til én flex-rad.
 *
 * Når Elementor sier e-grid (intent) og ECS bare har lagt på sin
 * default e-ecs-flex (uten eksplisitt brukervalg), stoler vi på
 * Elementor og bruker grid.
 *
 * Synlig på Skattekista 2025-arkivsidene 6. mai 2026.
 * ============================================================ */
.e-con.e-grid.e-ecs-flex:not([class*="elementor-hidden-"]) {
    --display: grid;
    display: grid;
}
