/* ===== SEO LANDING PAGE MODULE ===== */
.lp-hero{background:var(--ink);padding:80px 0 64px;position:relative;overflow:hidden}
.lp-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 680px 380px at 90% 0%,rgba(169,136,90,.12),transparent 58%);pointer-events:none}
.lp-hero-inner{position:relative;z-index:1;max-width:760px}
.lp-breadcrumb{font-size:11.5px;color:rgba(255,255,255,.38);margin-bottom:24px}
.lp-breadcrumb a{color:rgba(255,255,255,.5);text-decoration:none}
.lp-breadcrumb a:hover{color:var(--gold)}
.lp-hero .eyebrow{color:var(--gold);margin-bottom:18px;display:block}
.lp-hero h1{color:var(--white);font-size:clamp(32px,4.4vw,54px);margin-bottom:18px;line-height:1.05}
.lp-hero p{color:rgba(255,255,255,.55);font-size:16px;line-height:1.72;max-width:560px;margin-bottom:32px}
.lp-hero-btns{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.lp-hero{padding:56px 0 44px}}

.lp-intro{background:var(--white);padding:72px 0}
.lp-intro-inner{max-width:760px}
.lp-intro p{font-size:16.5px;color:var(--ink-soft);line-height:1.8;margin-bottom:18px}
.lp-intro p:last-child{margin-bottom:0}
@media(max-width:760px){.lp-intro{padding:52px 0}}

.lp-local{background:var(--cream);padding:72px 0}
.lp-local .eyebrow{margin-bottom:16px;display:block}
.lp-local h2{max-width:600px;margin-bottom:20px}
.lp-local-body{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;margin-top:36px}
.lp-local-body p{font-size:15px;color:var(--stone);line-height:1.78;margin-bottom:16px}
.lp-local-facts{border:1px solid var(--line);padding:28px 26px;background:var(--white);align-self:start}
.lp-local-facts h4{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:16px}
.lp-fact{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-soft);font-size:13.5px}
.lp-fact:last-child{border-bottom:none}
.lp-fact .k{color:var(--stone)}
.lp-fact .v{color:var(--ink);font-weight:600;text-align:right}
@media(max-width:860px){.lp-local-body{grid-template-columns:1fr}}
@media(max-width:760px){.lp-local{padding:52px 0}}

.lp-services{background:var(--white);padding:72px 0}
.lp-services .eyebrow{margin-bottom:16px;display:block}
.lp-services h2{max-width:600px;margin-bottom:18px}
.lp-services>p{font-size:15.5px;color:var(--stone);max-width:560px;line-height:1.72;margin-bottom:44px}
.lp-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.lp-svc{padding:32px 28px 32px 0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.lp-svc:nth-child(3n){border-right:none}
.lp-svc:nth-child(n+4){padding-left:28px}
.lp-svc:nth-child(3n+1):nth-child(n+4){padding-left:0}
.lp-svc h3{font-size:18px;margin-bottom:9px}
.lp-svc p{font-size:13.5px;color:var(--stone);line-height:1.62;margin-bottom:14px}
.lp-svc a{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:2px}
@media(max-width:860px){.lp-svc-grid{grid-template-columns:1fr 1fr}.lp-svc:nth-child(3n){border-right:1px solid var(--line)}.lp-svc:nth-child(2n){border-right:none}.lp-svc{padding:26px 20px 26px 0 !important}.lp-svc:nth-child(2n){padding-right:0 !important;padding-left:20px !important}}
@media(max-width:600px){.lp-svc-grid{grid-template-columns:1fr}.lp-svc{border-right:none !important}}
@media(max-width:760px){.lp-services{padding:52px 0}}

.lp-why{background:var(--ink);padding:72px 0}
.lp-why .eyebrow{color:var(--gold);margin-bottom:16px;display:block}
.lp-why h2{color:var(--white);max-width:600px;margin-bottom:36px}
.lp-why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid rgba(255,255,255,.1)}
.lp-why-item{display:flex;align-items:flex-start;gap:14px;padding:18px 24px 18px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.lp-why-item:nth-child(odd){border-right:1px solid rgba(255,255,255,.08);padding-right:24px}
.lp-why-item:nth-child(even){padding-left:24px}
.lp-why-item .m{width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0;margin-top:8px}
.lp-why-item div strong{display:block;color:var(--white);font-size:14.5px;margin-bottom:4px}
.lp-why-item div span{font-size:13px;color:rgba(255,255,255,.5);line-height:1.6}
@media(max-width:760px){.lp-why{padding:52px 0}.lp-why-grid{grid-template-columns:1fr}.lp-why-item:nth-child(odd){border-right:none;padding-right:0}.lp-why-item:nth-child(even){padding-left:0}}

.lp-process{background:var(--cream);padding:72px 0}
.lp-process .eyebrow{margin-bottom:16px;display:block}
.lp-process h2{max-width:560px;margin-bottom:36px}
.lp-process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.lp-step{padding:28px 24px 0 0;border-right:1px solid var(--line)}
.lp-step:nth-child(n+2){padding-left:24px}
.lp-step:last-child{border-right:none}
.lp-step-num{font-family:var(--display);font-size:26px;font-weight:380;font-style:italic;color:var(--gold);line-height:1;margin-bottom:12px;display:block}
.lp-step h4{font-size:15.5px;margin-bottom:8px}
.lp-step p{font-size:12.5px;color:var(--stone);line-height:1.6}
@media(max-width:860px){.lp-process-grid{grid-template-columns:1fr 1fr}.lp-step{border-right:none;border-bottom:1px solid var(--line);padding:22px 0 22px !important}.lp-step:nth-child(odd){border-right:1px solid var(--line);padding-right:20px !important}}
@media(max-width:600px){.lp-process-grid{grid-template-columns:1fr}.lp-step:nth-child(odd){border-right:none !important;padding-right:0 !important}}
@media(max-width:760px){.lp-process{padding:52px 0}}

.lp-cta{background:var(--white);padding:0 0 72px}
.lp-cta-box{background:var(--ink);padding:56px 48px;text-align:center;position:relative;overflow:hidden}
.lp-cta-box::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 600px 320px at 85% -10%,rgba(169,136,90,.15),transparent 58%)}
.lp-cta-inner{position:relative;z-index:2}
.lp-cta-box h2{color:var(--white);margin-bottom:14px;font-size:clamp(22px,2.8vw,32px)}
.lp-cta-box p{color:rgba(255,255,255,.55);max-width:440px;margin:0 auto 28px;font-size:14.5px;line-height:1.68}
.lp-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media(max-width:600px){.lp-cta-box{padding:44px 22px}}

