/*
Theme Name: High5Girls
Theme URI: https://high5girls.dk
Author: High5Girls
Author URI: https://high5girls.dk
Description: Custom WordPress theme for High5Girls website
Version: 1.0.26
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: high5girls
*/

/* Raleway Font Loading - skal være først */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@500;600;700;800;900&display=swap');

/* ============================================
   DESIGN TOKENS - CSS VARIABLES
   ============================================ */

:root {
  /* Colors - Primary */
  --color-pink-primary: #F1459B;
  --color-pink-light: #F3B8D4;
  --color-pink-light-15: rgba(243, 184, 212, 0.15);
  --color-pink-light-30: rgba(243, 184, 212, 0.30);
  --color-dark-blue: #190D68;
  
  /* Colors - Secondary */
  --color-white: #FFFFFF;
  --color-black: #000000;
  --color-gray: #CCCCCC; /* Placeholder - skal bekræftes */
  
  /* Typography - Font Family */
  --font-family-primary: 'Raleway', sans-serif;
  
  /* Typography - Font Sizes */
  --font-size-hero-title: 64px;
  --font-size-section-title: 60px;
  --font-size-card-title: 24px;
  --font-size-eyebrow: 24px;
  --font-size-body: 15px;
  --font-size-badge: 16px;
  
  /* Typography - Font Weights */
  --font-weight-black: 900; /* Raleway Black */
  --font-weight-extrabold: 800; /* Raleway ExtraBold */
  --font-weight-bold: 700; /* Raleway Bold */
  --font-weight-semibold: 600; /* Raleway SemiBold */
  --font-weight-medium: 500; /* Raleway Medium */
  
  /* Typography - Line Heights */
  --line-height-body: 1.5;
  --line-height-body-alt: 1.6;
  
  /* Spacing */
  --spacing-base: 8px; /* Base unit - kan justeres */
  
  /* Border Radius */
  --border-radius-standard: 10px;
  
  /* Shadows */
  --shadow-standard: 4px 4px 4px 0px rgba(0, 0, 0, 0.17);
  
  /* Gradients */
  --gradient-standard: linear-gradient(to bottom, rgba(255, 255, 255, 0.01) 0%, rgba(255, 255, 255, 0.65) 51%);
  
  /* Layout */
  --header-height: 70px;

  /* Label-styling (events arkiv m.m.) */
  --h5g-label-bg: #F3B8D4;
  --h5g-label-color: var(--color-black);
  --h5g-label-font-family: var(--font-family-primary);
  --h5g-label-font-weight: var(--font-weight-black);
  --h5g-label-font-size: var(--font-size-badge);
  --h5g-label-padding: 6px 14px;
  --h5g-label-border-radius: var(--border-radius-standard);
  --h5g-label-line-height: 1.2;

  /* Målgruppe-pill (Figma: ~30px høj, radius 10px, bg #F3B8D4) – ikke en knap */
  --h5g-audience-pill-min-height: 30px;
  --h5g-audience-pill-padding-y: 7px;
  --h5g-audience-pill-padding-x: 12px;
  /* Lidt mindre end 12px så lange labels (fx "Piger (alle)" + linjeskift) ikke føles klemt i pill */
  --h5g-audience-pill-font-size: 11px;
}

/*
 * Målgruppe-pill: visuel label (Spirer, Creator, Piger (alle) …) – ikke klik-knap.
 * Samme udtryk på univers-kort, kalender-kort og events arkiv. Bredde følger tekst (ikke 100%).
 */
.h5g-audience-pill {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  min-height: var(--h5g-audience-pill-min-height);
  padding: var(--h5g-audience-pill-padding-y) var(--h5g-audience-pill-padding-x);
  font-family: var(--h5g-label-font-family);
  font-size: var(--h5g-audience-pill-font-size);
  font-weight: var(--font-weight-black);
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--h5g-label-color);
  background: var(--h5g-label-bg);
  border-radius: 10px;
  border: none;
  cursor: default;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  /* Ved smalle kort: pill bliver højere (ikke fast 30px), tekst brydes pænt */
  overflow-wrap: break-word;
  word-break: break-word;
  text-align: center;
}

/* Univers: flere målgruppe-pills i én række (wrapper styres i plugin newsite-CSS) */
.univers-event-card-tags {
  align-self: flex-end;
  margin-left: auto;
}

/* ============================================
   RESET & BASE STYLES
   ============================================ */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-body);
  color: var(--color-black);
  background-color: var(--color-white);
}

/* Add space at top when admin bar is present */
body.admin-bar .site-header {
  top: 46px; /* WordPress admin bar height + spacing */
}

@media screen and (min-width: 783px) {
  body.admin-bar .site-header {
    top: 32px; /* WordPress admin bar height (desktop) + spacing */
  }
}

/* ============================================
   TYPOGRAPHY
   ============================================ */


/* Hero Title (H1) */
h1 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-hero-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--color-black);
}

/* Section Title (H2) */
h2 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--color-black);
}

/* Card Title (H3) */
h3,
h4 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.3;
  color: var(--color-black);
}

/* Section Eyebrow */
.section-eyebrow {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-eyebrow);
  font-weight: var(--font-weight-bold);
  text-transform: none;
  letter-spacing: 0.5px;
  color: var(--color-black);
}

/* Body Text */
p {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-body-alt);
  color: var(--color-black);
}

/* Badges */
.badge {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-badge);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
}

/* ============================================
   LAYOUT
   ============================================ */

.container {
  max-width: 1200px; /* Kan justeres */
  margin: 0 auto;
  padding: 0 20px;
}

/* ============================================
   BUTTONS
   ============================================ */

/* Main Button (Primary) */
.btn-primary {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-black); /* Raleway Black (900) - fed tekst */
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  color: var(--color-black); /* Sort tekst (ikke hvid) */
  background-color: var(--color-pink-primary);
  border: none;
  border-radius: var(--border-radius-standard);
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: var(--shadow-standard);
}

.btn-primary:hover {
  background-color: #D93A8A; /* Darker pink - kan justeres */
  transform: translateY(-2px);
  box-shadow: 4px 6px 6px 0px rgba(0, 0, 0, 0.2);
}

.btn-primary:active,
.btn-primary:focus {
  background-color: #C12E79; /* Even darker pink - kan justeres */
  transform: translateY(0);
  box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.15);
  outline: none;
}

.btn-primary:disabled {
  background-color: var(--color-pink-light-15);
  color: var(--color-gray);
  cursor: not-allowed;
  box-shadow: none;
}

/* Outline Button (Secondary) */
.btn-secondary {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  color: var(--color-black);
  background-color: var(--color-white);
  border: 2px solid var(--color-black);
  border-radius: var(--border-radius-standard);
  cursor: pointer;
  transition: all 0.3s ease;
}

.btn-secondary:hover {
  background-color: var(--color-pink-light);
  border-color: var(--color-pink-light);
  transform: translateY(-2px);
}

.btn-secondary:active,
.btn-secondary:focus {
  background-color: var(--color-pink-light-30);
  border-color: var(--color-pink-light-30);
  transform: translateY(0);
  outline: none;
}

.btn-secondary:disabled {
  background-color: var(--color-white);
  border-color: var(--color-gray);
  color: var(--color-gray);
  cursor: not-allowed;
}

/* ============================================
   FORM ELEMENTS
   ============================================ */

/* Radio Buttons */
input[type="radio"] {
  width: 22px;
  height: 22px;
  appearance: none;
  -webkit-appearance: none;
  border: 2px solid var(--color-black);
  border-radius: 50%;
  background-color: var(--color-white);
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}

input[type="radio"]:checked {
  border-color: var(--color-black);
}

input[type="radio"]:checked::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--color-pink-primary);
}

input[type="radio"]:hover {
  border-color: var(--color-pink-primary);
}

/* Checkboxes */
input[type="checkbox"] {
  width: 22px;
  height: 22px;
  appearance: none;
  -webkit-appearance: none;
  border: 2px solid var(--color-black);
  border-radius: 2px;
  background-color: var(--color-white);
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}

input[type="checkbox"]:checked {
  background-color: var(--color-pink-primary);
  border-color: var(--color-pink-primary);
}

input[type="checkbox"]:checked::after {
  content: '\2713';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--color-white);
  font-size: 14px;
  font-weight: bold;
}

input[type="checkbox"]:hover {
  border-color: var(--color-pink-primary);
}

/* ============================================
   HEADER / TOPMENU
   ============================================ */

.site-header {
  height: var(--header-height);
  background-color: var(--color-white);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  position: sticky;
  top: 0;
  z-index: 1000;
  margin-top: 20px; /* Add space above header */
  margin-bottom: 0; /* Ingen gap under header - hero starter direkte */
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

.site-logo {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.site-logo a {
  text-decoration: none;
  color: var(--color-black);
  display: flex;
  align-items: center;
  line-height: 1;
}

.site-logo img,
.site-logo .custom-logo-link img {
  height: auto;
  max-height: 60px; /* Max logo height */
  width: auto;
  max-width: 300px; /* Max logo width */
  object-fit: contain;
  display: block;
}

/* Fallback text logo */
.site-title {
  font-family: var(--font-family-primary);
  font-size: 24px;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  display: inline-block;
}

.main-navigation {
  flex: 1;
  display: flex;
  justify-content: center;
}

.main-navigation ul {
  display: flex;
  list-style: none;
  gap: 30px;
  margin: 0;
  padding: 0;
}

.main-navigation a {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  text-decoration: none;
  color: var(--color-black);
  text-transform: uppercase;
  transition: color 0.3s ease;
  position: relative;
}

.main-navigation a:hover,
.main-navigation a:focus,
.main-navigation .current-menu-item a {
  color: var(--color-pink-primary);
}

.header-cta {
  flex-shrink: 0;
}

.header-cta .btn-header-cta {
  padding: 8px 16px;
  font-size: 14px;
  box-shadow: none; /* Remove shadow for header button */
}

.header-cta .btn-header-cta:hover {
  box-shadow: none;
  transform: none;
}

/* PIGER Dropdown */
.main-navigation .menu-item-has-children {
  position: relative;
}

.main-navigation .sub-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--color-pink-light);
  min-width: 160px;
  padding: 6px 0;
  margin: 0;
  list-style: none;
  display: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  z-index: 1001;
}

/* Usynlig "bro" så musen ikke taber hover mellem Piger og dropdown */
.main-navigation .sub-menu::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 0;
  right: 0;
  height: 8px;
}

.main-navigation .menu-item-has-children:hover .sub-menu,
.main-navigation .menu-item-has-children:focus-within .sub-menu {
  display: block;
}

.main-navigation .sub-menu li {
  margin: 0;
  padding: 0;
}

.main-navigation .sub-menu a {
  font-family: var(--font-family-primary);
  font-size: 13px;
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  padding: 8px 14px;
  display: block;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  transition: background-color 0.2s ease;
}

.main-navigation .sub-menu a:hover,
.main-navigation .sub-menu a:focus {
  background-color: var(--color-pink-primary);
  color: var(--color-white);
}

/* Active menu item styling */
.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a {
  color: var(--color-pink-primary);
}

/* ============================================
   FOOTER
   ============================================ */

.site-footer {
  background-color: var(--color-dark-blue);
  color: var(--color-white);
  padding: calc(var(--spacing-base) * 6) 0 calc(var(--spacing-base) * 3);
  margin-top: 60px;
}

.footer-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(var(--spacing-base) * 5);
  margin-bottom: calc(var(--spacing-base) * 5);
}

.footer-column {
  color: var(--color-white);
}

.footer-heading {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-white);
  margin-bottom: calc(var(--spacing-base) * 2);
}

.footer-address,
.footer-contact {
  font-size: var(--font-size-body);
  line-height: 1.6;
  color: var(--color-white);
  margin-bottom: 4px;
}

.footer-contact a {
  color: var(--color-white);
  text-decoration: none;
}

.footer-contact a:hover {
  text-decoration: underline;
}

/* Connect-kolonne */
.footer-column-connect {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-connect-btn {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  color: var(--color-black);
  background-color: var(--color-white);
  border: 2px solid var(--color-black);
  border-radius: var(--border-radius-standard);
  margin-bottom: calc(var(--spacing-base) * 2);
  transition: background-color 0.2s ease, color 0.2s ease;
}

a.footer-connect-btn:hover {
  background-color: var(--color-pink-light);
  color: var(--color-black);
}

.footer-connect-btn-disabled {
  cursor: default;
  opacity: 0.7;
}

.footer-connect-info {
  font-size: var(--font-size-body);
  color: var(--color-white);
  text-decoration: none;
}

a.footer-connect-info:hover {
  text-decoration: underline;
}

/* Nyhedsbrev-kolonne */
.footer-newsletter-desc {
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: var(--color-white);
  margin-bottom: calc(var(--spacing-base) * 2);
}

.footer-newsletter-form {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing-base) * 2);
  margin-bottom: calc(var(--spacing-base) * 3);
}

.footer-newsletter-input {
  padding: 10px 14px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  border: 2px solid var(--color-white);
  border-radius: var(--border-radius-standard);
  background-color: var(--color-white);
  color: var(--color-black);
  max-width: 280px;
}

.footer-newsletter-input::placeholder {
  color: #999;
}

.footer-newsletter-input:focus {
  outline: none;
  border-color: var(--color-pink-primary);
}

.footer-newsletter-btn {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-white);
  background-color: var(--color-pink-primary);
  border: none;
  border-radius: var(--border-radius-standard);
  cursor: pointer;
  max-width: 140px;
  transition: opacity 0.2s ease;
}

.footer-newsletter-btn:hover {
  opacity: 0.9;
}

.footer-newsletter-iframe {
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.footer-newsletter-success {
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: var(--color-white);
  margin-bottom: calc(var(--spacing-base) * 3);
}

.footer-social {
  display: flex;
  gap: calc(var(--spacing-base) * 2);
  align-items: center;
}

.footer-social-link {
  color: var(--color-white);
  display: inline-flex;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.footer-social-link:hover {
  color: var(--color-pink-light);
  opacity: 0.9;
}

.footer-social-link svg {
  width: 24px;
  height: 24px;
}

/* Footer bund */
.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: calc(var(--spacing-base) * 2);
  padding-top: calc(var(--spacing-base) * 3);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.footer-copyright {
  font-size: 14px;
  color: var(--color-white);
  margin: 0;
}

.footer-legal {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing-base) * 2);
}

.footer-legal a {
  font-size: 14px;
  color: var(--color-white);
  text-decoration: none;
}

.footer-legal a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .footer-content {
    grid-template-columns: 1fr;
    gap: calc(var(--spacing-base) * 4);
  }

  .footer-bottom {
    flex-direction: column;
  }
}

/* ============================================
   HOME PAGE SECTIONS
   ============================================ */

/* Hero Section */
.hero-section {
  position: relative;
  padding: 0 0 60px 0; /* Ingen padding-top, så hero starter direkte under header */
  text-align: left;
  min-height: 537px; /* Fra design spec */
  overflow: hidden;
}

.hero-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.hero-background-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-background-video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.hero-background .hero-background-video {
  border: none;
}

.hero-background iframe.hero-background-video {
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
}

.hero-background-placeholder {
  width: 100%;
  height: 100%;
  background-color: #F5F5F5; /* Light gray placeholder */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect fill="%23E0E0E0" width="100" height="100"/><text x="50%" y="50%" font-family="Arial" font-size="14" fill="%23999" text-anchor="middle" dominant-baseline="middle">VIDEO</text></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 200px 200px;
}

.hero-section .container {
  position: relative;
  z-index: 1;
}

.hero-content {
  max-width: 800px;
  margin-left: 0;
  margin-right: auto;
  margin-top: 310px; /* Præcis placering fra Figma: 310px fra toppen af hero-sektionen */
  position: relative;
  z-index: 2;
}

.hero-title {
  margin-bottom: 10px; /* Afstand titel → brødtekst */
  font-family: var(--font-family-primary);
  font-size: 64px;
  font-weight: var(--font-weight-black); /* Raleway Black 900 */
  text-transform: uppercase;
  color: var(--hero-title-color, var(--color-black));
  line-height: 1.2;
}

.hero-text {
  font-family: var(--font-family-primary);
  font-size: 15px;
  font-weight: var(--font-weight-medium); /* Raleway Medium 500 - IKKE Bold */
  line-height: 1.5; /* Fra Figma: 1.5-1.6 */
  color: var(--hero-body-color, var(--color-black));
  margin-bottom: 40px;
  max-width: 700px;
  margin-left: 0;
  margin-right: auto;
}

/* Hero Button - Specifik styling fra Figma */
.hero-content .btn-primary {
  font-size: 16px;
  font-weight: var(--font-weight-black); /* Raleway Black 900 */
  line-height: 145%; /* Fra Figma */
  letter-spacing: -0.5%; /* Fra Figma */
  padding: 15px 40px; /* Justeret for bedre størrelse */
}

/* Identity Categories Section */
.identity-categories-section {
  padding: 80px 0;
}

.identity-categories-section .section-title {
  text-align: center;
  margin-bottom: -10px; /* Samme spacing som stories-section */
}

.identity-categories-section .section-eyebrow {
  text-align: center;
  margin-bottom: 50px;
  margin-top: 0; /* Ingen margin-top da spacing håndteres af section-title */
}

.identity-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-bottom: 40px;
}

.identity-card {
  display: block;
  text-decoration: none;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  box-shadow: var(--shadow-standard);
  transition: transform 0.3s ease;
}

.identity-card:hover {
  transform: translateY(-5px);
}

.identity-card-image {
  position: relative;
  width: 100%;
  height: 500px;
  overflow: hidden;
}

.identity-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.identity-card-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--gradient-standard);
  padding: 30px 20px;
}

.identity-card-content {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.identity-age {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  text-transform: uppercase;
}

.identity-category {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  color: var(--color-white);
  text-transform: uppercase;
}

/* Summit Banner */
.summit-banner {
  background-color: var(--color-pink-primary);
  padding: 40px 20px;
  width: 100%;
  text-align: center;
}

.summit-banner .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.summit-text {
  font-family: var(--font-family-primary);
  font-size: 40px; /* Fra Figma: 40px (ikke 24px) */
  font-weight: var(--font-weight-black);
  line-height: 35px; /* Fra Figma: 35px */
  letter-spacing: 0%; /* Fra Figma */
  color: var(--color-black);
  text-transform: uppercase;
  margin-bottom: 20px;
}

.btn-summit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 355px; /* Fra Figma: præcis størrelse */
  height: 44px; /* Fra Figma: 44px (ikke 59px) */
  padding: 0; /* Fjern padding da vi bruger width/height */
  background-color: var(--color-pink-light);
  color: var(--color-black);
  font-family: var(--font-family-primary);
  font-size: 32px; /* Fra Figma: 32px (ikke body text) */
  font-weight: var(--font-weight-black);
  line-height: 145%; /* Fra Figma */
  letter-spacing: -0.5%; /* Fra Figma */
  text-transform: uppercase;
  text-decoration: none;
  border-radius: var(--border-radius-standard);
  transition: all 0.3s ease;
  margin: 0 auto; /* Centrer knappen */
}

.btn-summit:hover {
  background-color: var(--color-white);
  transform: translateY(-2px);
}

/* Stories Section */
.stories-section {
  padding: 80px 0;
}

.stories-section .section-title {
  text-align: center;
  margin-bottom: -10px; /* Justeret: mindre negativ spacing */
}

