/*
 Theme Name:   OceanWP Child
 Description:  Child Theme des high-performance WP-Theme OceanWP
 Author:       Philipp Limbeck
 Author URI:   https://insyde.at/
 Template:     oceanwp
 Version:      1.0
 Text Domain:  oceanwp-child
*/

/* overwrite general settings of oceanwp for focus of links (black border) */
#main a:focus,
#site-header a:focus,
#footer a:focus{
	outline: 0px !important;
}


:root {
    --farbe-rot: #8E1030;
    --farbe-dunkelrot: #5E0B22;
    --farbe-rosa: #E7B3C0;
    --farbe-creme: #F6F1EA;
    --farbe-beige: #EDE4D7;
	--farbe-hellbeige: #FBF8F3;
    --farbe-weiss: #FFFFFF;
    --farbe-text: #231719;
    --farbe-text-hell: #7A6A5E;
}

#main h2{
	font-size: clamp(34px, 4.4vw, 58px)
}



/* Allgemeine Buttons */
.gdw-button .vc_btn3 {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    padding: 14px 26px;
    border-radius: 0;
    box-shadow: none;
    transition: all 0.2s ease;
}

.gdw-button .wpb_btn {
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    border-radius: 0;
    box-shadow: none;
    transition: all 0.2s ease;
	background-image: none !important;
}

.gdw-button-outline .wpb_btn {
    background: transparent;
    border: 1px solid var(--farbe-text);
    color: var(--farbe-text);
}

.gdw-button-outline .wpb_btn:hover {
    background: var(--farbe-text);
    border-color: var(--farbe-text);
    color: var(--farbe-weiss);
}

.gdw-button-primary .wpb_btn {
    background: var(--farbe-rot);
    border: 1px solid var(--farbe-rot);
    color: var(--farbe-weiss);
}

.gdw-button-primary .wpb_btn:hover {
    background: var(--farbe-dunkelrot);
    border-color: var(--farbe-dunkelrot);
    color: var(--farbe-weiss);
}

#main .gdw-textlink a {
    /*display: inline-flex;
    align-items: center;
    gap: 10px;*/
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--farbe-rot);
}

#main .gdw-textlink a:hover {
    color: var(--farbe-dunkelrot);
}
/* Buttons Ende */



/* Einleitung auf der Startseite */
.gdw-intro .gdw-intro-title {
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
}

.gdw-intro .gdw-intro-text {
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

#main .gdw-subheadline,
#footer .gdw-subheadline{
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--farbe-rot);
	margin-bottom: 22px;
}
.gdw-intro-buttonzeile {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

.gdw-intro-buttonzeile > .wpb_column {
    width: auto;
    flex: 0 0 auto;
}

.gdw-intro-buttonzeile .wpb_btn-container {
    margin-bottom: 0;
}
/* Einleitung Ende */



.gdw-bildtext {
    padding-top: clamp(70px, 9vw, 120px);
    padding-bottom: clamp(70px, 9vw, 120px);
}

.gdw-bildtext-bild,
.gdw-bildtext-bild .vc_column-inner{
    position: relative;
}

.gdw-bildtext-bild .wpb_single_image {
    margin-bottom: 0;
}

.gdw-bildtext-bild img {
    display: block;
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.gdw-bildtext-caption {
    position: absolute;
    left: 15px;
    bottom: 0px;
    margin-bottom: 0;
    padding: 14px 22px 14px 0;
    background: var(--farbe-creme);
    color: var(--farbe-rot);
    font-family: 'Libre Caslon Text', Georgia, serif;
    font-style: italic;
    font-size: 17px;
}

.gdw-bildtext-inhalt > .vc_column-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    height: 100%;
}

.gdw-subheadline {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--farbe-rot);
    margin-bottom: 0;
}

.gdw-lead {
    font-family: 'Libre Caslon Text', Georgia, serif;
    font-size: 20px;
    line-height: 1.6;
    color: var(--farbe-text);
    margin-bottom: 0;
}



/* Sektion Grusswort der Präsidentin */
.gdw-grusswort {
    background: var(--farbe-rot);
    padding-top: clamp(80px, 10vw, 136px);
    padding-bottom: clamp(80px, 10vw, 136px);
	margin-bottom: 5vw;
}

.gdw-grusswort-bild > .vc_column-inner {
    position: relative;
    max-width: 360px;
    margin: 0 auto;
}

.gdw-grusswort-portrait img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
}

.gdw-grusswort-logo {
    position: absolute;
    right: -6px;
    bottom: 6px;
    width: 92px;
    margin-bottom: 0;
}

.gdw-grusswort-logo img {
    border: 4px solid var(--farbe-rot);
    border-radius: 50%;
}

.gdw-grusswort-subheadline {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgb(242, 201, 211);
}

.gdw-grusswort-zitat {
    font-family: 'Libre Caslon Text', Georgia, serif;
    font-size: clamp(21px, 2.1vw, 26px);
    font-style: italic;
    line-height: 1.55;
    color: var(--farbe-weiss);
}

