/*
 Theme Name:   sttheresia
 Theme URI:    
 Description:  sttheresia
 Author:       Erich Schweizer-Ferrari
 Author URI:   
 Template:     twentytwentyone
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Tags:         Eine Spalte, Für Barrierefreiheit geeignet, Individuelle Farben, custom-menu, Individuelles Logo, Stylesheet für Editor, Beitragsbilder, Footer-Widgets, Block-Editor-Vorlagen, rtl-language-support, Beitrag oben halten, threaded-comments, translation-ready
 Text Domain:  sttheresia
*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');

:root {
    /*
     * colors
     */
    --sttheresia--blau: #00a2e6; /* 0, 162, 230 */
    --sttheresia--hellgruen: #E5FFF0; /* 229, 255, 240 */
    
    --sttheresia--weiss: #FFFFFF; /* 255, 255, 255 */

    --sttheresia--rot: #CB333B; /* 203, 51, 59 */
    --sttheresia--hellrot: #F6DCDD; /* 46, 220, 221 */

    --sttheresia--azzurro: #4B61D1; /* 75, 97, 209 */ /* blu savoia */
    --sttheresia--hellazzurro: #DADEF6; /* 218, 222, 246 */

    --sttheresia--schwarz: #1D1D1B; /* 29, 29, 27 */
    --sttheresia--grau: #EDEDEF; /* 237, 237, 239 */

 
    /*
     * fonts
     */
    --sttheresia--titel--font-family: 'Open sans', sans-serif;
    --sttheresia--titel--font-weight: 200;
    --sttheresia--untertitel--font-family: 'Open sans', sans-serif;
    --sttheresia--untertitel--font-weight: 300;
    --sttheresia--lauftext--font-family: 'Open sans', sans-serif;
    --sttheresia--lauftext--font-weight: 400;
    --sttheresia--button--font-family: 'Open sans', sans-serif;
    --sttheresia--button--font-weight: 800;

    /*
     *
     */
    --sttheresia--h1: 3rem;
    --sttheresia--img--down--height: 3rem;
    --sttheresia--max-width: 1500px;
    --sttheresia--min-padding: 15px;
    --sttheresia--input--text--border--color: #CCCCCC;
    --sttheresia--grid--title--font-size: 1.5rem;

    --heading--font-family: var(--sttheresia--titel--font-family);
    --heading--font-weight: var(--sttheresia--titel--font-weight);

    --responsive--alignwide-width: calc(var(--sttheresia--max-width) - 30px) !important;
    --responsive--aligndefault-width: calc(var(--sttheresia--max-width) - 30px) !important;
}

body {
    color: var(--sttheresia--schwarz);
    font-family: var(--sttheresia--lauftext--font-family);
    font-weight: var(--sttheresia--lauftext--font-weight);
    hyphens: auto;
}
body.custom-background {
}

a {
    color: var(--sttheresia--blau);
    text-decoration: underline;
    text-decoration-style: dotted;
}
a:hover {
    color: var(--sttheresia--blau);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--sttheresia--titel--font-family) !important;
    font-weight: var(--sttheresia--titel--font-weight) !important;  
}
h2 {
    border-top: 1px solid var(--sttheresia--blau);
    margin-top: 0 !important;
    padding-top: 1rem !important;
}

h3, h3.wp-block-heading {
    margin-bottom: 1rem !important;
    margin-top: 2rem !important;
}
p {
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
}

ul.guillemet {
    margin: 0 !important;
    padding: 0 !important;
}
ul.guillemet li:before {
    content: "\00BB";  /* hex of your actual character, found using CharMap */
    margin-right: 0.5rem;
}
ul.guillemet li {
    list-style-type: none;
}

input[type="submit"]:focus, input[type="reset"]:focus,
input[type="search"], input[type="search"]:active:focus:hover,
input[type="text"], input[type="text"]:active:focus:hover {
    border: 1px solid var(--sttheresia--input--text--border--color) !important;
    outline-offset: 0 !important;
    outline: none !important;
    padding: 0 0.5rem !important;
}

input[type="submit"], input[type="submit"]:focus:hover {
    background-color: var(--sttheresia--grau) !important;
    border-color: var(--sttheresia--grau) !important;
    color: var(--sttheresia--schwarz) !important;
    margin-left: 0rem !important;
    outline-offset: 0 !important;
    outline: none !important;
    padding: 0 0.5rem !important;
}

/*
 * head
 */