.stories-section .section-eyebrow {
  text-align: center;
  margin-bottom: 50px;
  margin-top: 0; /* Ingen margin-top da spacing håndteres af section-title */
}

/* Univers: ingen eyebrow – samme afstand under overskrift som forsiden (50px ned til kort) */
.stories-section--univers .section-title {
  margin-bottom: 50px;
}

/* Featured Story Card */
.featured-story-card {
  margin-bottom: 50px;
}

.featured-story-link {
  display: flex;
  text-decoration: none;
  width: 1130px; /* Præcis størrelse fra Figma */
  height: 424px; /* Præcis størrelse fra Figma */
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  box-shadow: var(--shadow-standard);
  background-color: var(--color-white);
}

.featured-story-image {
  flex: 0 0 528px;
  width: 528px;
  height: 424px;
  overflow: hidden;
}

.featured-story-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px 0 0 10px; /* Top-left: 10px, Bottom-left: 10px, højre side: 0px */
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.featured-story-content {
  flex: 1;
  background-color: var(--color-pink-light-15);
  padding: 40px 40px 40px 50px; /* Lidt mere padding til venstre */
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.featured-label {
  font-family: var(--font-family-primary);
  font-size: 15px; /* Fra Figma: præcis 15px */
  font-weight: var(--font-weight-black); /* Fra Figma: Raleway Black (ikke Bold) */
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: 20px;
  letter-spacing: 0%; /* Fra Figma */
  line-height: normal; /* Fra Figma */
}

.featured-story-content h3 {
  margin-bottom: 20px;
  color: var(--color-black);
  font-size: 24px; /* Fra Figma: præcis 24px */
  font-weight: var(--font-weight-black);
  line-height: 26px; /* Fra Figma: præcis 26px (ikke auto) */
  letter-spacing: 0%; /* Fra Figma */
  text-transform: uppercase;
}

.featured-story-text {
  font-size: var(--font-size-body); /* 15px */
  font-weight: var(--font-weight-medium); /* Raleway Medium */
  line-height: var(--line-height-body-alt);
  color: var(--color-black);
  margin-bottom: 30px;
}

.featured-story-content .btn-primary {
  align-self: flex-start; /* Knap starter fra venstre */
}

/* Stories Grid */
.stories-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 280px; /* Standard højde for split cards */
  gap: 30px;
  margin-bottom: 50px;
}

.story-card {
  display: block;
  text-decoration: none;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  box-shadow: var(--shadow-standard);
  transition: transform 0.3s ease;
  width: 100%;
  height: 100%;
}

/* Overlay cards (1, 4) - større, spænder over 2 rækker */
.story-card-overlay-layout {
  grid-row: span 2;
  height: calc(280px * 2 + 30px); /* 2 rækker + 1 gap */
}

.story-card:hover {
  transform: translateY(-5px);
}

/* Overlay Layout: Full width image with text overlay */
.story-card-overlay-layout .story-card-image {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.story-card-overlay-layout .story-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.story-tag-top-right {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 10;
  margin: 0; /* Remove default margin */
}

.story-card-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--gradient-standard);
  padding: 30px 20px;
  border-radius: 0 0 10px 10px;
}

/* Overlay layout title - sort tekst (fra Figma design) */
.story-card-overlay-layout .story-title {
  color: var(--color-black);
  margin: 0;
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
}

/* Split Layout: Image left, text right */
.story-card-split-layout {
  display: flex;
  background-color: var(--color-white);
}

.story-card-split {
  display: flex;
  width: 100%;
  height: 100%;
}

.story-card-image-split {
  flex: 0 0 268px; /* Fra Figma: ~268px */
  width: 268px;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.story-card-image-split img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px 0 0 10px; /* Top-left: 10px, Bottom-left: 10px */
}

.story-card-content-split {
  flex: 1;
  background-color: var(--color-pink-light-15);
  padding: 30px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.story-card-content-split .story-tag-top-right {
  position: absolute;
  top: 20px;
  right: 20px;
  margin: 0;
}

/* Split layout title - sort tekst */
.story-title-split {
  color: var(--color-black);
  margin: 0;
  margin-top: 0; /* Tag er absolut positioneret, så ingen margin-top nødvendig */
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.3;
}

.story-tag {
  display: inline-block;
  background-color: var(--color-pink-primary);
  color: var(--color-white);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-badge);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  padding: 5px 15px;
  border-radius: var(--border-radius-standard);
}

.story-card-content {
  background-color: var(--color-pink-light-15);
  padding: 30px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.story-card-content .story-tag {
  margin-bottom: 20px;
}

.story-card-content h3 {
  color: var(--color-black);
  margin: 0;
}

.stories-cta {
  text-align: center;
}

/* Role Models Section - Full-width split layout */
.role-models-section {
  padding: 80px 0;
}

.role-models-block {
  position: relative;
  display: block;
  text-decoration: none;
  width: 100%; /* Full width */
  height: 424px;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--shadow-standard);
}

/* Pink background - goes to left edge */
.role-models-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%; /* Left half */
  height: 100%;
  background-color: var(--color-pink-light-30);
  z-index: 0;
}

/* Image - goes to right edge */
.role-models-image {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%; /* Right half */
  height: 424px;
  overflow: hidden;
  background-color: #E0E0E0; /* Gray placeholder */
  z-index: 1;
}

.role-models-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0 10px 10px 0; /* Rounded corners on right side */
}

.role-models-image .placeholder-image {
  width: 100%;
  height: 100%;
  background-color: #E0E0E0;
  display: block;
  border-radius: 0 10px 10px 0; /* Match image border-radius */
}

/* Container - centered, text stays where it is */
.role-models-block .container {
  position: relative;
  z-index: 2;
  height: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
}

.role-models-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-left: 0; /* Left-aligned within container */
  margin-right: auto;
  padding: 30px 0; /* Top and bottom padding */
  max-width: 500px; /* Prevents text from going over to image */
}

.role-models-label {
  font-family: var(--font-family-primary);
  font-size: 15px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: 20px;
  margin-top: 0;
  letter-spacing: 0%;
  line-height: normal;
}

.role-models-content h2 {
  margin-bottom: 20px;
  margin-top: 0;
  color: var(--color-black);
  font-size: 24px;
  font-weight: var(--font-weight-black);
  line-height: 26px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.role-models-text {
  font-size: var(--font-size-body); /* 15px */
  font-weight: var(--font-weight-medium); /* Raleway Medium */
  line-height: var(--line-height-body-alt); /* 1.6 */
  color: var(--color-black);
  margin-bottom: 30px;
}

.role-models-text p {
  margin-bottom: 15px;
}

.role-models-text p:last-child {
  margin-bottom: 0;
}

.role-models-content .btn-primary {
  align-self: flex-start;
  color: var(--color-black); /* Black text */
  background-color: var(--color-pink-primary); /* Pink background */
}


/* Partners Section – logo-blok 1158×355 (design) */
.partners-section {
  padding: 32px 0 40px;
}

.partners-section .section-title {
  margin-bottom: -10px;
}

.partners-section .section-eyebrow {
  margin-top: 0;
  margin-bottom: 16px;
}

/* Logo-blok: 1158×355, 5×5 grid, minimal gap */
.partner-logo-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: repeat(5, 1fr);
  gap: 8px 14px;
  width: 100%;
  max-width: 1158px;
  height: 355px;
  margin: 0 auto 28px;
}

.partner-logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  min-height: 0;
}

.partner-logo-img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.8;
  transition: filter 0.3s ease, opacity 0.3s ease;
}

.partner-logo-item:hover .partner-logo-img {
  filter: grayscale(0%);
  opacity: 1;
}

.partners-cta {
  text-align: center;
}

/* Fonde-siden: partnere pr. år – samme look som forsidens partnere (5 kolonner, samme gap/padding) */
.fonde-partners-by-year {
  padding: 32px 0 40px;
}

.fonde-partners-by-year .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--container-padding, 20px);
}

.fonde-partners-year-block {
  margin-bottom: calc(var(--spacing-base) * 4);
}

.fonde-partners-year-block:last-of-type {
  margin-bottom: 28px;
}

.fonde-partners-year-title {
  font-size: clamp(32px, 4vw, 48px);
  font-weight: var(--font-weight-black);
  color: var(--color-black);
  margin: 0 0 16px;
  line-height: 1.2;
  text-align: center;
}

/* Samme grid som forsiden: 5 kolonner, gap 8px 14px, max 1158px */
.fonde-partners-year-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px 14px;
  width: 100%;
  max-width: 1158px;
  margin: 0 auto 28px;
  grid-auto-rows: 71px;
}

.fonde-partners-year-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  min-height: 0;
}

.fonde-partners-year-item .partner-logo-img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.fonde-partners-by-year .partners-cta {
  text-align: center;
}

/* Ældre år: navne i samme grid som logoer, mørkegrå skrift */
.fonde-partners-year-item--name {
  justify-content: center;
  align-items: center;
  padding: 4px 6px;
}

/* Mindre luft når der kun er tekster (ingen logoer) – mellemting */
.fonde-partners-year-grid--names {
  grid-auto-rows: 52px;
  margin-bottom: 22px;
}

.fonde-partners-year-name {
  color: #4a4a4a;
  font-size: clamp(13px, 1.2vw, 16px);
  font-weight: var(--font-weight-bold, 700);
  text-align: center;
  line-height: 1.3;
}

/* Placeholder */
.placeholder-image {
  width: 100%;
  height: 100%;
  background-color: var(--color-pink-light-15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-black);
  font-family: var(--font-family-primary);
  font-size: 16px;
  text-align: center;
}

/* ============================================
   ROLLEMODELLER OVERSIGT
   ============================================ */

.rm-overview-page .container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.rm-overview-hero {
  padding: calc(var(--spacing-base) * 6) 0 calc(var(--spacing-base) * 4);
  background-color: var(--color-white);
}

.rm-overview-hero-title {
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--color-black);
  text-align: center;
  margin-bottom: calc(var(--spacing-base) * 2);
}

.rm-overview-hero-subtitle {
  font-size: var(--font-size-eyebrow);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.rm-overview-filter-section {
  padding-bottom: calc(var(--spacing-base) * 4);
}

.rm-overview-filter {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing-base) * 2);
  justify-content: center;
}

.rm-overview-filter-link {
  display: inline-block;
  padding: 10px 20px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  color: var(--color-black);
  text-decoration: none;
  border-radius: var(--border-radius-standard);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.rm-overview-filter-link:hover {
  background-color: var(--color-pink-light-30);
  color: var(--color-black);
}

.rm-overview-filter-link.is-active {
  background-color: var(--color-pink-primary);
  color: var(--color-white);
}

.rm-overview-cards-section {
  padding-bottom: calc(var(--spacing-base) * 6);
}

.rm-overview-empty {
  text-align: center;
  font-size: var(--font-size-body);
  color: var(--color-black);
  padding: calc(var(--spacing-base) * 4);
}

/* Grid: 3 kolonner i bredden, kort tilpasses automatisk */
.rm-overview-grid {
  list-style: none;
  margin: 0 0 calc(var(--spacing-base) * 4);
  padding: 0;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 640px) {
  .rm-overview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .rm-overview-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.rm-overview-card {
  margin: 0;
  width: 100%;
  display: flex;
}

.rm-overview-card-link,
.rm-overview-card-trigger {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
  background: var(--color-white);
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rm-overview-card-trigger {
  padding: 0;
  border: none;
  text-align: left;
  cursor: pointer;
  font: inherit;
  -webkit-appearance: none;
  appearance: none;
}

.rm-overview-card-link:hover,
.rm-overview-card-trigger:hover {
  transform: translateY(-4px);
  box-shadow: 4px 8px 12px 0 rgba(0, 0, 0, 0.15);
}

/* Billede: kvadrat, hjørner klippes af parent overflow (som bestyrelse) */
.rm-overview-card-image-wrap {
  flex-shrink: 0;
  aspect-ratio: 1;
  width: 100%;
  background: var(--color-pink-light-15);
  overflow: hidden;
}

.rm-overview-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rm-overview-card-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 200px;
  background: var(--color-pink-light-30);
}

.rm-overview-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 280px;
  padding: calc(var(--spacing-base) * 3);
  background: var(--color-white);
  text-align: left;
}

.rm-overview-card-location {
  display: block;
  font-size: 14px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: 4px;
  text-align: left;
}

/* Navn: tilpasset til 3-kolonne (mindre på små kort) */
.rm-overview-card-name {
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.25;
  letter-spacing: -0.005em;
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 2);
  text-align: left;
}

.rm-overview-card-desc {
  flex: 1;
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: var(--color-black);
  margin-bottom: 0;
  min-height: 7.5em;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
}

/* Team: navn og mail tættere; mere luft før ansvarsområder */
.team-overview-cards-section .rm-overview-card-name {
  margin-bottom: calc(var(--spacing-base) * 0.5);
}

/* Team / Hvem vi er: ansvarsområder under e-mail = samme størrelse/tyngde som brødtekst (.rm-overview-card-desc), stablede linjer */
.team-overview-cards-section .team-overview-card-responsibilities {
  display: block;
  flex: 0 1 auto;
  -webkit-box-orient: unset;
  -webkit-line-clamp: unset;
  overflow: visible;
  min-height: 0;
  margin-bottom: 0;
}

.team-overview-cards-section .team-overview-card-responsibility-line {
  display: block;
  margin: 0;
  padding: 0;
}

.team-overview-cards-section .team-overview-card-responsibility-line + .team-overview-card-responsibility-line {
  margin-top: 0.4em;
}

/* Team / Hvem vi er: mail som RM */
.team-overview-cards-section .team-overview-card-email {
  display: block;
  flex: 0 0 auto;
  -webkit-box-orient: unset;
  -webkit-line-clamp: unset;
  overflow: visible;
  min-height: 0;
  margin-bottom: calc(var(--spacing-base) * 1.35);
}

.team-overview-cards-section .team-overview-card-email a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.team-overview-cards-section .team-overview-card-email a:hover {
  color: var(--color-pink-primary);
}

.team-overview-cards-section .team-overview-card-quote {
  flex: 0 1 auto;
  margin: calc(var(--spacing-base) * 1.25) 0 0;
  padding: calc(var(--spacing-base) * 1.25) 0 0;
  border: none;
  border-top: 1px solid var(--color-pink-light);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  font-style: italic;
  line-height: 1.45;
  color: var(--color-pink-primary);
}

/* Kalender: event-kort i rm-overview stil (samme opbygning som rollemodeller/podcast) */
.rm-overview-card--event .rm-overview-card-link {
  overflow: visible;
}

.rm-overview-card--event .rm-overview-card-image-wrap {
  position: relative;
  overflow: visible;
  background: transparent;
}

.rm-overview-card-image-crop {
  aspect-ratio: 1;
  width: 100%;
  overflow: hidden;
  background: var(--color-pink-light-15);
}

.rm-overview-card--event .rm-overview-card-image-crop {
  border-radius: var(--border-radius-standard) var(--border-radius-standard) 0 0;
}

