:root {
    --purple: #c300ff;
    --dark-bg: #000000;
    --glass: rgba(255, 255, 255, 0.03);
    --transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

* {
    margin: 0; padding: 0; box-sizing: border-box;
    font-family: 'Poppins', sans-serif; scroll-behavior: smooth;
}

body {
    background-color: var(--dark-bg); color: #fff;
    overflow-x: hidden; line-height: 1.6;
}

/* Custom Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #000; }
::-webkit-scrollbar-thumb { background: var(--purple); border-radius: 10px; }

/* HEADER */
header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 10px 5%;
    background: #000000; backdrop-filter: blur(15px);
    position: fixed; width: 100%; top: 0; z-index: 1000;
    border-bottom: 1px solid rgba(195, 0, 255, 0.1);
}

.logo a { display: flex; align-items: center; text-decoration: none; }
.logo img {
    height: 75px;
    width: auto;
    mix-blend-mode: screen;
    filter: brightness(1);
    transition: filter 0.3s ease;
    user-select: none;
}
.logo img:hover { filter: brightness(1.4); }

nav { display: flex; align-items: center; }
nav a {
    margin-left: 30px; text-decoration: none; color: #ddd;
    font-weight: 400; font-size: 13px; text-transform: uppercase;
    letter-spacing: 2px; transition: var(--transition); position: relative;
}
nav a:hover { color: var(--purple); }
nav a::after {
    content: ''; position: absolute; width: 0; height: 2px;
    background: var(--purple); left: 0; bottom: -5px; transition: 0.3s;
}
nav a:hover::after { width: 100%; }

.menu-toggle { display: none; font-size: 24px; cursor: pointer; color: #fff; }
.close-menu { display: none !important; }

/* SECTIONS */
section { 
    padding: 100px 10%; 
    opacity: 0; transform: translateY(30px); transition: 1s all ease;
    scroll-margin-top: 95px; 
}
section.visible { opacity: 1; transform: translateY(0); }

.section-title {
    font-size: clamp(30px, 5vw, 45px); text-align: center;
    margin-bottom: 60px; font-weight: 800; text-transform: uppercase;
}
.section-title span { color: var(--purple); text-shadow: 0 0 15px rgba(195,0,255,0.5); }

/* HERO */
.hero {
    height: 100vh; display: flex; justify-content: center; align-items: center; text-align: center;
    background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.9)), url('skg1.jpg') center/cover no-repeat;
    opacity: 1 !important; transform: none !important;
}
.hero h1 { font-size: clamp(40px, 8vw, 90px); font-weight: 800; text-transform: uppercase; line-height: 1; letter-spacing: -2px; }
.hero p { font-size: 18px; color: #ccc; margin-bottom: 35px; letter-spacing: 4px; }

.hero-btn {
    display: inline-block; padding: 16px 45px; border: 2px solid var(--purple);
    color: #fff; text-decoration: none; border-radius: 50px; font-weight: 600;
    transition: var(--transition); letter-spacing: 1px;
}
.hero-btn:hover { background: var(--purple); box-shadow: 0 0 30px var(--purple); transform: translateY(-3px); }

/* ABOUT SECTION */
.about-content {
    max-width: 850px; margin: 0 auto 60px; text-align: center;
    background: var(--glass); padding: 50px; border-radius: 30px;
    border: 1px solid rgba(255,255,255,0.05); backdrop-filter: blur(10px);
}
.about-link {
    color: var(--purple); text-decoration: none; font-weight: 600; transition: 0.3s;
}
.about-link:hover {
    color: #fff; text-shadow: 0 0 10px var(--purple);
}

.shop-content {
    max-width: 850px; margin: 0 auto 60px; text-align: center;
    background: var(--glass); padding: 50px; border-radius: 30px;
    border: 1px solid rgba(255,255,255,0.05); backdrop-filter: blur(10px);
}

/* SLIDER STYLES */
.slider-container { position: relative; width: 100%; display: flex; align-items: center; }
.slider-container::after {
    content: ''; position: absolute; top: 0; right: 0; width: 40px; height: 100%;
    background: linear-gradient(to left, rgba(0,0,0,0.7), transparent);
    pointer-events: none; z-index: 5;
}

.gallery-wrapper {
    display: flex; overflow-x: auto; gap: 25px; padding: 20px 0;
    scroll-snap-type: x mandatory; scroll-behavior: smooth;
}
.gallery-wrapper::-webkit-scrollbar { height: 4px; }
.gallery-wrapper::-webkit-scrollbar-thumb { background: var(--purple); border-radius: 10px; }

.gallery-item {
    flex: 0 0 320px; height: 350px; scroll-snap-align: start;
    border-radius: 20px; overflow: hidden; border: 1px solid rgba(255,255,255,0.1);
    cursor: pointer; transition: var(--transition);
}
.gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: 0.5s; filter: grayscale(40%); }
.gallery-item:hover img { transform: scale(1.1); filter: grayscale(0%); }

