


/* Start custom CSS *//* GŁÓWNY STYL */
.st-patrick-pro-layout {
    background-color: #ffffff !important;
    background-image: radial-gradient(#e8f5e9 1.5px, transparent 1.5px) !important;
    background-size: 30px 30px !important;
    padding: 80px 20px;
    border-radius: 40px;
    font-family: 'Poppins', sans-serif;
    color: #2d3436;
}

.contest-container {
    max-width: 1000px;
    margin: 0 auto;
}

/* HERO SECTION */
.hero-section {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 60px;
}

.hero-image-wrapper { flex: 1; max-width: 400px; }
.floating-dragon {
    width: 100%;
    height: auto;
    filter: drop-shadow(0 20px 40px rgba(39, 174, 96, 0.2));
    animation: dragonFloat 4s ease-in-out infinite;
}

.hero-content-wrapper { flex: 1.2; }
.top-badge {
    background: #27ae60;
    color: #fff;
    padding: 10px 25px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
}

.hero-title {
    font-size: clamp(36px, 5vw, 56px);
    font-weight: 900;
    line-height: 1.1;
    margin: 20px 0;
    color: #1a472a;
}
.highlight { color: #27ae60; display: block; }
.hero-subtitle { font-size: 19px; color: #636e72; }

/* SEKCJA KROKÓW */
.steps-wrapper {
    background: #ffffff !important;
    padding: 40px;
    border-radius: 30px;
    box-shadow: 0 15px 45px rgba(0,0,0,0.06) !important;
    margin-bottom: 50px;
    border: 1px solid #f0f0f0 !important;
}

.steps-header h2 { text-align: center; font-size: 28px; color: #1a472a; margin-bottom: 5px; }
.green-line { width: 50px; height: 4px; background: #27ae60; margin: 0 auto 35px; border-radius: 10px; }

.steps-grid { display: flex; justify-content: space-between; gap: 20px; }
.step-item { flex: 1; text-align: center; }
.step-circle {
    width: 55px; height: 55px;
    background: #e8f5e9; color: #27ae60;
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: 22px; font-weight: 900; margin: 0 auto 15px; border: 2px solid #27ae60;
}
.step-item.active .step-circle { background: #27ae60; color: white; }

/* BANER NAGRÓD */
.prize-banner {
    background: linear-gradient(90deg, #1a472a 0%, #27ae60 100%);
    color: white; padding: 35px; border-radius: 25px;
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 70px;
}
.prize-icon { font-size: 45px; }
.prize-text h3 { margin: 0; font-size: 24px; color: #ffd700; }
.deadline-info { background: rgba(255, 255, 255, 0.15); padding: 12px 20px; border-radius: 12px; }

/* --- NOWA SEKCJA CTA NA DOLE --- */
.final-cta-section {
    text-align: center;
    background: #f9fbf9;
    padding: 50px 30px;
    border-radius: 30px;
    border: 2px dashed #d1e7d1;
}

.cta-title {
    font-size: 38px;
    font-weight: 800;
    color: #1a472a;
    margin-bottom: 10px;
}

.cta-description {
    font-size: 18px;
    color: #636e72;
    margin-bottom: 35px;
}

.btn-container-centered {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.btn-main {
    background: #27ae60;
    color: white;
    padding: 18px 45px;
    border-radius: 15px;
    text-decoration: none;
    font-weight: 700;
    font-size: 20px;
    box-shadow: 0 10px 25px rgba(39, 174, 96, 0.3);
    transition: 0.3s;
}

.btn-main:hover { background: #1e8449; transform: translateY(-5px); }

.btn-secondary {
    padding: 18px 35px;
    color: #27ae60;
    text-decoration: none;
    font-weight: 600;
    border: 2px solid #27ae60;
    border-radius: 15px;
    transition: 0.3s;
}

.btn-secondary:hover { background: #e8f5e9; }

.final-wish {
    font-size: 16px;
    color: #27ae60;
    font-weight: 600;
    font-style: italic;
}

/* ANIMACJA */
@keyframes dragonFloat {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
}

/* MOBILE */
@media (max-width: 800px) {
    .hero-section, .steps-grid, .prize-banner { flex-direction: column; text-align: center; }
}/* End custom CSS */
