



:root {
--testColorMain: #424242;
--testColorSecondary: #670001;
}




div.logo-inline-style#mainNavbar > ul.navbar-nav > li > a {
color: #424242;
border-color: #424242 !important;
}

div.stacked-style#mainNavbar > ul.navbar-nav {
background-color: rgba(103,0,1, 1) !important;
}

div.stacked-style#mainNavbar > ul.navbar-nav > li > a {
color: #000 !important;
}

div.stacked-inverse-style#mainNavbar > ul.navbar-nav {
background-color: rgba(103,0,1, 1) !important;
}

div.stacked-inverse-style#mainNavbar > ul.navbar-nav > li > a {
color: #fff !important;
}



.main-navbar .navbar-brand {
color: #424242;
}

    
        .main-navbar .navbar-toggler {
        background-color: rgba(103,0,1, 1) !important;
        color: #ffffff;
        }
    


.main-navbar .navbar-brand {
height: 45px;
    margin-top: 0px;
    margin-bottom: 0px;
    overflow: hidden;
    }

@media (max-width: 991px) {
.main-navbar .navbar-brand {
    max-height: 120px; important
}
.main-navbar .navbar-brand img {
max-height: 120px; important
}
}


    @media (min-width: 992px) {
    div.logo-inline-style#mainNavbar > ul.navbar-nav > li > a {
    border: 1px solid #424242;
    }
    }





    .main-navbar {
        
            background-color: #670001;
            color: #424242;
            }

    .dropdown-submenu {
    position: relative;
    }

    .dropdown-submenu a::after {
    transform: rotate(-90deg);
    position: absolute;
    right: 6px;
    top: .8em;
    }

    .dropdown-submenu .dropdown-menu {
    position: relative !important;
    margin: 1rem !important;
    }





    .custom-link-color a, .custom-link-color a:link, .custom-link-color a:visited, .custom-link-color a:active
    {
    color: #222222;
    }

    .m-t-r {
    padding-top: 1px;
    }

    @media (max-width: 979px) {
    .header-banner {
    margin-right: -20px;
    margin-left: -20px;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 20px;
    }
    .navbar-fixed-top {
    margin-bottom: 0;
    }
    }



    #content-area .header-color, #dialog-area .header-color
    {
    background-color: #670001;
    color: #424242;
    }

    .panel-header-color {
    border-color: #670001;
    }

    .addLogoText
    {
    font-size: 2.5em;
    font-family: Tahoma, "Arial Narrow", verdana, sans-serif;
    font-weight: bold;
    padding-left: 10px;
    margin-bottom: 20px;
    letter-spacing: 0.05em;
    line-height: 45px;
    float: left;
    
    }

    .logoText
    {
    line-height: 45px;
    
    }

    .logo a, .m-t-r .brand
    {
    color: #424242;
    }

    .content-color
    {
    background-color: #FFFFFF;
    color: #222222;
    }


    .content-lower-container
    {
    background-color: #e0e0e0;
    color:#321111;
    text-decoration: none;
    }

    @media (max-width: 767px) {
    .content-lower-container {
    background-color: #fff;
    color:#321111;
    text-decoration: none;
    }

    .footer-item {
    background-color: #e0e0e0;
    margin-bottom: 1rem;
    }
    }


    .content-lower-container a, .content-lower-container a:hover{
    color:#321111;
    }

    .nav-back
    {
    background-color: #33A5FF;
    }




    .menu-colors
    {
    color: #424242;
    background-color: #33A5FF;
    }

    .banner .links a
    {
    color: #424242;
    background-color: #33A5FF;
    }

    .list-group-item.active, .nav-pills .nav-link.active {
    color: #ffffff !important;
    background-color: #424242 !important;
    border-color: #424242 !important;
    }

    .list-group-item a, .nav-pills .nav-item a.nav-link {
    color: #424242 !important;
    }

    .list-group-item.active a, .nav-pills .nav-item a.nav-link.active {
    color: #ffffff !important;
    }


    .dropdown-item.active, .dropdown-item:active {
    background-color: #424242 !important;
    }

    /* 1. Hent Montserrat skrifttypen */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600&display=swap');

/* 2. Fjern den hvide boks og runde hjørner */
#mainNavbar ul.navbar-nav {
    background-color: transparent !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 3. Styling af links: Her ændrer du størrelsen */
#mainNavbar ul.navbar-nav > li > a.nav-link {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important; 
    color: #ffffff !important;           
    font-weight: 550 !important;
    
    /* --- ÆNDR SKRIFTSTØRRELSE HERUNDER --- */
    font-size: 14px !important; 
    /* -------------------------------------- */
    
    letter-spacing: 1px !important;
    transition: color 0.3s ease-in;
    padding: 10px 15px !important;
    text-decoration: none !important;
}