.nav-arrow {
    position: absolute; top: 50%; transform: translateY(-50%);
    background: rgba(195, 0, 255, 0.2); color: white; border: none;
    width: 45px; height: 45px; border-radius: 50%; cursor: pointer;
    z-index: 10; display: flex; justify-content: center; align-items: center;
    border: 1px solid rgba(195, 0, 255, 0.4); backdrop-filter: blur(5px);
}
.prev { left: -22px; } .next { right: -22px; }

/* Swipe Hint */
.swipe-hint {
    display: none; text-align: right; font-size: 11px; color: var(--purple);
    text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px;
    animation: pulseHint 2s infinite;
}
@keyframes pulseHint {
    0% { opacity: 0.3; transform: translateX(0); }
    50% { opacity: 1; transform: translateX(-5px); }
    100% { opacity: 0.3; transform: translateX(0); }
}

/* CONTACT SECTION */
.contact-container {
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 40px;
    background: var(--glass); padding: 40px; border-radius: 30px; border: 1px solid rgba(255,255,255,0.05);
}
input, textarea {
    width: 100%; padding: 18px; margin-bottom: 20px;
    background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.1);
    color: #fff; border-radius: 15px; outline: none;
}
form button {
    width: 100%; padding: 18px; background: var(--purple);
    border: none; color: #fff; font-weight: 700; border-radius: 15px;
    cursor: pointer; transition: var(--transition);
}
iframe { border-radius: 20px; width: 100%; min-height: 350px; border: none; filter: invert(90%) hue-rotate(180deg); opacity: 0.6; }

.collab-btn-wrapper { text-align: center; margin-top: 40px; }