#main .gdw-grusswort-name {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--farbe-weiss);
	margin-bottom: 0;
}

.gdw-grusswort-funktion {
    font-size: 15px;
    line-height: 1.5;
    color: rgb(from var(--farbe-weiss) r g b / 0.78);
}

.gdw-grusswort-inhalt .wpb_wrapper {
    max-width: 700px;
}

#main .vc_row.gdw-grusswort::before,
#main .vc_row.gdw-grusswort::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: clamp(36px, 5vw, 72px);
    clear: none;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    pointer-events: none;
    z-index: 1;
}

#main .vc_row.gdw-grusswort::before {
    top: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath fill='%23F6F1EA' fill-opacity='0.45' d='M0 90V38C180 58 360 14 620 26C860 38 1040 70 1260 52C1340 46 1400 34 1440 28V90Z'/%3E%3Cpath fill='none' stroke='%23E7B3C0' stroke-opacity='0.55' stroke-width='1.2' vector-effect='non-scaling-stroke' d='M0 58C240 30 440 36 700 54C920 69 1160 62 1440 40'/%3E%3Cpath fill='%23F6F1EA' d='M0 90V66C240 38 440 44 700 62C920 77 1160 70 1440 48V90Z'/%3E%3C/svg%3E");
    transform: scaleY(-1);
}

#main .vc_row.gdw-grusswort::after {
    bottom: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath fill='%23F6F1EA' fill-opacity='0.45' d='M0 90V38C180 58 360 14 620 26C860 38 1040 70 1260 52C1340 46 1400 34 1440 28V90Z'/%3E%3Cpath fill='none' stroke='%23E7B3C0' stroke-opacity='0.55' stroke-width='1.2' vector-effect='non-scaling-stroke' d='M0 58C240 30 440 36 700 54C920 69 1160 62 1440 40'/%3E%3Cpath fill='%23F6F1EA' d='M0 90V66C240 38 440 44 700 62C920 77 1160 70 1440 48V90Z'/%3E%3C/svg%3E");
}
/* Grusswort Ende */




/* Sektion Aktivitäten - custom post type dafür erstellt - Menü links Aktivitäten */
.gdw-aktivitaeten {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.gdw-aktivitaet {
    display: flex;
    flex-direction: column;
    background: #FBF8F3;
    border: 1px solid var(--farbe-beige);
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
	padding: 24px 22px 26px;
}

.gdw-aktivitaet:hover {
    border-color: var(--farbe-rot);
    box-shadow: 0 18px 40px rgb(from var(--farbe-text) r g b / 0.1);
    transform: translateY(-3px);
}

.gdw-aktivitaet-kopf {
    display: flex;
    align-items: stretch;
    border-bottom: 1px solid var(--farbe-beige);
}

.gdw-aktivitaet-datum {
    flex: 0 0 auto;
    min-width: 96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 16px 18px;
    background: var(--farbe-rot);
    color: var(--farbe-weiss);
}

.gdw-aktivitaet-tag {
    font-family: 'Libre Caslon Display', Georgia, serif;
    font-size: 46px;
    line-height: 0.95;
}

.gdw-aktivitaet-monat {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.gdw-aktivitaet-meta {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    padding: 14px 20px;
}

.gdw-aktivitaet-region {
    padding: 4px 9px;
    border: 1px solid var(--farbe-rosa);
    color: var(--farbe-rot);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.2em;
    line-height: 1.5;
    text-transform: uppercase;
}

.gdw-aktivitaet-wochentag {
    font-size: 14px;
    line-height: 1.5;
    color: var(--farbe-text-hell);
}

.gdw-aktivitaet-inhalt {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 24px 22px 26px;
    flex: 1;
}

#main .gdw-aktivitaet-titel {
    margin: 0;
    font-family: 'Libre Caslon Text', Georgia, serif;
    font-size: 23px;
    font-weight: 400;
    line-height: 1.3;
    color: var(--farbe-text);
}

#main .gdw-aktivitaet-titel a {
    color: inherit;
    text-decoration: none;
}

#main .gdw-aktivitaet-titel a:hover {
    color: var(--farbe-rot);
}

.gdw-aktivitaet-details {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.gdw-aktivitaet-veranstalter,
.gdw-aktivitaet-ort {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    line-height: 1.45;
    color: var(--farbe-text-hell);
}

.gdw-aktivitaet-details svg {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin-top: 2px;
    color: var(--farbe-rot);
}

#main .gdw-aktivitaet-link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 8px;
    margin-top: auto;
    padding-top: 6px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.18em;
    line-height: 1.5;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--farbe-rot);
}

#main .gdw-aktivitaet-link:hover {
    color: var(--farbe-dunkelrot);
}

.gdw-aktivitaet-link span {
    display: inline-block;
    transition: transform 0.2s ease;
}

.gdw-aktivitaet-link:hover span {
    transform: translateX(5px);
}

