/* WCAG 2.1 Focus Indicators */
*:focus {
    outline: 3px solid #3498db !important;
    outline-offset: 2px !important;
}

.skip-link:focus {
    left: 10px !important;
    top: 10px !important;
}

button:focus, input:focus, select:focus, a:focus, textarea:focus {
    outline: 3px solid #3498db !important;
    outline-offset: 2px !important;
}
            .contact-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 8px 25px rgba(0,0,0,0.15);
            }

            @media (max-width: 768px) {
                .contact-intro h1 {
                    font-size: 1.8em !important;
                }
                .contact-intro p {
                    font-size: 1em !important;
                }
            }

/* Utility classes pentru eliminare inline styles */
.flag-small { width: 26px; height: 19px; border-radius: 2px; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }
.flag-medium { width: 28px; height: 21px; border-radius: 2px; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }
.flag-large { margin: 3px; width: 32px; height: 24px; }
.payment-button { padding: 15px; background: #f5f5f5; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer; transition: 0.3s; }
.mb-50 { margin-bottom: 50px; }
.card-white { background: white; padding: 25px; border-radius: 10px; text-align: center; box-shadow: 0 3px 10px rgba(0,0,0,0.08); }
.card-white-30 { background: white; padding: 30px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
.icon-lg { font-size: 3em; margin-bottom: 10px; }
.icon-xl { font-size: 3em; margin-bottom: 15px; }
.text-lg { font-size: 2.5em; margin-bottom: 10px; }
.text-gray-small { font-size: 12px; color: #999; }
.text-gray { color: #666; }
.text-gray-block { color: #666; display: block; margin-top: 8px; }
.text-gray-lh { color: #666; line-height: 1.6; }
.text-muted { color: #999; font-size: 0.9em; }
.text-success { color: #27ae60; }
.section-header { text-align: center; color: #2c3e50; margin-bottom: 40px; }
.section-header-lg { text-align: center; color: #2c3e50; font-size: 2em; margin-bottom: 40px; }
.section-header-xl { text-align: center; color: #2c3e50; font-size: 2em; margin-bottom: 30px; }
.pos-rel { position: relative; }
.text-gray-small-2 { font-size: 12px; color: #999; }
.text-muted-em { color: #999; font-size: 0.9em; }
.text-gray-lh-2 { color: #666; line-height: 1.6; }
.text-gray-mt { color: #666; display: block; margin-top: 8px; }
.section-title { text-align: center; color: #2c3e50; margin-bottom: 40px; }
.section-title-lg { text-align: center; color: #2c3e50; font-size: 2em; margin-bottom: 40px; }
.section-title-xl { text-align: center; color: #2c3e50; font-size: 2em; margin-bottom: 30px; }
.mb-40 { margin-bottom: 40px; }
.mb-30 { margin-bottom: 30px; }
.mb-20 { margin-bottom: 20px; }
.mb-15 { margin-bottom: 15px; }
.opacity-95 { opacity: 0.95; }
.opacity-95-lh { opacity: 0.95; line-height: 1.6; }
.opacity-90-lh { opacity: 0.9; line-height: 1.6; }
.text-lg-mb-15 { font-size: 1.8em; margin-bottom: 15px; }
.icon-xxl { font-size: 4em; margin-bottom: 15px; }
.flex-col-gap { display: flex; flex-direction: column; gap: 6px; }
.block-lg-text { display: block; margin-bottom: 10px; font-size: 1.2em; }
.card-glass { background: rgba(255,255,255,0.2); padding: 20px; border-radius: 10px; backdrop-filter: blur(10px); }
.skip-link { position: absolute; left: -9999px !important; z-index: 999999; padding: 10px 20px; background: #000; color: #fff; text-decoration: none; font-weight: bold; }
.hero-success { text-align: center; padding: 60px 20px; background: linear-gradient(135deg, #27ae60 0%, #229954 100%); color: white; border-radius: 12px; margin-bottom: 40px; box-shadow: 0 10px 40px rgba(39, 174, 96, 0.3); }
.text-center-mb-30 { text-align: center; margin-bottom: 30px; }
.text-center-mb-20 { text-align: center; margin-bottom: 20px; }

/* Auto-generated utility classes */
.sp-s1 { max-width: 900px; margin: 30px auto 0; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 25px; border-radius: 10px; color: white; text-align: center; }
.sp-s2 { color: white; margin: 0; text-align: center; font-size: 24px; font-weight: 700; }
.sp-s3 { background: rgba(255,255,255,0.2); color: white; padding: 18px 40px; border: 2px solid white; border-radius: 50px; font-size: 1.2em; font-weight: 700; }
.sp-s4 { margin-bottom: 20px; font-size: 1.8em; }
.sp-s5 { margin-bottom: 10px; font-size: 1.3em; }
.sp-s6 { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; max-width: 1200px; margin: 0 auto; }
.sp-s7 { background: white; color: #3498db; padding: 15px 30px; border: none; border-radius: 50px; font-weight: 700; cursor: pointer; }
.sp-s8 { background: white; padding: 15px; border-radius: 10px; display: inline-block; margin-bottom: 15px; }
.sp-s9 { color: rgba(255,255,255,0.9); margin: 10px 0 0 0; font-size: 13px; }
.sp-s10 { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 25px; }
.sp-s11 { color: #27ae60; margin-bottom: 5px; }
.sp-s12 { opacity: 0.95; margin-bottom: 5px; font-size: 1.2em; font-weight: bold; text-align: center; }
.sp-s13 { opacity: 0.85; display: block; text-align: center; }
.sp-s14 { background: linear-gradient(135deg, #27ae60 0%, #229954 100%); padding: 30px; border-radius: 12px; color: white; text-align: center; }
.sp-s15 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 15px; }
.sp-s16 { background: white; padding: 25px; border-radius: 10px; border-left: 4px solid #3498db; }
.sp-s17 { 
        background: linear-gradient(135deg, #e91e63 0%, #ff6090 100%);
        color: white;
        border: none;
        border-radius: 50%;
        width: 70px;
        height: 70px;
        font-size: 32px;
        cursor: pointer;
        box-shadow: 0 6px 20px rgba(233, 30, 99, 0.4);
        transition: all 0.3s;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative; }
.sp-s18 { margin: 0 0 8px 0; font-size: 13px; color: #2c3e50; font-weight: 600; }
.sp-s19 { color: #666; margin: 0; font-size: 14px; }
.sp-s20 { margin: 0; padding-left: 20px; color: #666; line-height: 1.6; }
.sp-s21 { opacity: 0.95; margin-bottom: 15px; }
.sp-s22 { font-size: 1.3em; max-width: 1000px; margin: 0 auto 30px; line-height: 1.7; }
.sp-s23 { background: #e8f5e9; padding: 15px; border-radius: 8px; border-left: 4px solid #27ae60; margin-top: 15px; }
.sp-s24 { color: #e74c3c; margin-bottom: 10px; }
.sp-s25 { padding: 15px; margin-bottom: 12px; background: #fff3e0; border-left: 4px solid #ff9800; border-radius: 6px; }
.sp-s26 { opacity: 0.85; display: block; }
.sp-s27 { color: #9b59b6; margin-bottom: 5px; }
.sp-s28 { margin: 0; color: #666; line-height: 1.6; font-size: 0.95em; }
.sp-s29 { padding: 15px; margin-bottom: 12px; background: #ffebee; border-left: 4px solid #f44336; border-radius: 6px; }
.sp-s30 { color: #3498db; margin-bottom: 15px; }
.sp-s31 { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; max-width: 1000px; margin: 0 auto; }
.sp-s32 { margin-bottom: 15px; font-size: 1.3em; }
.sp-s33 { font-family: monospace; font-size: 0.85em; line-height: 1.8; text-align: left; }
.sp-s34 { color: #1976d2; margin-bottom: 12px; font-size: 1.1em; }
.sp-s35 { text-align: center; margin-bottom: 30px; }
.sp-s36 { background: linear-gradient(135deg, #e91e63 0%, #ff6090 100%); padding: 40px; border-radius: 15px; color: white; text-align: center; }
.sp-s37 { background: #f8f9fa; padding: 40px 20px; border-radius: 12px; }
.sp-s38 { display: flex; justify-content: center; gap: 5px; margin-bottom: 15px; flex-wrap: wrap; max-width: 500px; margin-left: auto; margin-right: auto; }
.sp-s39 { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; max-width: 900px; margin: 0 auto; }
.sp-s40 { color: white; margin: 0 0 20px 0; font-size: 1.2em; }
.sp-s41 { background: #ffebee; padding: 15px; border-left: 4px solid #e74c3c; border-radius: 6px; }
.sp-s42 { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 30px; border-radius: 15px; text-align: center; margin-bottom: 25px; }
.sp-s43 { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; max-width: 1000px; margin: 0 auto; }
.sp-s44 { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; max-width: 1000px; margin: 0 auto; }
.sp-s45 { background: white; color: #e91e63; padding: 15px 30px; border: none; border-radius: 50px; font-weight: 700; cursor: pointer; }
.sp-s46 { background: white; border-radius: 20px; max-width: 500px; width: 90%; max-height: 90vh; overflow-y: auto; box-shadow: 0 20px 60px rgba(0,0,0,0.3); position: relative; padding: 40px 30px; }
.sp-s47 { font-family: monospace; font-size: 12px; color: #555; line-height: 1.8; }
.sp-s48 { position: fixed; top: 50%; left: 30px; transform: translateY(-50%); z-index: 9999; }
.sp-s49 { font-size: 1.2em; margin-bottom: 25px; opacity: 0.95; }
.sp-s50 { text-align: center; padding: 60px 20px; background: linear-gradient(135deg, #27ae60 0%, #229954 100%); color: white; border-radius: 12px; margin-bottom: 40px; box-shadow: 0 10px 40px rgba(39, 174, 96, 0.3); }
.sp-s51 { background: #fff3e0; padding: 15px; border-left: 4px solid #ff9800; border-radius: 6px; margin-bottom: 15px; }
.sp-s52 { margin-bottom: 25px; }
.sp-s53 { text-align: center; color: #2c3e50; font-size: 1.5em; margin-bottom: 25px; }
.sp-s54 { color: #635bff; margin-bottom: 8px; }
.sp-s55 { color: #0070ba; margin-bottom: 8px; }
.sp-s56 { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.7); z-index: 10000; align-items: center; justify-content: center; }
.sp-s57 { display: flex; justify-content: center; gap: 5px; margin-bottom: 10px; flex-wrap: wrap; max-width: 500px; margin-left: auto; margin-right: auto; }
.sp-s58 { color: #e67e22; margin-bottom: 5px; font-size: 0.85em; word-wrap: break-word; overflow-wrap: break-word; }
.sp-s59 { position: absolute; top: -8px; right: -8px; font-size: 18px; }
.sp-s60 { font-family: monospace; font-size: 0.95em; line-height: 1.8; color: #333; }
.sp-s61 { background: linear-gradient(135deg, #3498db 0%, #2980b9 100%); padding: 30px; border-radius: 12px; color: white; text-align: center; }
.sp-s62 { color: #9b59b6; margin-bottom: 8px; }
.sp-s63 { background: rgba(255,255,255,0.2); padding: 15px; border-radius: 8px; margin-bottom: 15px; backdrop-filter: blur(10px); }
.sp-s64 { background: white; padding: 25px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); border-left: 4px solid #635bff; text-align: center; }
.sp-s65 { padding: 15px; margin-bottom: 12px; background: #e8f5e9; border-left: 4px solid #27ae60; border-radius: 6px; }
.sp-s66 { font-size: 2em; margin-left: 5px; }
.sp-s67 { background: #f0f8ff; padding: 15px; border-radius: 8px; border-left: 4px solid #2196f3; margin-top: 20px; }
.sp-s68 { margin-bottom: 15px; }
.sp-s69 { display: block; margin-bottom: 12px; font-weight: 600; color: #555; }
.sp-s70 { font-size: 2.8em; margin-bottom: 20px; }
.sp-s71 { background: #f8f9fa; padding: 50px 20px; border-radius: 12px; margin-bottom: 50px; }
.sp-s72 { position: absolute; left: -9999px; z-index: 999999; padding: 10px 20px; background: #000; color: #fff; text-decoration: none; font-weight: bold; }
.sp-s73 { background: white; padding: 20px; border-radius: 10px; box-shadow: 0 4px 15px rgba(0,0,0,0.3); }
.sp-s74 { text-align: center; color: #f39c12; font-size: 1.5em; margin-bottom: 25px; }
.sp-s75 { margin: 0; font-size: 13px; color: #555; line-height: 1.6; }
.sp-s76 { color: #f57c00; display: block; margin-bottom: 8px; }
.sp-s77 { padding: 15px; background: #f3e5f5; border-left: 4px solid #9c27b0; border-radius: 6px; }
.sp-s78 { background: #e3f2fd; padding: 20px; border-radius: 8px; margin-bottom: 20px; }
.sp-s79 { background: linear-gradient(135deg, #3498db 0%, #2980b9 100%); padding: 40px; border-radius: 12px; color: white; text-align: center; }
.sp-s80 { color: #27ae60; margin-bottom: 10px; }
.sp-s81 { padding: 15px; margin-bottom: 12px; background: #e3f2fd; border-left: 4px solid #2196f3; border-radius: 6px; }
.sp-s82 { color: #c0392b; display: block; margin-bottom: 8px; }
.sp-s83 { margin: 0; opacity: 0.95; line-height: 1.6; }
.sp-s84 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 100%; margin: 0 auto; }
.sp-s85 { max-width: 1000px; margin: 0 auto; }
.sp-s86 { background: white; color: #27ae60; padding: 18px 40px; border-radius: 50px; font-size: 1.2em; font-weight: 700; cursor: pointer; box-shadow: 0 6px 20px rgba(0,0,0,0.2); }
.sp-s87 { background: white; padding: 25px; border-radius: 10px; border-left: 4px solid #e74c3c; }
.sp-s88 { text-align: center; margin-bottom: 20px; }
.sp-s89 { color: #e91e63; margin: 0 0 10px 0; font-size: 2em; }
.sp-s90 { font-size: 2em; margin-bottom: 10px; }
.sp-s91 { width: 100%; padding: 15px; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 16px; }
.sp-s92 { text-align: center; color: #27ae60; font-size: 1.5em; margin-bottom: 25px; }
.sp-s93 { background: white; padding: 25px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); border-left: 4px solid #9b59b6; text-align: center; }
.sp-s94 { list-style: none; padding: 0; margin: 0; }
.sp-s95 { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); color: #999; font-weight: 600; }
.sp-s96 { background: white; padding: 25px; border-radius: 10px; border-left: 4px solid #27ae60; }
.sp-s97 { font-size: 3em; margin-bottom: 8px; }
.sp-s98 { background: linear-gradient(135deg, #3498db 0%, #2980b9 100%); padding: 40px; border-radius: 15px; color: white; text-align: center; }
.sp-s99 { background: white; padding: 30px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); }
.sp-s100 { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
.sp-s101 { font-size: 4em; margin-bottom: 20px; }
.sp-s102 { opacity: 0.95; margin-bottom: 10px; text-align: center; }
.sp-s103 { display: flex; justify-content: center; align-items: center; gap: 10px; margin-bottom: 10px; }
.sp-s104 { color: #666; line-height: 1.6; margin-bottom: 20px; }
.sp-s105 { max-width: 800px; margin: 0 auto; background: white; padding: 30px; border-radius: 10px; box-shadow: 0 3px 10px rgba(0,0,0,0.08); }
.sp-s106 { background: white; padding: 25px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); border-left: 4px solid #0070ba; text-align: center; }
.sp-s107 { text-align: center; color: #2c3e50; margin-bottom: 30px; }
.sp-s108 { color: #3498db; margin-bottom: 5px; }
.sp-s109 { color: #3498db; margin-bottom: 10px; }
            .contact-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 8px 25px rgba(0,0,0,0.15);
            }

            @media (max-width: 768px) {
                .contact-intro h1 {
                    font-size: 1.8em !important;
                }
                .contact-intro p {
                    font-size: 1em !important;
                }
            }

/* Hover effect pentru quick donate button */
.sp-s17:hover {
    transform: scale(1.1) rotate(10deg);
    box-shadow: 0 8px 30px rgba(233, 30, 99, 0.6);
}

/* Responsive container pentru toate paginile */
.container {
    margin: 0 auto !important;
    text-align: center;
    padding: 40px 10% !important;
    width: 100% !important;
    max-width: 1600px !important;
}
