.xanthi-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}

.event-card{
background:white;
border-radius:8px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
padding:15px;
}

.event-image{
height:180px;
background-size:cover;
background-position:center;
border-radius:6px;
margin-bottom:10px;
}

.xanthi-weekend-events{
    margin:40px 0;
}

.xanthi-weekend-events h2{
    font-size:28px;
    margin-bottom:20px;
    color:#ff3c00;
}

.weekend-event-card {
    display:flex;
    background:white;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,0.1);
    transition:transform 0.3s;
    margin-bottom:20px;
}

.weekend-event-card:hover{
    transform:translateY(-4px);
}

.weekend-event-image {
    width:200px;
    height:140px;
    background-size:cover;
    background-position:center;
}

.weekend-event-info{
    padding:15px;
}

.weekend-event-date {
    color:#ff3c00;
    font-weight:700;
    margin-bottom:5px;
}

.weekend-event-venue{
    color:#666;
    font-size:14px;
    margin-bottom:8px;
}

.weekend-event-info h3{
    margin:0 0 5px 0;
}

.weekend-event-info a{
    text-decoration:none;
    color:#ff3c00;
    font-weight:600;
}

.xanthi-venues-grid{
    margin:40px 0;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.xanthi-venues-grid h2{
    font-size:28px;
    margin-bottom:20px;
    color:#ff3c00;
}

.venue-card{
    background:white;
    border-radius:8px;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
    overflow:hidden;
    transition:transform .25s ease;
}

.venue-card:hover{
    transform:translateY(-4px);
}

.venue-image{
    height:150px;
    background-size:cover;
    background-position:center;
}

.venue-card h3{
    padding:10px 15px 0 15px;
    margin:0;
}

.venue-card a{
    display:block;
    padding:10px 15px;
    color:#ff3c00;
    font-weight:600;
    text-decoration:none;
}

.homepage-hero{
    text-align:center;
    padding:60px 20px;
    background:#f7f7f7;
}

.homepage-hero h1{
    font-size:36px;
    color:#ff3c00;
    margin-bottom:20px;
}

.homepage-hero input{
    padding:10px;
    width:250px;
    border:1px solid #ccc;
    border-radius:6px 0 0 6px;
}

.homepage-hero button{
    padding:10px 15px;
    border:none;
    background:#ff3c00;
    color:white;
    border-radius:0 6px 6px 0;
    cursor:pointer;
}

.homepage-categories{
    display:flex;
    justify-content:center;
    gap:15px;
    margin:40px 0;
}

.homepage-categories .category{
    padding:10px 20px;
    background:#ff3c00;
    color:white;
    border-radius:20px;
    text-decoration:none;
    font-weight:600;
}

section{
    margin:0px 0;
}

/* Timeline / Event cards */
.xanthi-events-timeline {
    margin: 40px 0;
}

/* Κάθε event card */
.timeline-event-card {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 12px;
    padding: 10px 15px;
    margin-bottom: 15px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transition: transform 0.2s ease;
}

.timeline-event-card:hover {
    transform: translateY(-2px);
}

/* Μικρή στρογγυλή εικόνα */
.timeline-event-image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    margin-right: 15px;
    flex-shrink: 0;
}

/* Event content */
.timeline-event-info {
    font-size: 12px; /* πολύ μικρά γράμματα */
    line-height: 1.3;
}

/* Date */
.timeline-event-date {
    color: #ff3c00;
    font-weight: 700;
    margin-bottom: 2px;
}

/* Venue */
.timeline-event-venue {
    color: #666;
    margin-bottom: 4px;
}

/* Title */
.timeline-content h3 {
    margin: 0 0 5px 0;
    font-size: 18px;   /* μεγαλύτερος τίτλος */
    font-weight: 800;  /* πιο bold */
}

/* View Event κουμπί */
.timeline-event-info a {
    display: inline-block;
    padding: 5px 12px;
    background: #ff3c00;
    color: #fff;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
}

.timeline-event-info a:hover {
    background: #ff6600;
}

/* Header button για timeline */
.timeline-header-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px;
    background: #ff3c00;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    border-radius: 8px;
    text-decoration: none;
    margin-bottom: 20px;
    transition: background 0.2s;
}



.timeline-header-button:hover {
    background: #0000;
}

/* Header button πάνω από timeline */

/* Next Events button */
.timeline-header-button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    background: #2b2b2b;
    color: #fff;
    font-weight: 800;
    border-radius: 12px;
	font-size: 16px;
    margin-bottom: 25px;
    text-decoration: none;
    font-size: 16px;
    margin-bottom: 25px;
    cursor: pointer;
    transition: background 0.2s;
}

.timeline-header-button img {
    width: 30px;
    height: 30px;
}

.timeline-header-button:hover {
    background: #000000;
}

