﻿/* ------------------------- */
/*      Global Variables     */
/* ------------------------- */

:root {
    --bs-btn-active-bg: var(--bs-btn-bg);
    --bs-btn-active-border-color: var(--bs-btn-bg);
    /* forms */
    --bs-form-invalid-color: var(--bs-red);
    --bs-form-invalid-border-color: var(--bs-red); /* === additions === */

    --bs-box-shadow-md: 0 4px 7px rgba(0, 0, 0, .25);
    --bs-nav-link-color: rgba(var(--bs-body-color-rgb), 0.55);
    --bs-nav-link-hover-color: rgba(var(--bs-body-color-rgb), 1);
    --bs-dropdown-item-padding-y: 8px;
    --bs-dropdown-item-padding-x: 20px;
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-padding-large-x: 1.2rem;
    --bs-btn-padding-large-y: 0.7rem;
    /* changed core palette */
    --bs-body-bg: var(--bs-text-color);
    --bs-black: #010101;
    --bs-primary: var(--bs-body-bg);
    --bs-secondary: #2C3241;
    --bs-danger: #992D26;
    /* changed RGB tokens */
    --bs-primary-rgb: 23, 29, 43;
    --bs-secondary-rgb: 44, 50, 65;
}
/* ExtraLight (weight 200) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 200;
    src: url("../fonts/Oswald/Oswald-ExtraLight.ttf") format("truetype");
}
/* Light (weight 300) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/Oswald/Oswald-Light.ttf") format("truetype");
}
/* Regular (weight 400) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/Oswald/Oswald-Regular.ttf") format("truetype");
}
/* Medium (weight 500) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/Oswald/Oswald-Medium.ttf") format("truetype");
}
/* SemiBold (weight 600) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/Oswald/Oswald-SemiBold.ttf") format("truetype");
}
/* Bold (weight 700) */
@font-face {
    font-family: "Oswald";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/Oswald/Oswald-Bold.ttf") format("truetype");
}
/* pp-neue-montreal.css */
/* Thin (100) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 100;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Thin.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Thin.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Thin.ttf") format("truetype");
}
/* Light (200) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 200;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Light.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Light.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Light.ttf") format("truetype");
}
/* Book (300) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Book.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Book.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Book.ttf") format("truetype");
}
/* Regular (400) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Regular.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Regular.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Regular.ttf") format("truetype");
}
/* Medium (500) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Medium.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Medium.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Medium.ttf") format("truetype");
}
/* SemiBold (600) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-SemiBold.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-SemiBold.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-SemiBold.ttf") format("truetype");
}
/* Bold (700) */
@font-face {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Bold.woff2") format("woff2"), url("../fonts/PP_Neue_Montreal/web/PPNeueMontreal-Bold.woff") format("woff"), url("../fonts/PP_Neue_Montreal/ttf/PPNeueMontreal-Bold.ttf") format("truetype");
}
/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */
html {
    overflow-x: hidden;
    text-rendering: geometricPrecision;
    word-break: break-word;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent;
}

html, body {
    min-height: 100vh;
    font-family: var(--bs-font-body-sans-serif);
    font-weight: 400;
}

body {
    color: var(--bs-text-color);
    background: rgb(var(--bs-body-bg-rgb));
    background: -moz-linear-gradient(173deg, rgba(var(--bs-body-bg-dark-rgb), 1) 0%, rgba(var(--bs-body-bg-rgb), 1) 20%, rgba(var(--bs-body-bg-rgb), 1) 70%, rgba(var(--bs-body-bg-light-rgb), 1) 100%);
    background: -webkit-linear-gradient(173deg, rgba(var(--bs-body-bg-dark-rgb), 1) 0%, rgba(var(--bs-body-bg-rgb), 1) 20%, rgba(var(--bs-body-bg-rgb), 1) 70%, rgba(var(--bs-body-bg-light-rgb), 1) 100%);
    background: linear-gradient(173deg, rgba(var(--bs-body-bg-dark-rgb), 1) 0%, rgba(var(--bs-body-bg-rgb), 1) 20%, rgba(var(--bs-body-bg-rgb), 1) 70%, rgba(var(--bs-body-bg-light-rgb), 1) 100%);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 100vh;
}

main {
    min-height: 80vh;
}

h1, h2 {
    font-weight: 500 !important;
    font-family: var(--bs-font-body-sans-serif-heading);
    line-height: 125%;
    margin-top: 0;
}

@media (min-width: 1200px) {
    h1, .h1 {
        font-size: 3.4rem;
        margin: 2rem 0 1rem 0;
        margin-top: 0;
    }
}

h2 {
    max-width: 700px;
    margin: -1rem 0 1rem 0;
}

/* Overskrifter, der af hensyn til sidens struktur er h2, men skal se ud som h1 (se PageHeading.cs).
   Bootstraps .h1 giver samme skriftstoerrelse og margener. max-width fra h2 fjernes, og linjehoejden
   saettes som paa h1, fordi .h1-klassen ellers overtager Bootstraps 1.2. */
h2.h1 {
    max-width: none;
    line-height: 125%;
}

h3 {
    font-size: 1.2rem;
}

h3, .h3, .h4, h4, h5, .h5, .h6, h6 {
    font-weight: 600;
}

p, label, .font-paragraph {
    font-family: var(--bs-font-body-sans-serif);
    letter-spacing: 0.03rem;
    line-height: 135%;
}

button {
    min-width: auto;
}

iframe {
    /*box-shadow: var(--bs-box-shadow-md) !important;*/
}

a {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
}

    a:hover, a:active {
        color: rgb(var(--bs-brand-brand-rgb));
    }

dl {
}

dt {
    color: var(--bs-gray-500);
    font-weight: 400;
}

dd {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
    text-decoration: none;
}

.logo {
    height: 100%;
    width: auto;
    max-width: 160px;
    margin-left: 28px;
}

@media (min-width: 992px) {
    .logo {
        width: 100%;
        margin-left: auto;
    }
}

