:root{--paper:#f6f5ed;--ink:#202522;--muted:#6a7068;--line:#d9dbd0;--acid:#d9ed9c;--rust:#a45238;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}a,button,input,select{outline-offset:4px}:focus-visible{outline:3px solid #a0b76f}.wrap{max-width:1320px;padding-left:48px;padding-right:48px;margin:auto}.skip{position:absolute;left:20px;top:-80px;z-index:100;background:var(--acid);padding:15px}.skip:focus{top:15px}.site-header{display:flex;align-items:center;justify-content:space-between;min-height:105px;border-bottom:1px solid var(--line);gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}.wordmark{font-family:Arial Black,Arial,sans-serif;font-weight:900;font-style:italic;font-size:48px;letter-spacing:-5px;line-height:1;position:relative;padding-right:9px}.brand-dot{font-size:13px;letter-spacing:0;position:absolute;right:-2px;top:2px}.brand-sub{border-left:1px solid var(--ink);padding-left:12px;font-size:9px;letter-spacing:2px;font-weight:700;line-height:1.6}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a,.nav-link{font-size:13px;font-weight:600;text-decoration:none;border:0;background:none;padding:6px 0}.site-header nav a:hover,.nav-link:hover{text-decoration:underline;text-underline-offset:5px}.shortlist-button{display:flex;gap:17px;align-items:center;border:1px solid var(--ink);border-radius:5px;background:transparent;padding:10px 14px;font-size:13px;font-weight:600}.shortlist-button span{background:var(--ink);color:var(--paper);font-family:var(--mono);border-radius:3px;min-width:23px;line-height:23px;text-align:center}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;padding-top:65px;padding-bottom:67px;align-items:center}.eyebrow{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:1.65px;line-height:1.8;margin:0 0 15px}.hero-copy .eyebrow{display:flex;align-items:center;gap:8px}.tiny-wheel{font-size:19px;line-height:1;color:var(--rust)}h1{font-family:Arial Black,Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-3.4px;font-size:clamp(44px,4.4vw,65px);line-height:1.04;margin:22px 0}h1 em{font-style:normal;color:var(--rust)}.hero-description{font-size:16px;line-height:1.7;color:#60675d;max-width:420px;margin:24px 0 29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:13px;font-weight:700;padding:15px 20px;border-radius:4px;border:1px solid transparent;text-decoration:none;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--acid);color:var(--ink);border-color:#c9dc90}.primary:hover{background:#c8e280}.button span{font-size:21px;font-weight:400;line-height:1}.micro{font-size:11px;color:var(--muted);line-height:1.6}.hero-note{margin-top:12px}.hero-art{background:var(--ink);color:var(--acid);position:relative;border-radius:7px;overflow:hidden;align-self:stretch;min-height:366px;display:flex;flex-direction:column;justify-content:space-between;padding:25px 28px}.hero-art:after{content:'';height:7px;background:repeating-linear-gradient(110deg,var(--acid) 0px,var(--acid) 15px,#202522 15px,#202522 23px);position:absolute;bottom:0;left:0;right:0}.art-top,.art-bottom{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:8px;letter-spacing:1.6px;gap:20px;z-index:1}.art-top{border-bottom:1px solid #556047;padding-bottom:15px}.art-title{font-size:17px;line-height:1.2;letter-spacing:-.3px;font-weight:800;position:absolute;top:65px;left:28px;z-index:1}.hero-bike{width:105%;height:auto;position:absolute;left:-2.5%;bottom:29px}.art-bottom{padding-bottom:6px;font-size:7px}.art-bottom i{display:inline-block;background:var(--acid);width:5px;height:5px;border-radius:50%;margin-right:8px}.surface-strip{background:var(--ink);color:var(--paper)}.surface-strip .wrap{display:flex;align-items:center;gap:40px;padding-top:18px;padding-bottom:18px;font-family:var(--mono);font-size:11px;letter-spacing:2px}.strip-mark{color:var(--acid)}.strip-caption{margin-left:auto;color:#bec5b8;font-size:10px;letter-spacing:.2px}.match-section{padding-top:66px;padding-bottom:66px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.section-heading .eyebrow{margin-bottom:8px}h2{font-size:31px;line-height:1.18;letter-spacing:-1px;margin:0}.beta-tag{font-family:var(--mono);font-size:9px;letter-spacing:1px;border:1px solid var(--line);padding:7px 10px;border-radius:3px;color:var(--muted);white-space:nowrap}.match-layout{display:grid;grid-template-columns:320px 1fr;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fffef9}.setup-panel{background:#edf0e4;padding:28px 26px;border-right:1px solid var(--line)}.step-label{display:flex;gap:12px;align-items:center;font-family:var(--mono);font-size:10px;letter-spacing:1px;font-weight:600;margin:0 0 18px}.step-label span{color:var(--rust)}.segmented{display:flex;padding:3px;background:#e0e5d4;border-radius:4px;margin-bottom:18px}.segmented button{flex:1;padding:8px 3px;font-size:11px;border:0;border-radius:3px;background:none;color:#60675d}.segmented button.active{background:#fffef9;color:var(--ink);box-shadow:0 1px 4px #1f291311}label{display:block;font-size:11px;font-weight:700;margin:16px 0 6px}input,select{width:100%;border:1px solid #c9cfbd;border-radius:4px;background:#fffef9;color:var(--ink);padding:11px 30px 11px 11px;font-size:12px;min-height:42px}input{padding-right:10px}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%23202522' stroke-width='1.3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}select option{font-size:13px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.optional{font-weight:400;color:var(--muted)}.reference-stats{display:flex;gap:16px;padding-top:14px;font-family:var(--mono);font-size:10px;color:var(--muted)}.reference-stats b{color:var(--ink);font-weight:500}.input-help{font-size:10px;line-height:1.65;color:var(--muted);margin:10px 0 0}.form-divider{border-top:1px solid #cdd4bf;margin:24px 0}.checkbox-label{display:flex;gap:8px;align-items:center;font-size:10px;font-weight:400;line-height:1.5;margin:18px 0}.checkbox-label input{width:14px;height:14px;min-height:14px;accent-color:var(--ink);margin:0}.match-submit{width:100%;padding:13px 14px;margin-top:3px}.form-error{font-size:11px;line-height:1.6;color:#9b3d27;margin:10px 0 0}.form-error:empty{display:none}.results-panel{padding:28px 30px;min-width:0}.results-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.results-top .eyebrow{font-size:9px;margin:0 0 5px;color:var(--rust)}h3{font-size:22px;line-height:1.3;letter-spacing:-.5px;margin:0}.text-button{border:0;background:transparent;padding:5px 0;color:var(--ink);font-size:11px;text-decoration:none}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.result-context{font-size:12px;color:var(--muted);margin:14px 0 22px;line-height:1.7}.target-note{font-size:11px;color:#626951;border-left:2px solid #a8be74;padding:0 0 0 10px;line-height:1.6;margin-top:-8px}.bike-card{position:relative;border:1px solid var(--line);border-radius:5px;margin:14px 0 0;padding:18px;display:grid;grid-template-columns:118px 1fr;gap:20px;background:#fffef9}.bike-card:first-child{border-color:#a7b88b}.bike-visual{background:#f0f0e7;border-radius:4px;display:flex;flex-direction:column;justify-content:center;position:relative;min-height:125px;overflow:hidden}.bike-visual svg{width:100%;height:auto}.bike-visual .size-label{font-family:var(--mono);font-size:8px;letter-spacing:1px;text-align:center;color:var(--muted);margin:8px 0 3px}.bike-content{min-width:0}.card-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.category-tag{font-family:var(--mono);font-size:8px;letter-spacing:1.2px;color:var(--muted);text-transform:uppercase}.save-button{border:0;background:none;padding:0 2px;color:var(--ink);font-size:20px;line-height:1.3}.save-button.saved{color:var(--rust)}.bike-name{font-size:20px;letter-spacing:-.5px;margin:2px 0 3px;font-weight:700}.bike-name span{font-weight:400}.edition{font-size:9px;color:var(--muted);margin:0 0 11px}.deltas{display:flex;gap:8px;flex-wrap:wrap}.delta{padding:4px 6px;background:#f0f2e8;border-radius:3px;font-size:10px;color:#4a5144}.delta strong{font-weight:700}.card-explanation{font-size:11px;line-height:1.6;margin:11px 0;color:#62695c}.card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #eceee3;padding-top:9px}.match-band{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:5px}.match-band i{width:5px;height:5px;border-radius:50%;background:#92ab62;display:inline-block;flex-shrink:0}.match-band.large i{background:#b56f51}.match-band.moderate i{background:#b4a35a}.results-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:18px}.fit-note{font-size:10px;color:var(--muted);line-height:1.7;border-top:1px solid #eceee3;padding-top:14px;margin:13px 0 0}.principles{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:30px;padding-top:38px;padding-bottom:60px}.principles-intro h2{font-size:28px}.principles-intro .eyebrow{font-size:9px;color:var(--rust)}.principle{border-top:1px solid #c6cdb9;padding-top:16px}.principle-number{font-family:var(--mono);font-size:10px;color:var(--rust)}.principle h3{font-size:16px;line-height:1.45;margin:14px 0 10px;letter-spacing:-.2px}.principle p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.closing{margin:0 auto 0;display:flex;align-items:center;justify-content:space-between;background:var(--acid);padding-top:38px;padding-bottom:38px;gap:35px}.closing .eyebrow{font-size:9px}.closing h2{font-size:32px}.outline{background:transparent;border-color:#7e9362}.outline:hover{background:#d0e493}footer{min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:25px}.small-brand .wordmark{font-size:35px}.small-brand .brand-sub{font-size:7px}footer p{font-size:10px;line-height:1.8;color:#60675d}footer p span{color:#7a8076}dialog{width:min(900px,calc(100vw - 40px));max-height:88dvh;border:1px solid #cbd0bf;border-radius:8px;padding:30px;background:var(--paper);color:var(--ink);box-shadow:0 25px 110px #0005}dialog::backdrop{background:#172015a8;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.dialog-top h2{font-size:27px;max-width:90%}.close-dialog{background:transparent;border:1px solid var(--line);border-radius:4px;padding:6px 10px;font-size:17px}#dialogBody p,#dialogBody li{font-size:13px;line-height:1.8;color:#555e50}#dialogBody h3{font-size:17px;margin:24px 0 10px}#dialogBody a{text-underline-offset:3px}#dialogBody .dialog-kicker{font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase}.table-wrap{overflow-x:auto;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}th,td{padding:12px 10px;border-bottom:1px solid var(--line);min-width:100px}th{font-weight:600;font-size:11px}th:first-child,td:first-child{padding-left:0;min-width:120px}.reference-cell{background:#e6ebd9}.table-note{font-size:10px!important}.geometry-plot{background:#fffef9;border:1px solid var(--line);border-radius:5px;max-width:100%;height:auto}.dialog-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:22px 0 0}.source-link{font-size:11px}.catalog-row{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:20px}.catalog-row h3{margin:0!important;font-size:18px!important}.catalog-row p{font-size:11px!important;margin:5px 0!important}.catalog-row .text-button{align-self:center}.saved-row{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.saved-row h3{margin:0 0 4px!important}.saved-row p{font-size:11px!important;margin:0!important}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:var(--paper);padding:13px 20px;border-radius:5px;font-size:12px;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10;max-width:90vw}.toast.visible{opacity:1;transform:translate(-50%,0)}.empty-state{padding:40px 20px;border:1px dashed var(--line);border-radius:5px;margin-top:20px;text-align:center;font-size:13px;color:var(--muted)}[hidden]{display:none!important}@media(min-width:1450px){.hero-art{min-height:390px}.hero-bike{bottom:27px}}@media(max-width:1050px){.wrap{padding-left:28px;padding-right:28px}.hero{gap:30px}h1{font-size:49px;letter-spacing:-2.6px}.hero-art{min-height:345px}.art-title{font-size:15px}.match-layout{grid-template-columns:280px 1fr}.setup-panel{padding:24px 20px}.results-panel{padding:24px 22px}.bike-card{grid-template-columns:90px 1fr;gap:14px;padding:14px}.bike-name{font-size:18px}.bike-visual{min-height:110px}.principles{gap:22px}.site-header nav{gap:22px}.results-top h3{font-size:20px}.strip-caption{font-size:9px}.surface-strip .wrap{gap:25px}.edition{line-height:1.6}}@media(max-width:800px){.hero{grid-template-columns:1fr 1fr;gap:24px;padding-top:40px;padding-bottom:42px}h1{font-size:39px;letter-spacing:-2px}.hero-description{font-size:14px;line-height:1.7}.hero-art{min-height:330px}.hero-bike{width:130%;left:-15%;bottom:45px}.art-title{font-size:14px;left:20px;top:61px}.hero-art{padding:20px}.art-top{font-size:6px;letter-spacing:1px}.art-bottom{font-size:6px}.brand-sub{display:none}.site-header{min-height:85px}.site-header nav{gap:18px}.site-header nav a,.nav-link{font-size:11px}.shortlist-button{font-size:11px;padding:8px 10px;gap:10px}.wordmark{font-size:40px}.match-layout{grid-template-columns:240px 1fr}.setup-panel{padding:22px 16px}.results-panel{padding:22px 16px}.bike-card{grid-template-columns:1fr}.bike-visual{display:none}.results-top{align-items:flex-start;gap:12px}.results-top .text-button{font-size:10px;white-space:nowrap}.section-heading h2{font-size:26px}.beta-tag{font-size:7px}.principles{grid-template-columns:1fr 1fr;gap:32px}.principles-intro{padding-top:8px}.strip-caption{display:none}.surface-strip .wrap{justify-content:space-between}.closing h2{font-size:28px}.closing .button{font-size:11px;gap:15px}footer{flex-wrap:wrap;padding-top:24px;padding-bottom:24px;min-height:110px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}}@media(max-width:590px){.wrap{padding-left:20px;padding-right:20px}.site-header{gap:12px;min-height:78px}.site-header nav{gap:16px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:30px;gap:25px}h1{font-size:49px;letter-spacing:-2.9px;margin:17px 0}.hero-description{max-width:390px;font-size:15px;margin:20px 0 22px}.hero-note{margin-bottom:0}.hero-art{min-height:270px}.hero-bike{width:95%;left:2.5%;bottom:18px;height:250px}.art-title{font-size:14px;top:57px}.art-top{font-size:7px}.art-bottom{font-size:6px}.surface-strip .wrap{gap:14px;font-size:9px;letter-spacing:1.5px;padding-top:15px;padding-bottom:15px}.match-section{padding-top:38px;padding-bottom:34px}.section-heading{align-items:flex-start;gap:15px;margin-bottom:22px}.section-heading h2{font-size:26px;max-width:260px}.section-heading .eyebrow{font-size:9px}.beta-tag{font-size:6px;letter-spacing:.5px;padding:5px;white-space:normal;max-width:65px;text-align:center;margin-top:5px}.match-layout{grid-template-columns:1fr}.setup-panel{padding:24px;border-right:0;border-bottom:1px solid var(--line)}.results-panel{padding:25px 20px}.reference-stats{font-size:11px}.input-help{font-size:11px}input,select{font-size:13px}.checkbox-label{font-size:11px}.step-label{font-size:10px}.bike-card{grid-template-columns:80px 1fr;padding:13px;gap:12px}.bike-visual{display:flex;min-height:120px}.bike-name{font-size:18px}.card-explanation{font-size:10px}.delta{font-size:9px}.card-bottom{align-items:flex-start;gap:8px}.card-bottom .text-button{font-size:10px;white-space:nowrap}.match-band{font-size:8px;line-height:1.6}.results-top h3{font-size:21px}.result-context{font-size:11px}.results-footer .micro{font-size:9px}.results-footer .text-button{font-size:10px;white-space:nowrap}.fit-note{font-size:10px}.principles{grid-template-columns:1fr;gap:24px;padding-top:24px;padding-bottom:35px}.principles-intro{display:flex;justify-content:space-between;gap:25px;padding-top:0}.principles-intro h2{font-size:26px}.principles-intro .eyebrow{font-size:8px}.principle{padding-top:13px}.principle h3{margin:8px 0 8px}.principle p{font-size:12px}.closing{padding-top:27px;padding-bottom:27px;align-items:flex-start;flex-direction:column;gap:23px}.closing h2{font-size:29px}.closing .button{width:100%}footer p{font-size:9px}footer .brand{display:none}footer{gap:14px}dialog{width:calc(100vw - 24px);padding:22px 18px;max-height:90dvh}.dialog-top h2{font-size:24px}.catalog-row{grid-template-columns:1fr;gap:5px}.catalog-row .text-button{text-align:left}.dialog-actions{gap:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}@media print{.site-header,.hero,.surface-strip,.setup-panel,.principles,.closing,footer,.results-top button,.results-footer button,.save-button,.card-bottom button{display:none!important}.match-section{padding:0}.wrap{max-width:none;padding:0}.match-layout{display:block;border:0}.results-panel{padding:0}.bike-card{break-inside:avoid}.fit-note{font-size:11px}dialog{position:static;max-height:none;width:100%;border:0;padding:0}.close-dialog{display:none}}

.footer-nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.footer-nav a{font-size:10px;text-underline-offset:3px}@media(max-width:590px){.footer-nav{gap:14px}.footer-nav a{font-size:10px}}
.menu-button{display:none}
.results-panel{scroll-margin-top:12px}
@media(max-width:590px){
.site-header{position:relative}
.menu-button{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-height:44px;min-width:72px;padding:0 14px;border:1px solid var(--ink);border-radius:5px;background:transparent;color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}
.shortlist-button{min-height:44px}
.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:20;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(32,37,34,.12);padding:4px 20px 8px}
.site-header nav.open{display:flex}
.site-header nav a,.site-header nav .nav-link{display:flex;align-items:center;min-height:48px;padding:0;font-size:15px;text-align:left;border-bottom:1px solid var(--line);color:var(--ink)}
.site-header nav>:last-child{border-bottom:0}
}

