/* Listings — one current Havlo home-search presentation. */
.ls-surface{
    background:rgba(255,250,241,.78);
    border:1px solid rgba(16,32,51,.1);
    padding:clamp(1.2rem,2.4vw,1.8rem);
    box-shadow:0 1.4rem 4rem rgba(16,32,51,.08);
    backdrop-filter:blur(18px);
}
.ls-page,
.ls-hero-section,
.ls-results-section{
    background:
        radial-gradient(circle at 84% 7%, rgba(196,106,45,.12), transparent 22rem),
        linear-gradient(180deg,#fbf6ee 0%,#fcf8f2 42%,#f5efe6 100%);
}
.ls-hero-section{
    position:relative;
    overflow:hidden;
}
.ls-hero-section::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:clamp(11rem,18vw,17rem);
    background:
        linear-gradient(180deg,rgba(15,35,65,.92) 0%,rgba(15,35,65,.68) 42%,rgba(251,246,238,0) 100%),
        url("https://llot-space.sfo3.cdn.digitaloceanspaces.com/Site%20Images/home-hero.jpg") center 42% / cover no-repeat;
    opacity:.92;
    pointer-events:none;
}
.ls-hero-section::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(15,35,65,.035) 1px, transparent 1px),
        linear-gradient(90deg,rgba(15,35,65,.035) 1px, transparent 1px);
    background-size:4.8rem 4.8rem;
    mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 72%,transparent 100%);
    pointer-events:none;
}
body:has(.ls-page){
    background:#fbf6ee;
}
.ls-hero-wrap{
    position:relative;
    z-index:1;
    padding-top:clamp(1.35rem,2.6vw,2.6rem);
    padding-bottom:clamp(.95rem,2vw,1.65rem);
}
.ls-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(18rem,.88fr);
    gap:clamp(.95rem,2vw,1.55rem);
    align-items:stretch;
    padding:clamp(.9rem,1.8vw,1.2rem);
    border:1px solid rgba(16,32,51,.1);
    border-radius:2rem;
    background:
        linear-gradient(135deg,rgba(15,35,65,.96),rgba(8,24,45,.92)),
        radial-gradient(circle at 16% 12%,rgba(196,106,45,.28),transparent 24rem);
    box-shadow:0 2rem 5.8rem rgba(15,35,65,.18);
    overflow:hidden;
    position:relative;
    isolation:isolate;
}
.ls-hero-grid::before{
    content:"";
    position:absolute;
    inset:1rem;
    border:1px solid rgba(252,248,242,.08);
    border-radius:1.45rem;
    pointer-events:none;
    z-index:-1;
}
.ls-hero-grid > [data-public-motion="hero-copy"]{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:clamp(10rem,17vw,13.5rem);
    padding:clamp(1rem,2vw,1.7rem);
    position:relative;
}
.ls-hero-grid > [data-public-motion="hero-copy"]::after{
    content:"";
    position:absolute;
    right:clamp(-7rem,-8vw,-3rem);
    bottom:clamp(-7rem,-8vw,-3rem);
    width:clamp(12rem,24vw,22rem);
    height:clamp(12rem,24vw,22rem);
    background:url("/static/images/logos/icon-dark-bg.png") center / contain no-repeat;
    opacity:.055;
    filter:grayscale(1) brightness(2.4);
    pointer-events:none;
}
.ls-hero-eyebrow{
    color:#C46A2D;
    margin-bottom:.85rem;
}
.ls-hero-title{
    color:#fff8ec;
    max-width:17ch;
    letter-spacing:-.06em;
    line-height:.98;
}
.ls-hero-support{
    color:rgba(252,248,242,.72);
    margin-top:.7rem;
    max-width:39rem;
    line-height:1.55;
}
.ls-continuation{
    display:flex;
    align-items:center;
    gap:.8rem;
    margin-top:1.15rem;
    padding:.75rem .9rem;
    border-left:2px solid #C46A2D;
    background:rgba(252,248,242,.08);
    color:rgba(252,248,242,.76);
}
.ls-continuation span{
    flex:0 0 auto;
    font-size:.64rem;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.ls-continuation button{
    appearance:none;
    border:0;
    border-bottom:1px solid rgba(252,248,242,.3);
    background:transparent;
    color:#fff8ec;
    padding:.2rem 0;
    text-align:left;
    cursor:pointer;
}
.ls-signature{border-radius:1.35rem .45rem 1.35rem .45rem}
.ls-signature-soft{border-radius:1.2rem .45rem 1.2rem .45rem}
.ls-help-panel{
    display:flex;
    flex-direction:column;
    justify-content:end;
    min-height:100%;
    background:
        linear-gradient(180deg,rgba(252,248,242,.16),rgba(252,248,242,.08)),
        radial-gradient(circle at 70% 15%,rgba(196,106,45,.24),transparent 16rem);
    color:#fcf8f2;
    padding:clamp(1.15rem,2vw,1.5rem);
    border:1px solid rgba(252,248,242,.12);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 22px 48px rgba(0,32,70,.12);
    backdrop-filter:blur(18px);
}
.ls-help-eyebrow{
    color:#C46A2D;
    margin-bottom:.65rem;
}
.ls-help-title{
    font-family:var(--hv-font-display);
    font-size:clamp(1.18rem,1.6vw,1.55rem);
    font-weight:800;
    line-height:1.08;
    letter-spacing:-.045em;
    margin:0 0 .7rem;
    color:#fcf8f2;
}
.ls-help-copy{
    font-size:.9rem;
    line-height:1.58;
    color:rgba(252,248,242,.82);
    margin:0;
}
.ls-help-proof{
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
    margin-top:.9rem;
}
.ls-help-proof span{
    display:inline-flex;
    align-items:center;
    padding:.38rem .58rem;
    border-radius:999px;
    background:rgba(252,248,242,.12);
    border:1px solid rgba(252,248,242,.14);
    color:rgba(252,248,242,.82);
    font-size:.64rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.ls-hero-action{
    margin-top:1rem;
    background:#fcf8f2;
    border-color:#fcf8f2;
    color:#0f2341;
    box-shadow:none;
}
.ls-degraded-wrap{
    padding-top:0;
    padding-bottom:1rem;
}
.ls-degraded-notice{
    padding:1rem 1.1rem;
    background:#fff7ee;
    border-color:rgba(196,106,45,.18);
}
.ls-search-wrap{
    padding-top:0;
    padding-bottom:1.35rem;
}
.ls-results-wrap{
    padding-top:0;
    padding-bottom:4rem;
}
.ls-section-heading{
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:end;
    flex-wrap:wrap;
    margin-bottom:1rem;
}
.ls-section-kicker{
    color:#002046;
    margin-bottom:.45rem;
}
.ls-muted-copy{
    color:var(--hc-ink-2);
    margin:0;
}
.ls-toolbar{
    display:flex;
    gap:.75rem;
    align-items:center;
    flex-wrap:wrap;
}
.ls-text-button{
    font-size:.66rem;
    color:#002046;
    background:none;
    border:none;
    cursor:pointer;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:700;
}
.ls-text-button--accent{
    color:#C46A2D;
}
.ls-steps-band{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1rem;
    padding:clamp(1rem,2vw,1.25rem);
    background:linear-gradient(180deg,rgba(255,250,241,.78),rgba(252,248,242,.9));
    border:1px solid rgba(16,32,51,.1);
    box-shadow:0 1.4rem 4rem rgba(16,32,51,.07);
    backdrop-filter:blur(18px);
}
.ls-steps-band--after-results{
    margin-top:1.6rem;
}
.ls-steps-band article{
    padding:clamp(1.1rem,2.4vw,1.55rem);
    border-radius:1rem .35rem 1rem .35rem;
    background:rgba(255,255,255,.5);
    border:1px solid rgba(16,32,51,.08);
    transition:transform 220ms ease, background-color 220ms ease;
}
.ls-steps-band article:hover{
    transform:translateY(-.16rem);
    background:rgba(255,255,255,.72);
}
.ls-steps-band span{
    display:block;
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.14em;
    color:#C46A2D;
    margin-bottom:.7rem;
}
.ls-steps-band h2{
    margin:0;
    font-family:var(--hv-font-display);
    font-size:1.12rem;
    line-height:1.15;
    color:#002046;
}
.ls-steps-band p{
    margin:.55rem 0 0;
    font-size:.88rem;
    line-height:1.55;
    color:var(--hc-ink-2);
}
.ls-search-row{
    display:flex;
    gap:.8rem;
    align-items:center;
}
.ls-search-surface{
    padding:clamp(1rem,1.8vw,1.35rem);
    box-shadow:0 22px 48px rgba(28,28,25,.06);
}
.ls-search-field{
    flex:1;
    min-width:0;
}
.ls-search-button{
    background:#002046;
    border-color:#002046;
    color:#fff;
    white-space:nowrap;
}
.ls-chip-row{
    display:flex;
    gap:.55rem;
    flex-wrap:wrap;
}
.ls-chip-row--prompts{
    margin-top:.8rem;
}
.ls-chip-row--filters{
    margin-top:1rem;
}
.ls-mode-control{
    display:flex;
    flex-wrap:wrap;
    gap:.45rem;
    margin:1rem 0 0;
    padding:0;
    border:0;
}
.ls-mode-control legend{
    width:100%;
    margin-bottom:.25rem;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--hc-ink-3);
}
.ls-mode-control button{
    min-height:2.5rem;
    padding:.55rem .85rem;
    border:1px solid rgba(0,32,70,.18);
    border-radius:999px;
    background:#fff;
    color:#002046;
}
.ls-mode-control button[aria-pressed="true"]{
    background:#002046;
    color:#fff;
}
.ls-card-evidence{
    display:grid;
    gap:.4rem;
    margin:1rem 0 0;
    padding-top:.85rem;
    border-top:1px solid rgba(0,32,70,.1);
}
.ls-card-evidence div{display:grid;grid-template-columns:5.2rem minmax(0,1fr);gap:.6rem}
.ls-card-evidence dt{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--hc-ink-3)}
.ls-card-evidence dd{margin:0;font-size:.76rem;line-height:1.35;color:var(--hc-ink-2);overflow-wrap:anywhere}
.ls-prompt-chip{
    display:inline-flex;
    align-items:center;
    padding:.56rem .9rem;
    background:rgba(255,255,255,.66);
    border:1px solid rgba(16,32,51,.1);
    border-radius:999px;
    font-size:.79rem;
    color:var(--hc-ink-2);
    cursor:pointer;
    transition:transform 180ms ease, border-color 180ms ease, color 180ms ease;
}
.ls-prompt-chip:hover,
.ls-prompt-chip:focus-visible{
    transform:translateY(-.1rem);
    border-color:rgba(196,106,45,.28);
    color:#002046;
}
.ls-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));
    gap:clamp(1rem,1.8vw,1.45rem);
}
.ls-count-label{
    font-size:.78rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--hc-ink-3);
    margin:0;
}
.ls-state-panel{
    padding:4rem 1rem;
    text-align:center;
}
.ls-state-title{
    color:#002046;
    margin:0;
}
.ls-state-copy{
    color:var(--hc-ink-2);
    margin:1rem auto 0;
    max-width:32rem;
}
.ls-state-copy--secondary{
    margin-top:.75rem;
}
.ls-state-action{
    margin-top:1.25rem;
}
.ls-loading-copy{
    color:var(--hc-ink-2);
    font-style:italic;
}
.ls-support-band{
    background:#0f2341;
    border:1px solid rgba(255,255,255,.08);
    padding:1.6rem;
    box-shadow:0 20px 44px rgba(0,32,70,.14);
}
.ls-card{
    display:block;
    text-decoration:none;
    background:rgba(255,250,241,.82);
    border-radius:1.35rem .45rem 1.35rem .45rem;
    overflow:hidden;
    border:1px solid rgba(16,32,51,.1);
    box-shadow:0 1.2rem 3.2rem rgba(16,32,51,.08);
    backdrop-filter:blur(14px);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ls-card:hover{
    transform:translateY(-.28rem);
    border-color:rgba(196,106,45,.18);
    box-shadow:0 1.8rem 4.4rem rgba(16,32,51,.12);
}
.ls-card-image{
    height:clamp(13.5rem,19vw,16.75rem);
    position:relative;
    overflow:hidden;
    background:var(--hc-bg-warm);
}
.ls-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform 620ms cubic-bezier(.2,.7,.2,1), filter 620ms ease;
}
.ls-card:hover .ls-card-image img{
    transform:scale(1.045);
    filter:saturate(1.04) contrast(1.04);
}
.ls-card-photo-pending{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    color:#fcf8f2;
    background:
        linear-gradient(rgba(252,248,242,.055) 1px, transparent 1px),
        linear-gradient(90deg,rgba(252,248,242,.055) 1px, transparent 1px),
        radial-gradient(circle at 78% 18%, rgba(196,106,45,.34), transparent 13rem),
        linear-gradient(135deg,#0f2341,#08182d);
    background-size:2.75rem 2.75rem,2.75rem 2.75rem,auto,auto;
}
.ls-card-photo-mark{
    width:3.25rem;
    height:3.25rem;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(252,248,242,.22);
    border-radius:1rem .3rem 1rem .3rem;
    color:#C46A2D;
    font-family:var(--hv-font-display);
    font-size:1.45rem;
    font-weight:900;
    box-shadow:0 18px 34px rgba(0,0,0,.18);
}
.ls-card-photo-pending p{
    margin:0;
    color:rgba(252,248,242,.72);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.ls-card-photo-pending span{
    color:rgba(252,248,242,.62);
    font-size:.82rem;
    line-height:1.35;
}
.ls-save-button{
    position:absolute;
    top:.8rem;
    right:.8rem;
    width:2rem;
    height:2rem;
    border-radius:50%;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(0,32,70,.08);
    color:#002046;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
}
.ls-save-button.is-saved{
    background:rgba(252,248,242,.94);
    color:#C46A2D;
    border-color:rgba(196,106,45,.28);
    box-shadow:0 8px 16px rgba(196,106,45,.12);
}
.ls-card-badge{
    display:inline-flex;
    align-items:center;
    padding:.35rem .6rem;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#002046;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.ls-card-badges{
    position:absolute;
    left:.9rem;
    bottom:.9rem;
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
}
.ls-card-badge--demand{
    background:rgba(196,106,45,.92);
    color:#fff;
}
.ls-card-badge--new{
    background:rgba(31,81,53,.88);
    color:#fff;
}
.ls-card-body{
    padding:1.2rem 1.2rem 1.25rem;
}
.ls-card-head{
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:flex-start;
}
.ls-card-title{
    font-family:var(--hv-font-display);
    font-size:1.2rem;
    font-weight:800;
    color:#002046;
    line-height:1.2;
    margin:0;
}
.ls-card-meta{
    font-size:.8rem;
    color:var(--hc-ink-3);
    margin:.35rem 0 0;
}
.ls-card-price{
    font-size:1.05rem;
    font-weight:700;
    color:#C46A2D;
    margin:0;
}
.ls-card-stats{
    display:flex;
    gap:1rem;
    flex-wrap:wrap;
    margin-top:.9rem;
    font-size:.8rem;
    color:var(--hc-ink-2);
}
.ls-card-footer{
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:center;
    margin-top:1rem;
    padding-top:.95rem;
    border-top:1px solid rgba(16,32,51,.1);
}
.ls-card-link{
    font-size:.76rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#002046;
}
.ls-card-footnote{
    font-size:.77rem;
    color:var(--hc-ink-2);
}
.ls-brand-mark{
    width:2.85rem;
    height:2.85rem;
    border-radius:.9rem .25rem .9rem .25rem;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fcf8f2;
    color:#C46A2D;
    font-family:var(--hv-font-display);
    font-size:1.2rem;
    font-weight:800;
    flex-shrink:0;
}
.ls-support-band{
    margin-top:2.75rem;
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(18rem,.88fr);
    gap:1.5rem;
    align-items:center;
    background:linear-gradient(135deg,#c86b4a 0%, #a9543a 100%);
    color:#fcf8f2;
}
.ls-support-band__copy{
    display:flex;
    gap:1rem;
    align-items:flex-start;
}
.ls-support-eyebrow{
    color:rgba(252,248,242,.92);
    margin-bottom:.45rem;
}
.ls-support-title{
    font-family:var(--hv-font-display);
    font-size:1.3rem;
    font-weight:700;
    line-height:1.2;
    margin:0 0 .45rem;
    color:#fcf8f2;
}
.ls-support-copy{
    color:rgba(252,248,242,.82);
    margin:0;
}
.ls-support-saved{
    color:rgba(252,248,242,.8);
    margin:.55rem 0 0;
    font-size:.86rem;
}
.ls-alert-shell{
    background:rgba(252,248,242,.12);
    border:1px solid rgba(252,248,242,.18);
    border-radius:1rem .35rem 1rem .35rem;
    padding:1rem;
}
.ls-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:.75rem;
    margin-top:3rem;
    flex-wrap:wrap;
}
.ls-pagination-arrow{
    padding:.72rem 1rem;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(196,198,207,.16);
    color:#002046;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
}
.ls-pagination-arrow.is-disabled{
    opacity:.35;
    cursor:not-allowed;
}
.ls-pagination-pages{
    display:flex;
    align-items:center;
    gap:.45rem;
}
.ls-pagination-page{
    width:2.3rem;
    height:2.3rem;
    border-radius:50%;
    border:1px solid rgba(196,198,207,.16);
    background:#fff;
    color:#002046;
    font-weight:700;
    cursor:pointer;
}
.ls-pagination-page.is-active{
    background:#C46A2D;
    border-color:#C46A2D;
    color:#fff;
    box-shadow:0 10px 20px rgba(196,106,45,.16);
}
[data-public-motion]{
    /* Search is useful before presentation JavaScript arrives. Motion is a
       progressive enhancement, never the owner of first-frame visibility. */
    opacity:1;
    transform:none;
}
[data-public-motion].is-visible{
    opacity:1;
    animation:ls-public-settle .42s cubic-bezier(.22,1,.36,1) both;
}
@keyframes ls-public-settle{
    from{transform:translate3d(0,.55rem,0)}
    to{transform:translate3d(0,0,0)}
}
@media (prefers-reduced-motion:reduce){
    [data-public-motion],
    [data-public-motion].is-visible{
        opacity:1;
        transform:none;
        animation:none;
    }
}

/* Current property discovery: evidence is legible without turning the shelf
   into a provider console. Offer and freshness stay visible at card glance. */
.ls-results-title{
  max-width:22ch;
  margin:.35rem 0 0;
  font-size:clamp(1.8rem,3vw,3rem);
  line-height:1.05;
  letter-spacing:-.035em;
}
.ls-card-badge--evidence{
  margin-left:auto;
  background:rgba(245,241,232,.94);
  color:#17333b;
}
.ls-card-evidence dd small{
  display:block;
  margin-top:.2rem;
  color:var(--hp-muted,#66736f);
  font-size:.68rem;
  line-height:1.35;
}
.ls-state-panel[role="alert"]{
  border-top-color:#b76845;
}
@media (max-width:640px){
  .ls-card-badges{align-items:flex-start;flex-direction:column}
  .ls-card-badge--evidence{margin-left:0}
}
html.dark .ls-page,
html.dark .ls-hero-section,
html.dark .ls-results-section{
    background:#08182d;
}
html.dark .ls-surface,
html.dark .ls-card,
html.dark .ls-prompt-chip{
    background:#10233f;
    border-color:rgba(221,227,236,.12);
    color:#f4efe8;
}
html.dark .ls-card p,
html.dark .ls-surface p{
    color:#f4efe8;
}
html.dark .ls-card-badge{
    background:rgba(8,24,45,.86);
    color:#f4efe8;
}
html.dark .ls-hero-title,
html.dark .ls-hero-support,
html.dark .ls-help-title,
html.dark .ls-help-copy,
html.dark .ls-card-title,
html.dark .ls-card-meta,
html.dark .ls-card-price,
html.dark .ls-card-link,
html.dark .ls-support-title,
html.dark .ls-support-copy,
html.dark .ls-support-saved,
html.dark .ls-pagination-arrow,
html.dark .ls-pagination-page{
    color:#f4efe8;
}
html.dark .ls-help-panel{
    background:#10233f;
}
html.dark .ls-steps-band{
    background:linear-gradient(180deg,rgba(16,35,63,.94),rgba(16,35,63,.9));
    border-color:rgba(221,227,236,.12);
}
html.dark .ls-steps-band article{
    background:rgba(255,255,255,.04);
    border-color:rgba(221,227,236,.12);
}
html.dark .ls-steps-band h2{
    color:#f4efe8;
}
html.dark .ls-steps-band p{
    color:rgba(244,239,232,.82);
}
html.dark .ls-support-band{
    background:linear-gradient(135deg,#c86b4a 0%, #a9543a 100%);
}
html.dark .ls-alert-shell{
    background:rgba(16,35,63,.64);
    border-color:rgba(252,248,242,.12);
}
html.dark .ls-pagination-arrow,
html.dark .ls-pagination-page{
    background:#10233f;
    border-color:rgba(221,227,236,.12);
}
html.dark .ls-pagination-page.is-active{
    background:#C46A2D;
    border-color:#C46A2D;
    color:#fff;
}

/* Visual composition: search is the emotional center; inventory status recedes. */
.ls-hero-section::before,
.ls-hero-section::after{
    display:none;
}
.ls-hero-wrap{
    padding-top:clamp(1.8rem,3vw,3.2rem);
    padding-bottom:clamp(1.7rem,2.8vw,2.8rem);
}
.ls-hero-grid{
    grid-template-columns:minmax(0,1.04fr) minmax(22rem,.96fr);
    gap:0;
    padding:0;
    min-height:clamp(32rem,42vw,36rem);
    border-radius:2.2rem .7rem 2.2rem .7rem;
    background:#0f2341;
    box-shadow:0 2.4rem 7rem rgba(15,35,65,.2);
}
.ls-hero-grid::before{
    inset:1.15rem;
    border-radius:1.5rem .45rem 1.5rem .45rem;
    z-index:2;
}
.ls-hero-grid > .ls-hero-copy{
    min-height:100%;
    padding:clamp(2rem,3.6vw,3.4rem);
    justify-content:center;
    z-index:3;
}
.ls-hero-grid > .ls-hero-copy::after{
    display:none;
}
.ls-hero-title{
    font-family:var(--hv-font-display);
    max-width:14ch;
    font-size:clamp(3rem,4.25vw,4.35rem);
    line-height:.94;
    letter-spacing:var(--hv-display-tracking);
    word-spacing:var(--hv-display-word-spacing);
}
.ls-hero-support{
    max-width:34rem;
    margin-top:1.2rem;
    color:rgba(252,248,242,.74);
    font-size:clamp(1rem,1.25vw,1.15rem);
}
.ls-hero-search{
    margin-top:clamp(1.8rem,3vw,2.8rem);
    padding:clamp(.85rem,1.3vw,1.1rem);
    border-radius:1.15rem .35rem 1.15rem .35rem;
    background:#fcf8f2;
    box-shadow:0 1.5rem 3.8rem rgba(0,0,0,.2);
}
.ls-search-label{
    display:block;
    color:#7f4a2d;
    margin:.1rem .25rem .65rem;
}
.ls-hero-search .hv-input{
    min-height:3.45rem;
    background:#fff;
    border-color:rgba(15,35,65,.12);
    color:#0f2341;
}
.ls-hero-search .ls-search-button{
    min-height:3.45rem;
    padding-inline:1.35rem;
    background:#C46A2D;
    border-color:#C46A2D;
    color:#fff;
}
.ls-search-controls{
    display:flex;
    align-items:center;
    gap:1rem;
    margin:.7rem .2rem 0;
}
.ls-hero-search .ls-text-button{
    color:#4f6178;
    padding:.25rem 0;
}
.ls-hero-visual{
    position:relative;
    min-height:100%;
    margin:0;
    overflow:hidden;
    border-radius:0 .7rem 2.2rem 0;
}
.ls-hero-visual::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(8,24,45,.03) 35%,rgba(8,24,45,.86) 100%);
    pointer-events:none;
}
.ls-hero-visual img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    filter:saturate(.86) contrast(1.02);
}
.ls-hero-visual__caption{
    position:absolute;
    z-index:2;
    left:clamp(1.4rem,3vw,2.6rem);
    right:clamp(1.4rem,3vw,2.6rem);
    bottom:clamp(1.5rem,3vw,2.8rem);
    display:flex;
    flex-direction:column;
    gap:.45rem;
    color:#fcf8f2;
}
.ls-hero-visual__caption span{
    width:max-content;
    padding:.38rem .65rem;
    border:1px solid rgba(252,248,242,.35);
    border-radius:999px;
    font-size:.66rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    backdrop-filter:blur(14px);
}
.ls-hero-visual__caption strong{
    max-width:17ch;
    font-family:var(--hv-font-display);
    font-size:clamp(1.4rem,2.2vw,2.1rem);
    line-height:1.05;
    letter-spacing:-.025em;
    word-spacing:.075em;
}
.ls-hero-visual__caption small{
    color:rgba(252,248,242,.7);
    font-size:.75rem;
    letter-spacing:.04em;
}
.ls-quiet-prompts{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    flex-wrap:wrap;
    padding-top:1.1rem;
    color:#6b7789;
    font-size:.76rem;
}
.ls-quiet-prompts > span{
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.ls-quiet-prompts button{
    appearance:none;
    border:0;
    border-bottom:1px solid rgba(15,35,65,.18);
    background:transparent;
    color:#31455f;
    padding:.3rem .15rem;
    cursor:pointer;
}
.ls-results-section{
    padding-top:clamp(1rem,2vw,2rem);
}
.ls-grid:has(> .ls-card:first-of-type:last-of-type){
    grid-template-columns:minmax(0,1fr);
}
.ls-grid:has(> .ls-card:first-of-type:last-of-type) > .ls-card{
    display:grid;
    grid-template-columns:minmax(20rem,.9fr) minmax(0,1.1fr);
    min-height:24rem;
}
.ls-grid:has(> .ls-card:first-of-type:last-of-type) .ls-card-image{
    height:100%;
}
.ls-grid:has(> .ls-card:first-of-type:last-of-type) .ls-card-body{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(2rem,5vw,4.5rem);
}
.ls-state-panel--empty{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:clamp(1.5rem,4vw,4rem);
    padding:clamp(2rem,4vw,3.6rem) 0;
    text-align:left;
    border-top:1px solid rgba(15,35,65,.12);
    border-bottom:1px solid rgba(15,35,65,.12);
}
.ls-state-panel--empty .ls-state-title{
    max-width:23ch;
    font-size:clamp(1.8rem,3vw,3rem);
    line-height:1.04;
    letter-spacing:-.05em;
}
.ls-state-panel--empty .ls-state-copy{
    max-width:42rem;
    margin:1rem 0 0;
}
.ls-state-panel--empty .ls-state-action{
    margin:0;
    white-space:nowrap;
}
.ls-search-continuity{
    max-width:42rem;
    margin:.9rem 0 0;
    color:#58677a;
    font-size:.72rem;
    line-height:1.55;
}
html.dark .ls-hero-grid{
    background:#09192e;
}
html.dark .ls-hero-search{
    background:#f4efe8;
}
html.dark .ls-state-panel--empty{
    border-color:rgba(244,239,232,.15);
}

/* Shared-front-desk listing state: when today's verified shelf is genuinely
   quiet, the truth becomes the scene instead of leaving empty controls on the
   reception desk. Populated and narrowed-search states retain the full search. */
.hc-premium-listings__opening--quiet{
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(24rem,1.18fr);
    grid-template-rows:auto auto auto 1fr;
    column-gap:clamp(2.5rem,6vw,7rem);
    align-items:center;
    min-height:min(47rem,calc(100vh - 4.5rem));
    padding-top:clamp(4rem,8vw,7rem);
    padding-bottom:clamp(4rem,8vw,7rem);
    background:#07192d;
}
.hc-premium-listings__opening--quiet > p,
.hc-premium-listings__opening--quiet > h1,
.hc-premium-listings__opening--quiet > span,
.hc-premium-listings__quiet-action{
    grid-column:1;
}
.hc-premium-listings__opening--quiet > h1{
    max-width:11ch;
    font-size:clamp(3.3rem,6vw,6.8rem);
}
.hc-premium-listings__quiet-action{
    align-self:start;
    display:grid;
    justify-items:start;
    gap:1rem;
    margin-top:clamp(2rem,4vw,3.5rem);
}
.hc-premium-listings__quiet-action a{
    display:inline-flex;
    align-items:center;
    gap:1rem;
    min-height:3.35rem;
    padding:.9rem 1.15rem;
    border-radius:.55rem;
    border:1px solid rgba(255,250,242,.22);
    background:#a36442;
    box-shadow:0 12px 30px rgba(3,14,27,.2);
    color:#fffaf2;
    font-weight:650;
    text-decoration:none;
    transition:background-color 180ms ease-out,transform 180ms ease-out;
}
.hc-premium-listings__quiet-action a:hover,
.hc-premium-listings__quiet-action a:focus-visible{
    background:#8f5638;
    transform:translateY(-2px);
}
.hc-premium-listings__quiet-action a:focus-visible{
    outline:2px solid #fffaf2;
    outline-offset:3px;
}
.hc-premium-listings__quiet-action small{
    max-width:39rem;
    color:#b9c6d4;
    font-size:.76rem;
    line-height:1.6;
}
.hc-premium-listings__quiet-home{
    position:relative;
    grid-column:2;
    grid-row:1 / 5;
    align-self:stretch;
    min-height:34rem;
    margin:0;
    overflow:hidden;
    border-radius:1.35rem .4rem 1.35rem .4rem;
    background:#d7d0c6;
}
.hc-premium-listings__quiet-home::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 42%,rgba(3,14,27,.82) 100%);
}
.hc-premium-listings__quiet-home img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.hc-premium-listings__quiet-home figcaption{
    position:absolute;
    z-index:1;
    right:clamp(1.4rem,3vw,2.4rem);
    bottom:clamp(1.4rem,3vw,2.4rem);
    left:clamp(1.4rem,3vw,2.4rem);
    display:grid;
    gap:.45rem;
    color:#fff;
}
.hc-premium-listings__quiet-home figcaption span,
.hc-premium-listings__quiet-home figcaption small{
    color:#d4dee8;
    font-size:.68rem;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.hc-premium-listings__quiet-home figcaption strong{
    max-width:20ch;
    font-family:"Instrument Sans","Inter",sans-serif;
    font-size:clamp(1.65rem,3vw,2.7rem);
    font-weight:400;
    line-height:1.02;
}
@media (max-width:880px){
    .hc-premium-listings__opening--quiet{
        grid-template-columns:1fr;
        grid-template-rows:auto;
        min-height:0;
    }
    .hc-premium-listings__opening--quiet > p,
    .hc-premium-listings__opening--quiet > h1,
    .hc-premium-listings__opening--quiet > span,
    .hc-premium-listings__quiet-action,
    .hc-premium-listings__quiet-home{
        grid-column:1;
        grid-row:auto;
    }
    .hc-premium-listings__quiet-home{
        min-height:clamp(18rem,72vw,31rem);
        margin-top:2.5rem;
    }
}
@media (max-width:560px){
    .hc-premium-listings__opening--quiet{
        padding-top:3rem;
        padding-bottom:2rem;
    }
    .hc-premium-listings__opening--quiet > h1{
        font-size:clamp(3rem,14vw,4.15rem);
    }
    .hc-premium-listings__quiet-action a{
        width:100%;
        justify-content:space-between;
    }
    .hc-premium-listings__quiet-home{
        min-height:21rem;
        border-radius:1rem .3rem 1rem .3rem;
    }
}
@media (prefers-reduced-motion:reduce){
    .hc-premium-listings__quiet-action a{transition:none}
}
@media (max-width: 980px){
    .ls-hero-grid{grid-template-columns:1fr;min-height:0}
    .ls-hero-grid > .ls-hero-copy{min-height:auto}
    .ls-hero-visual{min-height:16rem;border-radius:0 0 2.2rem .7rem}
    .ls-steps-band{grid-template-columns:1fr}
    .ls-search-row{flex-direction:column;align-items:stretch}
    .ls-support-band{grid-template-columns:1fr}
    .ls-support-band__copy{align-items:center}
    .ls-state-panel--empty{grid-template-columns:1fr;align-items:start}
    .ls-state-panel--empty .ls-state-action{justify-self:start}
    .ls-grid:has(> .ls-card:first-of-type:last-of-type) > .ls-card{grid-template-columns:1fr;min-height:0}
    .ls-grid:has(> .ls-card:first-of-type:last-of-type) .ls-card-image{height:clamp(15rem,58vw,24rem)}
}
@media (max-width: 640px){
    .ls-hero-wrap{padding-top:1rem;padding-bottom:1.15rem}
    .ls-hero-grid{border-radius:1.25rem .45rem 1.25rem .45rem}
    .ls-hero-grid::before{inset:.7rem;border-radius:.9rem .25rem .9rem .25rem}
    .ls-hero-grid > .ls-hero-copy{padding:clamp(1.45rem,7vw,2rem)}
    .ls-hero-title{font-size:clamp(2.65rem,13vw,3.25rem);line-height:.91;max-width:11ch}
    .ls-hero-support{font-size:.98rem;line-height:1.48;margin-top:1rem}
    .ls-hero-search{margin-top:1.35rem;padding:.78rem;border-radius:.85rem .28rem .85rem .28rem}
    .ls-hero-search .hv-input,.ls-hero-search .ls-search-button{min-height:3.15rem}
    .ls-continuation{align-items:flex-start;flex-direction:column;gap:.35rem}
    .ls-hero-visual{min-height:13.5rem;border-radius:0 0 1.25rem .45rem}
    .ls-hero-visual__caption{left:1.3rem;right:1.3rem;bottom:1.3rem}
    .ls-hero-visual__caption strong{font-size:1.3rem;max-width:19ch}
    .ls-quiet-prompts{justify-content:flex-start;padding:1rem .25rem 0}
    .ls-results-section{padding-top:.65rem}
    .ls-section-heading{align-items:flex-start}
    .ls-mode-control{display:grid;grid-template-columns:1fr}
    .ls-mode-control button{width:100%;text-align:left}
}
