.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-23743 .elementor-element.elementor-element-5cbf885{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}/* Start custom CSS for html, class: .elementor-element-f91b4ac *//* General Layout & Font */
.article-container-nano {
    font-family: 'Vazirmatn', sans-serif;
    line-height: 1.9;
    color: #333;
    direction: rtl;
    max-width: 950px;
    margin: auto;
    background-color: #f8f9fa;
}

/* Headings */
.article-container-nano h1 {
    color: #2c3e50;
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 30px;
}
.article-container-nano h2 {
    font-size: 1.9rem;
    color: #b8860b; /* Dark Golden */
    margin-top: 45px;
    padding-bottom: 10px;
    text-align: center;
    border-bottom: 2px solid #daa520;
}
.article-container-nano h3 {
    font-size: 1.5rem;
    color: #34495e;
    margin-top: 30px;
    text-align: center;
}
.article-container-nano h4 {
    font-size: 1.2rem;
    color: #34495e;
    margin-top: 30px;
    text-align: center;
}

/* Paragraph */
.article-container-nano p {
    font-size: 1.1rem;
    text-align: justify;
}

/* Flowchart-style containers */
.stage-box {
    text-align: center;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 12px;
    margin-top: 20px;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.stage-arrow {
    font-size: 3rem;
    color: #daa520; /* Golden */
    margin: 15px 0;
    text-align: center;
}

/* UPDATED: Winners Grid (5 Columns on Desktop) */
.winners-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* 5 columns on desktop */
    gap: 20px; /* Reduced gap for more columns */
    margin-top: 30px;
}

/* Winner Card */
.winner-card {
    text-align: center;
}

/* Photo Frame with Animation */
.photo-frame {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4;
    border-radius: 8px;
    padding: 4px;
    background: linear-gradient(45deg, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
/* UPDATED: Image Background */
.photo-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
    background-color: #ffffff; /* Ensures background is white */
}

/* The continuous traversing animation */
.photo-frame::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200%;
    height: 200%;
    background: conic-gradient(from 0deg, transparent 0%, transparent 70%, #FFF_FA_C_F_F 95%, transparent 100%);
    animation: rotate-border 4s linear infinite;
}

@keyframes rotate-border {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}


.winner-card figcaption {
    font-weight: bold;
    font-size: 1rem;
    color: #2c3e50;
    margin-top: 10px;
}

/* Responsive layout for mobile (2 columns) */
@media (max-width: 768px) {
    .winners-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}/* End custom CSS */