.ls-utility-hero,.ls-page__header{
    padding:72px 0 54px;
    background:var(--ls-dark-wine);
    color:var(--ls-pearl);
}
.ls-utility-hero .ls-kicker,.ls-page__header .ls-kicker{color:var(--ls-warm-skin)}
.ls-utility-hero h1,.ls-page__header h1{
    max-width:13ch;
    margin:0;
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:clamp(3rem,12vw,7rem);
    font-weight:400;
    line-height:.87;
    letter-spacing:-.05em;
}
.ls-search-form--page{
    margin:34px 0 0;
}
.ls-search-form--page input[type="search"]{
    background:rgba(255,255,255,.08);
}

.ls-search-results{
    padding:40px 0 90px;
    background:var(--ls-soft-ivory);
    color:var(--ls-text-dark);
}
.ls-search-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 10px;
}
.ls-search-card__media{
    display:block;
    aspect-ratio:3/4;
    overflow:hidden;
    background:#eadeda;
}
.ls-search-card__media img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.ls-search-card__body{padding-top:11px}
.ls-search-card__type{
    margin:0 0 6px;
    color:var(--ls-desire-red);
    font-size:9px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.ls-search-card h2{
    margin:0;
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:1.08rem;
    font-weight:400;
    line-height:1.06;
}
.ls-search-card__price{
    margin-top:6px;
    color:#75575d;
    font-size:.72rem;
}
.ls-utility-pagination{margin-top:54px}
.ls-utility-pagination .nav-links{
    display:flex;
    justify-content:center;
    gap:6px;
}
.ls-utility-pagination .page-numbers{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid rgba(23,11,14,.16);
    border-radius:50%;
}
.ls-utility-pagination .page-numbers.current{
    background:var(--ls-desire-red);
    border-color:var(--ls-desire-red);
    color:var(--ls-pearl);
}

.ls-empty-state{
    padding:70px 0 90px;
}
.ls-empty-state .ls-kicker{color:var(--ls-desire-red)}
.ls-empty-state h2{
    max-width:12ch;
    margin:0;
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:clamp(2.8rem,11vw,5.4rem);
    font-weight:400;
    line-height:.9;
}
.ls-button--wine{
    margin-top:28px;
    background:var(--ls-desire-red);
    color:var(--ls-pearl);
}

.ls-404__section{
    position:relative;
    min-height:70vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:radial-gradient(circle at 85% 15%,rgba(196,55,78,.32),transparent 32%),var(--ls-dark-wine);
}
.ls-404__inner{padding:80px 0}
.ls-404__number{
    position:absolute;
    right:-.08em;
    top:.02em;
    margin:0;
    color:rgba(255,255,255,.035);
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:44vw;
    line-height:.8;
    pointer-events:none;
}
.ls-404 .ls-kicker{color:var(--ls-warm-skin)}
.ls-404 h1{
    position:relative;
    max-width:10ch;
    margin:0;
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:clamp(3.2rem,13vw,7rem);
    font-weight:400;
    line-height:.86;
    letter-spacing:-.05em;
}
.ls-404__inner>p:not(.ls-kicker):not(.ls-404__number){
    position:relative;
    max-width:28rem;
    margin:20px 0 0;
    color:#dfc9c9;
}
.ls-404 .ls-button{position:relative;margin-top:28px}

.ls-page__body{
    padding:54px 0 90px;
    background:var(--ls-soft-ivory);
    color:var(--ls-text-dark);
}
.ls-prose{
    max-width:780px;
}
.ls-prose>*:first-child{margin-top:0}
.ls-prose h2,.ls-prose h3{
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-weight:400;
    line-height:1;
    letter-spacing:-.035em;
}
.ls-prose h2{margin-top:2em;font-size:clamp(2rem,7vw,3.6rem)}
.ls-prose h3{margin-top:1.8em;font-size:clamp(1.5rem,5vw,2.3rem)}
.ls-prose p,.ls-prose li{color:#5f4b4f;line-height:1.75}
.ls-prose a{text-decoration:underline;text-decoration-color:rgba(106,16,32,.35);text-underline-offset:3px}
.ls-prose__hero{margin:0 0 38px}
.ls-prose__hero img{width:100%;height:auto}

/* My Account */
body.woocommerce-account .ls-commerce-main{
    padding:50px 16px 90px;
    background:var(--ls-soft-ivory);
    color:var(--ls-text-dark);
}
body.woocommerce-account .woocommerce{
    width:min(100%,1180px);
    margin:0 auto;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    margin:0 0 28px;
    padding:0;
    display:flex;
    gap:8px;
    overflow-x:auto;
    list-style:none;
    scrollbar-width:none;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:42px;
    padding:0 15px;
    display:flex;
    align-items:center;
    border:1px solid rgba(23,11,14,.16);
    border-radius:999px;
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
    background:var(--ls-desire-red);
    border-color:var(--ls-desire-red);
    color:var(--ls-pearl);
}
body.woocommerce-account .woocommerce-MyAccount-content{
    float:none!important;
    width:100%!important;
}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-weight:400;
}
body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register,
body.woocommerce-account .woocommerce-EditAccountForm{
    padding:24px;
    border:1px solid rgba(23,11,14,.12);
    border-radius:14px;
    background:#fff;
}
body.woocommerce-account .woocommerce input.input-text{
    min-height:50px;
    padding:10px 12px;
    border:1px solid rgba(23,11,14,.18);
    border-radius:9px;
    background:#fffdfa;
}
body.woocommerce-account .woocommerce button.button{
    min-height:48px;
    padding:0 18px!important;
    border-radius:999px!important;
    background:var(--ls-desire-red)!important;
    color:var(--ls-pearl)!important;
    font-size:.68rem!important;
    font-weight:850!important;
    letter-spacing:.06em;
    text-transform:uppercase;
}

@media (min-width:700px){
    .ls-search-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 18px}
}
@media (min-width:900px){
.ls-utility-hero,.ls-page__header{padding:110px 0 82px}
    .ls-search-results{padding:60px 0 120px}
    .ls-search-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:52px 22px}
    .ls-page__body{padding:80px 0 120px}
    body.woocommerce-account .ls-commerce-main{padding:72px 32px 120px}
    body.woocommerce-account .woocommerce{
        display:grid;
        grid-template-columns:240px minmax(0,1fr);
        gap:54px;
        align-items:start;
    }
    body.woocommerce-account .woocommerce-MyAccount-navigation ul{
        display:grid;
        overflow:visible;
    }
    body.woocommerce-account .woocommerce-MyAccount-content{
        min-width:0;
    }
}