.rm-overview-card--with-waitlist .rm-overview-card-stack {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
  overflow: visible;
  background: var(--color-white);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rm-overview-card--with-waitlist:hover .rm-overview-card-stack {
  transform: translateY(-4px);
  box-shadow: 4px 8px 12px 0 rgba(0, 0, 0, 0.15);
}

.rm-overview-card--with-waitlist .rm-overview-card-link {
  box-shadow: none;
  border-radius: 0;
  flex: 1 1 auto;
}

.rm-overview-card-waitlist-btn {
  flex-shrink: 0;
  width: 100%;
  margin: 0;
  padding: 14px calc(var(--spacing-base) * 2);
  border: none;
  border-radius: 0 0 var(--border-radius-standard) var(--border-radius-standard);
  cursor: pointer;
  font: inherit;
  text-transform: uppercase;
  font-weight: var(--font-weight-black);
}

.rm-overview-card--event .rm-overview-card-body {
  min-height: auto;
}
.rm-overview-card--event .rm-overview-card-desc {
  min-height: 0;
  flex: none;
  -webkit-line-clamp: 2;
}
/* .rm-overview-card-event-tag → .h5g-audience-pill (øverst) */
.rm-overview-card-event-btn {
  display: inline-block;
  margin-top: calc(var(--spacing-base));
  align-self: flex-start;
}

/* ========== Events arkiv (afholdte events) ========== */
.has-events-arkiv-shortcode .entry-header {
  display: none;
}
.events-arkiv-section {
  padding: calc(var(--spacing-base) * 4) 0 calc(var(--spacing-base) * 6);
}
.events-arkiv-main-title {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 4);
  text-align: center;
}
.events-arkiv-year-title {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-card-title);
  font-weight: 900;
  color: var(--color-black);
  margin: calc(var(--spacing-base) * 3) 0 calc(var(--spacing-base) * 2);
  text-align: center;
}
.events-arkiv-year-title:first-of-type {
  margin-top: 0;
}
.events-arkiv-grid {
  list-style: none;
  margin: 0 0 calc(var(--spacing-base) * 4);
  padding: 0;
  display: grid;
  gap: calc(var(--spacing-base) * 3);
}
.events-arkiv-grid-full {
  grid-template-columns: 1fr;
}
@media (min-width: 600px) {
  .events-arkiv-grid-full {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 900px) {
  .events-arkiv-grid-full {
    grid-template-columns: repeat(4, 1fr);
  }
}
.events-arkiv-grid-compact {
  grid-template-columns: 1fr;
}
@media (min-width: 600px) {
  .events-arkiv-grid-compact {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 900px) {
  .events-arkiv-grid-compact {
    grid-template-columns: repeat(3, 1fr);
  }
}
.events-arkiv-card {
  margin: 0;
  background: var(--color-white);
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
  overflow: hidden;
}
.events-arkiv-card-link {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
}
.events-arkiv-card-compact .events-arkiv-card-link {
  flex-direction: row;
  align-items: stretch;
}
.events-arkiv-card-link:hover {
  transform: translateY(-2px);
  box-shadow: 4px 8px 12px 0 rgba(0, 0, 0, 0.15);
}
.events-arkiv-card-image-wrap {
  flex-shrink: 0;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--color-gray);
  border-radius: var(--border-radius-standard) var(--border-radius-standard) 0 0;
}
.events-arkiv-card-compact .events-arkiv-card-image-wrap {
  width: 100px;
  min-width: 100px;
  aspect-ratio: unset;
  height: 100%;
  border-radius: var(--border-radius-standard) 0 0 var(--border-radius-standard);
}
.events-arkiv-card-compact .events-arkiv-card-body {
  padding: calc(var(--spacing-base) * 1.5);
  min-width: 0;
}
.events-arkiv-card-compact .events-arkiv-card-meta {
  font-size: 13px;
  margin-bottom: 2px;
}
.events-arkiv-card-compact .events-arkiv-card-label-single.h5g-audience-pill {
  font-size: 11px;
  min-height: 26px;
  padding: 4px 10px;
}
.events-arkiv-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.events-arkiv-card-image-placeholder {
  width: 100%;
  height: 100%;
  background: var(--color-pink-light-15);
}
.events-arkiv-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: calc(var(--spacing-base) * 2);
  text-align: left;
}
.events-arkiv-card-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}
.events-arkiv-label.h5g-audience-pill {
  margin: 0;
}
.events-arkiv-card-meta {
  font-size: 13px;
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  margin: 0 0 6px;
}
.events-arkiv-card-title {
  font-family: var(--font-family-primary);
  font-size: clamp(16px, 1.8vw, 20px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin: 0 0 4px;
  line-height: 1.3;
}
.events-arkiv-section .events-arkiv-card-compact .events-arkiv-card-title {
  font-size: 8px;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.events-arkiv-card-label-single.h5g-audience-pill {
  margin-top: 4px;
}
.events-arkiv-empty {
  padding: 2em 0;
  color: var(--color-black);
}

/* RM oversigt-modal (h5g-rm-ov-*) — ikke .rm-modal: rm-events-display sætter opacity:0 på .rm-modal */
.h5g-rm-ov-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 1;
  transform: none;
  background: transparent;
  max-width: none;
  max-height: none;
  overflow: visible;
}
.h5g-rm-ov-modal[hidden] {
  display: none;
}
.h5g-rm-ov-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}
.h5g-rm-ov-content {
  position: relative;
  width: 514px;
  max-width: calc(100vw - 40px);
  max-height: 90vh;
  overflow-y: auto;
  background: var(--color-white);
  border-radius: var(--border-radius-standard);
  box-shadow: 4px 8px 24px rgba(0, 0, 0, 0.2);
  padding: 20px;
}
.h5g-rm-ov-close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  color: var(--color-black);
  cursor: pointer;
}
.h5g-rm-ov-close:hover {
  color: var(--color-pink-primary);
}
.h5g-rm-ov-inner {
  display: flex;
  flex-direction: column;
  padding-top: 3px;
}
.h5g-rm-ov-top {
  display: grid;
  grid-template-columns: 231px 1fr;
  grid-template-rows: auto;
  gap: 20px;
  margin-bottom: 28px;
}
.h5g-rm-ov-image-wrap {
  flex-shrink: 0;
  width: 231px;
  height: 262px;
  background: var(--color-pink-light-15);
  overflow: hidden;
  border-radius: var(--border-radius-standard);
}
.h5g-rm-ov-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.h5g-rm-ov-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 200px;
  background: var(--color-pink-light-30);
}
.h5g-rm-ov-meta-wrap {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 23px;
}
.h5g-rm-ov-meta-block {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--color-black);
}
.h5g-rm-ov-meta-block:last-child {
  margin-bottom: 0;
}
.h5g-rm-ov-meta-block .h5g-rm-ov-label {
  display: block;
  margin-bottom: 2px;
}
.h5g-rm-ov-meta-block .h5g-rm-ov-value {
  display: block;
}
/* STEM: flere felter (komma) vises på hver sin linje via <br> i JS */
#h5g-rm-ov-stem-val {
  white-space: normal;
  word-break: break-word;
  line-height: 1.45;
}
.h5g-rm-ov-label {
  font-weight: var(--font-weight-extrabold);
}
.h5g-rm-ov-value {
  font-weight: var(--font-weight-semibold);
}
.h5g-rm-ov-body {
  display: flex;
  flex-direction: column;
  text-align: left;
}
.h5g-rm-ov-name {
  font-size: 24px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.25;
  color: var(--color-black);
  margin: 0 0 19px;
}
.h5g-rm-ov-separator {
  border: none;
  border-top: 1px solid var(--color-gray);
  margin: 0 0 23px;
}
.h5g-rm-ov-description {
  flex: 1;
  font-size: 15px;
  font-weight: var(--font-weight-medium);
  line-height: 1.6;
  color: var(--color-black);
  white-space: pre-wrap;
  margin-bottom: 24px;
}
.h5g-rm-ov-luk {
  align-self: flex-start;
  min-width: 88px;
  height: 30px;
  padding: 0 16px;
  border: none;
  border-radius: var(--border-radius-standard);
  background: var(--color-pink-primary);
  color: var(--color-black);
  font-family: var(--font-family-primary);
  font-size: 16px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.h5g-rm-ov-luk:hover {
  opacity: 0.9;
}

@media (max-width: 480px) {
  .h5g-rm-ov-content {
    width: 100%;
  }
  .h5g-rm-ov-top {
    grid-template-columns: 1fr;
  }
  .h5g-rm-ov-image-wrap {
    width: 100%;
    max-width: 231px;
    height: 262px;
    justify-self: start;
  }
  .h5g-rm-ov-meta-wrap {
    padding-top: 0;
  }
}

/* Podcast oversigt – hero (som RM) */
.podcast-overview-hero {
  padding: calc(var(--spacing-base) * 4) 0 calc(var(--spacing-base) * 3);
}
.podcast-overview-hero-title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  text-align: center;
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 2);
}
.podcast-overview-hero-subtitle {
  max-width: 640px;
  margin: 0 auto;
  color: var(--color-black);
}
.podcast-overview-empty {
  text-align: center;
  font-size: var(--font-size-body);
  color: var(--color-black);
  padding: calc(var(--spacing-base) * 4);
}

/* Podcast-oversigt: ens korthøjde i grid; serie-slot; PODCAST; fast 4-linjers titel; brød samme start */
.podcast-overview-cards-section .podcast-overview-grid {
  align-items: stretch;
}

.podcast-overview-cards-section .podcast-overview-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.podcast-overview-cards-section .podcast-overview-card .rm-overview-card-link {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.podcast-overview-cards-section .podcast-overview-card .rm-overview-card-body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  /* Fjern RM body min-height 280px + fyld resten af kortet under brød */
  min-height: unset;
}

.podcast-overview-cards-section .podcast-overview-card .rm-overview-card-body::after {
  content: '';
  flex: 1 1 auto;
  min-height: 0;
}

/* Pill på billedet (samme stil som blog-overview-card-pill / historier) */
.podcast-overview-cards-section .podcast-overview-card .rm-overview-card-image-wrap {
  position: relative;
}

.podcast-overview-cards-section .podcast-overview-card .blog-overview-card-pill {
  z-index: 1;
  color: var(--color-black);
}

.podcast-overview-cards-section .podcast-overview-card-title {
  flex-shrink: 0;
  margin-top: 0;
  margin-bottom: calc(var(--spacing-base) * 1);
  line-height: 1.25;
  min-height: 5em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.podcast-overview-cards-section .podcast-overview-card-desc {
  flex: 0 0 auto;
  flex-shrink: 0;
  margin: 0;
  line-height: 1.5;
  min-height: 6em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

/* Podcast single – serie/afsnit side (samme top-padding som podcast-overview-hero) */
.podcast-single-page {
  padding-top: calc(var(--spacing-base) * 4);
  padding-bottom: calc(var(--spacing-base) * 6);
}
.podcast-single-hero {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(var(--spacing-base) * 2);
  margin-bottom: calc(var(--spacing-base) * 5);
  margin-top: 0;
  align-items: start;
}
@media (min-width: 768px) {
  .podcast-single-hero {
    grid-template-columns: minmax(200px, 320px) 1fr;
    gap: calc(var(--spacing-base) * 3);
    align-items: end;
  }
}
.podcast-single-hero__text {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (min-width: 768px) {
  .podcast-single-hero__text {
    min-width: 0;
  }
}
.podcast-single-hero__image {
  aspect-ratio: 3/4;
  overflow: hidden;
  border-radius: 8px;
  background: var(--color-neutral-100, #f0f0f0);
}
.podcast-single-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.podcast-single-excerpt {
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-neutral-700, #444);
  margin: 0.5em 0 0;
}
.podcast-single-header {
  margin-bottom: calc(var(--spacing-base) * 3);
}
.podcast-single-title {
  font-size: clamp(24px, 3vw, 36px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin: 0;
}
.podcast-single-description {
  margin-bottom: calc(var(--spacing-base) * 3);
}
.podcast-single-player-large {
  margin-bottom: calc(var(--spacing-base) * 5);
  max-width: 100%;
}
.podcast-single-player-large iframe {
  max-width: 100%;
}
.podcast-single-meta {
  margin-bottom: calc(var(--spacing-base) * 3);
}
.podcast-single-meta-title {
  font-size: 1.125rem;
  margin-bottom: 0.5em;
}
.podcast-single-meta-content p:last-child {
  margin-bottom: 0;
}
.podcast-single-contributors {
  margin-bottom: calc(var(--spacing-base) * 4);
}
.podcast-single-episodes-title {
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 3);
  padding-bottom: calc(var(--spacing-base) * 2);
  border-bottom: 2px solid var(--color-pink-primary);
}
.podcast-episode-card {
  margin-bottom: calc(var(--spacing-base) * 4);
  padding-bottom: calc(var(--spacing-base) * 4);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.podcast-episode-card:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.podcast-episode-card-inner {
  display: grid;
  gap: calc(var(--spacing-base) * 3);
  align-items: start;
}
@media (min-width: 640px) {
  .podcast-episode-card-inner {
    grid-template-columns: 200px 1fr;
  }
}
.podcast-episode-image {
  aspect-ratio: 1;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  background: var(--color-pink-light-15);
}
.podcast-episode-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.podcast-episode-title {
  font-size: 1.25rem;
  font-weight: var(--font-weight-black);
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 2);
}
.podcast-episode-player {
  margin: calc(var(--spacing-base) * 2) 0;
}
.podcast-episode-player iframe {
  max-width: 100%;
}
.podcast-episode-desc {
  font-size: var(--font-size-body);
  line-height: 1.5;
  color: var(--color-black);
  margin: 0;
}

/* Bestyrelse: ingen lokation på kort */
.bestyrelse-overview-cards-section .rm-overview-card-body {
  min-height: auto;
}

/* Bestyrelse: LinkedIn-ikon i venstre bund */
.bestyrelse-card-linkedin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  padding-top: calc(var(--spacing-base) * 2);
  color: var(--color-black);
  transition: color 0.2s ease;
}

.bestyrelse-card-linkedin:hover {
  color: #0a66c2;
}

.bestyrelse-card-linkedin svg {
  width: 24px;
  height: 24px;
  display: block;
}

/* Bestyrelse – beskrivelse + vedtægter */
.bestyrelse-overview-text-section {
  padding: calc(var(--spacing-base) * 4) 0;
}

.bestyrelse-overview-text-section .container {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.bestyrelse-overview-beskrivelse {
  font-size: var(--font-size-body);
  line-height: 1.6;
  margin-bottom: calc(var(--spacing-base) * 3);
}

.bestyrelse-overview-vedtaegter {
  margin: 0;
}

/* ============================================
   FONDE OVERSIGT
   ============================================ */

.fonde-overview-page .container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.fonde-overview-hero {
  padding: calc(var(--spacing-base) * 6) 0 calc(var(--spacing-base) * 4);
  background-color: var(--color-white);
}

.fonde-overview-hero-title {
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--color-black);
  text-align: center;
  margin-bottom: calc(var(--spacing-base) * 2);
}

.fonde-overview-hero-subtitle {
  font-size: var(--font-size-eyebrow);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.fonde-overview-cards-section {
  padding-bottom: calc(var(--spacing-base) * 6);
}

.fonde-overview-empty {
  text-align: center;
  font-size: var(--font-size-body);
  color: var(--color-black);
  padding: calc(var(--spacing-base) * 4);
}

/* Grid: 3 kolonner, samme størrelse som RM-oversigt */
.fonde-overview-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 640px) {
  .fonde-overview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .fonde-overview-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* min-height så kort 4 (alene i række 2) får samme højde som 1–3 */
.fonde-overview-card {
  margin: 0;
  width: 100%;
  min-height: 520px;
  display: flex;
  flex-direction: column;
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
  background: var(--color-white);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.fonde-overview-card:hover {
  transform: translateY(-4px);
  box-shadow: 4px 8px 12px 0 rgba(0, 0, 0, 0.15);
}

.fonde-overview-card-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  text-decoration: none;
  color: inherit;
}

/* Billede + body i egen div – kun denne kan have overflow, logo er sibling */
.fonde-overview-card-link {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  background: var(--color-white);
  border-radius: var(--border-radius-standard) var(--border-radius-standard) 0 0;
}

/* Billede: design 559×391 ≈ 1.43:1 */
.fonde-overview-card-image-wrap {
  flex-shrink: 0;
  aspect-ratio: 559 / 391;
  width: 100%;
  background: var(--color-pink-light-15);
  overflow: hidden;
  border-radius: var(--border-radius-standard) var(--border-radius-standard) 0 0;
}

.fonde-overview-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.fonde-overview-card-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 180px;
  background: var(--color-pink-light-30);
}

.fonde-overview-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 1.5);
  padding-bottom: calc(var(--spacing-base) * 1.5);
  background: var(--color-white);
}

/* Tags: plads til ca. 3 labels i én række, mere luft ned til titel */
.fonde-overview-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 48px;
  margin-bottom: calc(var(--spacing-base) * 2.5);
}

.fonde-overview-card-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 100px;
  height: 24px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  background: var(--color-pink-light);
  border-radius: 6px;
  white-space: nowrap;
  box-sizing: border-box;
}

/* Titel: altid 2 linjers plads; fast rækkefølge under tags så 1- og 2-linjers titler og brødtekst starter samme sted */
.fonde-overview-cards-section .fonde-overview-card-body .fonde-overview-card-title {
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.25;
  color: var(--color-black);
  min-height: 2.5em;
  margin-top: 0;
  margin-bottom: calc(var(--spacing-base) * 1);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-family: var(--font-family-primary);
}

/* Brødtekst: max 5 linjer, fast formater på alle kort */
.fonde-overview-cards-section .fonde-overview-card-body .fonde-overview-card-desc {
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  color: var(--color-black);
  min-height: 7.5em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  font-family: var(--font-family-primary);
  margin: 0;
}

/* Logo-felt: sibling til body, uden overflow clipping – god padding rundt om logoet */
.fonde-overview-card-logo {
  flex-shrink: 0;
  width: 100%;
  min-height: 56px;
  padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 2.5);
  background: var(--color-white);
  border-radius: 0 0 var(--border-radius-standard) var(--border-radius-standard);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-sizing: border-box;
}

.fonde-overview-card-logo img,
.fonde-overview-card-logo .fonde-overview-card-logo-name {
  max-width: 100%;
}

.fonde-overview-card-logo img {
  width: auto;
  max-height: 50px;
  height: auto;
  object-fit: contain;
  object-position: center;
  display: block;
}

.fonde-overview-card-logo-name {
  font-size: 13px;
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  font-style: italic;
  line-height: 1.4;
  word-break: break-word;
}

/* ============================================
   H5G CTA-BLOCK (genbrugeligt modul)
   ============================================ */

.h5g-cta-block {
  background: var(--color-white);
  padding: calc(var(--spacing-base) * 4);
  margin: calc(var(--spacing-base) * 4) 0;
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
}

.h5g-cta-inner {
  max-width: 640px;
}

/* Figma: CTA overskrift – H3 24px Raleway Black, uppercase */
.h5g-cta-headline {
  font-family: var(--font-family-primary);
  font-size: 24px;
  line-height: 1.3;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 2);
}

.h5g-cta-subtext {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-body);
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 3);
}

.h5g-cta-actions {
  margin: 0;
}

/* Alle CTA-knapper (link + newsletter): Raleway Black (900) */
.h5g-cta-block .h5g-cta-button,
.h5g-cta-block .btn-primary,
.h5g-cta-block .h5g-cta-submit button {
  font-weight: var(--font-weight-black);
}

.h5g-cta-button {
  display: inline-block;
}

/* Newsletter-variant: Fornavn + E-mail + pill-knap (design screenshot) */
.h5g-cta-form.h5g-cta-newsletter .h5g-cta-field {
  margin-bottom: calc(var(--spacing-base) * 2);
}

.h5g-cta-form.h5g-cta-newsletter .h5g-cta-field:last-of-type {
  margin-bottom: calc(var(--spacing-base) * 2);
}

.h5g-cta-form .h5g-cta-input {
  width: 100%;
  max-width: 320px;
  padding: 12px 16px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  color: var(--color-black);
  background: #F9E0E8;
  border: 2px solid transparent;
  border-radius: 8px;
}

.h5g-cta-form .h5g-cta-input::placeholder {
  color: #666;
  opacity: 1;
}

.h5g-cta-form .h5g-cta-input:focus {
  outline: none;
  border-color: var(--color-pink-primary);
}

.h5g-cta-form .h5g-cta-submit {
  margin: 0;
}

/* Pill-knap med diskret skygge (nyhedsbrev CTA) */
.h5g-cta-form .h5g-cta-submit-btn,
.h5g-cta-form .h5g-cta-submit .btn-primary {
  border-radius: 9999px;
  padding: 12px 28px;
  font-weight: var(--font-weight-black);
  box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.12);
}

/* ============================================
   SKABELON 1 – Sticky venstre, scroll højre (centreret som Tripp)
   ============================================ */

/* Centreret container – luft under header, layoutet ikke helt oppe i toppen */
.h5g-skabelon1-wrap {
  max-width: 1280px;
  margin: 0 auto;
  padding: 32px 24px 0;
}

.h5g-skabelon1 {
  display: flex;
  min-height: 100vh;
  flex-wrap: nowrap;
}

/* Figma/design: venstre billede 511px × 610px – sticky med samme mellemrum til top som ved start */
.h5g-skabelon1__left {
  position: sticky;
  top: calc(var(--header-height) + 32px); /* 32px = wrap padding-top – behold mellemrum under menu ved scroll */
  width: 100%;
  max-width: 511px;
  flex-shrink: 0;
  height: 610px;
  max-height: calc(100vh - var(--header-height) - 32px);
  overflow: hidden;
  border-radius: var(--border-radius-standard); /* Design: 10px alle hjørner */
}

.h5g-skabelon1__media {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-pink-light-15);
  border-radius: var(--border-radius-standard);
  position: relative;
}

.h5g-skabelon1__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--border-radius-standard);
}

/* Sticky carousel: fylder hele medieområdet – ingen lyserød baggrund under */
.h5g-skabelon1__carousel {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.h5g-skabelon1__carousel-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.h5g-skabelon1__carousel-slide--active {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}
.h5g-skabelon1__carousel-slide .h5g-skabelon1__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Pile: hvid baggrund, sorte pile (som på designet) – nederst til højre */
.h5g-skabelon1__carousel-arrows {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  z-index: 2;
}
.h5g-skabelon1__carousel-arrow {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 0;
  background: var(--color-white);
  color: var(--color-black);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  padding: 0;
  transition: opacity 0.2s;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}
.h5g-skabelon1__carousel-arrow:hover {
  opacity: 0.9;
}
.h5g-skabelon1__carousel-arrow:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.h5g-skabelon1__placeholder {
  min-height: 400px;
}

.h5g-skabelon1__placeholder-text {
  font-size: var(--font-size-body);
  color: var(--color-black);
  opacity: 0.6;
}

/* Ingen top-padding – så kategori-label og sticky billede holder samme topkant */
.h5g-skabelon1__right {
  flex: 1;
  min-width: 0;
  padding: 0 calc(var(--spacing-base) * 5) calc(var(--spacing-base) * 4);
}

.h5g-skabelon1__article {
  max-width: 569px;
  margin: 0 auto;
}

/* Pink tag (kategori) – Figma: 144×30, pink #F1459B */
.h5g-skabelon1__tag {
  display: inline-block;
  padding: 6px 12px;
  background: var(--color-pink-primary);
  color: var(--color-white);
  font-size: var(--font-size-badge);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  border-radius: var(--border-radius-standard);
  margin-bottom: calc(var(--spacing-base) * 2);
}

/* Overskrift under tag */
.h5g-skabelon1__title {
  font-size: 32px;
  line-height: 35px;
  font-weight: var(--font-weight-black);
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 3);
}

