.pf-bicycle-oem { color:var(--text-primary); background:var(--primary-bg); padding-top:var(--header-height); }
.pf-bicycle-oem .bo-container { width:calc(100% - 48px); max-width:var(--container-max); margin-inline:auto; }
.pf-bicycle-oem p { color:var(--text-secondary); line-height:1.7; }
.pf-bicycle-oem h1,.pf-bicycle-oem h2,.pf-bicycle-oem h3 { color:var(--text-primary); letter-spacing:-.025em; }
.pf-bicycle-oem h2 { font-size:clamp(27px,3vw,38px); line-height:1.2; max-width:850px; margin-bottom:20px; }
.pf-bicycle-oem h3 { font-size:21px; line-height:1.3; margin-bottom:12px; }
.pf-bicycle-oem a { color:var(--accent-light); text-underline-offset:5px; }
.pf-bicycle-oem a:hover { text-decoration:underline; }
.pf-bicycle-oem a:focus-visible,.pf-bicycle-oem button:focus-visible,.pf-bicycle-oem summary:focus-visible,.pf-bicycle-oem [tabindex]:focus-visible { outline:2px solid var(--accent-light); outline-offset:5px; }
.pf-bicycle-oem .btn { color:#fff; min-height:48px; border-radius:var(--radius-button); white-space:nowrap; font-size:15px; padding:13px 19px; }
.pf-bicycle-oem .btn:hover { text-decoration:none; }
.pf-bicycle-oem .bo-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; padding:28px 0 0; font-size:13px; color:var(--text-secondary); }
.pf-bicycle-oem .bo-breadcrumb a { color:var(--text-secondary); }
.pf-bicycle-oem .bo-hero { display:grid; grid-template-columns:1.05fr 1fr; gap:44px; align-items:center; padding:42px 0 34px; }
.pf-bicycle-oem .bo-eyebrow { color:var(--accent-light); font-size:12px; font-weight:650; letter-spacing:.11em; text-transform:uppercase; margin-bottom:18px; }
.pf-bicycle-oem h1 { font-size:clamp(32px,3.4vw,47px); line-height:1.09; letter-spacing:-.038em; margin:0 0 24px; }
.pf-bicycle-oem .bo-keep { white-space:nowrap; }
.pf-bicycle-oem h1 { hyphens:auto; overflow-wrap:anywhere; }
html:not([lang="en"]) .pf-bicycle-oem .bo-keep { white-space:normal; }
.pf-bicycle-oem .bo-lead { font-size:17px; }
.pf-bicycle-oem .bo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 24px; margin-top:28px; }
.pf-bicycle-oem .bo-text-link { display:inline-block; font-size:15px; font-weight:600; line-height:1.5; padding-block:7px; }
.pf-bicycle-oem .bo-hero__visual { min-width:0; background:var(--pf-graphite); border:1px solid var(--border-color); border-radius:var(--radius-panel); }
.pf-bicycle-oem .bo-hero__visual > img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; padding:20px; }
.pf-bicycle-oem figcaption { font-size:12px; color:var(--text-secondary); line-height:1.5; padding:12px 16px; }
.pf-bicycle-oem .bo-hero__visual > figcaption { padding-top:0; text-align:center; }
.pf-bicycle-oem .bo-identity { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--border-color); }
.pf-bicycle-oem .bo-identity span { padding:16px 8px; text-align:center; font-size:12px; color:var(--text-light); }
.pf-bicycle-oem .bo-identity span + span { border-left:1px solid var(--border-color); }
.pf-bicycle-oem .bo-capabilities { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 16px; font-size:13px; padding:8px 0 28px; }
.pf-bicycle-oem .bo-capabilities span { color:var(--accent-light); }
.pf-bicycle-oem .bo-section-nav { display:flex; flex-wrap:wrap; gap:8px 32px; padding:13px 0; border-block:1px solid var(--border-color); }
.pf-bicycle-oem .bo-section-nav a { padding:10px 0; color:var(--text-light); font-size:14px; }
.pf-bicycle-oem .bo-section { padding-block:64px; border-bottom:1px solid var(--border-color); scroll-margin-top:calc(var(--header-height) + 20px); }
.pf-bicycle-oem #hardware-examples { scroll-margin-top:calc(var(--header-height) + 20px); }
.pf-bicycle-oem .bo-intro { max-width:760px; margin-bottom:30px; font-size:17px; }
.pf-bicycle-oem .bo-scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 24px; }
.pf-bicycle-oem .bo-scope-grid article { min-width:0; }
.pf-bicycle-oem .bo-scope-media { display:block; background:var(--pf-panel); border-radius:var(--radius-panel); margin-bottom:18px; overflow:hidden; }
.pf-bicycle-oem .bo-scope-media img { width:100%; height:185px; object-fit:contain; padding:16px; }
.pf-bicycle-oem .bo-scope-media--render { background:#aeb6c5; }
.pf-bicycle-oem .bo-scope-media--render img { padding:0; }
.pf-bicycle-oem .bo-scope-grid h3 { font-size:19px; margin-bottom:9px; }
.pf-bicycle-oem .bo-scope-grid h3 a { color:inherit; }
.pf-bicycle-oem .bo-scope-grid p { font-size:15px; }
.pf-bicycle-oem .bo-scope-grid p, .pf-bicycle-oem .bo-revision-flow strong { overflow-wrap:anywhere; hyphens:auto; }
.pf-bicycle-oem .bo-note { font-size:13px; line-height:1.6; margin-top:24px; }
.pf-bicycle-oem .bo-examples { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.pf-bicycle-oem .bo-example { min-width:0; border:1px solid var(--border-color); border-radius:var(--radius-panel); overflow:hidden; }
.pf-bicycle-oem .bo-example__image { background:var(--pf-graphite); }
.pf-bicycle-oem .bo-example__image img { width:100%; height:260px; object-fit:contain; padding:20px; }
.pf-bicycle-oem .bo-example__body { padding:25px; }
.pf-bicycle-oem .bo-example__body p { font-size:15px; margin-bottom:14px; }
.pf-bicycle-oem .bo-example__documents { display:grid; grid-template-columns:1fr 1fr; background:var(--pf-panel); align-items:stretch; }
.pf-bicycle-oem .bo-example__documents figure img,.pf-bicycle-oem .bo-drawing img { width:100%; height:180px; object-fit:contain; background:#aeb6c5; }
.pf-bicycle-oem .bo-drawing { display:flex; flex-direction:column; color:var(--accent-light); }
.pf-bicycle-oem .bo-drawing img { background:#fff; }
.pf-bicycle-oem .bo-drawing span { font-size:12px; line-height:1.5; padding:12px 16px; }
.pf-bicycle-oem .bo-bom { background:var(--pf-graphite); border:1px solid var(--border-color); border-top:3px solid var(--accent); border-radius:var(--radius-panel); margin-top:64px; padding:36px; }
.pf-bicycle-oem .bo-table-scroll { width:100%; overflow-x:auto; margin-block:16px 28px; overscroll-behavior-x:contain; }
.pf-bicycle-oem .bo-table-caption { font-size:13px; }
.pf-bicycle-oem .bo-table-hint { display:none; font-size:12px; color:var(--accent-light); margin-top:8px; }
.pf-bicycle-oem table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; min-width:770px; }
.pf-bicycle-oem caption { text-align:left; color:var(--text-secondary); font-size:13px; padding:0 0 16px; }
.pf-bicycle-oem th,.pf-bicycle-oem td { padding:16px 12px; border-bottom:1px solid var(--border-color); }
.pf-bicycle-oem thead th { font-size:12px; color:var(--text-secondary); font-weight:500; background:var(--pf-panel); }
.pf-bicycle-oem tbody th { font-family:Consolas,monospace; font-weight:500; color:var(--accent-light); }
.pf-bicycle-oem td { color:var(--text-light); }
.pf-bicycle-oem .bo-bom-notes { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.pf-bicycle-oem .bo-bom-notes p,.pf-bicycle-oem .bo-variants > p { font-size:15px; }
.pf-bicycle-oem .bo-formula { background:var(--pf-panel); padding:20px; margin-top:24px; font-size:14px; }
.pf-bicycle-oem .bo-formula strong { color:var(--text-primary); }
.pf-bicycle-oem .bo-variants { padding-top:36px; margin-top:32px; border-top:1px solid var(--border-color); }
.pf-bicycle-oem .bo-revision-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; list-style:none; margin:24px 0; padding:0; }
.pf-bicycle-oem .bo-revision-flow li { padding:14px; border-left:2px solid var(--accent); background:var(--pf-panel); }
.pf-bicycle-oem .bo-revision-flow strong { display:block; font-size:14px; line-height:1.5; }
.pf-bicycle-oem .bo-revision-flow span { display:block; font-size:12px; color:var(--text-secondary); margin-top:7px; }
.pf-bicycle-oem .bo-supply-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.pf-bicycle-oem .bo-supply-grid article { border-left:2px solid var(--border-color); padding-left:24px; }
.pf-bicycle-oem .bo-supply-grid p { font-size:16px; margin-bottom:12px; }
.pf-bicycle-oem .bo-manufacturing { display:grid; grid-template-columns:1.1fr 1fr; gap:36px; align-items:start; }
.pf-bicycle-oem .bo-manufacturing figure { background:var(--pf-panel); }
.pf-bicycle-oem .bo-manufacturing img { width:100%; height:auto; }
.pf-bicycle-oem .bo-processes { display:grid; gap:18px; }
.pf-bicycle-oem dt { font-size:16px; font-weight:600; margin-bottom:5px; }
.pf-bicycle-oem dd { margin:0; font-size:14px; line-height:1.6; color:var(--text-secondary); }
.pf-bicycle-oem .bo-factory-note { display:grid; grid-template-columns:32% 1fr; gap:36px; align-items:center; margin-top:32px; }
.pf-bicycle-oem .bo-factory-note img { width:100%; height:auto; }
.pf-bicycle-oem .bo-factory-note figcaption { padding-inline:0; }
.pf-bicycle-oem .bo-related { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:14px; margin-top:18px; }
.pf-bicycle-oem .bo-related a { padding-block:5px; }
.pf-bicycle-oem .bo-quality-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.pf-bicycle-oem .bo-materials { display:grid; gap:19px; margin-bottom:20px; }
.pf-bicycle-oem .bo-quality-grid > div > p { font-size:14px; margin-top:16px; }
.pf-bicycle-oem .bo-certificate { display:grid; grid-template-columns:40% 1fr; gap:24px; align-items:start; padding:24px; border:1px solid var(--border-color); border-radius:var(--radius-panel); }
.pf-bicycle-oem .bo-certificate img { width:100%; height:auto; }
.pf-bicycle-oem .bo-certificate a { font-size:13px; line-height:1.5; }
.pf-bicycle-oem .bo-certificate a span { display:block; margin-top:12px; }
.pf-bicycle-oem .bo-certificate p { font-size:13px; margin-bottom:14px; }
.pf-bicycle-oem .bo-certificate strong { font-weight:500; color:var(--text-light); }
.pf-bicycle-oem .bo-certificate .bo-note { margin-top:0; }
.pf-bicycle-oem .bo-project-flow { list-style:none; padding:0; margin:30px 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; counter-reset:project; }
.pf-bicycle-oem .bo-project-flow li { counter-increment:project; padding-left:34px; position:relative; }
.pf-bicycle-oem .bo-project-flow li::before { content:counter(project); position:absolute; left:0; top:1px; color:var(--accent-light); font-size:18px; }
.pf-bicycle-oem .bo-project-flow h3 { font-size:18px; }
.pf-bicycle-oem .bo-project-flow p { font-size:14px; }
.pf-bicycle-oem .bo-project-flow span { display:block; font-size:13px; line-height:1.6; color:var(--text-light); margin-top:12px; }
.pf-bicycle-oem .bo-responsibility { padding:28px; background:var(--pf-panel); }
.pf-bicycle-oem .bo-responsibility p { font-size:15px; }
.pf-bicycle-oem .bo-faq details { border-bottom:1px solid var(--border-color); }
.pf-bicycle-oem .bo-faq summary { display:flex; justify-content:space-between; gap:20px; cursor:pointer; padding:22px 0; font-size:17px; font-weight:500; list-style:none; }
.pf-bicycle-oem .bo-faq summary::-webkit-details-marker { display:none; }
.pf-bicycle-oem .bo-faq summary::after { content:'+'; color:var(--accent-light); font-size:22px; flex-shrink:0; }
.pf-bicycle-oem .bo-faq details[open] summary::after { content:'−'; }
.pf-bicycle-oem .bo-faq details p { max-width:900px; margin:0 0 24px; font-size:15px; }
.pf-bicycle-oem .bo-rfq { display:grid; grid-template-columns:1.2fr 1fr; gap:54px; border-bottom:0; }
.pf-bicycle-oem .bo-rfq .btn { margin-top:26px; }
.pf-bicycle-oem .bo-rfq__inputs { align-self:center; padding:28px; background:var(--pf-panel); }
.pf-bicycle-oem .bo-rfq__inputs ul { padding-left:20px; font-size:15px; line-height:1.7; color:var(--text-light); }
.pf-bicycle-oem .bo-rfq__inputs li + li { margin-top:8px; }
.pf-bicycle-oem .bo-rfq__inputs p { font-size:13px; margin-top:20px; }
.pf-bicycle-oem .bo-viewer { margin:auto; width:min(1050px,calc(100vw - 28px)); max-height:90dvh; background:var(--pf-panel); color:var(--text-primary); border:1px solid var(--border-color); border-radius:var(--radius-media); padding:20px; }
.pf-bicycle-oem .bo-viewer::backdrop { background:rgba(0,0,0,.82); }
.pf-bicycle-oem .bo-viewer__bar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:14px; }
.pf-bicycle-oem .bo-viewer h2 { font-size:18px; margin:0; }
.pf-bicycle-oem .bo-viewer button { background:var(--pf-panel-2); border:1px solid var(--border-color); color:var(--text-primary); padding:12px 16px; cursor:pointer; border-radius:var(--radius-button); white-space:nowrap; }
.pf-bicycle-oem .bo-viewer img { width:100%; height:auto; max-height:65dvh; object-fit:contain; background:#fff; margin-bottom:16px; }
.pf-bicycle-oem .bo-viewer img[hidden] { display:none; }
.pf-bicycle-oem .bo-viewer > a { display:inline-block; padding-block:8px; font-size:14px; }
@media(max-width:1050px) {
  .pf-bicycle-oem .bo-table-hint { display:block; }
  .pf-bicycle-oem .bo-hero { gap:28px; }
  .pf-bicycle-oem .bo-quality-grid { gap:28px; }
  .pf-bicycle-oem .bo-certificate { grid-template-columns:1fr; }
  .pf-bicycle-oem .bo-certificate > a { display:flex; gap:20px; align-items:center; }
  .pf-bicycle-oem .bo-certificate img { width:135px; }
}
@media(max-width:800px) {
  .pf-bicycle-oem .bo-hero { grid-template-columns:1fr; padding-top:30px; }
  .pf-bicycle-oem .bo-hero__visual { max-width:560px; width:100%; margin:auto; }
  .pf-bicycle-oem .bo-scope-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pf-bicycle-oem .bo-bom { padding:26px; }
  .pf-bicycle-oem .bo-revision-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pf-bicycle-oem .bo-example__documents { grid-template-columns:1fr; }
  .pf-bicycle-oem .bo-manufacturing,.pf-bicycle-oem .bo-quality-grid { grid-template-columns:1fr; }
  .pf-bicycle-oem .bo-processes { grid-template-columns:1fr 1fr; gap:24px; }
  .pf-bicycle-oem .bo-certificate { grid-template-columns:36% 1fr; }
  .pf-bicycle-oem .bo-certificate > a { display:block; }
  .pf-bicycle-oem .bo-certificate img { width:100%; max-width:220px; }
  .pf-bicycle-oem .bo-project-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pf-bicycle-oem .bo-rfq { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:540px) {
  .pf-bicycle-oem .bo-container { width:calc(100% - 36px); }
  .pf-bicycle-oem h1 { font-size:34px; }
  .pf-bicycle-oem .bo-lead { font-size:16px; }
  .pf-bicycle-oem .bo-hero__visual > img { padding:12px; }
  .pf-bicycle-oem .bo-capabilities { display:block; text-align:center; line-height:1.9; }
  .pf-bicycle-oem .bo-capabilities span { padding-inline:5px; }
  .pf-bicycle-oem .bo-section-nav { gap:0; justify-content:space-between; }
  .pf-bicycle-oem .bo-section-nav a { font-size:12px; }
  .pf-bicycle-oem .bo-section { padding-block:42px; }
  .pf-bicycle-oem .bo-scope-grid { gap:24px 16px; }
  .pf-bicycle-oem .bo-scope-media img { height:120px; padding:5px; }
  .pf-bicycle-oem .bo-scope-media--render img { padding:0; }
  .pf-bicycle-oem .bo-scope-grid h3 { font-size:17px; }
  .pf-bicycle-oem .bo-scope-grid p { font-size:14px; }
  .pf-bicycle-oem .bo-examples { grid-template-columns:1fr; gap:24px; }
  .pf-bicycle-oem .bo-example__body { padding:22px; }
  .pf-bicycle-oem .bo-example__documents { grid-template-columns:1fr 1fr; }
  .pf-bicycle-oem .bo-example__documents figure img,.pf-bicycle-oem .bo-drawing img { height:145px; }
  .pf-bicycle-oem .bo-bom { margin-top:42px; padding:24px 18px; }
  .pf-bicycle-oem .bo-bom-notes,.pf-bicycle-oem .bo-supply-grid { grid-template-columns:1fr; gap:24px; }
  .pf-bicycle-oem .bo-processes { grid-template-columns:1fr; gap:19px; }
  .pf-bicycle-oem .bo-factory-note { grid-template-columns:1fr; gap:14px; }
  .pf-bicycle-oem .bo-certificate { grid-template-columns:1fr; padding:20px; }
  .pf-bicycle-oem .bo-certificate > a { display:flex; }
  .pf-bicycle-oem .bo-certificate img { width:120px; }
  .pf-bicycle-oem .bo-project-flow { grid-template-columns:1fr; gap:27px; }
  .pf-bicycle-oem .bo-responsibility,.pf-bicycle-oem .bo-rfq__inputs { padding:22px; }
}
@media(prefers-reduced-motion:reduce) { .pf-bicycle-oem *, .pf-bicycle-oem *::before, .pf-bicycle-oem *::after { scroll-behavior:auto; transition:none; animation:none; } }
