:root{--ink:#1c3029;--green:#234d42;--dark:#17382f;--paper:#f7f5f0;--line:#d8ded5;--muted:#56645c;--sand:#e7e9de;--accent:#ac5a30;--white:#fff;--serif:'Libre Baskerville',Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.65 var(--sans)}.shell{width:min(1280px,calc(100% - 96px));margin:auto}a{color:var(--green);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--accent)}a,button,input,select,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #ab5a31;outline-offset:5px}p{margin:0 0 20px}p:last-child{margin-bottom:0}h1,h2,h3,h4{line-height:1.25}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(38px,4.7vw,66px);letter-spacing:-2.9px;line-height:1.19;margin:24px 0}h2{font-size:34px;letter-spacing:-1px;margin:0 0 24px}h3{font-size:29px;margin:0 0 12px}h4{font-family:var(--sans);font-weight:600;font-size:17px;margin:0 0 14px}ul{padding-left:21px;margin:0 0 24px}li{padding-left:3px;margin:0 0 12px}small{display:block;font-size:14px;line-height:1.5;color:var(--muted);font-weight:400;margin-top:5px}button,.button{font:600 16px/1.5 var(--sans);display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 22px;border:1px solid var(--green);border-radius:3px;background:var(--green);color:white;cursor:pointer;text-decoration:none;min-height:48px;transition:background .18s}button:hover,.button:hover{background:var(--dark);color:white}.button span{font-size:22px;line-height:1}button.quiet{background:transparent;color:var(--green)}.skip{position:absolute;left:20px;top:-100px;z-index:5;background:white;padding:12px}.skip:focus{top:10px}.edition{background:var(--green);color:#f0f3ec;font-size:12px;padding:8px 0}.edition .shell{display:flex;justify-content:space-between}.edition span{opacity:.9}header{border-bottom:1px solid var(--line);background:var(--paper)}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:112px}.brand{display:flex;gap:13px;align-items:center;color:var(--green);text-decoration:none;flex-shrink:0;font-size:11px;line-height:1.6;letter-spacing:1.7px}.brand b{font-size:13px;letter-spacing:.8px}.brand-symbol{width:46px;height:48px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;font:37px/1 var(--serif);letter-spacing:-5px}.brand-symbol span{font:16px var(--sans);align-self:flex-end;padding-bottom:5px;letter-spacing:0}nav{display:flex;gap:32px;align-items:center}nav a{font-size:15px;font-weight:500;text-decoration:none;min-height:44px;display:flex;align-items:center}nav a:hover{text-decoration:underline}.section-label{font-size:12px;letter-spacing:1.7px;font-weight:600;color:var(--green)}.hero{padding:56px 0 44px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.hero-copy{padding:8px 0}.hero h1 em{font-style:italic;font-size:.83em;color:var(--green)}.hero-sub{font-size:23px;line-height:1.5;max-width:540px;margin-bottom:17px}.hero-desc{font-size:17px;color:var(--muted);max-width:470px;margin-bottom:27px}.hero-meta{display:flex;gap:12px;font-size:13px;color:var(--muted);margin-top:28px}.hero-meta a{color:var(--muted)}.hero-photo{position:relative;margin:0;align-self:stretch;min-height:500px;padding-bottom:32px}.hero-photo img{position:absolute;inset:0;width:100%;height:calc(100% - 32px);object-fit:cover;object-position:50%;border-radius:160px 2px 2px 2px}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;letter-spacing:.6px}.photo-tag{position:absolute;bottom:65px;left:-25px;background:var(--paper);padding:22px 26px;box-shadow:0 6px 30px #132f2412;font:20px/1.5 var(--serif);border-left:3px solid var(--accent)}.photo-tag i{font-size:16px;color:var(--muted)}.three-facts{display:grid;grid-template-columns:repeat(3,1fr);padding:26px 0 34px;border-bottom:1px solid var(--line);gap:36px}.three-facts>div{display:flex;gap:22px;align-items:flex-start}.three-facts b{font:14px/1.8 var(--serif);color:var(--accent)}.three-facts p{font-size:16px;line-height:1.55;color:var(--muted)}.three-facts strong{font-weight:500;color:var(--ink)}.content{padding-top:56px;padding-bottom:96px}.reading-layout{display:grid;grid-template-columns:190px 1fr;gap:74px}.toc{align-self:start;position:sticky;top:30px;font-size:14px;line-height:1.6;padding-top:5px}.toc b{display:block;font-size:11px;letter-spacing:1.3px;margin-bottom:22px}.toc>a{display:block;margin:15px 0;text-decoration:none;padding:3px 0}.toc a:hover{text-decoration:underline}.toc-note{border-top:1px solid var(--line);padding-top:20px;margin-top:26px;font-size:12px;color:var(--muted);line-height:1.9}.reading-main{max-width:950px;min-width:0}.reading-main>section{margin-bottom:66px}.reading-main>section>p{max-width:790px;color:#3d4c44}.filter-row{display:flex;align-items:center;gap:16px;margin:25px 0 18px;font-size:14px}.filter-row label{font-weight:600}select,input{font:16px/1.4 var(--sans);border:1px solid #9ba99d;border-radius:3px;background:#fff;color:var(--ink);padding:12px;min-height:47px;max-width:100%}#filter-status{margin-left:auto;color:var(--muted)}.table-scroll{overflow-x:auto;border:1px solid var(--line);background:#fff}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px;line-height:1.55}caption{text-align:left;padding:15px 20px;font-size:13px;background:#f0f1e9;border-bottom:1px solid var(--line);color:var(--muted)}th,td{padding:20px 16px;vertical-align:top;border-bottom:1px solid var(--line)}thead th{background:var(--green);color:#fff;font:500 13px var(--sans)}tbody th{min-width:125px;font-weight:600}tbody td:nth-child(3){min-width:155px}tbody td:last-child{min-width:225px;font-size:13px}tbody tr:first-child{background:#f0f4ec}tbody tr:last-child>*{border-bottom:0}.review{border-top:1px solid var(--line);padding:34px 0 30px;margin-top:30px}.review:first-of-type{border-top:2px solid var(--green);background:#f0f2e9;padding:30px}.review-top{display:flex;gap:20px;align-items:center}.rank{font:30px var(--serif);color:#849588;align-self:flex-start;margin-top:15px}.mini{font:600 12px/1.5 var(--sans);color:var(--green);display:block;margin-bottom:8px}.review-top h3 a{text-decoration:none}.provider-mark{width:59px;height:59px;margin-left:auto;flex-shrink:0;display:grid;place-items:center;background:#e4e9df;font:600 16px var(--sans);color:var(--green);border:1px solid #d3dccf;border-radius:50%}.review-intro{font-size:19px;max-width:780px;margin:22px 0}.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-top:5px}.pros-cons p,.pros-cons li{font-size:16px;color:var(--muted)}.pros-cons li{margin-bottom:9px}.cost-line{border-top:1px solid var(--line);padding-top:15px;font-weight:600!important;color:var(--ink)!important}.review-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:14px}.review-bottom span{font-size:11px;color:var(--muted);align-self:center}.editorial-image{margin:0 0 65px}.editorial-image img{width:100%;height:310px;object-fit:cover}.editorial-image figcaption{font-size:12px;color:var(--muted);margin-top:10px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.guide-card{display:block;padding:23px 0 15px;border-top:2px solid var(--green);text-decoration:none;color:var(--ink)}.guide-card h3{font-size:22px;line-height:1.4;letter-spacing:-.4px}.guide-card p{font-size:15px;color:var(--muted)}.guide-card .mini{font-size:10px;letter-spacing:1px;color:var(--accent)}.arrow{font-size:13px;font-weight:600}.guide-card:hover h3{text-decoration:underline;text-underline-offset:4px}details{border-top:1px solid var(--line);padding:8px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-weight:600;cursor:pointer;min-height:50px;display:list-item;padding:14px 30px 14px 0;line-height:1.5}details p{font-size:16px;color:var(--muted);padding:0 20px 20px 0}.note{background:var(--sand);border-left:3px solid var(--accent);padding:24px 28px;margin:28px 0}.note>strong{font-weight:600}.note p{margin-top:12px;font-size:16px;color:#405046}.article-hero{padding-top:42px;padding-bottom:42px;border-bottom:1px solid var(--line);max-width:1000px}.breadcrumb{display:inline-block;font-size:13px;margin-bottom:35px;color:var(--muted)}.article-hero h1{font-size:clamp(35px,4vw,53px);max-width:860px;letter-spacing:-1.9px}.article-hero>p{font-size:22px;max-width:800px;color:var(--muted)}.article-content{max-width:850px;padding-top:40px}.article-content>p{font-size:21px;color:var(--muted)}.article-content>section{margin-top:50px}.article-content h2{font-size:30px}.article-content h3{font-size:22px}.article-content .guide-grid{grid-template-columns:1fr 1fr}.article-content #sources{border-top:1px solid var(--line);padding-top:28px;margin-top:60px}#sources h2{font-size:21px}#sources li,#sources p{font-size:14px;color:var(--muted)}#sources li{margin-bottom:8px}.checklist{border-top:1px solid var(--line)}.checklist label{display:flex;align-items:flex-start;gap:16px;padding:23px 0;border-bottom:1px solid var(--line);cursor:pointer}.checklist input{margin-top:7px;min-height:20px;width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.checklist strong{display:block;font-weight:600}.checklist small{font-size:16px;line-height:1.65}.small{font-size:13px;color:var(--muted);margin-top:18px}#route-finder,#cost-estimator{background:#edf0e7;padding:30px;border:1px solid var(--line)}#route-finder label{display:block;font-size:15px;margin-bottom:10px;font-weight:600}#route-finder select{display:block;width:100%;margin-bottom:18px}.finder-result{margin-top:25px;padding-top:23px;border-top:1px solid #c7d3c4;font-size:16px;line-height:1.7}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.input-grid label{font-size:15px;line-height:1.5}.input-grid input{display:block;width:100%;margin:8px 0 12px}#cost-estimator button{margin-top:14px}output{display:block;margin-top:24px;font-size:22px;font-weight:600}footer{background:#e9ede4;border-top:1px solid #d5ddd0;padding:48px 0 23px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:38px;border-bottom:1px solid #ced7c8}.footer-top p{font-size:15px;color:var(--muted);max-width:440px}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:45px;padding-top:32px}.footer-links h2{font:600 14px var(--sans);margin-bottom:18px}.footer-links a{display:block;font-size:13px;margin-bottom:12px;text-decoration:none;color:#465d50}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);gap:20px;margin-top:40px;border-top:1px solid #ced7c8;padding-top:22px}a{overflow-wrap:anywhere}[hidden]{display:none!important}
@media(min-width:1600px){.hero{gap:80px}}
@media(max-width:1100px){.shell{width:calc(100% - 56px)}.hero{gap:35px}h1{font-size:52px}.hero-photo{min-height:450px}.hero-sub{font-size:20px}.reading-layout{grid-template-columns:160px 1fr;gap:35px}nav{gap:20px}.review:first-of-type{padding:24px}.review-bottom{flex-direction:column}.review-bottom span{align-self:flex-start}.guide-grid{gap:16px}}
@media(max-width:800px){.nav{align-items:flex-start;flex-direction:column;gap:16px;padding:22px 0}.edition span{display:none}.nav nav{width:100%;justify-content:space-between;gap:15px}.hero{grid-template-columns:1fr;gap:32px;padding-top:35px}.hero h1{font-size:54px;letter-spacing:-2px}.hero-desc,.hero-sub{max-width:600px}.hero-photo{min-height:360px;margin-left:25px}.hero-photo img{border-radius:100px 2px 2px 2px}.photo-tag{bottom:60px;font-size:18px}.three-facts{gap:16px}.three-facts>div{gap:12px}.three-facts p{font-size:14px}.reading-layout{display:block}.toc{position:static;display:flex;flex-wrap:wrap;gap:8px 20px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:35px}.toc b{width:100%;margin-bottom:2px}.toc>a{margin:0}.toc-note{display:none}.reading-main{max-width:none}.content{padding-top:30px}.table-scroll table{min-width:750px}.footer-links{gap:20px}.hero-meta{flex-wrap:wrap}.article-hero{padding-top:30px}.article-hero>p{font-size:20px}}
@media(max-width:520px){.shell{width:calc(100% - 36px)}body{font-size:17px}.brand-symbol{width:40px;height:43px}.nav{padding:20px 0 12px}.nav nav{flex-wrap:wrap;column-gap:20px;row-gap:0;justify-content:flex-start}.nav nav a{font-size:14px}.hero h1{font-size:43px;letter-spacing:-1.8px;line-height:1.24}.section-label{font-size:10px}.hero-sub{font-size:20px}.hero-desc{font-size:16px}.hero-photo{min-height:300px;margin-left:18px}.photo-tag{padding:16px 20px;left:-18px;font-size:17px}.hero-photo figcaption{font-size:9px}.hero-meta{font-size:12px;gap:8px}.three-facts{grid-template-columns:1fr;padding:20px 0;gap:16px}.three-facts>div{gap:20px}.three-facts p br{display:none}.three-facts p{font-size:15px}.three-facts strong{margin-left:3px}.three-facts b{font-size:13px}.reading-main>section{margin-bottom:45px}h2{font-size:28px;letter-spacing:-.7px}.review{padding:25px 0}.review:first-of-type{padding:22px 18px}.review-top{gap:13px}.rank{font-size:22px;margin-top:16px}.review h3{font-size:25px}.provider-mark{width:44px;height:44px;font-size:13px}.mini{font-size:11px}.review-intro{font-size:18px}.pros-cons{grid-template-columns:1fr;gap:8px}.pros-cons li,.pros-cons p{font-size:15px}.review-bottom span{font-size:11px}.filter-row{flex-wrap:wrap;gap:10px;font-size:13px}.filter-row select{flex:1}#filter-status{margin-left:0}.guide-grid,.article-content .guide-grid,.input-grid{grid-template-columns:1fr}.guide-card{padding-top:20px}.guide-card h3{font-size:23px}.editorial-image img{height:240px}#route-finder,#cost-estimator{padding:22px}.footer-top{flex-direction:column;gap:23px;padding-bottom:26px}.footer-links{grid-template-columns:1fr 1fr;row-gap:25px}.footer-bottom{flex-direction:column;gap:8px}.article-hero h1{font-size:36px;letter-spacing:-1px}.article-content h2{font-size:27px}.breadcrumb{margin-bottom:25px}.article-content>section{margin-top:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{header,.edition,.toc,footer,.button,button{display:none}.shell{width:100%}.hero{display:block}.hero-photo{display:none}.reading-layout{display:block}.table-scroll{overflow:visible}body{font-size:12pt;background:#fff}.review{break-inside:avoid}}
