/* Shared site typography, palette, header, buttons and backdrop come from /style.css. */
.gear-page .skip { position:fixed; top:-100px; left:16px; z-index:100; padding:12px 18px; background:#fff; color:#111; }
.gear-page .skip:focus { top:12px; }
.gear-page #main { scroll-margin-top:100px; }
.gear-page .gear-hero { min-height:auto; }
.gear-page .gear-hero > .button { justify-self:start; }
.gear-page .categories { display:flex; flex-wrap:wrap; gap:10px; margin-inline:auto; padding-bottom:32px; }
.gear-page .categories a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid var(--gear-line); border-radius:999px; text-decoration:none; font-size:14px; font-weight:700; background:var(--gear-panel); }
.gear-page .gear-section { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr); gap:32px; padding:40px; margin:0 auto 20px; border:1px solid var(--gear-line); border-radius:var(--gear-radius); background:var(--gear-panel); scroll-margin-top:110px; }
.gear-page .section-label > span { display:block; color:var(--gear-muted); font-size:12px; font-weight:700; letter-spacing:.16em; margin-bottom:12px; }
.gear-page .gear-section h2 { font-size:clamp(2rem,4vw,3.5rem); margin:0; }
.gear-page .gear-section h3 { font-size:18px; margin:0 0 16px; }
.gear-page .gear-section h3:not(:first-child) { margin-top:28px; }
.gear-page .equipment,.gear-page .focal-list { list-style:none; padding:0; margin:0; }
.gear-page .equipment li { padding:14px 0; border-bottom:1px solid var(--gear-line); font-size:18px; font-weight:600; overflow-wrap:anywhere; }
.gear-page .equipment li:first-child { padding-top:0; }
.gear-page .equipment li:last-child { border:0; padding-bottom:0; }
.gear-page .equipment span { display:block; margin-top:5px; color:var(--gear-muted); font-size:14px; font-weight:400; text-transform:none; }
.gear-page .focal-list { display:flex; flex-wrap:wrap; gap:8px; }
.gear-page .focal-list li { padding:7px 12px; border:1px solid var(--gear-line); border-radius:8px; }
.gear-page .gear-section > p { color:var(--gear-muted); margin:0; text-transform:none; }
.gear-page .contact { margin-top:60px; scroll-margin-top:110px; }
.gear-page .contact .button { margin-top:28px; }
.gear-page .email { display:block; margin-top:20px; overflow-wrap:anywhere; text-transform:none; }
.gear-page .gear-menu { display:none; }
@media(max-width:1020px) {
 .gear-page .site-header { flex-wrap:wrap; overflow:visible; }
 .gear-page .site-header > nav { display:none; }
 .gear-page .gear-menu { display:block; grid-column:1 / -1; width:100%; }
 .gear-page .gear-menu summary { cursor:pointer; font-size:14px; padding:8px 0; }
 .gear-page .gear-menu nav { display:flex; flex-wrap:wrap; gap:8px; padding-top:10px; }
 .gear-page .gear-menu nav a { padding:10px 12px; min-height:44px; }
}
@media(max-width:600px) {
 .gear-page .gear-section { grid-template-columns:1fr; gap:24px; padding:24px; scroll-margin-top:24px; }
 .gear-page .site-header { position:relative; }
 .gear-page .categories { gap:8px; padding-bottom:24px; }
 .gear-page .categories a { font-size:12px; padding:9px 12px; }
 .gear-page .equipment li { font-size:16px; }
 .gear-page .contact { scroll-margin-top:24px; }
}
.gear-page { --gear-line:var(--color-divider); --gear-muted:var(--color-text-muted); --gear-panel:var(--color-surface); --gear-radius:16px; }
.gear-page .categories,.gear-page .gear-section { width:calc(100% - clamp(32px,8vw,80px)); }
.gear-page .gear-hero { gap:24px; }
.gear-page .gear-hero h1 { max-width:none; }
.gear-page .gear-hero .eyebrow { color:var(--color-primary); font-size:13px; text-transform:uppercase; letter-spacing:.16em; }
.gear-page .contact > p { max-width:58ch; margin-top:24px; color:var(--color-text-muted); }
.gear-page .contact h2 { margin-top:16px; }
