/* === 1. BASE & RESET === */
:root {
    --dionn-primary: #5D5CDE;
    --dionn-text: #222;
    --dionn-bg: #f8fafc;
    --dionn-white: #ffffff;
}

html, body { margin: 0; padding: 0; overflow-x: hidden; width: 100%; }
body { font-family: 'Inter', sans-serif; color: var(--dionn-text); background: var(--dionn-bg); line-height: 1.6; }
*, *::before, *::after { box-sizing: border-box; }

/* === 2. ELEMENTOR FIXES (GOLD STANDARD) === */
.elementor-section.elementor-section-stretched {
    width: 100vw !important; left: 50% !important; margin-left: -50vw !important;
}
img { max-width: 100%; height: auto; }

/* === 3. HEADER STYLES (DIONN STYLE) === */
.dionn-site-header {
    background: var(--dionn-white);
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    position: sticky; top: 0; z-index: 999;
}
.dionn-header-inner {
    max-width: 1200px; margin: 0 auto; padding: 0 20px; height: 70px;
    display: flex; align-items: center; justify-content: space-between;
}

/* Logo */
.dionn-logo { text-decoration: none; display: flex; align-items: center; gap: 10px; font-weight: 700; color: #222; font-size: 1.2rem; }
.dionn-logo span {
    width: 35px; height: 35px; background: var(--dionn-primary); color: #fff;
    border-radius: 8px; display: flex; align-items: center; justify-content: center;
}

/* Navigation */
.dionn-nav ul { display: flex; list-style: none; gap: 30px; margin: 0; padding: 0; }
.dionn-nav a { text-decoration: none; color: #222; font-weight: 500; transition: color 0.2s; }
.dionn-nav a:hover { color: var(--dionn-primary); }

/* CTA Button */
.dionn-btn {
    background: var(--dionn-primary); color: #fff !important; padding: 10px 25px;
    border-radius: 6px; font-weight: 600; text-decoration: none; transition: opacity 0.2s;
}
.dionn-btn:hover { opacity: 0.9; }

/* Mobile Toggle */
.dionn-mobile-toggle { display: none; background: none; border: none; cursor: pointer; padding: 5px; }
.dionn-mobile-menu {
    display: none; position: absolute; top: 100%; left: 0; right: 0;
    background: #fff; padding: 20px; box-shadow: 0 5px 10px rgba(0,0,0,0.1);
}
.dionn-mobile-menu.active { display: block; }
.dionn-mobile-menu ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 15px; }

@media (max-width: 768px) {
    .dionn-nav { display: none; }
    .dionn-mobile-toggle { display: block; }
}

/* === 4. FOOTER STYLES === */
.dionn-site-footer { background: #232323; color: #fff; padding: 40px 0; margin-top: auto; }
.dionn-footer-inner {
    max-width: 1200px; margin: 0 auto; padding: 0 20px;
    display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px;
}
.dionn-footer-links ul { display: flex; gap: 20px; list-style: none; margin: 0; padding: 0; }
.dionn-footer-links a { color: #ccc; text-decoration: none; transition: 0.2s; }
.dionn-footer-links a:hover { color: #fff; }

@media (max-width: 600px) {
    .dionn-footer-inner { flex-direction: column; text-align: center; }
}

/* === 5. 404 ERROR PAGE STYLES === */
.dionn-error-page {
    min-height: 70vh; display: flex; align-items: center; justify-content: center;
    padding: 40px 20px; text-align: center; background: #fff;
}
.dionn-error-content { max-width: 500px; margin: 0 auto; }
.dionn-error-icon { width: 80px; height: 80px; color: #ffbb33; margin-bottom: 20px; }
.dionn-error-code { font-size: 6rem; font-weight: 900; line-height: 1; margin: 0; color: #e0e0e0; }
.dionn-error-title { font-size: 2rem; font-weight: 700; margin: 10px 0 15px 0; color: #222; }
.dionn-error-text { font-size: 1.1rem; color: #666; margin-bottom: 30px; } 

/* === 6. PAGE LAYOUTS (E RE - PER FUNKSIONIMIN E PAGE.PHP) === */

/* Nëse është faqe Elementor, lejoje të jetë 100% e gjerësisë */
.wsa-elementor-wrapper {
    width: 100%;
    max-width: 100%;
}

/* Nëse është faqe normale (Standard WordPress), mbaje të mbledhur në qendër */
.wsa-page-wrapper {
    max-width: 1200px; 
    margin: 40px auto; 
    padding: 0 20px;
}

/* === THE FINAL FIX (Zero Padding) === */
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding: 0 !important;
}

.elementor-section .elementor-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Fix për Admin Bar që të mos ta bëjë Headerin "Box" */
body.admin-bar .elementor-section-stretched {
    left: 0 !important;
    width: 100% !important; 
    margin-left: 0 !important; 
}