/* 4. Hover-effekt */
#mainNavbar ul.navbar-nav > li > a.nav-link:hover {
    color: #fee1e2 !important;
}

/* =========================================================
   RIPENSERSAMFUNDET - FÆLLES SIDEDESIGN
   ========================================================= */

/* Fælles topfelt */
.ripenser-side-header {
    background: #831b1d;
    padding: 40px 25px;
    text-align: center;
}

/* Fælles sidetitel */
.ripenser-side-title {
    color: #ffffff !important;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 28px;
    letter-spacing: 3px;
    line-height: 1.25;
    margin: 0;
}

/* Fælles indholdsbredde */
.ripenser-side-content {
    max-width: 900px;
    margin: 0 auto;
    padding: 50px 35px;
}

/* Fælles sektionsoverskrifter */
.ripenser-section-title {
    color: #831b1d;
    text-transform: uppercase;
    font-size: 20px;
    letter-spacing: 1px;
    margin-top: 55px;
    margin-bottom: 25px;
}

/* =========================================================
   VELKOMMEN - TRE GENERATIONSBILLEDER
   ========================================================= */

.ripenser-generationer {
    display: flex;
    flex-wrap: nowrap;
    gap: 18px;
    align-items: stretch;
    margin: 30px 0 40px 0;
}

.ripenser-generationer > div {
    flex: 1 1 0;
    min-width: 0;
}