/* Find All button */
.timeline-find-all-button {
    display: inline-flex;
    padding: 10px 30px;
    margin: 5px 0px 0px 15px;
    background: #2b2b2b;
    color: #fff;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.2s;
}

.timeline-find-all-button:hover {
    background: #000000;
}

.xanthi-events-cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
margin:40px 0;
}

.xanthi-event-card{
background:#fff;
border-radius:14px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:transform .25s;
}

.xanthi-event-card:hover{
transform:translateY(-5px);
}

.event-image{
height:180px;
background-size:cover;
background-position:center;
position:relative;
}

.event-date-badge{
position:absolute;
top:10px;
left:10px;
background:#ff3c00;
color:white;
padding:6px 10px;
border-radius:6px;
font-size:13px;
font-weight:700;
}

.event-card-content{
padding:16px;
}

.event-card-content h3{
margin:0 0 8px 0;
font-size:18px;
font-weight:800;
}

.event-venue{
font-size:14px;
color:#666;
margin-bottom:12px;
}

.event-card-button{
display:inline-block;
padding:7px 14px;
background:#ff3c00;
color:white;
border-radius:8px;
font-size:13px;
font-weight:600;
text-decoration:none;
}

.event-card-button:hover{
background:#ff6600;
}

.xanthi-events-cards{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
margin:40px 0;
}

/* Tablet */
@media (max-width:1024px){
.xanthi-events-cards{
grid-template-columns:repeat(3,1fr);
}
}

/* Mobile */
@media (max-width:640px){
.xanthi-events-cards{
grid-template-columns:repeat(2,1fr);
gap:14px;
}
}

@media (max-width:640px){

.event-card-content{
padding:12px;
}

.event-card-content h3{
font-size:15px;
}

}

.xanthi-events-cards{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:26px;
margin:40px 0;
}

/* Card */

.xanthi-event-card{
background:#fff;
border-radius:18px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
transition:all .3s;
}

.xanthi-event-card:hover{
transform:translateY(-6px);
}

/* Image */

.event-image{
height:240px;
background-size:cover;
background-position:center;
position:relative;
}

/* Gradient overlay */

.event-overlay{
position:absolute;
bottom:0;
left:0;
right:0;
padding:28px;
background:linear-gradient(
to top,
rgba(0,0,0,0.85),
rgba(0,0,0,0.2),
rgba(0,0,0,0)
);
color:white;
}

/* Title */

.event-title{
color:#fff;
font-size:22px;
font-weight:800;
line-height:1.2;
text-shadow: 2px 2px 6px rgba(0,0,0,0.7);
}

/* Vertical Date */

.event-date-vertical{
position:absolute;
top:16px;
left:16px;
background:#0f766e;
color:white;
border-radius:10px;
padding:10px 8px;
text-align:center;
font-weight:700;
}

.event-date-vertical .day{
display:block;
font-size:18px;
line-height:1;
}

.event-date-vertical .month{
font-size:11px;
letter-spacing:1px;
text-transform:uppercase;
}

/* Content */

.event-card-content{
padding:18px;
}

.event-venue{
font-size:14px;
color:#666;
margin-bottom:14px;
}

/* Button */

.event-card-button{
display:inline-block;
padding:8px 18px;
background:#0f766e;
color:white;
border-radius:8px;
font-size:13px;
font-weight:700;
text-decoration:none;
}

.event-card-button:hover{
background:#115e59;
}

/* Tablet */

@media (max-width:1024px){
.xanthi-events-cards{
grid-template-columns:repeat(2,1fr);
}
}

/* Mobile */

@media (max-width:640px){

.xanthi-events-cards{
grid-template-columns:repeat(2,1fr);
gap:16px;
}

.xanthi-events-cards .xanthi-event-card:first-child{
grid-column:1 / -1;
}

.event-image{
height:170px;
}

}
.xanthi-events-cards{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:26px;
margin:40px 0;
}

/* πρώτο event μεγάλο */

.xanthi-events-cards .xanthi-event-card:first-child{
grid-column:1 / -1;
}

.xanthi-events-cards .xanthi-event-card:first-child .event-image{
height:340px;
}

.xanthi-events-cards .xanthi-event-card:first-child .event-title{
font-size:28px;
}

/* featured image */

.xanthi-events-cards .xanthi-event-card:first-child .event-image{
height:620px;
background-size:cover;
background-position:center;
background-repeat:no-repeat;
}

.featured-title{
color:#fff;
font-size:34px;
font-weight:900;
margin:6px 0 0 0;
line-height:1.2;
text-shadow: 2px 2px 6px rgba(0,0,0,0.7);
}

.featured-date{
background:#0f766e;
padding:6px 12px;
border-radius:6px;
font-size:13px;
font-weight:700;
}

.featured-date{
background:#0f766e;
padding:6px 12px;
border-radius:6px;
font-size:13px;
font-weight:700;
}

