/* Little Red George Design System v1.0.2
   Central compatibility layer for historical Little Red Elementor plugins.
   Component source owns full-bleed hero roots; this system owns the shared inner container width.
   Do not normalize floating photo scenes, slideshow track widths, image object-fit, or interactive arrows. */

/* 1. Shared content alignment: max-width INCLUDES 32/24/16 px inner gutters.
   All original plugins keep their unique vertical layout. */
:where(body.lrgds-site) :where(
    .lrwg-container,
    .lrgvs-inner,
    .lrgpc-inner,
    .lrpg-container,
    .lrdhc-inner,
    .lrgp-content-container,
    .lrg-story__inner,
    .lrvw-hotspot-container,
    .lrdh-wrap,
    .lrg-design-page .lrdp-wrap,
    .lrgh-inner,
    .lrgpj-inner,
    .lrgda-container,
    .lrg-shared-container
){
    width:100%;
    max-width:var(--lrgds-max-width);
    padding-inline:var(--lrgds-pad-desktop);
    margin-inline:auto;
    box-sizing:border-box;
    min-width:0;
}
/* The old sections placed their gutters OUTSIDE max-width. Move these gutters
   INTO the inner content container instead, preventing a 32px misalignment. */
:where(body.lrgds-site) :where(
    .lrwg-section,
    .lrgvs-section,
    .lrgpc,
    .lrpg,
    .lrdhc-root,
    .lrgp-showcase,
    .lrg-story,
    .lrvw-hotspot-section,
    .lrg-design-home
){
    padding-left:0;
    padding-right:0;
}
/* Standard Elementor boxed layout: only its maximum width changes.
   In particular, header/footer containers keep their theme layout. */
body.lrgds-site.lrgds-elementor-boxed .elementor:not(.elementor-location-header):not(.elementor-location-footer):not(.elementor-location-header .elementor):not(.elementor-location-footer .elementor) :is(.e-con.e-con-boxed > .e-con-inner, .elementor-section.elementor-section-boxed > .elementor-container){
    max-width:var(--lrgds-max-width);
}

/* 2. Typography. The original responsive font sizes still work. */
body.lrgds-site.lrgds-typography{
    --lrg-font-display:Georgia,'Times New Roman',serif;
    --lrg-font-body:Arial,Helvetica,sans-serif;
    font-family:var(--lrg-font-body);
}
:where(body.lrgds-site.lrgds-typography) :where(
    .lrwg-section,.lrga-about,.lrgvs-section,.lrgpc,.lrpg,.lrdhc-root,
    .lrgp-showcase,.lrg-story,.lrvw-hotspot-section,.lrg-design-home,
    .lrg-design-page
){font-family:var(--lrg-font-body)}
:where(body.lrgds-site.lrgds-typography) :where(
    .lrwg-main-heading,.lrga-heading,.lrga-hero-title,
    .lrgvs-heading,.lrgvs-stage-title,
    .lrgpc-heading,.lrgpc-card-title,
    .lrpg-title,.lrpg-section-line h2,.lrpg-category-name,.lrpg-product-title,
    .lrdhc-heading,.lrdhc-cases-title,.lrdhc-case-meta h4,
    .lrgp-headingrow h2,.lrgp-bottomline,
    .lrg-story__heading,
    .lrvw-hero-title,.lrvw-hotspot-title,
    .lrg-design-home h2,.lrg-design-home .lrdh-summary h3,
    .lrg-design-page h2,.lrg-design-page .lrdp-hero h1,
    .lrg-design-page .lrdp-panel h3
){font-family:var(--lrg-font-display)}
/* Shared small labels use their existing letterspacing and casing. */
:where(body.lrgds-site.lrgds-typography) :where(
    .lrwg-eyebrow,.lrga-eyebrow,.lrgpc-kicker,.lrpg-kicker,
    .lrdhc-eyebrow,.lrgvs-eyebrow,.lrgp-topline
){font-family:var(--lrg-font-body)}

