.lis-wrap{width:100%;margin:0;padding:0}
.lis-section{position:relative;height:var(--lis-height,620px);background-image:var(--lis-bg);background-position:center;background-size:cover;background-repeat:no-repeat;display:flex;align-items:flex-end;overflow:hidden;color:#fff}
.lis-image-link{position:absolute;inset:0;z-index:1;display:block;text-decoration:none}
.lis-overlay{position:absolute;z-index:0;inset:0;background:linear-gradient(0deg,rgba(0,0,0,calc(var(--lis-overlay,.58) + .12)) 0%,rgba(0,0,0,calc(var(--lis-overlay,.58)*.55)) 55%,rgba(0,0,0,.05) 100%)}
.lis-content{position:absolute;z-index:2;left:0;right:0;top:var(--lis-vertical,42%);width:100%;box-sizing:border-box;padding:0 var(--lis-side-padding,22px);margin:0;text-align:var(--lis-align,left);transform:translateY(-50%);transition:transform .3s ease}
.lis-content h2{font-family:var(--lis-heading-font,'Cormorant Garamond'),serif;font-weight:var(--lis-heading-weight,600);font-style:var(--lis-heading-style,normal);font-size:var(--lis-heading-size,36px);letter-spacing:var(--lis-heading-spacing,.8px);line-height:var(--lis-heading-line,1.05);text-transform:var(--lis-heading-transform,none);margin:0 0 var(--lis-heading-desc-gap,12px);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.lis-content p{font-family:var(--lis-desc-font,'Inter'),sans-serif;font-size:var(--lis-description-size,15px);font-weight:var(--lis-desc-weight,400);line-height:var(--lis-desc-line,1.5);letter-spacing:var(--lis-desc-spacing,.1px);max-width:var(--lis-content-width,330px);margin:0 0 var(--lis-desc-button-gap,12px);color:rgba(255,255,255,.90);text-shadow:0 1px 8px rgba(0,0,0,.45);text-align:inherit}
.lis-button{display:inline-flex;align-items:center;gap:10px;color:#c7a75a;text-decoration:none;font-family:var(--lis-button-font,'Montserrat'),sans-serif;font-size:var(--lis-button-size,16px);font-weight:var(--lis-button-weight,600);letter-spacing:var(--lis-button-spacing,1.4px);text-transform:var(--lis-button-transform,uppercase);transition:gap .2s ease,color .2s ease}
.lis-button span{font-family:Arial,sans-serif;font-size:1.35em;line-height:1}
.lis-button:hover,.lis-button:focus{color:#e2c87f;gap:14px}
.lis-section:focus-within .lis-content,.lis-section:hover .lis-content{transform:translateY(calc(-50% - 1px))}


/* PC / Desktop 4-column layout - fixed presentation, no backend desktop options */
.lis-pc-wrap{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:24px 32px;
    box-sizing:border-box;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:32px;
}
.lis-pc-card{
    position:relative;
    min-width:0;
    aspect-ratio:0.77/1;
    overflow:hidden;
    background-image:var(--lis-pc-bg);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    color:#fff;
}
.lis-pc-image-link{
    position:absolute;
    inset:0;
    z-index:1;
    display:block;
    text-decoration:none;
}
.lis-pc-overlay{
    position:absolute;
    z-index:0;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,calc(var(--lis-pc-overlay,.58) + .12)) 0%,rgba(0,0,0,calc(var(--lis-pc-overlay,.58)*.55)) 55%,rgba(0,0,0,.05) 100%);
}
.lis-pc-content{
    position:absolute;
    z-index:2;
    left:0;
    right:0;
    bottom:0;
    box-sizing:border-box;
    padding:0 14px 18px;
    text-align:left;
}
.lis-pc-content h2{
    font-family:'Cormorant Garamond',serif;
    font-weight:600;
    font-size:clamp(22px,2vw,30px);
    letter-spacing:.6px;
    line-height:1;
    text-transform:uppercase;
    margin:0 0 7px;
    color:#fff;
    text-shadow:0 2px 14px rgba(0,0,0,.35);
}
.lis-pc-content p{
    font-family:'Inter',sans-serif;
    font-size:12px;
    font-weight:400;
    line-height:1.28;
    letter-spacing:0;
    max-width:100%;
    margin:0 0 8px;
    color:rgba(255,255,255,.92);
    text-shadow:0 1px 7px rgba(0,0,0,.5);
}
.lis-pc-button{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#c7a75a;
    text-decoration:none;
    font-family:'Montserrat',sans-serif;
    font-size:10px;
    font-weight:600;
    letter-spacing:1.2px;
    text-transform:uppercase;
    transition:gap .2s ease,color .2s ease;
}
.lis-pc-button span{
    font-family:Arial,sans-serif;
    font-size:1.35em;
    line-height:1;
}
.lis-pc-button:hover,.lis-pc-button:focus{color:#e2c87f;gap:10px}
@media (max-width: 900px){
    .lis-pc-wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px}
}
@media (max-width: 600px){
    .lis-pc-wrap{grid-template-columns:1fr;gap:16px;padding:16px}
}
