*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0}img,svg{max-width:100%}svg{height:auto}.wrap{max-width:var(--max,70rem);margin:0 auto;padding:0 1.25rem}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.num{text-align:right;font-variant-numeric:tabular-nums}.spark{width:100%;height:auto;display:block}.spark-line{stroke:var(--accent);stroke-width:1.8px;stroke-linejoin:round;stroke-linecap:round}.spark-dot{fill:var(--accent)}:focus-visible{outline:3px solid var(--gD);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@font-face{font-family:Inter Fallback;src:local(Arial);size-adjust:104%}@font-face{font-family:Inter;src:url(/fonts/inter.woff2)format("woff2");font-weight:400 800;font-display:swap}:root{--bg:#f2f7f1;--card:#fff;--ink:#10241a;--ink-soft:#52665a;--rule:#d9e5d8;--accent:#0f7a41;--accent-2:#0b5d33;--gA:#0f7a41;--gB:#4c7916;--gC:#876500;--gD:#a94e0b;--gF:#b02e22;--gA-bg:#e1f4e8;--gB-bg:#eef6dc;--gC-bg:#fbf1cc;--gD-bg:#fde5d1;--gF-bg:#fbdcd8;--green:var(--accent);--green-deep:var(--accent-2);--green-light:#dcebd8;--amber:var(--gD);--series-1:#1f5c3a;--series-2:#985f15;--series-3:#2a6f97;--series-4:#8a4f7d;--series-5:#5c7a29;--series-6:#a33b3b;--max:70rem;--mark-vein:#fff;--sans:"Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0c1812;--card:#13251b;--ink:#ecf6ee;--ink-soft:#9db4a5;--rule:#25402f;--accent:#4fd88a;--accent-2:#8fe9b4;--gA:#4fd88a;--gB:#a3d94f;--gC:#f0c63a;--gD:#f59a52;--gF:#f2766a;--gA-bg:#12372a;--gB-bg:#26361a;--gC-bg:#3a3214;--gD-bg:#3d2918;--gF-bg:#3d1d1a;--green-light:#1b3326;--mark-vein:#0c1812;--series-1:#80c79e;--series-2:#f2b55c;--series-3:#79c7ee;--series-4:#d3a5c8;--series-5:#b6d875;--series-6:#f4a29d}}body{background:var(--bg);color:var(--ink);font:1.0625rem/1.65 var(--sans)}a{color:var(--accent-2);text-underline-offset:.2em}.skip-link{z-index:10;background:var(--card);color:var(--ink);border:2px solid;border-radius:.5rem;padding:.75rem 1rem;position:absolute;top:.5rem;left:1.25rem;transform:translateY(calc(-100% - 1rem))}.skip-link:focus{transform:translateY(0)}.brand,.nav a,.site-footer a{align-items:center;min-height:44px;display:inline-flex}.site-header{background:var(--card);border-bottom:1px solid var(--rule)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 2rem;padding-top:.85rem;padding-bottom:.85rem;display:flex}.brand{font:800 1.25rem/1 var(--sans);letter-spacing:-.02em;color:var(--ink);align-items:center;gap:.55rem;text-decoration:none;display:flex}.mark{width:1.9rem;height:1.9rem;color:var(--accent)}.nav{font:600 .92rem/1 var(--sans);flex-wrap:wrap;gap:.2rem .4rem;display:flex}.nav a{color:var(--ink);border-radius:2rem;padding:.55rem .8rem;text-decoration:none}.nav a:hover{background:var(--green-light)}.hero{padding:clamp(2rem,5vw,3.6rem) 0 1rem}.hero .wrap{grid-template-columns:minmax(0,1fr);align-items:center;gap:2rem 3rem;display:grid}@media (width>=60rem){.hero .wrap{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}.pill{font:700 .78rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2);background:var(--green-light);border-radius:2rem;margin-bottom:1rem;padding:.5rem .8rem;display:inline-block}h1{font:800 clamp(2.3rem, 5.6vw, 4rem)/1.03 var(--sans);letter-spacing:-.04em;margin:0 0 1rem}h1 em{color:var(--accent);font-style:normal}.lead{color:var(--ink-soft);max-width:36rem;margin:0 0 1.2rem;font-size:1.2rem}.lead b{color:var(--ink)}.cta{background:var(--accent);color:var(--bg);font:700 1rem/1 var(--sans);border-radius:.7rem;padding:.95rem 1.4rem;text-decoration:none;display:inline-block}.cta:hover{background:var(--accent-2)}.picks{gap:.9rem;display:grid}.pick{background:var(--card);border:1px solid var(--rule);color:var(--ink);border-radius:1rem;grid-template-columns:4.2rem minmax(0,1fr);align-items:center;gap:1rem;padding:1rem 1.2rem;text-decoration:none;display:grid;box-shadow:0 6px 20px #103c1e12}.pick b{font:800 1.25rem/1.2 var(--sans);letter-spacing:-.02em;display:block}.pick div>span{color:var(--ink-soft);font-size:.93rem;line-height:1.4;display:block}.pick small{font:700 .7rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);margin-bottom:.3rem;display:block}.grade{width:4.2rem;height:4.2rem;font:800 2.4rem/1 var(--sans);letter-spacing:-.03em;border-radius:1.1rem;place-items:center;display:grid}.g-A{color:var(--gA);background:var(--gA-bg)}.g-B{color:var(--gB);background:var(--gB-bg)}.g-C{color:var(--gC);background:var(--gC-bg)}.g-D{color:var(--gD);background:var(--gD-bg)}.g-F{color:var(--gF);background:var(--gF-bg)}.grade.sm{border-radius:.8rem;width:3rem;height:3rem;font-size:1.7rem}.grade.xl{border-radius:1.8rem;width:7.5rem;height:7.5rem;font-size:4.6rem}.facts{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem;margin:1.4rem 0 0;padding:0;list-style:none;display:grid}.facts li{background:var(--card);border:1px solid var(--rule);border-radius:.9rem;padding:.9rem 1.1rem}.facts b{font:800 1.9rem/1.1 var(--sans);letter-spacing:-.03em;color:var(--accent-2);display:block}.facts span{color:var(--ink-soft);margin-top:.2rem;font-size:.88rem;line-height:1.4;display:block}section.block{padding:clamp(2rem,5vw,3.4rem) 0}h2{font:800 clamp(1.7rem, 3.6vw, 2.4rem)/1.12 var(--sans);letter-spacing:-.03em;margin:0 0 .6rem}h3{font:700 1.15rem/1.3 var(--sans);letter-spacing:-.01em;margin:1.5rem 0 .4rem}.sub{color:var(--ink-soft);max-width:44rem;margin:0 0 1.4rem}.key+.cards{margin-top:1.4rem}.sub.after{margin:1rem 0 0}.cards{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;display:grid}.rc{background:var(--card);border:1px solid var(--rule);color:var(--ink);border-radius:1.1rem;padding:1.1rem 1.2rem 1.2rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}.rc:hover{transform:translateY(-3px);box-shadow:0 10px 26px #103c1e1f}.rc-top{grid-template-columns:3.4rem minmax(0,1fr);align-items:center;gap:.9rem;display:grid}.rc .grade{border-radius:.9rem;width:3.4rem;height:3.4rem;font-size:2rem}.rc b{font:800 1.15rem/1.2 var(--sans);letter-spacing:-.02em;display:block}.rc .rk{font:600 .78rem/1.3 var(--sans);color:var(--ink-soft)}.rc dl{grid-template-columns:1fr auto;gap:.35rem .8rem;margin:1rem 0 0;font-size:.93rem;display:grid}.rc dt{color:var(--ink-soft)}.rc dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.meter{border-radius:.3rem;width:100%;height:.55rem;margin-top:.9rem;display:block}.m-bg{fill:var(--rule)}.m-range{stroke:#b45309;stroke-width:3px;stroke-linecap:round}.ranking-value,.ranking-overlap,.ranking-trip{margin:.6rem 0 0;font-size:.85rem}.ranking-value .allocation-range{color:#a8470a;display:block}@media (prefers-color-scheme:dark){.m-range{stroke:#fbbf24}.ranking-value .allocation-range{color:#fbbf24}}.m-A{fill:var(--gA)}.m-B{fill:var(--gB)}.m-C{fill:var(--gC)}.m-D{fill:var(--gD)}.m-F{fill:var(--gF)}.est-tag{font:700 .68rem/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:#a8470a}@media (prefers-color-scheme:dark){.est-tag{color:var(--gD)}}.key{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.key li{background:var(--card);border:1px solid var(--rule);color:var(--ink-soft);border-radius:.8rem;grid-template-columns:2.6rem minmax(0,1fr);align-items:center;gap:.7rem;padding:.7rem .9rem;font-size:.88rem;line-height:1.35;display:grid}.key .grade{border-radius:.7rem;width:2.6rem;height:2.6rem;font-size:1.5rem}.compare{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;overflow:hidden}.compare table{border-collapse:collapse;width:100%;font-size:.97rem}.compare th,.compare td{text-align:left;border-top:1px solid var(--rule);white-space:nowrap;padding:.75rem 1rem}.compare th{background:var(--green-light);font:700 .78rem/1.3 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2);white-space:normal;vertical-align:bottom;border-top:0}.compare .num{text-align:right;font-variant-numeric:tabular-nums}.compare td a{color:var(--ink);font-weight:700;text-decoration:none}.compare td a:hover{text-decoration:underline}.compare tr.you td{background:var(--green-light);font-weight:700}.why{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;margin-top:1rem;display:grid}.why div{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;padding:1.2rem 1.3rem}.why h3{margin-top:0}.why p{color:var(--ink-soft);margin:0;font-size:.97rem}.figure{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;margin:1.2rem 0;padding:1rem}.figure svg{width:100%;display:block}.figure text{font:500 12px var(--sans);fill:var(--ink-soft)}.figure figcaption{color:var(--ink-soft);padding:.4rem .2rem 0;font-size:.85rem}.db-grid{stroke:var(--rule)}.db-link{stroke:var(--green-light);stroke-width:4px;stroke-linecap:round}.db-from{fill:var(--card);stroke:var(--ink-soft);stroke-width:2px}.db-to{fill:var(--accent)}.figure .db-name{fill:var(--ink);font-weight:600}.figure .db-val{fill:var(--accent-2);font-weight:800}.note p{margin:0 0 .5rem}.note p:last-child{margin:0}.crumbs{color:var(--ink-soft);margin:0 0 1rem;font-size:.85rem}details.tbl{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;margin:1.2rem 0}details.tbl summary{cursor:pointer;padding:1rem 1.2rem;font-weight:700}table.data{border-collapse:collapse;width:100%;font-size:.93rem}table.data th,table.data td{text-align:left;border-top:1px solid var(--rule);white-space:nowrap;padding:.55rem .9rem}table.data th{font:700 .72rem/1.3 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);white-space:normal;vertical-align:bottom}table.data .num{text-align:right;font-variant-numeric:tabular-nums}.peers{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.8rem;display:grid}.peer{background:var(--card);border:1px solid var(--rule);color:var(--ink);border-radius:.9rem;padding:.9rem 1.1rem;text-decoration:none;display:block}.peer b{letter-spacing:-.01em;font-weight:800;display:block}.peer span{color:var(--ink-soft);font-size:.88rem}.directory{columns:15rem;column-gap:2rem;margin:1rem 0 0;padding:0;list-style:none}.directory li{break-inside:avoid;border-bottom:1px solid var(--rule);padding:.35rem 0}.directory span{color:var(--ink-soft);font-size:.85rem}.site-footer{border-top:1px solid var(--rule);color:var(--ink-soft);margin-top:2rem;padding:2.2rem 0 1.6rem;font-size:.9rem}.foot-top{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;padding-bottom:1.2rem;display:flex}.foot-brand{font-size:1.05rem}.foot-nav{flex-wrap:wrap;gap:.2rem 1.4rem;display:flex}.foot-nav a{color:var(--ink);padding:.55rem 0;font-weight:600;text-decoration:none}.foot-nav a:hover{text-decoration:underline}.foot-note{max-width:52rem;margin:1.1rem 0 0;font-size:.85rem;line-height:1.55}.foot-base{flex-wrap:wrap;justify-content:space-between;gap:.4rem 2rem;margin:1rem 0 0;font-size:.85rem;display:flex}main>.wrap,main.wrap{padding-top:.5rem;padding-bottom:2rem}.lede{color:var(--ink-soft);max-width:46rem;margin:0 0 1.4rem;font-size:1.2rem}main h1{font:800 clamp(2.1rem, 5vw, 3.2rem)/1.06 var(--sans);letter-spacing:-.035em;margin:.4rem 0 .8rem}main h2{font:800 clamp(1.5rem, 3vw, 2rem)/1.15 var(--sans);letter-spacing:-.025em;margin:2.2rem 0 .6rem}main h3{font:700 1.15rem/1.3 var(--sans);margin:1.5rem 0 .4rem}.stats{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem;margin:1.4rem 0;display:grid}.stat{background:var(--card);border:1px solid var(--rule);border-radius:.9rem;padding:.9rem 1.1rem}.stat b{font:800 1.9rem/1.1 var(--sans);letter-spacing:-.03em;color:var(--accent-2);display:block}.stat span{color:var(--ink-soft);margin-top:.2rem;font-size:.88rem;line-height:1.4;display:block}.grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;margin:1rem 0;display:grid}.card{background:var(--card);border:1px solid var(--rule);color:var(--ink);border-radius:1.1rem;padding:1rem 1.2rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}.card:hover{transform:translateY(-3px);box-shadow:0 10px 26px #103c1e1f}.card b{font:800 1.15rem/1.25 var(--sans);letter-spacing:-.02em;margin-bottom:.2rem;display:block}.card span{color:var(--ink-soft);font-size:.93rem;line-height:1.45;display:block}.chart{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;margin:1.2rem 0 1.6rem;padding:1rem}.chart svg{width:100%;display:block}.chart svg text{font:500 12px var(--sans)}.chart svg text:not([fill]){fill:var(--ink-soft)}.chart figcaption{color:var(--ink-soft);padding:.5rem .2rem 0;font-size:.88rem}.table-wrap{background:var(--card);border:1px solid var(--rule);border-radius:1.1rem;margin:1rem 0 1.4rem}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-top:1px solid var(--rule);white-space:nowrap;padding:.6rem .9rem}th{background:var(--green-light);font:700 .75rem/1.3 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2);white-space:normal;vertical-align:bottom;border-top:0}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.btn{background:var(--accent);color:var(--bg);font:700 1rem/1 var(--sans);border-radius:.7rem;padding:.95rem 1.4rem;text-decoration:none;display:inline-block}.btn:hover{background:var(--accent-2);color:var(--bg)}.after-table{margin-top:1rem}.note{background:var(--gC-bg);border-radius:.9rem;margin:1.2rem 0;padding:1rem 1.2rem;font-size:.95rem}.site-header a[aria-current=page],.nav a[aria-current=page]{background:var(--green-light)}main>.wrap p,main.wrap p{max-width:50rem}.hero.photo{color:#fff;background:#26364a;padding:0;position:relative;overflow:hidden}.hero.photo .hero-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero.photo:before{content:"";z-index:1;background:linear-gradient(90deg,#081812d1 0%,#081812cc 55%,#081812c7 100%);position:absolute;inset:0}.hero.photo .wrap{z-index:2;padding-top:clamp(2.5rem,7vw,5rem);padding-bottom:clamp(2.5rem,7vw,5rem);position:relative}.hero.photo h1{color:#fff}.hero.photo h1 em{color:#9fe8bd}.hero.photo .lead{color:#e9f2ec}.hero.photo .lead b{color:#fff}.hero.photo .pill{color:#fff;background:#ffffff29}.hero.photo .cta{color:#0b5d33;background:#fff}.hero.photo .cta:hover{background:#e1f4e8}.why.photos>div{padding:0;overflow:hidden}.why.photos img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.why.photos h3,.why.photos p{padding:0 1.3rem}.why.photos h3{margin-top:1.1rem}.why.photos p{padding-bottom:1.3rem}@media (prefers-color-scheme:dark){.hero.photo:before{background:linear-gradient(90deg,#040e0ae0 0%,#040e0ad6 55%,#040e0acc 100%)}}.pick.big{grid-template-columns:7.5rem minmax(0,1fr)}@media (width<=40rem){.pick.big{grid-template-columns:5rem minmax(0,1fr)}.grade.xl{border-radius:1.2rem;width:5rem;height:5rem;font-size:3rem}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.facts b{font-size:1.5rem}.facts li{padding:.75rem .9rem}}.photo-band{margin:.4rem 0 .6rem}.photo-band img{aspect-ratio:21/8;object-fit:cover;background:var(--rule);border-radius:1.1rem;width:100%;height:auto;display:block}.photo-band figcaption{color:var(--ink-soft);padding:.4rem .2rem 0;font-size:.82rem}.opening{max-width:46rem;font-size:1.08rem}.chart-narrow{display:none}.chart-reuse{border:1px solid var(--rule);border-radius:.6rem;margin:.6rem 0 2rem;padding:.8rem 1rem}.chart-reuse summary{cursor:pointer;min-height:44px;font-weight:700;display:list-item}.chart-reuse label{margin-bottom:.5rem;display:block}.chart-reuse textarea{box-sizing:border-box;width:100%;max-width:100%;color:var(--ink);background:var(--card);border:1px solid var(--rule);border-radius:.4rem;padding:.7rem;font:.85rem/1.5 monospace}.chart-narrow svg text{font-size:13px}@media (width<=40rem){.chart-wide{display:none}.chart-narrow{display:block}.figure{padding:.7rem}}.card.tile{padding:0;overflow:hidden}.tile-media{display:block;position:relative}.tile-media img{aspect-ratio:16/10;object-fit:cover;background:var(--rule);width:100%;height:auto;display:block}.tile-media .grade{position:absolute;top:.7rem;left:.7rem;box-shadow:0 2px 8px #00000040}.tile-tag{background:var(--card);color:var(--ink);font:700 .78rem/1 var(--sans);border-radius:.6rem;padding:.4rem .6rem;position:absolute;top:.7rem;left:.7rem}.tile-body{padding:.9rem 1.2rem 1.1rem;display:block}.tile-body b{margin-bottom:.2rem}.photo-band img.fp-top-left{object-position:25% 0}.photo-band img.fp-top{object-position:50% 0}.photo-band img.fp-top-right{object-position:62% 0}.photo-band img.fp-upper{object-position:50% 22%}@media (width<=40rem){:where(main) :where(a:not(p a),.crumbs a,.standalone-link a,a.btn,a.cta){align-items:center;min-height:44px;display:inline-flex}}@media print{@page{margin:1.5cm}:root{--bg:#fff;--card:#fff;--ink:#000;--ink-soft:#333;--rule:#aaa;--accent:#145c32;--accent-2:#145c32;--green-light:#eee}html{scroll-behavior:auto}body{color:#000;background:#fff;font-size:10pt}.wrap{max-width:none;padding:0}.site-header,.skip-link,.foot-top,.cta,.btn,.crumbs{display:none!important}.site-footer{margin-top:1rem;padding:.5rem 0 0}.site-footer a{min-height:0;display:inline}.foot-base,.foot-base>span{display:block}a{color:#000;text-decoration:underline}a[href^="http://"]:after,a[href^="https://"]:after{content:" (" attr(href) ")";overflow-wrap:anywhere;font-size:.85em;font-weight:400}.hero.photo{color:#000;background:#fff}.hero.photo .hero-img,.hero.photo:before{display:none}.hero.photo .wrap{padding-top:0;padding-bottom:1rem;display:block}.hero.photo h1,.hero.photo h1 em,.hero.photo .lead,.hero.photo .lead b{color:#000}.picks,.cards,.grid,.why,.stats,.facts,.peers,.key{display:block}.pick,.rc,.card,.why>div,.stat,.facts li,.peer,.key li{margin-bottom:.6rem}.card,.rc,.pick,.figure,.chart{box-shadow:none;transform:none}.table-wrap,.compare,details.tbl{border-radius:0;overflow:visible}details::details-content{content-visibility:visible}table,table.data,.compare table{table-layout:fixed;width:100%;font-size:8pt}th,td,table.data th,table.data td,.compare th,.compare td{white-space:normal;overflow-wrap:anywhere;color:#000;padding:.3rem}th,table.data th,.compare th{background:#eee}thead{display:table-header-group}tr,.figure,.chart,.card,.rc,.pick{break-inside:avoid}h1,h2,h3,summary{break-after:avoid}.chart-wide{display:block}.chart-narrow{display:none}}
