/* ===== Florida law firm page ===== */
.up{color:var(--up)}.loss{color:var(--loss)}
.lmute{color:var(--mute);font-size:.92rem}
/* hero */
.lhero{position:relative;padding:56px 0 40px;overflow:hidden;background:radial-gradient(50% 70% at 85% 10%,oklch(0.6 0.23 293 / .28),transparent),radial-gradient(40% 50% at 0% 100%,oklch(0.84 0.15 80 / .08),transparent)}
.lhero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.lhero h1{font-size:clamp(2.3rem,5.2vw,4.2rem);letter-spacing:-.035em;line-height:1.02;margin:.9rem 0 1.1rem}
.lhero h1 .serif{color:oklch(0.84 0.15 80)}
.lticks{list-style:none;padding:0;margin:1.4rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;font-size:.92rem;color:var(--ink-2)}
.lticks li{display:flex;align-items:center;gap:.4rem}.lticks svg{color:var(--up)}
.sctl{display:flex;gap:.5rem;margin-bottom:.8rem;flex-wrap:wrap}
.sctl select{flex:1;min-width:0;padding:.6rem .8rem;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);font:inherit;font-size:.92rem}
.serp{background:#fff;color:#202124;border-radius:22px;padding:16px;font-family:Arial,Helvetica,sans-serif;box-shadow:0 40px 80px -30px #000,0 0 0 1px oklch(1 0 0 / .1),0 30px 80px -40px oklch(0.6 0.23 293 / .7);min-height:380px}
.sq{display:flex;align-items:center;gap:.6rem;border:1px solid #dfe1e5;border-radius:24px;padding:.6rem 1rem;font-size:.98rem;min-height:2.8rem;box-shadow:0 1px 6px rgba(32,33,36,.18)}
.sq .cur{width:1px;height:1.1em;background:#202124;animation:lblink 1s infinite}
@keyframes lblink{50%{opacity:0}}
.smap{position:relative;height:96px;margin-top:12px;border-radius:12px 12px 0 0;background:linear-gradient(135deg,#dfeedd,#cfe1f3);overflow:hidden}
.smap::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(35deg,transparent 0 26px,rgba(255,255,255,.7) 26px 29px),repeating-linear-gradient(-55deg,transparent 0 40px,rgba(255,255,255,.55) 40px 42px)}
.smap span{position:absolute;width:14px;height:14px;border-radius:50% 50% 50% 0;background:#ea4335;transform:rotate(-45deg);box-shadow:0 2px 4px rgba(0,0,0,.3)}
#sList{border:1px solid #dadce0;border-top:0;border-radius:0 0 12px 12px;overflow:hidden;min-height:150px}
.sli{display:flex;justify-content:space-between;align-items:center;padding:.7rem .9rem;border-top:1px solid #eee;font-size:.9rem;animation:sin .45s ease both}
.sli b{color:#1a0dab;font-weight:500}.sli small{display:block;color:#70757a;font-size:.78rem}.sli>span{color:#e7711b;font-size:.82rem;white-space:nowrap}
.syou{background:#f3edff;border-left:4px solid #6d28d9}.syou b{color:#4c1d95;font-weight:700}
.sgoal{color:#6d28d9!important;font-weight:700}
.smiss{padding:.75rem .9rem;font-size:.86rem;color:#c5221f;background:#fff4f4;border-top:1px dashed #f1b0ad;animation:sin .45s ease both}
@keyframes sin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sdemo{margin:.6rem 0 0;font-size:.72rem;color:#80868b;text-align:right}
.lhero .garrow{margin-top:2.6rem}
/* trust strip */
.ltrust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--tint)}
.ltrust-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding-top:22px;padding-bottom:22px}
.ltrust b{display:block;font-family:var(--display);font-size:1.35rem;color:var(--ink)}
.ltrust span{font-size:.86rem;color:var(--mute)}
/* calculator */
.lcalc{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(1.4rem,3vw,2.6rem);max-width:980px;margin:0 auto}
.lcalc label{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem;color:var(--ink);margin:1.1rem 0 .5rem}
.lcalc label:first-child{margin-top:0}
.lcalc label b{font-family:var(--mono);font-weight:500;color:var(--gold);white-space:nowrap}
.lcalc input[type=range]{width:100%;accent-color:oklch(0.84 0.15 80);height:6px}
.lcalc-out{text-align:center;padding:1.8rem 1.2rem;border-radius:22px;background:radial-gradient(100% 80% at 50% 0%,oklch(0.68 0.2 25 / .2),var(--tint));border:1px solid oklch(0.68 0.2 25 / .35)}
.lbig{font-family:var(--display);font-size:clamp(2.6rem,6vw,4rem);color:var(--ink);line-height:1;margin:.5rem 0 .2rem;letter-spacing:-.03em}
.lbe{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1.2rem}
.lbe div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:.7rem}
.lbe span{display:block;font-size:.76rem;color:var(--mute)}.lbe b{font-size:1.05rem;color:var(--ink)}.lbe b.up{color:var(--up)}
/* problems */
.lprobs{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.lp{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem;display:flex;flex-direction:column}
.lp-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:#D9C8FF;margin-bottom:1rem}
.lp h3{font-size:1.18rem}
.lp-pain{color:var(--mute);font-size:.94rem;margin:.5rem 0 1rem}
.lp-fix{margin:auto 0 0;padding:.9rem 1rem;border-radius:12px;background:oklch(0.78 0.17 155 / .08);border:1px solid oklch(0.78 0.17 155 / .22);font-size:.92rem;color:var(--ink-2)}
.lp-fix b{display:flex;align-items:center;gap:.35rem;color:var(--up);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.3rem}
/* proof */
.lfiles{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.lfile{position:relative;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:1.5rem;overflow:hidden}
.ltab{position:absolute;top:0;right:22px;background:var(--gold);color:#1a1405;font:700 .66rem var(--mono);letter-spacing:.12em;padding:.3rem .6rem;border-radius:0 0 9px 9px}
.lfile h3{margin:.35rem 0 0}
.lnums{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1rem 0}
.lnums div{background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem}
.lnums b{display:block;font-family:var(--display);font-size:clamp(1.6rem,3vw,2.1rem);color:var(--up);line-height:1.05}
.lnums span{font-size:.78rem;color:var(--mute)}
.lshot{position:relative;display:block;width:100%;padding:0;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;background:#fff;cursor:zoom-in}
.lshot img{display:block;width:100%;height:auto}
.lscan{position:absolute;left:0;right:0;top:-40%;height:40%;background:linear-gradient(180deg,transparent,oklch(0.72 0.17 295 / .28),transparent);animation:lscan 3.4s 1.2s infinite}
@keyframes lscan{to{top:110%}}
.lstamp{position:absolute;right:22px;bottom:22px;z-index:2;transform:rotate(-12deg) scale(2.2);opacity:0;border:2px solid var(--loss);color:var(--loss);font:700 .74rem var(--mono);letter-spacing:.16em;padding:.25rem .55rem;border-radius:6px;background:oklch(0.185 0.024 285 / .75);transition:transform .45s cubic-bezier(.3,1.6,.5,1) .5s,opacity .3s .5s}
.lfile.go .lstamp,.no-js .lstamp{transform:rotate(-12deg) scale(1);opacity:.92}
.lvoice{display:grid;grid-template-columns:260px 1fr;gap:1.8rem;align-items:center;margin-top:1.4rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem}
.lvid{border-radius:16px;overflow:hidden;aspect-ratio:4/5;background:#000}
.lvid video{width:100%;height:100%;object-fit:cover;display:block}
.lquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.25;color:var(--ink);margin:.7rem 0}
.lcta-line{text-align:center;margin:1.6rem 0 0;color:var(--ink-2)}
.lcta-line a{color:#D9C8FF;font-weight:600}
/* map */
.lmap{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(1.2rem,3vw,2.2rem)}
#fl{width:100%;height:auto;display:block}
#fl .land{fill:oklch(0.22 0.03 285);stroke:oklch(0.72 0.17 295 / .6);stroke-width:2}
#fl .cty{cursor:pointer;outline:none}
#fl .dot{fill:var(--up);transition:r .2s}
#fl .ring{fill:none;stroke:var(--up);stroke-width:2;opacity:0;animation:lping 2.4s infinite}
#fl text{fill:var(--ink-2);font:600 13px var(--sans);paint-order:stroke;stroke:oklch(0.185 0.024 285);stroke-width:4px}
#fl .cty.on .dot{r:9;fill:var(--gold)}#fl .cty.on .ring{stroke:var(--gold)}#fl .cty.on text{fill:var(--ink)}
#fl .cty:focus-visible .dot{stroke:#fff;stroke-width:2}
@keyframes lping{0%{r:6;opacity:.9}100%{r:22;opacity:0}}
.lslot h3{font-size:1.8rem;margin:.4rem 0 .8rem}
.lslot select{width:100%;padding:.75rem .9rem;border-radius:12px;background:var(--tint);color:var(--ink);border:1px solid var(--line-2);font:inherit;margin-bottom:.6rem}
.lrow{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.94rem}
.lmap>*,.lcalc>*,.lhero-in>*,.lfinal>*{min-width:0}
.lslot .btn{margin-top:1.2rem;width:100%;justify-content:center;white-space:normal;text-align:center}
/* phases */
.lphases{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;padding-top:22px}
.lline{position:absolute;left:4%;right:4%;top:0;height:3px;border-radius:3px;background:var(--line)}
.lline i{position:absolute;inset:0;background:linear-gradient(90deg,var(--brand),var(--gold));transform-origin:0 50%;transform:scaleX(0);transition:transform 1.8s var(--ease)}
.lphases.go .lline i{transform:scaleX(1)}
.lph{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem}
.lph::before{content:"";position:absolute;top:-29px;left:1.5rem;width:13px;height:13px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px oklch(0.84 0.15 80 / .18)}
.ld{font:500 .76rem var(--mono);color:var(--gold);letter-spacing:.1em}
.lph h3{font-size:1.35rem;margin:.35rem 0 .7rem}
.lph ul{margin:0;padding-left:1.1rem;color:var(--ink-2);font-size:.94rem}.lph li{margin:.3rem 0}
.lms{display:flex;gap:.45rem;align-items:flex-start;margin:1rem 0 0;padding:.65rem .8rem;border-radius:10px;background:oklch(0.78 0.17 155 / .1);color:var(--up);font-size:.88rem}
.lms svg{flex:none;margin-top:.2rem}
.ldays{margin-top:1.6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem}
.ldays h3{margin-bottom:1.2rem}
.ltrack{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}
.ltrack>i{position:absolute;left:0;right:0;top:9px;height:2px;background:var(--line)}
.ltrack>i::after{content:"";position:absolute;left:0;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px var(--gold)}
.ltrack.go>i::after{animation:ltr 3s var(--ease) forwards}
@keyframes ltr{to{left:calc(100% - 10px)}}
.ltrack div{padding-top:1.6rem}
.ltrack b{display:block;font:500 .82rem var(--mono);color:var(--gold)}
.ltrack span{font-size:.9rem;color:var(--ink-2)}
/* pillars */
.lpillars{display:grid;grid-template-columns:repeat(5,1fr);gap:.9rem}
.pil{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.3rem}
.pil h3{font-size:1.1rem;margin-bottom:.4rem}.pil p{font-size:.88rem;color:var(--mute);margin:0}
/* pricing */
.lentry{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:1.6rem 1.8rem;border-radius:var(--r-lg);border:1px solid var(--line-2);background:linear-gradient(135deg,oklch(0.6 0.23 293 / .2),var(--surface));margin-bottom:1.4rem}
.lentry h3{font-size:1.4rem;margin:.5rem 0 .3rem}.lentry p{margin:0;max-width:40rem;color:var(--ink-2);font-size:.94rem}.lentry p b{color:var(--ink)}
.lpill{display:inline-block;padding:.25rem .7rem;border-radius:999px;background:oklch(0.84 0.15 80 / .16);color:var(--gold);font-size:.74rem;font-weight:700}
.lentry-p{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}
.lentry-p s{font:500 .82rem var(--mono);color:var(--mute);text-decoration-color:var(--loss)}
.lentry-p b{font-family:var(--display);font-size:2.4rem;color:var(--ink);line-height:1}
.lentry-p span{font-size:.82rem;color:var(--mute);margin-bottom:.5rem}
.lplans{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:1.1rem;align-items:start}
.lplan{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-xl);padding:1.7rem}
.lplan.hot{border:0;isolation:isolate;transform:translateY(-10px)}
.lplan.hot::before{content:"";position:absolute;inset:-1.5px;border-radius:inherit;z-index:-2;background:conic-gradient(from var(--ang),oklch(1 0 0 / .1) 0 50%,oklch(0.72 0.19 295) 68%,oklch(0.84 0.15 80) 80%,oklch(1 0 0 / .1) 94%);animation:spin 5s linear infinite}
.lplan.hot::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;background:radial-gradient(120% 60% at 50% 0%,oklch(0.3 0.08 293),oklch(0.16 0.03 290) 70%)}
.lplan.dom{border:1.5px solid oklch(0.84 0.15 80 / .7);background:radial-gradient(120% 50% at 50% 0%,oklch(0.84 0.15 80 / .13),var(--surface) 65%)}
.lrib{align-self:flex-start;font-size:.74rem;font-weight:700;padding:.3rem .75rem;border-radius:999px;background:var(--gold);color:#1a1405;margin-bottom:.9rem}
.lrib.dark{background:#1a1405;color:var(--gold);border:1px solid var(--gold)}
.lval{margin-top:.7rem;font-size:.84rem;color:var(--mute)}.lval s{font-family:var(--mono);text-decoration-color:var(--loss);margin-left:.3rem}
.lprice{font-family:var(--display);font-size:clamp(2.4rem,4vw,3rem);color:var(--ink);letter-spacing:-.03em;line-height:1.05}
.lprice small{font-size:1rem;color:var(--mute);letter-spacing:0;margin-left:.2rem}
.lfit{font-size:.88rem;color:var(--mute);margin:.4rem 0 1rem}
.lstack{list-style:none;padding:0;margin:0 0 1rem;flex:1;border-top:1px solid var(--line)}
.lstack li{display:flex;justify-content:space-between;gap:.8rem;padding:.5rem 0;border-bottom:1px dashed var(--line);font-size:.88rem;color:var(--ink-2)}
.lstack s{font-family:var(--mono);font-size:.8rem;color:var(--mute);white-space:nowrap;text-decoration-color:oklch(0.68 0.2 25 / .7)}
.lroi{display:flex;gap:.4rem;align-items:center;padding:.65rem .8rem;border-radius:10px;background:oklch(0.84 0.15 80 / .12);color:var(--gold);font-size:.86rem;margin-bottom:1rem}
.lplan .btn{justify-content:center}
.lguar{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin-top:1.6rem}
.lguar div{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}
.lguar svg{color:var(--up)}.lguar b{color:var(--ink)}.lguar span{font-size:.86rem;color:var(--mute)}
/* compare */
.lcmp{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}
.lcmp-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;padding:.95rem 1.3rem;border-top:1px solid var(--line);font-size:.95rem}
.lcmp-row span:nth-child(2){color:var(--mute)}
.lcmp-row span:nth-child(3){color:var(--ink);font-weight:600}
.lcmp-row span:nth-child(3)::before{content:"✓ ";color:var(--up)}
.lcmp-h{border-top:0;background:var(--tint);font-weight:700}.lcmp-h span{color:var(--ink)!important}.lcmp-h span:nth-child(3)::before{content:""}
.lcmp-row span:first-child{color:var(--ink-2)}
.lfaq{max-width:860px}
/* final */
.lfinal{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.lform{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-xl);padding:clamp(1.3rem,3vw,2rem)}
.llb{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:16px;background:oklch(0.08 0.02 285 / .93);cursor:zoom-out}
.llb.on{display:grid}.llb img{max-width:100%;max-height:92vh;border-radius:10px}
/* responsive */
@media (max-width:1080px){.lpillars{grid-template-columns:repeat(3,1fr)}.lplans{grid-template-columns:1fr 1fr}.lplan.dom{grid-column:1/-1}}
@media (max-width:900px){
  .lhero-in,.lcalc,.lmap,.lfinal{grid-template-columns:1fr}
  .lprobs{grid-template-columns:1fr 1fr}
  .lfiles{grid-template-columns:1fr}
  .lphases{grid-template-columns:1fr;padding-top:0;padding-left:26px}
  .lline{left:6px;right:auto;top:0;bottom:0;width:3px;height:auto}
  .lline i{transform-origin:50% 0;transform:scaleY(0)}.lphases.go .lline i{transform:scaleY(1)}
  .lph::before{top:1.7rem;left:-26px}
  .lguar{grid-template-columns:1fr 1fr}
  .ltrust-in{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .lhero{padding-top:28px}
  .lprobs,.lplans,.lpillars{grid-template-columns:1fr}
  .lplan.hot{transform:none;order:-1}.lplan.dom{grid-column:auto}
  .lvoice{grid-template-columns:1fr}.lvid{max-width:300px;margin:0 auto;width:100%}
  .lentry{padding:1.3rem}.lentry-p{align-items:flex-start;text-align:left}
  .ltrack{grid-template-columns:1fr;gap:0}.ltrack>i{left:9px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .ltrack>i::after{left:-4px!important;top:0}.ltrack.go>i::after{animation:ltrv 3s var(--ease) forwards}
  .ltrack div{padding:0 0 .9rem 2rem}
  .lcmp-row{grid-template-columns:1fr 1fr;font-size:.88rem;padding:.8rem 1rem}.lcmp-row span:first-child{grid-column:1/-1;font-weight:600;color:var(--ink)}
  .lcmp-h span:first-child{display:none}
  .lbe{grid-template-columns:1fr}
  .lcalc label{flex-wrap:wrap;gap:.2rem .8rem}
  .serp{min-height:0;padding:12px}.sq{font-size:.9rem}
  .lguar{grid-template-columns:1fr}
  .lstamp{right:14px;bottom:14px}
}
@keyframes ltrv{to{top:calc(100% - 10px)}}
@media (prefers-reduced-motion:reduce){.lscan,#fl .ring,.lplan.hot::before{animation:none}.lstamp{opacity:.92;transform:rotate(-12deg)}}
