/* v1.0.1 — Site Essentials owns its page hero. Suppress common theme/page-title shells on these routes. */
body.flse-page .entry-header,
body.flse-page .page-header,
body.flse-page .wp-block-post-title,
body.flse-page .breadcrumb,
body.flse-page .breadcrumbs,
body.flse-page [class*="breadcrumb"]{display:none!important}
/* Fishing Loons Site Essentials v1.0.0 */
.flse{--blue:var(--fl-blue,#99c0df);--cream:var(--fl-cream,#eee7d5);--navy:#06141d;--panel:#081923;--muted:#8ca2ae;--line:rgba(153,192,223,.18);width:min(1120px,calc(100% - 44px));margin:0 auto;padding:clamp(24px,3vw,40px) 0 100px;color:var(--cream);font-family:Barlow,Inter,system-ui,sans-serif}.flse *{box-sizing:border-box}.flse a{color:var(--blue);text-decoration:none}.flse-hero{padding:0 0 36px;border-bottom:1px solid var(--line)}.flse-hero>span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.2em}.flse-hero h1{margin:10px 0 14px;font:italic 500 clamp(46px,7vw,82px)/.98 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.045em;text-transform:uppercase}.flse-hero p{max-width:760px;margin:0;color:#a9bbc4;font-size:16px;line-height:1.65}.flse-hero small{display:block;margin-top:18px;color:#65808e;font-size:9px;font-weight:800;letter-spacing:.14em}.flse-body{padding-top:12px}.flse-section{padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:120px}.flse-section h2,.flse-map h2{margin:0 0 13px;color:var(--cream);font:500 25px/1.08 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.05em;text-transform:uppercase}.flse-section p,.flse-note{max-width:900px;margin:0 0 12px;color:#9eb0b9;font-size:15px;line-height:1.78}.flse-section p:last-child{margin-bottom:0}.flse-section strong{color:#cbd6db}.flse-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}.flse-map>section{min-width:0}.flse-links{border-top:1px solid var(--line)}.flse-links a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:52px;padding:0 13px;border-bottom:1px solid rgba(153,192,223,.12);color:#aebdc4;background:#071721;transition:.18s ease}.flse-links a:hover,.flse-links a:focus-visible{background:#0a202c;color:var(--cream);border-color:rgba(153,192,223,.42)}.flse-links span{font:700 14px/1.1 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.05em;text-transform:uppercase}.flse-links i{font-style:normal;color:var(--blue)}.flse-note{padding:18px;border:1px solid var(--line);background:#071721}.flse :focus-visible{outline:2px solid var(--blue);outline-offset:3px}@media(max-width:780px){.flse{width:calc(100% - 28px);padding-top:24px}.flse-map{grid-template-columns:1fr}.flse-hero h1{font-size:50px}.flse-section{padding:25px 0}.flse-section p,.flse-note{font-size:14px}}

/* v1.0.4 — Legal/sitemap pages start directly below the global header + Loon Wire.
   Neutralize theme content-shell top spacing only on Site Essentials routes. */
body.flse-page .site-main,
body.flse-page main.site-main,
body.flse-page .content-area,
body.flse-page .site-content,
body.flse-page article.page,
body.flse-page .entry-content{margin-top:0!important;padding-top:0!important}
body.flse-page .flse{margin-top:0!important;padding-top:clamp(24px,3vw,40px)!important}
@media(max-width:780px){body.flse-page .flse{padding-top:24px!important}}

/* v1.0.5 — Legal pages: hard-reset inherited vertical centering/viewport spacers. */
body.flse-page.page-template-default,
body.flse-page { --flse-top-gap: 36px; }
body.flse-page .site,
body.flse-page #page,
body.flse-page .site-content,
body.flse-page #content,
body.flse-page .content-area,
body.flse-page #primary,
body.flse-page .site-main,
body.flse-page main.site-main,
body.flse-page article.page,
body.flse-page article.type-page,
body.flse-page .entry-content {
  min-height:0!important;
  height:auto!important;
  align-items:stretch!important;
  align-content:start!important;
  justify-content:flex-start!important;
  place-content:start!important;
  margin-top:0!important;
  padding-top:0!important;
}
body.flse-page article.page,
body.flse-page article.type-page,
body.flse-page .entry-content { transform:none!important; }
body.flse-page .entry-content:before,
body.flse-page .entry-content:after { min-height:0!important; }
body.flse-page .flse {
  margin-top:0!important;
  padding-top:var(--flse-top-gap)!important;
  min-height:0!important;
  transform:none!important;
}
@media (max-width:780px){
  body.flse-page { --flse-top-gap: 22px; }
}
