/*
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.2
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
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

@font-face {
  font-family: "Urbanist";
  src: url("/wp-content/themes/twentytwentyfive-child/assets/fonts/Urbanist/Urbanist-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/* 
ANA EKRAN HABERLERİ İÇİN CAROUSEL BAŞLANGIÇ
*/
/* Enhanced Latest Posts Carousel - Black, White & Red Theme */
/* HEIGHTS REDUCED BY 30% */

.latest-posts-carousel {
    width: 100vw;
    max-width: 100vw;
    min-height: 315px; /* was 450px */
    margin: 0;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    padding: 28px 0; /* was 40px 0 */
    background-color: #0a0a0a;
    overflow: hidden;
}

/* Red accent top border */
.latest-posts-carousel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #ff1f1f;
    z-index: 5;
    box-shadow: 0 0 15px rgba(255, 31, 31, 0.6);
}

/* Slide styles with sleek effect */
.latest-posts-carousel .carousel-slide {
    position: relative;
    min-height: 500px; /* was 500px */
    max-height: 600px; /* was 600px */
    background-size: cover;
    background-position: center;
    border-radius: 0;
    overflow: hidden;
    margin: 7px 14px; /* 30% less margin */
    transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), box-shadow 0.5s;
    will-change: transform;
    transform-origin: center center;
    filter: grayscale(15%) contrast(110%);
}

/* Active slide effect */
.latest-posts-carousel .slick-current .carousel-slide {
    transform: scale(1.05) translateY(-7px); /* was -10px */
    box-shadow: 
        0 15px 31px -7px rgba(0,0,0,0.65),
        0 0 0 1px rgba(255,255,255,0.05),
        0 6px 14px rgba(255, 31, 31, 0.25);
    z-index: 2;
    filter: grayscale(0%) contrast(115%);
}

/* Slide hover state */
.latest-posts-carousel .carousel-slide:hover {
    transform: translateY(-5px); /* was -7px */
    box-shadow: 0 11px 21px -3px rgba(0,0,0,0.5);
}

/* Content wrapper - reduced padding */
.latest-posts-carousel .carousel-slide-content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    padding: 28px 21px 22px; /* was 40px 30px 32px */
    text-align: left;
    text-decoration: none;
    color: #fff;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    font-family: 'Urbanist', sans-serif;
    letter-spacing: 0.01em;
    font-weight: 500;
}