.h5g-skabelon1__content.entry-content {
  margin: 0;
}

/* Figma: overskrift 32px Black, line 35 */
.h5g-skabelon1__content.entry-content h1,
.h5g-skabelon1__content.entry-content .entry-title {
  font-size: 32px;
  line-height: 35px;
  font-weight: var(--font-weight-black);
}

/* Figma: brødtekst 14px Medium, line 18 – undtagen bidragsydere-navn og -mail (skal være Extra Bold) */
.h5g-skabelon1__content.entry-content p:not(.h5g-bidragsydere-name):not(.h5g-bidragsydere-email) {
  font-size: 14px;
  line-height: 18px;
  font-weight: var(--font-weight-medium);
}

/* Figma: underoverskrift 14px ExtraBold – undtagen Citat- og CTA-blokkens overskrifter (24px Black) */
.h5g-skabelon1__content.entry-content h3:not(.h5g-citat-quote):not(.h5g-cta-headline):not(.h5g-bidragsydere-title),
.h5g-skabelon1__content.entry-content h4 {
  font-size: 14px;
  line-height: 145%;
  letter-spacing: -0.005em;
  font-weight: var(--font-weight-extrabold);
}

.h5g-skabelon1__content.entry-content > * + * {
  margin-top: 1.5em;
}

/* Skabelon 2: hero fuld sidebredde (som forside), indhold i 940px */
.h5g-skabelon2 {
  width: 100%;
}

.h5g-skabelon2__inner {
  max-width: 940px;
  margin: 0 auto;
  padding: calc(var(--spacing-base) * 4) calc(var(--spacing-base) * 5) calc(var(--spacing-base) * 4);
}

/* Hero: fuld bredde af siden, ingen border-radius (som forsidens hero) */
.h5g-skabelon2__hero-wrap {
  width: 100%;
  margin-bottom: calc(var(--spacing-base) * 4);
  overflow: hidden;
}

.h5g-skabelon2__hero {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  max-height: 60vh;
  overflow: hidden;
  background: var(--color-gray);
}

.h5g-skabelon2__hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.h5g-skabelon2__hero-slide--active {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}

.h5g-skabelon2__hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Hero carousel pile: hvid baggrund, sorte pile – nederst til højre (skjules ved ét billede) */
.h5g-skabelon2__hero:not(.h5g-skabelon2__hero--carousel) .h5g-skabelon2__hero-arrows {
  display: none;
}

/* Pile holder kant med sideindhold (940px) – venstre kant i billedet */
.h5g-skabelon2__hero-arrows {
  position: absolute;
  bottom: 0.75rem;
  left: max(0.75rem, calc(50% - 470px)); /* 470px = halvdelen af 940px indholdsbredde */
  right: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  z-index: 2;
}

.h5g-skabelon2__hero-arrow {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 0;
  background: var(--color-white);
  color: var(--color-black);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  padding: 0;
  transition: opacity 0.2s;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}

.h5g-skabelon2__hero-arrow:hover {
  opacity: 0.9;
}

.h5g-skabelon2__content.entry-content > * + * {
  margin-top: 1.5em;
}

/* Skabelon 2: Citat, Bidragsydere og Læs videre centreret på siden (blokken centreres, ikke teksten inde i) */
.h5g-skabelon2 .h5g-bidragsydere-block,
.h5g-skabelon2 .h5g-laes-videre__inner {
  margin-left: auto;
  margin-right: auto;
}

/* Citat på Skabelon 2: blokken skal have begrænset bredde før margin auto virker */
.h5g-skabelon2 .wp-block-h5g-citat,
.h5g-skabelon2 .h5g-citat-block {
  max-width: 569px;
  margin-left: auto;
  margin-right: auto;
}

.h5g-skabelon2 .h5g-citat-quote {
  margin-left: auto;
  margin-right: auto;
  text-transform: none;
}

.h5g-skabelon2 .h5g-citat-author {
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

/* Entry content – global (blog, sider, fonde osv.): linjeskift og afstand (tema-reset fjerner default margener) */
.entry-content p {
  margin-bottom: 1em;
}

.entry-content p:last-child {
  margin-bottom: 0;
}

.entry-content > * + * {
  margin-top: 1em;
}

.entry-content strong {
  font-weight: var(--font-weight-bold);
}

/* Overskrifter i indhold: tydeligt hierarki (H2 mindre end H1 osv.) – inkl. blok-editorens .wp-block-heading */
.entry-content h1,
.entry-content h1.wp-block-heading {
  font-size: var(--font-size-section-title);
  margin: 1em 0 0.5em;
}
.entry-content h2,
.entry-content h2.wp-block-heading {
  font-size: 28px !important;
  font-weight: var(--font-weight-black);
  line-height: 1.25;
  margin: 1em 0 0.5em;
}
.entry-content h3,
.entry-content h3.wp-block-heading {
  font-size: 22px !important;
  font-weight: var(--font-weight-extrabold);
  margin: 0.75em 0 0.4em;
}
.entry-content h4,
.entry-content h4.wp-block-heading {
  font-size: 18px !important;
  font-weight: var(--font-weight-bold);
  margin: 0.75em 0 0.4em;
}
.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.entry-content h4:first-child {
  margin-top: 0;
}

/* Indholdsbilleder i blog/side: 10px afrundede hjørner (som resten af designet) */
.entry-content img,
.entry-content .wp-block-image img {
  border-radius: var(--border-radius-standard);
}
.entry-content .wp-block-image {
  border-radius: var(--border-radius-standard);
  overflow: hidden;
}

/* Nummereret liste: pink cirkel med sort tal (design Skabelon 2) */
.entry-content ol {
  list-style: none;
  padding-left: 0;
  margin: 1em 0;
  counter-reset: h5g-numlist;
}

.entry-content ol li {
  position: relative;
  padding-left: 2.25rem;
  margin-bottom: 0.75em;
  font-size: 14px;
  line-height: 1.4;
  color: var(--color-black);
}

.entry-content ol li::before {
  counter-increment: h5g-numlist;
  content: counter(h5g-numlist);
  position: absolute;
  left: 0;
  top: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background: var(--color-pink-light);
  color: var(--color-black);
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.75rem;
  text-align: center;
  flex-shrink: 0;
}

/* ============================================
   H5G BLOK: CITAT
   ============================================ */

.h5g-citat-block {
  margin: calc(var(--spacing-base) * 4) 0;
  padding: calc(var(--spacing-base) * 3) 0;
}

/* Figma: Citat tekst – Raleway Black 24px, line-height 32 */
.h5g-citat-quote {
  font-family: var(--font-family-primary);
  font-size: 24px;
  line-height: 32px;
  font-weight: var(--font-weight-black);
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 2);
}

/* Figma: Forfatter (navn) – Raleway ExtraBold 14px, line-height 145% */
.h5g-citat-author {
  font-family: var(--font-family-primary);
  font-size: 14px;
  line-height: 1.45;
  font-weight: var(--font-weight-extrabold);
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 2);
}

.h5g-citat-body {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-body);
  color: var(--color-black);
}

.h5g-citat-body p {
  margin-bottom: 1em;
}

.h5g-citat-body p:last-child {
  margin-bottom: 0;
}

.h5g-citat-block--editor .h5g-citat-placeholder {
  color: var(--color-gray);
  font-style: italic;
}

/* ============================================
   H5G BLOK: BILLEDGRID
   Efter tegning: IKKE grid/celler – to kolonner med lodret stak.
   Venstre: 1 + 3 (gap 13px). Højre: 2 + 4 (gap 13px). Bundene flugter.
   ============================================ */

.h5g-billedgrid-block,
.wp-block-h5g-billedgrid {
  margin: calc(var(--spacing-base) * 4) 0;
  max-width: 569px;
}

/* Flex: kolonne-retning, wrap → to kolonner. Order 1,3,2,4 så venstre=1+3, højre=2+4. */
.h5g-billedgrid-inner,
.wp-block-h5g-billedgrid .h5g-billedgrid-inner,
.entry-content .wp-block-h5g-billedgrid .h5g-billedgrid-inner,
.h5g-skabelon1__content .wp-block-h5g-billedgrid .h5g-billedgrid-inner {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: wrap !important;
  align-content: flex-start !important;
  gap: 13px !important;
  width: 569px !important;
  max-width: 100% !important;
  height: 562px !important;
  box-sizing: border-box;
}

/* Order: 1, 3, 2, 4 → kolonne 1 får 1+3, kolonne 2 får 2+4. Præcis 13px mellem 1–3 og 2–4. */
.h5g-billedgrid-block .h5g-billedgrid-item:nth-child(1),
.wp-block-h5g-billedgrid .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(1) { order: 1; width: 278px; flex-shrink: 0; aspect-ratio: 278 / 184; }
.h5g-billedgrid-block .h5g-billedgrid-item:nth-child(2),
.wp-block-h5g-billedgrid .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(2) { order: 3; width: 278px; flex-shrink: 0; aspect-ratio: 278 / 365; }
.h5g-billedgrid-block .h5g-billedgrid-item:nth-child(3),
.wp-block-h5g-billedgrid .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(3) { order: 2; width: 278px; flex-shrink: 0; aspect-ratio: 278 / 365; }
.h5g-billedgrid-block .h5g-billedgrid-item:nth-child(4),
.wp-block-h5g-billedgrid .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(4) { order: 4; width: 278px; flex-shrink: 0; aspect-ratio: 278 / 184; }

.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-inner,
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner {
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 184fr 365fr 184fr;
  gap: 15px 16px;
}

/* 2×3 (6 billeder): samme proportioner, række 3 tilføjet */
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(1),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(1) { grid-column: 1; grid-row: 1; }
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(2),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(2) { grid-column: 2; grid-row: 1 / 3; }
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(3),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(3) { grid-column: 1; grid-row: 2; }
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(4),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(4) { grid-column: 2; grid-row: 2; }
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(5),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(5) { grid-column: 1; grid-row: 3; }
.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item:nth-child(6),
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-inner .h5g-billedgrid-item:nth-child(6) { grid-column: 2; grid-row: 3; }

/* Billedbokse: corner radius 10, højde fra aspect-ratio */
.h5g-billedgrid-item,
.wp-block-h5g-billedgrid .h5g-billedgrid-item {
  border-radius: 10px;
  overflow: hidden;
  min-height: 0;
  height: auto !important;
}

.h5g-billedgrid-block.h5g-billedgrid--cols-3 .h5g-billedgrid-item,
.wp-block-h5g-billedgrid.h5g-billedgrid--cols-3 .h5g-billedgrid-item {
  height: 100%;
}

.h5g-billedgrid-img,
.wp-block-h5g-billedgrid .h5g-billedgrid-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 10px;
  vertical-align: middle;
}

/* Ekstra sikring: samme flex-layout */
body .wp-block-h5g-billedgrid .h5g-billedgrid-inner {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: wrap !important;
  align-content: flex-start !important;
  gap: 13px !important;
  width: 569px !important;
  max-width: 100% !important;
  height: 562px !important;
}

/* Grid-items må ikke tage fuld bredde som block */
.wp-block-h5g-billedgrid .h5g-billedgrid-inner .h5g-billedgrid-item {
  min-width: 0;
}

.h5g-billedgrid-block--editor {
  min-height: 120px;
  border: 1px dashed var(--color-gray);
  border-radius: var(--border-radius-standard);
  padding: calc(var(--spacing-base) * 2);
}

.h5g-billedgrid-placeholder,
.h5g-billedgrid-editor-actions {
  margin: 0;
}

.h5g-billedgrid-editor-actions .button {
  margin-right: 8px;
}

/* ============================================
   H5G BLOK: Billedgrid Skabelon 2 (tegning: 3 kolonner, 2 rækker, 303×202 / 303×405, midterste omvendt)
   ============================================ */
.h5g-billedgrid-s2-block,
.wp-block-h5g-billedgrid-s2 {
  margin: calc(var(--spacing-base) * 4) 0;
  max-width: 935px;
}

.h5g-billedgrid-s2-inner {
  display: flex;
  flex-direction: row;
  gap: 13px;
}

.h5g-billedgrid-s2-col {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 13px;
}

/* Lille: 303×202. Stor: 303×405 (tegning) */
.h5g-billedgrid-s2-item {
  width: 100%;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  background: var(--color-gray);
  min-height: 0;
}

.h5g-billedgrid-s2-item--small {
  aspect-ratio: 303 / 202;
}

.h5g-billedgrid-s2-item--large {
  aspect-ratio: 303 / 405;
}

.h5g-billedgrid-s2-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ============================================
   H5G BLOK: CTA (wrapper – indhold styres af .h5g-cta-block)
   ============================================ */

.wp-block-h5g-cta {
  margin: calc(var(--spacing-base) * 4) 0;
}

/* ============================================
   MEDLEMSSIDE (BLIV MEDLEM)
   ============================================ */

.membership-page .container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.membership-hero {
  padding: calc(var(--spacing-base) * 6) 0 calc(var(--spacing-base) * 4);
  background-color: var(--color-white);
}

.membership-hero-title {
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 2);
}

.membership-hero-text.section-eyebrow {
  font-size: var(--font-size-eyebrow);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-body-alt);
  color: var(--color-black);
  max-width: 720px;
}

.membership-content-section {
  padding-bottom: calc(var(--spacing-base) * 8);
}

.membership-layout {
  display: grid;
  gap: calc(var(--spacing-base) * 5);
  align-items: start;
}

@media (min-width: 768px) {
  .membership-layout {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  .membership-layout {
    grid-template-columns: 1fr 400px;
    gap: calc(var(--spacing-base) * 6);
  }
}

/* Medlemstekst: linjeskift og formatering (temaets reset fjerner default margener) */
.membership-intro-content.entry-content p,
.membership-intro-content.entry-content .membership-value-text {
  margin-bottom: 1em;
}

.membership-intro-content.entry-content p:last-child,
.membership-intro-content.entry-content .membership-value-text:last-child {
  margin-bottom: 0;
}

.membership-intro-content.entry-content > * + * {
  margin-top: 1em;
}

.membership-intro-content.entry-content strong {
  font-weight: var(--font-weight-bold);
}

.membership-value-text {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body-alt);
  color: var(--color-black);
  margin-bottom: 1em;
}

.membership-form-wrapper {
  position: relative;
}

/* BLIV MEDLEM form block (genbrugelig – også til sidebar på aktivitetsside) */
.membership-form-block {
  background: var(--color-pink-light-15);
  padding: calc(var(--spacing-base) * 4);
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
}

.membership-form-title {
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 1);
}

.membership-form-intro {
  font-size: var(--font-size-body);
  color: var(--color-black);
  margin-bottom: calc(var(--spacing-base) * 3);
}

.membership-form .form-row {
  margin-bottom: calc(var(--spacing-base) * 2);
}

.membership-form label {
  display: block;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  margin-bottom: 4px;
}

.membership-form .required {
  color: var(--color-pink-primary);
}

/* Input/textarea – lyserød baggrund som i design doc (Newsletter) */
.membership-input,
.membership-textarea {
  width: 100%;
  padding: 12px 16px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  background-color: var(--color-pink-light);
  border: 2px solid transparent;
  border-radius: var(--border-radius-standard);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.membership-input::placeholder,
.membership-textarea::placeholder {
  color: var(--color-black);
  opacity: 0.6;
}

.membership-input:hover,
.membership-textarea:hover {
  border-color: var(--color-pink-primary);
}

.membership-input:focus,
.membership-textarea:focus {
  outline: none;
  border-color: var(--color-pink-primary);
  box-shadow: 0 0 0 2px var(--color-pink-light-30);
}

.membership-textarea {
  min-height: 100px;
  resize: vertical;
}

.membership-form .form-submit {
  margin-bottom: 0;
  margin-top: calc(var(--spacing-base) * 3);
}

.membership-submit {
  width: 100%;
  padding: 16px 24px;
}

/* Er du? – radioknap */
.membership-form .form-row-radio .form-label {
  display: block;
  font-weight: var(--font-weight-bold);
  margin-bottom: 8px;
}

.membership-form .form-radio-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.membership-form .form-radio-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: var(--font-weight-medium);
  cursor: pointer;
}

.membership-form .membership-radio {
  flex-shrink: 0;
}

/* Nyhedsbrev + privatliv – checkbox */
.membership-form .form-row-checkbox .form-label {
  display: block;
  font-weight: var(--font-weight-bold);
  margin-bottom: 8px;
}

.membership-form .form-checkbox-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-weight: var(--font-weight-medium);
  cursor: pointer;
}

.membership-form .membership-checkbox {
  flex-shrink: 0;
  margin-top: 2px;
}

/* Success/error besked på medlemsside */
.membership-message {
  padding: calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 3);
  border-radius: var(--border-radius-standard);
  margin-bottom: calc(var(--spacing-base) * 3);
  font-weight: var(--font-weight-bold);
}

.membership-message.success {
  background: var(--color-pink-light-30);
  color: var(--color-black);
}

.membership-message.error {
  background: rgba(200, 60, 60, 0.15);
  color: var(--color-black);
}

/* ============================================
   UTILITY CLASSES
   ============================================ */

.text-center {
  text-align: center;
}

.text-uppercase {
  text-transform: uppercase;
}

.mt-1 { margin-top: calc(var(--spacing-base) * 1); }
.mt-2 { margin-top: calc(var(--spacing-base) * 2); }
.mt-3 { margin-top: calc(var(--spacing-base) * 3); }
.mt-4 { margin-top: calc(var(--spacing-base) * 4); }

.mb-1 { margin-bottom: calc(var(--spacing-base) * 1); }
.mb-2 { margin-bottom: calc(var(--spacing-base) * 2); }
.mb-3 { margin-bottom: calc(var(--spacing-base) * 3); }
.mb-4 { margin-bottom: calc(var(--spacing-base) * 4); }

.p-1 { padding: calc(var(--spacing-base) * 1); }
.p-2 { padding: calc(var(--spacing-base) * 2); }
.p-3 { padding: calc(var(--spacing-base) * 3); }
.p-4 { padding: calc(var(--spacing-base) * 4); }

/* ==========================================================================
   Læs videre i samme spor – nederst på enkelt-indlæg (Skabelon 1 + 2)
   Store kort: 3 nyeste samme kategori (centreret ved 1–2). Små: 10 seneste, carousel.
   ========================================================================== */
.h5g-laes-videre {
  padding: calc(var(--spacing-base) * 4) calc(var(--spacing-base) * 2);
  background: var(--color-white);
}

/* Hele blokken (titel + store kort + carousel) samme bredde 569px – holder venstre og højre kant */
.h5g-laes-videre__inner {
  max-width: 569px;
  margin: 0 auto;
}

.h5g-laes-videre__title {
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 900;
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  color: var(--color-black);
  margin: 0 0 1.5rem 0;
  text-align: center;
}

/* Store kort – 179×231 (tegning), centreret ved 1 eller 2 */
.h5g-laes-videre__big {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: flex-start;
  margin-bottom: 2rem;
}

.h5g-laes-videre--same-1 .h5g-laes-videre__big,
.h5g-laes-videre--same-2 .h5g-laes-videre__big {
  justify-content: center;
}

