.events-page{
    padding:20px 14px 28px;
}

.events-page__head{
    margin-bottom:18px;
}

.events-page__head small{
    display:block;
    color:#98df50;
    font-size:11px;
    font-weight:400;
    letter-spacing:1.2px;
}

.events-page__head h1{
    margin:4px 0 7px;
    font-size:31px;
    line-height:1.05;
    font-weight:400;
}

.events-page__head p{
    margin:0;
    max-width:520px;
    color:#d7dfd7;
    font-size:12.5px;
    line-height:1.45;
}

.events-page__range{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:22px;
    padding:11px 13px;
    border:1px solid #31563c;
    border-radius:14px;
    background:#10291b;
}

.events-page__range > span{
    font-size:25px;
}

.events-page__range > div{
    display:grid;
    gap:2px;
}

.events-page__range small{
    color:#91d84c;
    font-size:11px;
    font-weight:400;
    letter-spacing:1px;
}

.events-page__range strong{
    color:#fff;
    font-size:14px;
    font-weight:400;
}

.events-page__months{
    display:grid;
    gap:24px;
}

.events-page__month h2{
    margin:0 0 10px;
    color:#fff;
    font-size:20px;
    font-weight:400;
}

.events-page__list{
    display:grid;
    gap:10px;
}

.events-page__event{
    display:grid;
    grid-template-columns:64px minmax(0,1fr);
    gap:12px;
    padding:12px;
    background:#fff6df;
    color:#182019;
    border:1px solid #ddcda5;
    border-radius:16px;
    box-shadow:var(--app-shadow);
}

.events-page__date{
    min-height:69px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    align-self:start;
    border-radius:12px;
    background:#173d25;
    color:#fff;
}

.events-page__date small{
    font-size:11px;
    line-height:1;
    font-weight:400;
    letter-spacing:1px;
}

.events-page__date strong{
    margin-top:4px;
    font-size:28px;
    line-height:1;
    font-weight:400;
}

.events-page__body{
    min-width:0;
}

.events-page__meta{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:8px;
    margin-bottom:5px;
}

.events-page__meta span{
    padding:4px 7px;
    border-radius:999px;
    background:#d8f4b6;
    color:#244d2b;
    font-size:11px;
    line-height:1;
}

.events-page__meta time{
    color:#687068;
    font-size:12px;
    white-space:nowrap;
}

.events-page__body h3{
    margin:0 0 5px;
    font-size:17px;
    line-height:1.2;
    font-weight:400;
}

.events-page__location{
    margin:0;
    color:#505950;
    font-size:11.5px;
}

.events-page__venue{
    margin:3px 0 0;
    color:#6b736c;
    font-size:13px;
}

.events-page__organizer{
    display:block;
    margin-top:6px;
    color:#93702b;
    font-size:12px;
}

.events-page__description{
    margin:9px 0 0;
    padding-top:8px;
    border-top:1px solid #e1d6bc;
    color:#555d56;
    font-size:11px;
    line-height:1.4;
}

.events-page__link{
    display:inline-block;
    margin-top:9px;
    color:#19632d;
    font-size:11px;
    font-weight:400;
}

.events-page__empty{
    padding:28px 18px;
    text-align:center;
    background:#fff6df;
    color:#182019;
    border-radius:16px;
}

.events-page__empty span{
    display:block;
    margin-bottom:8px;
    font-size:32px;
}

.events-page__empty h2{
    margin:0;
    font-size:19px;
    font-weight:400;
}

.events-page__empty p{
    margin:6px 0 0;
    color:#646c65;
    font-size:11px;
}

/* ---------------------------------------------------------
   Events heading foliage
   Scoped to events page only
   --------------------------------------------------------- */

.events-page__head{
    position:relative;
    overflow:hidden;
    min-height:112px;
    padding:14px 78px 16px 6px;
    background:none !important;
}

.events-page__leaves{
    position:absolute;
    z-index:0;
    top:-8px;
    right:-38px;

    width:205px;
    height:135px;

    display:block;
    object-fit:contain;

    opacity:.88;
    transform:rotate(-4deg);

    pointer-events:none;
    user-select:none;
}

.events-page__head > small,
.events-page__head > h1,
.events-page__head > p{
    position:relative;
    z-index:1;
}
