/* Charterly lead landing page — layout on top of site.css tokens */
html{scroll-behavior:smooth}
body.lp{background:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--app-font-sans)}
.lp-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 1.25rem}
@media(min-width:768px){.lp-wrap{padding:0 2rem}}
/* header */
.lp-header{position:fixed;inset:0 0 auto;z-index:50;transition:background-color .3s ease,backdrop-filter .3s ease;background:linear-gradient(hsl(160 20% 6%/.7),transparent)}
.lp-header.bg-primary\/95{background:hsl(var(--primary)/.95)}
.lp-header-row{display:flex;align-items:center;justify-content:space-between;height:76px;gap:1rem}
.lp-logo img{width:180px;height:auto}
@media(min-width:768px){.lp-logo img{width:220px}}
.lp-header-actions{display:flex;align-items:center;gap:1.25rem}
.lp-header-phone{display:none;align-items:center;gap:.5rem;color:#fbfaf6;font-weight:700;font-size:.92rem;transition:color .2s}
.lp-header-phone svg{width:1rem;height:1rem;color:hsl(var(--accent))}
.lp-header-phone:hover{color:hsl(var(--accent))}
@media(min-width:640px){.lp-header-phone{display:inline-flex}}
/* buttons */
.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;border-radius:.375rem;background:hsl(var(--accent));color:hsl(var(--accent-foreground));font-weight:800;text-transform:uppercase;letter-spacing:.1em;border:2px solid hsl(var(--accent));transition:background-color .25s,border-color .25s,color .25s,transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s}
.lp-btn svg{width:1.15rem;height:1.15rem}
.lp-btn:hover{background:hsl(28 100% 64%);border-color:hsl(28 100% 64%);transform:translateY(-2px);box-shadow:0 16px 32px -14px hsl(28 100% 50%/.65)}
.lp-btn:focus-visible,.lp-direct-link:focus-visible,.lp-header-phone:focus-visible{outline:2px solid hsl(var(--accent));outline-offset:3px}
.lp-btn-sm{padding:.65rem 1rem;font-size:.7rem}
.lp-btn-lg{padding:1.05rem 2rem;font-size:.95rem;min-width:13rem}
.lp-btn-ghost{background:hsl(0 0% 100%/.04);color:#fbfaf6;border-color:hsl(0 0% 100%/.55)}
.lp-btn-ghost:hover{background:#fbfaf6;border-color:#fbfaf6;color:hsl(var(--secondary));box-shadow:none}
/* hero */
.lp-hero{position:relative;min-height:88dvh;display:flex;align-items:center;overflow:hidden;background:hsl(160 25% 5%)}
.lp-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.lp-hero-shade{position:absolute;inset:0;background:radial-gradient(ellipse at center,hsl(160 25% 5%/.35),hsl(160 25% 4%/.92) 75%),linear-gradient(transparent 60%,hsl(160 25% 5%))}
.lp-hero-inner{position:relative;text-align:center;padding-top:8rem;padding-bottom:5rem;display:flex;flex-direction:column;align-items:center}
.lp-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:hsl(var(--accent));margin-bottom:1.25rem}
.lp-h1{color:#fbfaf6;font-weight:800;font-size:clamp(2.3rem,6vw,4.4rem);line-height:1.04;letter-spacing:-.025em;max-width:16ch}
.lp-h1 span{color:hsl(var(--accent))}
.lp-sub{margin-top:1.5rem;max-width:40rem;color:hsl(48 30% 96%/.78);font-size:1.08rem;line-height:1.65}
.lp-ctas{margin-top:2.25rem;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.lp-email{margin-top:1.4rem;color:hsl(48 30% 96%/.65);font-size:.95rem}
.lp-email a{color:#fbfaf6;font-weight:700;border-bottom:1px solid hsl(var(--accent));transition:color .2s}
.lp-email a:hover{color:hsl(var(--accent))}
@media(max-width:520px){.lp-btn-lg{width:100%}}
/* quote */
.lp-quote{background:hsl(var(--muted));padding:5rem 0}
.lp-quote-grid{display:grid;gap:3rem;align-items:start}
@media(min-width:1024px){.lp-quote-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4rem}.lp-quote-copy{position:sticky;top:6.5rem}}
.lp-h2{font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.08;color:hsl(var(--primary));font-weight:500}
.lp-h2 em{color:hsl(var(--accent));font-weight:400}
.lp-steps{margin-top:2rem;display:grid;gap:1.1rem;list-style:none}
.lp-steps li{display:flex;gap:1rem}
.lp-steps span{font-family:var(--app-font-display);font-style:italic;color:hsl(var(--accent));font-size:1.35rem;line-height:1;min-width:2rem}
.lp-steps strong{display:block;color:hsl(var(--foreground));margin-bottom:.15rem}
.lp-steps div{color:hsl(var(--muted-foreground));font-size:.93rem}
.lp-chips-label{margin-top:2.25rem;font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.lp-chips{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem;list-style:none}
.lp-chips li{padding:.4rem .85rem;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));font-size:.82rem;font-weight:600;color:hsl(var(--primary))}
.lp-direct{margin-top:2.25rem;display:grid;gap:.75rem}
.lp-direct-link{display:flex;align-items:center;gap:.9rem;padding:.95rem 1.1rem;border-radius:.375rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700;overflow-wrap:anywhere;transition:transform .25s cubic-bezier(.2,.7,.2,1),background-color .25s}
.lp-direct-link svg{width:1.2rem;height:1.2rem;color:hsl(var(--accent));flex-shrink:0}
.lp-direct-link small{display:block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-weight:700}
.lp-direct-link:hover{transform:translateX(4px);background:hsl(161 48% 22%)}
.lp-form-wrap{min-width:0}
.lp-form-wrap .quote-form{border-top:4px solid hsl(var(--accent))}
/* footer */
.lp-footer{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));padding:3.5rem 0 1.5rem}
.lp-footer-grid{display:grid;gap:2rem;align-items:center}
@media(min-width:768px){.lp-footer-grid{grid-template-columns:auto auto 1fr;gap:3rem}}
.lp-footer-mark{display:block;width:auto}
.lp-footer-mark img{height:140px;width:auto;object-fit:contain;border-radius:0;display:block}
.lp-footer-brand{font-size:1.6rem;margin-bottom:.6rem}
.lp-footer-contact{display:grid;gap:.5rem}
.lp-footer-contact a{display:inline-flex;align-items:center;gap:.6rem;color:hsl(48 30% 96%/.85);transition:color .2s;overflow-wrap:anywhere}
.lp-footer-contact a:hover{color:hsl(var(--accent))}
.lp-footer-contact svg{width:1rem;height:1rem;color:hsl(var(--accent));flex-shrink:0}
.lp-disclosure{font-size:.85rem;line-height:1.6;color:hsl(48 30% 96%/.6);max-width:30rem;justify-self:end}
@media(max-width:767px){.lp-disclosure{justify-self:start}}
.lp-legal{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid hsl(0 0% 100%/.1);display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.8rem;color:hsl(48 30% 96%/.55)}
.lp-legal nav{display:flex;gap:1.5rem}
.lp-legal a:hover{color:hsl(var(--accent))}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lp-btn,.lp-direct-link,.lp-header{transition:none}.lp-btn:hover,.lp-direct-link:hover{transform:none}}
