/* Generated design e04-dictionary-2 (docs/design/pool), prefix lup- */
:root{--lup-paper:#eff5fa;--lup-tint:#e2eaf2;--lup-ink:#1c1c16;--lup-soft:#47473d;--lup-grey:#68685c;--lup-rule:#c2ced8;--lup-indigo:#85732a;--lup-indigo-tint:#f5f3e9;--lup-serif:Constantia,Cambria,"Hoefler Text",Georgia,serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--lup-paper);color:var(--lup-ink);font-family:var(--lup-serif);font-size:1.125rem;line-height:1.65;overflow-wrap:break-word;font-variant-numeric:lining-nums}
@media(min-width:1000px){body{font-size:1.1875rem}}
a{color:var(--lup-indigo);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--lup-indigo);outline-offset:2px;border-radius:1px}
[id]{scroll-margin-top:1rem}
h1,h2,h3,p,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
.lup-wrap{max-width:72rem;margin:0 auto;padding:0 1.25rem}
@media(min-width:700px){.lup-wrap{padding:0 2rem}}
.lup-skip{position:absolute;left:-999rem;top:0;background:var(--lup-indigo);color:var(--lup-paper);padding:.75rem 1rem;z-index:10}
.lup-skip:focus{left:.5rem;top:.5rem}
.lup-header{border-bottom:3px double var(--lup-ink)}
.lup-header-in{display:flex;flex-direction:column;gap:.25rem;padding-top:1rem}
.lup-brand{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .75rem;min-height:44px;color:var(--lup-ink);text-decoration:none;align-self:flex-start}
.lup-brand-name{font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;font-size:1.55rem;line-height:1.2}
.lup-brand-tag{font-style:italic;color:var(--lup-grey);font-size:.95rem}
.lup-nav ul{display:flex;gap:0 1.4rem;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.lup-nav a{display:inline-flex;align-items:center;min-height:44px;padding:.3rem 0;color:var(--lup-ink);text-decoration:none;font-size:1rem;border-bottom:2px solid transparent}
.lup-nav a:hover{color:var(--lup-indigo);border-bottom-color:var(--lup-rule)}
.lup-nav a[aria-current="page"]{color:var(--lup-indigo);font-weight:700;border-bottom-color:var(--lup-indigo)}
@media(min-width:900px){.lup-header-in{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:2rem}.lup-nav ul{flex-wrap:wrap;white-space:normal;overflow:visible;justify-content:flex-end}}
.lup-pos{font-style:italic;color:var(--lup-grey);font-size:.95rem}
.lup-disclosure{margin-top:1.5rem;padding:.7rem 0;border-top:1px solid var(--lup-rule);border-bottom:1px solid var(--lup-rule);font-size:.9rem;line-height:1.55;color:var(--lup-grey)}
.lup-disclosure-label{font-weight:700;font-variant-caps:small-caps;letter-spacing:.04em;color:var(--lup-ink);margin-right:.4rem}
.lup-footer{margin-top:4rem;border-top:3px double var(--lup-ink);background:var(--lup-tint);padding:2.5rem 0 2rem}
.lup-foot-cols{display:grid;gap:1.5rem}
@media(min-width:700px){.lup-foot-cols{grid-template-columns:repeat(3,1fr);gap:2.5rem}}
.lup-foot-h{font-size:1.1rem;font-weight:700;font-variant-caps:small-caps;letter-spacing:.04em;border-bottom:1px solid var(--lup-rule);padding-bottom:.3rem;margin-bottom:.3rem}
.lup-footer li a{display:inline-flex;align-items:center;min-height:44px;font-size:1rem;color:var(--lup-ink)}
.lup-legal{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--lup-rule);font-style:italic;color:var(--lup-grey);font-size:.95rem;max-width:46rem}
.lup-copy{margin-top:.5rem;color:var(--lup-grey);font-size:.9rem}
.lup-flow{padding-top:1.25rem}
.lup-flow>*{max-width:46rem}
.lup-flow>.lup-wide{max-width:none}
@media(min-width:1040px){
.lup-flow:has(>.lup-toc){display:grid;grid-template-columns:minmax(0,46rem) minmax(13rem,17rem);column-gap:4rem;justify-content:space-between}
.lup-flow:has(>.lup-toc)>*{grid-column:1;min-width:0}
.lup-flow:has(>.lup-toc)>.lup-toc{grid-column:2;grid-row:1/span 40;align-self:start;position:sticky;top:1.5rem;margin-top:1rem}
}
.lup-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;font-size:.9rem;color:var(--lup-grey)}
.lup-crumbs li{display:inline-flex;align-items:center;min-height:44px}
.lup-crumbs li+li::before{content:"/";margin:0 .55rem;color:var(--lup-rule)}
.lup-crumbs a{display:inline-flex;align-items:center;min-height:44px;color:var(--lup-grey)}
.lup-crumbs span{font-style:italic}
.lup-kicker{margin-top:1rem;font-style:italic;color:var(--lup-grey);font-size:1rem}
.lup-head h1{margin-top:.4rem;font-size:clamp(2rem,5vw + .7rem,3.1rem);line-height:1.12;letter-spacing:-.012em;font-weight:700;text-wrap:balance}
.lup-standfirst{margin-top:1.1rem;font-size:1.28rem;line-height:1.5;color:var(--lup-ink)}
.lup-standfirst p+p{margin-top:.6rem}
.lup-meta{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.1rem 1.25rem;font-style:italic;color:var(--lup-grey);font-size:.95rem}
.lup-block{margin-top:2.75rem}
.lup-h{font-size:1.5rem;line-height:1.2;font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;padding-top:.9rem;border-top:2px solid var(--lup-ink);margin-bottom:.9rem}
.lup-note{margin-top:.7rem;font-style:italic;color:var(--lup-grey);font-size:.95rem;line-height:1.55}
.lup-brief{margin-top:1.75rem;background:var(--lup-tint);border-top:2px solid var(--lup-ink);padding:1.1rem 1.15rem 1.2rem}
.lup-brief h2{font-size:1.2rem;font-weight:700;font-variant-caps:small-caps;letter-spacing:.04em;line-height:1.25;margin-bottom:.5rem}
.lup-brief dl{display:grid;gap:0}
.lup-brief dl>div{padding:.6rem 0;border-top:1px solid var(--lup-rule)}
.lup-brief dt{font-style:italic;color:var(--lup-grey);font-size:.95rem;line-height:1.4}
.lup-brief dd{font-weight:700;line-height:1.4;margin-top:.1rem}
@media(min-width:640px){.lup-brief{padding:1.25rem 1.5rem 1.3rem}.lup-brief dl{grid-template-columns:1fr 1fr;column-gap:2rem}}
.lup-toc{margin-top:1.75rem;border-top:1px solid var(--lup-rule);border-bottom:1px solid var(--lup-rule);padding:.8rem 0 .5rem}
.lup-toc-t{font-weight:700;font-variant-caps:small-caps;letter-spacing:.04em;font-size:1.1rem}
.lup-toc a{display:flex;align-items:center;min-height:44px;font-size:.98rem;line-height:1.3;color:var(--lup-soft);text-decoration:none;padding:.3rem 0 .3rem .8rem;border-left:1px solid var(--lup-rule)}
.lup-toc a:hover{color:var(--lup-indigo);border-left-color:var(--lup-indigo);text-decoration:underline}
@media(min-width:1040px){.lup-flow:has(>.lup-toc)>.lup-toc{border-bottom:0;border-top:2px solid var(--lup-ink);max-height:calc(100vh - 3rem);overflow-y:auto}}
.lup-picks{font-style:italic;color:var(--lup-grey);font-size:.95rem;line-height:1.55}
.lup-picks>.lup-h{font-style:normal;color:var(--lup-ink);margin-bottom:.4rem}
.lup-pick{font-style:normal;color:var(--lup-ink);font-size:1rem;line-height:1.6;border-top:1px solid var(--lup-rule);padding:1.2rem 0 1.4rem;margin-top:1.1rem}
.lup-pick+.lup-pick{margin-top:0}
.lup-pick:first-of-type{border:1px solid var(--lup-rule);border-left:4px solid var(--lup-indigo);background:#f8fcff;padding:1.1rem 1.1rem 1.3rem;margin-bottom:.4rem}
.lup-pick:first-of-type+.lup-pick{border-top:0}
.lup-pick-meta{display:flex;align-items:baseline;gap:.6rem}
.lup-rank{font-weight:700;color:var(--lup-indigo);font-size:1.15rem}
.lup-pick h2{font-size:1.28rem;line-height:1.3;font-weight:700;margin-top:.1rem}
.lup-price{font-weight:700;margin-top:.4rem}
.lup-verdict{margin-top:.5rem;color:var(--lup-soft)}
.lup-verdict p+p{margin-top:.5rem}
.lup-lists{display:grid;gap:.9rem;margin-top:.9rem}
@media(min-width:640px){.lup-lists{grid-template-columns:repeat(3,1fr);gap:1.5rem}}
.lup-list:not(:has(li)){display:none}
.lup-list ul{margin-top:.15rem}
.lup-list li{position:relative;padding-left:.95rem;font-size:.95rem;line-height:1.45;margin-top:.3rem}
.lup-list li::before{content:"";position:absolute;left:0;top:.65em;width:.4rem;height:1px;background:var(--lup-grey)}
.lup-pick-foot{margin-top:1rem}
.lup-go{display:inline-flex;align-items:center;min-height:44px;padding:.35rem 1rem;background:var(--lup-indigo);color:var(--lup-paper);border:1px solid var(--lup-indigo);border-radius:2px;font-weight:700;font-size:1rem;line-height:1.25;text-decoration:none}
.lup-go:hover{background:#66581f;text-decoration:underline}
.lup-fine{display:block;margin-top:.35rem;font-size:.82rem;line-height:1.4;font-style:italic;color:var(--lup-grey)}
.lup-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--lup-ink)}
.lup-table{width:100%;border-collapse:collapse;font-size:.92rem;line-height:1.45}
.lup-table th,.lup-table td{padding:.6rem .9rem .6rem 0;text-align:left;vertical-align:top;border-top:1px solid var(--lup-rule);overflow-wrap:normal;word-break:normal;hyphens:none}
.lup-table thead th{border-top:0;font-weight:400;font-style:italic;color:var(--lup-grey);vertical-align:bottom;white-space:nowrap}
.lup-table tbody th{font-weight:700;min-width:7rem}
.lup-table tbody th a{display:inline-flex;align-items:center;min-height:32px}
.lup-table td{min-width:5.5rem}
.lup-table td:first-child{min-width:0}
.lup-table-sum{min-width:46rem}
.lup-table-sum td:nth-child(2){font-weight:700}
.lup-table-sum td:first-child{font-weight:700;color:var(--lup-indigo)}
.lup-table-sum td:last-child{min-width:11rem;padding-right:0}
.lup-table-sum .lup-go{background:transparent;color:var(--lup-indigo);font-size:.92rem;padding:.3rem .7rem}
.lup-table-sum .lup-go:hover{background:var(--lup-indigo-tint)}
.lup-total th,.lup-total td{background:var(--lup-tint);border-top:1px solid var(--lup-ink);font-weight:700;padding-left:.6rem}
.lup-entry{border-top:1px solid var(--lup-rule);padding:1.4rem 0 1.5rem}
.lup-h+.lup-entry{border-top:0;padding-top:.3rem}
.lup-entry h2{font-size:1.42rem;line-height:1.25;font-weight:700;font-variant-caps:small-caps;letter-spacing:.025em}
.lup-entry p[data-part="plain"]{margin:.65rem 0 0;padding:.7rem 1rem;background:var(--lup-indigo-tint);border-left:3px solid var(--lup-indigo);font-weight:700;font-size:1.18rem;line-height:1.45}
.lup-entry>:not(h2):not([data-part]){margin-top:.65rem;padding-left:1rem;font-size:.95rem;line-height:1.6;color:var(--lup-soft)}
.lup-terms dt{padding-top:.9rem;border-top:1px solid var(--lup-rule);font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;font-size:1.22rem;line-height:1.3}
.lup-terms dt:first-of-type{border-top:0;padding-top:0}
.lup-terms dt a{display:inline-flex;align-items:center;min-height:44px;color:var(--lup-ink);text-decoration-color:var(--lup-indigo)}
.lup-terms dt a:hover{color:var(--lup-indigo)}
.lup-terms dd{padding-bottom:1rem;font-size:1rem;line-height:1.6;color:var(--lup-soft)}
.lup-terms dd .lup-pos{margin-right:.35rem}
@media(min-width:760px){
.lup-terms dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-flow:row dense;column-gap:3rem}
.lup-terms dt:nth-of-type(odd),.lup-terms dd:nth-of-type(odd){grid-column:1}
.lup-terms dt:nth-of-type(even),.lup-terms dd:nth-of-type(even){grid-column:2}
.lup-terms dt:nth-of-type(2){border-top:0;padding-top:0}
}
.lup-prose h2{font-size:1.42rem;line-height:1.25;font-weight:700;font-variant-caps:small-caps;letter-spacing:.025em;padding-top:.9rem;border-top:1px solid var(--lup-rule);margin-bottom:.6rem}
.lup-prose p+p,.lup-prose p+ul,.lup-prose p+ol,.lup-prose ul+p,.lup-prose ol+p{margin-top:.8rem}
.lup-prose ul,.lup-prose ol{padding-left:1.3rem}
.lup-prose ul{list-style:square}
.lup-prose ol{list-style:decimal}
.lup-prose li{margin-top:.5rem}
.lup-prose li::marker{color:var(--lup-indigo)}
.lup-qa{border-top:1px solid var(--lup-rule)}
.lup-h+.lup-qa{border-top:0}
.lup-qa summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:52px;padding:.6rem 0;font-weight:700;line-height:1.35;cursor:pointer;list-style:none}
.lup-qa summary::-webkit-details-marker{display:none}
.lup-qa summary::after{content:"";flex:none;width:.55rem;height:.55rem;border-right:2px solid var(--lup-indigo);border-bottom:2px solid var(--lup-indigo);transform:rotate(45deg);margin:0 .3rem .2rem 0}
.lup-qa[open] summary::after{transform:rotate(-135deg);margin-bottom:-.2rem}
.lup-qa summary:hover{color:var(--lup-indigo)}
.lup-qa [data-part="answer"]{padding:0 0 1.1rem 1rem;border-left:3px solid var(--lup-indigo-tint);margin-bottom:.9rem;font-size:1rem;color:var(--lup-soft)}
.lup-related ul{display:grid}
.lup-related a{display:flex;align-items:center;min-height:48px;padding:.4rem 0;border-bottom:1px solid var(--lup-rule);font-weight:700;font-size:1rem;line-height:1.35}
@media(min-width:640px){.lup-related ul{grid-template-columns:1fr 1fr;column-gap:2.5rem}}
.lup-sources ol{list-style:decimal;padding-left:1.4rem;font-size:.9rem;line-height:1.55;color:var(--lup-grey)}
.lup-sources li{margin-top:.45rem;padding-left:.2rem}
.lup-sources a{color:var(--lup-indigo)}
.lup-hero{padding:2.5rem 0 2.75rem;max-width:46rem}
@media(min-width:900px){.lup-hero{padding:4rem 0 3.5rem}}
.lup-kicker{font-style:italic;color:var(--lup-grey);font-size:1rem;margin-bottom:.5rem}
.lup-hero h1{font-size:clamp(2.2rem,6vw + .6rem,3.6rem);line-height:1.08;letter-spacing:-.012em;font-weight:700;text-wrap:balance}
.lup-lead{margin-top:1.1rem;font-size:1.3rem;line-height:1.5;color:var(--lup-soft)}
.lup-finder{margin-top:1.75rem;display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}
.lup-finder-field{display:flex;flex-direction:column;gap:.25rem;flex:1 1 14rem;max-width:24rem}
.lup-finder select{width:100%;min-height:52px;padding:0 .9rem;font:inherit;font-size:1.05rem;color:var(--lup-ink);background:#f8fcff;border:1px solid var(--lup-ink);border-radius:2px}
.lup-finder button{min-height:52px;min-width:5.5rem;padding:0 1.6rem;font:inherit;font-weight:700;font-variant-caps:small-caps;letter-spacing:.05em;font-size:1.1rem;color:var(--lup-paper);background:var(--lup-indigo);border:1px solid var(--lup-indigo);border-radius:2px;cursor:pointer}
.lup-finder button:hover{background:#66581f}
.lup-updated{margin-top:1.1rem;font-style:italic;color:var(--lup-grey);font-size:.95rem}
.lup-sec{border-top:1px solid var(--lup-rule);padding:2.25rem 0}
.lup-sec-head h2{font-size:1.5rem;line-height:1.2;font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;margin-bottom:1rem}
@media(min-width:900px){.lup-sec{display:grid;grid-template-columns:14rem minmax(0,1fr);column-gap:3rem;padding:2.75rem 0}.lup-sec-head h2{margin-bottom:0}}
.lup-topics{display:grid;gap:0}
.lup-topic{position:relative;padding:1.1rem 0 1.2rem;border-top:1px solid var(--lup-rule)}
.lup-topic:first-child{border-top:0;padding-top:0}
.lup-topic-n{font-weight:700;color:var(--lup-indigo);font-size:1.1rem}
.lup-topic h3{font-size:1.3rem;line-height:1.25;font-weight:700;margin:.1rem 0 .4rem}
.lup-topic p{color:var(--lup-soft);font-size:1rem;line-height:1.55}
.lup-topic-go{display:inline-flex;align-items:center;min-height:44px;margin-top:.2rem;font-weight:700;font-size:1rem}
.lup-topic-go::after{content:"";position:absolute;inset:0}
@media(min-width:700px){.lup-topics{grid-template-columns:repeat(3,1fr);gap:2rem}.lup-topic,.lup-topic:first-child{border-top:2px solid var(--lup-ink);padding:1rem 0 0}}
.lup-qlist{display:grid}
.lup-qlist a{display:flex;align-items:center;min-height:52px;padding:.5rem 0;border-bottom:1px solid var(--lup-rule);font-weight:700;color:var(--lup-ink);text-decoration:none;line-height:1.35}
.lup-qlist a:hover{color:var(--lup-indigo);text-decoration:underline}
@media(min-width:700px){.lup-qlist{grid-template-columns:1fr 1fr;column-gap:2.5rem}}
.lup-feat{display:grid;gap:0}
.lup-feat li{padding:1rem 0;border-top:1px solid var(--lup-rule)}
.lup-feat li:first-child{border-top:0;padding-top:0}
.lup-feat h3{font-size:1.15rem;font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;line-height:1.3}
.lup-feat h3 a{display:inline-flex;align-items:center;min-height:44px;color:var(--lup-ink)}
.lup-feat-pick{font-weight:700;font-size:1.15rem;line-height:1.35}
.lup-feat-price{color:var(--lup-soft);font-size:1rem}
@media(min-width:700px){.lup-feat{grid-template-columns:repeat(3,1fr);gap:2rem}.lup-feat li,.lup-feat li:first-child{border-top:0;border-left:3px solid var(--lup-indigo);padding:0 0 0 1rem}}
.lup-chips{display:flex;flex-wrap:wrap;gap:.6rem}
.lup-chips a{display:inline-flex;align-items:center;min-height:44px;padding:.2rem .9rem;border:1px solid var(--lup-rule);border-radius:2px;background:#f8fcff;color:var(--lup-ink);text-decoration:none;font-weight:700;font-variant-caps:small-caps;letter-spacing:.03em;font-size:1.05rem;line-height:1.25}
.lup-chips a:hover{border-color:var(--lup-indigo);color:var(--lup-indigo)}
.lup-more{display:inline-flex;align-items:center;min-height:44px;margin-top:.9rem;font-weight:700;font-size:1rem}
.lup-method{max-width:44rem;counter-reset:lup-m}
.lup-method li{counter-increment:lup-m;position:relative;padding:.8rem 0 .8rem 2.2rem;border-top:1px solid var(--lup-rule);font-size:1rem;line-height:1.6;color:var(--lup-soft)}
.lup-method li:first-child{border-top:0;padding-top:0}
.lup-method li::before{content:counter(lup-m);position:absolute;left:0;font-weight:700;color:var(--lup-indigo)}
.lup-states{columns:2;column-gap:1.5rem}
.lup-states li{break-inside:avoid}
.lup-states a{display:flex;align-items:center;min-height:44px;font-size:1rem;color:var(--lup-ink);text-decoration:none;border-bottom:1px solid var(--lup-rule)}
.lup-states a:hover{color:var(--lup-indigo);text-decoration:underline}
@media(min-width:700px){.lup-states{columns:4;column-gap:2rem}}
@media(min-width:1100px){.lup-states{columns:5}}