.shadow {
    box-shadow: var(--bs-box-shadow-md) !important;
}

.bg-cover {
    background-size: cover !important;
}

.bg-no-repeat {
    background-repeat: no-repeat !important;
}

.bg-center {
    background-position: center !important;
}

.brand-creme {
    color: rgb(var(--bs-brand-brand-rgb));
}

@media (min-width: 1200px) {
    .miw-xl-25 {
        min-width: 25%;
    }

    .miw-xl-50 {
        min-width: 50%;
    }

    .miw-xl-75 {
        min-width: 75%;
    }

    .maw-xl-25 {
        max-width: 25%;
    }

    .maw-xl-50 {
        max-width: 50%;
    }

    .maw-xl-75 {
        max-width: 75%;
    }

    .w-lg-auto {
        width: auto !important;
    }
}

.bg-cover-center {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.btn {
    font-weight: 500;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
}

.btn-group-lg > .btn, .btn-lg {
    --bs-btn-padding-y: 0.7rem;
    --bs-btn-padding-x: 1.2rem;
    --bs-btn-font-size: 1.25rem;
    --bs-btn-border-radius: var(--bs-border-radius-lg);
}

/* Bootstraps "gloed" ved fokus er fravalgt i designet - fokusrammen herunder erstatter den. */
.btn:focus, .btn:focus-visible, a:focus, a:focus-visible {
    box-shadow: none !important;
}

/* TASTATURFOKUS (WCAG 2.4.7)
-------------------------------------------------- */
/* Rammen vises kun ved tastaturnavigation (:focus-visible), saa et museklik ser ud som foer.
   !important er noedvendigt, fordi Bootstrap, Glider og regler laengere nede saetter outline: 0
   med hoejere specificitet. Farven kan aendres pr. site med --focus-ring-color i Custom CSS. */
:root {
    --focus-ring-color: var(--bs-text-color, #F8F9FA);
}

:focus-visible {
    outline: 2px solid var(--focus-ring-color) !important;
    outline-offset: 2px !important;
}

/* Links og menupunkter bruger deres egen tekstfarve - den er allerede valgt, saa den kan ses
   paa netop den baggrund, linket staar paa (menu, dropdown, footer, bokse). */
a:not(.btn):focus-visible,
.navbar .nav-link:focus-visible,
.dropdown-item:focus-visible {
    outline-color: currentColor !important;
}

/* I taette lister og beholdere med overflow: hidden tegnes rammen indenfor, saa den ikke klippes. */
.dropdown-item:focus-visible,
.accordion-button:focus-visible,
.glider :focus-visible,
.image-link-wrapper:focus-visible {
    outline-offset: -3px !important;
}

/* SPRING TIL INDHOLD (WCAG 2.4.1)
-------------------------------------------------- */
.skip-link {
    position: fixed;
    top: 1rem;
    left: 1rem;
    z-index: 10000;
    padding: 0.75rem 1.25rem;
    border-radius: var(--bs-border-radius-lg, 0.75rem);
    background: rgb(var(--bs-box-color-rgb, 35, 37, 45));
    color: var(--bs-text-color, #F8F9FA);
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .45);
    transform: translateY(calc(-100% - 2rem));
}

    .skip-link:focus,
    .skip-link:hover {
        color: var(--bs-text-color, #F8F9FA);
    }

    .skip-link:focus {
        transform: none;
    }

/* Maalet for spring-linket er kun et fokuspunkt, ikke en kontrol - ingen ramme om hele siden. */
#indhold:focus {
    outline: none !important;
}

/* Beskeder, der faar fokus efter en formular-postback, er ikke kontroller - ingen fokusramme. */
[data-focus-on-load]:focus {
    outline: none !important;
}

/* Filtype og -stoerrelse efter downloadlinks, fx "(PDF, 1,2 MB)". */
.file-download__meta {
    font-size: .85em;
    white-space: nowrap;
}

.text-google-icon {
    background: conic-gradient(from - 45deg, #ea4335 110deg, #4285f4 90deg 180deg, #34a853 180deg 270deg, #fbbc05 270deg) 73% 55%/150% 150% no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.text-facebook {
    color: #5d82d1;
}

.bg-warning {
    color: var(--bs-black);
    background-color: var(--bs-warning);
}

.rounded-pill {
    font-weight: 500 !important;
}

.text-shadow-dark {
    text-shadow: 0px 1px 4px rgba(0, 0, 0, 0.8);
}

header.sticky-top {
    box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.3);
    animation-name: fadeInDownMenu;
    animation-duration: .5s;
    animation-fill-mode: both;
    background-color: rgb(var(--bs-nav-bg-rgb));
}

/* Ved stor zoom eller en lav skaerm, fx en telefon paa tvaers, fylder en fastlaast header det meste af
   skaermen og daekker indholdet (WCAG 1.4.10). Under 500 px hoejde ruller headeren derfor med siden. */
@media (max-height: 500px) {
    header.sticky-top {
        position: relative;
    }
}

/* Headeren glider ikke ind, hvis den besoegende har slaaet animationer fra. */
@media (prefers-reduced-motion: reduce) {
    header.sticky-top {
        animation: none;
    }
}

.header-nav .container-fluid {
    background: rgb(var(--bs-nav-bg-rgb));
    transition: all 0.3s ease;
}

.container-fluid {
    max-width: 1640px;
}

.container-full {
    margin-right: calc(var(--bs-gutter-x) * -.5);
    margin-left: calc(var(--bs-gutter-x) * -.5);
}

@media (min-width: 992px) {
    .container-fluid.padding {
        padding: 0 1.5rem
    }
}

@media (min-width: 1636px) {
    header:not(.sticky-top) .header-nav .container-fluid {
        box-shadow: inset 0px -1px 0px 0px rgba(0, 0, 0, 0.6);
    }

    .header-nav .container-fluid {
        border-radius: 0 0 var(--bs-border-radius-lg) var(--bs-border-radius-lg);
    }

    .container-fluid.padding {
        padding: 0rem
    }

    .container-full {
        margin-right: 0;
        margin-left: 0;
    }
}

@keyframes fadeInDownMenu {
    from {
        transform: translate3d(0, -100%, 0)
    }

    to {
        transform: none
    }
}

.box {
    background-color: rgba(var(--bs-box-color-rgb), 1);
    margin-bottom: 1.5rem;
    border-radius: var(--bs-border-radius-lg);
}

    .box .img-shadow {
        position: relative;
        display: inline-block; /* så dimensioner følger billedet */
        overflow: hidden; /* skyggen udenfor “div” klippes væk */
        border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0 0 !important;
    }

        .box .img-shadow::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            box-shadow: inset 0px 4px 6px -6px rgba(255, 255, 255, 0.6);
            pointer-events: none;
        }

    .box img {
        border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0 0 !important;
        max-width:100%;
        min-width:100%;
    }

.image-box img {
    border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) !important;
}
.info-box img {
    border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) !important;
}

