/* Phase 45.47.84 — homepage edge-to-edge responsive shell authority */
html:has(body.lfp454784-home-edge),
body.lfp454784-home-edge{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow-x:clip!important;
}

/* Remove any final theme/block-editor reading rails and blank template spacing on Home. */
body.lfp454784-home-edge :is(
  #page,.site,.site-content,#content,.content-area,#primary,main.site-main,main#primary,
  article,.hentry,.entry-content,.wp-block-post-content,.wp-site-blocks,
  .is-layout-constrained,.is-layout-flow
){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
body.lfp454784-home-edge :is(.entry-header,.page-header,.wp-block-post-title){display:none!important}
body.lfp454784-home-edge :is(.site-main,main,#primary,.entry-content,.wp-block-post-content){
  margin-top:0!important;
  padding-top:0!important;
}

/* Block themes can leave a template-part/header spacer even when older chrome is hidden. */
body.lfp454784-home-edge.lfp45441-hide-theme-chrome > .wp-site-blocks > :is(header,.wp-block-template-part:first-child),
body.lfp454784-home-edge.lfp45441-hide-theme-chrome .wp-site-blocks > header.wp-block-template-part,
body.lfp454784-home-edge.lfp45441-hide-theme-chrome :is(header.site-header,#masthead,.site-header){
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

/* The entire SourceFlora Home shell is a true viewport band, independent of its theme parent. */
body.lfp454784-home-edge .lfp-phase4516-page-chrome{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.lfp454784-home-edge .lfp-front-wrap,
body.lfp454784-home-edge .lfp-front-wrap.lfp-modern-ui,
body.lfp454784-home-edge .lfp-front-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}

/* Header + footer background and structure run edge-to-edge. */
body.lfp454784-home-edge .lfp45441-header,
body.lfp454784-home-edge .lfp45441-footer{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:0!important;
  margin-right:0!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
}
body.lfp454784-home-edge .lfp45441-header{top:0!important}
body.admin-bar.lfp454784-home-edge .lfp45441-header{top:32px!important}
body.lfp454784-home-edge .lfp45441-header-inner,
body.lfp454784-home-edge .lfp45441-footer-inner,
body.lfp454784-home-edge .lfp45441-footer-bottom{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  box-sizing:border-box!important;
}
body.lfp454784-home-edge .lfp45441-header-inner{
  padding-left:clamp(14px,2.2vw,42px)!important;
  padding-right:clamp(14px,2.2vw,42px)!important;
}
body.lfp454784-home-edge .lfp45441-footer-inner,
body.lfp454784-home-edge .lfp45441-footer-bottom{
  padding-left:clamp(18px,3.2vw,56px)!important;
  padding-right:clamp(18px,3.2vw,56px)!important;
}

/* Home becomes full-width bands instead of a smaller card floating inside a page canvas. */
body.lfp454784-home-edge .lfp779-home-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  display:grid!important;
}
body.lfp454784-home-edge :is(
  .lfp779-hero,.lfp779-stat-strip,.lfp779-section,.lfp779-source-banner,
  .lfp779-journey,.lfp779-final-cta
){
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  box-sizing:border-box!important;
}

/* Hero fills the viewport width; content still gets deliberate readable inner spacing. */
body.lfp454784-home-edge .lfp779-hero{
  min-height:clamp(560px,72vh,780px)!important;
  padding-left:clamp(24px,6vw,104px)!important;
  padding-right:clamp(24px,6vw,104px)!important;
  padding-top:clamp(42px,5vw,78px)!important;
  padding-bottom:clamp(42px,5vw,78px)!important;
}
body.lfp454784-home-edge .lfp779-hero-copy{max-width:940px!important}
body.lfp454784-home-edge .lfp779-hero-visual{max-width:760px!important;justify-self:end!important;width:100%!important}

/* Full-width homepage sections with consistent internal alignment. */
body.lfp454784-home-edge .lfp779-stat-strip{
  padding-left:clamp(18px,5vw,82px)!important;
  padding-right:clamp(18px,5vw,82px)!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}
body.lfp454784-home-edge :is(.lfp779-section,.lfp779-journey){
  padding:clamp(28px,4.4vw,68px) clamp(18px,5vw,82px)!important;
}
body.lfp454784-home-edge :is(.lfp779-source-banner,.lfp779-final-cta){
  padding:clamp(28px,4.2vw,64px) clamp(18px,5vw,82px)!important;
}
body.lfp454784-home-edge .lfp779-section + .lfp779-section,
body.lfp454784-home-edge .lfp779-section + .lfp779-source-banner,
body.lfp454784-home-edge .lfp779-source-banner + .lfp779-section,
body.lfp454784-home-edge .lfp779-section + .lfp779-journey,
body.lfp454784-home-edge .lfp779-journey + .lfp779-section{
  border-top:1px solid rgba(190,149,49,.18)!important;
}

/* Keep grids expansive but readable on very wide desktop. */
body.lfp454784-home-edge :is(
  .lfp779-category-grid,.lfp779-product-grid,.lfp779-seller-grid,
  .lfp779-article-grid,.lfp779-journey-grid
){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
@media (min-width:1500px){
  body.lfp454784-home-edge .lfp779-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  body.lfp454784-home-edge .lfp779-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Tablet: edge-to-edge bands, smaller content padding. */
@media (max-width:1080px){
  body.lfp454784-home-edge .lfp779-hero{
    min-height:0!important;
    padding:38px 24px!important;
  }
  body.lfp454784-home-edge :is(.lfp779-section,.lfp779-journey){padding:28px 20px!important}
  body.lfp454784-home-edge :is(.lfp779-source-banner,.lfp779-final-cta){padding:26px 20px!important}
  body.lfp454784-home-edge .lfp779-stat-strip{padding:14px 18px!important}
}

/* Mobile: genuinely end-to-end. No extra page/card gutter around the main bands. */
@media (max-width:760px){
  body.lfp454784-home-edge :is(
    #page,.site,.site-content,#content,.content-area,#primary,main.site-main,main#primary,
    article,.entry-content,.wp-block-post-content,.wp-site-blocks,
    .lfp-phase4516-page-chrome,.lfp-front-wrap,.lfp-front-inner,.lfp779-home-shell
  ){
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.lfp454784-home-edge .lfp-phase4516-page-chrome{
    left:auto!important;
    transform:none!important;
  }
  body.lfp454784-home-edge .lfp45441-header-inner{
    width:100%!important;
    padding:7px 10px!important;
  }
  body.lfp454784-home-edge .lfp779-hero{
    width:100%!important;
    margin:0!important;
    padding:26px 14px 24px!important;
    border-radius:0!important;
    min-height:0!important;
  }
  body.lfp454784-home-edge .lfp779-hero h1{font-size:clamp(36px,11.5vw,54px)!important}
  body.lfp454784-home-edge .lfp779-hero p{font-size:14px!important;line-height:1.52!important}
  body.lfp454784-home-edge .lfp779-hero-actions{gap:8px!important}
  body.lfp454784-home-edge .lfp779-hero-visual{
    width:100%!important;
    max-width:none!important;
    min-height:270px!important;
    justify-self:stretch!important;
  }
  body.lfp454784-home-edge .lfp779-stat-strip{
    padding:12px 10px!important;
    gap:8px!important;
  }
  body.lfp454784-home-edge :is(.lfp779-section,.lfp779-journey){
    padding:22px 12px!important;
    border-radius:0!important;
  }
  body.lfp454784-home-edge :is(.lfp779-source-banner,.lfp779-final-cta){
    padding:22px 14px!important;
    border-radius:0!important;
  }
  body.lfp454784-home-edge :is(
    .lfp779-category-grid,.lfp779-product-grid,.lfp779-seller-grid,
    .lfp779-article-grid,.lfp779-journey-grid
  ){
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.lfp454784-home-edge .lfp45441-footer{margin-top:0!important}
  body.lfp454784-home-edge .lfp45441-footer-inner,
  body.lfp454784-home-edge .lfp45441-footer-bottom{
    width:100%!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

@media (max-width:430px){
  body.lfp454784-home-edge .lfp779-hero{padding-left:12px!important;padding-right:12px!important}
  body.lfp454784-home-edge :is(.lfp779-section,.lfp779-journey){padding-left:10px!important;padding-right:10px!important}
  body.lfp454784-home-edge .lfp779-stat-strip{padding-left:8px!important;padding-right:8px!important}
}
