.archive-intro{padding-block:65px 40px}.archive-intro>.eyebrow{margin-bottom:20px}.archive-intro h1{font-size:clamp(47px,6vw,85px);line-height:1.02}.archive-intro h1 span{color:var(--red)}.archive-intro>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:570px;margin-top:24px}
.archive-stats{display:flex;gap:55px;flex-wrap:wrap;margin-top:34px;padding-top:25px;border-top:1px solid var(--line)}.archive-stats>span{font-size:11px;color:var(--muted);line-height:1.7}.archive-stats strong{font-size:30px;font-weight:600;color:var(--ink);letter-spacing:-.05em;margin-right:8px}
.archive-controls{padding-block:22px 32px}.archive-controls>label{display:block;font-size:12px;font-weight:600;margin-bottom:12px}.archive-controls>input{width:100%;padding:17px 19px;background:white;border:1px solid #bfc4b5;font-size:16px;border-radius:0;color:var(--ink)}.archive-controls>input::placeholder{color:var(--muted)}
.archive-filter-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.archive-filter-list button{padding:10px 15px;min-height:39px;border:1px solid #cbd0c0;border-radius:22px;background:none;font-size:11px;color:var(--ink)}.archive-filter-list button:hover{background:#eaede2}.archive-filter-list button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}#archive-status{font-size:12px;line-height:1.8;margin-top:18px;color:var(--muted)}
.page-browser{padding-block:26px 65px;border-block:1px solid var(--line)}.viewer-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:24px}.viewer-heading .eyebrow{margin-bottom:12px}.viewer-heading h2{font-size:clamp(27px,3vw,43px);line-height:1.1;letter-spacing:-.045em;max-width:700px}.viewer-heading>.text-link{flex-shrink:0}
.viewer-toolbar{display:flex;align-items:center;gap:13px;margin-bottom:16px;max-width:100%}.viewer-toolbar>label{flex:1;min-width:0}.viewer-toolbar select{width:100%;font-size:13px;padding:14px;border:1px solid #bfc4b5;background:white;color:var(--ink);border-radius:0;min-width:0}.viewer-toolbar>button{width:46px;height:46px;flex-shrink:0;border:1px solid #bfc4b5;background:none;font-size:21px;color:var(--ink)}.viewer-toolbar>button:disabled{opacity:.35;cursor:default}#page-counter{font-size:12px;color:var(--muted);white-space:normal;line-height:1.6;padding-left:6px}
.viewer-stage{background:#e8e9e3;padding:25px;border:1px solid #d1d5c7;min-height:450px;text-align:center}.viewer-stage>a{display:block;max-width:100%;width:max-content;margin:auto;cursor:zoom-in}.viewer-stage img{width:auto;height:auto;max-width:100%;max-height:780px;object-fit:contain;background:white;box-shadow:0 8px 22px #20221e12}.viewer-bottom{display:flex;justify-content:space-between;gap:30px;font-size:11px;line-height:1.8;color:var(--muted);padding-top:15px}.viewer-bottom>a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;flex-shrink:0}
.page-index{margin-top:25px;border-block:1px solid var(--line)}.page-index>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:20px;cursor:pointer;font-size:14px;font-weight:600;list-style:none}.page-index>summary::-webkit-details-marker{display:none}.page-index>summary>span{font-size:11px;font-weight:400;color:var(--muted)}.page-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-bottom:23px}.page-link-grid>a{padding:12px 13px;background:#eeeee7;font-size:11px;line-height:1.6;display:flex;gap:12px;align-items:flex-start}.page-link-grid>a>span{font-weight:700;color:var(--red);flex-shrink:0}.page-link-grid>a:hover{background:#e2e6d8}.page-link-grid>a[aria-current=page]{outline:2px solid var(--ink);outline-offset:-2px}
.family-library{padding-block:65px}.family-library .section-heading>p{max-width:270px}.library-note{font-size:12px;line-height:1.9;color:var(--muted);max-width:900px;margin-bottom:30px}.family-group{border-top:1px solid var(--line)}.family-group:last-of-type{border-bottom:1px solid var(--line)}.family-group>summary{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 0;cursor:pointer;list-style:none}.family-group>summary::-webkit-details-marker{display:none}.family-group>summary>span:first-child{display:flex;flex-direction:column;gap:9px}.family-group strong{font-size:30px;font-weight:600;letter-spacing:-.045em;line-height:1.1}.family-group small{font-size:11px;line-height:1.7;color:var(--muted)}.group-plus{font-size:28px;font-weight:400;flex-shrink:0}.family-group[open] .group-plus{transform:rotate(45deg)}
.family-group-intro{font-size:13px;line-height:1.8;color:var(--muted);max-width:650px;margin-bottom:25px}.family-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:35px}.family-record{border:1px solid #d2d7c8;background:white;padding:24px;min-width:0;display:flex;flex-direction:column}.family-record-heading>p{font-size:10px;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:12px}.family-record-heading h3{font-size:24px;line-height:1.15;letter-spacing:-.04em}.model-tags{display:flex;flex-wrap:wrap;gap:5px;margin-block:18px}.model-tags>span{font-size:10px;padding:5px 7px;border:1px solid #d2d7c8;background:#f3f4ed;font-weight:600;line-height:1.4;overflow-wrap:anywhere;max-width:100%}
.family-specs{margin:0;display:grid;gap:16px}.family-specs>div{display:grid;gap:6px}.family-specs dt{font-size:10px;font-weight:700}.family-specs dd{font-size:12px;color:var(--muted);line-height:1.8;margin:0;overflow-wrap:anywhere}.family-features{padding-left:15px;margin:19px 0 24px;font-size:12px;line-height:1.8;color:var(--muted)}.family-features li+li{margin-top:4px}.family-record-footer{margin-top:auto;padding-top:17px;border-top:1px solid var(--line);display:grid;gap:16px}.family-record-footer>div{display:flex;gap:9px 15px;flex-wrap:wrap}.family-page-link{font-size:11px;display:inline-flex;gap:6px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}.family-quote-link{font-size:11px;color:var(--red);font-weight:600;line-height:1.6}.family-page-link:hover,.family-quote-link:hover{color:var(--ink)}
.archive-close{background:#e9ebdf;padding-block:45px;display:flex;align-items:center;flex-wrap:wrap;gap:25px 45px}.archive-close>div{flex:1}.archive-close .eyebrow{margin-bottom:15px}.archive-close h2{font-size:40px}.archive-close>.text-link{flex:1 1 100%}
.catalog-dialog{border:0;padding:0;width:min(98vw,1400px);max-width:98vw;height:94svh;max-height:94svh;background:var(--paper);color:var(--ink);overflow:hidden}.catalog-dialog::backdrop{background:#12170de8}.dialog-toolbar{display:flex;align-items:center;gap:18px;min-height:75px;padding:15px 22px;border-bottom:1px solid var(--line);background:var(--paper)}.dialog-toolbar h2{font-size:17px;line-height:1.4;letter-spacing:-.02em;margin-right:auto;max-width:650px}.dialog-toolbar>label{font-size:11px;white-space:nowrap}.dialog-toolbar input{width:140px;accent-color:var(--red)}.dialog-toolbar>button{font-size:19px;border:1px solid var(--line);background:transparent;color:var(--ink);width:42px;height:42px;flex-shrink:0}.zoom-scroll{height:calc(100% - 75px);width:100%;overflow:auto;background:#e3e5dc;overscroll-behavior:contain;padding:15px;touch-action:pan-x pan-y pinch-zoom}.zoom-scroll>img{max-width:none!important;width:150%;height:auto;display:block;background:white}
/* All source links and text remain useful when scripts are disabled. */
.catalog-archive:not(.filters-ready) .archive-controls,.catalog-archive:not(.filters-ready) .viewer-toolbar{display:none}
@media(max-width:1050px){.family-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-heading{align-items:flex-start;flex-direction:column;gap:20px}.page-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-stats{gap:35px}}
@media(max-width:700px){.archive-intro{padding-top:42px}.archive-intro h1{font-size:clamp(42px,8vw,64px)}.archive-intro>p:not(.eyebrow){font-size:13px}.archive-stats{gap:20px;justify-content:space-between}.archive-stats>span{font-size:10px;max-width:100px}.archive-stats strong{font-size:27px;display:block}.family-record{padding:23px}.viewer-stage{padding:14px;min-height:0}.viewer-stage img{width:100%;height:auto;max-height:none}.viewer-stage>a{width:100%}.viewer-bottom{flex-direction:column;gap:12px}.viewer-toolbar{gap:8px;flex-wrap:wrap}.viewer-toolbar select{font-size:16px;padding:12px 8px}.viewer-toolbar>button{width:42px;height:45px}#page-counter{font-size:10px;padding:0;flex-basis:100%;text-align:center}.family-group strong{font-size:27px}.family-group small{font-size:10px}.dialog-toolbar{gap:12px;flex-wrap:wrap;padding:12px 15px}.dialog-toolbar h2{font-size:14px;max-width:calc(100% - 60px);width:calc(100% - 60px);margin-right:0;order:0}.dialog-toolbar>button{order:1;margin-left:auto;width:38px;height:38px}.dialog-toolbar>label{order:2}.dialog-toolbar>input{order:3;width:180px;max-width:65%}.zoom-scroll{height:calc(100% - 112px)}.archive-close h2{font-size:34px}.family-library .section-heading>p br{display:none}}
@media(max-width:480px){.archive-intro h1{font-size:46px;line-height:1.05}.archive-intro{padding-bottom:22px}.archive-controls>label{font-size:12px;line-height:1.7}.archive-filter-list{gap:7px}.archive-filter-list button{font-size:11px;padding:9px 12px;min-height:38px}.family-record-grid{grid-template-columns:1fr;gap:16px}.family-record-heading h3{font-size:26px}.family-record{padding:25px 23px}.family-specs dt{font-size:11px}.family-specs dd,.family-features{font-size:13px}.model-tags>span{font-size:11px;padding:6px 8px}.family-group>summary{padding-block:23px}.family-group strong{font-size:27px}.family-group small{font-size:11px}.page-link-grid{grid-template-columns:1fr}.page-link-grid>a{font-size:12px;padding:14px}.viewer-heading h2{font-size:29px}.viewer-heading .eyebrow{font-size:9px}.page-browser{padding-bottom:45px}.viewer-stage{padding:9px}.viewer-bottom{font-size:11px}.family-library{padding-block:45px}.library-note{font-size:12px}.archive-close{padding-block:35px}.archive-close>div{flex-basis:100%}.catalog-dialog{width:100vw;max-width:100vw;height:100svh;max-height:100svh}.dialog-toolbar>input{width:170px}.zoom-scroll{padding:10px}.page-index>summary{font-size:13px}.page-index>summary>span{font-size:10px}.archive-stats{gap:15px}.archive-stats>span{max-width:95px;font-size:9px}}
