.leaselab-event-section{
    width:100%;
    padding:62px 0 72px;
    background:#fff;
    box-sizing:border-box;
}

.leaselab-event-section *{
    box-sizing:border-box;
}

.leaselab-event-inner{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:0;
}

/* 상단 헤더 */
.leaselab-event-head{
    width:100%;
    margin:0 0 40px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.leaselab-event-title{
    margin:0;
    font-size:40px;
    line-height:1.2;
    font-weight:900;
    color:#111;
    letter-spacing:-0.06em;
    word-break:keep-all;
    text-align:left;
}

.leaselab-event-more-btn{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:122px;
    height:50px;
    padding:0 24px;
    border:1px solid #d9dde5;
    border-radius:999px;
    background:#fff;
    color:#111;
    text-decoration:none !important;
    font-size:18px;
    line-height:1;
    font-weight:800;
    letter-spacing:-0.04em;
    transition:all .2s ease;
}

.leaselab-event-more-btn:hover{
    border-color:#12377c;
    color:#12377c;
    box-shadow:0 8px 20px rgba(18,55,124,.08);
}

.leaselab-event-more-btn .arrow{
    display:block;
    width:8px;
    height:8px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
    transform:rotate(45deg);
    margin-top:-1px;
}

/* 슬라이드 */
.leaselab-event-slider{
    width:100%;
    position:relative;
}

.leaselab-event-viewport{
    width:100%;
    overflow:hidden;
}

.leaselab-event-track{
    display:flex;
    align-items:stretch;
    gap:24px;
    will-change:transform;
    transition:transform .55s cubic-bezier(.22,.61,.36,1);
}

/* 카드 */
.leaselab-event-card{
    flex:0 0 calc((100% - 48px) / 3);
    min-width:0;
}

.leaselab-event-link{
    display:block;
    width:100%;
    color:inherit;
    text-decoration:none !important;
}

.leaselab-event-thumb{
    position:relative;
    width:100%;
    aspect-ratio:384 / 210;
    border-radius:20px;
    overflow:hidden;
    background:#eef2f7;
}

.leaselab-event-thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    transition:transform .35s ease;
}

.leaselab-event-link:hover .leaselab-event-thumb img{
    transform:scale(1.025);
}

/* 이미지 없을 때 */
.leaselab-event-noimg{
    width:100%;
    height:100%;
    padding:30px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    background:linear-gradient(135deg, #d8f4ff 0%, #eef9ff 100%);
    color:#08162d;
}

.leaselab-event-noimg .noimg-small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:28px;
    padding:0 12px;
    margin-bottom:14px;
    border-radius:999px;
    background:#0067ff;
    color:#fff;
    font-size:12px;
    line-height:1;
    font-weight:900;
    letter-spacing:-0.02em;
}

.leaselab-event-noimg strong{
    display:block;
    max-width:100%;
    font-size:24px;
    line-height:1.32;
    font-weight:900;
    letter-spacing:-0.055em;
    word-break:keep-all;
}

.leaselab-event-noimg em{
    display:block;
    margin-top:12px;
    font-style:normal;
    font-size:14px;
    font-weight:700;
    color:#333;
    letter-spacing:-0.035em;
}

/* 이미지 오른쪽 아래 D-day */
.leaselab-event-dday-badge{
    position:absolute;
    right:0;
    bottom:0;
    min-width:86px;
    padding:10px 12px 11px;
    background:rgba(36,48,63,.95);
    color:#fff;
    text-align:center;
    border-top-left-radius:12px;
    z-index:3;
}

.leaselab-event-dday-badge .label{
    display:block;
    margin:0 0 4px;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:-0.04em;
    opacity:.9;
}

.leaselab-event-dday-badge .value{
    display:block;
    font-size:24px;
    line-height:1;
    font-weight:900;
    letter-spacing:-0.04em;
}

.leaselab-event-dday-badge.is-ended{
    background:rgba(61,70,82,.95);
}

/* 이미지 아래 정보 */
.leaselab-event-info{
    padding:16px 4px 0;
}