.h5g-laes-videre__card--big {
  display: block;
  width: 179px;
  flex-shrink: 0;
  border-radius: 10px;
  overflow: hidden;
  text-decoration: none;
  color: var(--color-white);
  position: relative;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.h5g-laes-videre__card--big:hover {
  color: var(--color-white);
  opacity: 0.95;
}

.h5g-laes-videre__card-img-wrap {
  display: block;
  position: relative;
  width: 100%;
  height: 231px;
  background: var(--color-gray);
}

.h5g-laes-videre__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.h5g-laes-videre__card-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--color-gray);
}

/* Linear gradient overlay – Figma: 0% 1% → 51% 65% hvid */
.h5g-laes-videre__card-gradient {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 65.54px;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0.01) 51%);
  pointer-events: none;
}

.h5g-laes-videre__cat {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 2;
  display: inline-block;
  padding: 0.25em 0.5em;
  border-radius: 6px;
  background: var(--color-pink-primary);
  color: var(--color-black);
  font-size: 11px;
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  max-width: 96px;
  text-align: center;
  line-height: 1.2;
}

.h5g-laes-videre__card-title {
  display: block;
  position: absolute;
  left: 0.5rem;
  right: 0.5rem;
  bottom: 0.75rem;
  z-index: 1;
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 700;
  font-size: 13px;
  line-height: 1.25;
  color: var(--color-white);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* Carousel: 10 seneste, små kort + pile */
.h5g-laes-videre__carousel-wrap {
  display: flex;
  align-items: center;
  position: relative;
}

/* Carousel fylder samme bredde som øverste del (569px) – holder kant */
.h5g-laes-videre__carousel {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

/* Pile centeret i midten af rækken */
/* Pile: holder kant med det midterste store kort (venstre pil = venstre kant, højre pil = højre kant) */
.h5g-laes-videre__arrows-wrap {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: calc(220px + 1rem);  /* store indryk = knapper tættere sammen, mere plads til teksten */
  padding-right: calc(220px + 1rem);
  pointer-events: none;
  z-index: 2;
}
.h5g-laes-videre__arrows-wrap .h5g-laes-videre__arrow {
  pointer-events: auto;
}

.h5g-laes-videre__arrow {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 0;
  background: var(--color-pink-primary);
  color: var(--color-white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  padding: 0;
  transition: opacity 0.2s;
}

.h5g-laes-videre__arrow:hover {
  opacity: 0.9;
}

.h5g-laes-videre__arrow:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.h5g-laes-videre__carousel-track {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 0.25rem 0;
}

.h5g-laes-videre__carousel-track::-webkit-scrollbar {
  display: none;
}

/* Præcis 2 småkort synlige i 569px. Venstre kort: billede venstre/titel højre. Højre kort: titel venstre/billede højre. */
.h5g-laes-videre__card--small {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  text-decoration: none;
  color: var(--color-black);
  width: calc((569px - 1rem) / 2);
  min-width: calc((569px - 1rem) / 2);
  scroll-snap-align: start;
}

/* Venstre kort (1., 3., 5. …): billede holder venstre kant, titel til højre for billedet */
.h5g-laes-videre__card--small:nth-child(odd) {
  flex-direction: row-reverse;
}
.h5g-laes-videre__card--small:nth-child(odd) .h5g-laes-videre__card-thumb-wrap {
  margin-left: 0;
}

.h5g-laes-videre__card--small:hover {
  color: var(--color-black);
}

/* Billede til højre på lige kort (2., 4. …) – holder højre kant. Odd kort overstyres med thumb venstre. */
.h5g-laes-videre__card-thumb-wrap {
  flex-shrink: 0;
  width: 55px;
  height: 60px;
  border-radius: 6px;
  overflow: hidden;
  background: var(--color-gray);
  margin-left: auto;
}

.h5g-laes-videre__card-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.h5g-laes-videre__card-placeholder--small {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--color-gray);
}

/* Blogtitel – max 3 linjer, "..." ved overflow */
.h5g-laes-videre__card-title-small {
  flex: 1;
  min-width: 0;
  min-height: 54px;
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 700;
  font-size: 14px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Venstre kort: titel fylder så billedet holder venstre kant; padding-right så teksten slutter før venstre pil */
.h5g-laes-videre__card--small:nth-child(odd) .h5g-laes-videre__card-title-small {
  padding-right: 5rem;
}

/* Højre kort: padding-left så teksten ikke går under højre pil */
.h5g-laes-videre__card--small:nth-child(even) .h5g-laes-videre__card-title-small {
  padding-left: 5rem;
}

/* Højrestillet tekst på hvert andet småkort (HØJRE SKILLE fra tegning) */
.h5g-laes-videre__card--small:nth-child(even) .h5g-laes-videre__card-title-small {
  text-align: right;
}

/* ==========================================================================
   Bidragsydere (H5G) – blok på blogindlæg
   Boks 567px, 10px runde hjørner, skygge, lyserød som resten af designet.
   Op til 4 bidragsydere; boksen tilpasser sig antallet.
   ========================================================================== */
.h5g-bidragsydere-section {
  margin-top: calc(var(--spacing-base) * 4);
}
.h5g-bidragsydere-block {
  max-width: 567px;
  margin-left: auto;
  margin-right: auto;
}

.h5g-bidragsydere-inner {
  background: #F9E0E8;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  padding: 1.25rem 1.5rem;
}

.h5g-bidragsydere-title {
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 900; /* Black som i Figma */
  font-size: 24px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0 0 1rem 0;
}

.h5g-bidragsydere-item {
  display: flex;
  align-items: flex-start; /* billede og navn samme overkant */
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.h5g-bidragsydere-item:last-child {
  margin-bottom: 0;
}

.h5g-bidragsydere-item__img-wrap {
  flex-shrink: 0;
}

.h5g-bidragsydere-img {
  width: 95px;
  height: 95px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
  vertical-align: top; /* holder overkant med navn */
}

.h5g-bidragsydere-item__body {
  flex: 1;
  min-width: 0;
  padding-top: 0; /* overkant på linje med billede */
}

.h5g-bidragsydere-name {
  font-family: var(--font-heading, 'Raleway', sans-serif);
  font-weight: 800; /* Extra Bold som i Figma */
  font-size: 14px;
  line-height: 1; /* så navnets overkant matcher billedets (holder kant) */
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0 0 0.35em 0;
}

.h5g-bidragsydere-desc {
  font-size: 0.9rem;
  line-height: 1.5;
  margin: 0 0 0.5em 0;
}

.h5g-bidragsydere-desc p {
  margin: 0 0 0.35em 0;
}

.h5g-bidragsydere-desc p:last-child {
  margin-bottom: 0;
}

.h5g-bidragsydere-email {
  margin: 0;
  font-weight: 800; /* Extra Bold som i Figma */
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.h5g-bidragsydere-email a {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
}

.h5g-bidragsydere-email a:hover {
  text-decoration: underline;
}

/* Editor: lidt layout så felterne er læsbare */
.h5g-bidragsydere-block--editor .h5g-bidragsydere-item {
  margin-bottom: 1.5rem;
}

.h5g-bidragsydere-block--editor .h5g-bidragsydere-img-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 95px;
  height: 95px;
  border-radius: 50%;
  border: 2px dashed #ccc;
  background: #f5f5f5;
  cursor: pointer;
  padding: 0;
  overflow: hidden;
}

.h5g-bidragsydere-block--editor .h5g-bidragsydere-img-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.h5g-bidragsydere-block--editor .h5g-bidragsydere-img-btn span {
  font-size: 12px;
  color: #666;
}

/* ============================================
   BLOG OVERVIEW – Filtersystem (Målgruppe + Emner)
   ============================================ */

.site-main--blog {
  padding-top: calc(var(--spacing-base) * 4);
  padding-bottom: calc(var(--spacing-base) * 6);
}

.blog-overview-filter-section {
  margin-bottom: calc(var(--spacing-base) * 3);
}

.blog-overview-filter-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(var(--spacing-base) * 3);
  padding-bottom: calc(var(--spacing-base) * 2);
}

/* Primær: dropdown (HVEM / Målgruppe) */
.blog-overview-filter-maalgruppe {
  flex-shrink: 0;
  position: relative;
}

/* Custom dropdown: trigger + liste med pink baggrund */
.blog-overview-dropdown {
  position: relative;
}

.blog-overview-dropdown-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-width: 200px;
  padding: 10px 16px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  background: var(--color-white);
  border: 1px solid var(--color-gray);
  border-radius: var(--border-radius-standard);
  cursor: pointer;
  text-align: left;
}

.blog-overview-dropdown.has-selection .blog-overview-dropdown-trigger {
  background: var(--color-pink-light);
  color: var(--color-black);
}

.blog-overview-dropdown-trigger:hover {
  border-color: var(--color-pink-light);
}

.blog-overview-dropdown-label {
  font-weight: var(--font-weight-bold);
}

.blog-overview-dropdown-chevron {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat center;
}

.blog-overview-dropdown.has-selection .blog-overview-dropdown-chevron {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
}

/* Dropdown-liste: lyserød (svag pink), ingen sort kant – samme stil til events */
.blog-overview-dropdown-list {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  min-width: 100%;
  margin: 0;
  padding: 8px 0;
  list-style: none;
  background: var(--color-pink-light);
  border: none;
  border-radius: var(--border-radius-standard);
  box-shadow: var(--shadow-standard);
  z-index: 100;
}

.blog-overview-dropdown-list[hidden] {
  display: none;
}

.blog-overview-dropdown-option {
  display: block;
  padding: 10px 16px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  text-decoration: none;
  transition: background 0.15s;
}

.blog-overview-dropdown-option:hover {
  background: rgba(255, 255, 255, 0.25);
}

.blog-overview-dropdown-option.is-selected {
  background: rgba(255, 255, 255, 0.2);
  font-weight: var(--font-weight-extrabold);
}

/* Sekundær: emne-chips */
.blog-overview-chips {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing-base) * 2);
}

.blog-overview-chip {
  display: inline-block;
  padding: 10px 20px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: 700;
  color: var(--color-black);
  text-decoration: none;
  border-radius: var(--border-radius-standard);
  background: transparent;
  transition: background-color 0.2s, color 0.2s;
}

.blog-overview-chip:hover {
  background-color: var(--color-pink-light-30);
  color: var(--color-black);
}

.blog-overview-chip.is-active {
  background-color: var(--color-pink-primary);
  color: var(--color-white);
  font-weight: 700;
}

.blog-overview-chip.is-active:hover {
  background-color: var(--color-pink-primary);
  color: var(--color-white);
}

/* Tom-tilstand */
.blog-overview-empty {
  padding: calc(var(--spacing-base) * 8) 0;
  text-align: center;
}

.blog-overview-empty-text {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 2);
}

.blog-overview-empty-action {
  display: inline-block;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-pink-primary);
  text-decoration: underline;
}

.blog-overview-empty-action:hover {
  color: var(--color-dark-blue);
}

/* Kort-grid – design: 1139px bred, 3 kol, 13px gap, kort 371×554 */
.blog-overview-cards-section {
  padding-top: calc(var(--spacing-base) * 4);
}

.blog-overview-cards-section .container {
  max-width: 1179px; /* 1139 + 40 padding = præcis 371px per kolonne */
}

.blog-overview-grid {
  list-style: none;
  margin: 0 0 calc(var(--spacing-base) * 5);
  padding: 0;
  display: grid;
  gap: 13px;
  grid-template-columns: 1fr;
}

@media (min-width: 600px) {
  .blog-overview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 960px) {
  .blog-overview-grid {
    grid-template-columns: repeat(3, 371px);
    justify-content: center;
  }
}

.blog-overview-card {
  margin: 0;
  width: 100%;
  display: flex;
}

.blog-overview-card-link {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-decoration: none;
  color: inherit;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  box-shadow: var(--shadow-standard);
  transition: transform 0.2s, box-shadow 0.2s;
}

.blog-overview-card-link:hover {
  transform: translateY(-4px);
  box-shadow: 4px 8px 12px 0 rgba(0, 0, 0, 0.15);
}

/* Billede med gradient-overlay + pill + titel/intro ovenpå overlay (ingen hvid kasse) */
.blog-overview-card-image-wrap {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  aspect-ratio: 371 / 554;
  overflow: hidden;
  background: var(--color-gray);
}

.blog-overview-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.blog-overview-card-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 200px;
  background: var(--color-pink-light-15);
}

/* Linear overlay kun i bunden: 163px højde (≈ 29 % ved 554px kort) – titel står ovenpå */
.blog-overview-card-image-gradient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0) 70%,
    rgba(255, 255, 255, 0.02) 71%,
    rgba(255, 255, 255, 0.9) 100%
  );
}

/* Målgruppe-pill på billedet (top-right), pink baggrund, sort tekst – samme tykkelse som forsiden (.story-tag) */
.blog-overview-card-pill {
  position: absolute;
  top: calc(var(--spacing-base) * 2);
  right: calc(var(--spacing-base) * 2);
  padding: 6px 12px;
  font-size: var(--font-size-badge);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  background: var(--color-pink-primary);
  color: var(--color-black);
  border-radius: 999px;
  line-height: 1.2;
}

.blog-overview-card-link .blog-overview-card-pill {
  color: var(--color-black);
}

/* Titel + intro ovenpå overlay i bunden af billedet (ingen hvid kasse) */
.blog-overview-card-text-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: calc(var(--spacing-base) * 3) calc(var(--spacing-base) * 2) calc(var(--spacing-base) * 2);
  z-index: 1;
}

.blog-overview-card-title {
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.25;
  margin: 0 0 calc(var(--spacing-base));
  color: var(--color-black);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-overview-card-intro {
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Pagination – sidetal + "Ældre →", aktiv/Ældre med lyserød cirkel, øvrige bold sort */
.blog-overview-cards-section .nav-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing-base) * 2);
  padding-top: calc(var(--spacing-base) * 2);
  padding-bottom: calc(var(--spacing-base) * 4);
}

.blog-overview-cards-section .nav-links a,
.blog-overview-cards-section .nav-links .current {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 14px;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  text-decoration: none;
  border-radius: 999px;
  transition: background-color 0.2s, color 0.2s;
}

.blog-overview-cards-section .nav-links a {
  background: transparent;
}

.blog-overview-cards-section .nav-links a:hover {
  background-color: var(--color-pink-light-30);
  color: var(--color-black);
}

.blog-overview-cards-section .nav-links .current {
  background-color: var(--color-pink-light);
  color: var(--color-black);
}

.blog-overview-cards-section .nav-links .next {
  background-color: var(--color-pink-light);
  color: var(--color-black);
  margin-left: auto;
}

.blog-overview-cards-section .nav-links .next:hover {
  background-color: var(--color-pink-light-30);
  color: var(--color-black);
}

.blog-overview-cards-section .nav-links .prev {
  margin-right: auto;
  margin-left: 0;
}

/* ============================================
   UNIVERS-SIDE
   ============================================ */

.site-main--univers {
  padding-bottom: 0;
}

/* Univers hero – samme opbygning, størrelse og titel/undertekst som forsiden, lyserød fond */
.hero-section--univers .hero-background {
  background-color: var(--color-pink-light-15);
}

.hero-section--univers .hero-content {
  /* Samme placering som forsiden: 310px fra top, venstrestillet */
  margin-top: 310px;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

/* Titel og undertekst arver .hero-title og .hero-text fra forsiden (64px, sort, uppercase, 10px mellemrum titel→brødtekst, 15px undertekst, max-width 700px) */
.hero-section--univers .hero-text {
  max-width: 700px;
}

/* Univers events (placeholder grid) */
.univers-events {
  padding: calc(var(--spacing-base) * 6) 0;
}

.univers-events-title {
  font-size: var(--font-size-section-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base));
  text-align: center;
}

.univers-events-subtitle {
  font-size: var(--font-size-eyebrow);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  margin: 0 0 calc(var(--spacing-base) * 4);
  text-align: center;
}

.univers-events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(var(--spacing-base) * 3);
  margin-bottom: calc(var(--spacing-base) * 4);
  align-items: stretch; /* Alle kort i samme række = samme højde */
}

@media (max-width: 900px) {
  .univers-events-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 500px) {
  .univers-events-grid {
    grid-template-columns: 1fr;
  }
}

.univers-event-card {
  background: var(--color-white);
  border-radius: var(--border-radius-standard);
  overflow: visible;
  box-shadow: var(--shadow-standard);
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  height: 100%; /* Fyld grid-cellen → ens højde pr. række */
}

/* Som rm-overview-card-image-wrap: kvadratisk billede – indre crop til afrunding; label udenfor */
.univers-event-card-image {
  flex-shrink: 0;
  position: relative;
  width: 100%;
  background: transparent;
  overflow: visible;
  border-radius: var(--border-radius-standard) var(--border-radius-standard) 0 0;
}

.univers-event-card-image-crop {
  aspect-ratio: 1;
  width: 100%;
  background: var(--color-pink-light-15);
  overflow: hidden;
  border-radius: inherit;
}

.univers-event-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.univers-event-card-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 200px;
  background: var(--color-pink-light-15);
}

.univers-event-card-body {
  padding: calc(var(--spacing-base) * 2);
  display: flex;
  flex-direction: column;
  flex: 1 1 auto; /* Fyld plads under billedet så knap kan sidde i bund */
  min-height: 0;
  background: var(--color-white);
  border-radius: 0 0 var(--border-radius-standard) var(--border-radius-standard);
  overflow: hidden;
}

.univers-event-card-meta {
  font-size: 12px;
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
  margin: 0 0 4px;
  min-height: 1.35em;
  line-height: 1.35;
  text-transform: uppercase;
}

.univers-event-card-meta--empty {
  visibility: hidden; /* Bevarer linjehøjde som kort med meta */
}

/* .univers-event-card-tag → .h5g-audience-pill (øverst) */

.univers-event-card-title {
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  margin: 0 0 calc(var(--spacing-base));
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1.25em * 2); /* Samme titelrum uanset 1 eller 2 linjer */
}

.univers-event-card-desc {
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 calc(var(--spacing-base));
  flex: 1 1 auto; /* Spreder lidt før knappen */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1.5em * 2); /* Fast plads til 2 linjer beskrivelse */
}

.univers-event-card-desc--empty {
  visibility: hidden;
}

.univers-event-card-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin-top: auto;
}

.univers-event-card-btn {
  align-self: flex-start;
  margin-top: 0;
}

.univers-event-card-btn--waitlist {
  width: 100%;
  max-width: 280px;
  text-align: center;
}

.univers-events-cta {
  text-align: center;
}

/* Tekstblok med billede: 1130×424 samlet, billede 528×424, tekstfelt 602×424 */
.tekstblok-med-billede {
  padding: calc(var(--spacing-base) * 6) 0;
}

.tekstblok-inner {
  display: grid;
  grid-template-columns: 528px 1fr; /* Billede 528px, tekst 602px (1130 - 528) */
  grid-template-rows: 424px;
  gap: 0;
  max-width: 1130px;
  width: 100%;
  height: 424px;
  margin: 0 auto;
  border-radius: var(--border-radius-standard);
  overflow: hidden;
  box-shadow: var(--shadow-standard);
  background: var(--color-white);
}

.tekstblok--image-right .tekstblok-inner {
  direction: rtl;
}

.tekstblok--image-right .tekstblok-inner > * {
  direction: ltr;
}

.tekstblok-image-wrap {
  height: 424px;
  min-height: 0;
  background: var(--color-gray);
  overflow: hidden;
}