/* Gradient overlay - unchanged for visual integrity */
.latest-posts-carousel .carousel-slide-content::before {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 100%;
    background: linear-gradient(
        to top, 
        rgba(0, 0, 0, 0.95) 0%, 
        rgba(0, 0, 0, 0.80) 30%,
        rgba(0, 0, 0, 0.40) 70%,
        rgba(0, 0, 0, 0) 100%
    );
    z-index: 1;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

/* Title styling */
.latest-posts-carousel .carousel-slide-content h2 {
    margin: 0;
    padding: 0;
    width: 90%;
    font-size: 1.26em; /* was 1.8em */
    font-weight: 700;
    line-height: 1.1;
    position: relative;
    z-index: 3;
    letter-spacing: -0.02em;
    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
    transition: all 0.3s ease;
    color: #ffffff;
    transform: translateY(3.5px); /* was 5px */
    border-left: 4px solid #ff1f1f;
    padding-left: 10.5px; /* was 15px */
}

/* Red underline for title */
.latest-posts-carousel .carousel-slide-content h2::after {
    content: '';
    position: absolute;
    bottom: -5.6px; /* was -8px */
    left: 10.5px; /* was 15px */
    width: 280vw; /* was 400vw */
    height: 3px;
    background: #ffffff00;
    transition: width 0.4s ease;
}

.latest-posts-carousel .slick-current .carousel-slide-content h2 {
    transform: translateY(0);
}

.latest-posts-carousel .carousel-slide-content h2:hover,
.latest-posts-carousel .carousel-slide-content h2:focus {
    color: #ffffff;
    transform: translateY(-1.4px); /* was -2px */
}

.latest-posts-carousel .carousel-slide-content h2:hover::after,
.latest-posts-carousel .carousel-slide-content h2:focus::after {
    width: 56px; /* was 80px */
}

/* Meta information styling */
.latest-posts-carousel .carousel-slide-content .carousel-meta {
    font-size: 0.665em; /* was 0.95em */
    opacity: 0;
    padding-top: 14px; /* was 20px */
    margin-left: 10.5px; /* was 15px */
    font-weight: 500;
    z-index: 3;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: all 0.4s ease;
    transform: translateY(14px); /* was 20px */
    color: rgba(255,255,255,0.7);
}

.latest-posts-carousel .slick-current .carousel-slide-content .carousel-meta {
    opacity: 1;
    transform: translateY(0);
}

/* Red accent in meta */
.latest-posts-carousel .carousel-slide-content .carousel-meta::before {
    content: "●";
    color: #ff1f1f;
    margin-right: 8px;
    font-size: 0.8em;
    vertical-align: middle;
}

/* Improved navigation dots */
.latest-posts-carousel .slick-dots {
    bottom: -21px; /* was -30px */
    text-align: right;
    right: 21px; /* was 30px */
    width: auto;
}

.latest-posts-carousel .slick-dots li {
    margin: 0 3.5px; /* was 0 5px */
}

.latest-posts-carousel .slick-dots li button {
    width: 17.5px; /* was 25px */
    height: 2.1px; /* was 3px */
    padding: 0;
    transition: all 0.3s ease;
}

.latest-posts-carousel .slick-dots li button:before {
    content: '';
    width: 100%;
    height: 100%;
    border-radius: 0;
    background-color: rgba(255,255,255,0.25);
    opacity: 1;
    transition: all 0.3s ease;
}

.latest-posts-carousel .slick-dots li.slick-active button:before {
    background-color: #ff1f1f;
    width: 24.5px; /* was 35px */
    opacity: 1;
}

/* Modern arrow navigation */
.latest-posts-carousel .slick-arrow {
    z-index: 10;
    width: 35px; /* was 50px */
    height: 35px; /* was 50px */
    background: rgba(0, 0, 0, 0.7);
    border-radius: 0;
    color: #fff;
    border: 1px solid rgba(255,255,255,0.1);
    top: 50%;
    transform: translateY(-50%);
    box-shadow: 0 2.8px 14px rgba(0,0,0,0.25); /* was 0 4px 20px */
    transition: all 0.3s ease;
}

.latest-posts-carousel .slick-arrow:before {
    font-family: 'slick';
    font-size: 14px; /* was 20px */
    opacity: 0.75;
    transition: all 0.3s ease;
}

.latest-posts-carousel .slick-arrow:hover {
    background: #ff1f1f;
    color: #fff;
    border-color: #ff1f1f;
}

.latest-posts-carousel .slick-arrow:hover:before {
    opacity: 1;
}

.latest-posts-carousel .slick-prev {
    left: 14px; /* was 20px */
}

.latest-posts-carousel .slick-next {
    right: 14px; /* was 20px */
}

/* Ribbon effect for active slide */
.latest-posts-carousel .slick-current .carousel-slide::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    border-style: solid;
    border-width: 0 35px 35px 0; /* was 0 50px 50px 0 */
    border-color: transparent #ff1f1f transparent transparent;
    z-index: 3;
}

/* Responsive adjustments */
@media (max-width: 1100px) {
    .latest-posts-carousel .carousel-slide {
        min-height: 280px; /* was 400px */
        margin: 7px 10.5px; /* was 10px 15px */
    }
    .latest-posts-carousel .carousel-slide-content h2 {
        font-size: 1.54em; /* was 2.2em */
    }
}

@media (max-width: 900px) {
    .latest-posts-carousel .carousel-slide {
        min-height: 224px; /* was 320px */
        margin: 3.5px 7px; /* was 5px 10px */
    }
    .latest-posts-carousel .carousel-slide-content h2 {
        font-size: 1.26em; /* was 1.8em */
    }
    .latest-posts-carousel .carousel-slide-content {
        padding: 21px 14px 14px; /* was 30px 20px 20px */
    }
    .latest-posts-carousel .slick-arrow {
        width: 28px; /* was 40px */
        height: 28px; /* was 40px */
    }
    .latest-posts-carousel .slick-current .carousel-slide::after {
        border-width: 0 24.5px 24.5px 0; /* was 0 35px 35px 0 */
    }
}

@media (max-width: 600px) {
    .latest-posts-carousel {
        padding: 17.5px 0; /* was 25px 0 */
    }
    .latest-posts-carousel .carousel-slide {
        min-height: 210px; /* was 300px */
    }
    .latest-posts-carousel .carousel-slide-content h2 {
        font-size: 0.98em; /* was 1.4em */
        border-left: 2.1px solid #ff1f1f; /* was 3px */
        padding-left: 7px; /* was 10px */
    }
    .latest-posts-carousel .carousel-slide-content {
        padding: 14px 10.5px 10.5px; /* was 20px 15px 15px */
    }
    .latest-posts-carousel .carousel-slide-content .carousel-meta {
        font-size: 0.595em; /* was 0.85em */
        padding-top: 7px; /* was 10px */
        margin-left: 7px; /* was 10px */
    }
    .latest-posts-carousel .slick-dots {
        bottom: -14px; /* was -20px */
        right: 10.5px; /* was 15px */
    }
    .latest-posts-carousel .slick-arrow {
        width: 24.5px; /* was 35px */
        height: 24.5px; /* was 35px */
        opacity: 0.8;
    }
    .latest-posts-carousel .slick-current .carousel-slide::after {
        border-width: 0 17.5px 17.5px 0; /* was 0 25px 25px 0 */
    }
}
/* 
ANA EKRAN HABERLERİ İÇİN CAROUSEL BİTİŞ
*/