/* Step 1: types, position chips, catalog pages */
.position{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.3px;color:var(--ink)}
.meter{display:inline-flex;gap:2px}.meter i{width:8px;height:10px;border-radius:1px;background:#d6dac9}
.position-aggressive .meter i:nth-child(1),.position-balanced .meter i:nth-child(2),.position-relaxed .meter i:nth-child(3){background:var(--rust)}
.position-balanced .meter i:nth-child(2){background:#6f8a3f}.position-relaxed .meter i:nth-child(3){background:#4f7f97}
.card-meta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:4px 0 8px;font-size:12px}.card-meta .price{font-family:var(--mono);font-size:11px;color:var(--muted)}
.reference-stats{flex-wrap:wrap}
.paths{padding-top:46px;padding-bottom:10px}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.path-card{border:1px solid var(--line);border-radius:8px;padding:22px;background:#fffef9}.path-card h3{margin:0 0 8px;font-size:20px}.path-card p{font-size:13px;line-height:1.6}
.tile-group{margin-top:10px}.tile-label{font-family:var(--mono);font-size:10px;letter-spacing:1px;color:var(--muted);margin:6px 0}
.tile-row{display:flex;flex-wrap:wrap;gap:8px}.type-tile{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:6px;padding:8px 12px;text-decoration:none;color:var(--ink);min-height:44px;justify-content:center}.type-tile:hover{border-color:var(--ink)}.type-tile strong{font-size:13px}.type-tile span{font-size:10px;color:var(--muted)}
.brand-chips{display:flex;flex-wrap:wrap;gap:8px}.brand-chips a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;font-size:13px;text-decoration:none;color:var(--ink)}.brand-chips a:hover{border-color:var(--ink)}
.crumbs{font-family:var(--mono);font-size:11px;color:var(--muted);margin-bottom:18px}.crumbs a{color:var(--muted)}
.path-links{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:18px 0}.facts dt{font-family:var(--mono);font-size:10px;letter-spacing:1px;color:var(--muted)}.facts dd{margin:4px 0 0;font-size:15px}
.frame-table td,.frame-table th{vertical-align:top}.legend{font-size:12px!important;color:var(--muted)}
.frame-map{width:100%;max-width:680px;height:auto;background:#fffef9;border:1px solid var(--line);border-radius:6px}.frame-map .map-label{font-family:Arial,sans-serif;font-size:11px;font-weight:600}
.type-card h3{margin:4px 0 6px;font-size:19px}
@media(max-width:590px){.path-grid,.facts{grid-template-columns:1fr}.paths{padding-top:30px}}