.tekstblok-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tekstblok-image-placeholder {
  width: 100%;
  height: 100%;
  min-height: 424px;
  background: var(--color-pink-light-15);
}

.tekstblok-text-wrap {
  width: 100%;
  height: 424px;
  min-height: 0;
  padding: calc(var(--spacing-base) * 4);
  background: var(--color-pink-light);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing-base) * 2);
  overflow: auto;
  box-sizing: border-box;
}

.tekstblok-tag {
  display: inline-block;
  font-size: 12px;
  font-weight: var(--font-weight-bold);
  background: var(--color-pink-primary);
  color: var(--color-white);
  padding: 4px 12px;
  border-radius: 999px;
  align-self: flex-start;
}

.tekstblok-heading {
  font-size: clamp(24px, 2.5vw, 32px);
  font-weight: var(--font-weight-black);
  color: var(--color-black);
  margin: 0;
  line-height: 1.25;
}

.tekstblok-content {
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  line-height: var(--line-height-body-alt);
}

.tekstblok-content p {
  margin: 0 0 1em;
}

.tekstblok-content p:last-child {
  margin-bottom: 0;
}

@media (max-width: 1200px) {
  .tekstblok-inner {
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  .tekstblok-inner {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    height: auto;
    min-height: 0;
    direction: ltr;
  }
  .tekstblok-image-wrap,
  .tekstblok-text-wrap {
    height: auto;
    min-height: 280px;
  }
  .tekstblok-image-placeholder {
    min-height: 280px;
  }
  .tekstblok--image-right .tekstblok-inner {
    direction: ltr;
  }
}

/* Univers 3 historier – bruger samme grid som forsiden (.stories-section .stories-grid) */
.univers-stories-empty {
  text-align: center;
  margin: 0 0 calc(var(--spacing-base) * 4);
  color: var(--color-black);
}

/* Signatur event – single layout (blog med emne Signatur events) */
.signatur-event-single {
  padding-top: calc(var(--spacing-base) * 4);
  padding-bottom: calc(var(--spacing-base) * 6);
}
.signatur-event-hero {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(var(--spacing-base) * 2);
  margin-bottom: calc(var(--spacing-base) * 4);
  align-items: start;
}
@media (min-width: 768px) {
  .signatur-event-hero:not(.signatur-event-hero--no-image) {
    grid-template-columns: minmax(200px, 360px) 1fr;
    gap: calc(var(--spacing-base) * 3);
    align-items: end;
  }
}
.signatur-event-hero--no-image {
  grid-template-columns: 1fr;
}
.signatur-event-hero__image {
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 8px;
  background: var(--color-neutral-100, #f0f0f0);
}
.signatur-event-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.signatur-event-hero__text {
  min-width: 0;
}
.signatur-event-eyebrow {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-pink-primary, #f1459b);
  margin-bottom: 0.5em;
}
.signatur-event-title {
  font-size: clamp(24px, 3vw, 36px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  color: var(--color-black);
  margin: 0;
}
.signatur-event-content {
  margin-bottom: calc(var(--spacing-base) * 5);
}
.signatur-event-grid-section {
  margin-top: calc(var(--spacing-base) * 4);
}
/* Kolonne-layout som gamle site: i hver kolonne samme bredde, forskellig højde. Ingen topkant. */
.signatur-event-grid-section .signatur-event-grid,
.signatur-event-single .signatur-event-grid {
  column-count: 3;
  column-gap: 24px;
  position: relative;
  width: 100%;
}
@media (max-width: 767px) {
  .signatur-event-grid-section .signatur-event-grid,
  .signatur-event-single .signatur-event-grid {
    column-count: 2;
  }
}
.signatur-event-grid-section .signatur-event-grid-item,
.signatur-event-single .signatur-event-grid-item {
  break-inside: avoid;
  page-break-inside: avoid;
  margin-bottom: 24px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--color-neutral-100, #f0f0f0);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.signatur-event-grid-section .signatur-event-grid-item:last-child,
.signatur-event-single .signatur-event-grid-item:last-child {
  margin-bottom: 0;
}
/* Billeder i deres naturlige format (høj/tvær) – grid blander formater */
.signatur-event-grid-item--photo .signatur-event-grid-img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: top;
}
/* Video: standard tværformat; fylder sin celle */
.signatur-event-grid-item--video .signatur-event-grid-video {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: top;
}
.signatur-event-grid-video,
.signatur-event-grid-audio {
  width: 100%;
  display: block;
}
/* Lyd med coverbillede: cover i mediets eget format, lyd nedenunder */
.signatur-event-grid-item--audio {
  aspect-ratio: auto;
}
.signatur-event-grid-audio-cover {
  overflow: hidden;
  flex-shrink: 0;
}
.signatur-event-grid-audio-cover .signatur-event-grid-img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: top;
}
.signatur-event-grid-audio-wrap {
  padding: calc(var(--spacing-base) * 2);
  flex: 0 0 auto;
}
.signatur-event-grid-audio {
  width: 100%;
  min-height: 48px;
}

/* ========== Pige-event enkeltside (/event/{id}/) ========== */
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Enkeltside pige-event — Figma: main 549×316, thumbs 175×177, overlay #F3B8D4 @ 51% */
.h5g-girls-event-single {
  /*
   * Mellem galleri og info-kolonne (column-gap). Figma kan angive 13px auto-layout mellem to frames;
   * højre side har ofte også indvendig padding — visuelt i mockup svarer det til ~24–32px fra billedkant til tekst.
   */
  --h5g-event-hero-gap: clamp(22px, 3vw, 32px);
  --h5g-event-main-radius: 10px; /* Figma / design tokens */
  --h5g-event-thumb-gap: 12px;
  /* Afstand galleri → citat i venstre stack = flex gap + citat-margin; citat → RM bruger samme samlede værdi */
  --h5g-event-quote-margin-top: clamp(0.75rem, 2vw, 1.25rem);
  --h5g-event-gallery-to-quote-space: calc(var(--h5g-event-thumb-gap) + var(--h5g-event-quote-margin-top));
  --h5g-event-main-w: 549px;
  --h5g-event-main-h: 316px;
  --h5g-event-thumb-w: 175px;
  --h5g-event-thumb-h: 177px;
  --h5g-event-thumb-overlay: rgba(243, 184, 212, 0.51);
  padding: calc(var(--spacing-base) * 3) 0 calc(var(--spacing-base) * 6);
}

.h5g-girls-event-back {
  margin: 0 0 calc(var(--spacing-base) * 2.5);
  font-size: 15px;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.01em;
}

.h5g-girls-event-back a {
  color: var(--color-black);
  text-decoration: none;
}

.h5g-girls-event-back a:hover {
  text-decoration: underline;
}

.h5g-girls-event-article {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}

/*
 * Hero: 2 kolonner × én grid-række (medie-stack + .h5g-girls-event-hero-right). Højre er flex-kolonne top→bund
 * så fanehøjde ikke deler grid-rækker med venstre (undgår hop af titel, CTA, faner, nyhedsbrev).
 */
.h5g-girls-event-hero-grid {
  display: grid;
  /* Ikke fr på venstre: galleri max 549px — ellers fylder “kolonne 1” mere end billederne og der opstår falsk “gab” før 13px column-gap */
  grid-template-columns: minmax(0, min(100%, var(--h5g-event-main-w))) minmax(0, 1fr);
  /* Én række: venstre medie-stack + højre flex-kolonne — undgår delte grid-rækker der hopper når fanehøjde skifter */
  grid-template-rows: auto;
  grid-template-areas:
    "hero-media hero-right";
  column-gap: var(--h5g-event-hero-gap);
  row-gap: 0;
  align-items: start;
  margin-bottom: calc(var(--spacing-base) * 3);
}

/* RM + nyhedsbrev: samme layout — nl ligger inde i .h5g-girls-event-hero-right */
.h5g-girls-event-hero-grid--rm-nl-row {
  grid-template-rows: auto;
  grid-template-areas:
    "hero-mt hero-right";
}

.h5g-girls-event-hero-right {
  grid-area: hero-right;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  min-width: 0;
  width: 100%;
}

.h5g-girls-event-hero-right > .h5g-girls-event-hero-newsletter-slot {
  align-self: stretch;
  min-width: 0;
  width: 100%;
}

.h5g-girls-event-hero-newsletter-slot--empty {
  min-height: 0;
}

/* Venstre: ét område over begge rækker — intern flex-gap = præcis afstand hovedbillede ↔ thumbnails */
.h5g-girls-event-hero-grid > .h5g-girls-event-hero-media-stack {
  grid-area: hero-media;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--h5g-event-thumb-gap);
  min-width: 0;
  max-width: var(--h5g-event-main-w);
  align-self: start;
}

/* Skal komme EFTER hero-media — ellers overskriver den og hero-mt findes ikke i --rm-nl-row template */
.h5g-girls-event-hero-grid--rm-nl-row > .h5g-girls-event-hero-media-stack {
  grid-area: hero-mt;
}

.h5g-girls-event-hero-media-stack .h5g-girls-event-hero-thumbs-slot {
  min-width: 0;
  width: 100%;
}

.h5g-girls-event-hero-right > .h5g-girls-event-hero-info-top {
  flex: 0 0 auto;
  min-width: 0;
  width: 100%;
}

.h5g-girls-event-hero-right > .h5g-girls-event-hero-info-cta {
  flex: 0 0 auto;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  min-width: 0;
  width: 100%;
  /* Luft mellem meta-blok og knap — holdt moderat så beskrivelse/faner kan starte højere */
  margin-top: clamp(0.85rem, 2.2vw, 1.35rem);
}

/* Højre kolonne: beskrivelse / faner (under CTA), samme kolonne som titel */
.h5g-girls-event-hero-right > .h5g-girls-event-content--hero-column {
  flex: 0 1 auto;
  align-self: stretch;
  min-width: 0;
  width: 100%;
  max-width: none;
  /* Tæt under CTA — hele beskrivelsesblok/faner flyttes op */
  margin-top: clamp(0.2rem, 0.8vw, 0.45rem);
  padding-top: clamp(0.2rem, 0.7vw, 0.4rem);
}

/* Citat (citatmaskine) — Figma: hjørner 10px, højde 244px, skygge 4/4/4 @ 17%, tekstfelt #F3B8D4 15%, citat Black 24px */
.h5g-girls-event-quote {
  --h5g-quote-pink: rgba(243, 184, 212, 0.15);
  --h5g-quote-radius: 10px;
  --h5g-quote-h: 244px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  max-width: var(--h5g-event-main-w);
  width: 100%;
  height: var(--h5g-quote-h);
  margin-top: var(--h5g-event-quote-margin-top);
  padding: 0;
  border: none;
  border-radius: var(--h5g-quote-radius);
  overflow: hidden;
  background: var(--color-white, #fff);
  box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.17);
  margin-bottom: 0;
}

.h5g-girls-event-quote--no-image {
  grid-template-columns: 1fr;
}

.h5g-girls-event-quote__media {
  position: relative;
  min-height: 0;
  height: 100%;
  background: #e8e8e8;
}

.h5g-girls-event-quote__img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}

/* Tekst til højre: citat vertikalt centreret på kortet; navn lidt op fra bunden (som Figma) */
.h5g-girls-event-quote__body {
  position: relative;
  text-align: left;
  min-width: 0;
  height: 100%;
  min-height: 0;
  /* Ekstra bund så navnet ikke sidder i kanten */
  padding: 12px 14px 36px 16px;
  box-sizing: border-box;
  background: var(--h5g-quote-pink);
  overflow: hidden;
}

.h5g-girls-event-quote__text-wrap {
  position: absolute;
  left: 16px;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  /* Plads til attribution under uden overlap */
  max-height: calc(100% - 52px);
  overflow: hidden;
}

.h5g-girls-event-quote__text {
  margin: 0;
  padding: 0;
  border: none;
  font-family: var(--font-family-primary);
  font-size: 24px;
  font-weight: var(--font-weight-black);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: var(--color-black);
  font-style: normal;
}

.h5g-girls-event-quote__attr {
  position: absolute;
  left: 16px;
  right: 14px;
  bottom: 18px;
  margin: 0;
  padding: 0;
  font-family: var(--font-family-primary);
  font-size: 11px;
  font-weight: var(--font-weight-black);
  line-height: 1.25;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-black);
}

@media (max-width: 560px) {
  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) {
    grid-template-columns: 1fr;
    height: auto;
    min-height: var(--h5g-quote-h);
  }

  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) .h5g-girls-event-quote__media {
    height: 140px;
  }

  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) .h5g-girls-event-quote__img {
    height: 100%;
  }

  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) .h5g-girls-event-quote__body {
    display: flex;
    flex-direction: column;
    position: relative;
    height: auto;
    min-height: 160px;
    padding: 20px 16px 42px;
    overflow: visible;
  }

  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) .h5g-girls-event-quote__text-wrap {
    position: static;
    transform: none;
    max-height: none;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    min-height: 0;
    overflow: visible;
  }

  .h5g-girls-event-quote:not(.h5g-girls-event-quote--no-image) .h5g-girls-event-quote__attr {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
}

/* Pige-event (aktivt): RM + nyhedsbrev — samme kolonnebredder/gap som .h5g-girls-event-hero-grid (mock) */
.h5g-girls-event-rm-nl {
  display: grid;
  grid-template-columns: minmax(0, min(100%, var(--h5g-event-main-w))) minmax(0, 1fr);
  column-gap: var(--h5g-event-hero-gap);
  row-gap: clamp(1.25rem, 3vw, 2rem);
  align-items: start;
  width: 100%;
  max-width: 100%;
  margin: clamp(2rem, 5vw, 3.5rem) 0 0;
  padding-top: clamp(1.5rem, 4vw, 2.5rem);
}

/* RM efter citat i samme flex-stack: flex-gap giver thumb-gap; tilføj kun citatets “top”-luft så afstanden matcher */
.h5g-girls-event-rm-nl__rm--under-quote {
  margin-top: var(--h5g-event-quote-margin-top);
  margin-bottom: 0;
  width: 100%;
}

/* RM uden citat (kun galleri): kun stack-gap mellem elementer */
.h5g-girls-event-rm-nl__rm--after-media {
  margin-top: 0;
  margin-bottom: 0;
  width: 100%;
}

.h5g-girls-event-rm-nl__rm--under-quote .h5g-girls-event-rm-nl__rm-title,
.h5g-girls-event-rm-nl__rm--after-media .h5g-girls-event-rm-nl__rm-title {
  margin-top: 0;
}

/* Nyhedsbrev i hero-grid: ingen ekstra ydre luft — bund sammen med RM-navne */
.h5g-girls-event-rm-nl__newsletter--in-grid {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: none;
}

.h5g-girls-event-rm-nl--single-col {
  grid-template-columns: 1fr;
  max-width: 100%;
}

.h5g-girls-event-rm-nl--single-col .h5g-girls-event-rm-nl__newsletter--full {
  max-width: 42rem;
}

.h5g-girls-event-rm-nl__rm-title {
  font-family: var(--font-family-primary);
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: var(--font-weight-black);
  line-height: 1.25;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin: 0 0 clamp(1rem, 2.5vw, 1.5rem);
  color: var(--color-black);
}

/* Sponsor/fond under rollemodeller (API: fund) */
.h5g-girls-event-sponsor {
  margin: clamp(1.25rem, 3vw, 2rem) 0 0;
  padding: 0;
  width: 100%;
  max-width: min(100%, var(--h5g-event-main-w));
}

.h5g-girls-event-rm-nl__rm .h5g-girls-event-sponsor {
  margin-top: clamp(1.25rem, 3vw, 2rem);
}

.h5g-girls-event-sponsor__title {
  font-family: var(--font-family-primary);
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: var(--font-weight-black);
  line-height: 1.25;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  margin: 0 0 clamp(0.65rem, 1.5vw, 0.85rem);
  color: var(--color-black);
}

.h5g-girls-event-sponsor__body {
  margin: 0;
}

.h5g-girls-event-sponsor__logo {
  display: block;
  max-width: min(180px, 100%);
  width: auto;
  height: auto;
  object-fit: contain;
}

.h5g-girls-event-sponsor__name {
  margin: 0;
  font-family: var(--font-family-primary);
  font-size: 1rem;
  font-weight: var(--font-weight-semibold);
  color: var(--color-black);
}

.h5g-girls-event-rm-nl__sponsor-col {
  min-width: 0;
  max-width: min(100%, var(--h5g-event-main-w));
}

/* Flex: samme gap mellem profiler som ved 4 stk — ingen udstrækning over hele bredden */
.h5g-girls-event-rm-nl__rm-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: clamp(12px, 2vw, 20px);
}

.h5g-girls-event-rm-nl__rm-item {
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
  width: 121px;
  min-width: 0;
}

.h5g-girls-event-rm-nl__rm-media {
  width: 100%;
  max-width: 121px;
  margin: 0;
  text-align: center;
}

.h5g-girls-event-rm-nl__rm-media .h5g-girls-event-rm-photo,
.h5g-girls-event-rm-nl__rm-media .h5g-girls-event-rm-photo--placeholder {
  width: 100%;
  max-width: 121px;
  height: auto;
  aspect-ratio: 121 / 122;
}

.h5g-girls-event-rm-nl__nl-title {
  font-family: var(--font-family-primary);
  font-size: clamp(18px, 2vw, 22px);
  font-weight: var(--font-weight-black);
  line-height: 1.2;
  margin: 0 0 0.65em;
  color: var(--color-black);
}

.h5g-girls-event-rm-nl__nl-lead {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 1.45;
  margin: 0 0 1.25rem;
  color: var(--color-black);
  max-width: 36em;
}

.h5g-girls-event-rm-nl__iframe {
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.h5g-girls-event-rm-nl__form {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 100%;
}

/* Nyhedsbrev i højre kolonne: felter 342px, knap holder højrekant med felterne */
.h5g-girls-event-rm-nl__newsletter--in-grid .h5g-girls-event-rm-nl__form {
  max-width: min(342px, 100%);
  align-items: stretch;
}

.h5g-girls-event-rm-nl__newsletter--in-grid .h5g-girls-event-rm-nl__input {
  max-width: min(342px, 100%);
}

.h5g-girls-event-rm-nl__newsletter--in-grid .h5g-girls-event-rm-nl__nl-footer {
  width: 100%;
  max-width: min(342px, 100%);
  box-sizing: border-box;
}

/* Figma: felter #F3B8D4 @ 60 % (ikke 15 %-quote-pink) */
.h5g-girls-event-rm-nl__input {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 12px 14px;
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  border: none;
  border-radius: var(--border-radius-standard, 8px);
  background-color: rgba(243, 184, 212, 0.6);
  color: var(--color-black);
}

.h5g-girls-event-rm-nl__input::placeholder {
  color: rgba(0, 0, 0, 0.45);
}

.h5g-girls-event-rm-nl__input:focus {
  outline: 2px solid var(--color-pink-primary);
  outline-offset: 2px;
}

.h5g-girls-event-rm-nl__nl-footer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px 20px;
  margin-top: 4px;
}

.h5g-girls-event-rm-nl__consent {
  flex: 1 1 200px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
}

.h5g-girls-event-rm-nl__consent-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  font-family: var(--font-family-primary);
  font-size: 13px;
  font-weight: var(--font-weight-medium);
  line-height: 1.35;
  color: var(--color-black);
  margin: 0;
}

.h5g-girls-event-rm-nl__checkbox {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex-shrink: 0;
  accent-color: var(--color-pink-primary);
}