@media (max-width:640px){

.xanthi-events-cards .xanthi-event-card:first-child .event-image{
height:260px;
}

.featured-title{
font-size:22px;
max-width:100%;
}

}

.xanthi-events-cards .xanthi-event-card:first-child .event-image{
aspect-ratio:21/9;
}

.xanthi-events-slider{
position:relative;
padding:20px 40px;
}

.story-card{
text-decoration:none;
color:white;
}

.story-image{
aspect-ratio:9/16;
background-size:cover;
background-position:center;
border-radius:14px;
overflow:hidden;
position:relative;
}

.story-overlay{
position:absolute;
bottom:0;
left:0;
right:0;
padding:12px;
background:rgba(0,0,0,0.45);
backdrop-filter:blur(2px);
border-bottom-left-radius:14px;
border-bottom-right-radius:14px;
}

.story-title{
font-size:24px;
font-weight:900;
color:#fff;
margin:0;
text-shadow:2px 2px 6px rgba(0,0,0,0.8);
}

.story-meta{
font-size:14px;
color:#eee;
margin-top:4px;
}

/* arrows */

.swiper-button-prev,
.swiper-button-next{

color:#0f766e;
background:white;
width:42px;
height:42px;
border-radius:50%;
box-shadow:0 4px 12px rgba(0,0,0,0.2);

}

.swiper-button-prev:hover,
.swiper-button-next:hover{
background:#0f766e;
color:white;
}

.story-badge{
position:absolute;
top:10px;
right:10px;
background:#30c935;
color:white;
font-size:12px;
font-weight:700;
padding:4px 8px;
border-radius:6px;
}

.xanthi-events-header{
    text-align: center; /* κεντράρει όλα τα στοιχεία μέσα */
	margin-bottom:30px;
}

.xanthi-events-title{

font-family:'Manrope';
font-size:30px;
font-weight:900;
color:#211f20;

-moz-osx-font-smoothing:grayscale;

text-shadow:rgba(0,0,0,0.5) 0px 0px 3px;

}

/* Mobile (max-width 768px) */
@media (max-width: 768px) {
    .xanthi-events-title {
        font-size: 32px;       /* μικρότερη γραμματοσειρά */
        padding-bottom: 4px;   /* προσαρμογή padding */
    }
    
    .xanthi-events-header {
        margin-bottom: 20px;   /* προσαρμογή περιθωρίου */
    }
}

/* SINGLE EVENT */

.xe-single{
max-width:1400px;
margin:auto;
}

.xe-hero{
height:650px;
position:relative;
border-radius:24px;
overflow:hidden;
background-size:cover;
background-position:center;
margin-bottom:40px;
}

.xe-overlay{
position:absolute;
inset:0;

background:linear-gradient(
180deg,
rgba(0,0,0,.15),
rgba(0,0,0,.85)
);
}

.xe-hero-content{
position:absolute;
left:50px;
bottom:50px;
z-index:10;
color:#fff;
}

.xe-title{
font-size:56px;
font-weight:900;
line-height:1.1;
margin:0 0 20px 0;

text-shadow:rgba(0,0,0,.6) 0 0 12px;
}

.xe-meta{
display:flex;
gap:25px;
flex-wrap:wrap;
font-size:16px;
font-weight:600;
}

.xe-badge{
position:absolute;
top:25px;
right:25px;
z-index:20;

background:#0f766e;
color:#fff;

padding:10px 14px;
border-radius:10px;

font-size:13px;
font-weight:800;
}

.xe-container{
max-width:1000px;
margin:auto;
padding:0 20px;
}

.xe-actions{
margin-bottom:40px;
}

.xe-ticket-btn{
display:inline-block;

background:#f97316;
color:#fff !important;

padding:14px 24px;
border-radius:12px;

font-weight:800;
text-decoration:none;

transition:.2s;
}

.xe-ticket-btn:hover{
transform:translateY(-2px);
}

.xe-content{
font-size:18px;
line-height:1.9;
margin-bottom:60px;
}

.xe-next-events{
margin-top:60px;
}

.xe-next-events h2{
font-size:32px;
font-weight:900;
margin-bottom:25px;
}

@media(max-width:768px){

.xe-hero{
height:420px;
border-radius:16px;
}

.xe-title{
font-size:34px;
}

.xe-meta{
font-size:14px;
gap:12px;
}

.xe-hero-content{
left:20px;
right:20px;
bottom:20px;
}

}

.story-date{
    font-size:12px;
    color:#fff;
    opacity:.9;
    margin-top:6px;
}

.story-venue{
    font-size:13px;
    color:#fff;
    opacity:.9;
    margin-top:4px;
}

.story-meta{
    font-size:12px;
    color:#fff;
    opacity:.85;
    margin-top:4px;
}

.story-btn{
    display:inline-block;
    margin-top:10px;
    background:#f97316;
    color:#fff !important;
    padding:8px 12px;
    border-radius:8px;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}