.ripenser-generationer > div img {
    width: 100% !important;
    height: 260px !important;
    max-width: 100% !important;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* =========================================================
   MOBIL
   ========================================================= */

@media (max-width: 700px) {

    .ripenser-side-header {
        padding: 28px 18px;
    }

    .ripenser-side-title {
        font-size: 20px !important;
        letter-spacing: 1.5px !important;
        line-height: 1.3 !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
    }

    .ripenser-side-content {
        padding: 35px 20px;
    }

    .ripenser-section-title {
        font-size: 18px;
        line-height: 1.4;
    }

    .ripenser-generationer {
        flex-direction: column;
        gap: 28px;
    }

    .ripenser-generationer > div {
        width: 100%;
    }

    .ripenser-generationer > div img {
        width: 100% !important;
        height: 240px !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}

/* =========================================================
   BESTYRELSEN
   ========================================================= */

.ripenser-bestyrelse-content {
    max-width: 1100px !important;
}

.ripenser-bestyrelse-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 35px;
    width: 100%;
}

.ripenser-personkort {
    width: calc(50% - 15px);
    box-sizing: border-box;
    padding: 28px;
    border: 1px solid #e5e5e5;
    background: #ffffff;
}

.ripenser-personfoto {
    width: 120px !important;
    height: 150px !important;
    max-width: 120px !important;
    object-fit: cover;
    object-position: center;
    display: block;
    margin: 0 0 22px 0;
}

.ripenser-personfoto-placeholder {
    width: 120px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin: 0 0 22px 0;
    padding: 10px;
    background: #f2f2f2;
    color: #777777;
    font-size: 13px;
    text-align: center;
}

.ripenser-personindhold {
    width: 100%;
}

.ripenser-personindhold h2 {
    margin: 0 0 6px 0;
    color: #222222;
    font-size: 22px;
    line-height: 1.3;
}

.ripenser-personmeta {
    margin: 0 0 16px 0;
    color: #777777;
    font-size: 13px;
    line-height: 1.4;
}

.ripenser-personindhold h3 {
    margin: 0 0 18px 0;
    color: #831b1d;
    font-size: 16px;
    line-height: 1.4;
}

.ripenser-personindhold p {
    margin-top: 0;
    margin-bottom: 15px;
    line-height: 1.65;
}

.ripenser-personkontakt {
    margin-top: 20px !important;
    padding-top: 14px;
    border-top: 1px solid #eeeeee;
}

.ripenser-personkontakt a {
    color: #831b1d !important;
    text-decoration: none;
    font-weight: 600;
    word-break: break-word;
}

.ripenser-personkontakt a:hover {
    text-decoration: underline;
}

.ripenser-afventer {
    color: #777777;
    font-style: italic;
}

.ripenser-funktionsliste {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.ripenser-funktionsliste > div {
    width: calc(50% - 10px);
    box-sizing: border-box;
}


/* =========================================================
   BESTYRELSEN - MOBIL
   ========================================================= */

@media (max-width: 700px) {

    .ripenser-bestyrelse-grid {
        display: block;
        margin-top: 30px;
    }

    .ripenser-personkort {
        width: 100%;
        margin-bottom: 25px;
        padding: 22px 20px;
    }

    .ripenser-personfoto,
    .ripenser-personfoto-placeholder {
        width: 120px !important;
        height: 150px !important;
        max-width: 120px !important;
        margin: 0 auto 20px auto;
    }

    .ripenser-personindhold h2 {
        font-size: 20px;
    }

    .ripenser-funktionsliste {
        display: block;
    }

    .ripenser-funktionsliste > div {
        width: 100%;
    }
}

/* =========================================================
   RIPENSERBLADET - DIGITALT ARKIV
   ========================================================= */

.ripenser-blad-arkiv {
    margin-top: 35px;
}

.ripenser-blad-aar {
    margin-top: 45px;
    margin-bottom: 20px;
    color: #831b1d;
    font-size: 22px;
    font-weight: 700;
}

.ripenser-blad-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
}

.ripenser-blad-kort {
    width: calc(33.333% - 19px);
    box-sizing: border-box;
    text-align: center;
}

.ripenser-blad-kort a {
    color: #831b1d;
    text-decoration: none;
}

.ripenser-blad-forside {
    width: 100% !important;
    height: auto !important;
    display: block;
    border: 1px solid #dddddd;
    box-shadow: 0 4px 12px rgba(0,0,0,0.10);
}

.ripenser-blad-titel {
    margin: 12px 0 0 0;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
}

.ripenser-blad-adgang {
    margin-top: 50px;
    padding: 30px;
    background: #f7f7f7;
    border-left: 4px solid #831b1d;
}

.ripenser-blad-adgang h3 {
    margin-top: 0;
    color: #831b1d;
}


/* Mobil */
@media (max-width: 700px) {

    .ripenser-blad-grid {
        display: block;
    }

    .ripenser-blad-kort {
        width: 100%;
        max-width: 280px;
        margin: 0 auto 35px auto;
    }
}

/* Information om adgang til medlemsarkivet */

.ripenser-blad-note {
    margin-top: 30px;
    padding: 24px 28px;
    background: #f7f7f7;
    border-left: 4px solid #831b1d;
    font-size: 14px;
    line-height: 1.65;
}

.ripenser-blad-note h3 {
    margin: 0 0 12px 0;
    color: #831b1d;
    font-size: 17px;
}

.ripenser-blad-note p {
    margin: 0;
}

/* =========================================================
   RIPENSERBLADET - SEKTIONER
   ========================================================= */

.ripenser-blad-sektion {
    max-width: 1100px;
    margin: 0 auto;
    padding-left: 35px;
    padding-right: 35px;
    box-sizing: border-box;
}

@media (max-width: 700px) {
    .ripenser-blad-sektion {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* =========================================================
   RIPENSERBLADET - SEKTIONER
   ========================================================= */

.ripenser-blad-sektion {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 35px;
    box-sizing: border-box;
}

.ripenser-blad-sektion .ripenser-side-content {
    max-width: none;
    margin: 0;
    padding: 15px 0;
}

.ripenser-blad-sektion .ripenser-blad-adgang {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.ripenser-blad-sektion .ripenser-blad-arkiv {
    margin-top: 0;
}

@media (max-width: 700px) {
    .ripenser-blad-sektion {
        padding: 0 20px;
    }
}

.ripenser-blad-intro {
    margin: 28px 0 30px 0;
}

.ripenser-blad-intro p {
    margin: 0;
}

.ripenser-blad-adgang {
    margin-top: 0 !important;
}

/* =========================================================
   RIPENSERBLADET - PERIODENAVIGATION
   ========================================================= */

.ripenser-blad-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 10px 0 35px 0;
}

.ripenser-blad-nav a {
    display: inline-block;
    padding: 9px 16px;
    border: 1px solid #831b1d;
    color: #831b1d !important;
    background: #ffffff;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
}

.ripenser-blad-nav a:hover {
    background: #831b1d;
    color: #ffffff !important;
}

.ripenser-blad-anker {
    scroll-margin-top: 30px;
}

@media (max-width: 700px) {

    .ripenser-blad-nav {
        gap: 8px;
        margin-bottom: 28px;
    }

    .ripenser-blad-nav a {
        padding: 9px 12px;
        font-size: 13px;
    }
}

.ripenser-blad-introtekst {
    box-sizing: border-box;
}

@media (max-width: 700px) {
    .ripenser-blad-introtekst {
        min-width: 0 !important;
        width: 100% !important;
        padding: 35px 25px !important;
    }

    .ripenser-blad-introtekst h2 {
        font-size: 26px !important;
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 700px) {
    .ripenser-blad-section {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden;
    }
}

.ripenser-blad-indhold,
.ripenser-blad-grid {
    box-sizing: border-box;
}

@media (max-width: 700px) {

    .ripenser-blad-indhold {
        padding: 35px 25px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .ripenser-blad-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 35px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .ripenser-blad-grid > div {
        min-width: 0 !important;
        width: 100% !important;
    }

    .ripenser-blad-grid h4,
    .ripenser-blad-grid p,
    .ripenser-blad-grid a {
        overflow-wrap: anywhere;
        word-break: normal;
    }
}

/* Ribe Symposium */

.ripenser-symposium-motto {
    font-size: 20px;
    font-weight: 700;
    color: #831b1d;
    text-align: center;
    margin: 30px 0 10px;
}

.ripenser-symposium-donation {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-top: 55px;
}

.ripenser-symposium-foto {
    flex: 0 0 240px;
}

.ripenser-symposium-foto img {
    width: 100%;
    height: auto;
    display: block;
}

.ripenser-billedtekst {
    font-size: 13px;
    color: #666;
    margin-top: 8px;
    text-align: center;
}

.ripenser-symposium-tekst {
    flex: 1;
}

.ripenser-symposium-tekst .ripenser-section-title {
    margin-top: 0;
}

@media(max-width:700px) {

    .ripenser-symposium-donation {
        display: block;
    }

    .ripenser-symposium-foto {
        max-width: 240px;
        margin: 0 auto 30px;
    }

    .ripenser-symposium-motto {
        font-size: 18px;
        line-height: 1.4;
    }
}

/* Datapolitik */

.ripenser-table-wrap {
    width: 100%;
    overflow-x: auto;
    margin: 25px 0 35px;
}

.ripenser-policy-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
    line-height: 1.5;
}

.ripenser-policy-table th,
.ripenser-policy-table td {
    text-align: left;
    vertical-align: top;
    padding: 12px 14px;
    border-bottom: 1px solid #ddd;
}

.ripenser-policy-table th {
    font-weight: 700;
}

.ripenser-policy-updated {
    margin-top: 50px;
    font-size: 13px;
    color: #666;
}

@media(max-width:700px) {
    .ripenser-policy-table {
        font-size: 14px;
        min-width: 650px;
    }
}

/* Datapolitik - linkknapper */

.ripenser-data-buttons {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 40px;
}

.ripenser-data-button {
    display: block;
    padding: 28px 22px;
    text-decoration: none !important;
    color: #fff !important;
    background: linear-gradient(135deg, #9b2b2e 0%, #681416 100%);
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.16);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ripenser-data-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.20);
    color: #fff !important;
}

.ripenser-data-button-title {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 10px;
}

.ripenser-data-button-text {
    display: block;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
}

@media(max-width:700px) {
    .ripenser-data-buttons {
        grid-template-columns: 1fr;
    }

    .ripenser-data-button {
        padding: 24px 20px;
    }

    .ripenser-data-button-title {
        font-size: 17px;
    }
}

@media(max-width:700px) {
    .ripenser-title-statutes {
        display: block;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        text-align: center !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
        word-break: normal;
        font-size: 17px !important;
        letter-spacing: 0.8px !important;
        line-height: 1.25 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 8px;
        padding-right: 8px;
    }
}

/* Kontingent - mobil */

@media(max-width:700px) {

    /* Hovedindholdet under introduktionen */
    .ripenser-kontingent-sektion > div:nth-child(3) {
        padding: 30px 18px !important;
        box-sizing: border-box;
    }

    /* Betalingsboksene */
    .ripenser-kontingent-sektion > div:nth-child(3) > div:first-child {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        width: 100% !important;
    }

    .ripenser-kontingent-sektion > div:nth-child(3) > div:first-child > div {
        width: 100% !important;
        min-width: 0 !important;
        padding: 22px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Boksen med betaling fra udlandet */
    .ripenser-kontingent-sektion > div:nth-child(3) > div:nth-child(2) {
        padding: 22px !important;
        box-sizing: border-box !important;
        overflow-wrap: anywhere;
    }
}

@media(max-width:700px) {
    .ripenser-title-long {
        display: block;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        text-align: center !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        font-size: 17px !important;
        letter-spacing: 0.8px !important;
        line-height: 1.25 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 8px;
        padding-right: 8px;
    }
}