/* Lakeside SEO V3.4 Visual Cleanup
   Purpose: keep the official logo from V3.3, but calm the palette down and remove the harsh black/aqua patchwork.
   This file loads last and intentionally overrides V3/V3.3 styles without changing site logic. */
:root{
  --ls-pine:#10291f;
  --ls-pine-2:#0a1c15;
  --ls-green:#1f6a3a;
  --ls-green-2:#2d7b3d;
  --ls-grass:#8cc63f;
  --ls-sky:#7bcfe3;
  --ls-sky-soft:#edf9fc;
  --ls-leaf:#eef7ef;
  --ls-cream:#fbfcf7;
  --ls-white:#ffffff;
  --ls-ink:#111a15;
  --ls-muted:#5b6b62;
  --ls-line:#dce7df;
  --ls-shadow:0 14px 34px rgba(16,41,31,.10);
  --ls-shadow-soft:0 8px 24px rgba(16,41,31,.07);

  --green:var(--ls-green);
  --green-2:var(--ls-pine);
  --green-3:var(--ls-leaf);
  --gold:var(--ls-grass);
  --ink:var(--ls-ink);
  --muted:var(--ls-muted);
  --line:var(--ls-line);
  --bg:var(--ls-cream);
  --card:var(--ls-white);
  --shadow:var(--ls-shadow-soft);
}
html,body{
  background:var(--ls-cream)!important;
  color:var(--ls-ink)!important;
}
body{
  background:
    radial-gradient(circle at 6% 3%,rgba(123,207,227,.10),transparent 24rem),
    linear-gradient(180deg,#fff 0%,var(--ls-cream) 44%,#f5faf6 100%)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
/* Remove the heavy decorative shapes that made mobile sections look black/aqua and inconsistent. */
body:before,body:after,
.footer:before,.footer:after,
.footer .container:before,.footer .container:after,
.footer-grid:before,.footer-grid:after,
.section:before,.section:after,
.hero:before,.hero:after,
.page-hero:before,.page-hero:after{
  content:none!important;
  display:none!important;
}

/* Header and logo */
.topbar,.instant-quote-page .topbar{
  background:linear-gradient(90deg,var(--ls-pine-2) 0%,var(--ls-pine) 62%,#17432d 100%)!important;
  border-bottom:3px solid rgba(140,198,63,.70)!important;
  color:#fff!important;
}
.topbar a,.instant-quote-page .topbar a{color:#fff!important;text-decoration:none!important;}
.topbar-inner{font-size:.92rem;line-height:1.45;}
.site-header,.instant-quote-page .site-header{
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid var(--ls-line)!important;
  box-shadow:0 8px 24px rgba(16,41,31,.06)!important;
  z-index:100!important;
}
.nav,.instant-quote-page .site-header .nav{min-height:80px!important;}
.brand,.instant-quote-page .site-header .brand,.footer .brand{gap:12px!important;}
.brand strong,.instant-quote-page .site-header .brand strong{
  color:var(--ls-ink)!important;
  font-weight:900!important;
  letter-spacing:-.03em!important;
}
.brand em,.instant-quote-page .site-header .brand em{color:var(--ls-muted)!important;}
.brand-mark,.instant-quote-page .site-header .brand-mark{
  width:82px!important;
  height:56px!important;
  min-width:82px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.brand-mark.brand-logo img,.instant-quote-page .site-header .brand-mark.brand-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  filter:drop-shadow(0 3px 6px rgba(16,41,31,.16));
}
.brand-mark:not(.brand-logo){
  background-image:url('/assets/img/lakeside-logo.png')!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
}
.menu a,.instant-quote-page .site-header .menu a{color:var(--ls-ink)!important;}
.menu a[aria-current=page],.instant-quote-page .site-header .menu a[aria-current=page]{color:var(--ls-green)!important;}
.menu-toggle,.instant-quote-page .site-header .menu-toggle{
  background:linear-gradient(180deg,#fff 0%,#edf6f0 100%)!important;
  border:1px solid var(--ls-line)!important;
  color:var(--ls-pine)!important;
  box-shadow:0 6px 18px rgba(16,41,31,.08)!important;
}
@media(max-width:980px){
  .menu,.instant-quote-page .site-header .menu{
    background:#fff!important;
    border:1px solid var(--ls-line)!important;
    box-shadow:0 24px 60px rgba(16,41,31,.20)!important;
    z-index:150!important;
  }
  .menu a,.instant-quote-page .site-header .menu a{color:var(--ls-ink)!important;}
  .menu a.btn-primary,.instant-quote-page .site-header .menu a.btn-primary{
    color:#fff!important;
    width:100%!important;
    align-self:stretch!important;
    text-align:center!important;
  }
}

/* Consistent surfaces */
.hero,.page-hero{
  background:
    radial-gradient(circle at 12% 18%,rgba(123,207,227,.20),transparent 24rem),
    radial-gradient(circle at 90% 4%,rgba(140,198,63,.16),transparent 18rem),
    linear-gradient(135deg,#f8fffb 0%,#ffffff 56%,#eff8f2 100%)!important;
  border-bottom:1px solid var(--ls-line)!important;
  color:var(--ls-ink)!important;
}
.section{
  background:#fff!important;
  color:var(--ls-ink)!important;
}
.section.alt{
  background:linear-gradient(180deg,#f1f8f3 0%,#f8fcfa 100%)!important;
  color:var(--ls-ink)!important;
}
.section.dark{
  background:linear-gradient(135deg,var(--ls-pine) 0%,#17442d 100%)!important;
  color:#fff!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.section.dark h1,.section.dark h2,.section.dark h3,.section.dark h4,
.section.dark p,.section.dark li,.section.dark .lead,.section.dark .muted,
.section.dark .section-head,.section.dark a:not(.btn){color:#f3fff7!important;}
.section.dark .eyebrow{color:#cdebb8!important;}
.section.dark .btn-secondary{background:#fff!important;color:var(--ls-green)!important;border-color:#fff!important;}

h1,h2,h3,h4{color:var(--ls-ink)!important;}
.page-hero h1,.hero h1,.section:not(.dark) h2,.section:not(.dark) h3{color:var(--ls-ink)!important;}
.lead,.muted,.fine{color:var(--ls-muted)!important;}
.eyebrow{color:var(--ls-green)!important;letter-spacing:.17em!important;}

.card,.panel,.hero-card,.faq-list details,.table,.iq-card-header,.instant-quote-page .panel{
  background:#fff!important;
  color:var(--ls-ink)!important;
  border:1px solid var(--ls-line)!important;
  box-shadow:var(--ls-shadow-soft)!important;
}
.card p,.panel p,.hero-card p,.faq-list p,.table td{color:var(--ls-ink)!important;}
.card .muted,.panel .muted,.hero-card .muted{color:var(--ls-muted)!important;}
.card.highlight{border-color:rgba(140,198,63,.60)!important;box-shadow:0 16px 34px rgba(31,106,58,.12)!important;}
.mini-item{
  background:linear-gradient(180deg,#f8fffb 0%,var(--ls-sky-soft) 100%)!important;
  border:1px solid var(--ls-line)!important;
  color:var(--ls-ink)!important;
}
.pill,.area-links a,.badge{
  background:#fff!important;
  color:var(--ls-green)!important;
  border:1px solid var(--ls-line)!important;
}
.badge{background:linear-gradient(180deg,#f7fff7 0%,var(--ls-sky-soft) 100%)!important;}
.price{color:var(--ls-green)!important;}
.notice{
  background:#fffdf4!important;
  border:1px solid #dbe8bf!important;
  color:var(--ls-pine)!important;
}
.check-list li:before{color:var(--ls-green)!important;}

/* Buttons */
.btn,button,.instant-quote-page button{
  border-radius:999px!important;
  font-weight:850!important;
  text-decoration:none!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease!important;
}
.btn:hover,button:hover,.instant-quote-page button:hover{transform:translateY(-1px);text-decoration:none!important;}
.btn-primary,.menu a.btn-primary,.instant-quote-page .site-header .menu a.btn-primary,
.instant-quote-page button:not(.menu-toggle):not(.ghost){
  background:linear-gradient(180deg,var(--ls-green-2) 0%,var(--ls-green) 100%)!important;
  border:1px solid var(--ls-green)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(31,106,58,.20)!important;
}
.btn-secondary,.instant-quote-page button.ghost:not(.menu-toggle){
  background:#fff!important;
  color:var(--ls-green)!important;
  border:1px solid var(--ls-green)!important;
  box-shadow:none!important;
}
.btn-soft{
  background:linear-gradient(180deg,#fff 0%,var(--ls-leaf) 100%)!important;
  color:var(--ls-green)!important;
  border:1px solid var(--ls-line)!important;
}
.quote-strip{
  background:linear-gradient(135deg,var(--ls-green) 0%,var(--ls-pine) 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 18px 42px rgba(16,41,31,.16)!important;
}
.quote-strip h1,.quote-strip h2,.quote-strip h3,.quote-strip p,.quote-strip .eyebrow{color:#fff!important;}
.quote-strip .btn-secondary{background:#fff!important;color:var(--ls-green)!important;border-color:#fff!important;}

/* Forms */
.form input,.form select,.form textarea,
.instant-quote-page input,.instant-quote-page select,.instant-quote-page textarea{
  background:#fff!important;
  border:1px solid var(--ls-line)!important;
  color:var(--ls-ink)!important;
  box-shadow:none!important;
}
.form input:focus,.form select:focus,.form textarea:focus,
.instant-quote-page input:focus,.instant-quote-page select:focus,.instant-quote-page textarea:focus{
  border-color:rgba(31,106,58,.55)!important;
  box-shadow:0 0 0 4px rgba(123,207,227,.22)!important;
  outline:none!important;
}
input[type="radio"],input[type="checkbox"]{accent-color:var(--ls-green)!important;}

/* Footer: remove the big aqua sweep and make it a clean Lakeside footer. */
.footer{
  background:linear-gradient(180deg,var(--ls-pine) 0%,var(--ls-pine-2) 100%)!important;
  color:#e8f3ed!important;
  border-top:4px solid rgba(140,198,63,.75)!important;
  overflow:hidden!important;
}
.footer,.footer *{text-shadow:none!important;}
.footer h1,.footer h2,.footer h3,.footer h4,.footer p,.footer li{color:#e8f3ed!important;}
.footer a{color:#fff!important;text-decoration:none!important;}
.footer a:hover{text-decoration:underline!important;}
.footer .fine{color:#b7cbc0!important;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.13)!important;}
.footer .brand strong{color:#fff!important;}
.footer .brand em{color:#d7e7de!important;}
.footer .brand-mark{width:104px!important;height:70px!important;min-width:104px!important;background:transparent!important;}
.footer .brand-mark img{object-fit:contain!important;}

/* Instant Quote consistency */
.instant-quote-page{
  --iq-blue:var(--ls-pine)!important;
  --iq-blue-2:var(--ls-green)!important;
  --iq-card:#fff!important;
  --iq-text:var(--ls-ink)!important;
  --iq-muted:var(--ls-muted)!important;
  --iq-border:var(--ls-line)!important;
  background:linear-gradient(180deg,#fff 0%,#f5faf6 100%)!important;
  color:var(--ls-ink)!important;
}
.instant-quote-page .iq-hero{
  background:linear-gradient(135deg,var(--ls-pine) 0%,#17442d 100%)!important;
  border-bottom:4px solid rgba(140,198,63,.70)!important;
  color:#fff!important;
}
.instant-quote-page .iq-hero h1,.instant-quote-page .iq-hero p{color:#fff!important;}
.instant-quote-page .title,.instant-quote-page .panel h2,.instant-quote-page label{color:var(--ls-ink)!important;}
.instant-quote-page .sub,.instant-quote-page .tag,.instant-quote-page .small{color:var(--ls-muted)!important;}
.instant-quote-page .notice,.instant-quote-page .map-help{
  background:linear-gradient(180deg,#fff 0%,var(--ls-sky-soft) 100%)!important;
  border:1px solid #ccecf3!important;
  color:var(--ls-pine)!important;
}
.instant-quote-page .map{border-color:var(--ls-line)!important;box-shadow:var(--ls-shadow-soft)!important;}
.instant-quote-page .hr{border-top-color:rgba(16,41,31,.12)!important;}
.instant-quote-page .kpi{border-color:var(--ls-line)!important;}
.instant-quote-page .value{color:var(--ls-green)!important;}

@media(max-width:660px){
  .topbar-inner{font-size:.86rem!important;padding:8px 14px!important;gap:4px!important;}
  .nav,.instant-quote-page .site-header .nav{min-height:76px!important;gap:10px!important;}
  .brand,.instant-quote-page .site-header .brand{gap:9px!important;}
  .brand-mark,.instant-quote-page .site-header .brand-mark{
    width:72px!important;
    height:48px!important;
    min-width:72px!important;
  }
  .brand strong,.instant-quote-page .site-header .brand strong{font-size:1.02rem!important;line-height:1.05!important;}
  .brand em,.instant-quote-page .site-header .brand em{font-size:.76rem!important;line-height:1.15!important;}
  .menu-toggle,.instant-quote-page .site-header .menu-toggle{padding:9px 12px!important;border-radius:14px!important;}
  .hero .container,.page-hero .container{padding-top:42px!important;padding-bottom:42px!important;}
  .section{padding-top:50px!important;padding-bottom:50px!important;}
  .footer .brand-mark{width:92px!important;height:62px!important;min-width:92px!important;}
  .footer{padding-top:44px!important;}
  .instant-quote-page .iq-hero{padding:40px 0 44px!important;}
  .instant-quote-page .iq-hero h1{font-size:clamp(2.05rem,11vw,3.15rem)!important;}
}
