/* WisePath Estate Planning, public site. v15.32.
   Navy wordmark, sea green path. Fraunces for display, Inter for reading. Self hosted fonts. */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/fraunces-latin.woff2) format("woff2-variations")}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/fraunces-latin-italic.woff2) format("woff2-variations")}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin.woff2) format("woff2-variations")}

:root{
  --navy:#254462; --navy-deep:#182F45; --navy-ink:#1F3B57;
  --green:#386962; --green-ink:#2C5751; --green-hi:#4C8378; --mint:#8CC9BB; --green-tint:#E8F0EE;
  --paper:#F6F7F4; --paper-2:#EEF1EC; --white:#FFFFFF;
  --ink:#1B2733; --ink-2:#4E5B67; --ink-3:#5F6B76; --line:#DDE3DF; --line-2:#C8D1CC;
  --disp:"Fraunces",Georgia,"Times New Roman",serif; --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --r:12px; --r-lg:20px; --wrap:1120px;
  --shadow:0 24px 60px rgba(24,47,69,.16),0 2px 8px rgba(24,47,69,.06);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--body);background:var(--paper);color:var(--ink);line-height:1.62;font-size:17px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--disp);font-weight:500;color:var(--navy);line-height:1.12;letter-spacing:-.012em;text-wrap:balance}
