.rank-hero{padding-bottom:110px}.rank-hero .breadcrumbs{margin-bottom:70px}.rank-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:end;gap:80px;padding-top:72px}.rank-hero-grid h1{margin:22px 0 25px;font-size:clamp(62px,6.3vw,92px);line-height:1.01;font-weight:450;letter-spacing:-.08em}.rank-hero-grid h1 span{color:#aaa}.rank-hero-grid p:not(.eyebrow){max-width:650px;margin:0;color:#666;font-size:17px;line-height:1.6}.rank-hero-panel{height:275px;display:flex;flex-direction:column;padding:20px;border:1px solid #e1e1e1;border-radius:6px;background:#fff;overflow:hidden}.rank-hero-panel>span,.rank-hero-panel small{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:#999}.rank-hero-panel strong{margin:15px 0 0;font-size:96px;line-height:1;font-weight:450;letter-spacing:-.09em}.rank-hero-panel small{margin-top:auto}.rank-hero-bars{display:flex;align-items:end;gap:6px;height:75px;margin-top:auto}.rank-hero-bars i{display:block;flex:1;height:35%;background:#dedede}.rank-hero-bars i:nth-child(2){height:52%}.rank-hero-bars i:nth-child(3){height:44%}.rank-hero-bars i:nth-child(4){height:68%}.rank-hero-bars i:nth-child(5){height:57%}.rank-hero-bars i:nth-child(6){height:88%;background:#242424}
.rank-section{padding-bottom:105px;scroll-margin-top:90px}.rank-section-intro{display:flex;align-items:end;justify-content:space-between;gap:36px;margin:30px 0 32px}.rank-section-intro h2,.rank-method-intro h2{margin:0;font-size:clamp(42px,4.5vw,62px);line-height:1.05;font-weight:450;letter-spacing:-.065em}.rank-section-intro p{max-width:680px;margin:12px 0 0;color:#777;font-size:14px;line-height:1.55}.rank-section-intro>a{display:inline-flex;align-items:center;gap:20px;padding-bottom:7px;border-bottom:1px solid #222;font-size:12px;white-space:nowrap}.rank-section-intro>a span{font-size:17px}.rank-order-label{margin:0 0 13px;font-family:var(--mono);font-size:10px;letter-spacing:.055em;color:#888}.rank-table-wrap{overflow:auto;border:1px solid #dfdfdf;border-radius:6px;background:#fff}.rank-table{width:100%;min-width:1120px;border-collapse:collapse;table-layout:fixed}.rank-table th,.rank-table td{border-bottom:1px solid #ededed;text-align:left}.rank-table tbody tr:last-child th,.rank-table tbody tr:last-child td{border-bottom:0}.rank-table thead th{padding:0;background:#f7f7f7}.rank-table thead th:nth-child(1){width:65px}.rank-table thead th:nth-child(2){width:185px}.rank-table thead th:nth-child(3){width:130px}.rank-table thead th:last-child{width:95px}.rank-table thead button{width:100%;min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:10px 10px;border:0;background:transparent;color:#777;text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.02em;cursor:pointer}.rank-table thead button:hover{background:#ebebeb;color:#222}.rank-table thead th[aria-sort=ascending] button,.rank-table thead th[aria-sort=descending] button{color:#1b1b1b;background:#ededed}.rank-table thead i{font-style:normal;font-size:13px;color:#aaa}.rank-table thead th[aria-sort=ascending] i,.rank-table thead th[aria-sort=descending] i{color:#287444}.rank-table tbody tr:hover{background:#f8f9f8}.rank-table tbody td,.rank-table tbody th{padding:16px 10px;font-size:13px;font-weight:400}.rank-number span{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:4px;background:#f0f0f0;font-family:var(--mono);font-size:11px;color:#666}.rank-table tbody tr:first-child .rank-number span{background:#171717;color:#fff}.rank-city a{display:inline-flex;flex-direction:column;gap:5px;font-size:15px;font-weight:500;letter-spacing:-.035em}.rank-city a:hover{text-decoration:underline;text-underline-offset:3px}.rank-city small{font-family:var(--mono);font-size:10px;font-weight:400;color:#999;letter-spacing:.05em}.rank-score strong{font-size:20px;font-weight:500;letter-spacing:-.05em;color:#276e3b}.rank-score-track{display:block;height:5px;border-radius:3px;background:#e6e6e6;overflow:hidden}.rank-score-track i{display:block;height:100%;border-radius:3px;background:#2a7740}.rank-table .rank-score-track{width:86px;margin-top:8px}.rank-value{white-space:nowrap}.rank-value-missing{color:#aaa!important}.rank-coverage{font-family:var(--mono);font-size:11px!important}.rank-partial{padding:5px 6px;border-radius:3px;background:#f5efe5;color:#92601a}.rank-table-note{margin:15px 0 0;color:#999;font-family:var(--mono);font-size:10px;line-height:1.5}.rank-sort-mobile,.rank-cards{display:none}.rank-skeleton{display:grid;gap:10px}.rank-skeleton[hidden],.rank-content[hidden]{display:none}.rank-skeleton>div{height:72px;border:1px solid #e2e2e2;border-radius:5px;background:#ededed;animation:skeletonPulse 1.5s ease-in-out infinite alternate}.rank-skeleton>div:nth-child(2){animation-delay:.18s}.rank-skeleton>div:nth-child(3){animation-delay:.36s}.rank-error{padding:25px;border:1px solid #ddd;background:#fff;color:#777}
.rank-method{padding-bottom:135px}.rank-method-intro{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:80px;margin:35px 0 34px}.rank-method-intro p{max-width:670px;margin:17px 0 0;color:#666;font-size:15px;line-height:1.6}.rank-method-intro p a{text-decoration:underline;text-underline-offset:3px}.rank-formula{min-height:220px;padding:22px;background:#202020;border-radius:6px;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.rank-formula span,.rank-formula small{font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:#aaa}.rank-formula strong{font-size:25px;line-height:1.3;font-weight:450;letter-spacing:-.045em}.matrix-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.matrix-card{min-height:205px;padding:21px;border:1px solid #e2e2e2;border-radius:6px;background:#fff;display:flex;flex-direction:column}.matrix-card-top,.matrix-card-bottom{display:flex;justify-content:space-between;gap:14px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:#999}.matrix-card-top strong{color:#287444;font-size:14px}.matrix-card h3{margin:30px 0 5px;font-size:23px;line-height:1.12;letter-spacing:-.045em;font-weight:450}.matrix-card p{margin:0;color:#777;font-size:12px}.matrix-card-bottom{margin-top:auto;padding-top:18px;border-top:1px solid #eee;letter-spacing:0}.rank-disclaimer{display:grid;grid-template-columns:220px 1fr;gap:30px;margin-top:55px;padding:22px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.rank-disclaimer p{max-width:850px;margin:0;color:#777;font-size:13px;line-height:1.6}
@media(max-width:1100px){.rank-hero-grid{gap:35px}.rank-method-intro{gap:35px}.rank-section-intro{align-items:start}}
@media(max-width:900px){.rank-table-wrap{display:none}.rank-sort-mobile,.rank-cards{display:grid}.rank-sort-mobile{margin:0 0 18px;gap:8px}.rank-sort-mobile label{font-family:var(--mono);font-size:10px;color:#888;letter-spacing:.05em}.rank-sort-mobile>div{display:grid;grid-template-columns:1fr 46px;gap:7px}.rank-sort-mobile select{height:46px}.rank-sort-mobile button{border:1px solid #dedede;border-radius:5px;background:#fff;font-size:20px}.rank-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rank-card{min-width:0;padding:20px;border:1px solid #dfdfdf;border-radius:6px;background:#fff}.rank-card-top{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:9px;letter-spacing:.035em;color:#888}.rank-card-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin:25px 0 20px}.rank-card h3{margin:0;font-size:clamp(24px,3.3vw,31px);line-height:1.05;letter-spacing:-.055em;font-weight:450}.rank-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}.rank-card h3 small{display:block;margin-top:7px;font-family:var(--mono);font-size:10px;color:#999;letter-spacing:0;font-weight:400}.rank-card-score{text-align:right;white-space:nowrap}.rank-card-score strong{font-size:35px;line-height:1;letter-spacing:-.07em;font-weight:450;color:#287444}.rank-card-score span{display:block;margin-top:3px;font-family:var(--mono);font-size:9px;color:#999}.rank-card>.rank-score-track{height:6px}.rank-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px 10px;padding:23px 0 21px}.rank-card-metric{display:flex;flex-direction:column;gap:5px}.rank-card-metric span{font-family:var(--mono);font-size:9px;color:#999}.rank-card-metric strong{font-size:14px;font-weight:500;letter-spacing:-.025em}.rank-card-link{display:flex;align-items:center;justify-content:space-between;padding-top:15px;border-top:1px solid #eee;font-size:12px}.rank-card-link span{font-size:17px}.rank-hero-grid{grid-template-columns:1fr 220px}.rank-hero-panel{height:230px}.rank-hero-panel strong{font-size:70px}.rank-method-intro{grid-template-columns:1fr}.rank-formula{min-height:170px}.matrix-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rank-hero{padding-bottom:85px}.rank-hero .breadcrumbs{margin-bottom:54px}.rank-hero-grid{grid-template-columns:1fr;padding-top:45px}.rank-hero-grid h1{font-size:clamp(52px,9vw,72px)}.rank-hero-grid p:not(.eyebrow){font-size:15px}.rank-hero-panel{display:none}.rank-section{padding-bottom:90px}.rank-section-intro{flex-direction:column;gap:22px}.rank-section-intro h2,.rank-method-intro h2{font-size:46px}.rank-method{padding-bottom:95px}.rank-disclaimer{grid-template-columns:1fr;gap:12px}}
@media(max-width:600px){.rank-cards{grid-template-columns:1fr}.rank-card{padding:18px}.matrix-metrics{grid-template-columns:1fr}.matrix-card{min-height:185px}.rank-hero-grid h1{font-size:51px}}
@media(prefers-reduced-motion:reduce){.rank-skeleton>div{animation:none}}
.rank-table thead th:last-child{width:115px}.rank-coverage .rank-partial{display:inline-flex;flex-direction:column;gap:3px}.rank-coverage .rank-partial small{font-size:8px;letter-spacing:.025em}.rank-card-provisional{color:#92601a}.matrix-card .matrix-card-source{margin-top:11px;font-family:var(--mono);font-size:10px;color:#999}
.rank-preferences{margin:0 0 25px;padding:24px;border:1px solid #dedede;border-radius:6px;background:#fff}.rank-preferences-top{display:flex;align-items:start;justify-content:space-between;gap:18px}.rank-preferences-top h3{margin:8px 0 0;font-size:27px;letter-spacing:-.05em;font-weight:450}.rank-preferences-top>button{border:0;background:transparent;padding:6px 0;color:#777;font-size:11px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.rank-preferences-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:25px}.rank-preferences fieldset{min-width:0;margin:0;padding:0;border:0}.rank-preferences legend{padding:0;font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:#555}.rank-preferences fieldset p{margin:8px 0 14px;color:#888;font-size:12px;line-height:1.5}.rank-choice-list{display:flex;flex-wrap:wrap;gap:7px}.rank-choice-list button{border:1px solid #dedede;border-radius:5px;background:#fafafa;padding:9px 11px;color:#555;font-size:11px}.rank-choice-list button:hover{border-color:#777}.rank-choice-list button[aria-pressed=true]{border-color:#1b1b1b;background:#1b1b1b;color:#fff}.rank-preference-summary{margin:24px 0 0;padding-top:16px;border-top:1px solid #eee;font-family:var(--mono);font-size:10px;color:#777}.rank-national-note{margin:0 0 16px;color:#999;font-family:var(--mono);font-size:10px;line-height:1.5}.rank-table{min-width:1230px}.rank-table thead button{min-height:76px}.rank-header-text{display:flex;flex-direction:column;gap:6px}.rank-header-text small{font-size:9px;line-height:1.25;color:#999;font-weight:400;letter-spacing:0;white-space:nowrap}.rank-card-metric small,.rank-card-score small{display:block;margin-top:3px;font-family:var(--mono);font-size:9px;color:#999;font-weight:400;letter-spacing:0}.rank-card-climate{display:flex;justify-content:space-between;gap:12px;margin:0 0 16px;padding:12px 0;border-top:1px solid #eee;color:#777;font-family:var(--mono);font-size:10px}.rank-card-climate small{font-size:9px;color:#999}.rank-card-metrics{padding-bottom:17px}.rank-card-score small{white-space:nowrap}
@media(max-width:760px){.rank-preferences{padding:18px}.rank-preferences-grid{grid-template-columns:1fr;gap:23px}.rank-preferences-top h3{font-size:24px}.rank-choice-list button{font-size:10px}}
.rank-climate-fit{display:block;margin-top:5px;color:#888;font-family:var(--mono);font-size:9px;letter-spacing:.02em}
.rank-hero{padding-bottom:78px}.rank-hero .breadcrumbs{margin-bottom:35px}.rank-hero-grid{display:block;padding-top:25px}.rank-hero-grid h1{margin:0 0 25px}.rank-hero-grid p:not(.eyebrow){max-width:750px}.rank-section-intro{margin-top:0}.rank-preferences-top h3{margin:0}.rank-preferences legend{font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:0;color:#333}.rank-preferences fieldset p{font-size:12px}.rank-choice-list button{font-size:12px}.rank-preference-summary,.rank-order-label,.rank-national-note,.rank-table-note{font-family:var(--sans);font-size:12px;letter-spacing:0;line-height:1.5}.rank-preference-summary{margin-top:20px}.rank-header-text small,.rank-card-metric small,.rank-card-score small{font-family:var(--sans);font-size:10px;letter-spacing:0}.rank-card-metric span{font-family:var(--sans);font-size:11px}.rank-card-climate{font-family:var(--sans);font-size:11px}.rank-card-climate small{font-family:var(--sans);font-size:10px}.rank-card-top{font-family:var(--sans);font-size:10px;letter-spacing:0}.rank-method-intro{margin-top:0}.matrix-card-top,.matrix-card-bottom,.matrix-card .matrix-card-source{font-family:var(--sans);font-size:11px;letter-spacing:0}.matrix-card-top strong{font-size:13px;font-weight:500}.matrix-card h3{margin-top:23px}.rank-disclaimer h3{margin:0;font-size:18px;font-weight:500;letter-spacing:-.025em}
@media(max-width:760px){.rank-hero{padding-bottom:65px}.rank-hero-grid{padding-top:10px}.rank-preferences{padding:18px}.rank-choice-list button{font-size:11px}.rank-disclaimer{grid-template-columns:1fr}}
.rank-hero-grid h1 span{color:#777}