#masthead.site-header {
    display: block;
    max-width: var(--responsive--alignfull-width);
    padding: 0rem 0rem 0rem 0rem;
}

.site-branding {
    margin-bottom: 13px;
    margin-left: auto;
    margin-right: auto;
    max-width: var(--sttheresia--max-width);
    padding-bottom: 1rem;
}
.site-logo {
    float: left;
    padding-left: var(--sttheresia--min-padding);
}
.header-info {
    float: left;
    font-style: italic;
    margin-top: 0rem;
}
.utility-nav {
    float: right;
    margin-top: 0rem;
    padding-right: var(--sttheresia--min-padding);
    text-align: right;
}
#site-navigation {
    background-color: var(--sttheresia--blau);
}
.primary-navigation .primary-menu-container {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: var(--sttheresia--max-width);
    padding-left: 0px !important;
}

.clear-both {
    clear: both;
}

.primary-navigation-open .primary-navigation > .primary-menu-container,
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
    background-color: var(--sttheresia--blau) !important;
}

.primary-navigation .sub-menu .menu-item > a,
.primary-navigation .primary-menu-container > ul > .menu-item > a {
    background-color: var(--sttheresia--blau);
    color: white;
}

.primary-navigation a:focus {
    color: var(--sttheresia--blau) !important;
}

.primary-navigation .sub-menu {
    border: none !important;
}

.primary-navigation > div > .menu-wrapper .sub-menu-toggle {
    display: none !important;
}

.primary-navigation .primary-menu-container > ul > .menu-item > a,
.primary-navigation .sub-menu .menu-item > a {
    color: var(--sttheresia--weiss);
    font-family: var(--sttheresia--lauftext--font-family);
    font-weight: var(--sttheresia--lauftext--font-weight);
}
.primary-navigation .sub-menu .menu-item a {
    padding: 0.5rem 1rem 0.5rem 1rem !important;
}

.primary-navigation > div > .menu-wrapper {
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.menu-button-container #primary-mobile-menu .dropdown-icon.open {
	color: var(--sttheresia--weiss);
}

.menu-button-container #primary-mobile-menu {
    margin-top: 0rem;
}

#masthead img {
    max-width: 100%;
    /* width: 100%; */
}
.sttheresia-header-title-excerpt {
    color: var(--sttheresia--blau);
    margin-left: auto;
    margin-right: auto;
    max-width: var(--sttheresia--max-width);
    position: relative;
}

.sttheresia-header-title-excerpt .wrapper {
    background-color: var(--sttheresia--weiss);
    background-color: var(--global--color-background);

    border-radius: 25px 25px 0 0;
    bottom: 0;
    left: 0;
    margin-left: 15px;
	padding: 1rem 1rem 0rem 1rem;
    position: absolute;
    right: auto;
}
.sttheresia-header-title-excerpt .wrapper h1 {
	font-size: calc(var(--sttheresia--h1) / 2);
}

.home .site-main {
	padding-top: 1rem;
}

.home .sttheresia-header-title-excerpt .wrapper {
    bottom: -2.7rem;
    left: auto;
    margin-right: 15px;
    right: 0;
}

.home .sttheresia-header-title-excerpt .wrapper p {
    font-size: 1.06rem;
}

.sttheresia-down {
    display: none;
}

.sttheresia-down img {
    height: var(--sttheresia--img--down--height);
}

.home .sttheresia-down {
    display: block;
    padding-top: 2rem;
    text-align: center;
}

div.sttheresia-cart {
    margin-top: 1rem;
}

.search-form label {
    display: none;
}

.site-logo {
    margin-right: 0;
    max-width: 75%;
}
.sttheresia-warenkorb-text {
    display: none;
}
.sttheresia-search-form {
    display: none;
    margin-top: 0.5rem;
}
.sttheresia-search-icon {
    display: none;
    margin-top: 1rem;
}
.dashicons.dashicons-cart {
    padding-right: 2.5rem;
    font-size: 2rem;
    margin-top: -0.1rem;
}

.primary-navigation-open .sttheresia-header-title-excerpt {
    display: none !important;
}

/*
 * body
 */

 #content.site-content {
     padding-top: 2rem !important;
     padding-left: 1rem;
     padding-right: 1rem;
 }
.site .button {
    background-color: var(--sttheresia--blau) !important;
}
.site .button:hover {
    color:  var(--sttheresia--weiss) !important;
}