h1{font-size:clamp(40px,5.4vw,66px)}
h2{font-size:clamp(30px,3.6vw,44px)}
h3{font-size:22px;line-height:1.25}
p{max-width:64ch;text-wrap:pretty}
[id]{scroll-margin-top:96px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
:focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:8px;background:var(--navy);color:#fff;padding:10px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:999px;padding:14px 26px;font-weight:600;font-size:15px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:var(--body);line-height:1;transition:background .18s,color .18s,border-color .18s,transform .18s}
.btn.primary{background:var(--navy);color:#fff}
.btn.primary:hover{background:var(--navy-deep)}
.btn.green{background:var(--green);color:#fff}
.btn.green:hover{background:var(--green-ink)}
.btn.ghost{border-color:var(--line-2);color:var(--navy);background:transparent}
.btn.ghost:hover{border-color:var(--navy);background:#fff}
.btn.paper{background:var(--paper);color:var(--navy)}
.btn.paper:hover{background:#fff}
.btn:active{transform:translateY(1px)}

/* nav */
nav.top{position:sticky;top:0;z-index:50;background:rgba(246,247,244,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navin{display:flex;align-items:center;gap:28px;height:80px}
.navlogo{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}
.navlogo img{height:46px;width:auto}
.navlinks{display:flex;align-items:center;gap:26px;margin-left:auto}
.navlinks a{color:var(--navy-ink);text-decoration:none;font-size:15px;font-weight:500}
.navlinks a:not(.btn):hover{color:var(--green-ink)}
.navlinks a:not(.btn){position:relative;padding-bottom:2px}
.navlinks a:not(.btn):not(.signin)::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;border-radius:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .22s}
.navlinks a:not(.btn):not(.signin)[aria-current="true"]::after{transform:scaleX(1)}
.navlinks .btn{padding:11px 20px;font-size:14px}
.navlinks .signin{font-weight:600}
.menubtn{display:none;background:none;border:0;cursor:pointer;padding:10px;margin-left:auto}
.menubtn span{display:block;width:22px;height:2px;background:var(--navy);margin:5px 0;border-radius:2px;transition:transform .2s,opacity .2s}
.menubtn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menubtn.open span:nth-child(2){opacity:0}
.menubtn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:900px){
  .navin{height:70px;gap:12px}
  .navlogo img{height:38px}
  .navlinks{gap:12px}
  .navlinks a:not(.btn){display:none}
  .navlinks .btn.ghost{display:none}
  .menubtn{display:block}
  .navlinks.open{position:absolute;top:70px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 24px 48px rgba(24,47,69,.14);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 22px}
  .navlinks.open a:not(.btn){display:block;padding:15px 2px;border-bottom:1px solid var(--line);font-size:17px}
  .navlinks.open .btn{margin-top:14px;display:inline-flex}
}

/* hero */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:72px;padding-bottom:40px}
.hero .kicker{font-family:var(--disp);font-style:italic;font-size:19px;color:var(--green-ink);margin-bottom:16px}
.hero p.sub{margin-top:24px;font-size:18.5px;color:var(--ink-2);max-width:50ch}
.ctas{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero .fine{margin-top:16px;font-size:14px;color:var(--ink-3);max-width:52ch}
.proof{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;max-width:520px}
.proof li{position:relative;padding-left:26px;font-size:15px;color:var(--navy-ink);font-weight:500;line-height:1.4}
.proof li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--green-tint)}
.proof li::after{content:"";position:absolute;left:5px;top:9px;width:7px;height:4px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
@media(max-width:560px){.proof{grid-template-columns:1fr;gap:8px}}
.pathart{position:relative;--gut:112px;--x1:34px;--x2:80px;padding:8px 0 92px}
.pathart .pathsvg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.pathart .trail{fill:none;stroke:var(--green);stroke-width:30;stroke-linecap:round;stroke-linejoin:round;opacity:.16}
.pathart .trail2{fill:none;stroke:var(--green);stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.7s cubic-bezier(.4,0,.2,1) .15s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.steps{list-style:none;margin:0;padding:0;position:relative}
.step{position:relative;display:block;padding-left:var(--gut);--sx:var(--x1);opacity:0;animation:fade .55s ease forwards}
.step+.step{margin-top:40px}
.step:nth-child(even){--sx:var(--x2)}
.step:nth-child(1){animation-delay:.35s}.step:nth-child(2){animation-delay:.7s}.step:nth-child(3){animation-delay:1.05s}.step:nth-child(4){animation-delay:1.4s}
@keyframes fade{to{opacity:1}}
.step .stone{position:absolute;left:calc(var(--sx) - 16px);top:13px;width:32px;height:32px;border-radius:50%;background:var(--paper);border:4px solid var(--green);box-sizing:border-box}
.step .stone::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--green)}
.step .when{display:block;font-family:var(--disp);font-style:italic;font-size:16px;line-height:1.3;color:var(--green-ink)}
.step .what{display:block;font-family:var(--body);font-weight:600;font-size:19px;line-height:1.3;color:var(--navy);margin-top:1px}
.step .how{display:block;font-size:15.5px;line-height:1.5;color:var(--ink-2);margin-top:5px;max-width:34ch}
.pathart .tree{position:absolute;left:calc(var(--x1) - 36px);bottom:0;width:72px;height:72px;opacity:0;animation:fade .6s ease 1.7s forwards}
@media (prefers-reduced-motion:reduce){.pathart .trail2{animation:none;stroke-dashoffset:0}.step,.pathart .tree{animation:none;opacity:1}.fq,.fres,.notedlg[open]{animation:none}.stickybar,.fbar .fill,.navlinks a:not(.btn)::after{transition:none}}
@media(min-width:901px){.pathart{--gut:132px;--x1:42px;--x2:96px;padding:0 0 100px}.step+.step{margin-top:48px}.step .when{font-size:17px}.step .what{font-size:21.5px}.step .how{font-size:16.5px;max-width:30ch}.step .stone{width:36px;height:36px;left:calc(var(--sx) - 18px);top:14px}.pathart .tree{width:84px;height:84px;left:calc(var(--x1) - 42px)}}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:26px;padding-top:40px;padding-bottom:24px}
  .pathart{margin-top:10px}
}

/* section rhythm */
section.sec{padding:84px 0}
section.sec.tint{background:var(--paper-2)}
section.sec.navy{background:var(--navy);color:#DCE6EE}
section.sec.navy h2,section.sec.navy h3{color:#fff}
section.sec.navy p{color:#C7D4DF}
.sechead{max-width:62ch;margin-bottom:38px}
.sechead .lab{font-family:var(--disp);font-style:italic;font-size:19px;color:var(--green-ink);margin-bottom:10px}
.sechead p{margin-top:14px;color:var(--ink-2);font-size:18px}
section.sec.navy .sechead .lab{color:var(--mint)}
@media(max-width:900px){section.sec{padding:60px 0}}

/* without a plan: three plain columns with a hairline, no cards */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.three>div{border-top:2px solid var(--green);padding-top:18px}
.three h3{font-size:23px;margin-bottom:10px}
.three p{color:var(--ink-2);font-size:16px}
.close{margin-top:44px;font-family:var(--disp);font-size:clamp(21px,2.4vw,27px);color:var(--navy);max-width:34ch;line-height:1.3}
.close em{font-style:italic;color:var(--green-ink)}
@media(max-width:900px){.three{grid-template-columns:1fr;gap:26px}}
/* two timelines: a will alone against a funded trust */
.twoways{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:48px}
.way{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 26px 22px}
.way.trust{background:var(--navy);border-color:var(--navy);color:#DCE6EE}
.wayhead{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.waylab{font-family:var(--disp);font-style:italic;font-size:17px;color:var(--green-ink)}
.way.trust .waylab{color:var(--mint)}
.wayhead strong{font-family:var(--disp);font-weight:500;font-size:22px;line-height:1.22;color:var(--navy);text-wrap:balance}
.way.trust .wayhead strong{color:#fff}
.way ol{list-style:none;margin:0;padding:0;position:relative}
.way ol::before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:2px;background:var(--line-2)}
.way.trust ol::before{background:rgba(140,201,187,.35)}
.way li{position:relative;padding:0 0 16px 38px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.way li:last-child{padding-bottom:0}
.way.trust li{color:#C7D4DF}
.way li::before{content:"";position:absolute;left:6px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--line-2);box-sizing:border-box}
.way.trust li::before{background:var(--navy);border-color:var(--mint)}
.way.trust li:first-child::before{background:var(--mint)}
.way li b{display:block;font-weight:600;color:var(--navy);margin-bottom:2px}
.way.trust li b{color:#fff}
@media(max-width:900px){.twoways{grid-template-columns:1fr;gap:14px;margin-top:34px}.way{padding:22px 20px 18px}}

/* what you receive */
.receive{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.docwall{position:relative;height:540px}
.docwall picture{display:contents}
.docwall img{position:absolute;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:var(--shadow);height:auto}
.docwall .d1{width:66%;left:0;top:18px;transform:rotate(-2.2deg)}
.docwall .d2{width:66%;right:0;bottom:12px;transform:rotate(1.6deg)}
.docwall .seal{position:absolute;right:20px;top:54px;background:var(--green);color:#fff;font-family:var(--disp);font-style:italic;font-size:17px;padding:10px 18px;border-radius:999px;box-shadow:0 12px 26px rgba(56,105,98,.35);transform:rotate(1.6deg)}
.doclist{list-style:none}
.doclist li{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
.doclist li:first-child{border-top:1px solid var(--line)}
.doclist .n{font-family:var(--disp);font-style:italic;color:var(--green-ink);font-size:18px;padding-top:2px}
.doclist .dn{display:block;font-weight:600;color:var(--navy);font-size:17px}
.doclist .dd{display:block;color:var(--ink-2);font-size:15px;margin-top:2px}
.docnote{margin-top:22px;color:var(--ink-2);font-size:15.5px}
@media(max-width:900px){.receive{grid-template-columns:1fr;gap:30px}.docwall{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.docwall img{position:static;width:100%;transform:none}.docwall .seal{display:none}}

/* after signing */
.after{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.after>div{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 26px 28px}
.after h3{font-size:21px;margin:18px 0 8px}
.after p{font-size:15.5px;color:var(--ink-2)}
.after .art{height:150px;border-radius:12px;background:var(--paper-2);display:flex;align-items:center;justify-content:center;overflow:hidden}
.mm{width:100%;height:100%}
.fl{width:100%;padding:0 16px}
.flrow{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;font-size:12.5px;padding:6px 0;border-bottom:1px dashed var(--line-2)}
.flrow:last-child{border-bottom:0}
.flrow b{color:var(--navy);font-weight:600}
.flrow small{color:var(--ink-3)}
.tick{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2);display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}
.tick.on{background:var(--green);border-color:var(--green)}
.pv{width:100%;max-width:220px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:12px}
.pvhead{background:var(--navy);color:#fff;padding:8px 12px;font-family:var(--disp);font-size:13px}
.pvbody{padding:8px 12px}
.pvstep{display:flex;align-items:center;gap:8px;padding:4px 0;color:var(--navy)}
.pvstep small{margin-left:auto;color:var(--ink-3)}
.pvdot{width:9px;height:9px;border-radius:50%;background:var(--line-2)}
.pvdot.done{background:var(--green)}
.pvdot.now{background:var(--navy);box-shadow:0 0 0 3px rgba(37,68,98,.18)}
@media(max-width:900px){.after{grid-template-columns:1fr}}

/* fees */
.fees{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fee{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 28px 28px}
.fee.mid{border-color:var(--green);box-shadow:0 18px 44px rgba(56,105,98,.14)}
.fee h3{font-size:21px}
.fee .amt{font-family:var(--disp);font-size:44px;color:var(--navy);margin:8px 0 14px;line-height:1}
.fee .amt span{font-family:var(--body);font-size:14px;color:var(--ink-3);margin-left:6px}
.fee ul{list-style:none;padding:0}
.fee li{padding:8px 0 8px 26px;border-top:1px solid var(--line);font-size:15px;color:var(--ink-2);position:relative}
.fee li::before{content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.fee .btn{margin-top:18px;width:100%}
.feenote{margin-top:26px;color:var(--ink-2);font-size:15.5px;max-width:70ch}
@media(max-width:900px){.fees{grid-template-columns:1fr}}
.fee{position:relative}
.fee .ribbon{position:absolute;top:-13px;left:24px;background:var(--green);color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.01em;padding:6px 12px;border-radius:999px;box-shadow:0 8px 20px rgba(56,105,98,.28)}
.feefit{margin-top:14px;font-size:14px;color:var(--green-ink);font-family:var(--disp);font-style:italic}
.sharelink{display:inline-block;margin-top:14px;background:none;border:0;padding:0;font:inherit;font-size:14px;font-weight:600;color:var(--green-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-family:var(--body)}
.sharelink:hover{color:var(--navy)}
.fee .sharelink{width:100%;text-align:center}
.sharelink.onnavy{color:#fff}
.sharelink.onnavy:hover{color:var(--mint)}
.sharelink[data-done]{color:var(--green-ink);text-decoration:none}
/* compare */
.compare{margin-top:62px}
.comphead{max-width:62ch;margin-bottom:22px}
.comphead .lab{font-family:var(--disp);font-style:italic;font-size:19px;color:var(--green-ink);margin-bottom:8px}
.comphead h3{font-size:clamp(24px,2.6vw,30px);line-height:1.2}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--white);position:relative}
.tableclip{position:relative}
@media(max-width:900px){.tableclip::after{content:"";position:absolute;top:1px;bottom:1px;right:1px;width:36px;border-radius:0 var(--r-lg) var(--r-lg) 0;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.95));pointer-events:none}.tablehint{display:block;font-size:12.5px;color:var(--ink-3);margin:8px 2px 0}}
.tablehint{display:none}
.cmp{width:100%;border-collapse:collapse;font-size:15px;min-width:640px}
.cmp th,.cmp td{padding:14px 18px;text-align:left;vertical-align:middle;border-top:1px solid var(--line)}
.cmp thead th{border-top:0;font-family:var(--body);font-size:13px;font-weight:600;color:var(--ink-3);text-transform:none;letter-spacing:.01em;background:var(--paper)}
.cmp thead th.us{color:#fff;background:var(--navy);border-radius:0}
.cmp tbody th{font-weight:500;color:var(--navy);width:44%}
.cmp td{color:var(--ink-2)}
.cmp td.yes{color:var(--green-ink);font-weight:600;position:relative;padding-left:40px}
.cmp td.yes::before{content:"";position:absolute;left:18px;top:50%;width:10px;height:6px;margin-top:-5px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.cmp tbody tr td:nth-child(2){background:rgba(232,240,238,.55)}
.cmp td.no{color:var(--ink-3)}
.cmp td.mid{color:var(--ink-2)}
.compnote{margin-top:16px;color:var(--ink-3);font-size:14.5px;max-width:70ch}
@media(max-width:900px){.compare{margin-top:44px}.cmp{min-width:560px;font-size:14px}.cmp th,.cmp td{padding:12px 14px}.cmp td.yes{padding-left:34px}.cmp td.yes::before{left:14px}}

/* plan finder */
.finder{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:34px 36px 30px;max-width:820px}
.fprog{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.fbar{flex:1;height:4px;border-radius:4px;background:var(--paper-2);overflow:hidden}
.fbar .fill{display:block;height:100%;width:25%;background:var(--green);border-radius:4px;transition:width .35s cubic-bezier(.4,0,.2,1)}
.fcount{font-family:var(--disp);font-style:italic;font-size:15px;color:var(--green-ink);white-space:nowrap}
.fq{animation:fqin .35s ease both}
@keyframes fqin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.fqt{font-size:clamp(22px,2.4vw,27px);line-height:1.25;max-width:26ch;text-wrap:balance}
.fhelp{margin-top:10px;color:var(--ink-2);font-size:15px;max-width:60ch}
.choices{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.choice{font:inherit;font-family:var(--body);font-size:15.5px;font-weight:500;color:var(--navy);background:var(--paper);border:1.5px solid var(--line-2);border-radius:999px;padding:13px 20px;cursor:pointer;transition:border-color .15s,background .15s,color .15s,transform .15s;text-align:left;line-height:1.3}
.choice:hover{border-color:var(--navy);background:#fff}
.choice:active{transform:translateY(1px)}
.choice[aria-pressed="true"],.choice.on{background:var(--navy);border-color:var(--navy);color:#fff}
.choice.on.none{background:var(--green-ink);border-color:var(--green-ink)}
.fgo{margin-top:24px}
.fnav{display:flex;gap:18px;margin-top:22px}
.fback,.freset{background:none;border:0;padding:0;font:inherit;font-family:var(--body);font-size:14px;font-weight:600;color:var(--ink-3);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.fback:hover,.freset:hover{color:var(--navy)}
.fres{animation:fqin .4s ease both}
.finder.done .fprog{display:none}
.frlab{font-family:var(--disp);font-style:italic;font-size:17px;color:var(--green-ink)}
.frplan{font-size:clamp(26px,3vw,34px);margin-top:4px;line-height:1.15}
.frfee{font-family:var(--disp);font-size:clamp(30px,3.4vw,40px);color:var(--navy);margin:8px 0 18px;line-height:1.1}
.frfee small{font-family:var(--body);font-size:14px;color:var(--ink-3);margin-left:8px;font-weight:500}
.frwhy{font-size:13.5px;font-weight:600;color:var(--ink-3);letter-spacing:.02em;text-transform:uppercase}
.frlist{list-style:none;margin:10px 0 0;padding:0}
.frlist li{position:relative;padding:8px 0 8px 26px;border-top:1px solid var(--line);font-size:15.5px;color:var(--ink-2)}
.frlist li:last-child{border-bottom:1px solid var(--line)}
.frlist li::before{content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;border-left:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(-45deg)}
.frnote{margin-top:16px;font-family:var(--disp);font-size:18px;line-height:1.35;color:var(--navy);max-width:52ch}
.frnote:empty{display:none}
.fres .ctas{margin-top:22px}
.frfine{margin-top:16px;font-size:13.5px;color:var(--ink-3);max-width:60ch}
@media(max-width:900px){.finder{padding:24px 20px 22px}.choice{font-size:15px;padding:12px 16px}.fres .ctas .btn{width:100%}}

/* attorney */
.atty{display:grid;grid-template-columns:300px 1fr;gap:54px;align-items:start}
/* portrait: photo sits on an offset navy mat, with the site shadow and a hairline highlight ring */
.portrait{position:relative;aspect-ratio:3/4;border-radius:var(--r-lg);margin:0 14px 14px 0;isolation:isolate}
.portrait::before{content:"";position:absolute;inset:14px -14px -14px 14px;border-radius:var(--r-lg);z-index:0;background:radial-gradient(closest-side at 50% 100%,rgba(140,201,187,.34),transparent 72%),linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%)}
.portrait picture{position:absolute;inset:0;z-index:1;border-radius:var(--r-lg);overflow:hidden;background:var(--navy-deep);box-shadow:0 24px 60px rgba(24,47,69,.22),0 2px 8px rgba(24,47,69,.08)}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 10%}
.portrait::after{content:"";position:absolute;inset:0;z-index:2;border-radius:var(--r-lg);box-shadow:inset 0 0 0 1px rgba(255,255,255,.42),inset 0 1px 0 rgba(255,255,255,.18);pointer-events:none}
.attyname{font-size:clamp(28px,3vw,36px)}
.attyrole{color:var(--green-ink);font-family:var(--disp);font-style:italic;font-size:19px;margin:6px 0 18px}
.atty p{color:var(--ink-2);margin-bottom:14px}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 22px}
.cred{font-size:13.5px;font-weight:600;color:var(--navy);background:var(--green-tint);border-radius:999px;padding:7px 13px}
.pull{font-family:var(--disp);font-size:22px;color:var(--navy);border-left:3px solid var(--green);padding-left:18px;margin-top:22px;max-width:44ch;line-height:1.35}
.verify{display:inline-flex;align-items:center;gap:6px;margin-top:22px;font-size:14px;font-weight:600;color:var(--green-ink);text-decoration:none;border-bottom:1px solid var(--line-2);padding-bottom:2px}
.verify:hover{color:var(--navy);border-color:var(--navy)}
.verify .ext{font-size:12px}
@media(max-width:900px){.atty{grid-template-columns:1fr;gap:26px}.portrait{max-width:240px;aspect-ratio:1;margin:0 12px 12px 0}.portrait::before{inset:12px -12px -12px 12px}}

/* questions */
.faq{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-family:var(--disp);font-size:21px;color:var(--navy);position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"";position:absolute;right:6px;top:26px;width:12px;height:12px;border-right:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(45deg);transition:transform .2s}
details[open] summary::after{transform:rotate(225deg);top:32px}
.ans{padding:0 0 22px;color:var(--ink-2);font-size:16.5px;max-width:70ch}
summary:hover{color:var(--green-ink)}
.faqmore{margin-top:26px;color:var(--ink-2);font-size:15.5px}
.faqmore a{color:var(--navy);font-weight:600}

/* closing call */
.cta{background:var(--navy);color:#fff;text-align:center;padding:90px 28px}
.cta h2{color:#fff;font-size:clamp(32px,4.4vw,52px)}
.cta h2 em{font-style:italic;color:var(--mint)}
.cta p{color:#C7D4DF;margin:16px auto 0;font-size:18px;max-width:46ch}
.cta .ctas{justify-content:center}
.cta .quiet{display:block;margin-top:22px;color:#9DB0C0;font-size:14.5px}
.cta .quiet a{color:#fff}
.cta .quiet{line-height:1.9}
.btn.ghost.onnavy{border-color:rgba(255,255,255,.4);color:#fff}
.btn.ghost.onnavy:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* note dialog */
.notedlg{border:0;padding:34px 34px 30px;border-radius:var(--r-lg);width:min(540px,calc(100% - 36px));background:#fff;color:var(--ink);box-shadow:var(--shadow);max-height:92vh;overflow:auto;margin:auto}
.notedlg::backdrop{background:rgba(24,47,69,.55);backdrop-filter:blur(2px)}
.notedlg[open]{animation:dlgin .22s ease}
@keyframes dlgin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mclose{position:absolute;right:14px;top:12px;border:0;background:none;font-size:28px;line-height:1;color:var(--ink-3);cursor:pointer;padding:6px 10px}
.notedlg h3{font-size:26px}
.notedlg p{color:var(--ink-2);margin:8px 0 16px;font-size:15.5px}
.notedlg label{display:block;font-size:13.5px;font-weight:600;color:var(--navy);margin:12px 0 6px}
.notedlg label .opt{font-weight:400;color:var(--ink-3);margin-left:6px}
.notedlg input,.notedlg textarea{width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1px solid var(--line-2);border-radius:10px;background:var(--paper);color:var(--ink)}
.notedlg input:focus,.notedlg textarea:focus{outline:2px solid var(--green);border-color:var(--green);background:#fff}
.notedlg .send{margin-top:18px;width:100%}
.notedlg .err{color:#8A2430;font-size:14px;margin-top:10px;display:none}
.mok{display:none;text-align:center;padding:20px 0 6px}
.mok .ck{width:58px;height:58px;border-radius:50%;background:var(--green);margin:0 auto 16px;position:relative}
.mok .ck::after{content:"";position:absolute;left:19px;top:16px;width:14px;height:24px;border-right:3px solid #fff;border-bottom:3px solid #fff;transform:rotate(45deg)}

/* footer */
footer.site{background:var(--paper-2);border-top:1px solid var(--line);padding:56px 0 40px;color:var(--ink-2);font-size:14.5px}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px;align-items:start}
.footmail{margin-top:14px}
.footmail a{text-decoration:none;color:var(--navy);font-weight:600}
.footline{margin-top:10px;font-size:13.5px;color:var(--ink-3);max-width:34ch}
.foot img{height:44px;width:auto}
.foot .col h4,.foot .col .fh{font-family:var(--body);font-size:13px;font-weight:600;color:var(--navy);margin-bottom:10px}
.foot .col a{display:block;text-decoration:none;color:var(--ink-2);padding:4px 0}
.foot .col a:hover{color:var(--navy)}
.legal{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3);max-width:none}
.legal p{max-width:none}
.legal .row{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px 18px}
.legal .row a{color:var(--ink-3);text-decoration:none}
.legal .row a:hover{color:var(--navy)}
@media(max-width:900px){.foot{grid-template-columns:1fr;gap:22px}}

/* legal pages */
.legalpage{max-width:760px;margin:0 auto;padding:64px 28px 90px}
.legalpage h1{font-size:clamp(34px,4.6vw,52px)}
.legalpage .eff{color:var(--ink-3);font-size:14.5px;margin:10px 0 30px}
.legalpage h2{font-size:24px;margin:34px 0 10px}
.legalpage p{color:var(--ink-2);margin:0 0 14px;max-width:none}
.legalpage ul{margin:0 0 14px 22px;color:var(--ink-2)}
.legalpage li{margin:6px 0}
@media(max-width:900px){.pathart{--gut:96px;--x1:28px;--x2:68px;padding-bottom:88px}.step+.step{margin-top:34px}.step .what{font-size:18.5px}}

/* sticky bar: phones only, after the hero has scrolled away, gone once the closing call is on screen */
.stickybar{display:none}
@media(max-width:900px){
  .stickybar{display:flex;align-items:center;justify-content:space-between;gap:12px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(246,247,244,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);box-shadow:0 -12px 30px rgba(24,47,69,.10);transform:translateY(110%);transition:transform .28s cubic-bezier(.4,0,.2,1)}
  .stickybar.show{transform:none}
  .stickybar .sbtext{display:flex;flex-direction:column;line-height:1.25;min-width:0}
  .stickybar .sbtext b{font-size:14.5px;color:var(--navy)}
  .stickybar .sbtext small{font-size:12.5px;color:var(--ink-3)}
  .stickybar .btn{padding:12px 18px;font-size:14px;flex:0 0 auto}
  body.hasbar{padding-bottom:72px}
}

/* reveal on scroll: scroll driven where the browser has it, otherwise plainly visible */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .reveal{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 28%}
    @keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  }
}

/* cross page transitions between the home and legal pages */
@view-transition{navigation:auto}

@media print{
  nav.top,.stickybar,.cta,.notedlg,.menubtn,.ctas,.sharelink,.fnav,.skip{display:none !important}
  body{background:#fff;color:#000;font-size:12pt}
  section.sec{padding:24px 0}
  .fee,.way,.finder,.after>div{box-shadow:none;break-inside:avoid}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:10pt;color:#555}
}

/* phones: the will and trust shots sit side by side. <source> must never become a grid cell,
   and the desktop placement rules for .d1 and .d2 are undone at full specificity. */
.docwall source{display:none}
@media(max-width:900px){.docwall img.d1,.docwall img.d2{position:static;width:100%;transform:none;left:auto;right:auto;top:auto;bottom:auto}}

/* who inherits with no will: questions on the left, the court's split on the right */
.heirs{margin-top:56px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}
.heirs [hidden]{display:none!important}
.hhead{padding:30px 32px 24px;border-bottom:1px solid var(--line)}
.hhead h3{font-size:clamp(24px,2.6vw,30px);line-height:1.2}
.hhead p{margin-top:10px;color:var(--ink-2);font-size:16px;max-width:62ch}
.hbody{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}
.hq{padding:26px 32px 30px}
.hqi+.hqi{margin-top:22px}
.hqi.fresh{animation:fqin .3s ease both}
.hql{display:block;font-weight:600;color:var(--navy);font-size:15.5px;line-height:1.35}
.hopts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.heirs .choice{padding:10px 16px;font-size:14.5px}
.heirs .choice.num{min-width:46px;padding:10px 0;text-align:center}
.money{position:relative;margin-top:10px;max-width:260px}
.money::before{content:"$";position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-weight:600}
.money input{width:100%;font:inherit;font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--navy);padding:12px 14px 12px 30px;border:1.5px solid var(--line-2);border-radius:12px;background:var(--paper)}
.money input:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 3px rgba(56,105,98,.18)}
.hhint{display:block;margin-top:8px;font-size:13.5px;line-height:1.5;color:var(--ink-3);max-width:46ch}
.hside{padding:26px 32px 30px;background:var(--paper);border-left:1px solid var(--line)}
.hempty{color:var(--ink-2);font-size:15.5px;max-width:40ch}
.hempty em{display:block;font-family:var(--disp);font-size:22px;line-height:1.25;color:var(--navy);margin-bottom:8px}
.hwhen{font-family:var(--disp);font-style:italic;font-size:16.5px;color:var(--green-ink)}
.hlead{font-family:var(--disp);font-weight:500;font-size:clamp(24px,2.4vw,29px);line-height:1.2;color:var(--navy);margin-top:4px;text-wrap:balance}
.k-spouse{--c:var(--navy)}
.k-kids,.k-par,.k-sib{--c:var(--green)}
.k-kin{--c:var(--ink-3)}
.flow{position:relative;display:grid;grid-template-columns:14px 56px minmax(0,1fr);margin-top:18px}
.flow .ribbons{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.flow .ribbons path{fill:var(--c);opacity:.2}
.source{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:3px}
.source span{display:block;min-height:6px;border-radius:7px;background:var(--c)}
.hlist{list-style:none;margin:0;padding:0}
.flow .hlist{grid-column:3;grid-row:1}
.hlist li{position:relative;display:flex;flex-wrap:wrap;align-items:center;column-gap:14px;padding:13px 0 13px 20px}
.hlist .hw{flex:1 1 auto}
.hlist .ha{flex:0 0 auto;margin-left:auto}
.hlist li+li,.hout li{border-top:1px solid var(--line)}
.hlist .hdot{position:absolute;left:0;top:27px;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--c)}
.hlist .hw{font-weight:600;color:var(--navy);font-size:15.5px;line-height:28px}
.hlist .ha{font-family:var(--disp);font-size:22px;line-height:28px;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.hlist .hp{font-family:var(--body);font-size:13px;color:var(--ink-3);margin-left:7px}
.hlist .hs{flex:1 1 100%;font-size:13.5px;line-height:1.45;color:var(--ink-3)}
.hout{margin-left:70px}
.hout li .ha{color:var(--ink-3)}
.hout li .hdot{background:transparent;border:2px solid var(--line-2);box-sizing:border-box}
.hnotes{list-style:none;margin:16px 0 0;padding:0}
.hnotes li{position:relative;padding:6px 0 6px 20px;font-size:14.5px;line-height:1.5;color:var(--ink-2);max-width:60ch}
.hnotes li::before{content:"";position:absolute;left:3px;top:14px;width:7px;height:7px;border-radius:50%;background:var(--green)}
.hcta{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.hcta p{flex:1 1 100%;font-family:var(--disp);font-size:19px;line-height:1.3;color:var(--navy)}
.hlink{font-size:14.5px;font-weight:600;color:var(--green-ink);text-decoration:underline;text-underline-offset:3px}
.hlink:hover{color:var(--navy)}
.hfine{margin:0;padding:16px 32px 18px;border-top:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--ink-3);max-width:none}
@media(max-width:900px){
  .heirs{margin-top:40px}
  .hhead{padding:22px 20px 18px}
  .hbody{grid-template-columns:1fr}
  .hq{padding:20px 20px 24px}
  .hside{padding:22px 20px 24px;border-left:0;border-top:1px solid var(--line)}
  .money{max-width:none}
  .flow{grid-template-columns:12px 42px minmax(0,1fr)}
  .hout{margin-left:54px}
  .hlist .ha{font-size:20px}
  .heirs .choice.num{min-width:40px}
  .hcta .btn{flex:1 1 auto}
  .hfine{padding:14px 20px 16px}
}
@media (prefers-reduced-motion:reduce){.hqi.fresh{animation:none}}

/* v15.32: two steps for couples, the first death and then the survivor's */
.hstages{counter-reset:hstage}
.hstage{counter-increment:hstage}
.hstages.two .hstage+.hstage{margin-top:22px;padding-top:22px;border-top:1px dashed var(--line-2)}
.hstages.two .hwhen{display:flex;align-items:center;gap:9px}
.hstages.two .hwhen::before{content:counter(hstage);display:inline-grid;place-items:center;flex:none;width:23px;height:23px;border-radius:50%;background:var(--navy);color:#fff;font:600 12px/1 var(--body);font-style:normal}
.htext{margin-top:8px;font-size:15px;line-height:1.55;color:var(--ink-2);max-width:62ch}
.k-sfam{--c:var(--green)}

/* v15.39: honor reduced motion for page scrolling */
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* the long term care step inside the plan finder */
.fltc[hidden]{display:none}
.fltc-lab{font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--green-ink,#2C5751)}
.fltc .fqt{margin-top:6px;outline:none}
.fltc p{margin-top:12px;line-height:1.6;color:var(--ink-2);max-width:62ch}
.fltc .fltc-note{padding:12px 14px;border-radius:12px;background:var(--paper,#F6F7F4);color:var(--ink);font-size:15px}
.fltc-check{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 16px;border:1.5px solid var(--line-2,#D5DBD8);border-radius:14px;background:#fff;cursor:pointer}
.fltc-check:has(input:checked){border-color:var(--green,#386962);background:#EDF4F1}
.fltc-check input{flex:none;width:22px;height:22px;margin-top:1px;accent-color:var(--green,#386962)}
.fltc-check span{line-height:1.45;font-weight:600;color:var(--ink)}
.fltc-go{margin-top:18px}
.fltc .fltc-disc{font-size:13px;color:var(--ink-3)}
.frsls{margin-top:18px;padding:16px 18px;border-radius:16px;background:#F7F3F8;border:1px solid #E5DDE7}
.frsls[hidden],.frltc[hidden]{display:none}
.frsls-head b{display:block;font-size:17px;color:#60286A}
.frsls-head span{display:block;margin-top:2px;font-size:13.5px;color:#5B5563}
.frsls p{margin-top:8px;font-size:14.5px;line-height:1.5;color:#4B4552}
.frsls-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px}
.frsls-links a{font-weight:700;color:#60286A;text-decoration:underline;text-underline-offset:3px}
.frltc{display:inline-block;margin-top:14px;font-weight:700;color:var(--green-ink,#2C5751);text-decoration:underline;text-underline-offset:3px}
/* learning band on the home page */
.lgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.lcard{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);box-shadow:0 1px 2px rgba(20,40,60,.04),0 12px 30px rgba(20,40,60,.05);transition:transform .15s,box-shadow .15s}
.lcard:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(20,40,60,.1)}
.lcard .ltopic{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green-ink,#2C5751)}
.lcard b{font-family:var(--disp,Georgia,serif);font-size:20px;line-height:1.25;color:var(--navy)}
.lcard span:last-child{font-size:15px;line-height:1.5;color:var(--ink-2)}
.lmore{margin-top:20px}
@media (max-width:900px){.lgrid{grid-template-columns:1fr}}
/* v15.40: plans from $500 */
.feegroup{font-family:var(--disp,Georgia,serif);font-size:clamp(20px,2.2vw,24px);color:var(--navy);margin:30px 0 0}
.fees.fees-start{grid-template-columns:repeat(2,minmax(0,1fr))}
.feeup{margin:16px 0 0;padding:14px 18px;border-radius:14px;background:#EDF4F1;border:1px solid rgba(56,105,98,.22);color:var(--ink);line-height:1.55}
.feeup b{color:var(--green-ink,#2C5751)}
.fralt{margin-top:16px;padding:14px 16px;border-radius:14px;background:var(--paper,#F6F7F4);color:var(--ink-2);line-height:1.55;font-size:15px}
.fralt[hidden]{display:none}
.fralt a{display:inline-block;margin-top:6px;font-weight:700;color:var(--green-ink,#2C5751);text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){.fees.fees-start{grid-template-columns:1fr}}