.box-plakat-synopsis-stor {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.box-plakat-synopsis-stor__media {
    flex: 0 0 auto;
}

.box-plakat-synopsis-stor__image {
    display: block;
    width: 100%;
    min-width: 0 !important;
    height: auto;
}

.box-plakat-synopsis-stor__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.box-plakat-synopsis-stor__actions {
    padding-top: 1rem;
}

@media (min-width: 992px) {
    .box-plakat-synopsis-stor {
        flex-direction: row;
        align-items: stretch;
    }

    .box-plakat-synopsis-stor .img-shadow {
        display: flex;
        flex: 0 0 clamp(180px, 22vw, 270px);
        width: clamp(180px, 22vw, 270px);
        border-radius: var(--bs-border-radius-lg) 0 0 var(--bs-border-radius-lg) !important;
    }

    .box-plakat-synopsis-stor .img-shadow::before {
        box-shadow: inset -4px 0 10px -8px rgba(0, 0, 0, 0.25), inset 0px 4px 6px -6px rgba(255, 255, 255, 0.6);
    }

    .box-plakat-synopsis-stor__image {
        height: 100%;
        object-fit: cover;
        border-radius: var(--bs-border-radius-lg) 0 0 var(--bs-border-radius-lg) !important;
    }
}

/* Plakat-blokkene (Film og Forestilling) bestaar kun af plakaten, saa hele boksen skal vaere
   afrundet. .box img runder normalt kun toppen af, fordi der plejer at vaere tekst under billedet. */
.box-plakat {
    display: block;
    overflow: hidden;
}

    .box-plakat,
    .box-plakat .img-shadow,
    .box-plakat__image {
        border-radius: var(--bs-border-radius-lg) !important;
    }

    .box-plakat__media {
        display: block;
    }

    .box-plakat__image {
        display: block;
        width: 100%;
        min-width: 0 !important;
        height: auto;
        transition: transform .3s ease;
    }

a.box-plakat:hover .box-plakat__image {
    transform: scale(1.03);
}

footer {
    background-color: rgba(var(--bs-box-color-rgb), 1);
}

#footer.fixed-footer {
    position: fixed;
    bottom: 0;
}

#footer a {
    text-decoration: none;
}

    #footer a:hover, footer a:active {
        color: rgb(var(--bs-brand-brand-rgb)) !important;
    }

.form-check-input {
    background-color: transparent;
    border-color: var(--bs-text-color);
}

    .form-check-input:checked {
        background-color: transparent;
        border-color: var(--bs-text-color);
    }

    .form-check-input:focus {
        border-color: var(--bs-text-color);
        box-shadow: none;
    }

.form-control {
    border-radius: var(--bs-border-radius-lg);
    max-width: 725px;
}

    .form-control:focus {
        border-color: var(--bs-border-color);
        outline: 0;
        box-shadow: none;
    }

    .form-control, .form-control:focus {
        color: rgb(var(--bs-dark-rgb));
    }

.form-floating > label, .form-floating > .form-control-plaintext ~ label, .form-floating > .form-control:focus ~ label, .form-floating > .form-control:not(:placeholder-shown) ~ label, .form-floating > .form-select ~ label {
    color: rgba(var(--bs-dark-rgb), 0.65);
}

.navbar {
    font-family: var(--bs-font-body-sans-serif-heading);
}

.navbar-brand {
    max-width: 160px;
    height: 40px;
}

.navbar-toggler .social {
    width: 1.5em;
    height: 1.5em;
    margin: auto;
}

@media (min-width: 768px) {
    .navbar-brand {
        height: auto;
    }
}

.navbar .nav-item {
}

.nav-link {
    color: var(--bs-text-color);
}

.profile-split .profile-dropdown-toggle {
    border-top-right-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    padding: 0.5rem 0.75rem;
}