.wp-block-group.sttheresia-wrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--sttheresia--max-width);
    padding-left: var(--sttheresia--min-padding);
    padding-right: var(--sttheresia--min-padding);
}
.wp-block-group.has-background {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.wp-block-media-text .wp-block-media-text__content {
    padding-left: 0 !important;
    padding-right: var(--sttheresia--min-padding) !important;
}
.wp-block-media-text .wp-block-media-text__content.is-right {
    padding-left: 3rem !important;
    padding-right: var(--sttheresia--min-padding) !important;
}
.wp-block-media-text__media {
    margin-right: 2rem !important;
    padding-top: 1rem;
}

.home .site-main {
    padding-top: calc(var(--global--spacing-vertical) + var(--sttheresia--img--down--height) + 0.15rem);
}
.home .site-main a {
    font-family: var(--sttheresia--button--font-family);
    font-weight: var(--sttheresia--button--font-weight);
}
.home .site-main a:hover {
    text-decoration: underline;
}
.home section {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 3rem !important;
    padding-top: 0rem !important;
}
.home section.startseite.aktuelles {
    padding-top: 0rem !important;
}
.home section.startseite.shop {
    background-image: url('images/background_shop.png') !important;
    background-repeat: no-repeat;
    background-size: cover;
}
.home section.startseite.sonntagslesungen {
    background-image: url('images/background_sonntagslesungen.png') !important;
    background-repeat: no-repeat;
    background-size: cover;
}
.home section.startseite.ideenpool > div,
.home section.startseite.mitmachen > div,
.home section.startseite.unsere-zeitschriften > div {
    padding-top: var(--global--spacing-vertical) !important;
}
.home section.startseite.was-wir-bieten {
    background-image: url('images/background_waswirbieten.png') !important;
    background-repeat: no-repeat;
    background-size: cover;
}

footer {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
}
.site-main > article > .entry-footer {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
}
.widget-area {
    color: var(--sttheresia--weiss) !important;
    margin-top: 0 !important;
}
.widget-area p a {
    color: var(--sttheresia--weiss) !important;
}
.widget-area h2 {
    font-size: 2rem !important;
    margin-bottom: 0rem !important;
    margin-top: 0rem !important;
}
.widget-area h2 + p {
    margin-top: 1rem !important;
}
.widget .wp-block-button a {
    color: var(--sttheresia--schwarz) !important;
    background-color: var(--sttheresia--weiss) !important;
}

.site-info {
    display: none !important;
}

section.startseite .wp-block-media-text__media img {
    vertical-align: top !important;
}

.wp-block-latest-posts__list.is-grid.wp-block-latest-posts li {
    background-color: var(--sttheresia--blau);
}
.ideenpool .wp-block-latest-posts__list.is-grid.wp-block-latest-posts li {
    background-color: var(--sttheresia--gruen);
}

.wp-block-latest-posts__list.is-grid.wp-block-latest-posts li > a {
    color: var(--sttheresia--weiss);
    font-family: var(--sttheresia--titel--font-family);
    font-weight: var(--sttheresia--titel--font-weight);
    font-size: var(--sttheresia--grid--title--font-size);
    padding-left: var(--sttheresia--min-padding);
    padding-right: var(--sttheresia--min-padding);
    padding-bottom: var(--sttheresia--min-padding);
}

.wp-block-image figcaption {
    margin-top: calc(0.2 * var(--global--spacing-unit)) !important;
    text-align: right !important;
}

.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item {
    margin-right: 2rem;
}
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item:last-child,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item:last-child {
    margin-right: 0rem;
}
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item a {
    text-decoration: none;
}

.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container,
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container-rounded,
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container-simple,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item a .image-container,
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container > span:hover,
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container-rounded > span:hover,
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .image-container-simple > span:hover,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item a .image-container > span:hover,
a .image-container > span:hover
a .image-container-rounded > span:hover
a .image-container-simple > span:hover {
    opacity: 50%;
}
.wp-container.wp-block-columns.sttheresia .wp-container.wp-block-column.sttheresia-item a .excerpt,
.wp-container.wp-block-columns.verowa .wp-container.wp-block-column.verowa-event-item a .excerpt {
    font-size: 1rem;
    font-weight: normal;
}

.verowa-event-item .title {
	font-size: 1.2rem !important;
}

.verowa-event-item {
	padding-bottom: 1rem !important;
}
.verowa h2 {
	font-size: 1.5rem;
	margin-bottom: 0.5rem !important;
}
.verowa .long-desc {
	margin-top: 0.5rem !important;
}
.verowa .long-desc p {
    line-height: 1.3 !important;
	margin-top: 0 !important;
}

.wp-block-media-text__content {
    /* margin-left: 3rem; */
}

.site-content .image-container {
    border-radius: 0 0 13px 13px;
    display: block;
    height: 0;
    overflow: hidden;
    padding-bottom: 75%; /* 56.25% = 16 : 9 */
    padding-top: 0px;
    position: relative;
}

.site-content .image-container-rounded {
    border-radius: 11px 11px 11px 11px;
    display: block;
    height: 0;
    overflow: hidden;
    padding-bottom: 75%; /* 56.25% = 16 : 9 */
    padding-top: 0px;
    position: relative;
}

.site-content .image-container-simple {
    display: block;
    height: 0;
    overflow: hidden;
    padding-bottom: 75%; /* 56.25% = 16 : 9 */
    padding-top: 0px;
    position: relative;
}

.site-content .image-container > div, .site-content .image-container-rounded > div, .site-content .image-container-simple > div, .image-container > span, .image-container-rounded > span, .image-container-simple > span {
    background-size: cover;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}


.verowa .verowa-event-item .calendar-sheet {
    background-color: var(--sttheresia--blau);
    border-radius: 13px 13px 0 0;
    color: white;
    float: left;
    margin: 0 2rem 0 0;
    padding: 0.5rem 1rem 1rem 1rem;
}
.verowa .verowa-event-item .calendar-sheet div {
    text-align: center;
}
.verowa .verowa-event-item .calendar-sheet .wd {
    font-size: 0.8rem;
}
.verowa .verowa-event-item .calendar-sheet .day {
    font-size: 2rem;
}
.verowa .verowa-event-item .calendar-sheet .month {
    font-size: 0.8rem;
}
.verowa .verowa-event-item .title-and-more {
    margin: 0 0 0.5rem 0;
}
.sttheresia .sttheresia-item .title,
.verowa .verowa-event-item .title {
    font-size: 1.5rem !important;
    font-weight: bold;
    /* margin: 0; */
}
.verowa .verowa-event-item .time, .verowa .verowa-event-item .room {
    margin: 0;
}
.datetime, .time, .room {
    font-style: italic;
    margin: 0 !important;
}

.verowa.wp-block-media-text.alignwide.is-stacked-on-mobile.is-vertically-aligned-top,
.verowa .wp-block-media-text__content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 1 !important;
}