/*
ANA EKRAN BRANŞLARIMIZ BAŞLANGIÇ
*/

.multi-image-carousel {
    width: 100%;
    position: relative;
    padding: 30px 0 50px;
    background-color: #ffffff;
    overflow: hidden;
}

/* Red accent top border */
.multi-image-carousel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: #ff1f1f;
    z-index: 5;
}

/* Container for the carousel items */
.multi-image-carousel .carousel-container {
    margin: 0 auto;
    max-width: 1400px;
    padding: 0 20px;
}

/* Title styling for the carousel */
.multi-image-carousel .carousel-title {
    font-size: 1.8rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 25px;
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.multi-image-carousel .carousel-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #ff1f1f;
}

/* Ensure horizontal layout */
.multi-image-carousel .carousel-items {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    margin: 0 -8px;
}

/* Individual slide item */
.multi-image-carousel .carousel-item {
    padding: 0 8px;
    flex: 0 0 auto;
    transition: transform 0.3s ease;
}

/* Image container - preserving dimensions */
.multi-image-carousel .image-container {
    position: relative;
    overflow: hidden;
    aspect-ratio: 500/607;
    background-color: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Image styling */
.multi-image-carousel .image-container img {
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: transform 0.3s ease;
    image-rendering: -webkit-optimize-contrast; /* For Chrome */
    image-rendering: crisp-edges; /* Standard */
}

/* Simple hover effect - only makes image slightly bigger */
.multi-image-carousel .image-container:hover img {
    transform: scale(1.05);
}

/* Overlay for item - hidden by default per your requirements */
.multi-image-carousel .image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(255,255,255,0.9) 0%, rgba(255,255,255,0.7) 60%, transparent 100%);
    padding: 12px;
    transform: translateY(100%);
    transition: transform 0.3s ease;
    display: none; /* Hidden as requested */
}

/* Ensure the slick slider is horizontally oriented */
.multi-image-carousel .slick-track {
    display: flex;
    flex-direction: row;
}

.multi-image-carousel .slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.multi-image-carousel .slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
    transform: translate3d(0, 0, 0);
}

/* Navigation arrows */
.multi-image-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 35px;
    height: 35px;
    background: rgba(255, 255, 255, 0.9);
    color: #333;
    border: 1px solid rgba(0,0,0,0.1);
    z-index: 10;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.multi-image-carousel .slick-prev {
    left: -45px;
}

.multi-image-carousel .slick-next {
    right: -45px;
}

.multi-image-carousel .slick-arrow:hover {
    background: #ff1f1f;
    border-color: #ff1f1f;
    color: white;
}