.profile-split .nav-link.btn-primary {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.profile-name {
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Loyalty menu */
.loyalty-menu {
    display: flex;
    align-items: center;
    position: relative;
}

.loyalty-menu__toggle {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 0 0.75rem;
    transition: background-color 0.2s ease;
}

    .loyalty-menu__toggle::after {
        display: none;
    }

.loyalty-menu__logo {
    max-width: 110px;
    width: 100%;
    height: auto;
    display: block;
}

.loyalty-menu__dropdown {
    min-width: 14rem;
    border: 0;
    top: 100% !important;
    margin-top: 0;
    background: rgb(var(--bs-nav-bg-rgb));
}

.loyalty-menu__dropdown a{
    color:white;
}
    .loyalty-menu__dropdown a:hover {
        color: white;
    }
    /* Make the navbar container align its direct children to the bottom */
    @media (min-width: 992px) {
        .header-nav .container-fluid {
        align-items: center !important;
    }

    .loyalty-menu .dropdown-menu {
        opacity: 0;
        visibility: hidden;
        transform: translateY(8px);
        display: block;
        pointer-events: none;
        transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    }

    .loyalty-menu:hover .dropdown-menu,
    .loyalty-menu:focus-within .dropdown-menu,
    .loyalty-menu.show .dropdown-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
    }

    .loyalty-menu .dropdown-toggle.show {
        color: var(--bs-text-color);
    }
}

@media (max-width: 991.98px) {
    /* Scope the absolute positioning to the nav element, not container-fluid */
    .header-nav {
        position: relative;
    }

    .loyalty-menu {
        position: absolute;
        left: 0.5rem;
        top: 0; /* top of the nav bar */
        bottom: auto;
        height: 56px; /* match the collapsed navbar height */
        transform: none; /* remove translateY — use height + flex instead */
        width: auto;
        z-index: 10;
        align-items: center; /* vertically centre within the fixed height */
    }

    .loyalty-menu__logo {
        max-width: 44px !important;
    }

    .loyalty-menu__toggle {
        justify-content: center;
        padding: 0 0.25rem;
        align-items: center;
    }

    .loyalty-menu__dropdown {
        width: 14rem;
        position: absolute;
        transform: none !important;
        left: 0;
        top: 100%;
    }

    .dropdown-menu-end[data-bs-popper] {
        left: inherit;
    }
}
.profile-modal .modal-content {
    background-color: rgba(var(--bs-body-bg-dark-rgb), 1);
}

.profile-iframe-wrapper {
    position: relative;
    min-height: 60vh;
}

.profile-iframe {
    border: 0;
    width: 100%;
    height: 70vh;
    background: transparent;
}

.profile-iframe-loader {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    background-color: rgba(var(--bs-body-bg-dark-rgb), 0.9);
    color: #fff;
    text-align: center;
    padding: 1rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease;
    z-index: 1;
}

.profile-iframe-loader.is-active {
    opacity: 1;
    visibility: visible;
}

.profile-iframe-status {
    font-size: 0.95rem;
    font-weight: 500;
}

    .nav-link span.custom-badge {
        transform: translate(-75%, -25%) !important
    }

footer {
    border-radius: 0;
    transition: border-radius 0.3s ease;
}

.dropdown-item {
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
}

    .dropdown-item:focus, .dropdown-item:hover {
        background: rgb(53, 59, 73);
    }

/* Paa desktop navigerer et klik/Enter paa et topmenupunkt med eget indhold videre til siden,
   saa tastaturbrugere kan ikke laengere folde undermenuen ud med Enter. Focus-within holder
   undermenuen aaben, saa punkterne kan naas med Tab. */
@media (min-width: 992px) {
    .header-nav .nav-item.dropdown:focus-within > .dropdown-menu {
        display: block;
    }

    /* Popper forskyder undermenuen et par pixels under topmenupunktet. Uden broen
       forlader musen <li>'et i mellemrummet, og menuen lukker midt i bevaegelsen. */
    .header-nav .nav-item.dropdown > .dropdown-menu::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 100%;
        height: 12px;
    }
}


.btn-primary {
    --bs-btn-font-weight: 600;
    --bs-btn-color: var(--bs-body-bg);
    --bs-btn-bg: var(--bs-main-btn-bg);
    --bs-btn-border-color: var(--bs-main-btn-bg);
    --bs-btn-hover-color: var(--bs-body-bg);
    --bs-btn-hover-bg: var(--bs-main-btn-hover-bg);
    --bs-btn-hover-border-color: var(--bs-main-btn-hover-bg);
    --bs-btn-focus-shadow-rgb: var(--bs-main-btn-bg);
    --bs-btn-active-color: var(--bs-body-bg);
    --bs-btn-active-bg: var(--bs-main-btn-bg);
    --bs-btn-active-border-color: var(--bs-main-btn-bg);
}

.alert-danger {
    color: var(--bs-text-color);
    background-color: var(--bs-btn-bg-subtle);
    border: none;
}

.card {
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--bs-dark)
}

    .card.theme-teaser {
        background-image: url("../img/teaser/starwars-bg.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.1), /* outer shadow */ inset 0px 0px 10px 0px rgba(0, 0, 0, 1); /* inner shadow */
    }
/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */
/* Carousel base class */
.carousel {
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 7px rgba(0, 0, 0, .25);
    transition: all 0.3s ease;
    margin-top: -3rem;
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
    text-align: center;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 10;
    padding: 0 1rem 0;
}

.carousel-headline {
    position: absolute;
    top: 50%; /* move the top edge to 50% down the container */
    left: 0;
    right: 0;
    transform: translateY(-50%); /* shift it up by half its own height */
    text-align: center;
    z-index: 11;
    padding: 0 1rem;
}

    .carousel-headline h1, .carousel-headline h2 {
        font-size: 1.3rem;
        margin: 0 0 2rem;
        max-width: none;
        text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.8);
    }

    .carousel-headline p {
        display: none
    }

.carousel-caption .btn-container {
    padding-bottom: 1.7rem;
}

@media (min-width: 576px) {
    .carousel-headline h1, .carousel-headline h2 {
        font-size: 2rem;
        margin: 0.5rem 0;
    }

    .carousel-headline p {
        font-size: 1rem;
        display: block
    }
}

@media (min-width: 768px) {
    .carousel-headline h1, .carousel-headline h2 {
        font-size: 2.3rem;
        margin: 0.5rem 0;
    }

    .carousel-headline p {
        font-size: 1rem;
        display: block
    }

    .carousel-caption .btn-container {
        padding-bottom: 3rem;
    }
}

@media (min-width: 1200px) {
    .carousel-headline {
        text-align: left;
        padding: 0 5rem;
    }

        .carousel-headline h1, .carousel-headline h2 {
            font-size: 3.4rem;
            margin: 1rem 0;
            text-shadow: 0px 1px 20px rgba(0, 0, 0, 0.8);
        }

        .carousel-headline p {
            font-size: 1.25rem;
            text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.8);
        }

    .carousel-caption .btn-container {
        padding-bottom: 3rem;
    }
}
/* Declare heights because of positioning of img element */
.carousel-item {
    width: 100%;
    height: 100%;
    aspect-ratio: 640/345;
}