.h5g-girls-event-rm-nl__privacy-link {
  display: block;
  align-self: flex-start;
  margin-top: 0;
  /* Venstrekant = start af «Ja tak …» (checkbox 18px + label gap 10px) */
  margin-left: calc(18px + 10px);
  font-size: 12px;
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  text-decoration: underline;
}

.h5g-girls-event-rm-nl__privacy-link:hover {
  color: var(--color-pink-primary);
}

.h5g-girls-event-rm-nl__submit {
  flex-shrink: 0;
  align-self: flex-end;
}

.h5g-girls-event-rm-nl__success {
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  margin: 12px 0 0;
  color: var(--color-black);
}

@media (max-width: 900px) {
  .h5g-girls-event-rm-nl {
    grid-template-columns: 1fr;
  }

  .h5g-girls-event-rm-nl--single-col {
    max-width: none;
  }

  /* Samme idé på mobil: tætte kolonner til venstre, ikke 1fr der spreder */
  .h5g-girls-event-rm-nl__rm-item {
    width: min(121px, 42vw);
  }
}

/* Ingen billeder/citat-kolonne: kun højre stak (info + CTA + indhold + evt. nl) */
.h5g-girls-event-hero-grid--no-media {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-template-areas: "hero-right";
}

@media (max-width: 900px) {
  .h5g-girls-event-hero-grid:not(.h5g-girls-event-hero-grid--no-media) {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    grid-template-areas:
      "hero-media"
      "hero-right";
  }

  .h5g-girls-event-hero-grid--rm-nl-row:not(.h5g-girls-event-hero-grid--no-media) {
    grid-template-rows: auto auto;
    grid-template-areas:
      "hero-mt"
      "hero-right";
  }

  .h5g-girls-event-hero-grid:not(.h5g-girls-event-hero-grid--no-media) .h5g-girls-event-hero-right > .h5g-girls-event-hero-info-cta {
    margin-top: clamp(0.65rem, 2.2vw, 1.1rem);
  }

  .h5g-girls-event-hero-grid:not(.h5g-girls-event-hero-grid--no-media) .h5g-girls-event-hero-right > .h5g-girls-event-content--hero-column {
    margin-top: clamp(0.2rem, 1.2vw, 0.5rem);
    padding-top: clamp(0.2rem, 1vw, 0.45rem);
  }
}

/* Shell om galleri: label må stikke uden for overflow:hidden på .gallery-main (Figma: 26px højre, 7px op) */
.h5g-girls-event-hero-image-shell {
  position: relative;
  overflow: visible;
  width: 100%;
  max-width: var(--h5g-event-main-w);
  align-self: start;
}

/* Hovedbillede: 549 × 316 (Figma) */
.h5g-girls-event-gallery-main {
  position: relative;
  border-radius: var(--h5g-event-main-radius);
  overflow: hidden;
  background: #e8e8e8;
  width: 100%;
  max-width: var(--h5g-event-main-w);
  aspect-ratio: 549 / 316;
  max-height: none;
}

/* Genbrugelig kapacitets-label (Figma: 169×46, 10px radius; tekst Black 16) */
.h5g-event-capacity-label {
  position: absolute;
  z-index: 6;
  /* Stikker lidt ud over billedet (højre + op) for blikfang — stadig inden for hero-shell (overflow: visible) */
  top: -14px;
  right: -14px;
  box-sizing: border-box;
  width: 169px;
  min-height: 46px;
  height: auto;
  padding: 6px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #ffffff;
  color: #000000;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12);
  font-family: var(--font-family-primary);
  font-size: 16px;
  font-weight: var(--font-weight-black);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
  pointer-events: none;
}

.h5g-event-capacity-label__line1,
.h5g-event-capacity-label__line2 {
  display: block;
  max-width: 100%;
}

/* To linjer: “Fuldt booket” + “kom på venteliste” */
.h5g-event-capacity-label--full {
  height: auto;
  min-height: 46px;
  padding: 8px 10px;
}

.h5g-event-capacity-label__line1 {
  font-weight: var(--font-weight-black);
  font-size: 16px;
  line-height: 1.2;
}

.h5g-event-capacity-label__line2 {
  font-size: 16px;
  font-weight: var(--font-weight-black);
  margin-top: 4px;
  line-height: 1.2;
  letter-spacing: 0;
}

.h5g-event-capacity-label--spots .h5g-event-capacity-label__text {
  display: block;
}

@media (max-width: 520px) {
  .h5g-event-capacity-label {
    /* Mindre udstik på små skærme så den ikke klippes af viewport */
    right: -6px;
    top: -8px;
    width: min(169px, calc(100% - 12px));
  }

  .h5g-event-capacity-label--full {
    height: auto;
  }

  .h5g-event-activity-label {
    left: -6px;
    top: -8px;
    max-width: min(180px, calc(100% - 12px));
  }
}

/* Aktivitet (mor/datter m.m.): samme linje som kapacitet, venstre side — farve styles senere */
.h5g-event-activity-label {
  position: absolute;
  z-index: 6;
  top: -14px;
  left: -14px;
  right: auto;
  box-sizing: border-box;
  width: auto;
  max-width: calc(100% - 24px);
  min-height: 46px;
  height: auto;
  padding: 6px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #f3b8d4;
  color: #000000;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12);
  font-family: var(--font-family-primary);
  font-size: 16px;
  font-weight: var(--font-weight-black);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
  pointer-events: none;
}

.h5g-event-activity-label__text {
  display: block;
  max-width: 100%;
}

/* Venteliste CTA + dialog */
.h5g-girls-event-cta-wrap--waitlist {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}

.h5g-girls-event-fuldt-booket {
  margin: 0;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-black);
}

.h5g-waitlist-dialog {
  padding: 0;
  border: none;
  border-radius: var(--border-radius-standard);
  max-width: 440px;
  width: calc(100vw - 32px);
  background: var(--color-white);
  box-shadow: var(--shadow-standard);
}

.h5g-waitlist-dialog::backdrop {
  background: rgba(0, 0, 0, 0.45);
}

.h5g-waitlist-dialog__inner {
  position: relative;
  padding: calc(var(--spacing-base) * 3);
}

.h5g-waitlist-dialog__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  color: var(--color-black);
  border-radius: 50%;
}

.h5g-waitlist-dialog__close:hover {
  background: var(--color-pink-light-15);
}

.h5g-waitlist-dialog__title {
  margin: 0 0 8px;
  padding-right: 40px;
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
}

.h5g-waitlist-dialog__lead {
  margin: 0 0 calc(var(--spacing-base) * 2);
  font-size: 14px;
  line-height: 1.5;
  color: var(--color-black);
}

.h5g-waitlist-dialog__label {
  display: block;
  font-size: 12px;
  font-weight: var(--font-weight-bold);
  margin-bottom: 4px;
  text-transform: uppercase;
}

.h5g-waitlist-dialog__input {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: calc(var(--spacing-base) * 1.5);
  padding: 10px 12px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  font: inherit;
}

.h5g-waitlist-dialog__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: calc(var(--spacing-base));
}

/* Tilmelding (pige-event modal) — centreret (resets kan ellers fjerne dialogens margin:auto) */
.h5g-girls-register-dialog,
.h5g-girls-register-success-dialog {
  /* Samme streg som temaets øvrige form-checkboxes (2px sort) */
  --h5g-choice-border: 2px solid var(--color-black);
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  border: none;
  border-radius: var(--border-radius-standard);
  width: min(520px, calc(100vw - 32px));
  max-width: min(520px, calc(100vw - 32px));
  max-height: calc(100vh - 48px);
  overflow: hidden;
  background: var(--color-white);
  box-shadow: var(--shadow-standard);
}

.h5g-girls-register-dialog::backdrop,
.h5g-girls-register-success-dialog::backdrop {
  background: rgba(0, 0, 0, 0.45);
}

.h5g-girls-register-dialog__inner {
  position: relative;
  padding: calc(var(--spacing-base) * 3);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  box-sizing: border-box;
}

.h5g-girls-register-dialog__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  color: var(--color-black);
  border-radius: 50%;
  z-index: 2;
}

.h5g-girls-register-dialog__close:hover {
  background: var(--color-pink-light-15);
}

.h5g-girls-register-dialog__title {
  margin: 0 0 8px;
  padding-right: 40px;
  font-size: var(--font-size-card-title);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  line-height: 1.2;
}

.h5g-girls-register-dialog__event {
  margin: 0 0 calc(var(--spacing-base) * 1.5);
  font-size: 14px;
  font-weight: var(--font-weight-bold);
  line-height: 1.35;
  text-transform: uppercase;
}

.h5g-girls-register-dialog__error {
  margin: 0 0 12px;
  padding: 10px 12px;
  background: #fde8e8;
  color: #7f1d1d;
  border-radius: 8px;
  font-size: 14px;
}

.h5g-girls-register-dialog__label {
  display: block;
  font-size: 12px;
  font-weight: var(--font-weight-bold);
  margin-bottom: 4px;
  text-transform: uppercase;
}

.h5g-girls-register-dialog__req-legend {
  margin: 0 0 10px;
  font-size: 13px;
  opacity: 0.88;
}

.h5g-gr-req {
  color: #b91c1c;
  font-weight: 700;
}

.h5g-girls-register-dialog__hint {
  margin: -2px 0 6px;
  font-size: 13px;
  color: var(--color-black);
  opacity: 0.85;
}

.h5g-girls-register-dialog__input,
.h5g-girls-register-dialog__textarea {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: calc(var(--spacing-base) * 1.25);
  padding: 10px 12px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 8px;
  font: inherit;
  background: var(--color-pink-light-15);
}

.h5g-girls-register-dialog__fieldset {
  border: none;
  margin: 0 0 18px;
  margin-inline: 0;
  padding: 0;
  min-inline-size: 0;
  display: block;
}

.h5g-girls-register-dialog__legend {
  display: block;
  width: 100%;
  font-size: 13px;
  font-weight: var(--font-weight-bold);
  margin: 0 0 6px;
  padding: 0;
  line-height: 1.25;
}

.h5g-girls-register-dialog__radio-group {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 22px;
  margin: 0;
  padding: 0;
  flex-wrap: nowrap;
}

