/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
/* Links */
a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.15em;
    color: var(--link-color, #005177);
    transition: color 0.3s ease;
}
a:hover,
a:focus {
    color: var(--link-hover-color, #003d5a);
}

/* Fokus-Stile */
:where(.wp-site-blocks *:focus) {
    outline: 2px solid var(--focus-outline-color, #005177);
    outline-offset: 2px;
    border-radius: 2px;
    transition: outline-offset 0.2s ease;
}

/* Navigation Submenüs */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
    margin-bottom: 4px;
}

/* Navigation Hauptmenü */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
    outline-offset: 4px;
    padding: 0.25em 0.5em;
    border-radius: 4px;
}

/* Navigation Submenü Container */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    outline-offset: 0;
}

/* Typografie – Vermeidung von Hurenkindern/Waisenkindern */
h1, h2, h3, h4, h5, h6,
blockquote, caption, figcaption, p {
    text-wrap: pretty;
    line-height: 1.5;
}

/* "Mehr"-Link als Blockelement */
.more-link {
    display: block;
    margin-top: 1em;
    font-weight: bold;
}

.fix-header {
	position: fixed;
    top: 0;
    z-index: 5000;
    width: 100%;
    background-color: white;
    border-bottom: solid 1px #e1e1e1;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}


.main-background {
	background-color: #ffffff;
}

.extra-margin {
	padding-top: 50px;
}

main {
    box-sizing: border-box;
    max-width: 1280px;
    padding-top: 30px;
    margin: 0 auto;
    position: relative;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    /* box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05); */
}

/* Expats.cz-inspired styling */
body {
    background-color: #f6f6f6;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #333;
}

/* Article cards styling */
.wp-block-post,
.wp-block-query-loop .wp-block-post,
article {
    background-color: #ffffff;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s ease;
    margin-bottom: 24px;
    overflow: hidden;
}

/* Padding für li.wp-block-post Elemente */
li.wp-block-post {
    padding: 35px;
}

.wp-block-post:hover,
.wp-block-query-loop .wp-block-post:hover,
article:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Post title styling */
.wp-block-post-title {
    padding-top: 50px;
}

.wp-block-post-title a,
h2.wp-block-post-title a,
h1.wp-block-post-title a {
    color: #111;
    text-decoration: none;
    font-weight: 600;
    line-height: 1.3;
    transition: color 0.2s ease;
}

.wp-block-post-title a:hover,
h2.wp-block-post-title a:hover,
h1.wp-block-post-title a:hover {
    color: #005177;
    text-decoration: underline;
}

/* Post excerpt styling */
.wp-block-post-excerpt,
.wp-block-post-excerpt__excerpt {
    color: #666;
    line-height: 1.6;
    font-size: 0.95rem;
}

/* Post date and meta styling */
.wp-block-post-date,
.wp-block-post-date a {
    color: #888;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Featured images */
.wp-block-post-featured-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px 4px 0 0;
}

/* Query loop container */
.wp-block-query-loop {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    padding: 20px;
}

@media (min-width: 768px) {
    .wp-block-query-loop {
        grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
        gap: 30px;
    }
}

/* Post terms (categories/tags) */
.wp-block-post-terms {
    margin-bottom: 12px;
}

.wp-block-post-terms a {
    color: #005177;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    padding: 4px 8px;
    background-color: #f0f0f0;
    border-radius: 3px;
    transition: background-color 0.2s ease;
}

.wp-block-post-terms a:hover {
    background-color: #e0e0e0;
    text-decoration: none;
}

.wp-block-navigation .wp-block-navigation-item__content {
    color: #333;
    font-weight: 500;
    padding: 8px 16px;
}

.wp-block-navigation .wp-block-navigation-item__content:hover {
    color: #005177;
    background-color: #f6f6f6;
}

/* Button styling */
.wp-block-button__link,
.wp-element-button {
    background-color: #005177;
    color: #ffffff;
    border-radius: 4px;
    padding: 12px 24px;
    font-weight: 500;
    text-decoration: none;
    transition: background-color 0.2s ease;
    border: none;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
    background-color: #003d5a;
    color: #ffffff;
    text-decoration: none;
}

/* Separator styling */
.wp-block-separator {
    border-color: #e1e1e1;
    margin: 30px 0;
}

/* Group blocks with background */
.wp-block-group.has-background {
    border-radius: 4px;
    padding: 24px;
}

/* Entferne Padding für wp-block-group mit has-global-padding */
.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
    padding-top: 0 !important;
    /* padding-bottom: 0 !important; */
}

/* Site title styling */
.wp-block-site-title a {
    color: #111;
    font-weight: 700;
    font-size: 1.5rem;
    text-decoration: none;
}

.wp-block-site-title a:hover {
    color: #005177;
    text-decoration: underline;
}

/* Site tagline */
.wp-block-site-tagline {
    color: #666;
    font-size: 0.9rem;
}

/* Search block */
.wp-block-search__input {
    border: 1px solid #e1e1e1;
    border-radius: 4px;
    padding: 10px 16px;
    font-size: 0.95rem;
}

.wp-block-search__input:focus {
    outline: 2px solid #005177;
    outline-offset: 2px;
    border-color: #005177;
}

/* Comments styling */
.wp-block-comments {
    background-color: #ffffff;
    padding: 24px;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Code block styling */
.wp-block-code {
    background-color: #f6f6f6;
    border: 1px solid #e1e1e1;
    border-radius: 4px;
    padding: 16px;
}

/* Quote block styling */
.wp-block-quote {
    border-left: 3px solid #005177;
    padding-left: 20px;
    margin: 24px 0;
    font-style: italic;
    color: #555;
}

/* List styling */
.wp-block-list li {
    margin-bottom: 8px;
    line-height: 1.6;
}

/* Footer Padding */
.wp-block-template-part {
    padding-top: 30px;
}

/* Footer zentrieren */
.wp-block-template-part[data-area="footer"],
.wp-block-template-part[data-area="footer"] * {
    text-align: center;
}

.wp-block-template-part[data-area="footer"] .wp-block-group,
.wp-block-template-part[data-area="footer"] .wp-block-columns,
.wp-block-template-part[data-area="footer"] .wp-block-column {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-template-part[data-area="footer"] .wp-block-buttons {
    justify-content: center;
}

.wp-block-template-part[data-area="footer"] .wp-block-social-links {
    justify-content: center;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .wp-block-query-loop {
        grid-template-columns: 1fr;
        padding: 15px;
    }
    
    main {
        padding-top: 20px;
    }
    
    .fix-header {
        padding: 10px 0;
    }
}