@import url('https://fonts.googleapis.com/css2?family=Abel&family=Caveat:wght@400..700&family=Comfortaa:wght@300..700&family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Merriweather:ital,opsz,wght@0,18..144,300..900;1,18..144,300..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Mulish:ital,wght@0,200..1000;1,200..1000&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Oranienbaum&family=Oswald:wght@200..700&family=Poiret+One&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&family=Rubik:ital,wght@0,300..900;1,300..900&family=Sofia+Sans+Extra+Condensed:ital,wght@0,1..1000;1,1..1000&display=swap');
/* Подключение шрифта AGBengaly */
@font-face {
    font-family: 'AGBengaly';
    src: url('fonts/AGBengaly.ttf') format('truetype');
    /*font-weight: normal;*/
    /*font-style: normal;*/
    font-display: swap; /* Оптимизация загрузки шрифта */
}

/*
 Theme Name: GeneratePress Child
 Template: generatepress
*/

/* base styles */
:root {
    --contrast: #222222;
    --contrast-2: #575760;
    --contrast-3: #b2b2be;
    --base: #ffffff;
    --base-2: #ffffff;
    --base-3: #ffffff;
    --accent: #1e73be;

    --wpAdminBarHeight: 32px;
    --headerHeight: 100px;
    --containerPadding: 15px;
    --sectionPadding: 100px;
    --columnsGap: 30px;
    font-size: 16px;
}

@media (max-width: 767px) {
    :root {
        --headerHeight: 60px;
        --sectionPadding: 60px;
        --columnsGap: 15px;
        font-size: 14px;
    }
}

@media screen and (max-width: 782px) {
    :root {
        --wpAdminBarHeight: 46px;
    }
}

header.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--headerHeight);
    /*overflow: hidden;*/
    z-index: 100;
}

header .inside-header {
    padding: 0 var(--containerPadding);
    height: 100%;
}

body:has(#wpadminbar) header.site-header {
    top: var(--wpAdminBarHeight);
}

.mobile-menu-control-wrapper .menu-toggle,
.mobile-menu-control-wrapper .menu-toggle:hover,
.mobile-menu-control-wrapper .menu-toggle:focus {
    /*.has-inline-mobile-toggle #site-navigation.toggled*/
    background-color: transparent;
}

.one-container .site-content {
    padding: var(--sectionPadding) var(--containerPadding) 0 var(--containerPadding);
}

body > .site {
    margin-top: var(--headerHeight);
}

.site-main .wp-block-group__inner-container {
    padding: 0;
}


.wp-block-group.section {
    padding-top: var(--sectionPadding);
    padding-bottom: var(--sectionPadding);
}

.wp-block-group.section > .wp-block-group__inner-container {
    padding: 0 var(--containerPadding);
}

.wp-block-buttons {
    width: fit-content;
}

form.wpcf7-form > p {
    margin-bottom: 0;
}

:where(.wp-block-columns.is-layout-flex) {
    gap: var(--columnsGap);
}

.site-footer .footer-widgets-container .inner-padding {
    padding: 0 0 0 0;
}

.footer-widgets .widget {
    margin-bottom: 30px;
}

.footer-widgets-container {
    padding: 40px var(--containerPadding);
}

.site-footer .footer-widgets-container .inside-footer-widgets {
    margin-left: 0;
    column-gap: var(--columnsGap);
}

a {
    text-decoration: none;
}

.nav-float-right #site-navigation {
    margin-left: auto;
    margin-right: auto;
}

.custom-copyright img {
    height: 24px;
}

ol, ul {
    margin: 0 0 1.5em 0;
    padding-left: 20px;
}


.main-navigation.sub-menu-right.toggled {
    background-color: white !important;
    box-shadow: 0 2px 8px #00000020;
    margin-top: 0 !important;
}

button.menu-toggle {
    padding: 15px;
    line-height: 1;
    margin: 0;
    font-weight: 400;
    text-transform: none;
    font-size: 15px;
    cursor: pointer;
    background: transparent !important;
    border: 0 !important;
}

header .site-logo {
    height: 100%;
}

header .site-logo a {
    display: flex;
    height: 100%;
}

@media (max-width: 767px) {
    header .header-widget {
        display: none;
    }

    header:has(.main-navigation.toggled) .header-widget {
        display: block;
        background-color: white !important;
        margin-top: 0 !important;
        padding: 15px !important;
        box-shadow: 0 2px 8px #00000020;
    }
}

.separate-containers .page-header,
.separate-containers .inside-article {
    padding: 40px var(--containerPadding);
}

@media (max-width: 768px) {
    .separate-containers .page-header,
    .separate-containers .inside-article {
        padding: 30px var(--containerPadding);
    }
}

/* ==================== Custom styles ================= */