/* Navigation dots */
.multi-image-carousel .slick-dots {
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
    text-align: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

.multi-image-carousel .slick-dots li {
    display: inline-block;
    margin: 0 4px;
}

.multi-image-carousel .slick-dots li button {
    width: 20px;
    height: 3px;
    background: rgba(0,0,0,0.1);
    border: none;
    font-size: 0;
    padding: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.multi-image-carousel .slick-dots li.slick-active button {
    background: #ff1f1f;
    width: 30px;
}

/* Responsive styles */
@media (max-width: 1200px) {
    .multi-image-carousel .slick-prev {
        left: -40px;
    }
    
    .multi-image-carousel .slick-next {
        right: -40px;
    }
}

@media (max-width: 992px) {
    .multi-image-carousel .carousel-container {
        padding: 0 40px;
    }
    
    .multi-image-carousel .slick-prev {
        left: 5px;
    }
    
    .multi-image-carousel .slick-next {
        right: 5px;
    }
}

@media (max-width: 767px) {
    .multi-image-carousel {
        padding: 20px 0 35px;
    }
    
    .multi-image-carousel .carousel-title {
        font-size: 1.4rem;
    }
}

@media (max-width: 480px) {
    .multi-image-carousel .carousel-container {
        padding: 0 25px;
    }
    
    .multi-image-carousel .carousel-item {
        padding: 0 4px;
    }
    
    .multi-image-carousel .carousel-title {
        font-size: 1.2rem;
        margin-bottom: 15px;
    }
}
/*
ANA EKRAN BRANŞLARIMIZ BİTİŞ
*/
/*
ANA EKRAN TAKVİM BAŞLANGIÇ
*/
/**
 * Event Calendar CSS for The Events Calendar Plugin
 * Updated: 2025-05-08
 * Author: mrtnvr
 * 
 * Colors:
 * Primary: #ff1f1f (Red)
 * Secondary: #333333 (Dark Gray)
 * Background: #ffffff (White)
 */

/* Root Variables */
:root {
    --primary-color: #ff1f1f;
    --primary-gradient: linear-gradient(135deg, #ff1f1f 0%, #ff4b4b 100%);
    --text-color: #333333;
    --text-light: #666666;
    --background: #ffffff;
    --shadow-sm: 0 5px 20px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 8px 25px rgba(0, 0, 0, 0.12);
    --border-radius: 12px;
    --transition: all 0.3s ease;
}

/* ---- MAIN CONTAINER STYLES ---- */
.tribe-events-view {
    width: min(100%, 1200px);
    margin: clamp(20px, 5vh, 40px) auto;
    font-family: system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
    color: var(--text-color);
    background-color: var(--background);
}

/* Main Calendar Container */
.tribe-common {
    font-family: system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
}

/* Calendar Title and Header */
.tribe-events .tribe-events-header__events-bar {
    background: var(--background);
    border: none;
    box-shadow: var(--shadow-sm);
    border-radius: var(--border-radius);
    margin-bottom: 25px;
}

/* Search Bar */
.tribe-events .tribe-events-c-search__input {
    background-color: var(--background);
    border: 1px solid #eaeaea;
    border-radius: 8px;
    color: var(--text-color);
    transition: var(--transition);
}

.tribe-events .tribe-events-c-search__input:focus {
    border-color: var(--primary-color);
    outline: none;
    box-shadow: 0 0 0 2px rgba(255, 31, 31, 0.1);
}

.tribe-events .tribe-events-c-search__button {
    background: var(--primary-gradient);
    color: white;
    border-radius: 50px;
    padding: 12px 24px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: var(--transition);
    border: none;
}

.tribe-events .tribe-events-c-search__button:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 31, 31, 0.2);
}

/* View Selector */
.tribe-events .tribe-events-c-view-selector__button {
    background: transparent;
    border: 1px solid #eaeaea;
    border-radius: 6px;
    color: var(--text-color);
}

.tribe-events .tribe-events-c-view-selector__button:hover {
    background: #f8f8f8;
}

.tribe-events .tribe-events-c-view-selector__list-item-link {
    color: var(--text-color);
}

.tribe-events .tribe-events-c-view-selector__list-item-link:hover {
    color: var(--primary-color);
}

/* Calendar Nav */
.tribe-events .tribe-events-c-top-bar__nav-link {
    background: transparent;
    border: 1px solid #eaeaea;
    border-radius: 50%;
    color: var(--text-color);
}

.tribe-events .tribe-events-c-top-bar__nav-link:hover {
    background: #f8f8f8;
    color: var(--primary-color);
}

.tribe-events .tribe-events-c-top-bar__datepicker-button {
    background: transparent;
    border: 1px solid #eaeaea;
    border-radius: 6px;
    color: var(--text-color);
    transition: var(--transition);
}

.tribe-events .tribe-events-c-top-bar__datepicker-button:hover {
    background: #f8f8f8;
    color: var(--primary-color);
}
.modern-calendar-header {
    width: min(100%, 1200px);
    margin: 0 auto 30px auto;
    padding: 40px 20px;
    /* Remove border-radius to eliminate the rounded rectangle shape */
    border-radius: 0;
    /* No background at all */
    background-image: none;
    background-color: transparent;
    background: none;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    text-align: center;
}

/* Remove decorative circles completely */
.modern-calendar-header::before {
    display: none;
}

.modern-calendar-header::after {
    display: none;
}

.modern-calendar-header h1 {
    /* Black text */
    color: #000;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 800;
    margin-bottom: 10px;
    position: relative;
}

/* Red underline under the heading */
.modern-calendar-header h1::after {
    content: '';
    display: block;
    width: min(60%, 240px);
    height: 4px;
    background: #e53935; /* vivid red underline */
    margin: 12px auto 0;
    border-radius: 2px;
}

/* Paragraph text in dark color */
.modern-calendar-header p {
    color: rgba(0, 0, 0, 0.85);
    font-size: clamp(1rem, 1.5vw, 1.2rem);
    max-width: 600px;
    margin: 0 auto;
}
/* ---- EVENT LIST STYLES ---- */
/* Month header */
.tribe-events .tribe-events-calendar-list__month-separator {
    display: flex;
    align-items: center;
    margin: 30px 0 15px;
}

.tribe-events .tribe-events-calendar-list__month-separator::before,
.tribe-events .tribe-events-calendar-list__month-separator::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #eaeaea;
}