.leaselab-event-card-title{
    margin:0;
    font-size:20px;
    line-height:1.35;
    font-weight:900;
    color:#08162d;
    letter-spacing:-0.055em;
    word-break:keep-all;

    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.leaselab-event-date{
    margin:10px 0 0;
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
    font-size:15px;
    line-height:1.35;
    letter-spacing:-0.035em;
}

.leaselab-event-date .date-label{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:26px;
    padding:0 11px;
    border-radius:999px;
    background:#eef3ff;
    color:#12377c;
    font-size:12px;
    font-weight:900;
}

.leaselab-event-date .date-text{
    min-width:0;
    color:#5b6472;
    font-weight:700;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* 점 네비 */
.leaselab-event-dots{
    width:100%;
    margin:28px 0 0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
}

.leaselab-event-dot{
    display:block;
    width:12px;
    height:12px;
    padding:0;
    border:0;
    border-radius:50%;
    background:#c5cdd5;
    cursor:pointer;
    text-indent:-9999px;
    overflow:hidden;
    transition:background .2s ease, transform .2s ease;
}

.leaselab-event-dot.is-active{
    background:#0869f9;
    transform:scale(1.05);
}

/* 비어있을 때 */
.leaselab-event-empty{
    width:100%;
    min-height:220px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:#f5f7fb;
    color:#777;
    font-size:15px;
    font-weight:700;
    letter-spacing:-0.03em;
}

/* 반응형 */
@media (max-width:1280px){
    .leaselab-event-inner{
        max-width:100%;
        padding:0 20px;
    }
}

@media (max-width:1024px){
    .leaselab-event-section{
        padding:54px 0 62px;
    }

    .leaselab-event-title{
        font-size:36px;
    }

    .leaselab-event-more-btn{
        min-width:108px;
        height:46px;
        font-size:16px;
        padding:0 20px;
    }

    .leaselab-event-track{
        gap:18px;
    }

    .leaselab-event-card{
        flex-basis:calc((100% - 18px) / 2);
    }

    .leaselab-event-card-title{
        font-size:18px;
    }
}

@media (max-width:768px){
    .leaselab-event-section{
        padding:42px 0 52px;
    }

    .leaselab-event-inner{
        padding:0 16px;
    }

    .leaselab-event-head{
        margin-bottom:26px;
    }

    .leaselab-event-title{
        font-size:28px;
    }

    .leaselab-event-more-btn{
        min-width:92px;
        height:40px;
        font-size:14px;
        padding:0 16px;
        gap:8px;
    }

    .leaselab-event-card{
        flex:0 0 100%;
    }

    .leaselab-event-thumb{
        aspect-ratio:588 / 320;
        border-radius:16px;
    }

    .leaselab-event-dday-badge{
        min-width:76px;
        padding:8px 10px 9px;
        border-top-left-radius:10px;
    }

    .leaselab-event-dday-badge .label{
        font-size:11px;
    }

    .leaselab-event-dday-badge .value{
        font-size:20px;
    }

    .leaselab-event-info{
        padding-top:14px;
    }

    .leaselab-event-card-title{
        font-size:17px;
    }

    .leaselab-event-date{
        font-size:13px;
    }

    .leaselab-event-dots{
        margin-top:22px;
        gap:12px;
    }

    .leaselab-event-dot{
        width:10px;
        height:10px;
    }
}

@media (max-width:480px){
    .leaselab-event-section{
        padding:56px 0 26px;
    }

    .leaselab-event-inner{
        padding:0 12px;
    }

    .leaselab-event-title{
        font-size:25px;
    }

    .leaselab-event-head{
        gap:12px;
    }

    .leaselab-event-more-btn{
        min-width:84px;
        height:38px;
        font-size:13px;
        padding:0 14px;
    }

    .leaselab-event-thumb{
        border-radius:14px;
    }

    .leaselab-event-dday-badge{
        min-width:72px;
        padding:8px 9px;
    }

    .leaselab-event-dday-badge .value{
        font-size:18px;
    }

    .leaselab-event-card-title{
        font-size:16px;
    }

    .leaselab-event-date{
        gap:6px;
        font-size:12px;
    }

    .leaselab-event-date .date-label{
        height:22px;
        padding:0 8px;
        font-size:11px;
    }

    .leaselab-event-dots{
        gap:10px;
    }
}