.socials { margin-top: 50px; text-align: center; }
.socials a { font-size: 28px; color: #fff; margin: 0 20px; transition: 0.3s; display: inline-block; }
.socials a:hover { color: var(--purple); transform: translateY(-5px); }

.footer-logo { text-align: center; margin-top: 40px; margin-bottom: -30px; }
.footer-logo img { height: 200px; mix-blend-mode: screen; transition: var(--transition); }
footer { padding: 30px 20px; text-align: center; color: #555; border-top: 1px solid rgba(255,255,255,0.05); }

.social-text {
    text-align: center;
    margin-top: 50px;
    margin-bottom: -30px; /* Μειώνει την απόσταση από τα εικονίδια */
    font-size: 13px;
    letter-spacing: 2px;
    color: #888;
    text-transform: uppercase;
}

input:focus, textarea:focus {
    border-color: var(--purple); /* Το περίγραμμα γίνεται μοβ */
    background: rgba(195, 0, 255, 0.05); /* Το φόντο του πλαισίου αποκτά μια πολύ ελαφριά μοβ χροιά */
    box-shadow: 0 0 10px rgba(195, 0, 255, 0.2); /* Προσθέτει μια μικρή λάμψη γύρω από το πλαίσιο */
    outline: none; 
}



/* ============================================================
   UNIVERSAL MOBILE & CROSS-BROWSER FIXES (Android & iPhone)
   ============================================================ */

/* 1. ΔΙΟΡΘΩΣΗ ΓΙΑ ΟΛΑ ΤΑ "ΓΥΑΛΙΝΑ" ΣΤΟΙΧΕΙΑ (Glassmorphism)
   Εξασφαλίζει ότι το εφέ θολώματος θα φαίνεται παντού (iPhone & Android) */
header, .about-content, .shop-content, .contact-container, nav, .nav-arrow {
    -webkit-backdrop-filter: blur(15px) !important;
    backdrop-filter: blur(15px) !important;
}

/* 2. ΣΤΑΘΕΡΟΠΟΙΗΣΗ ΤΟΥ HERO SECTION
   Το 100dvh εξασφαλίζει ότι η κεντρική οθόνη δεν θα "κουνιέται" ή θα κρύβεται 
   πίσω από τις μπάρες διευθύνσεων των κινητών. */
.hero {
    height: 100vh; /* fallback */
    height: 100dvh !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 3. ΟΜΑΛΗ ΚΙΝΗΣΗ ΣΤΑ SLIDERS (Gallery & Shop)
   Προσθέτει "momentum scrolling" για τα iPhone, ώστε η gallery να γλιστράει ομαλά. */
.gallery-wrapper {
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
}

/* 4. ΚΑΘΑΡΟ ΚΕΙΜΕΝΟ & ΑΦΑΙΡΕΣΗ ΓΚΡΙ ΠΛΑΙΣΙΟΥ ΣΤΑ ΚΛΙΚ
   - Κάνει τις γραμματοσειρές πιο καθαρές (antialiased).
   - Αφαιρεί το ενοχλητικό γκρι κουτί που εμφανίζεται στα iPhone όταν πατάς ένα link/κουμπί. */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
}

/* 5. ΔΙΟΡΘΩΣΕΙΣ ΓΙΑ ΜΙΚΡΕΣ ΟΘΟΝΕΣ (Κάτω από 768px) */
@media (max-width: 768px) {
    /* Αποφυγή αυτόματου ζουμ στα iPhone στη φόρμα */
    input, textarea {
        font-size: 16px !important;
    }

    /* Βελτίωση εμφάνισης τίτλων για να μην "σπάνε" περίεργα */
    .hero h1 {
        line-height: 1.1;
        margin-bottom: 10px;
    }

    /* Διόρθωση μεγέθους για τις εικόνες στην gallery για να φαίνονται καλύτερα */
    .gallery-item {
        flex: 0 0 85vw; /* Οι εικόνες πιάνουν το 85% του πλάτους της οθόνης */
        height: 300px;
    }
}

/* 6. ΕΦΕ ΕΣΤΙΑΣΗΣ ΣΤΗ ΦΟΡΜΑ (Για καλύτερο UX) */
input:focus, textarea:focus {
    border-color: var(--purple) !important;
    background: rgba(195, 0, 255, 0.05) !important;
    box-shadow: 0 0 15px rgba(195, 0, 255, 0.2);
    outline: none;
}

/* 7. ΔΙΟΡΘΩΣΗ ΓΙΑ ΤΟ LANDSCAPE MODE (Πλάγια οθόνη)
   Εξασφαλίζει ότι το περιεχόμενο δεν θα κρύβεται από το Notch (εγκοπή) των iPhone */
@media screen and (max-width: 900px) and (orientation: landscape) {
    section {
        padding-left: env(safe-area-inset-left) !important;
        padding-right: env(safe-area-inset-right) !important;
    }
    .hero { height: 100vh; }
}



/* MOBILE FIXES */
@media (max-width: 768px) {
    .menu-toggle { display: block; }
    .swipe-hint { display: block; }
    nav {
        position: fixed; top: 20px; right: -110%; width: 250px; height: auto;
        background: rgba(10, 10, 10, 0.98); backdrop-filter: blur(20px);
        flex-direction: column; padding: 60px 25px; border-radius: 25px;
        border: 1px solid rgba(195, 0, 255, 0.3); transition: 0.5s; z-index: 2001;
    }
    nav.active { right: 20px; }
    nav a { margin: 15px 0; font-size: 16px; width: 100%; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.05); padding-bottom: 10px; }
    .close-menu { display: block !important; position: absolute; top: 15px; right: 20px; font-size: 22px; color: var(--purple); cursor: pointer; }
    .contact-container { grid-template-columns: 1fr; }
    .nav-arrow { display: none; }
    section { padding: 80px 5%; scroll-margin-top: 80px; }
}

/* Lightbox */
.lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.95); display: none; justify-content: center; align-items: center; z-index: 3000; backdrop-filter: blur(10px); }
.lightbox img { max-width: 90%; max-height: 85%; border-radius: 10px; border: 1px solid var(--purple); }
.lightbox.active { display: flex; }






/* ============================================================
   CONTACT BUTTONS (COLLAB & PAYPAL) & DONATE MODAL
   ============================================================ */