@media (max-width: 959px) {
    .gdw-aktivitaeten {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
	   .gdw-aktuelles-karten > .wpb_column {
        flex: 0 0 calc(50% - 8px);
    }
}

@media (max-width: 640px) {
    .gdw-aktivitaeten {
        grid-template-columns: 1fr;
    }
	   .gdw-aktuelles-karten > .wpb_column {
        flex: 0 0 100%;
    }
	    .gdw-initiativen-karten {
        flex-direction: column;
    }

    .gdw-initiativen-karten > .wpb_column {
        width: 100%;
        flex: 0 0 auto;
    }
}
/* Aktivitäten Ende */



/* Sektion Aktuelles */
.gdw-aktuelles {
    background: var(--farbe-beige);
    padding-top: clamp(64px, 8vw, 104px);
    padding-bottom: clamp(64px, 8vw, 104px);
}

.gdw-aktuelles-karten {
    display: flex;
    /*flex-wrap: wrap;*/
    gap: 16px;
    margin-top: 36px;
}

#main .gdw-aktuelles-karten .gdw-subheadline,
.gdw-aktuelles-karte .wpb_content_element{
	margin-bottom: 0;
}

.gdw-aktuelles-karten > .wpb_column {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
}

.gdw-aktuelles-karte > .vc_column-inner {
    height: 100%;
    background: var(--farbe-creme);
    padding: 28px 26px;
    transition: background 0.2s ease;
}

.gdw-aktuelles-karte:hover > .vc_column-inner {
    background: var(--farbe-weiss);
}

.gdw-aktuelles-karte .vc_column-inner > .wpb_wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    height: 100%;
}

.gdw-aktuelles-tag {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.22em;
    line-height: 1.5;
    text-transform: uppercase;
    color: var(--farbe-rot);
}

.gdw-aktuelles-karte .gdw-aktuelles-titel {
    min-height: 58px;
}

#main .gdw-aktuelles-titel h3 {
    font-family: 'Libre Caslon Text', Georgia, serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    color: var(--farbe-text);
}

.gdw-aktuelles-text {
    font-size: 15px;
    line-height: 1.55;
    color: var(--farbe-text-hell);
}

.gdw-aktuelles-link {
    margin-top: auto;
    padding-top: 8px;
}
/* Aktuelles Ende */


/* Statement Beginn */
#main .gdw-statement {
    margin: 0 auto;
	font-family: "Libre Caslon Text", Georgia, serif;
    font-size: clamp(21px, 2.2vw, 27px);
    line-height: 1.5;
    max-width: 760px;
	color: var(--farbe-text);
}
/* Statement Ende */



/* Initativen Beginn */
.gdw-initiativen {
    padding-top: clamp(64px, 8vw, 104px);
    padding-bottom: clamp(64px, 8vw, 104px);
}

#main .gdw-initiativen-karten {
    display: flex;
    justify-content: center;
    gap: 20px;
    width: 100%;
    max-width: 1100px;
    margin: 40px auto 0;
}

#main .gdw-initiativen-karten > .wpb_column {
    width: calc(50% - 10px);
    flex: 0 0 calc(50% - 10px);
    min-width: 0;
}

.gdw-initiativen-karte > .vc_column-inner {
    height: 100%;
    padding: 28px;
    border: 1px solid color-mix(in srgb, var(--farbe-beige) 70%, var(--farbe-text));
    transition: border-color 0.2s ease;
}

.gdw-initiativen-karte:hover > .vc_column-inner {
    border-color: var(--farbe-rot);
}

.gdw-initiativen-karte > .vc_column-inner > .wpb_wrapper {
    display: flex;
    flex-direction: column;
    gap: 14px;
    height: 100%;
}

.gdw-initiativen-karte .wpb_content_element {
    margin-bottom: 0;
}

.gdw-initiativen-logo {
    height: 80px;
}

.gdw-initiativen-logo img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 80px;
    object-fit: contain;
}

.gdw-initiativen-titel {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--farbe-text);
}

.gdw-initiativen-text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--farbe-text-hell);
}

.gdw-initiativen-link {
    margin-top: auto;
    padding-top: 8px;
}

#main .gdw-initiativen-link a {
    font-size: 14px;
    color: var(--farbe-rot);
    text-decoration: none;
}

#main .gdw-initiativen-link a:hover {
    color: var(--farbe-dunkelrot);
}
/* Initativen Ende */




.gdw-footer .widget_nav_menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.gdw-footer .widget_nav_menu li {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 0;
}

.gdw-footer .widget_nav_menu li::before,
.gdw-footer .widget_nav_menu li::marker {
    content: none;
}

#footer .gdw-footer .widget_nav_menu a {
    display: block;
    padding: 6px 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--farbe-text);
    text-decoration: none;
    border: 0;
}

#footer .gdw-footer .widget_nav_menu a:hover {
    color: var(--farbe-rot);
}

.gdw-footer .gdw-subheadline {
    margin-bottom: 20px;
}
#footer .gdw-footer .widget_nav_menu li,
#footer .gdw-footer .widget_nav_menu a {
    border: 0;
}

#footer .gdw-footer .widget_nav_menu a {
    padding: 4px 0;
}

#footer .gdw-footer .widget_nav_menu ul {
    margin: 0;
    padding: 0;
}