.verowa.verowa-event.verowa-event-item {
    padding-bottom: 0rem !important;
}

.verowa-event-item .title {
	font-size: 1.2rem !important;
}
.home .site-main {
	padding-top: 1rem;
}
.verowa .wp-block-media-text__content {
	padding-bottom: 1rem !important;
}
.verowa h2 {
	font-size: 1.5rem;
	margin-bottom: 0.5rem !important;
}
.verowa .long-desc {
	margin-top: 0.5rem;
}
.verowa .long-desc p {
	margin: 0 !important;
}



/**
 * footer
 */
.byline {
	display: none !important;
}

/**
 * contact form 7
 */

.wpcf7-form label {
    max-width: none !important;
    width: 90% !important;
}
.wpcf7-form-control {
    width: 100% !important;
}
.wpcf7-form-control-wrap {
    max-width: none !important;
}
.wpcf7-form-control.wpcf7-submit {
    margin-top: 1rem;
    width: 90% !important;
}
textarea.wpcf7-form-control {
    border: 1px solid #CCCCCC !important;
}
.captcha-image {
    width: 90% !important;
}

/** Collapse-o-matic
 *
 */

.collapseomatic {
    background-position: 0px 32px;
    /* background-position: 0px 41px;*/
    border-top: 1px solid var(--sttheresia--blau);
    display: block;
    /* font-size: var(--heading--font-size-h2);*/
	font-size: 2rem;
    letter-spacing: var(--heading--letter-spacing-h2);
    line-height: var(--heading--line-height-h2);
    margin-bottom: var(--global--spacing-vertical);
    margin-left: auto;
    margin-right: auto;
    margin-top: 0 !important;
    max-width: var(--responsive--aligndefault-width);
    padding-bottom: 0;
    padding-top: 1rem !important;
}
.collapseomatic_content {
	padding-left: 1.3rem !important;
}
.collapseomatic_content > .collapseomatic {
	font-size: 2rem;
	padding-top: 1.5rem !important;
}

/**
 * Fancybox
 */
.fancybox-title-over a {
    color: white;
}

/*
 * woocommerce
 */