.tribe-events .tribe-events-calendar-list__month-separator-text {
    margin: 0 15px;
    color: var(--text-color);
    font-weight: 600;
    font-size: clamp(1rem, 1.5vw, 1.1rem);
    background: transparent;
}

/* Event Card */
.tribe-events .tribe-events-calendar-list__event-wrapper {
    margin-bottom: 20px;
}

.tribe-events .tribe-events-calendar-list__event {
    display: flex;
    flex-direction: row;
    border-radius: var(--border-radius);
    background-color: var(--background);
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
    overflow: hidden;
    position: relative;
}

.tribe-events .tribe-events-calendar-list__event:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}

/* Event Date Tag */
.tribe-events .tribe-events-calendar-list__event-date-tag {
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(80px, 15vw, 100px);
    background: var(--primary-gradient);
    color: white;
    position: relative;
    isolation: isolate;
}

.tribe-events .tribe-events-calendar-list__event-date-tag::before {
    content: '';
    position: absolute;
    inset: -10px -10px auto auto;
    width: 30px;
    aspect-ratio: 1;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    z-index: -1;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-weekday {
    font-size: clamp(0.9rem, 1.5vw, 1.1rem);
    font-weight: 600;
    text-transform: uppercase;
    color: white;
    opacity: 0.9;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
    font-size: clamp(1.8rem, 3vw, 2.2rem);
    font-weight: 800;
    line-height: 1;
    color: white;
}

/* Event Content */
.tribe-events .tribe-events-calendar-list__event-details {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.tribe-events .tribe-events-calendar-list__event-header {
    margin-bottom: 15px;
}

.tribe-events .tribe-events-calendar-list__event-datetime {
    color: var(--text-light);
    font-size: clamp(0.85rem, 1.2vw, 0.9rem);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
}

.tribe-events .tribe-events-calendar-list__event-datetime::before {
    content: "🕒";
    margin-right: 5px;
    font-size: 1em;
}

.tribe-events .tribe-events-calendar-list__event-title {
    margin-bottom: 10px;
}

.tribe-events .tribe-events-calendar-list__event-title-link {
    color: var(--text-color);
    font-size: clamp(1.2rem, 2vw, 1.5rem);
    font-weight: 600;
    text-decoration: none;
    line-height: 1.3;
    transition: var(--transition);
}

.tribe-events .tribe-events-calendar-list__event-title-link:hover {
    color: var(--primary-color);
}

.tribe-events .tribe-events-calendar-list__event-venue {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px;
    color: var(--text-light);
    font-size: clamp(0.85rem, 1.2vw, 0.95rem);
}

.tribe-events .tribe-events-calendar-list__event-venue::before {
    content: "📍";
    font-size: 1.1em;
}

.tribe-events .tribe-events-calendar-list__event-description {
    font-size: clamp(0.9rem, 1.2vw, 1rem);
    color: var(--text-color);
    line-height: 1.6;
    margin-bottom: 15px;
}

.tribe-events .tribe-events-calendar-list__event-cost {
    font-weight: 600;
    display: inline-block;
    padding: 4px 12px;
    background: #f8f8f8;
    border-radius: 20px;
    color: var(--text-color);
    font-size: 0.9rem;
    margin-top: auto;
}

/* Featured Image */
.tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
    width: 250px;
    background: #f8f8f8;
    overflow: hidden;
}

.tribe-events .tribe-events-calendar-list__event-featured-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.tribe-events .tribe-events-calendar-list__event-featured-image:hover {
    transform: scale(1.05);
}

/* Add Featured Event Styles */
.tribe-events .tribe-events-calendar-list__event--featured {
    position: relative;
}

.tribe-events .tribe-events-calendar-list__event--featured:before {
    content: "Featured";
    position: absolute;
    top: 15px;
    right: 15px;
    background: var(--primary-gradient);
    color: white;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    z-index: 1;
}

/* ---- MONTH VIEW STYLES ---- */
.tribe-events .tribe-events-calendar-month {
    border-radius: var(--border-radius);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    background: var(--background);
}

.tribe-events .tribe-events-calendar-month__header-column {
    text-align: center;
    padding: 12px;
    background-color: #f8f8f8;
}

.tribe-events .tribe-events-calendar-month__header-column-title {
    color: var(--text-color);
    font-weight: 600;
    font-size: 1rem;
}

.tribe-events .tribe-events-calendar-month__day {
    border: 1px solid #eaeaea;
    min-height: 110px;
    transition: var(--transition);
}

.tribe-events .tribe-events-calendar-month__day:hover {
    background-color: #fafafa;
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum {
    color: var(--primary-color);
    font-weight: 700;
}

.tribe-events .tribe-events-calendar-month__calendar-event {
    padding: 5px;
    margin: 2px;
    border-radius: 4px;
    transition: var(--transition);
}

.tribe-events .tribe-events-calendar-month__calendar-event:hover {
    background-color: rgba(255, 31, 31, 0.05);
}

.tribe-events .tribe-events-calendar-month__calendar-event-title-link {
    color: var(--text-color);
    font-weight: 500;
    font-size: 0.85rem;
    text-decoration: none;
}

.tribe-events .tribe-events-calendar-month__calendar-event-title-link:hover {
    color: var(--primary-color);
}

/* ---- BUTTONS & INTERACTIVE ELEMENTS ---- */
.tribe-events .tribe-common-c-btn,
.tribe-events .tribe-events-c-ical__link {
    background: var(--primary-gradient);
    color: white;
    border-radius: 50px;
    padding: 12px 24px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: var(--transition);
    border: none;
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.tribe-events .tribe-common-c-btn::before,
.tribe-events .tribe-events-c-ical__link::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.2);
    clip-path: circle(0% at 50% 50%);
    transition: clip-path 0.4s ease;
    z-index: -1;
}

.tribe-events .tribe-common-c-btn:hover::before,
.tribe-events .tribe-events-c-ical__link:hover::before {
    clip-path: circle(100% at 50% 50%);
}

.tribe-events .tribe-common-c-btn:hover,
.tribe-events .tribe-events-c-ical__link:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 31, 31, 0.2);
}