@media (min-width: 768px) {
    .carousel-item {
        aspect-ratio: 1920/590;
    }
}

@media (min-width: 992px) {
    .carousel {
        margin: -3rem -1.5rem 0 !important;
    }
}

@media (min-width: 1636px) {
    footer {
        border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0 0;
    }

    .carousel {
        border-radius: var(--bs-border-radius-lg);
        margin: -1.5rem 0rem -1.5rem !important;
    }
}

.carousel-indicators [data-bs-target], .glider-dot {
    width: 4px;
    height: 4px;
    margin-right: 6px;
    margin-left: 6px;
    border-radius: 50%;
    opacity: .3;
    transition: opacity .6s ease;
}

@media (min-width: 768px) {
    .carousel-indicators [data-bs-target], .glider-dot {
        width: 8px;
        height: 8px;
    }
}

.carousel-indicators .active, .glider-dot.active {
    opacity: 1;
}

/* Klikflade paa mindst 24 x 24 px (WCAG 2.5.8). Prikken tegnes i samme stoerrelse som foer - resten er
   gennemsigtig kant. Bootstrap giver allerede slideshowets prikker 10 px kant foroven og forneden.
   Prikkerne kommer til at staa lidt laengere fra hinanden, fordi klikfladerne ikke maa overlappe. */
.carousel-indicators [data-bs-target] {
    box-sizing: content-box;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    margin-left: 0;
    margin-right: 0;
}

@media (min-width: 768px) {
    .carousel-indicators [data-bs-target] {
        border-left-width: 8px;
        border-right-width: 8px;
    }
}

/* Prikkerne er naesten gennemsigtige - med tastaturfokus skal den valgte vaere tydelig. */
.carousel-indicators [data-bs-target]:focus-visible {
    opacity: 1;
}

/* Pause/afspil i slideshowet (WCAG 2.2.2). Samme hvide farve som prikkerne, 24 x 24 px klikflade. */
.carousel-pause {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    align-self: center;
    width: 24px;
    height: 24px;
    margin-left: 4px;
    padding: 0;
    background: none;
    border: 0;
    color: var(--bs-carousel-indicator-active-bg, #fff);
    opacity: .6;
    cursor: pointer;
    transition: opacity .6s ease;
}

    .carousel-pause:hover,
    .carousel-pause:focus-visible {
        opacity: 1;
    }

.carousel-pause__icon {
    width: 8px;
    height: 8px;
    fill: currentColor;
}

@media (min-width: 768px) {
    .carousel-pause {
        margin-left: 6px;
    }

    .carousel-pause__icon {
        width: 11px;
        height: 11px;
    }
}

.carousel-pause__icon--play,
.carousel-pause.is-paused .carousel-pause__icon--pause {
    display: none;
}

.carousel-pause.is-paused .carousel-pause__icon--play {
    display: block;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-pause {
        transition: none;
    }
}

.carousel-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(51, 51, 51, 0.3);
    background: linear-gradient(3deg, rgba(0, 0, 0, .3) 0%, rgba(0, 0, 0, 0) 40%);
    z-index: 0;
    pointer-events: none;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
}

.carousel-control-next, .carousel-control-prev {
    width: calc(46px + 2rem);
    z-index: 100;
}

.carousel-indicators {
    z-index: 110;
}
/* MARKETING CONTENT
-------------------------------------------------- */
/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
    margin-bottom: 1.5rem;
    text-align: center;
}
    /* rtl:begin:ignore */
    .marketing .col-lg-4 p {
        margin-right: .75rem;
        margin-left: .75rem;
    }
/* rtl:end:ignore */
/* Featurettes
------------------------- */
.featurette-divider {
    margin: 5rem 0; /* Space out the Bootstrap <hr> more */
}
/* Thin out the marketing headings */
/* rtl:begin:remove */
.featurette-heading {
    letter-spacing: -.05rem;
}
/* rtl:end:remove */
/* RESPONSIVE CSS
-------------------------------------------------- */
@media (min-width: 40em) {
    .featurette-heading {
        font-size: 50px;
    }
}

@media (min-width: 62em) {
    .featurette-heading {
        margin-top: 7rem;
    }
}

