
.cyma-events-calendar{
    --cyma-yellow:#fff544;
    --cyma-orange:#f7a52b;
    --cyma-black:#050505;
    --cyma-border:#e2e2df;
    --cyma-box:#fbfbf8;
    color:#171717;
    width:100%;
}

.cyma-events-topline{
    display:flex;
    align-items:flex-end;
    gap:28px;
    margin-bottom:36px;
}

.cyma-events-main-year{
    flex:0 0 auto;
}

.cyma-events-main-year-number,
.cyma-year-title{
    margin:0;
    padding:0;
    color:#050505;
    font-size:48px;
    line-height:1;
    font-weight:500;
    letter-spacing:.01em;
}

.cyma-events-main-year-line,
.cyma-year-line{
    display:block;
    width:118px;
    height:7px;
    margin-top:10px;
    background:var(--cyma-yellow);
}

.cyma-events-intro{
    padding-bottom:3px;
    font-size:14px;
    line-height:1.5;
}

.cyma-events-intro p{
    margin:0;
}

.cyma-events-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:34px;
    row-gap:30px;
}

.cyma-events-month{
    min-width:0;
}

.cyma-month-title{
    display:inline-flex;
    align-items:center;
    gap:14px;
    min-width:168px;
    box-sizing:border-box;
    padding:9px 14px;
    margin-bottom:10px;
    border-radius:8px;
    background:var(--cyma-black);
    color:#fff;
    font-size:18px;
    line-height:1;
    font-weight:700;
}

.cyma-month-icon{
    flex:0 0 auto;
    color:var(--cyma-yellow);
}

.cyma-month-content{
    min-height:130px;
    box-sizing:border-box;
    padding:25px 34px;
    background:var(--cyma-box);
    border:1px solid var(--cyma-border);
    font-size:15px;
    line-height:1.55;
}

.cyma-month-content p{
    margin:0 0 13px;
}

.cyma-month-content p:last-child{
    margin-bottom:0;
}

.cyma-month-content a{
    color:var(--cyma-orange);
    text-decoration:none;
}

.cyma-month-content a:hover{
    text-decoration:underline;
}

.cyma-month-content strong{
    font-weight:700;
}

.cyma-past-toggle-wrap{
    display:flex;
    justify-content:center;
    margin:66px 0 0;
}

.cyma-past-toggle{
    appearance:none;
    -webkit-appearance:none;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    width:min(520px,100%);
    padding:0 10px 18px;
    border:0;
    border-bottom:7px solid #050505;
    border-radius:0 0 5px 5px;
    background:transparent;
    color:#050505;
    font:inherit;
    font-size:27px;
    line-height:1.2;
    font-weight:600;
    cursor:pointer;
}

.cyma-past-toggle-arrow{
    font-size:34px;
    line-height:.8;
    transition:transform .2s ease;
}

.cyma-past-toggle[aria-expanded="true"] .cyma-past-toggle-arrow{
    transform:rotate(90deg);
}

.cyma-past-years{
    margin-top:62px;
}

.cyma-past-years[hidden]{
    display:none !important;
}

.cyma-past-years .cyma-events-year + .cyma-events-year{
    margin-top:74px;
}

.cyma-year-title-wrap{
    margin-bottom:30px;
}

.cyma-year-title{
    font-size:42px;
}

.cyma-year-line{
    width:105px;
    height:6px;
}

@media (max-width: 980px){
    .cyma-events-topline{
        align-items:flex-start;
        flex-direction:column;
        gap:18px;
    }

    .cyma-events-grid{
        grid-template-columns:1fr;
        gap:26px;
    }

    .cyma-month-content{
        min-height:0;
    }
}

@media (max-width: 600px){
    .cyma-events-main-year-number,
    .cyma-year-title{
        font-size:38px;
    }

    .cyma-events-main-year-line{
        width:95px;
        height:6px;
    }

    .cyma-events-topline{
        margin-bottom:28px;
    }

    .cyma-events-grid{
        gap:22px;
    }

    .cyma-month-title{
        min-width:155px;
        padding:9px 13px;
        font-size:17px;
    }

    .cyma-month-content{
        padding:22px 20px;
        font-size:15px;
    }

    .cyma-past-toggle-wrap{
        margin-top:45px;
    }

    .cyma-past-toggle{
        font-size:21px;
        border-bottom-width:5px;
    }

    .cyma-past-toggle-arrow{
        font-size:27px;
    }

    .cyma-past-years{
        margin-top:46px;
    }
}

.cyma-month-content .cyma-no-event{
    opacity:.58;
}
