:root {
            --brand-primary: #ba85a6;
            --brand-primary-light: rgba(186, 133, 166, 0.8);
            --background-color: #000000;
            --panel-background: rgba(10, 10, 10, 0.85);
            --text-color: #e5e5e5;
            --text-muted: #a0a0a0;
            --font-display: 'Unbounded', sans-serif;
            --font-accent: 'Fahkwang', sans-serif;
            --font-body: 'Montserrat', sans-serif;
        }
        /* --- MAIN STYLE --- */
        body { margin: 0; overflow: hidden; background-color: var(--background-color); color: var(--text-color); font-family: var(--font-body); cursor: none; }
        #scene-container { 
            position: fixed; 
            top: 0; 
            left: 0; 
            width: 100%; 
            height: 100%; 
            z-index: 1; 
            transition: opacity 0.5s ease;
            -webkit-user-select: none; /* Safari */
            -ms-user-select: none; /* IE 10+ */    
            user-select: none; 
        }

        /* --- LOADER SCREEN --- */
        .loader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 100; transition: opacity 1.5s ease-in-out; font-family: var(--font-display); text-align: center; }
        .loader-logo { width: clamp(100px, 20vw, 150px); margin-bottom: 0px; opacity: 0; }
        .loader-text-sequence {font-size: clamp(1.5rem, 4vw, 2.5rem);color: var(--brand-primary);min-height: 100px;display: flex;justify-content: center;align-items: center;flex-direction: column;margin-top: 20px;}
        .loader-subtext { display: block; font-size: 14px; margin-top: 20px; color: rgba(255,255,255,0.5); opacity: 0; transition: opacity 1s; }

        /* --- UI --- */
        .ui-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(20px, 5vw, 40px); box-sizing: border-box; z-index: 10; transition: opacity 1s ease-in-out; }
        .header { width: 100%; display: flex; justify-content: center; align-items: center; position: relative; opacity: 0; }
        .header h1 { font-family: var(--font-display); font-size: clamp(16px, 2.5vw, 22px); font-weight: 500; margin: 0; letter-spacing: 1px; color: var(--brand-primary); text-shadow: 0 0 10px var(--brand-primary-light); }
        .footer { width: 100%; display: flex; justify-content: space-between; align-items: center; opacity: 0; font-size: clamp(12px, 2vw, 14px); color: rgba(255, 255, 255, 0.5); }
        .footer-left, .footer-center, .footer-right { flex-basis: 33.33%; }
        .footer-left { text-align: left; }
        .footer-center { text-align: center; }
        .footer-right { text-align: right; display: flex; justify-content: flex-end; align-items: center; gap: 15px; }
        #location-info { font-weight: bold; }
        .footer-info { font-family: var(--font-body); }
        .footer-button { pointer-events: all; cursor: none; background: none; border: 1px solid rgba(255,255,255,0.3); color: rgba(255,255,255,0.7); padding: 8px 15px; border-radius: 20px; font-family: var(--font-body); transition: all 0.3s; text-decoration: none; }
        .footer-button:hover { background: rgba(255,255,255,0.1); border-color: white; color: white; }

        /* --- LANG SELECTOR STYLES --- */
        .language-selector { position: relative; pointer-events: all; }
        .language-button { display: flex; align-items: center; gap: 8px; }
        .language-button svg { width: 16px; height: 16px; }
        .language-dropdown {
            position: absolute;
            bottom: 120%; 
            right: 0;
            background-color: var(--panel-background);
            border: 1px solid rgba(186, 133, 166, 0.2);
            border-radius: 12px;
            padding: 8px;
            z-index: 100;
            opacity: 0;
            visibility: hidden;
            transform: translateY(10px);
            transition: opacity 0.3s, transform 0.3s, visibility 0.3s;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            max-height: 150px;
            overflow-y: auto;
        }
        
        @media (min-width: 768px) {
            .language-dropdown {
                max-height: 500px; 
            }
        }

        .language-dropdown::-webkit-scrollbar {
            width: 8px; 
        }

        .language-dropdown::-webkit-scrollbar-track {
            background: transparent; 
        }

        .language-dropdown::-webkit-scrollbar-thumb {
            background-color: rgba(186, 133, 166, 0.5); 
            border-radius: 10px;
            border: 2px solid var(--panel-background);
        }

        .language-dropdown::-webkit-scrollbar-thumb:hover {
            background-color: var(--brand-primary); 
        }

        .language-dropdown.active { opacity: 1; visibility: visible; transform: translateY(0); }
        .language-dropdown a {
            display: flex;
            align-items: center;
            padding: 10px 15px;
            color: var(--text-muted);
            text-decoration: none;
            border-radius: 8px;
            font-size: 14px;
            white-space: nowrap;
            transition: background-color 0.2s, color 0.2s;
        }
        .language-dropdown a:hover { background-color: rgba(255,255,255,0.1); color: var(--text-color); }
        .language-dropdown a.selected { color: var(--brand-primary); font-weight: 500; }
        .language-dropdown a .radio-circle {
            width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid var(--text-muted);
            margin-right: 12px; display: flex; justify-content: center; align-items: center;
        }
        .language-dropdown a.selected .radio-circle { border-color: var(--brand-primary); }
        .language-dropdown a.selected .radio-circle::after {
            content: ''; width: 8px; height: 8px; background-color: var(--brand-primary);
            border-radius: 50%;
        }

        /* --- NODE LABELS --- */
        .node-label { 
            position: absolute; 
            top: 0; 
            left: 0; 
            color: white; 
            background: rgba(0, 0, 0, 0.5); 
            padding: 5px 10px; 
            border-radius: 5px; 
            font-size: 14px; 
            font-family: var(--font-display); 
            pointer-events: none; 
            opacity: 0; 
            will-change: transform, opacity; 
            z-index: 11; 
            white-space: nowrap; 
            text-shadow: 0 0 5px white; 
            visibility: hidden; 
            transform: translate(-9999px, -9999px);
        }
        .node-label.visible { visibility: visible; }
        .node-label.pulsing { animation: pulse 4s infinite ease-in-out; }
        @keyframes pulse { 0%, 100% { opacity: 0.4; } 50% { opacity: 0.8; } }

        /* --- CUSTOM CURSOR --- */
        .cursor { position: fixed; pointer-events: none; z-index: 9999; display: none; top: -20px; left: -20px; width: 40px; height: 40px; }
        @media (hover: hover) and (pointer: fine) { .cursor { display: block; } }
        .cursor-dot, .cursor-outline { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 50%; transition: transform 0.2s ease-out, border-color 0.3s ease-out; }
        .cursor-dot { width: 8px; height: 8px; background-color: var(--brand-primary); }
        .cursor-outline { width: 40px; height: 40px; border: 2px solid var(--brand-primary-light); }
        .cursor-dot.hovered { transform: translate(-50%,-50%) scale(1.5); }
        .cursor-outline.hovered { transform: translate(-50%,-50%) scale(1.3); border-color: #fff; }


        /* --- CONTENT PANELS --- */
        .content-panel { 
            position: fixed; 
            top: 50%; 
            left: 50%; 
            transform: translate(-50%, -50%) scale(0.95); 
            width: 99%; 
            max-width: 1200px; 
            height: auto; 
            max-height: 99%; 
            overflow: hidden; 
            background-color: var(--panel-background); 
            backdrop-filter: blur(15px); 
            -webkit-backdrop-filter: blur(15px); 
            border: 1px solid rgba(186, 133, 166, 0.2); 
            border-radius: 20px; 
            z-index: 20; 
            opacity: 0; 
            visibility: hidden; 
            display: flex; 
            flex-direction: column; 
            box-shadow: 0 0 80px rgba(0,0,0,0.7); 
        }
        .panel-header { 
            position: sticky;
            top: 0;
            z-index: 1;
            background-color: var(--panel-background);
            padding: 25px 80px 25px 40px;
            border-bottom: 1px solid rgba(186, 133, 166, 0.2); 
            display: flex; 
            align-items: center; 
            flex-shrink: 0; 
            gap: 20px; 
        }
        .panel-logo { height: 35px; flex-shrink: 0; }
        .panel-header h2 { margin: 0; font-family: var(--font-display); font-size: 2rem; color: var(--brand-primary); flex-grow: 1; }
        .close-button { 
            position: absolute;
            top: 50%;
            right: 40px;
            transform: translateY(-50%);
            font-size: 2.5rem; 
            font-weight: 300; 
            color: var(--text-muted); 
            cursor: none; 
            pointer-events: all; 
            background: none; 
            border: none; 
            padding: 0; 
            line-height: 1; 
            transition: color 0.3s, transform 0.3s; 
        }
        .close-button:hover { color: var(--text-color); transform: translateY(-50%) rotate(90deg); }
        .panel-content { padding: 30px 40px; overflow-y: auto; flex-grow: 1; position: relative; } 
        .panel-content::-webkit-scrollbar { width: 8px; }
        .panel-content::-webkit-scrollbar-track { background: transparent; }
        .panel-content::-webkit-scrollbar-thumb { background-color: var(--brand-primary); border-radius: 10px; border: 2px solid var(--panel-background); }
        .panel-content > * { opacity: 0; transform: translateY(20px); }
        .panel-content h3 { font-family: var(--font-accent); font-size: 1.8rem; margin-top: 0; margin-bottom: 20px; color: var(--brand-primary-light); }
        .panel-content h4 { font-family: var(--font-accent); font-size: 1.5rem; margin-top: 40px; margin-bottom: 20px; color: var(--brand-primary-light); }
        .panel-content p, .panel-content li { font-size: 1rem; line-height: 1.7; max-width: 80ch; color: var(--text-muted); margin-bottom: 20px; }
        .panel-content strong { color: var(--text-color); font-weight: 500; }
        .panel-content ul { list-style: none; padding-left: 0; }
        .panel-content li { display: flex; align-items: flex-start; padding-left: 0; text-indent: 0; }
        .panel-content li svg { flex-shrink: 0; width: 24px; height: 24px; margin-right: 15px; margin-top: 3px; color: var(--brand-primary); }
        .cta-button { display: inline-block; margin-top: 20px; padding: 15px 30px; font-family: var(--font-display); background-color: var(--brand-primary); color: black; text-decoration: none; border-radius: 50px; transition: all 0.3s ease; pointer-events: all; }
        .cta-button:hover { transform: scale(1.05); box-shadow: 0 0 25px var(--brand-primary-light); }

        /* --- SOLUTIONS TABLE --- */
        .solutions-table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
            font-size: 0.95rem;
        }
        .solutions-table th, .solutions-table td {
            padding: 20px 15px;
            text-align: left;
            border-bottom: 1px solid rgba(186, 133, 166, 0.2);
        }
        .solutions-table th {
            font-family: var(--font-accent);
            color: var(--brand-primary);
            font-weight: 600;
            text-transform: uppercase;
            font-size: 1rem;
            letter-spacing: 1px;
            white-space: nowrap;
        }
        .solutions-table td {
            color: var(--text-color);
            vertical-align: middle;
            font-weight: 500;
            font-size: 1rem;
        }
        .solutions-table tbody tr {
            transition: background-color 0.3s ease;
        }
        .solutions-table tbody tr:hover {
            background-color: rgba(255, 255, 255, 0.04);
        }
        .solutions-table td:nth-child(1) {
             width: 35%;
        }
        .solutions-table td:nth-child(2) {
            font-family: var(--font-display);
            color: var(--text-color);
            font-weight: 500;
            font-size: 1.1rem;
            width: 20%;
        }
        .solutions-table td:nth-child(3) {
            color: var(--text-muted);
            font-size: 0.9rem;
            line-height: 1.6;
            width: 45%;
        }
        .solutions-table tr:last-child td {
            border-bottom: none;
        }
        .solutions-table small {
            display: block;
            margin-top: 5px;
            color: var(--text-muted);
            font-size: 0.85em;
            font-weight: 300;
        }

        /* --- ACADEMY PANEL --- */
        .academy-grid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 50px; }
        .masterclass-list { max-height: 350px; overflow-y: auto; padding-right: 15px; }
        .masterclass-list::-webkit-scrollbar { width: 6px; }
        .masterclass-list::-webkit-scrollbar-track { background: rgba(255,255,255,0.05); border-radius: 3px; }
        .masterclass-list::-webkit-scrollbar-thumb { background-color: var(--brand-primary); border-radius: 3px; }
        .masterclass-item-detailed { font-size: 0.95rem; color: var(--text-muted); padding: 15px; margin-bottom: 5px; border-left: 3px solid transparent; transition: background-color 0.3s, border-left-color 0.3s; }
        .masterclass-item-detailed:hover { background-color: rgba(255,255,255,0.05); border-left-color: var(--brand-primary); color: var(--text-color); }
        
        /* --- ABOUT US & WHY US PANEL --- */
        .about-section { margin-bottom: 60px; border-bottom: 1px solid rgba(186, 133, 166, 0.1); padding-bottom: 50px; }
        .about-section:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
        .about-section h3 { text-align: center; margin-bottom: 40px; font-size: 1.8rem; }
        .about-intro { text-align: center; max-width: 900px; margin: 0 auto 50px auto; }
        .about-intro h3 { font-size: clamp(1.5rem, 4vw, 2.2rem); line-height: 1.4; color: var(--text-color); }
        .about-intro p { font-size: 1.1rem; color: var(--text-muted); }
        .why-us-subtitle { font-family: var(--font-accent); font-weight: 700; color: var(--text-color); }
        .about-text-block { max-width: 800px; margin: 0 auto; }
        .stats-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 30px; margin-bottom: 20px; max-width: 1000px; margin-left: auto; margin-right: auto; }
        .stat-item { text-align: center; }
        .stat-item .number { font-family: var(--font-display); font-size: clamp(2rem, 6vw, 3rem); color: var(--brand-primary); line-height: 1.1; display: block; font-weight: 700; }
        .stat-item .label { font-size: 0.9rem; color: var(--text-muted); margin-top: 5px; }
        .process-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; }
        .process-card { background: rgba(255,255,255,0.03); padding: 25px; border-radius: 12px; border: 1px solid rgba(186, 133, 166, 0.1); transition: all 0.3s ease; }
        .process-card:hover { transform: translateY(-5px); border-color: var(--brand-primary-light); }
        .process-card .step { font-family: var(--font-display); color: var(--brand-primary); margin-bottom: 15px; display: block; }
        .process-card h5 { margin: 0 0 10px 0; color: var(--text-color); }
        .process-card p { font-size: 0.9rem; line-height: 1.6; margin-bottom: 0; }
        .why-utopia-grid { display: grid; grid-template-columns: 1fr; gap: 30px; }
        @media (min-width: 992px) { .why-utopia-grid { grid-template-columns: 1fr 1fr; } }
        .why-utopia-item { display: flex; align-items: flex-start; gap: 15px; }
        .why-utopia-item svg { flex-shrink: 0; color: var(--brand-primary); width: 32px; height: 32px; margin-top: 3px; }
        .why-utopia-item h5 { margin: 0 0 5px 0; font-family: var(--font-accent); color: var(--text-color); }
        .why-utopia-item p { font-size: 0.9rem; line-height: 1.6; margin: 0; }
        .about-text-block ul li div { flex: 1; }

        /* --- Accordion STYLES --- */
        .accordion-section .accordion-item {
            border-bottom: 1px solid rgba(186, 133, 166, 0.2);
        }
        .accordion-section .accordion-header {
            padding: 25px 5px;
            cursor: none; 
            pointer-events: all;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .accordion-section .accordion-header h4 {
            margin: 0;
            font-family: var(--font-display);
            font-size: 1.6rem;
            color: var(--text-color);
            transition: color 0.3s;
            display: flex;
            align-items: center;
        }
        .accordion-section .accordion-header h4 svg {
            width: 28px;
            height: 28px;
            margin-right: 15px;
            color: var(--brand-primary);
            transition: color 0.3s;
        }
        .accordion-section .accordion-header:hover h4 {
            color: var(--brand-primary);
        }
        .accordion-section .accordion-icon {
            font-size: 2rem;
            transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            color: var(--brand-primary);
            font-weight: 300;
        }
        
        /* === DÜZENLEME BAŞLANGICI: Akordiyon Kesilme Sorunu Çözümü === */
        .accordion-section .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            padding: 0 5px; /* padding-transition kaldırıldı, yan boşluklar buraya taşındı */
        }
        .accordion-section .accordion-content-inner {
            padding: 0; /* İç padding sıfırlandı */
        }
        .accordion-section .accordion-item.active .accordion-content {
            padding: 0 5px 30px 5px; /* Aktif durumdaki padding artık bu elemente veriliyor */
        }
        .accordion-section .accordion-item.active .accordion-icon {
            transform: rotate(45deg);
        }
        /* === DÜZENLEME SONU === */
        
        .service-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 25px;
            margin-top: 20px;
        }
        .service-card {
            background-color: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(186, 133, 166, 0.15);
            border-radius: 12px;
            padding: 25px;
            transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
            cursor: default;
            display: flex;
            flex-direction: column;
        }
        .service-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
            border-color: rgba(186, 133, 166, 0.4);
        }
        .service-card-content {
            flex-grow: 1;
        }
        .service-card .tag { font-size: 0.8rem; color: var(--brand-primary); margin-bottom: 15px; display: block; font-family: var(--font-display); }
        .service-card h5 { font-family: var(--font-accent); font-size: 1.3rem; color: var(--text-color); margin-top: 0; margin-bottom: 10px; }
        .service-card .subtitle { font-size: 0.9rem; color: var(--text-muted); margin-bottom: 20px; min-height: 40px; }
        .service-card .details { font-size: 0.85rem; color: var(--text-muted); margin-bottom: 15px; }
        .service-card .details strong { color: var(--text-color); display: block; margin-bottom: 5px; }
        .service-card .price { font-family: var(--font-display); font-size: 1.1rem; color: var(--brand-primary); margin-top: auto; border-top: 1px solid rgba(186, 133, 166, 0.1); padding-top: 15px; }
        .service-card ul { padding-left: 0; list-style: none; margin-top: 10px; }
        .service-card ul li { font-size: 0.85rem; margin-bottom: 8px; align-items: center; }
        .service-card ul li svg { width: 16px; height: 16px; margin-right: 10px; margin-top: 0; }
        .why-it-matters {
            font-size: 0.9rem;
            font-style: italic;
            color: var(--text-muted);
            margin-top: 15px;
            padding-top: 15px;
            border-top: 1px dashed rgba(186, 133, 166, 0.2);
        }
        .why-it-matters strong {
            color: var(--brand-primary-light);
        }

        /* --- TRANSITION ANIMATION --- */
        .transition-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 15; background-color: #000; display: flex; justify-content: center; align-items: center; pointer-events: none; opacity: 0; }
        .transition-text { font-family: var(--font-display); font-size: clamp(2rem, 6vw, 4rem); color: white; text-shadow: 0 0 20px white; transform: scale(1.2); }

        /* --- CONTACT FORM & POPUP --- */
        .contact-grid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 40px; }
        .contact-info, .contact-form-wrapper { display: flex; flex-direction: column; }
        .contact-info ul { margin-top: 30px; padding-left: 0; list-style: none; }
        .contact-info li { margin-bottom: 25px; align-items: center;}
        .contact-info li div { line-height: 1.4; }
        .contact-info li span { font-size: 0.8rem; color: var(--brand-primary); }
        .contact-info li a { color: var(--text-muted); text-decoration: none; transition: color 0.3s; }
        .contact-info li a:hover { color: var(--text-color); }
        .social-links { margin-top: 40px; }
        .social-links h4 { font-family: var(--font-accent); font-size: 1.2rem; color: var(--text-muted); margin-bottom: 15px; }
        .social-icons { display: flex; gap: 20px; align-items: center; }
        .social-icons a { color: var(--text-muted); text-decoration: none; transition: all 0.3s ease; display: inline-block; pointer-events: all; }
        .social-icons a:hover { color: var(--brand-primary); transform: translateY(-3px); }
        .social-icons svg { width: 28px; height: 28px; }

        .form-group { margin-bottom: 20px; }
        .form-group label { display: block; margin-bottom: 8px; font-size: 0.9rem; color: var(--text-muted); }
        .form-group label span { font-size: 0.8rem; opacity: 0.8; }
        .form-input, .form-textarea { width: 100%; background-color: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 12px 16px; color: var(--text-color); font-family: var(--font-body); transition: border-color 0.3s, box-shadow 0.3s; box-sizing: border-box; }
        .form-input:focus, .form-textarea:focus { outline: none; border-color: var(--brand-primary); box-shadow: 0 0 10px rgba(186, 133, 166, 0.3); }
        .form-textarea { resize: vertical; min-height: 120px; }
        .submit-button { width: 100%; padding: 15px; font-family: var(--font-display); background-color: var(--brand-primary); color: black; text-decoration: none; border: none; cursor: none; pointer-events: all; }
        .submit-button:hover { transform: scale(1.02); box-shadow: 0 0 25px var(--brand-primary-light); }
        .form-check-group { display: flex; align-items: center; gap: 10px; margin-bottom: 5px; cursor: none; pointer-events: all; }
        .form-check-group input { width: auto; cursor: none; }
        .form-check-group label { margin-bottom: 0; cursor: none; }
        .form-subtext { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 20px; }
        .form-popup { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.9); background: #1a1a1a; color: white; padding: 30px 40px; border-radius: 15px; box-shadow: 0 10px 40px rgba(0,0,0,0.5); z-index: 101; text-align: center; border: 1px solid var(--brand-primary); opacity: 0; visibility: hidden; transition: all 0.3s ease-in-out; }
        .form-popup.visible { transform: translate(-50%, -50%) scale(1); opacity: 1; visibility: visible; }

        /* --- SOUVENIR & SIMPLE MODE STYLES --- */
        .souvenir-popup {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.7);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            z-index: 100;
            display: flex;
            justify-content: center;
            align-items: center;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.3s, visibility 0.3s;
        }
        .souvenir-popup.visible {
            opacity: 1;
            visibility: visible;
        }
        .souvenir-popup-content {
            background: var(--panel-background);
            padding: 30px 40px;
            border-radius: 15px;
            border: 1px solid rgba(186, 133, 166, 0.2);
            width: 90%;
            max-width: 450px;
            text-align: center;
            transform: scale(0.95);
            transition: transform 0.3s ease-out;
        }
        .souvenir-popup.visible .souvenir-popup-content {
            transform: scale(1);
        }
        .souvenir-popup h3 {
            font-family: var(--font-display);
            color: var(--brand-primary);
            margin-top: 0;
        }
        .souvenir-popup p {
            color: var(--text-muted);
            font-size: 0.9rem;
        }
        .souvenir-popup .form-input {
            margin: 20px 0;
            text-align: center;
        }
        .souvenir-popup-buttons {
            display: flex;
            gap: 15px;
            justify-content: center;
        }
        .souvenir-popup-buttons button {
            pointer-events: all;
            cursor: none;
            flex: 1;
            padding: 12px 20px;
            font-size: 0.9rem;
        }
        .souvenir-popup-buttons .cta-button {
            margin-top: 0;
        }
        #simple-mode-container { 
            position: fixed; 
            top: 0; 
            left: 0; 
            width: 100%; 
            height: 100%; 
            background: #050505; 
            z-index: 50; 
            display: none; 
            flex-direction: column; 
            justify-content: center; 
            align-items: center; 
            padding: 20px; 
            box-sizing: border-box; 
            opacity: 0; 
            transition: opacity 0.5s ease; 
            pointer-events: none; 
        }
        #simple-mode-container.active { display: flex; opacity: 1; pointer-events: all; }
        .simple-menu { list-style: none; padding: 0; margin: 0; text-align: center; }
        .simple-menu li { margin: 20px 0; }
        .simple-menu a { font-family: var(--font-display); color: var(--text-muted); font-size: clamp(1.5rem, 5vw, 2.5rem); text-decoration: none; transition: color 0.3s, text-shadow 0.3s; }
        .simple-menu a:hover, .simple-menu a:focus { color: var(--brand-primary); text-shadow: 0 0 15px var(--brand-primary-light); }
        .simple-mode-toggle-close { position: absolute; top: clamp(20px, 5vw, 40px); right: clamp(20px, 5vw, 40px); }

        /* --- RESPONSIVE DESIGN --- */
        @media (max-width: 992px) { 
            .contact-grid, .academy-grid { grid-template-columns: 1fr; } 
            .contact-form-wrapper { margin-top: 40px; } 
            .site-logo-link { display: none; }
            .header h1 { text-align: center; width: 100%; }
        }
        @media (max-width: 768px) {
            .panel-header { 
                padding: 20px 60px 20px 20px;
                flex-wrap: nowrap;
            }
            .panel-header h2 { font-size: 1.5rem; text-align: left; }
            .close-button { 
                font-size: 2rem;
                right: 20px;
            }
            .panel-content { padding: 20px; }
            .service-grid { grid-template-columns: 1fr; }
            .accordion-section .accordion-header h4 { font-size: 1.2rem; }
            .footer { flex-direction: column; gap: 15px; }
            .footer-left, .footer-center, .footer-right { flex-basis: auto; text-align: center; }
            .footer-right { justify-content: center; }
            .footer-center {
                order: 1; 
            }
            .footer-left {
                order: 2; 
            }
            .footer-right {
                order: 3; 
                justify-content: center;
            }
            .node-label {
                max-width: 150px;
                white-space: normal;
                text-align: center;
                padding: 8px 10px;
                line-height: 1.3;
            }
            .solutions-table {
                display: block;
            }
            .solutions-table thead {
                display: none;
            }
            .solutions-table tbody, .solutions-table tr, .solutions-table td {
                display: block;
                width: 100%;
                box-sizing: border-box;
            }
            .solutions-table tr {
                margin-bottom: 25px;
                padding-bottom: 25px;
                border-bottom: 1px solid rgba(186, 133, 166, 0.2);
            }
            .solutions-table tr:last-child {
                margin-bottom: 0;
                padding-bottom: 0;
                border-bottom: none;
            }
            .solutions-table td {
                padding: 8px 0;
                border-bottom: none;
                text-align: left !important;
                width: 100% !important;
                display: flex;
                flex-direction: column;
            }
             .solutions-table td small {
                margin-bottom: 10px;
             }
            .solutions-table td:before {
                content: attr(data-label);
                font-weight: bold;
                text-transform: uppercase;
                font-family: var(--font-accent);
                color: var(--text-muted);
                font-size: 0.8rem;
                margin-bottom: 8px;
            }
            .solutions-table td[data-label="SOLUTION"] {
               font-size: 1.2rem;
               font-weight: 500;
               order: -1; /* Make it appear first */
            }
            .solutions-table td[data-label="SOLUTION"]::before {
                display: none;
            }
        }

        /* --- INTERACTION BLOCKER --- */
        #interaction-blocker {
          position: fixed;
          inset: 0;
          z-index: 9995;
          pointer-events: none;
          background: rgba(0,0,0,0);
          transition: background 0.25s;
        }
        #interaction-blocker.active {
          pointer-events: all;
        }
        /* --- Scrollbar (Kaydırma Çubuğu) Stilleri --- */

        /* Bütün sayfa için kaydırma çubuğu (Chrome, Safari, Edge) */
        body::-webkit-scrollbar {
            width: 8px; /* Kaydırma çubuğu genişliği */
        }

        /* Kaydırma çubuğunun arka planı (yolu) */
        body::-webkit-scrollbar-track {
            background: #050505; /* Sitenizin ana arka plan rengi */
        }

        /* Kaydırma çubuğunun kendisi (sürüklenen kısım) */
        body::-webkit-scrollbar-thumb {
            background-color: rgba(186, 133, 166, 0.5); /* Marka renginin yarı saydam hali */
            border-radius: 10px; /* Yuvarlak kenarlar */
            border: 2px solid #050505; /* Kenar boşluğu ve rengi */
        }

        /* Kaydırma çubuğunun üzerine gelindiğindeki rengi */
        body::-webkit-scrollbar-thumb:hover {
            background-color: #ba85a6; /* Marka renginin tam hali */
        }