.h5g-girls-register-dialog__radio {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 12px;
  font-weight: var(--font-weight-bold);
  line-height: 22px;
  cursor: pointer;
  min-height: 22px;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input {
  appearance: none;
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  margin: 0;
  box-sizing: border-box;
  border: var(--h5g-choice-border) !important;
  border-radius: 0 !important;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 22px;
  position: relative;
  transition: none;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input:checked::before {
  content: none !important;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 9px;
  height: 5px;
  margin: 0;
  border-left: 2px solid #e43ea0;
  border-bottom: 2px solid #e43ea0;
  box-sizing: content-box;
  transform: translate(-50%, -55%) rotate(-45deg) scale(0);
  transform-origin: center center;
  transition: transform 0.12s ease-in-out;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input:checked::after {
  transform: translate(-50%, -55%) rotate(-45deg) scale(1);
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input:focus-visible {
  outline: 2px solid #e43ea0;
  outline-offset: 2px;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__radio-input:checked {
  border: var(--h5g-choice-border) !important;
}

.h5g-girls-register-dialog__radio-text {
  display: inline-block;
  font-size: 11px;
  font-weight: var(--font-weight-bold);
  text-transform: none;
  line-height: 22px;
  vertical-align: middle;
}

.h5g-girls-register-dialog__fieldset > .h5g-girls-register-dialog__hint {
  margin: 4px 0 8px;
  font-size: 13px;
}

.h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__media-topline {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 12px;
}

.h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__media-copy {
  flex: 1 1 auto;
}

.h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__legend {
  margin: 0;
}

.h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__radio-group {
  flex: 0 0 auto;
  margin-top: 0;
  gap: 10px;
}

.h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__media-copy > .h5g-girls-register-dialog__hint {
  margin: 2px 0 0;
}

@media (max-width: 720px) {
  .h5g-girls-register-dialog__fieldset--media .h5g-girls-register-dialog__media-topline {
    flex-direction: column;
    gap: 8px;
  }
}

.h5g-girls-register-dialog__check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 14px;
  font-size: 13px;
  line-height: 1.45;
  cursor: pointer;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input {
  appearance: none;
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  margin: 0;
  margin-top: 1px;
  box-sizing: border-box;
  border: var(--h5g-choice-border) !important;
  border-radius: 0;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 22px;
  position: relative;
  transition: none;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 9px;
  height: 5px;
  margin: 0;
  border-left: 2px solid #e43ea0;
  border-bottom: 2px solid #e43ea0;
  box-sizing: content-box;
  transform: translate(-50%, -55%) rotate(-45deg) scale(0);
  transform-origin: center center;
  transition: transform 0.12s ease-in-out;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input:checked {
  background: #fff;
  border: var(--h5g-choice-border) !important;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input:checked::after {
  transform: translate(-50%, -55%) rotate(-45deg) scale(1);
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input:hover {
  border: var(--h5g-choice-border) !important;
}

.h5g-girls-register-dialog .h5g-girls-register-dialog__check-input:focus-visible {
  outline: 2px solid #e43ea0;
  outline-offset: 2px;
}

.h5g-girls-register-dialog__privacy-text {
  font-size: 13px;
  font-weight: var(--font-weight-bold);
  line-height: 1.35;
}

.h5g-girls-register-dialog__privacy-link {
  font-size: 13px;
  font-style: normal;
  font-weight: var(--font-weight-bold);
  color: #2a2a2a;
  text-decoration: underline;
  white-space: nowrap;
}

.h5g-girls-register-dialog__privacy-link:visited,
.h5g-girls-register-dialog__privacy-link:hover,
.h5g-girls-register-dialog__privacy-link:focus,
.h5g-girls-register-dialog__privacy-link:active {
  color: #2a2a2a;
}

.h5g-girls-register-dialog__consent-help {
  margin: -8px 0 18px 32px;
  font-size: 13px;
  line-height: 1.35;
  color: #eb4fa7;
}

.h5g-girls-register-dialog__check--privacy {
  margin-bottom: 8px;
}

.h5g-girls-register-dialog__check--privacy .h5g-girls-register-dialog__check-input {
  margin-top: 2px;
}

.h5g-girls-register-dialog__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: calc(var(--spacing-base) * 1.5);
}

.h5g-girls-register-dialog__section-label {
  margin: 18px 0 8px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-dark-blue, #190D68);
}

.h5g-girls-register-dialog__actions .btn-primary:disabled {
  background: #F3B8D4 !important;
  border-color: #F3B8D4 !important;
  color: var(--color-black) !important;
  opacity: 0.5;
  filter: none;
  cursor: not-allowed;
  box-shadow: none;
}

.h5g-girls-register-dialog__lead {
  margin: 0 0 calc(var(--spacing-base) * 2);
  font-size: 15px;
  line-height: 1.5;
  white-space: pre-line;
}

.h5g-girls-register-success-dialog .h5g-girls-register-dialog__inner {
  text-align: left;
}

.h5g-girls-register-success-dialog .btn-primary {
  margin-top: calc(var(--spacing-base));
}

/* Pile: cirkler midt på venstre/højre kant (Figma) */
.h5g-girls-event-gallery-navs {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
}

.h5g-girls-event-gallery-nav {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* Ikon 24×24 (Figma); lidt større boks = bedre klikområde */
  width: 40px;
  height: 40px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: var(--color-black);
  cursor: pointer;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  transform: translateY(-50%);
  transition: opacity 0.15s ease, transform 0.1s ease;
}

.h5g-girls-event-gallery-prev {
  left: 3px;
}

.h5g-girls-event-gallery-next {
  right: 3px;
}

.h5g-girls-event-gallery-nav svg {
  display: block;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  color: #111;
  /* Undgå drop-shadow — kan give “sort cirkel”/omvendt look i nogle browsere */
}

.h5g-girls-event-gallery-nav:hover {
  opacity: 0.88;
}

.h5g-girls-event-gallery-nav:focus-visible {
  outline: 2px solid var(--color-pink-primary);
  outline-offset: 3px;
  opacity: 1;
}

.h5g-girls-event-gallery-nav:active {
  transform: translateY(-50%) scale(0.94);
  opacity: 1;
}

.h5g-girls-event-hero-img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Tre små: 175 × 177 hver — rækken matcher main-bredden 549 (175×3 + 12×2) */
.h5g-girls-event-gallery-thumbs {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--h5g-event-thumb-gap);
  width: 100%;
  max-width: var(--h5g-event-main-w);
  justify-content: space-between;
}

.h5g-girls-event-gallery-thumb {
  position: relative;
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: var(--h5g-event-main-radius);
  overflow: hidden;
  cursor: pointer;
  background: #ececec;
  box-sizing: border-box;
  flex: 1 1 calc((100% - 2 * var(--h5g-event-thumb-gap)) / 3);
  min-width: 0;
  max-width: var(--h5g-event-thumb-w);
  aspect-ratio: 175 / 177;
  line-height: 0;
  font: inherit;
  color: inherit;
  /* Ring uden at ændre indre boks (undgår at overlay ser større ud end billedet) */
  box-shadow: 0 0 0 2px transparent;
  transition: box-shadow 0.15s ease;
}

/* Overlay F3B8D4 51% — samme clip som billedet (begge absolute inset 0) */
.h5g-girls-event-gallery-thumb::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: var(--h5g-event-main-radius);
  background: var(--h5g-event-thumb-overlay);
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.h5g-girls-event-gallery-thumb.is-active::after {
  opacity: 0;
}

.h5g-girls-event-gallery-thumb img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Ingen pink ring ved hover — aktivt billede vises via ::after-overlay (is-active). */
.h5g-girls-event-gallery-thumb:focus-visible {
  outline: 2px solid var(--color-black);
  outline-offset: 3px;
}

.h5g-girls-event-hero-info-top {
  min-width: 0;
  padding-top: 4px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  /* Ingen ensartet gap: tættere mellem målgruppe → titel → lokation/dato (Figma) */
  gap: 0;
}

.h5g-girls-event-hero-info-top .h5g-girls-event-audiences {
  margin-bottom: 6px;
}

.h5g-girls-event-hero-info-top .h5g-girls-event-title {
  margin: 0 0 6px;
}

.h5g-girls-event-hero-info-top .h5g-girls-event-subtitle {
  margin: 0 0 clamp(0.55rem, 1.1vw, 0.85rem);
}

.h5g-girls-event-meta-icons {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

.h5g-girls-event-meta-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: clamp(6px, 1vw, 10px);
  /* Figma: samme som lokation/dato under titel — ExtraBold 14 */
  font-size: 14px;
  line-height: 1.25;
}

.h5g-girls-event-meta-row:last-child {
  margin-bottom: 0;
}

.h5g-girls-event-meta-icon {
  flex-shrink: 0;
  color: var(--color-black);
  opacity: 0.88;
  margin-top: 1px;
}

.h5g-girls-event-meta-icon--lucide svg {
  display: block;
  vertical-align: middle;
}

.h5g-girls-event-meta-text {
  flex: 1;
  min-width: 0;
  word-break: break-word;
  font-weight: var(--font-weight-extrabold);
}

.h5g-girls-event-meta-text--multiline {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.h5g-girls-event-meta-line {
  display: block;
  font-weight: var(--font-weight-extrabold);
}

.h5g-girls-event-meta-text .h5g-girls-event-contact-link {
  color: inherit;
  font-weight: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.h5g-girls-event-meta-text .h5g-girls-event-contact-link:visited,
.h5g-girls-event-meta-text .h5g-girls-event-contact-link:hover,
.h5g-girls-event-meta-text .h5g-girls-event-contact-link:focus,
.h5g-girls-event-meta-text .h5g-girls-event-contact-link:active {
  color: inherit;
}

.h5g-girls-event-meta-text .h5g-girls-event-contact-link:focus-visible {
  outline: 2px solid #e43ea0;
  outline-offset: 2px;
  border-radius: 2px;
}

.h5g-girls-event-status-msg {
  font-weight: var(--font-weight-bold);
  margin: 0 0 calc(var(--spacing-base));
  opacity: 0.85;
}

.h5g-girls-event-description--below-hero {
  margin-top: calc(var(--spacing-base) * 1);
  padding-top: calc(var(--spacing-base) * 2);
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.h5g-girls-event-content {
  max-width: 48rem;
}

/* I højre kolonne under hero: fuld bredde af kolonnen (ikke 48rem-cap) */
.h5g-girls-event-content.h5g-girls-event-content--hero-column {
  max-width: none;
}

/* Faner — samme idé som RM Events admin (understregning + pink aktiv) */
.h5g-girls-event-tabs {
  margin-top: 0;
}

.h5g-girls-event-tab-nav {
  list-style: none;
  margin: 0 0 0;
  padding: 0 0 3px;
  display: flex;
  flex-wrap: nowrap;
  /* stretch + ens knaphøjde — undgår at rækken “hopper” ved flex-end når én label har anden metrik */
  align-items: stretch;
  gap: 0 4px;
  /* Undgå at faner hopper på ny række — scroll vandret på smalle skærme */
  overflow-x: auto;
  /* Ikke overflow-y: hidden — klippede den lyserøde 3px-understregning */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  /* Sammenhængende linje under alle faner (tynd sort); aktiv fane får pink 3px ovenpå) */
  border-bottom: 1px solid var(--color-black);
}

.h5g-girls-event-tab-nav-item {
  margin: 0;
  flex: 0 0 auto;
  display: flex;
  align-items: stretch;
}

.h5g-girls-event-tab-btn {
  appearance: none;
  background: none;
  border: none;
  /* Design: 3px lyserød aktiv linje (fuld synlig — ikke klippet af overflow) */
  border-bottom: 3px solid transparent;
  /* Trækker understregning ned så pink møder den sorte baseline */
  margin-bottom: -3px;
  /* Lidt mere luft mellem bogstaver og understregningslinje */
  padding: 10px 7px 12px;
  cursor: pointer;
  font-family: var(--font-family-primary);
  /* Eksplicit størrelse — undgår at browserens <button>-defaults gør faner mindre */
  font-size: 15px;
  line-height: 1.2;
  font-weight: var(--font-weight-extrabold);
  text-transform: uppercase;
  letter-spacing: 0.035em;
  white-space: nowrap;
  color: var(--color-black);
  transition: border-color 0.15s ease;
  /* Samme knaphøjde for alle faner — ellers kan flex-end flytte hele rækken (fx «Du lærer» vs «Program») */
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 2.85rem;
  box-sizing: border-box;
}

.h5g-girls-event-tab-btn:hover {
  color: var(--color-black);
}

.h5g-girls-event-tab-btn:focus-visible {
  color: var(--color-black);
  outline: 2px solid var(--color-pink-primary);
  outline-offset: 2px;
}

/* Aktiv fane: samme sorte tekst — pink 3px (border-width ovenfor) */
.h5g-girls-event-tab-btn.is-active {
  border-bottom: 3px solid var(--color-pink-primary);
  color: var(--color-black);
}

/* Paneler: kun aktivt synligt — siden følger indholdshøjde (ingen “længste fane”-reserve) */
.h5g-girls-event-tab-panels {
  /* Luft mellem understregningslinje og overskrift/brødtekst */
  padding-top: clamp(0.85rem, 1.8vw, 1.15rem);
}

.h5g-girls-event-tab-panel {
  display: none;
  padding: 0 0 calc(var(--spacing-base) * 1);
}

.h5g-girls-event-tab-panel.is-active {
  display: block;
}

.h5g-girls-event-tab-panel[hidden]:not(.is-active) {
  display: none !important;
}

/* Figma: Raleway Black 20 / line-height 24 / letter-spacing 0% */
.h5g-girls-event-desc-kicker {
  font-family: var(--font-family-primary);
  font-size: 20px;
  font-weight: var(--font-weight-black);
  line-height: 24px;
  letter-spacing: 0;
  margin: 0 0 calc(var(--spacing-base) * 0.75);
  color: var(--color-black);
}

/* Du lærer / program: samme brød som øvrige faner (TinyMCE kan efterlade ren tekst uden <p>) */
.h5g-girls-event-tab-panel[data-h5g-tab-panel="du_laerer"] .h5g-girls-event-rich--main,
.h5g-girls-event-tab-panel[data-h5g-tab-panel="program"] .h5g-girls-event-rich--main {
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: var(--font-weight-medium) !important;
  font-family: var(--font-family-primary) !important;
}

/* Rollemodeller-fanen: profilbilleder 75 % af 121×122 (prøvevis mindre kluntet) */
.h5g-girls-event-tab-panel--rollemodeller .h5g-girls-event-rm-media {
  width: 91px;
  max-width: 91px;
}

.h5g-girls-event-tab-panel--rollemodeller .h5g-girls-event-rm-photo {
  width: 91px;
  max-width: 91px;
  height: 92px;
  border-radius: 9px;
  object-fit: cover;
}

.h5g-girls-event-tab-panel--rollemodeller .h5g-girls-event-rm-photo--placeholder {
  width: 91px;
  max-width: 91px;
  min-height: 92px;
  height: 92px;
  border-radius: 9px;
  font-size: 30px;
}

.h5g-girls-event-tab-panel--rollemodeller .h5g-girls-event-rm-card {
  gap: calc(var(--spacing-base) * 1.25);
}

.h5g-girls-event-section {
  margin-top: calc(var(--spacing-base) * 2.25);
  padding-top: calc(var(--spacing-base) * 1.75);
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

/* Samme som kicker: Figma Black 20 / 24 */
.h5g-girls-event-section-title {
  font-family: var(--font-family-primary);
  font-size: 20px;
  font-weight: var(--font-weight-black);
  line-height: 24px;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 0 0 calc(var(--spacing-base) * 1);
  color: var(--color-black);
}

/* Figma: ANKOMST m.m. — Raleway Black 14, line-height 18 */
.h5g-girls-event-rich h3,
.h5g-girls-event-rich h4 {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-black);
  line-height: 18px;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 1.15em 0 0.4em;
  color: var(--color-black);
}

.h5g-girls-event-rich h3:first-child,
.h5g-girls-event-rich h4:first-child {
  margin-top: 0;
}

/* Brødtekst: fed = Raleway Black 14 (strong/b i indhold) */
.h5g-girls-event-rich strong,
.h5g-girls-event-rich b {
  font-weight: var(--font-weight-black);
  font-size: inherit;
  line-height: inherit;
}

.h5g-girls-event-rm-lead-title {
  font-family: var(--font-family-primary);
  font-size: 20px;
  font-weight: var(--font-weight-black);
  line-height: 24px;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 0 0 calc(var(--spacing-base) * 1.25);
  color: var(--color-black);
}

.h5g-girls-event-rm-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing-base) * 2);
}

/* Design: billede + navn i venstre kolonne; intro til højre — ikke runde billeder */
.h5g-girls-event-rm-card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: calc(var(--spacing-base) * 1.75);
  margin: 0;
  padding: 0;
}

.h5g-girls-event-rm-media {
  flex-shrink: 0;
  width: 121px;
  max-width: 121px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Figma: 121 × 122 */
.h5g-girls-event-rm-photo {
  display: block;
  width: 121px;
  height: 122px;
  max-width: 100%;
  object-fit: cover;
  border-radius: 12px;
  background: #e8e8e8;
  box-sizing: border-box;
}

.h5g-girls-event-rm-photo--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  font-weight: var(--font-weight-black);
  color: #fff;
  background: #2271b1;
  min-height: 0;
}

.h5g-girls-event-rm-name {
  display: block;
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-black);
  line-height: 18px;
  margin-top: 10px;
  color: var(--color-black);
}

.h5g-girls-event-rm-text {
  flex: 1;
  min-width: 0;
  align-self: stretch;
}

/* RM intro: samme brødtekst som event — Medium 14 / lh 18 */
.h5g-girls-event-rm-bio {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 18px;
  color: var(--color-black);
}

.h5g-girls-event-rm-bio strong,
.h5g-girls-event-rm-bio b {
  font-weight: var(--font-weight-black);
}

.h5g-girls-event-rm-bio p {
  margin: 0 0 0.85em;
}

.h5g-girls-event-rm-bio p:last-child {
  margin-bottom: 0;
}

/* Lister: samme brødtekst som afsnit — venstrekant som <p> (punkt i padding, ikke ekstra margin-left) */
.h5g-girls-event-rich ul,
.h5g-girls-event-rich ol {
  margin: 0 0 1em 0;
  padding: 0 0 0 1.2em;
  list-style-position: outside;
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 18px;
  color: var(--color-black);
}

.h5g-girls-event-rich li {
  margin-bottom: 0.35em;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
}

.h5g-girls-event-rich li p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0 0 0.5em;
}

.h5g-girls-event-rich li p:last-child {
  margin-bottom: 0;
}

.h5g-girls-event-rich a {
  text-decoration: underline;
  text-underline-offset: 2px;
}

@media (max-width: 600px) {
  .h5g-girls-event-rm-card {
    flex-direction: column;
    align-items: center;
  }

  .h5g-girls-event-rm-media {
    width: 121px;
    max-width: 121px;
  }

  .h5g-girls-event-rm-text {
    width: 100%;
  }
}

.h5g-girls-event-audiences {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin-bottom: 0;
}

/* Enkeltside: fast 10px hjørner (ikke pille), matcher Figma */
.h5g-girls-event-audience.h5g-audience-pill {
  align-self: flex-start;
  margin-left: 0;
  margin-bottom: 0;
  border-radius: 10px;
}

.h5g-girls-event-title {
  font-family: var(--font-family-primary);
  font-size: clamp(26px, 4.2vw, 38px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  line-height: 1.12;
  margin: 0 0 calc(var(--spacing-base) * 1.5);
  color: var(--color-black);
}

/* Lokation + dato under titel — Figma: ExtraBold 14 */
.h5g-girls-event-subtitle {
  font-size: 14px;
  font-weight: var(--font-weight-extrabold);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  line-height: 1.3;
  margin: 0 0 calc(var(--spacing-base) * 2.5);
  color: var(--color-black);
}

.h5g-girls-event-hero-info-cta .h5g-girls-event-cta-wrap {
  margin-bottom: 0;
}

.h5g-girls-event-cta-wrap {
  margin-bottom: calc(var(--spacing-base) * 1.25);
}

.h5g-girls-event-cta-wrap .btn-primary {
  padding: 14px 28px;
  font-size: 15px;
  min-width: min(100%, 260px);
  box-sizing: border-box;
}

.h5g-girls-event-cta-placeholder {
  display: inline-block;
  cursor: not-allowed;
  opacity: 0.92;
  pointer-events: none;
}

.h5g-girls-event-cta-note {
  margin: calc(var(--spacing-base) * 1.25) 0 0;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 400;
  color: var(--color-black);
  opacity: 0.55;
  max-width: 28em;
}

/* Figma brødtekst: Raleway Medium 14, line-height 18 */
.h5g-girls-event-description,
.h5g-girls-event-rich {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 18px;
  color: var(--color-black);
}

.h5g-girls-event-description p,
.h5g-girls-event-rich p {
  margin: 0 0 1em;
}

/*
 * Ens brødtekst overalt (beskrivelse / du lærer / program): TinyMCE lægger ofte <span style="font-size:…"> i lister,
 * så li ser anderledes ud end <p>. Tving 14 Medium / 18 på single-event — h3/h4 har egne regler ovenfor.
 */
.h5g-girls-event-single .h5g-girls-event-description,
.h5g-girls-event-single .h5g-girls-event-rich {
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  line-height: 18px;
}

.h5g-girls-event-single .h5g-girls-event-description p,
.h5g-girls-event-single .h5g-girls-event-rich p {
  font-size: 14px !important;
  font-weight: var(--font-weight-medium) !important;
  line-height: 18px !important;
  font-family: var(--font-family-primary) !important;
}

.h5g-girls-event-single .h5g-girls-event-rich ul,
.h5g-girls-event-single .h5g-girls-event-rich ol,
.h5g-girls-event-single .h5g-girls-event-rich li,
.h5g-girls-event-single .h5g-girls-event-rich li span,
.h5g-girls-event-single .h5g-girls-event-rich li p {
  font-size: 14px !important;
  font-weight: var(--font-weight-medium) !important;
  line-height: 18px !important;
  font-family: var(--font-family-primary) !important;
}

/* TinyMCE / inline styles kan sætte margin på ul — hold samme venstrekant som brødtekst (fx “Du lærer”) */
.h5g-girls-event-single .h5g-girls-event-rich ul,
.h5g-girls-event-single .h5g-girls-event-rich ol {
  margin-left: 0 !important;
  padding-left: 1.2em !important;
  list-style-position: outside !important;
}

.h5g-girls-event-single .h5g-girls-event-rich p strong,
.h5g-girls-event-single .h5g-girls-event-rich p b,
.h5g-girls-event-single .h5g-girls-event-rich li strong,
.h5g-girls-event-single .h5g-girls-event-rich li b,
.h5g-girls-event-single .h5g-girls-event-rich li span strong,
.h5g-girls-event-single .h5g-girls-event-rich li span b {
  font-weight: var(--font-weight-black) !important;
}

/* Afsluttet: nyhedsbrevsblok (design) */
.h5g-event-ended-newsletter {
  margin-bottom: calc(var(--spacing-base) * 4);
  text-align: left;
}

.h5g-event-ended-title {
  font-size: clamp(20px, 3vw, 28px);
  font-weight: var(--font-weight-black);
  text-transform: uppercase;
  margin: 0 0 calc(var(--spacing-base));
}

.h5g-event-ended-lead {
  margin: 0 0 8px;
  font-size: 17px;
}

.h5g-event-ended-text {
  margin: 0 0 calc(var(--spacing-base) * 2);
  font-size: 15px;
}

.h5g-event-ended-form {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  max-width: 420px;
  margin-bottom: calc(var(--spacing-base));
}

.h5g-event-ended-input {
  width: 100%;
  max-width: 100%;
  padding: 14px 16px;
  border: none;
  border-radius: 0;
  background: #f9d7e7;
  font-family: var(--font-family-primary);
  font-size: 15px;
  color: var(--color-black);
  box-sizing: border-box;
}

.h5g-event-ended-input::placeholder {
  color: rgba(0, 0, 0, 0.45);
}

.h5g-event-ended-input:disabled {
  opacity: 0.65;
}

.h5g-event-ended-submit {
  border-radius: 50px;
  box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.12);
  padding-left: 28px;
  padding-right: 28px;
}

.h5g-event-ended-submit:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.h5g-event-ended-disclaimer {
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
  max-width: 420px;
  opacity: 0.85;
}

/* Forældreside: samtykke (/event/{id}/foraelder-samtykke/) */
.h5g-pc-layout {
  display: grid;
  grid-template-columns: minmax(260px, 380px) minmax(0, 1fr);
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
}

.h5g-pc-layout--single {
  grid-template-columns: 1fr;
}

@media (max-width: 720px) {
  .h5g-pc-layout:not(.h5g-pc-layout--single) {
    grid-template-columns: 1fr;
  }
}

.h5g-pc-layout__main {
  min-width: 0;
}

.h5g-pc-event-hero {
  margin-bottom: 0;
}

.h5g-pc-participant-name {
  margin: 0 0 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.45;
}

.h5g-pc-legacy-event-title {
  margin: 0 0 1.25rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.45;
  opacity: 0.92;
}

.h5g-pc-guardian-fields {
  margin: 0 0 1.25rem;
}

.h5g-parent-consent-page .h5g-parent-consent-label--plain {
  font-weight: 400;
  font-size: 1rem;
}

.h5g-parent-consent-page .h5g-parent-consent-media-q,
.h5g-parent-consent-page .h5g-parent-consent-legend,
.h5g-parent-consent-page .h5g-parent-consent-check--privacy span,
.h5g-parent-consent-page .h5g-parent-consent-fieldset .h5g-parent-consent-check span {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.45;
}

.h5g-parent-consent-root .h5g-pc-univers-card {
  max-width: 420px;
  height: auto;
}

.h5g-pc-fallback-head {
  max-width: 420px;
}

.h5g-parent-consent-event-detail {
  margin: 0 0 0.75rem;
  line-height: 1.45;
  font-size: 0.95rem;
}

.h5g-pc-event-page-link-wrap {
  margin: 0 0 0.5rem;
}

.h5g-parent-consent-event-title {
  font-size: clamp(1.15rem, 2.2vw, 1.35rem);
  font-weight: var(--font-weight-bold);
  margin: 0 0 0.5rem;
  line-height: 1.3;
}

.h5g-parent-consent-media-q {
  margin: 0 0 0.35rem;
}

.h5g-parent-consent-check--privacy {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 1.25rem 0 0;
  line-height: 1.45;
  cursor: pointer;
}

.h5g-parent-consent-check--privacy input {
  margin-top: 3px;
  flex-shrink: 0;
}

.h5g-parent-consent-intro {
  line-height: 1.5;
  margin: 0 0 1.25rem;
}

.h5g-parent-consent-label {
  display: block;
  font-weight: var(--font-weight-bold);
  margin: 0.75rem 0 0.35rem;
}

.h5g-parent-consent-input,
.h5g-parent-consent-textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.5rem 0.65rem;
  margin: 0 0 0.25rem;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  font: inherit;
}

.h5g-parent-consent-textarea {
  resize: vertical;
  min-height: 4rem;
}

.h5g-parent-consent-page {
  padding: clamp(1.5rem, 4vw, 3rem) 0;
}

.h5g-parent-consent-inner {
  max-width: 56rem;
}

.h5g-parent-consent-title {
  font-size: clamp(1.25rem, 2.5vw, 1.5rem);
  margin: 0 0 1rem;
}

.h5g-parent-consent-error {
  color: #b00020;
  margin: 0 0 1rem;
}

.h5g-parent-consent-done {
  font-weight: var(--font-weight-bold);
  margin: 0;
}

.h5g-parent-consent-lead {
  margin: 0 0 1.25rem;
  line-height: 1.45;
}

.h5g-parent-consent-fieldset {
  border: none;
  margin: 0 0 1.25rem;
  padding: 0;
}

.h5g-parent-consent-legend {
  margin: 0 0 0.5rem;
  padding: 0;
}

.h5g-parent-consent-hint {
  font-size: 13px;
  margin: 0 0 0.5rem;
  opacity: 0.9;
}

.h5g-parent-consent-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  cursor: pointer;
  line-height: 1.45;
}

.h5g-parent-consent-check input {
  margin-top: 3px;
  flex-shrink: 0;
}

.h5g-parent-consent-radios {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.h5g-parent-consent-radios label {
  cursor: pointer;
}

.h5g-parent-consent-actions {
  margin: 1.5rem 0 0;
}