/* 3. Brand palette. Scope to custom Little Red modules, not WooCommerce
   thumbnails, popups, image backgrounds, or design case photographs. */
:where(body.lrgds-site.lrgds-colors) :where(.lrwg-section){
    --lrwg-bg:var(--lrgds-bg);
    --lrwg-ink:var(--lrgds-ink);
    --lrwg-muted:var(--lrgds-muted);
    --lrwg-accent:var(--lrgds-accent);
    --lrwg-line:var(--lrgds-line);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrgvs-section){
    --lrgvs-bg:var(--lrgds-bg);
    --lrgvs-ink:var(--lrgds-ink);
    --lrgvs-muted:var(--lrgds-muted);
    --lrgvs-accent:var(--lrgds-accent);
    --lrgvs-accenthover:var(--lrgds-accent-hover);
    --lrgvs-line:var(--lrgds-line);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrgpc){
    --lrgpc-bg:var(--lrgds-bg);
    --lrgpc-accent:var(--lrgds-accent);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrgp-showcase){
    --lrgp-bg:var(--lrgds-bg);
    --lrgp-ink:var(--lrgds-ink);
    --lrgp-soft:var(--lrgds-muted);
    --lrgp-accent:var(--lrgds-accent);
    --lrgp-stroke:var(--lrgds-line);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrdhc-root){
    --lrdhc-bg:var(--lrgds-bg);
    --lrdhc-ink:var(--lrgds-ink);
    --lrdhc-soft:var(--lrgds-muted);
    --lrdhc-accent:var(--lrgds-accent);
    --lrdhc-stroke:var(--lrgds-line);
    --lrdhc-view-all-bg:var(--lrgds-accent);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrg-story){
    --lrg-cream:var(--lrgds-bg);
    --lrg-ink:var(--lrgds-ink);
    --lrg-muted:var(--lrgds-muted);
    --lrg-red:var(--lrgds-accent);
    --lrg-border:var(--lrgds-line);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrg-design-home),
:where(body.lrgds-site.lrgds-colors) :where(.lrg-design-page){
    --red:var(--lrgds-accent);
    --line:var(--lrgds-line);
    --ink:var(--lrgds-ink);
    --paper:var(--lrgds-bg);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrpg){
    --lrpg-accent:var(--lrgds-accent);
    background:var(--lrgds-bg);
}
:where(body.lrgds-site.lrgds-colors) :where(.lrvw-hotspot-section){
    background:var(--lrgds-bg);
}
/* Text-based buttons only. Circular gallery arrows and category pills are
   intentionally excluded to respect the website's functional-arrow rule. */
:where(body.lrgds-site) :where(.lrwg-link,.lrga-button,.lrgvs-primary,.lrdp-cta,.lrdh-link,.lrgpc-all-link,.lrdhc-view-all,.lrfdi-btn){
    border-radius:var(--lrgds-radius);
}

/* 4. Responsive gutters: no layout reflow, no slideshow track changes. */
@media(max-width:1024px){
    :where(body.lrgds-site) :where(
        .lrwg-container,.lrgvs-inner,.lrgpc-inner,.lrpg-container,
        .lrdhc-inner,.lrgp-content-container,.lrg-story__inner,
        .lrvw-hotspot-container,.lrdh-wrap,.lrg-design-page .lrdp-wrap,
        .lrgh-inner,.lrgpj-inner,.lrgda-container,.lrg-shared-container
    ){padding-inline:var(--lrgds-pad-tablet)}
}
@media(max-width:767px){
    :where(body.lrgds-site) :where(
        .lrwg-container,.lrgvs-inner,.lrgpc-inner,.lrpg-container,
        .lrdhc-inner,.lrgp-content-container,.lrg-story__inner,
        .lrvw-hotspot-container,.lrdh-wrap,.lrg-design-page .lrdp-wrap,
        .lrgh-inner,.lrgpj-inner,.lrgda-container,.lrg-shared-container
    ){padding-inline:var(--lrgds-pad-mobile)}
}
