:root{--c-night:#1a2238;--c-night-80:#2e3a55;--c-monsoon:#4a5468;--c-haze:#eaf1ee;--c-haze-deep:#dbe6e2;--c-white:#fff;--c-line:#c8d0d8;--c-line-strong:#6b7588;--c-jade:#1b6e63;--c-jade-deep:#145a51;--c-jade-ink:#10544a;--c-jade-wash:#d3e7e0;--c-mango:#f4b740;--c-mango-deep:#e9a92c;--c-mango-dark:#dc9d22;--c-mango-wash:#fcebc4;--c-hibiscus:#a8325a;--c-disabled-bg:#d9dee3;--c-disabled-fg:#6b7383;--bg:var(--c-haze);--surface:var(--c-white);--surface-sunk:var(--c-haze-deep);--text:var(--c-night);--text-muted:var(--c-monsoon);--link:var(--c-jade);--link-hover:var(--c-jade-deep);--accent:var(--c-mango);--focus:var(--c-hibiscus);--border:var(--c-line);--font-display:"Young Serif", "Iowan Old Style", Georgia, serif;--font-text:"Figtree", "Segoe UI", system-ui, sans-serif;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1.0625rem;--fs-md:1.3125rem;--fs-lg:1.625rem;--fs-xl:2.0625rem;--fs-2xl:2.5625rem;--fs-3xl:clamp(2.75rem, 2rem + 4vw, 4.75rem);--lh-tight:1.1;--lh-snug:1.3;--lh-body:1.6;--fw-regular:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--measure:68ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--radius-sm:4px;--radius-md:10px;--radius-lg:22px;--radius-pill:999px;--shadow-1:0 1px 2px #1a223814;--shadow-2:0 2px 4px #1a22380f, 0 8px 20px -6px #1a223824;--shadow-3:0 4px 8px #1a22380f, 0 22px 44px -12px #1a22383d;--shadow-focus:0 0 0 3px var(--c-haze), 0 0 0 5px var(--c-hibiscus);--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-quick:.14s;--dur-calm:.42s}.on-ink{--focus:var(--c-mango);--text:var(--c-haze);--text-muted:var(--c-haze-deep);--link:var(--c-mango);--link-hover:var(--c-white)}@media (prefers-reduced-motion:reduce){:root{--dur-quick:0s;--dur-calm:0s}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font-text);font-size:var(--fs-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--fw-regular);line-height:var(--lh-tight);text-wrap:balance;margin:0}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-md);line-height:var(--lh-snug)}p{max-width:var(--measure);margin:0}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--link-hover);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}.ph{text-decoration:underline dotted;text-decoration-color:var(--c-line-strong);text-underline-offset:.22em}.muted{color:var(--text-muted)}.small{font-size:var(--fs-sm);line-height:1.45}.btn{--btn-bg:var(--c-jade);--btn-fg:var(--c-white);--btn-border:var(--c-jade);align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-5);border:1.5px solid var(--btn-border);border-radius:var(--radius-sm);background:var(--btn-bg);color:var(--btn-fg);font:var(--fw-semi) var(--fs-base)/1.2 var(--font-text);cursor:pointer;transition:background-color var(--dur-quick) var(--ease-out), transform var(--dur-quick) var(--ease-out);text-decoration:none;display:inline-flex}.btn:hover,.btn.is-hover{--btn-bg:var(--c-jade-deep);--btn-border:var(--c-jade-deep);color:var(--btn-fg);text-decoration:none}.btn:active,.btn.is-active{--btn-bg:var(--c-jade-ink);--btn-border:var(--c-jade-ink);transform:translateY(1px)}.btn.is-focus{outline:2px solid var(--focus);outline-offset:3px}.btn--secondary{--btn-bg:var(--c-white);--btn-fg:var(--c-night);--btn-border:var(--c-line-strong)}.btn--secondary:hover,.btn--secondary.is-hover{--btn-bg:var(--c-jade-wash);--btn-border:var(--c-jade)}.btn--secondary:active,.btn--secondary.is-active{--btn-bg:var(--c-jade-wash);--btn-border:var(--c-jade-ink)}.btn--quiet{--btn-bg:var(--c-mango);--btn-fg:var(--c-night);--btn-border:var(--c-mango)}.btn--quiet:hover,.btn--quiet.is-hover{--btn-bg:var(--c-mango-deep);--btn-border:var(--c-mango-deep)}.btn--quiet:active,.btn--quiet.is-active{--btn-bg:var(--c-mango-dark);--btn-border:var(--c-mango-dark)}.btn--ink{--btn-bg:var(--c-night);--btn-fg:var(--c-white);--btn-border:var(--c-night)}.btn--ink:hover,.btn--ink.is-hover{--btn-bg:var(--c-night-80);--btn-border:var(--c-night-80)}.btn--ink:active,.btn--ink.is-active{--btn-bg:var(--c-night);--btn-border:var(--c-night)}.btn:disabled,.btn.is-disabled{--btn-bg:var(--c-disabled-bg);--btn-fg:var(--c-disabled-fg);--btn-border:var(--c-disabled-bg);cursor:not-allowed;transform:none}.tag{border-radius:var(--radius-pill);background:var(--c-jade-wash);color:var(--c-night);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:.1em .7em;line-height:1.6;display:inline-block}.tag--estimate{background:var(--c-mango)}.card{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);flex-direction:column;display:flex;overflow:hidden}.card__media{aspect-ratio:3/2;padding:var(--space-3) var(--space-4);background:radial-gradient(circle at 78% 30%, var(--c-mango-wash) 0 18%, transparent 18.5%), linear-gradient(180deg, var(--c-haze-deep) 0 62%, var(--c-jade-wash) 62%);color:var(--text-muted);font-size:var(--fs-sm);place-items:end start;display:grid}.card__body{gap:var(--space-3);padding:var(--space-5);flex:1;align-content:start;display:grid}.card__meta{color:var(--text-muted);font-size:var(--fs-sm)}.card__title a{color:var(--text);text-decoration:none}.card__title a:hover{text-decoration:underline 1px}.card__fact{padding-top:var(--space-3);border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-muted);margin-top:auto}.card__fact strong{color:var(--text);font-weight:var(--fw-semi)}.card:has(.card__title a):hover{box-shadow:var(--shadow-2)}.card--note{background:var(--surface-sunk);box-shadow:none}.tiles{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr));margin:0;padding:0;list-style:none;display:grid}.tile{gap:var(--space-2);min-height:15rem;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--c-night);color:var(--c-haze);--focus:var(--c-mango);grid-template-rows:auto 1fr auto;display:grid;position:relative;overflow:hidden}.tile__arc{width:100%;height:5.5rem;overflow:visible}.tile__arc path{fill:none;stroke:var(--c-mango);stroke-width:3px;stroke-linecap:round;stroke-dasharray:.1 8}.tile__arc .from{fill:var(--c-haze)}.tile__arc .to{fill:var(--c-mango)}.tile__name{font-family:var(--font-display);font-size:var(--fs-lg);line-height:var(--lh-tight);align-self:end}.tile__line{color:var(--c-haze-deep);font-size:var(--fs-sm)}.tile__link{color:var(--c-mango);font-weight:var(--fw-semi);font-size:var(--fs-sm);text-decoration:none}.tile__link:after{content:"";border-radius:inherit;position:absolute;inset:0}.tile__link:hover{color:var(--c-white);text-decoration:underline}.tile:has(.tile__link:focus-visible){outline:2px solid var(--c-hibiscus);outline-offset:3px}.tile__link:focus-visible{outline:none}.table-wrap{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);overflow-x:auto}.compare{border-collapse:collapse;width:100%;font-size:var(--fs-sm);line-height:1.45}.compare caption{caption-side:top;text-align:left;padding:var(--space-4) var(--space-5) var(--space-2);color:var(--text-muted)}.compare th,.compare td{padding:var(--space-3);text-align:left;vertical-align:top}.compare thead th{font-weight:var(--fw-semi);border-bottom:2px solid var(--c-night);white-space:nowrap}.compare tbody tr+tr{border-top:1px solid var(--border)}.compare tbody tr:nth-child(2n){background:var(--surface-sunk)}.compare tbody th{font-weight:var(--fw-semi);font-size:var(--fs-base)}.compare .provenance{color:var(--text-muted)}.compare .checked{border-left:1px solid var(--border)}.table-note{padding:var(--space-3) var(--space-5) var(--space-4)}@media (width<=760px){.compare thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.compare,.compare caption,.compare tbody,.compare tr,.compare th,.compare td{display:block}.compare caption{padding-inline:var(--space-5)}.compare tbody tr{padding:var(--space-4) var(--space-5)}.compare tbody th{padding:0 0 var(--space-2)}.compare td{gap:var(--space-3);padding:var(--space-1) 0;grid-template-columns:7.5rem 1fr;display:grid}.compare td:before{content:attr(data-label);color:var(--text-muted)}.compare .checked{margin-top:var(--space-2);padding-top:var(--space-2);border-left:0;border-top:1px dashed var(--c-line-strong)}}.disclosure{gap:var(--space-2) var(--space-4);padding:var(--space-5);background:var(--c-mango-wash);border-radius:var(--radius-md);color:var(--c-night);grid-template-columns:auto 1fr;display:grid}.disclosure svg{grid-row:span 2;width:2.25rem;height:2.25rem}.disclosure__title{font-weight:var(--fw-semi);color:var(--c-hibiscus);font-size:var(--fs-sm)}.disclosure p{font-size:var(--fs-base)}.scale{gap:var(--space-2);margin:0;display:grid}.scale div{align-items:center;gap:var(--space-3);font-size:var(--fs-sm);grid-template-columns:6.5rem 3.5rem 1fr;display:grid}.scale dt{font-weight:var(--fw-semi)}.scale dd{color:var(--text-muted);margin:0}.scale .bar{height:.875rem;width:var(--w);background:var(--c-jade);border-radius:2px;max-width:100%}.site{max-width:860px;padding:0 var(--space-4);margin:0 auto}.site-header{align-items:center;gap:var(--space-3) var(--space-5);padding:var(--space-5) 0;flex-wrap:wrap;display:flex}.site-header nav{gap:var(--space-4);flex-wrap:wrap;display:flex}.site-header img{height:auto;display:block}.site-footer{border-top:1px solid var(--border);margin-top:var(--space-7);padding:var(--space-5) 0;font-size:var(--fs-sm);color:var(--text-muted)}.disclosure{font-size:var(--fs-sm);margin:0 0 var(--space-5);display:block}.verify{color:#8a1010;background:#ffe3e3;border-radius:3px;padding:0 .3rem;font-weight:600}table:not(.compare){border-collapse:collapse;background:var(--surface);width:100%}table:not(.compare) td,table:not(.compare) th{border:1px solid var(--border);padding:var(--space-2);text-align:left;vertical-align:top}h1{margin:var(--space-5) 0 var(--space-3)}h2{margin:var(--space-7) 0 var(--space-4)}.tiles{margin:var(--space-5) 0}.cta-row{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));display:grid}label{margin:var(--space-2) 0;display:block}input,select{font:inherit;padding:var(--space-1) var(--space-2);border:1px solid var(--c-line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}