.bd-placeholder-img {
    font-size: 1.125rem;
    text-anchor: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

@media (min-width: 768px) {
    .bd-placeholder-img-lg {
        font-size: 3.5rem;
    }
}

.b-example-divider {
    width: 100%;
    height: 3rem;
    background-color: rgba(0, 0, 0, .1);
    border: solid rgba(0, 0, 0, .15);
    border-width: 1px 0;
    box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.b-example-vr {
    flex-shrink: 0;
    width: 1.5rem;
    height: 100vh;
}

.bi {
    vertical-align: -.125em;
    fill: currentColor;
}

.nav-scroller {
    position: relative;
    z-index: 2;
    height: 2.75rem;
    overflow-y: hidden;
}

    .nav-scroller .nav {
        display: flex;
        flex-wrap: nowrap;
        padding-bottom: 1rem;
        margin-top: -1px;
        overflow-x: auto;
        text-align: center;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

.btn-bd-primary {
    --bs-btn-font-weight: 600;
    --bs-btn-color: var(--bs-body-bg);
    --bs-btn-bg: var(--bs-secondary-btn-bg);
    --bs-btn-border-color: var(--bs-secondary-btn-bg);
    --bs-btn-hover-color: var(--bs-body-bg);
    --bs-btn-hover-bg: var( --bs-secondary-btn-hoverbg);
    --bs-btn-hover-border-color: var(--bs-secondary-btn-hoverbg);
    --bs-btn-focus-shadow-rgb: var(--bs-secondary-btn-bg);
    --bs-btn-active-color: var(--bs-btn-hover-color);
    --bs-btn-active-bg: var(--bs-secondary-btn-bg);
    --bs-btn-active-border-color: var(--bs-secondary-btn-bg);
}

.bd-mode-toggle {
    z-index: 1500;
}

    .bd-mode-toggle .dropdown-menu .active .bi {
        display: block !important;
    }

.banner-wrapper {
    /* padding-right: 2rem;*/
    -webkit-transition: all .3s ease-out;
    transition-behavior: normal;
    transition-delay: 0s;
    transition-duration: 0.3s;
    transition-property: all;
}

.banner {
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--bs-primary);
    box-sizing: border-box;
    background-size: cover;
    background-position: center center;
    cursor: pointer;
    /* padding: 25px; */
    aspect-ratio: 4/3;
    width: 100%;
    min-height: auto;
    box-shadow: 0 4px 7px rgba(0, 0, 0, .45);
    margin-bottom: 8px;
    overflow: hidden;
}

    .banner.movieposter {
        aspect-ratio: 350/519;
    }

    .banner .overlay {
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(51, 51, 51, 0.3);
        background: linear-gradient(123deg, rgba(255, 255, 255, 0.2) 0%, rgba(0, 0, 0, 0.4) 100%);
        z-index: 0;
        cursor: pointer;
        opacity: 0;
        transition: opacity 0.4s ease-in-out;
        -webkit-font-smoothing: antialiased;
    }

.banner-wrapper:hover {
    transform: matrix(0.99, 0, 0, 0.99, 0, 0);
}

    .banner-wrapper:hover .banner {
        box-shadow: 0 4px 7px rgba(10, 10, 10, .25);
    }

        .banner-wrapper:hover .banner .overlay {
            opacity: 1;
        }

.banner-wrapper {
    margin-bottom: 1em;
}

    .banner-wrapper p {
        margin-left: 1rem !important;
        font-weight: 500;
        margin-bottom: 0;
    }

        .banner-wrapper p.small {
            font-weight: 400;
            color: rgba(255, 255, 255, 0.55);
        }

div[data-content-element-type-alias="blockOverskrift"], div[data-content-element-type-alias="blockUnderoverskrift"], div[data-content-element-type-alias="blockRichText"] {
    max-width: 920px;
}

div[data-content-element-type-alias="blockUnderoverskrift"] {
}

div[data-content-element-type-alias="blockRichText"] {
    margin-bottom: 2.5rem;
}

.umb-block-grid__layout-container:has([data-content-element-type-alias="box"]), [data-content-element-type-alias="box"] {
    height: 100%;
}
/* Move badge to top-left instead of bottom-right */
.grecaptcha-badge {
    position: fixed !important;
    bottom: auto !important;
    right: auto !important;
    top: 1rem !important;
    left: 1rem !important;
    height: 0px !important;
    width: 0px !important;
    z-index: 1000;
}
/* Shrink it slightly (optional) */
/* re‐enable hover on slide images */
.glider-slide img {
    max-width: 100%;
    margin-top: 1rem;
    user-select: none;
}
/* News‐post container */
.news-post {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1rem 1rem 0;
    overflow: visible; /* allow shadows/scale to show */
}
    /* News‐post image */
    .news-post img {
        border-radius: 0.5rem !important;
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
        max-width: 100% !important;
        height: auto !important;
        width: 100% !important;
        transition: all .3s ease-out; /* shorthand for your transitions */
        pointer-events: auto !important; /* ensure hover works */
    }

        .news-post img:hover {
            transform: scale(1.02);
            box-shadow: 0 4px 7px rgba(10, 10, 10, .25) !important;
        }

    .news-post .synopsis {
        flex-grow: 1;
        overflow-y: auto;
    }

    .news-post .btn {
        margin-top: auto;
    }
/* Container and track setup */
.glider, .glider-contain {
    position: relative;
    transform: translateZ(0);
}

.glider-contain {
    margin: 0 auto 2rem;
}

.glider {
    margin: 0 -15px;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
}

@media (min-width: 1650px) {
    .glider {
    }
}

.glider-track {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    z-index: 1;
    transition-timing-function: ease-in-out !important;
}

.glider-padding .glider-track > div {
    margin: 0 1rem;
}
/* Slides */
.glider-slide {
    user-select: none;
    justify-content: center;
    align-content: center;
    width: 100%;
    min-width: 150px;
    height: 100%;
}

    .glider-slide img {
        max-width: 100%;
        margin-top: 1rem;
        user-select: none;
        pointer-events: none;
    }
/* Draggable states */
.glider.draggable {
    user-select: none;
    cursor: grab;
    overflow: hidden;
}

.glider.drag {
    cursor: grabbing;
}
/* Scrollbar reset */
.glider::-webkit-scrollbar {
    opacity: 0;
    height: 0;
}

@media (max-width: 576px) {
    .glider::-webkit-scrollbar {
        opacity: 1;
        -webkit-appearance: none;
        width: 7px;
        height: 3px;
    }

    .glider::-webkit-scrollbar-thumb {
        /* opacity: 1;
        border-radius: 99px;
        background-color: rgba(156, 156, 156, .25);
        box-shadow: 0 0 1px rgba(255, 255, 255, .25);
           */
    }
}
/* Arrows */
/* Glider arrows – remove the empty background-color rule */
.glider-next, .glider-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 0;
    outline: 0;
    user-select: none;
    font-size: 2rem;
    color: #000;
    z-index: 10;
    transition: opacity .5s cubic-bezier(.17, .67, .83, .67), color .5s cubic-bezier(.17, .67, .83, .67);
    opacity: 1;
}

    .glider-next span, .glider-prev span {
        filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 1));
    }

.glider-prev {
    left: 0rem;
}

.glider-next {
    right: 0rem;
}

@media (max-width: 576px) {
    .glider-next, .glider-prev {
        display: none;
    }
}

.glider-next.disabled, .glider-prev.disabled {
    opacity: .25;
    cursor: default;
    color: #666;
}