:root {
    --borderRadiusSmall: 10px;
    --borderRadiusButton: 5px;
    --borderRadiusBig: 15px;

    --sectionInnerMargin: 40px;

    --colorBack: #ffffff;
    --colorBack1: #F8F6F5;
    --colorTextDefault: #000000;
    --colorTextDark: #000000;
    --colorPrimary: #BE9380;
    --colorPrimaryDark3: #6B4636;
    --colorPrimaryDark1: #AA7F6C;
    --colorBorderLight: #00000030;

    --accent: var(--colorPrimary);

    line-height: 1.4;
    font-weight: 300;
    font-family: Roboto, sans-serif;

    --buttonPaddingV: 1rem;
    --buttonPaddingH: 2rem;
}

@media (max-width: 767px) {
    :root {
        --buttonPaddingV: 0.6rem;
        --buttonPaddingH: 1.2rem;
    }
}

a {
    color: var(--colorTextDefault);
}

a:hover {
    color: var(--colorPrimaryDark1);
}

.header-contacts-widget {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
}

.header-contacts-widget div {
    display: flex;
    column-gap: 20px;
    align-items: center;
}

.header-contacts-widget p,
.header-contacts-widget a {
    display: flex;
    align-items: center;
    column-gap: 6px;
    line-height: 1;
    color: black;
}

h1 {
    font-family: AGBengaly, sans-serif;
    font-size: clamp(4rem, 4vw + 2rem, 5.6rem);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: -3px;
    color: var(--colorPrimaryDark3);
}

.site-main .page-header h1.page-title,
.site-main > article.post h1.entry-title {
    font-size: clamp(2rem, 2.5vw + 1rem, 2.8rem);
}

h2 {
    font-family: AGBengaly, sans-serif;
    font-size: clamp(2rem, 2.5vw + 1rem, 2.8rem);
    font-weight: normal;
    line-height: 1.2;
    color: var(--colorTextDark);
}

.archive.category .site-main article.post .entry-header h2.entry-title,
.blog .site-main article.post .entry-header h2.entry-title {
    font-size: clamp(1.25rem, 1.5vw + 1rem, 1.5rem);
    color: var(--colorPrimaryDark3);
}

h3 {
    font-family: Roboto, sans-serif;
    font-weight: 500;
    line-height: 1.3;
    font-size: 1.375rem;
    color: var(--colorTextDark);
}

h4 {
    font-family: Roboto, sans-serif;
    font-weight: 600;
    line-height: 1.3;
    font-size: 1.25rem;
    color: var(--colorPrimaryDark3);
}

.section-back1 {
    background-color: var(--colorBack1);
}

a.button-primary,
button.button-primary,
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
a.button,
a.wp-block-button__link:not(.has-background) {
    color: #ffffff;
    background-color: var(--colorPrimary);
    border: 2px solid var(--colorPrimary);

    display: flex;
    padding: var(--buttonPaddingV) var(--buttonPaddingH);
    justify-content: center;
    align-items: center;
    gap: 0.625rem;

    border-radius: var(--borderRadiusButton);
}

button.button-secondary,
a.button-secondary,
.button-secondary a.wp-block-button__link,
.button-secondary a {
    background-color: white;
    color: var(--colorPrimary);
}

a.button-primary:hover,
button.button-primary:hover,
button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
a.button:hover,
a.wp-block-button__link:not(.has-background):hover {
    background-color: var(--colorPrimaryDark1);
    border: 2px solid var(--colorPrimaryDark1);
    color: white;
}

header.site-header {
    box-shadow: 0 4px 16px #00000010;
}

.main-navigation .main-nav ul li a {
    padding-left: 20px;
    padding-right: 20px;
    line-height: 60px;
    color: var(--colorTextDark);
    font-family: Roboto, sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
}

@media (max-width: 1280px) {
    .main-navigation .main-nav ul li a {
        padding-left: 10px;
        padding-right: 10px;
    }
}

.hero-title {
    max-width: 690px;
}

.hero-content {
    max-width: 450px;
}

.section-hero .wp-block-columns {
    justify-content: space-between;
}