/* Signature account polish — v0.8.3 */
body.woocommerce-account .ls-commerce-main{
    position:relative;
    overflow:hidden;
    padding:62px 16px 100px;
    background:#efe4de;
}

body.woocommerce-account .ls-commerce-main::before{
    content:"ACCOUNT";
    position:absolute;
    right:-.04em;
    top:.02em;
    color:rgba(106,16,32,.035);
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:24vw;
    line-height:.8;
    pointer-events:none;
}

body.woocommerce-account .woocommerce{
    position:relative;
    z-index:1;
    width:min(100%,1220px);
    margin:0 auto;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    gap:0;
    border-top:1px solid rgba(22,13,15,.17);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li{
    border-bottom:1px solid rgba(22,13,15,.17);
}

body.woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:50px;
    padding:0 4px;
    justify-content:space-between;
    border:0;
    border-radius:0;
    color:#725a60;
    background:transparent;
    font-size:.62rem;
    letter-spacing:.08em;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a::after{
    content:"↗";
    color:#a18a8e;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
    border:0;
    background:transparent;
    color:var(--ls-desire-red);
}

body.woocommerce-account .woocommerce-MyAccount-content{
    padding-top:20px;
}

body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
    max-width:45rem;
    font-family:Iowan Old Style,Baskerville,"Times New Roman",serif;
    font-size:clamp(1.7rem,6vw,2.7rem);
    line-height:1.04;
    letter-spacing:-.03em;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
    font-size:clamp(2rem,7vw,3.6rem);
    line-height:.92;
    letter-spacing:-.04em;
}

body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register,
body.woocommerce-account .woocommerce-EditAccountForm{
    padding:28px 22px;
    border:1px solid rgba(22,13,15,.14);
    border-radius:0;
    background:rgba(255,255,255,.28);
}

body.woocommerce-account .woocommerce input.input-text{
    min-height:52px;
    border-radius:0;
    background:#fbf5f1;
}

body.woocommerce-account .woocommerce button.button{
    min-height:52px;
    border-radius:0!important;
    font-size:.63rem!important;
    letter-spacing:.1em;
}

@media(min-width:900px){
    body.woocommerce-account .ls-commerce-main{
        padding:100px 32px 140px;
    }

    body.woocommerce-account .woocommerce{
        grid-template-columns:260px minmax(0,1fr);
        gap:72px;
    }

    body.woocommerce-account .woocommerce-MyAccount-content{
        padding-top:0;
    }
}
