:root{color-scheme:light}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button,a,input{touch-action:manipulation}a{color:inherit}img{max-width:100%;height:auto}:focus-visible{outline:3px solid #bd742f;outline-offset:5px}.skip-link{position:fixed;left:18px;top:-100px;z-index:100;padding:12px 18px;background:#fff;color:#14392e}.skip-link:focus{top:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.service-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #d9dfd7;padding:42px;border-radius:12px;background:#fbfaf6;color:#163e32;box-shadow:0 25px 100px #061d2850;font-family:Arial,sans-serif}.service-dialog::backdrop{background:#092b2580;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:12px;top:12px;border:0;background:transparent;font-size:30px;width:44px;height:44px;cursor:pointer;color:inherit}.dialog-kicker{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding-right:28px}.service-dialog h2{font-family:Georgia,serif;font-size:38px;font-weight:400;line-height:1.1;margin:20px 0}.service-dialog p{color:#456052;font-size:16px;line-height:1.65}.dialog-price{border-top:1px solid #d7ded7;padding-top:24px;margin-top:24px}.dialog-price strong{font-size:25px;display:block;margin-bottom:8px}.dialog-price span{display:block;font-size:12px;line-height:1.6;color:#526255}.dialog-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#184635;color:#fff;padding:16px 18px;text-decoration:none;margin-top:26px;border-radius:4px;font-size:14px;line-height:1.3}.dialog-phone{display:inline-block;margin-top:18px;font-size:14px;text-underline-offset:4px}.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.will-reveal.is-visible{opacity:1;transform:none}@media(max-width:600px){.service-dialog{padding:34px 24px}.service-dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.will-reveal{opacity:1;transform:none}}:root{--paper:#f3f0e8;--ink:#173f33;--muted:#5d6e61;--line:#d8ddd1}body{font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{text-decoration:none}.compare-header{display:flex;justify-content:space-between;align-items:center;padding:28px 5%;border-bottom:1px solid var(--line);font-size:12px}.compare-brand{display:flex;gap:12px;align-items:center;font-size:15px}.compare-brand>span{font-size:33px}.compare-intro{padding:75px 5% 60px;max-width:1500px;margin:auto}.overline{font-size:10px;letter-spacing:.16em;line-height:1.6;margin:0 0 24px;text-transform:uppercase}.compare-intro h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em;font-size:clamp(52px,6.2vw,90px);line-height:1;margin:0 0 27px}.compare-intro em{color:#667d53}.compare-intro>p:last-child{color:var(--muted);font-size:14px;line-height:1.8;max-width:500px}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:0 5% 75px;max-width:1500px;margin:auto}.concept-card{border:1px solid #ced7c7;background:#fbfaf5;overflow:hidden}.card-image{position:relative;display:block;height:390px;overflow:hidden;border-bottom:1px solid var(--line)}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.card-image:hover>img{transform:scale(1.04)}.cinematic-card .card-image>img{object-position:60% center}.image-tag{position:absolute;left:22px;top:22px;font-size:9px;letter-spacing:.1em;background:#fbfaf0dd;padding:9px 11px}.image-caption{position:absolute;left:22px;bottom:24px;font-size:12px;letter-spacing:.02em}.simple-card .card-image>img{opacity:.6;object-position:75% center}.simple-preview-wordmark{position:absolute;left:32px;top:94px;padding:0 35px 0 0}.simple-preview-wordmark>span{font-size:9px;letter-spacing:.13em}.simple-preview-wordmark>strong{display:block;font-size:44px;font-weight:500;line-height:1.04;letter-spacing:-.055em;margin:22px 0 9px}.simple-preview-wordmark>i{font-size:36px;font-style:normal;color:#4c7156;letter-spacing:-.035em}.card-body{padding:33px 32px}.card-type{font-size:9px;letter-spacing:.1em;color:var(--muted)}.card-body h2{font-family:Georgia,serif;font-weight:400;font-size:35px;letter-spacing:-.045em;margin:17px 0}.card-body>p{color:var(--muted);font-size:13px;line-height:1.8;margin:0;max-width:470px;min-height:70px}.card-pills{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 30px}.card-pills>span{font-size:9px;border:1px solid var(--line);padding:7px 10px;border-radius:20px}.explore-button{display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--ink);color:#fff;padding:17px 21px;font-size:12px}.explore-button:hover{background:#315d43}.compare-recommendation{margin:0 5% 70px;background:#e6ecdd;display:grid;grid-template-columns:60px 1.5fr 1fr;gap:30px;padding:48px;align-items:start}.recommendation-marker{font-size:40px;color:#6a8259}.compare-recommendation h2{font-family:Georgia,serif;font-weight:400;font-size:37px;line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}.compare-recommendation p:not(.overline){color:var(--muted);font-size:13px;line-height:1.8;max-width:460px}.compare-recommendation div>a{font-size:11px;text-decoration:underline;text-underline-offset:5px;display:inline-block;margin-top:12px}.reference-pair{align-self:center;padding-left:30px;border-left:1px solid #bfcbb2;display:flex;flex-direction:column;gap:11px}.reference-pair>span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.compare-recommendation .reference-pair>a{font-family:Georgia,serif;font-size:25px;text-decoration:none;margin:0 0 14px;letter-spacing:-.02em}.compare-footer{border-top:1px solid var(--line);padding:25px 5%;display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:10px;color:var(--muted)}.compare-footer p{width:100%;line-height:1.6;font-size:10px;max-width:800px;margin:0}.research-main{max-width:1100px;padding:65px 5%;margin:auto}.research-main h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em;font-size:clamp(40px,5vw,70px);line-height:1.05;margin:0 0 25px}.research-lead{max-width:700px;font-size:16px;line-height:1.8;color:var(--muted)}.research-section{padding:42px 0;border-bottom:1px solid var(--line)}.research-section h2{font-family:Georgia,serif;font-size:34px;font-weight:400;letter-spacing:-.04em;margin:0 0 23px}.research-section h3{font-size:16px;font-weight:500;margin:25px 0 14px}.research-section p,.research-section li{font-size:14px;line-height:1.8;color:#4f6357}.research-section li{margin-bottom:10px}.research-section a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}.research-section .note{font-size:12px;color:var(--muted)}.research-section table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}.research-section th{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;padding:14px 12px;border-bottom:1px solid #a9b8a2}.research-section td{padding:17px 12px;border-bottom:1px solid var(--line);line-height:1.6;vertical-align:top}.table-scroll{overflow-x:auto}.table-scroll table{min-width:600px}.research-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.research-facts>div{padding:22px;background:#e6ecdd}.research-facts strong{display:block;font-size:12px;margin-bottom:10px}.research-facts span,.research-facts a{font-size:14px;line-height:1.7}.research-callout{padding:27px;background:#e6ecdd;margin-top:20px}.research-callout p{margin:0}.route-list{columns:2;column-gap:30px}.route-list li{break-inside:avoid;font-size:12px}.research-nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.research-nav a{font-size:11px;padding:11px 15px;background:var(--ink);color:#fff}.repo-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.repo-list>div{border:1px solid var(--line);padding:23px}.repo-list p{margin-bottom:0;font-size:12px}.repo-list strong{font-weight:500}.estimate-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.estimate-pair>div{padding:24px;background:#e6ecdd}.estimate-pair h3{margin-top:0}.estimate-pair strong{font-family:Georgia,serif;font-size:32px;font-weight:400}.estimate-pair p{font-size:12px}.research-section code{font-family:monospace;font-size:12px;background:#e6ecdd;padding:2px 5px}.research-bottom{margin-top:35px;display:flex;gap:15px}.research-bottom a{padding:16px 20px;background:var(--ink);color:#fff;font-size:12px}.research-logo{max-width:240px;margin-top:20px}@media(min-width:1500px){.compare-recommendation{max-width:1350px;margin-left:auto;margin-right:auto}}@media(max-width:900px){.card-image{height:320px}.simple-preview-wordmark>strong{font-size:36px}.card-body{padding:26px}.card-body h2{font-size:30px}.compare-recommendation{grid-template-columns:35px 1fr;padding:32px;gap:20px}.reference-pair{grid-column:2;padding-left:0;border-left:0;border-top:1px solid #bfcbb2;padding-top:25px;margin-top:10px}.concept-grid{gap:20px}.research-facts{grid-template-columns:1fr}}@media(max-width:640px){.compare-header{padding:20px 5%;font-size:10px}.compare-brand{font-size:12px;gap:8px}.compare-brand>span{font-size:27px}.compare-intro{padding-top:50px;padding-bottom:30px}.compare-intro h1{font-size:53px}.compare-intro>p:last-child{font-size:13px}.concept-grid{grid-template-columns:1fr;gap:28px;padding-bottom:45px}.card-image{height:340px}.card-body h2{font-size:34px}.card-body>p{min-height:0}.compare-recommendation{display:block;margin-bottom:40px;padding:30px 25px}.recommendation-marker{display:block;margin-bottom:22px}.compare-recommendation h2{font-size:33px}.reference-pair{margin-top:25px}.research-main{padding-top:45px}.research-main h1{font-size:44px}.research-lead{font-size:14px}.research-section{padding:32px 0}.research-section h2{font-size:30px}.repo-list,.estimate-pair{grid-template-columns:1fr}.route-list{columns:1}.research-bottom{flex-wrap:wrap}.simple-preview-wordmark>strong{font-size:40px}}