/* Date Picker Styling */
.datepicker {
    background-color: var(--background);
    border: 1px solid #eaeaea;
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-sm);
}

.datepicker-days table {
    border-collapse: separate;
    border-spacing: 3px;
    width: 100%;
}

.datepicker .day {
    border-radius: 4px;
    transition: var(--transition);
    color: var(--text-color);
}

.datepicker .day:hover {
    background-color: #f8f8f8;
}

.datepicker .day.active {
    background: var(--primary-color);
    color: white;
}

.datepicker .month,
.datepicker .year {
    color: var(--text-color);
    transition: var(--transition);
}

.datepicker .month:hover,
.datepicker .year:hover {
    background-color: #f8f8f8;
}

/* ---- SINGLE EVENT PAGE STYLES ---- */
.tribe-events-single {
    width: min(100%, 1200px);
    margin: 0 auto;
    padding: 30px;
    background: var(--background);
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-sm);
}

.tribe-events-single-event-title {
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    color: var(--text-color);
    font-weight: 700;
    margin-bottom: 15px;
    position: relative;
    padding-bottom: 15px;
}

.tribe-events-single-event-title::after {
    content: '';
    position: absolute;
    inset-inline-start: 0;
    inset-block-end: 0;
    width: 80px;
    height: 4px;
    background: var(--primary-color);
    border-radius: 2px;
}

.tribe-events-schedule {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 25px;
}

.tribe-events-schedule h2 {
    font-size: clamp(1rem, 1.5vw, 1.2rem);
    color: var(--text-light);
}