.lp-faq{background:var(--cream);padding:72px 0}
.lp-faq .eyebrow{margin-bottom:16px;display:block}
.lp-faq h2{max-width:560px;margin-bottom:36px}
.lp-faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:22px 4px;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-family:var(--body);font-size:15px;font-weight:600;color:var(--ink)}
.faq-q .plus{font-family:var(--display);font-size:20px;font-weight:380;color:var(--gold-deep);flex-shrink:0;transition:transform .25s}
.faq-item.open .faq-q .plus{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a-inner{padding:0 4px 22px;font-size:14.5px;color:var(--stone);line-height:1.72;max-width:680px}
@media(max-width:760px){.lp-faq{padding:52px 0}}

.lp-links{background:var(--white);padding:56px 0 80px;border-top:1px solid var(--line)}
.lp-links h3{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-bottom:18px}
.lp-links-row{display:flex;flex-wrap:wrap;gap:10px}
.lp-links-row a{font-size:13px;font-weight:600;color:var(--ink);border:1px solid var(--line);padding:9px 16px;border-radius:2px;transition:.2s}
.lp-links-row a:hover{border-color:var(--ink);background:var(--ink);color:var(--white)}

/* Areas dropdown nav */
.nav-dropdown{position:relative}
.nav-dropdown>a{display:flex;align-items:center;gap:5px;cursor:pointer}
.nav-dropdown>a::after{content:'';width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.5;margin-left:2px;transition:transform .2s}
.nav-dropdown-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(8px);background:var(--white);border:1px solid var(--line);box-shadow:0 12px 32px rgba(22,22,26,.12);min-width:200px;padding:10px;opacity:0;visibility:hidden;transition:.2s;z-index:50}
@media(min-width:921px){
  .nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
  .nav-dropdown:hover>a::after{transform:rotate(180deg)}
}
.nav-dropdown-menu a{display:block;padding:9px 14px;font-size:13px;font-weight:500;color:var(--ink-soft);border-radius:2px}
.nav-dropdown-menu a:hover{background:var(--cream);color:var(--ink)}
@media(max-width:920px){
  .nav-dropdown{width:100%}
  .nav-dropdown>a{width:100%;justify-content:space-between;padding:4px 0}
  .nav-dropdown>a::after{margin-left:auto}
  .nav-dropdown.mobile-open>a::after{transform:rotate(180deg)}
  .nav-dropdown-menu{position:static;transform:none;opacity:1;visibility:visible;display:none;box-shadow:none;border:none;background:var(--cream-deep);margin-top:8px;width:100%;max-height:0;overflow:hidden;padding:0;transition:max-height .25s ease}
  .nav-dropdown.mobile-open .nav-dropdown-menu{display:block;max-height:400px;padding:10px}
}

/* Footer popular searches */
.footer-popular{border-top:1px solid rgba(255,255,255,.08);padding-top:28px;margin-top:28px}
.footer-popular h4{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:16px}
.footer-popular-links{display:flex;flex-wrap:wrap;gap:8px 18px}
.footer-popular-links a{font-size:12.5px;color:rgba(255,255,255,.45);padding:3px 0}
.footer-popular-links a:hover{color:var(--gold)}