.woocommerce .content-area, .woocommerce .products {
    max-width: var(--sttheresia--max-width) !important;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
}
.woocommerce .products .product-category img:hover {
    opacity: 0.8;
}
.woocommerce-breadcrumb {
    display: none;
}
.woocommerce-info, .woocommerce-message {
    border-top: 1px solid var(--sttheresia--rot);
}
.woocommerce-loop-category__title {
    display: none;
}
.woocommerce-products-header {
    display: none;
}
.woocommerce ul.products.columns-4 li.product {
    margin: 0px 0px 0px 0px !important;
    width: calc(100% / 1) !important;
}

.woocommerce ul.products[class*="columns-"] li.product, .woocommerce-page ul.products[class*="columns-"] li.product {
	padding: 0 0 0 0 !important;
}
.woocommerce ul.products[class*="columns-"], .woocommerce-page ul.products[class*="columns-"] {
	-webkit-box-pack: left;
	justify-content: left;
}

.woocommerce .woocommerce-tabs ul li a {
    background-color: var(--sttheresia--rot) !important;
    border-color: var(--sttheresia--rot) !important;
    color: var(--sttheresia--weiss) !important;
}

.woocommerce-shipping-totals.shipping {
    vertical-align: top !important;
}

/*
 * responsive
 */

@media only screen and (max-width: 481px) {
    .site-header.has-logo.has-title-and-tagline.has-menu .site-branding {
        margin-left: 0 !important;
        max-width: none !important;
    }
    .utility-nav, .header-info {
        display: block;
        font-size: 1rem;
        padding-top: 0.5rem;
        position: absolute;
        left: 1rem;
    }
    body:not(.primary-navigation-open) .site-header.has-logo.has-title-and-tagline .menu-button-container #primary-mobile-menu {
        margin-right: 0 !important;
    }
}

@media only screen and (max-width: 600px) {
    .wp-block-media-text .wp-block-media-text__content {
        padding-top: 2rem !important;        
        padding-right: 0 !important;
    }
    .wp-block-media-text .wp-block-media-text__content.is-right {
        padding-left: var(--sttheresia--min-padding) !important;
        padding-right: var(--sttheresia--min-padding) !important;
        padding-top: 2rem !important;
    }
}

@media only screen and (max-width: 600px) {
    .wp-block-media-text__content {
        margin-left: 0rem;
    }
}

@media only screen and (min-width: 482px) {
   .site-branding {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .site-logo {
        max-width: none;
    }
    .utility-nav, .header-info {
        margin-top: 0.7rem;
    }
    .header-info {
        margin-left: auto;
        padding-left: calc(var(--sttheresia--min-padding) + 15px);
    }
    .sttheresia-header-title-excerpt .wrapper {
        padding: 1.5rem 2rem 0rem 2rem;
    }
    .wp-block-columns.verowa .wp-block-column > * {
        margin-top: 1rem !important;
    }
    /*    .widget-area h2 {
        margin-top: 0rem !important;
    }    */
    .sttheresia-header-title-excerpt .wrapper h1 {
        font-size: calc(var(--sttheresia--h1) / 3 * 2);
    }
    .woocommerce ul.products.columns-4 li.product {
        width: calc(100% / 2) !important;
    }
}

@media only screen and (min-width: 800px) {
    .sttheresia-warenkorb-text {
        display: inline;
    }
    .sttheresia-search-form {
        display: block;
    }
    .sttheresia-search-icon {
        display: none;
    }
    .sttheresia-header-title-excerpt .wrapper {
        padding: 2rem 3rem 0rem 3rem;
    }
    .sttheresia-header-title-excerpt .wrapper h1 {
        font-size: var(--sttheresia--h1);
    }
    .woocommerce ul.products.columns-4 li.product {
        width: calc(100% / 4) !important;
    }
}

@media only screen and (max-width: 1200px) {
    .primary-navigation .primary-menu-container {
        padding-left: 0 !important;
    }
}

@media only screen and (min-width: 1500px) {
    .home section.startseite.shop img {
        margin-top: -13%;
        max-width: 750px;
        position: absolute;
    }
    .home section.startseite.sonntagslesungen img {
        margin-top: -8%;
        max-width: 750px;
        position: absolute;
    }
    .home section.startseite.wer-wir-sind img {
        margin-top: 20%;
        max-width: 480px;
        position: absolute;
    }
}


/*
 * Columns listing (added by mas 20260619)
 */ 
div.list-columns-title {
	line-height: 30px;
	padding-top: 12px;
	padding-bottom: 8px;
}