/* Event Image */
.tribe-events-event-image {
    margin-bottom: 25px;
    border-radius: var(--border-radius);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.tribe-events-event-image img {
    width: 100%;
    border-radius: var(--border-radius);
    transition: transform 0.5s ease;
}

.tribe-events-event-image img:hover {
    transform: scale(1.02);
}

/* Event Meta */
.tribe-events-meta-group {
    background-color: #f8f8f8;
    padding: 20px;
    border-radius: var(--border-radius);
    margin-bottom: 20px;
}

.tribe-events-meta-group dt {
    color: var(--text-color);
    font-weight: 600;
    margin-bottom: 5px;
}

.tribe-events-meta-group dd {
    color: var(--text-light);
    margin-bottom: 15px;
}

/* Event Description */
.tribe-events-single-event-description {
    background-color: var(--background);
    border-radius: var(--border-radius);
    padding: 20px;
    margin-top: 20px;
    border-left: 3px solid var(--primary-color);
    box-shadow: var(--shadow-sm);
    color: var(--text-color);
    line-height: 1.6;
}

/* ---- WIDGET STYLING ---- */
.tribe-events-widget {
    background-color: var(--background);
    border-radius: var(--border-radius);
    padding: 20px;
    box-shadow: var(--shadow-sm);
}

.tribe-events-widget h2 {
    color: var(--text-color);
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 15px;
    position: relative;
    padding-bottom: 10px;
}

.tribe-events-widget h2::after {
    content: '';
    position: absolute;
    inset-inline-start: 0;
    inset-block-end: 0;
    width: 50px;
    height: 3px;
    background: var(--primary-color);
    border-radius: 2px;
}

.tribe-events-widget ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.tribe-events-widget-events-list__event {
    padding: 10px 0;
    border-bottom: 1px solid #eaeaea;
}

.tribe-events-widget-events-list__event:last-child {
    border-bottom: none;
}

.tribe-events-widget-events-list__event-title {
    margin-bottom: 5px;
}

.tribe-events-widget-events-list__event-title-link {
    color: var(--text-color);
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
}

.tribe-events-widget-events-list__event-title-link:hover {
    color: var(--primary-color);
}

.tribe-events-widget-events-list__event-datetime {
    color: var(--text-light);
    font-size: 0.9rem;
}

/* ---- MOBILE RESPONSIVENESS ---- */
@media (max-width: 768px) {
    .tribe-events .tribe-events-calendar-list__event {
        flex-direction: column;
    }
    
    .tribe-events .tribe-events-calendar-list__event-date-tag {
        width: 100%;
        padding: 10px;
        flex-direction: row;
        justify-content: center;
    }
    
    .tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
        flex-direction: row;
        align-items: center;
        gap: 10px;
    }
    
    .tribe-events .tribe-events-calendar-list__event-date-tag-weekday {
        font-size: 1rem;
    }
    
    .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
        width: 100%;
        height: 200px;
    }
    
    .tribe-events .tribe-events-calendar-month__day {
        min-height: 70px;
    }
    
    .tribe-events .tribe-events-calendar-month__calendar-event {
        padding: 2px;
    }
    
    .tribe-events .tribe-events-calendar-month__calendar-event-title-link {
        font-size: 0.7rem;
    }
    
    .modern-calendar-header {
        padding: 30px 20px;
    }
    
    .tribe-events-single {
        padding: 20px;
    }
    
    .tribe-events-single-event-title::after {
        width: 60px;
    }
}

/* ---- ANIMATIONS ---- */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.tribe-events-calendar-list__event-wrapper {
    animation: fadeInUp 0.5s ease both;
    animation-delay: calc(var(--animation-order, 0) * 0.1s);
}

/* Empty State */
.tribe-events-calendar-list__event-wrapper:empty + .tribe-events-calendar-list__event-wrapper:empty {
    display: none;
}

.tribe-events-calendar-list:empty::after {
    content: "No upcoming events to display";
    display: block;
    text-align: center;
    padding: clamp(30px, 5vh, 40px) 20px;
    color: var(--text-light);
    font-size: clamp(1.1rem, 2vw, 1.2rem);
    font-style: italic;
    background: #f9f9f9;
    border-radius: var(--border-radius);
    border: 1px dashed #ddd;
    margin: 30px 0;
}

/* Print Styles */
@media print {
    .tribe-events-view {
        width: 100%;
        margin: 0;
    }
    
    .tribe-events .tribe-events-calendar-list__event {
        break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ddd;
    }
    
    .tribe-events .tribe-events-c-search,
    .tribe-events .tribe-events-c-view-selector,
    .tribe-events .tribe-events-c-top-bar__nav,
    .tribe-events .tribe-events-c-top-bar__datepicker,
    .modern-calendar-header {
        display: none;
    }
}

/* Aviation News Shortcode Styling - Red, Black, White Theme with improved padding */
.aviation-news-container {
    max-width: 1200px; /* Added a max-width for better centering */
    margin: 20px auto;
    font-family: 'Urbanist', sans-serif;
    background-color: #fff;
    /* Removed the border: 2px solid #000; */
    padding: 20px 30px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.aviation-news-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 25px;
    padding: 10px 15px;
    max-width: 100%;
    margin: 0 auto; /* Added for better centering */
}
.aviation-news-item {
    background-color: #fff;
    border-left: 4px solid #cc0000;
    padding: 15px 25px;
    transition: transform 0.2s ease;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.aviation-news-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Improved image styling with fixed height and proper centering */
.aviation-news-item .news-image {
    margin: -15px -25px 15px -25px; /* Adjust margins to match the padding */
    height: 180px; /* Fixed height for consistency */
    overflow: hidden;
    position: relative;
    background-color: #f0f0f0; /* Light background for image area */
    display: flex;
    align-items: center;
    justify-content: center;
}

.aviation-news-item .news-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Cover the area while maintaining aspect ratio */
    transition: transform 0.3s ease;
}