.glider-next:focus, .glider-next:hover, .glider-prev:focus, .glider-prev:hover {
    color: #ccc;
}
/* Dots */
.glider-dots {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 1rem auto 0;
    padding: 0;
    user-select: none;
    text-align: center;
}

.glider-dot {
    font-size: 0px;
    margin: 0 5px;
    padding: 0;
    background: #fff;
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    border: 0;
}

    .glider-dot:hover, .glider-dot:focus {
        background: var(--bs-btn-bg);
    }

    .glider-dot.active {
        background: #fff;
    }

/* Klikflade paa mindst 24 x 24 px for Glider-prikkerne (WCAG 2.5.8). Prikken er stadig 4 px (8 px paa
   stoerre skaerme) - resten er gennemsigtig kant. Den negative margen holder prikkerne og indholdet
   under dem paa samme plads som foer. */
.glider-dot {
    box-sizing: content-box;
    border: 10px solid transparent;
    margin: 0;
}

    .glider-dot,
    .glider-dot:hover,
    .glider-dot:focus,
    .glider-dot.active {
        background-clip: padding-box;
    }

.glider-dots {
    margin: calc(1rem - 10px) auto -10px;
}

@media (min-width: 768px) {
    .glider-dot {
        border-width: 8px;
    }

    .glider-dots {
        margin: calc(1rem - 8px) auto -8px;
    }
}
/* Utility */
.glider-hide {
    opacity: 0;
}

/* Position arrows to the sides of the glider track, vertically centred on the poster image */
.glider-contain {
    position: relative;
}

.glider-btn {
    position: absolute;
    top: 90px; /* approx. half the poster image height — adjust to match your poster */
    transform: translateY(-50%);
    z-index: 10;
    background: rgba(0, 0, 0, 0.45);
    border: none;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
}

    .glider-btn:hover {
        background: rgba(0, 0, 0, 0.75);
    }

/* Push the prev arrow to the left edge and the next arrow to the right edge */
.glider-contain .glider-btn:first-of-type {
    left: 0;
}

.glider-contain .glider-btn:last-of-type {
    right: 0;
}

/* Minimal modern look */
.nfy-wrap {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: 14px 16px;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
    font: 14px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    color: #fff;
}

.nfy-icon {
    font-size: 18px;
    line-height: 1;
    margin-top: 1px;
}