.illustration img {
    border-radius: var(--borderRadiusBig);
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.section-hero .illustration img {
    min-height: 250px;
}

@media (min-width: 768px) {
    .section-hero .illustration img {
        border-radius: 30px;
        max-height: 590px;
    }
}

.section-title .wp-block-buttons {
    flex-shrink: 0;
}

.section-title.wp-block-columns {
    justify-content: space-between;
    margin-bottom: var(--sectionInnerMargin);
}

.section-title .wp-block-column:nth-child(1) {
    max-width: 690px;
}

.section-title .wp-block-column:nth-child(2) {
    max-width: 450px;
}

.wp-block-embed.is-type-video {
    border-radius: var(--borderRadiusSmall);
    overflow: hidden;
}

ul.wp-block-latest-posts {
    margin-left: 0;
    margin-bottom: 0;
    gap: var(--columnsGap);
}

.wp-block-latest-posts.is-grid li {
    margin: 0;
    width: 100%;
}

@media (min-width: 600px) {
    .wp-block-latest-posts.is-grid.columns-4 li {
        width: calc((100% - 3 * var(--columnsGap)) / 4);
    }
}

h3 a {
    color: var(--colorPrimary);
}

h3 a:hover {
    color: var(--colorPrimaryDark1);
}

.wp-block-latest-posts a.wp-block-latest-posts__post-title {
    font-size: 1.25rem;
    color: var(--colorTextDark);
    font-weight: 500;
    margin-bottom: 0.3rem;
    line-height: 1.2;
}

.wp-block-latest-posts a.read-more {
    color: var(--colorPrimary);
}

.wp-block-latest-posts__featured-image {
    border-radius: var(--borderRadiusSmall);
    overflow: hidden;
    display: flex;
    margin-bottom: 1rem;
}

.wp-block-latest-posts__featured-image a {
    display: flex;
    width: 100%;
}

.wp-block-latest-posts__featured-image img {
    object-fit: cover;
    width: 100%;
    height: 200px;
    max-width: unset !important;
    max-height: unset !important;
    border: 1px solid var(--colorBorderLight);
}

.wp-block-latest-posts li::before {
    content: "";
    display: flex;
    background-color: #e0e0e0;
    background-image: url("http://zion-ansbach.de/wp-content/uploads/2026/03/74e6e7e382d0ff5d7773ca9a87e6f6f8817a68a6.jpeg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 200px;
    width: 100%;
    margin-bottom: 1rem;
    border-radius: var(--borderRadiusSmall);
    border: 1px solid var(--colorBorderLight);
}

.wp-block-latest-posts li:has(.wp-block-latest-posts__featured-image)::before {
    display: none;
}

.wp-block-group.is-layout-flex:has(img) {
    margin-bottom: 0.5rem;
    font-weight: 500;
}

.section-contacts h4 {
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

.section-contacts h4:first-child {
    margin-top: 0;
}

.section-contacts iframe {
    width: 100%;
    height: 270px;
}

.section-contacts *:has(> iframe) {
    border-radius: var(--borderRadiusSmall);
    overflow: hidden;
    display: flex;
    border: 1px solid var(--colorBorderLight);
}

.section-churches .wp-block-buttons {
    width: 100%;
}

footer.site-info {
    background-color: var(--colorPrimaryDark1);
}

.site-footer footer a,
.site-footer footer .custom-copyright {
    color: white;
}

.site-footer footer a:hover {
    color: white;
}

.site-footer footer a {
    display: inline-flex;
    align-items: center;
}

@media (max-width: 1024px) {
    .section-title .wp-block-group {
        flex-wrap: wrap;
        justify-content: flex-start !important;
    }
}

@media (max-width: 1060px) {
    header .header-widget {
        display: none;
    }
}

@media (max-width: 1024px) {
    .section-about .wp-block-columns:first-child {
        flex-direction: column-reverse;
    }
}

.inside-article .featured-image img {
    border-radius: var(--borderRadiusBig);
}

.site-main > article.post .entry-header .byline {
    display: none;
}

.site-main > article.post .inside-article {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}

.archive.category .site-main article.post footer.entry-meta,
.blog .site-main article.post footer.entry-meta {
    display: none;
}

.archive.category .site-main article.post .entry-header,
.blog .site-main article.post .entry-header {
    flex-grow: 1;
    flex-shrink: 0;
    width: 100%;
}

.archive.category .site-main article.post,
.blog .site-main article.post {
    margin-bottom: 2.5rem;
}

.archive.category .site-main article.post .entry-summary,
.blog .site-main article.post .entry-summary {
    flex: 1;
    margin-top: 1rem !important;
}

.archive.category .site-main article.post .post-image,
.blog .site-main article.post .post-image {
    width: 300px;
    margin-top: 1rem !important;
}

.archive.category .site-main article.post .inside-article,
.blog .site-main article.post .inside-article {
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--columnsGap);
    /*padding-top: 0 !important;*/
    /*padding-bottom: 0 !important;*/

    background-color: white;
    padding: 20px !important;
    box-shadow: 0 4px 16px #00000020;
    border-radius: var(--borderRadiusBig);
}

.main-navigation .main-nav ul li[class*="current-menu-"] > a {
    color: var(--colorTextDark);
}

.wp-block-buttons {
    column-gap: var(--containerPadding);
}

.wp-block-list li {
    margin-bottom: 0.75rem;
}