.aviation-news-item:hover .news-image img {
    transform: scale(1.05);
}

/* Fix for image loading issues */
.aviation-news-item .news-image::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.03);
    z-index: 1;
}

.aviation-news-item .news-title {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
}

.aviation-news-item .news-title a {
    color: #000; /* Black text */
    text-decoration: none;
    transition: color 0.2s ease;
}

.aviation-news-item .news-title a:hover {
    color: #cc0000; /* Red text on hover */
}

.aviation-news-item .news-meta {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: #666;
    margin-bottom: 10px;
    border-bottom: 1px solid #eee;
    padding-bottom: 8px;
}

.aviation-news-item .news-date {
    font-weight: bold;
}

.aviation-news-item .news-source {
    color: #cc0000;
    font-style: italic;
}

.aviation-news-item .news-excerpt {
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    margin-bottom: 15px;
    flex-grow: 1;
    padding: 0 5px; /* Add some padding to the excerpt text */
}

.aviation-news-item .read-more {
    display: inline-block;
    background-color: #cc0000; /* Red button */
    color: #fff;
    padding: 8px 15px; /* Slightly larger button */
    text-decoration: none;
    font-size: 14px;
    border-radius: 3px;
    text-align: center;
    transition: background-color 0.2s ease;
    align-self: flex-start;
    margin-top: auto;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.aviation-news-item .read-more:hover {
    background-color: #990000; /* Darker red on hover */
}

.no-news {
    color: #cc0000;
    font-style: italic;
    text-align: center;
    padding: 20px;
}

.news-notice {
    text-align: center;
    margin-top: 20px;
    font-size: 13px;
    color: #666;
    font-style: italic;
}

.news-attribution {
    text-align: center;
    margin-top: 15px;
    padding-top: 10px;
    font-size: 11px;
    color: #666;
    border-top: 1px solid #eee;
}

.news-attribution a {
    color: #cc0000;
    text-decoration: none;
}

/* Responsive adjustments with improved padding */
@media (max-width: 768px) {
    .aviation-news-list {
        grid-template-columns: 1fr;
        padding: 5px 10px; /* Smaller padding on mobile */
    }
    
    .aviation-news-container {
        padding: 15px 20px; /* Adjusted padding on mobile */
    }
    
    .aviation-news-item {
        padding: 12px 20px; /* Slightly reduced padding on mobile */
    }
    
    .aviation-news-item .news-image {
        margin: -12px -20px 12px -20px; /* Adjust margins to match mobile padding */
    }
}

@media (max-width: 480px) {
    .aviation-news-item .news-meta {
        flex-direction: column;
    }
    
    .aviation-news-item .news-date,
    .aviation-news-item .news-source {
        margin-bottom: 5px;
    }
    
    .aviation-news-item .news-image {
        height: 160px; /* Smaller image height on very small screens */
    }
}

/* Paste this into Appearance → Customize → Additional CSS or your child theme style.css */

.styled-heading {
  position: relative;
  display: inline-block;     /* underline bar hizalanması için */
  font-size: 56px;           /* istediğiniz büyüklüğe ayarlayın */
  font-weight: 700;
  color: #333333;
  margin: 0 0 20px 0;
  padding-bottom: 12px;      /* alt çubuğa boşluk */
  line-height: 1;
  letter-spacing: -1px;      /* isteğe bağlı: harf aralığı */
}

/* Kısa kırmızı çubuk (underline yerine pseudo-element kullanıyoruz) */
.styled-heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 6px;               /* çubuğun kalınlığı */
  width: 84px;               /* çubuğun uzunluğu */
  background: #e51c1c;       /* kırmızı renk (isteğe göre degrade de koyabilirsiniz) */
  border-radius: 3px;
}

/* Responsive küçültme */
@media (max-width: 768px) {
  .styled-heading {
    font-size: 34px;
    padding-bottom: 8px;
  }
  .styled-heading::after {
    height: 5px;
    width: 60px;
  }
}

.event-calendar,
.event-calendar * {
  font-family: "Urbanist", sans-serif;
}

.aviation-news-container,
.aviation-news-container * {
  font-family: "Urbanist", sans-serif;
}

.news-ann-container,
.news-ann-container * {
  font-family: "Urbanist", sans-serif;
}

.media-search-container,
.media-search-container * {
  font-family: "Urbanist", sans-serif;
}

.post-gallery-container,
.post-gallery-container * {
  font-family: "Urbanist", sans-serif;
}

.weather-widget,
.weather-widget * {
  font-family: "Urbanist", sans-serif;
}