.nfy-content {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.nfy-title {
    font-weight: 700;
    letter-spacing: .2px;
}

.nfy-msg {
    opacity: .95;
}

/* Fejlbeskeder forsvinder ikke af sig selv (WCAG 2.2.1), saa de skal kunne lukkes - med klik
   paa beskeden, Escape eller denne knap. */
/* notify.js erstatter klassen nfy-wrap med notifyjs-modern-base, naar beskeden vises, saa den er
   en almindelig blok. Knappen placeres derfor absolut i oeverste hoejre hjoerne. */
.notifyjs-corner .notifyjs-modern-base {
    position: relative;
    padding-right: 3rem;
}

.nfy-close {
    position: absolute;
    top: 6px;
    right: 8px;
    padding: 2px 8px;
    background: none;
    border: 0;
    color: inherit;
    font-size: 22px;
    line-height: 1;
    opacity: .8;
    cursor: pointer;
}

    .nfy-close:hover,
    .nfy-close:focus-visible {
        opacity: 1;
    }
/* Palette */
.notifyjs-modern-base {
    background: #111827;
}

.notifyjs-modern-success {
    background: #065f46;
}
/* emerald-900 */
.notifyjs-modern-error {
    background: #7f1d1d;
    padding: 15px;
}
/* red-900 */
/* Top-center stack spacing */
.notifyjs-corner {
    width: 98%;
    left: 0 !important;
    right: 0;
    display: flex;
    justify-content: center;
    pointer-events: none;
    margin: 1%;
}

    .notifyjs-corner > div {
        pointer-events: auto;
        margin-top: 10px;
    }
/* Hover lift */
.nfy-wrap {
    transition: transform .15s ease, box-shadow .15s ease;
}

    .nfy-wrap:hover {
        transform: translateY(-2px);
        box-shadow: 0 16px 36px rgba(0, 0, 0, .22);
    }


.sticky-top {
    max-width: 1640px;
    margin: 0 auto;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}


/* FAQ Accordion Styles */
.faq-accordion .accordion-item {
    background-color: rgba(var(--bs-box-color-rgb), 1);
    border: none;
    border-radius: var(--bs-border-radius-lg);
    margin-bottom: 1rem;
    overflow: hidden;
}

.faq-accordion h2 {
    max-width: none;
    margin: 0;
}

.faq-accordion .accordion-button {
    background-color: rgba(var(--bs-box-color-rgb), 1);
    color: var(--bs-text-color);
    font-weight: 600;
    font-size: 1.1rem;
    padding: 1.25rem 3.5rem 1.25rem 1.5rem;
    border: none;
    box-shadow: none;
    position: relative;
}

    .faq-accordion .accordion-button:not(.collapsed) {
        background-color: rgba(var(--bs-box-color-rgb), 1);
        color: rgb(var(--bs-brand-brand-rgb));
        box-shadow: none;
        padding-bottom: 1.25rem;
    }

    .faq-accordion .accordion-button:focus {
        box-shadow: none;
        border-color: transparent;
    }

    .faq-accordion .accordion-button::after {
        position: absolute;
        right: 1.5rem;
        margin-left: 0;
        filter: brightness(0) invert(1);
    }

    .faq-accordion .accordion-button:not(.collapsed)::after {
        filter: brightness(0) invert(1);
    }

.faq-accordion .accordion-body {
    background-color: rgba(var(--bs-box-color-rgb), 1);
    color: var(--bs-text-color);
    padding: 1.25rem 1.5rem 1.5rem 1.5rem;
    line-height: 1.6;
}

.faq-accordion .accordion-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.d-none{
    display:none !important;
}
div[data-content-element-type-alias="blockOverskrift"], div[data-content-element-type-alias="blockUnderoverskrift"], div[data-content-element-type-alias="blockRichText"] {
    max-width: none;
}
.global-search__toggle {
    background: transparent;
    border: 0;
    cursor: pointer;
    color: inherit;
}

.global-search {
    position: absolute;
    top: calc(100% + 12px);
    right: 24px;
    width: min(520px, calc(100vw - 40px));
    background: rgba(var(--bs-nav-bg-rgb), 0.98);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 12px;
    box-shadow: 0 18px 32px rgba(0, 0, 0, 0.32);
    padding: 1.1rem;
    z-index: 1080;
}

.global-search__label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.global-search__input-group {
    display: flex;
    gap: 0.6rem;
}

.global-search__input {
    min-height: 44px;
}

.global-search__submit {
    white-space: nowrap;
}

.global-search__preview {
    margin-top: 0.9rem;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 0.8rem;
}

.global-search__preview-item + .global-search__preview-item {
    margin-top: 0.65rem;
}

.global-search__preview-link {
    display: block;
    text-decoration: none;
    color: inherit;
    padding: 0.5rem 0.6rem;
    border-radius: 8px;
    transition: background-color 0.18s ease;
}

.global-search__preview-link:hover,
.global-search__preview-link:focus-visible {
    background: rgba(255, 255, 255, 0.12);
}

.global-search__preview-title {
    display: block;
    font-weight: 600;
    margin-bottom: 0.2rem;
}

.global-search__preview-excerpt {
    display: block;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.92rem;
}

.global-search__preview-empty {
    color: rgba(255, 255, 255, 0.78);
    padding: 0.2rem 0.1rem;
}

.global-search__all-results {
    display: inline-block;
    margin-top: 0.9rem;
    font-weight: 600;
}

.search-page__count {
    color: rgba(255, 255, 255, 0.8);
}

.search-page__result {
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.search-page__title {
    text-decoration: none;
}

.search-page .pagination .page-link {
    background-color: rgba(var(--bs-box-color-rgb), 0.9);
    border-color: rgba(255, 255, 255, 0.22);
    color: var(--bs-link-color);
}

.search-page .pagination .page-item.active .page-link {
    background-color: var(--bs-main-btn-bg);
    border-color: var(--bs-main-btn-bg);
    color: #fff;
}

@media (max-width: 991.98px) {
    .global-search {
        right: 16px;
    }
}

.box .box{
    padding:5px !important;
}

/* PDF Viewer */
/* PDF Object Viewer */
.pdf-object-wrapper {
    position: relative;
    width: 100%;
    padding-top: 150%; /* portrait aspect ratio — adjust to taste */
    margin-bottom: 1.5rem;
}

    .pdf-object-wrapper object {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none;
        border-radius: var(--bs-border-radius-lg);
    }
.row.equal-height .umb-block-grid__layout-container {
    height: 100%;
}

.row.equal-height .umb-block-grid__layout-item {
    height: 100%
}

/* Nyhedsbrevs-popup */
.newsletter-popup {
    position: fixed;
    inset: 0;
    z-index: 1090;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

    .newsletter-popup[hidden] {
        display: none;
    }

.newsletter-popup__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.62);
    backdrop-filter: blur(4px);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.newsletter-popup__dialog {
    position: relative;
    width: min(560px, 100%);
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    margin-bottom: 0;
    padding: 2.25rem 1.75rem 1.75rem;
    background-color: rgba(var(--bs-box-color-rgb), 1);
    border-radius: var(--bs-border-radius-lg, 0.75rem);
    border-top: 4px solid var(--bs-main-btn-bg, #992D26);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
    opacity: 0;
    transform: translateY(16px) scale(0.98);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.newsletter-popup--visible .newsletter-popup__backdrop {
    opacity: 1;
}

.newsletter-popup--visible .newsletter-popup__dialog {
    opacity: 1;
    transform: none;
}

.newsletter-popup__close {
    position: absolute;
    top: 0.65rem;
    right: 0.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 50%;
    color: inherit;
    opacity: 0.65;
    cursor: pointer;
    transition: background-color 0.18s ease, opacity 0.18s ease;
}

    .newsletter-popup__close:hover,
    .newsletter-popup__close:focus-visible {
        background: rgba(255, 255, 255, 0.12);
        opacity: 1;
    }

.newsletter-popup__content {
    margin-bottom: 1.4rem;
    padding-right: 1.75rem;
}

    .newsletter-popup__content > :last-child {
        margin-bottom: 0;
    }

    .newsletter-popup__content h1,
    .newsletter-popup__content h2,
    .newsletter-popup__content h3,
    .newsletter-popup__content h4 {
        margin-bottom: 0.6rem;
    }

.newsletter-popup__form .input-group {
    flex-wrap: nowrap;
}

.newsletter-popup__message {
    margin-bottom: 1.25rem;
    padding: 0.9rem 1rem;
    border-radius: calc(var(--bs-border-radius-lg, 0.75rem) / 2);
    border-left: 4px solid var(--bs-main-btn-bg, #992D26);
    background: rgba(255, 255, 255, 0.08);
}

    .newsletter-popup__message--error {
        border-left-color: #d9534f;
    }

.newsletter-popup__done {
    width: 100%;
}

body.newsletter-popup-open {
    overflow: hidden;
}

@media (max-width: 575.98px) {
    .newsletter-popup__dialog {
        padding: 2rem 1.15rem 1.25rem;
    }

    .newsletter-popup__form .input-group {
        flex-wrap: wrap;
        gap: 0.6rem;
    }

        .newsletter-popup__form .input-group > .form-floating,
        .newsletter-popup__form .input-group > .btn {
            width: 100%;
            border-radius: var(--bs-border-radius) !important;
        }
}

@media (prefers-reduced-motion: reduce) {
    .newsletter-popup__backdrop,
    .newsletter-popup__dialog {
        transition: none;
    }

    .newsletter-popup__dialog {
        transform: none;
    }
}