/* Το κουτί που περιέχει τα κουμπιά */
.collab-btn-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;    /* Κεντράρισμα οριζόντια */
    justify-content: center !important;
    width: 100% !important;            /* Πιάνει όλο το πλάτος για σωστό κεντράρισμα */
    margin: 50px 0 !important;         /* Περιθώριο πάνω-κάτω από τα υπόλοιπα στοιχεία */
    gap: 20px !important;              /* Σταθερή απόσταση 20px μεταξύ των κουμπιών */
    padding: 0 !important;
}

/* Κοινό στυλ και για τα δύο κουμπιά (Collaboration & PayPal) */
.collab-btn-wrapper .hero-btn {
    width: 320px !important;           /* Σταθερό πλάτος παντού */
    height: 60px !important;           /* Σταθερό ύψος παντού */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;         /* Αναγκαστικό κεντράρισμα */
    padding: 0 !important;             /* Μηδενίζουμε τα παλιά padding που σπρώχνουν το κουμπί */
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    border-radius: 50px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    transition: all 0.4s ease !important;
}

/* --- PAYPAL BUTTON ΣΥΓΚΕΚΡΙΜΕΝΑ --- */
.paypal-style {
    border-color: #0070ba !important;  /* Μπλε περίγραμμα PayPal */
    background: transparent !important;
    color: #fff !important;
}

.paypal-style:hover {
    background: #0070ba !important;    /* Μπλε γέμισμα στο hover */
    box-shadow: 0 0 30px rgba(0, 112, 186, 0.6) !important; /* Μπλε λάμψη */
    transform: translateY(-3px) !important;
}

/* Εικονίδια μέσα στα κουμπιά */
.collab-btn-wrapper i {
    margin: 0 10px !important;
    font-size: 16px !important;
}

/* --- DONATE MODAL (Αναδυόμενο Παράθυρο) --- */


.donate-modal {
    display: none; 
    position: fixed; 
    z-index: 10000;
    left: 0; top: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.95); 
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    justify-content: center; 
    align-items: center;
}

.donate-modal.active { 
    display: flex; 
}

.modal-content {
    background: #0a0a0a; 
    padding: 40px; 
    border-radius: 25px;
    border: 1px solid var(--purple); 
    max-width: 450px; 
    width: 90%;
    position: relative;
    box-shadow: 0 0 40px rgba(195, 0, 255, 0.2);
    
    /* ΚΕΝΤΡΑΡΙΣΜΑ ΟΛΩΝ ΤΩΝ ΣΤΟΙΧΕΙΩΝ */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

.modal-confirm-btn {
    /* 1. ΑΠΟΛΥΤΟ ΚΕΝΤΡΑΡΙΣΜΑ ΚΕΙΜΕΝΟΥ */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    
    /* 2. ΜΗΔΕΝΙΣΜΟΣ PADDING (Αυτό διορθώνει τη στοίχιση αριστερά) */
    padding: 0 !important; 
    text-indent: 0 !important;
    
    /* 3. ΔΙΑΣΤΑΣΕΙΣ */
    width: 100% !important;
    max-width: 320px !important; 
    height: 60px !important;
    
    /* 4. ΚΕΝΤΡΑΡΙΣΜΑ ΚΟΥΜΠΙΟΥ ΜΕΣΑ ΣΤΟ MODAL */
    margin: 30px auto 0 auto !important;
    
    /* 5. ΕΜΦΑΝΙΣΗ */
    font-size: 14px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    border-radius: 50px !important;
    color: #fff !important;
    border: 2px solid var(--purple) !important;
    background: transparent;
    transition: 0.3s;
    cursor: pointer;
    text-decoration: none !important;
}

.modal-confirm-btn:hover {
    background: var(--purple) !important;
    box-shadow: 0 0 25px rgba(195, 0, 255, 0.5) !important;
}

.close-modal { 
    position: absolute; right: 20px; top: 15px; 
    font-size: 25px; cursor: pointer; color: #555; 
    transition: 0.3s;
}

.close-modal:hover { color: var(--purple); }

/* Διόρθωση για τη λίστα */
.modal-text-body ul {
    display: inline-block !important;
    text-align: left !important;
    margin: 20px auto !important;
    padding: 0 !important;
    list-style: none !important;
}