/* ======================================================================
 Little Sigil 1.2.7 — carefully scoped branded interior layouts.
 Uses existing Switzer/Clash typography and Customizer palette. No changes
 to home, WooCommerce cart, product details or checkout appearance.
 ====================================================================== */
.ls-premium-page{background:var(--color-ivory);min-height:65vh}
.theme-interior-page.ls-premium-page{padding-top:0}
.blog-main.ls-premium-page,.shop-archive-main.ls-premium-page{padding-top:0;padding-bottom:0}
.ls-premium-page :where(h1,h2,h3){text-wrap:balance}
.ls-mini-label{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary);line-height:1.55}
.ls-editorial-hero{position:relative;overflow:hidden;padding:calc(var(--header-height, 104px) + clamp(3.2rem,6.3vw,7rem)) 0 clamp(3.8rem,7.3vw,7.4rem);background:var(--color-linen);isolation:isolate}
.ls-editorial-hero::after{content:"";position:absolute;left:-7rem;bottom:-13rem;width:23rem;height:23rem;border:1px solid rgb(174 116 41 / .13);border-radius:50%;pointer-events:none;z-index:-1}
.ls-editorial-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2rem,7vw,7rem);align-items:center}
.ls-editorial-hero__copy{min-width:0;padding-block:1rem}
.ls-breadcrumbs{display:flex;align-items:center;gap:.75rem;color:var(--color-muted-foreground);font-size:.76rem;line-height:1.5;margin-bottom:clamp(2rem,4vw,3.4rem)}
.ls-breadcrumbs a{text-underline-offset:4px;transition:color .2s ease}
.ls-breadcrumbs a:hover{color:var(--color-primary);text-decoration:underline}
.ls-breadcrumbs span:last-child{max-width:25ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ls-editorial-hero__eyebrow{font-size:.75rem;letter-spacing:.19em;text-transform:uppercase;font-weight:700;color:var(--color-primary);margin-bottom:1.1rem}
.ls-editorial-hero__title{font-size:clamp(3.1rem,6.25vw,6.35rem);font-weight:600;letter-spacing:-.055em;line-height:.98;max-width:12ch;color:var(--color-foreground)}
.ls-editorial-hero__lead{max-width:34rem;font-size:clamp(1rem,1.28vw,1.22rem);line-height:1.72;color:var(--color-muted-foreground);margin-top:clamp(1.2rem,3vw,2.1rem);overflow-wrap:break-word}
.ls-editorial-hero__line{width:6rem;height:1px;background:rgb(58 44 34 / .2);margin:2.15rem 0 1.05rem;position:relative}
.ls-editorial-hero__line span{position:absolute;left:0;top:-2px;width:1.75rem;height:4px;border-radius:2px;background:var(--color-primary)}
.ls-editorial-hero__note{font-size:.79rem;color:var(--color-muted-foreground);letter-spacing:.025em}
.ls-editorial-hero__visual{position:relative;aspect-ratio:1.07/1;min-height:0;border-radius:clamp(.6rem,1.4vw,1.25rem);margin:0;box-shadow:none !important}
.ls-editorial-hero__visual::before{content:"";position:absolute;inset:1rem -1rem -1rem 1rem;border:1px solid rgb(174 116 41 / .35);border-radius:inherit;z-index:-1}
.ls-editorial-hero__visual img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.ls-editorial-hero__visual-decoration{position:absolute;bottom:-1.25rem;left:-1.7rem;color:var(--color-primary);font-family:serif;font-size:clamp(3.5rem,6vw,5.75rem);font-weight:400;line-height:1;text-shadow:0 2px 0 var(--color-linen)}
.ls-editorial-hero__illustration{min-height:20rem;position:relative;border:1px solid var(--color-border);border-radius:1rem;display:grid;place-items:center;background:var(--color-ivory)}
.ls-editorial-hero__illustration span{font-size:9rem;color:var(--color-primary)}
.ls-editorial-hero__illustration i{position:absolute;border:1px solid var(--color-border);border-radius:50%;width:70%;aspect-ratio:1}
.ls-editorial-hero__illustration i:last-child{width:45%}
.ls-editorial-hero--story .ls-editorial-hero__visual img{object-position:50% 52%}
.ls-editorial-hero--faq .ls-editorial-hero__visual img{object-position:center}
.ls-editorial-hero--journal .ls-editorial-hero__visual{aspect-ratio:1.18}
.ls-editorial-hero--shop .ls-editorial-hero__visual{aspect-ratio:1.22}
.ls-editorial-hero--contact .ls-editorial-hero__visual{aspect-ratio:1.15}
.ls-collection-intro{padding:clamp(3.8rem,6vw,6.3rem) 0 0;background:var(--color-ivory)}
.ls-collection-intro__row,.ls-journal-section-heading,.ls-shop-heading{display:flex;justify-content:space-between;align-items:end;gap:2.5rem}
.ls-collection-intro h2,.ls-journal-section-heading h2,.ls-shop-heading h2{font-size:clamp(1.9rem,3.25vw,3rem);letter-spacing:-.035em;margin-top:.7rem;max-width:16ch;line-height:1.12}
.ls-collection-intro__row>p,.ls-journal-section-heading>p,.ls-shop-heading>p{max-width:21.5rem;font-size:.93rem;line-height:1.75;color:var(--color-muted-foreground)}
/* The editorial heading replaces the old section's duplicate title on interior pages. */
.ls-premium-page--ranges>.services-section{padding-top:clamp(2rem,4vw,3.25rem);background:var(--color-ivory);border-top:0}
.ls-premium-page--ranges>.services-section .services-section__head{display:none}
.ls-premium-page--ranges .services-section__grid{gap:clamp(1rem,2vw,1.75rem)}
.ls-premium-page--ranges .services-section__card{background:var(--color-background);border:1px solid var(--color-border);border-radius:1.15rem;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.ls-premium-page--ranges .services-section__card:hover{transform:translateY(-5px);box-shadow:0 22px 45px -32px rgb(58 44 34 / .45)}
.ls-premium-page--ranges .services-section__media{overflow:hidden}
.ls-premium-page--ranges .services-section__media img{transition:transform .4s ease}
.ls-premium-page--ranges .services-section__card:hover img{transform:scale(1.04)}
.ls-premium-page--ranges .services-section__body{padding:clamp(1.25rem,2vw,2rem)}
.ls-premium-page--ranges .services-section__title{font-size:clamp(1.4rem,2vw,1.85rem)}
.ls-premium-page--ranges .services-section__link{font-weight:600}
/* Story — preserve all original Customizer content, enhance its framing. */
.ls-story-body{background:var(--color-ivory)}
.ls-premium-page--story .about-section{padding:clamp(4rem,8vw,8rem) 0;background:var(--color-ivory);border-top:0}
.ls-premium-page--story .about-section__grid{gap:clamp(2rem,6vw,7rem)}
.ls-premium-page--story .about-section__media-frame{box-shadow:0 28px 60px -48px rgb(58 44 34 / .45)}
.ls-values{padding:clamp(4rem,7vw,7rem) 0;background:var(--color-linen);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.ls-values__intro{max-width:35rem}
.ls-values__intro h2{font-size:clamp(2.1rem,4vw,3.5rem);margin-top:.8rem;line-height:1.08}
.ls-values__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,3vw,3.5rem);margin-top:clamp(2rem,4vw,3.8rem)}
.ls-values__grid article{padding:1.75rem 0 0;border-top:1px solid rgb(58 44 34 / .2)}
.ls-values__number{color:var(--color-primary);font-size:.74rem;letter-spacing:.15em;font-weight:700}
.ls-values__grid h3{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2;margin:1.3rem 0 .9rem}
.ls-values__grid p{font-size:.91rem;line-height:1.75;color:var(--color-muted-foreground);max-width:29rem}
/* FAQ — hero adds the page title, accordion enjoys the full remaining width. */
.ls-premium-page--faq>.faq-section{background:var(--color-ivory);padding:clamp(4rem,7vw,7rem) 0;border-top:0}
.ls-premium-page--faq .faq-section__grid{display:grid;grid-template-columns:minmax(235px,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,5rem)}
.ls-premium-page--faq .faq-section__heading{font-size:clamp(1.8rem,2.4vw,2.5rem)}
.ls-premium-page--faq .faq-section__paragraph{max-width:27rem}
.ls-premium-page--faq .faq-section__list{width:100%;min-width:0}
.ls-premium-page--faq .faq-item{background:var(--color-background);border:1px solid var(--color-border);border-radius:.8rem;margin-bottom:.65rem;padding:.05rem .75rem;overflow:hidden}
.ls-premium-page--faq .faq-item__question{width:100%;padding-block:1.35rem;line-height:1.45;text-align:left}
.ls-premium-page--faq .faq-item__answer{line-height:1.75}
.ls-premium-page--faq .faq-section__card{border-radius:1.1rem}
.ls-premium-page--faq .faq-section__stack{gap:5rem}
/* Contact — enhanced context around the original, working Ajax form. */
.ls-premium-page--contact>.contact-section{padding:clamp(4rem,7vw,7rem) 0;background:var(--color-ivory);border-top:0}
.ls-premium-page--contact .contact-section__grid{gap:clamp(2rem,6vw,6rem)}
.ls-premium-page--contact .contact-form{background:var(--color-linen);border:1px solid var(--color-border);box-shadow:0 25px 70px -60px rgb(58 44 34 / .44)}
.ls-premium-page--contact .contact-section__heading{font-size:clamp(2.1rem,3.5vw,3.5rem)}
.ls-contact-assurance{padding:0 0 clamp(3rem,6vw,6rem);background:var(--color-ivory)}
.ls-contact-assurance__inner{border-top:1px solid var(--color-border);display:flex;align-items:flex-start;gap:1rem;padding-top:1.9rem}
.ls-contact-assurance__inner>span{font-size:2rem;color:var(--color-primary);line-height:1}
.ls-contact-assurance__inner>p{font-size:.89rem;line-height:1.75;max-width:45rem;color:var(--color-muted-foreground)}
/* Shop — improve hierarchy while maintaining the native WooCommerce loop. */
.ls-shop-content{padding:clamp(3.7rem,6vw,6rem) 0 clamp(4rem,7vw,7rem)}
.ls-shop-heading{margin-bottom:clamp(2.2rem,4vw,3.6rem);padding-bottom:1.6rem;border-bottom:1px solid var(--color-border)}
.ls-premium-page--shop .ls-shop-layout{grid-template-columns:minmax(215px,250px) minmax(0,1fr);gap:clamp(1.75rem,3.5vw,4.5rem)}
.ls-premium-page--shop .ls-shop-sidebar__inner{background:var(--color-linen);border:1px solid var(--color-border);border-radius:1rem;padding:1.8rem 1.25rem;top:calc(var(--header-height-scrolled,64px) + 28px)}
.ls-premium-page--shop .ls-shop-sidebar__title{font-size:1.45rem;margin-bottom:1.6rem}
.ls-premium-page--shop .ls-shop-filter-group h3{letter-spacing:.16em}
.ls-premium-page--shop .ls-shop-filter-link{padding:.65rem .85rem;border-radius:.5rem}
.ls-premium-page--shop .ls-shop-results .theme-product-grid--archive{gap:clamp(2rem,3vw,3.25rem) clamp(1rem,2vw,1.75rem)}
.ls-shop-toolbar{min-height:3.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.5rem;padding:0 0 1rem;border-bottom:1px solid var(--color-border)}
.ls-shop-toolbar__label{font-size:.9rem;font-weight:600;color:var(--color-foreground)}
.ls-shop-toolbar .woocommerce-ordering{margin:0}
.ls-shop-toolbar .orderby{background:var(--color-background);border:1px solid var(--color-border);border-radius:.5rem;color:var(--color-foreground);font-size:.84rem;padding:.65rem 2rem .65rem .75rem;max-width:100%}
/* Journal — featured real WP Post, then carefully spaced editorial cards. */
.ls-journal-content{padding:clamp(3.7rem,6vw,6rem) 0 clamp(4rem,7vw,7rem)}
.ls-journal-section-heading{margin-bottom:2.4rem}
.ls-premium-page--journal .ls-journal-topics{margin:0 0 clamp(2rem,4vw,3rem);gap:.6rem}
.ls-premium-page--journal .ls-journal-topic{background:var(--color-background);border-color:var(--color-border);padding:.68rem 1.15rem;font-weight:500}
.ls-premium-page--journal .ls-journal-topic.is-active{background:var(--color-foreground);color:var(--color-ivory);border-color:var(--color-foreground)}
.ls-journal-feature{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);overflow:hidden;min-height:400px;background:var(--color-linen);border:1px solid var(--color-border);border-radius:1.2rem;margin-bottom:clamp(2rem,4vw,3.5rem)}
.ls-journal-feature__image{display:block;overflow:hidden;min-height:340px}
.ls-journal-feature__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.ls-journal-feature__image:hover img{transform:scale(1.035)}
.ls-journal-feature__copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(2rem,4vw,4rem)}
.ls-journal-feature__copy h3{font-size:clamp(1.9rem,3.1vw,3.3rem);line-height:1.08;margin:1.15rem 0 1rem}
.ls-journal-feature__copy>p:not(.ls-mini-label){color:var(--color-muted-foreground);font-size:.96rem;line-height:1.8;margin-bottom:1.8rem}
.ls-text-link{display:inline-flex;align-items:center;gap:.9rem;color:var(--color-primary);font-weight:700;font-size:.89rem;padding-bottom:.35rem;border-bottom:1px solid currentColor;transition:gap .2s ease}
.ls-text-link:hover{gap:1.15rem}
.ls-journal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.4rem,3vw,2.5rem);margin:0}
.ls-journal-grid .journal-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:1rem;overflow:hidden;transition:transform .25s ease, box-shadow .25s ease}
.ls-journal-grid .journal-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px -30px rgb(58 44 34 / .46)}
.ls-journal-grid .journal-card__body{padding:1.4rem}
.ls-journal-pagination{margin-top:3rem}
.ls-journal-pagination .nav-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem}
.ls-journal-pagination .page-numbers{border:1px solid var(--color-border);border-radius:.45rem;min-width:2.4rem;padding:.55rem .85rem;font-size:.87rem;text-align:center}
.ls-journal-pagination .page-numbers.current{background:var(--color-primary);color:var(--color-primary-foreground);border-color:var(--color-primary)}
.ls-journal-empty{background:var(--color-linen);border-radius:1rem;padding:clamp(2rem,4vw,3.5rem);max-width:48rem}
.ls-journal-empty h3{font-size:1.7rem}
.ls-journal-empty p{color:var(--color-muted-foreground);line-height:1.75;margin:1rem 0 1.5rem}
/* Article detail retains its original post typography and reading flow. */
.ls-premium-page--article{padding-top:calc(var(--header-height,104px) + clamp(3rem,5vw,5rem));padding-bottom:clamp(4rem,7vw,7rem)}
.ls-premium-page--article .blog-single__wrap{max-width:51rem}
.ls-premium-page--article .blog-single__title{font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.05em}
.ls-premium-page--article .blog-single__content{font-size:1.05rem;line-height:1.9}
.ls-premium-page--article .blog-single__content :where(h2,h3){margin:2.5rem 0 1rem;line-height:1.2}
.ls-premium-page--article .blog-single__content :where(ul,ol){padding-left:1.5rem;list-style:revert;margin:1.5rem 0}
.ls-premium-page--article .blog-single__content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}
/* Reusable low-pressure next step (no claims about fulfilment/shipping). */
.ls-editorial-cta-wrap{padding:clamp(3.5rem,5.4vw,6rem) 0;background:var(--color-ivory)}
.ls-editorial-cta{display:flex;align-items:center;justify-content:space-between;gap:clamp(2rem,6vw,6rem);padding:clamp(2.1rem,4.5vw,4.5rem);border-radius:1.1rem;background:var(--color-foreground);color:var(--color-ivory);position:relative;overflow:hidden}
.ls-editorial-cta::after{content:"✳";position:absolute;right:9%;top:-5rem;font-size:15rem;color:rgb(255 255 255 / .04);pointer-events:none;line-height:1}
.ls-editorial-cta>div{position:relative;z-index:1}
.ls-editorial-cta__eyebrow{font-size:.74rem;color:#e6c58e;letter-spacing:.19em;text-transform:uppercase;font-weight:700;margin-bottom:1rem}
.ls-editorial-cta h2{font-size:clamp(1.8rem,3.25vw,3.3rem);letter-spacing:-.045em;line-height:1.1}
.ls-editorial-cta>div>p:last-child:not(.ls-editorial-cta__eyebrow){font-size:.95rem;color:rgb(255 255 255 / .72);line-height:1.7;margin-top:.9rem;max-width:36rem}
.ls-editorial-cta__button{position:relative;z-index:1;background:var(--color-ivory);color:var(--color-foreground);border-radius:999px;padding:1rem 1.35rem;font-size:.87rem;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;gap:1.1rem;transition:background .2s ease,transform .2s ease}
.ls-editorial-cta__button:hover{background:#e6c58e;transform:translateY(-2px)}
.ls-editorial-cta__button span{font-size:1.15rem}
.ls-premium-page .little-sigil-page-editor-content{margin-top:0;margin-bottom:clamp(3rem,6vw,6rem)}
.ls-premium-page .little-sigil-page-editor-content .entry-content{max-width:100%}
@media(max-width:1050px){
 .ls-premium-page--faq .faq-section__grid{grid-template-columns:minmax(210px,4fr) minmax(0,7fr);gap:2.5rem}
 .ls-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ls-premium-page--shop .ls-shop-layout{grid-template-columns:minmax(195px,215px) minmax(0,1fr);gap:1.5rem}
}
@media(max-width:760px){
 .ls-editorial-hero{padding:calc(var(--header-height,104px) + 2rem) 0 3.5rem}
 .ls-editorial-hero__grid{grid-template-columns:1fr;gap:2.4rem}
 .ls-editorial-hero__copy{padding:0}
 .ls-editorial-hero__title{font-size:clamp(2.65rem,9vw,4.6rem);max-width:16ch}
 .ls-breadcrumbs{margin-bottom:2rem}
 .ls-editorial-hero__visual{width:100%;aspect-ratio:1.5;max-height:420px}
 .ls-editorial-hero__visual::before{inset:.65rem -.65rem -.65rem .65rem}
 .ls-editorial-hero__visual-decoration{left:-.9rem;bottom:-1rem;font-size:4rem}
 .ls-collection-intro__row,.ls-journal-section-heading,.ls-shop-heading{display:block}
 .ls-collection-intro__row>p,.ls-journal-section-heading>p,.ls-shop-heading>p{margin-top:1rem}
 .ls-values__grid{grid-template-columns:1fr;gap:1.5rem}
 .ls-premium-page--faq .faq-section__grid{grid-template-columns:1fr;gap:2.2rem}
 .ls-premium-page--faq .faq-section__card{max-width:34rem}
 .ls-premium-page--shop .ls-shop-layout{display:block}
 .ls-premium-page--shop .ls-shop-sidebar{margin-bottom:2rem}
 .ls-premium-page--shop .ls-shop-sidebar__inner{position:static;padding:1.3rem}
 .ls-journal-feature{grid-template-columns:1fr}
 .ls-journal-feature__image{min-height:250px;max-height:380px}
 .ls-journal-feature__copy{padding:1.8rem}
 .ls-editorial-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:510px){
 .ls-editorial-hero__visual{aspect-ratio:1.32}
 .ls-journal-grid{grid-template-columns:1fr}
 .ls-shop-toolbar{align-items:flex-start;flex-direction:column}
 .ls-shop-toolbar .orderby{width:100%}
 .ls-editorial-cta{padding:2rem 1.5rem}
 .ls-premium-page--shop .ls-shop-results .theme-product-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem .7rem}
}
@media(max-width:380px){.ls-premium-page--shop .ls-shop-results .theme-product-grid--archive{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ls-premium-page *{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

/* Final accessibility and wide-screen refinements — scoped to inner pages. */
.ls-premium-page :where(a, button, select, input, textarea):focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 3px;
}
.ls-premium-page :where(.ls-editorial-hero__copy,.ls-editorial-hero__visual,.ls-shop-results,.ls-journal-content){min-width:0}
.ls-premium-page .ls-editorial-hero__title{overflow-wrap:break-word}
.ls-premium-page .ls-journal-feature__image img{display:block}
.ls-premium-page .ls-shop-filter-link.is-active{background:var(--color-secondary);color:var(--color-foreground)}
.ls-premium-page--contact .contact-form__field input,
.ls-premium-page--contact .contact-form__field textarea,
.ls-premium-page--contact .contact-form__field select{max-width:100%}
@media(min-width:1600px){
    .ls-editorial-hero{padding-top:calc(var(--header-height,104px) + 6rem);padding-bottom:7.3rem}
    .ls-editorial-hero__lead{font-size:1.15rem}
}
@media(max-width:760px){
    .ls-shop-heading,.ls-journal-section-heading,.ls-collection-intro__row{gap:1rem}
    .ls-premium-page--story .about-section__grid{grid-template-columns:1fr}
    .ls-editorial-hero__title{line-height:1.02}
}

/* ======================================================================
  1.2.9 — Client revision: compact, balanced inner-page heroes.
  Scoped to editorial pages only; homepage/cart/checkout unchanged.
  The absolute image fills its frame regardless of intrinsic image ratio.
  ====================================================================== */
.ls-premium-page .ls-editorial-hero {
    padding: calc(var(--header-height, 104px) + clamp(1.25rem, 2vw, 2rem)) 0 clamp(2.4rem, 3.5vw, 3.8rem);
}
.ls-premium-page .ls-editorial-hero__grid {
    gap: clamp(1.75rem, 4.2vw, 4.5rem);
    align-items: center;
}
.ls-premium-page .ls-editorial-hero__copy { padding-block: .3rem; }
.ls-premium-page .ls-breadcrumbs { margin-bottom: clamp(1.1rem, 2vw, 1.65rem); }
.ls-premium-page .ls-editorial-hero__eyebrow { margin-bottom: .7rem; }
.ls-premium-page .ls-editorial-hero__title {
    font-size: clamp(2.55rem, 4vw, 4.1rem);
    font-weight: 500;
    line-height: 1.06;
    letter-spacing: -.045em;
    max-width: 18ch;
    overflow-wrap: break-word;
}
.ls-premium-page .ls-editorial-hero__lead {
    font-size: clamp(.95rem, 1.03vw, 1.08rem);
    line-height: 1.65;
    margin-top: clamp(.9rem, 1.7vw, 1.45rem);
    max-width: 36rem;
}
.ls-premium-page .ls-editorial-hero__line { margin: 1.35rem 0 .8rem; }
.ls-premium-page .ls-editorial-hero__visual,
.ls-premium-page .ls-editorial-hero--journal .ls-editorial-hero__visual,
.ls-premium-page .ls-editorial-hero--shop .ls-editorial-hero__visual,
.ls-premium-page .ls-editorial-hero--contact .ls-editorial-hero__visual {
    height: clamp(270px, 27vw, 365px);
    aspect-ratio: auto;
    width: 100%;
    isolation: isolate;
}
.ls-premium-page .ls-editorial-hero__visual > img {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    border-radius: inherit;
}
.ls-premium-page .ls-editorial-hero__visual-decoration { z-index: 2; }
.ls-premium-page--article .blog-single__title {
    font-size: clamp(2.25rem, 3.8vw, 3.7rem);
    line-height: 1.13;
    font-weight: 500;
    letter-spacing: -.038em;
}
.ls-premium-page--article {
    padding-top: calc(var(--header-height, 104px) + clamp(1.7rem, 3vw, 2.8rem));
}
@media (max-width: 760px) {
    .ls-premium-page .ls-editorial-hero { padding: calc(var(--header-height, 104px) + 1.1rem) 0 2.9rem; }
    .ls-premium-page .ls-editorial-hero__grid { grid-template-columns: minmax(0,1fr); gap: 1.9rem; }
    .ls-premium-page .ls-editorial-hero__title { font-size: clamp(2.15rem, 7.5vw, 3.2rem); max-width: 20ch; }
    .ls-premium-page .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--journal .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--shop .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--contact .ls-editorial-hero__visual { height: clamp(230px, 55vw, 340px); }
    .ls-premium-page--article .blog-single__title { font-size: clamp(2rem, 7vw, 2.85rem); }
}
@media (max-width: 420px) {
    .ls-premium-page .ls-editorial-hero__title { font-size: clamp(2rem, 8.5vw, 2.6rem); }
    .ls-premium-page .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--journal .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--shop .ls-editorial-hero__visual,
    .ls-premium-page .ls-editorial-hero--contact .ls-editorial-hero__visual { height: 220px; }
}

/* 1.3.0 final editorial alignment, client-requested compact headings.
   Does not affect front-page hero, WooCommerce cart/checkout or header. */
.ls-premium-page .ls-editorial-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,4.5vw,4.4rem)}
.ls-premium-page .ls-editorial-hero{padding-bottom:clamp(2.3rem,3.1vw,3.5rem)}
.ls-premium-page .ls-editorial-hero__title{font-size:clamp(2.45rem,3.65vw,3.95rem);font-weight:500;line-height:1.09;max-width:19ch}
.ls-premium-page .ls-editorial-hero__visual{max-height:360px;overflow:visible}
.ls-premium-page .ls-editorial-hero__visual>img{height:100%;width:100%;object-fit:cover;object-position:center;border-radius:inherit;box-shadow:none}
.ls-premium-page .ls-editorial-hero__visual::before{z-index:-1}
.ls-premium-page--journal .ls-editorial-hero__title{max-width:18ch}
.ls-footer-policies__list{display:flex;gap:.55rem 1.35rem;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.ls-footer-policies__list li{list-style:none;margin:0;padding:0}
.ls-footer-policies__list a{font-size:.77rem;text-decoration:none;color:inherit;opacity:.78}
.ls-footer-policies__list a:hover{text-decoration:underline;opacity:1}
@media(max-width:800px){
  .ls-premium-page .ls-editorial-hero__grid{grid-template-columns:minmax(0,1fr);gap:1.6rem}
  .ls-premium-page .ls-editorial-hero__title{font-size:clamp(2.1rem,7vw,3rem)}
  .ls-premium-page .ls-editorial-hero__visual{max-height:310px}
  .ls-footer-policies__list{justify-content:center}
}

/* ======================================================================
   v1.3.1 — Editorial hero image sizing regression fix.
   The base theme's global img:not(...) rule forced height:auto on hero
   photos. The cover-img class excludes these photos from that rule; this
   scoped fallback ensures they fill their already-sized frames even if
   CSS aggregation changes load order. Decorative offset border retained.
   ====================================================================== */
.ls-premium-page figure.ls-editorial-hero__visual > img.ls-editorial-hero__image {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
    border-radius: inherit;
}

/* ======================================================================
   v1.3.2 — align editorial hero photo with the EXISTING inset gold frame.

   The decorative ::before frame is offset 1rem (desktop) / .65rem
   (mobile). Move only the photo to match its inner edge. Keep its full
   width/height: don't shrink the photo or reposition the star/frame.
   This rule lives in the theme stylesheet to avoid Customizer/WP Rocket
   stylesheet ordering conflicts.
   ====================================================================== */
.ls-premium-page figure.ls-editorial-hero__visual {
    overflow: visible;
}
.ls-premium-page figure.ls-editorial-hero__visual > img.cover-img.ls-editorial-hero__image {
    display: block;
    position: absolute;
    inset: auto !important;
    top: calc(1rem + 1px) !important;
    left: calc(1rem + 1px) !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: cover;
    border-radius: inherit;
    transform: none !important;
}
@media (max-width: 760px) {
    .ls-premium-page figure.ls-editorial-hero__visual > img.cover-img.ls-editorial-hero__image {
        top: calc(.65rem + 1px) !important;
        left: calc(.65rem + 1px) !important;
    }
}
