/* Self-hosted (SIL Open Font License): IBM Plex Mono, Sofia Sans, Source Serif 4 */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-mono-400-normal.79936b18df9f.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-mono-500-normal.b1c8a895f5fd.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sofia Sans Extra Condensed';font-style:normal;font-weight:800;font-display:swap;src:url("fonts/sofia-sans-extra-condensed-800-normal.1eeee1248c62.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Sofia Sans Semi Condensed';font-style:normal;font-weight:500 700;font-display:swap;src:url("fonts/sofia-sans-semi-condensed.8d330c8a3c0b.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/source-serif-4.e9192c2fe0a3.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Source Serif 4';font-style:italic;font-weight:400;font-display:swap;src:url("fonts/source-serif-4-400-italic.c43c9461f66c.woff2") format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* Fallbacks as wide as the web fonts, so a headline set before its font arrives breaks into the same lines and nothing
   moves when it swaps in (set in capitals, Arial Bold is 68% wider than the display face: Clarity CLS 0.12 on spec pages, 2026-10-16) */
@font-face{font-family:'Display Fallback';font-weight:800;size-adjust:59.5%;src:local('Arial Bold'),local('Arial-BoldMT'),local('Helvetica Neue Bold'),local('HelveticaNeue-Bold'),local('Roboto Bold'),local('Roboto-Bold')}
@font-face{font-family:'Label Fallback';font-weight:500 700;size-adjust:88%;src:local('Arial'),local('ArialMT'),local('Helvetica Neue'),local('HelveticaNeue'),local('Roboto'),local('Roboto-Regular')}

/* PlaneFile — an aviation reference: chart-paper ground, ink, one signal orange. */
:root{
  --paper:#F3F5F3;--panel:#FFFFFF;--ink:#121518;--ink-2:#2B3136;--muted:#56606A;--faint:#7E888F;
  --rule:#C9D0CC;--wash:#E1E6E2;--accent:#E8500C;--link:#1B5A9E;--link-hover:#0E3D70;
  --good:#1E7B45;--bad:#B42318;--note:#FFF1E6;
  --display:'Sofia Sans Extra Condensed','Display Fallback','Arial Narrow',sans-serif;
  --label:'Sofia Sans Semi Condensed','Label Fallback','Arial Narrow',sans-serif;
  --serif:'Source Serif 4',Georgia,serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
  --gutter:clamp(16px,4.4vw,64px);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#0F1214;--panel:#171B1E;--ink:#E9ECEA;--ink-2:#C9CFCC;--muted:#98A2A8;--faint:#6E777D;
  --rule:#2C3337;--wash:#242A2E;--accent:#FF6A2B;--link:#86B6EE;--link-hover:#B3D0F4;--good:#5CC389;--bad:#FF8A80;--note:#2A1D14;
  color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#0F1214;--panel:#171B1E;--ink:#E9ECEA;--ink-2:#C9CFCC;--muted:#98A2A8;--faint:#6E777D;
  --rule:#2C3337;--wash:#242A2E;--accent:#FF6A2B;--link:#86B6EE;--link-hover:#B3D0F4;--good:#5CC389;--bad:#FF8A80;--note:#2A1D14;
  color-scheme:dark}

*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.55 var(--serif);-webkit-font-smoothing:antialiased}
/* the page fills the window, so a short page keeps its footer at the bottom */
body{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
body > #content{flex:1 0 auto}
img{max-width:100%;display:block}
a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--link-hover)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[x-cloak]{display:none!important}
.mono{font-family:var(--mono)}
.gap{color:var(--faint)}
small{font-size:.8em;color:var(--muted)}

/* units: both are printed; the root class picks the leading one */
html:not(.units-metric) .u-metric{display:none}
html.units-metric .u-us{display:none}

/* header */
.site-head{display:flex;align-items:center;gap:clamp(14px,2vw,40px);padding:0 var(--gutter);min-height:64px;border-bottom:1px solid var(--rule);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand i{width:10px;height:26px;background:var(--accent)}
.brand b{font:800 30px/1 var(--display);letter-spacing:.05em}
.site-nav{display:flex;gap:clamp(14px,2vw,28px);font:600 15px/1 var(--label);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap}
.site-nav a{color:var(--ink);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.site-nav a[aria-current="page"],.site-nav a:hover{border-bottom-color:var(--ink)}
.theme-switch{margin-left:auto;height:38px;padding:0 12px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule);background:transparent;color:var(--ink);font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.theme-switch:hover{border-color:var(--ink)}
.theme-switch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;display:none}
.theme-switch[data-mode="auto"] .t-auto,.theme-switch:not([data-mode]) .t-auto,.theme-switch[data-mode="light"] .t-light,.theme-switch[data-mode="dark"] .t-dark{display:block}
.site-search{display:flex}
.site-search input{width:clamp(150px,14vw,320px);height:38px;padding:0 12px;border:1px solid var(--ink);border-radius:0;background:var(--panel);color:var(--ink);font:13px var(--mono)}

.page{padding:0 var(--gutter) 0}
.crumbs{padding-top:20px;font:12px/1.4 var(--mono);letter-spacing:.04em;color:var(--muted);display:flex;flex-wrap:wrap;gap:10px;text-transform:uppercase}

/* type */
.eyebrow{font:700 16px/1.2 var(--label);letter-spacing:.14em;text-transform:uppercase;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}
.eyebrow span{color:var(--muted);font-weight:500}
.display{margin:0;font:800 clamp(64px,10.4vw,150px)/.82 var(--display);text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance}
.display-2{margin:0;font:800 clamp(52px,6.6vw,96px)/.86 var(--display);text-transform:uppercase;text-wrap:balance}
.label{margin:0;font:500 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 24px;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:10px}
.section-head h2{margin:0;font:800 clamp(30px,3vw,40px)/1 var(--display);text-transform:uppercase}
.section-head span{font:12px var(--mono);color:var(--muted)}
.prose{display:flex;flex-direction:column;gap:18px}
.prose p{margin:0;max-width:38em;font-size:clamp(17px,1.4vw,20px);line-height:1.62}
.note{font:12px/1.6 var(--mono);color:var(--muted);margin:0}
.search-note{margin:0;padding:10px 14px;border:1.5px solid var(--ink);background:var(--panel);font:13px/1.5 var(--mono)}
.search-note a{font-weight:600}

/* title block + headline figures */
.title-block{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4.4vw,64px);align-items:end;padding:28px 0 40px}
.title-block > div{display:flex;flex-direction:column;gap:18px}
/* a details page's name on one line: as large as fits its column (--n = its length), never above the usual size;
   only a name too long even at the floor wraps */
.title-block > div:has(> .display--fit){container-type:inline-size}
.display--fit{font-size:min(clamp(64px,10.4vw,150px),max(var(--floor,34px),calc(100cqi / (var(--n) * var(--em,.4)))))}
@media (max-width:760px){.display--fit{--floor:24px}}
.figures{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--ink)}
.figures div{padding:16px 0 18px;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}
.figures dt{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.figures dd{margin:0;display:flex;align-items:baseline;gap:8px}
.figures .v{font:800 clamp(44px,4.2vw,60px)/.9 var(--display);font-variant-numeric:tabular-nums}
.figures .u{font:13px var(--mono);color:var(--ink-2)}

/* photo */
.hero{margin:0 calc(-1 * var(--gutter))}
.hero .frame{background:var(--wash);aspect-ratio:1440/780;overflow:hidden}
.hero .frame img{width:100%;height:100%;object-fit:cover}
.body-grid aside .plate + .plate{margin-top:4px}
.hero--contain .frame{aspect-ratio:16/9;max-height:72vh;width:100%}
.hero--contain .frame img{object-fit:contain}
.hero figcaption{padding:14px var(--gutter);display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;border-bottom:1px solid var(--rule)}
.credit{font:12px/1.5 var(--mono);color:var(--muted)}
.thumbs{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.thumbs button{padding:0;border:1px solid var(--rule);background:none;cursor:pointer}
.thumbs button[aria-current="true"]{border-color:var(--ink);outline:1px solid var(--ink)}
.thumbs img{width:108px;height:72px;object-fit:cover}
/* listing gallery: a photo the height of a laptop screen's lower half, not the whole viewport */
.sale-gallery{margin:0;display:grid;grid-template-columns:minmax(0,1fr) 472px;gap:8px clamp(32px,6vw,88px);align-items:start}
.sg-main{position:relative;height:min(58vh,560px);background:var(--wash);border:1px solid var(--rule)}
.sg-main img{width:100%;height:100%;object-fit:contain;cursor:zoom-in}
.sg-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:56px;border:1px solid var(--ink);background:var(--panel);color:var(--ink);font:28px/1 var(--label);cursor:pointer;opacity:.9}
.sg-arrow:hover{opacity:1;background:var(--ink);color:var(--paper)}
.sg-prev{left:0;border-left:0}.sg-next{right:0;border-right:0}
.sg-count{position:absolute;right:10px;bottom:10px;padding:4px 8px;border:1px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);cursor:pointer}
.sg-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start;max-height:min(58vh,560px);overflow-y:auto;scrollbar-width:thin}
.sg-thumbs button{padding:0;border:1px solid var(--rule);background:var(--wash);cursor:pointer;aspect-ratio:4/3}
.sg-thumbs button[aria-current="true"]{border-color:var(--ink);outline:2px solid var(--accent);outline-offset:-2px}
.sg-thumbs img{width:100%;height:100%;object-fit:cover}
.sale-gallery > .credit,.sale-gallery > figcaption{grid-column:1/-1}
.sg-single{grid-template-columns:minmax(0,1fr)}
.sg-slide{width:100%;height:100%}
.sg-slide picture{display:block;width:100%;height:100%}
.sg-slide img,.sg-main .sg-slide img{width:100%;height:100%;object-fit:contain}
.sg-main .sg-slide{cursor:zoom-in}
.sg-thumbs picture{display:block;width:100%;height:100%}
.sg-box{position:fixed;inset:0;z-index:50;background:rgba(10,12,14,.94);display:flex;align-items:center;justify-content:center;padding:48px 64px}
.sg-box img{width:100%;height:100%;object-fit:contain}
[data-contact]{cursor:pointer}
.sg-box > .sg-slide{cursor:zoom-out}
.sg-box .sg-arrow{border:1px solid var(--rule)}
.sg-box .sg-prev{left:12px}.sg-box .sg-next{right:12px}
.sg-close{position:absolute;top:10px;right:12px;width:40px;height:40px;border:1px solid var(--rule);background:var(--panel);color:var(--ink);font:26px/1 var(--label);cursor:pointer}
.sg-box .sg-count{cursor:default;right:auto;left:50%;transform:translateX(-50%);bottom:14px}
@media (max-width:1100px){
  .sale-gallery{grid-template-columns:minmax(0,1fr)}
  .sg-thumbs{display:flex;overflow-x:auto;max-height:none}
  .sg-thumbs button{flex:0 0 108px}
}
@media (max-width:760px){
  .sg-main{height:auto;aspect-ratio:4/3}
  .sg-main > img{position:absolute;inset:0}  /* the box stays 4:3 whatever the photo's shape: no shift when it loads */
  .sg-thumbs button{flex-basis:84px}
  .sg-box{padding:56px 8px}
}
.nophoto{display:flex;align-items:center;justify-content:center;border:1px dashed var(--faint);color:var(--muted);font:11px/1.4 var(--mono);text-align:center;text-transform:uppercase;letter-spacing:.08em}

/* body: text + data plate */
.body-grid{display:grid;grid-template-columns:minmax(0,1fr) 472px;gap:clamp(32px,6vw,88px);align-items:start;padding-top:56px}
.body-grid > div{display:flex;flex-direction:column;gap:64px}
.body-grid aside{display:flex;flex-direction:column;gap:24px}

table.data{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
table.data th{padding:8px 0;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left}
table.data td{padding:12px 0;border-top:1px solid var(--rule);vertical-align:middle}
table.data tr:last-child td{border-bottom:1px solid var(--rule)}
table.data .num{text-align:right;font:14px var(--mono);white-space:nowrap}
table.data .num small{display:none}
table.data tr.self td{background:var(--wash)}
table.data td:first-child,table.data th:first-child{padding-left:8px}
table.data td:last-child,table.data th:last-child{padding-right:8px}
.bar{height:10px;background:var(--wash);min-width:80px}
.bar i{display:block;height:100%;background:var(--accent)}

.plate{background:var(--panel);border:1.5px solid var(--ink)}
.plate-head{background:var(--ink);color:var(--paper);padding:12px 18px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.plate-head h2{margin:0;font:700 16px/1.2 var(--label);letter-spacing:.16em;text-transform:uppercase}
.plate-head span{font:11px var(--mono);letter-spacing:.06em;text-transform:uppercase;text-align:right}
.unit-switch{display:flex;padding:14px 18px 4px}
.unit-switch button{height:34px;padding:0 16px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.unit-switch button + button{border-left:0}
.own-controls{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:flex-end;margin-bottom:20px}
.own-controls .unit-switch{padding:0;flex-wrap:wrap}
.own-controls label{display:flex;flex-direction:column;gap:6px;font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.own-controls .field{width:180px}
.unit-switch button[aria-pressed="true"]{background:var(--ink);color:var(--panel)}
.plate-group{padding:10px 18px 6px}
.plate-group h3{margin:0 0 4px;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.plate dl{margin:0}
.plate-row{display:flex;align-items:baseline;gap:12px;padding:7px 0;border-top:1px dotted var(--rule)}
.plate-row dt{flex-grow:1;font:500 16px/1.3 var(--label);color:var(--ink-2)}
.plate-row dd{margin:0;display:flex;align-items:baseline;gap:8px;text-align:right;font:500 15px var(--mono);font-variant-numeric:tabular-nums}
.plate-row dd small{font:12px var(--mono);color:var(--muted);min-width:5.2em;text-align:right}
.plate-row sup{font:10px var(--mono)}
.plate-sources{margin-top:8px;padding:14px 18px 16px;border-top:1.5px solid var(--ink);font:11px/1.7 var(--mono);color:var(--muted)}
.plate-sources ol{margin:0;padding-left:1.6em}

.ident{margin:0;border-top:2px solid var(--ink)}
.ident div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--rule)}
.ident dt{font:16px var(--label);color:var(--ink-2)}
.ident dd{margin:0;font:15px var(--mono);text-align:right}

/* cards (similar aircraft, photo grid) */
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}
@media (max-width:1280px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}}
@media (max-width:480px){.cards{grid-template-columns:minmax(0,1fr)}}
/* a search's matches on the other side (catalogue or market): one row of cards at most, however many fit */
.also{display:flex;flex-direction:column;gap:20px;margin-bottom:28px}
.cards.one-row>:nth-child(n+5){display:none}
@media (max-width:1280px){.cards.one-row>:nth-child(n+4){display:none}}
@media (max-width:900px){.cards.one-row>:nth-child(n+3){display:none}}
.card{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink)}
.card img,.card .nophoto{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.card picture{display:block}
.card .maker{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.card .model{font:800 32px/.95 var(--display);text-transform:uppercase}
.card .facts{font:12px var(--mono);color:var(--ink-2)}
#improve-panel:empty{display:none}
#improve-panel{padding-top:10px}
#improve-panel .form{gap:14px;max-width:none}
.improve-done{margin:0;padding:12px 14px;background:var(--wash);font:14px/1.45 var(--serif)}
.sl-ask{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:16px;align-items:end;padding-top:28px}
.sl-ask .fld{display:flex;flex-direction:column;gap:6px}
.sl-ask .check,.sl-ask .sl-contact{grid-column:1/-1}
.sl-ask .sl-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:760px){.sl-ask .sl-contact{grid-template-columns:minmax(0,1fr)}}
.sl-ask .legend{font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sl-ask select{width:100%;min-height:42px;border:1.5px solid var(--ink);border-radius:0;background:var(--panel);color:var(--ink);padding:8px 10px;font:14px var(--mono)}
.sl-ask .btn{min-height:42px}
@media (max-width:760px){.sl-ask{grid-template-columns:minmax(0,1fr)}}
.sl-card .model{color:var(--ink);text-decoration:none}
.sl-price{font:600 15px/1.3 var(--mono)}.sl-price small{font-weight:400;color:var(--muted)}
.sl-figs{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;font:12px var(--mono);color:var(--ink-2)}
.sl-figs div{display:flex;gap:5px}.sl-figs dt{color:var(--muted)}.sl-figs dd{margin:0}
.sl-sale{font:12px var(--mono);color:var(--link)}
.card:hover .model{text-decoration:underline;text-decoration-thickness:2px}
.card-desc{font:15px/1.45 var(--serif);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sale-card{display:flex;flex-direction:column;gap:8px}
.sale-card a{color:inherit;text-decoration:none}
.sale-card .model:hover{text-decoration:underline;text-decoration-thickness:2px}
.sale-photo{position:relative;display:block}
.sale-photo .nophoto{width:100%;aspect-ratio:3/2;border:0;background:var(--wash);font:800 clamp(24px,2.4vw,34px)/1 var(--display);text-transform:uppercase;letter-spacing:0;color:var(--rule);padding:0 12px;text-align:center}
.sale-photo-note{position:absolute;left:0;bottom:0;padding:3px 7px;background:rgba(8,10,12,.72);color:#fff;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase}
.sale-photo > img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.enquiry{padding:14px 18px 18px;border-top:1px solid var(--rule)}
.enquiry .plate-group{padding:0}
.enquiry-open .btn{width:100%;justify-content:center}
.enquiry-form{display:flex;flex-direction:column;gap:6px}
.enquiry-form .legend{margin-top:8px;padding-bottom:2px}
.enquiry-form textarea.field{height:auto;padding:10px;font:15px/1.45 var(--serif);resize:vertical}
.enquiry-form .field[aria-invalid="true"]{border-color:var(--bad)}
.enquiry-form .btn{margin-top:12px;justify-content:center}
.enquiry-form .check{display:flex;gap:10px;align-items:center;margin-top:10px;font:14px var(--label)}
.enquiry-error{margin:0;font:12px/1.4 var(--mono);color:var(--bad)}
.enquiry-done{margin:0;font:15px/1.5 var(--serif)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.sale-stats{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px 32px}
.sale-stats div{display:flex;gap:10px;align-items:baseline}
.sale-stats dt{font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sale-stats dd{margin:0;font:500 15px var(--mono)}
.type-links{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:0 28px;border-top:1px solid var(--rule)}
.type-links li{padding:9px 0;border-bottom:1px dotted var(--rule);display:flex;justify-content:space-between;gap:12px;font:16px var(--label)}
.type-links small{font:12px var(--mono);color:var(--muted)}
.listing-admin{display:flex;align-items:center;gap:12px;margin:16px 0 0;padding:10px 14px;border:1.5px dashed var(--accent);font:13px var(--mono)}
.listing-admin .btn{height:32px;padding:0 12px}
.listing-admin--card{margin:4px 0 0;padding:0;border:0}
.sale-card.is-hidden{opacity:.35}
.sale-rating{font:600 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--good)}
.figures .sale-rating{display:block;margin-top:6px}
.sale-rating--rough{color:var(--muted)}
/* deals of the week */
.deal{display:flex;flex-direction:column;gap:8px}
.deal-note{margin:0;padding-top:8px;border-top:1px dotted var(--rule);font:13px/1.45 var(--mono);color:var(--ink-2)}
.news-draft.deal-review{display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:24px;max-width:1100px}
.deal-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.deal-figs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 20px;margin:4px 0 8px}
.deal-figs dt{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.deal-figs dd{margin:2px 0 0;font:500 16px var(--label)}
@media (max-width:700px){.news-draft.deal-review{grid-template-columns:1fr}}
/* accounts and members' forms */
.site-account{display:flex;align-items:center;gap:14px;font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.site-account a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;min-height:34px}
.site-account .btn{height:34px;padding:0 12px}
.flash{display:flex;flex-direction:column;gap:6px;margin:20px 0 0}
.flash p{margin:0;padding:10px 14px;border:1.5px solid var(--ink);background:var(--panel);font:13px var(--mono)}
.flash .flash-error,.flash .flash-warning{border-color:var(--bad)}
.form{display:flex;flex-direction:column;gap:18px;max-width:640px}
.form .fld{display:flex;flex-direction:column;gap:6px}
.form label.legend{font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.form input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),.form select,.form textarea{width:100%;min-height:42px;border:1.5px solid var(--ink);border-radius:0;background:var(--panel);color:var(--ink);padding:8px 10px;font:14px var(--mono)}
.form textarea{font:16px/1.5 var(--serif);resize:vertical}
.form input[type=file]{font:13px var(--mono)}
input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px;accent-color:var(--ink)}
.form .help{margin:0;font:12px/1.45 var(--mono);color:var(--muted)}
.form .help ul{margin:0;padding-left:16px}
.form .form-error{margin:0;font:12px/1.4 var(--mono);color:var(--bad)}
.form .check{display:flex;gap:10px;align-items:center;font:14px var(--label)}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}
.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.auth-page{max-width:calc(460px + 2 * var(--gutter));margin:0 auto;padding-top:clamp(32px,6vw,72px);display:flex;flex-direction:column;gap:18px}
.auth-page h1{margin:0;font:800 clamp(40px,5vw,64px)/.9 var(--display);text-transform:uppercase}
.auth-page h2{margin:12px 0 0;font:800 26px/1 var(--display);text-transform:uppercase}
.auth-page p{margin:0;font:16px/1.5 var(--serif)}
.auth-page form{display:flex;flex-direction:column;gap:14px}
.auth-page .btn{justify-content:center}
.auth-page ul.providers{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.pw-field{position:relative}
.form .pw-field input{padding-right:46px}
.pw-field input::-ms-reveal{display:none}
.pw-eye{position:absolute;top:0;right:0;bottom:0;width:44px;display:grid;place-items:center;border:0;background:none;color:var(--muted);cursor:pointer}
.pw-eye:hover,.pw-eye[aria-pressed=true]{color:var(--ink)}
.pw-eye:focus-visible{outline:2px solid var(--accent);outline-offset:-5px}
.pw-rules{margin:2px 0 0;padding:0;list-style:none;display:grid;gap:5px}
.pw-rules li,.form .pw-match{display:flex;gap:8px;align-items:center;margin:0;font:12px/1.45 var(--mono);color:var(--muted)}
.pw-mark{flex:none;width:14px;height:14px;border:1.5px solid var(--faint);border-radius:50%;display:grid;place-items:center}
.pw-rules li.ok,.form .pw-match.ok{color:var(--good)}
.pw-rules li.ok .pw-mark,.pw-match.ok .pw-mark{border-color:var(--good);background:var(--good)}
.pw-rules li.ok .pw-mark::after,.pw-match.ok .pw-mark::after{content:"";width:6px;height:3px;border:solid var(--panel);border-width:0 0 1.6px 1.6px;transform:translateY(-1px) rotate(-45deg)}
.form .pw-match.no{color:var(--bad)}
.pw-match.no .pw-mark{border-color:var(--bad)}
.pw-match.no .pw-mark::after{content:"";width:6px;height:6px;background:linear-gradient(45deg,transparent 42%,var(--bad) 42% 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,var(--bad) 42% 58%,transparent 58%)}
.pw-match[hidden]{display:none}
.auth-or{display:flex;align-items:center;gap:12px;font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.auth-or::before,.auth-or::after{content:"";flex:1;border-top:1px solid var(--rule)}
.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%}
.member-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(28px,5vw,72px);align-items:start;padding-top:36px}
.member-list{display:flex;flex-direction:column;gap:0;border-top:2px solid var(--ink)}
.member-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule)}
.member-row img,.member-row .nophoto{width:120px;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.member-row b{display:block;font:800 22px/1 var(--display);text-transform:uppercase}
.member-row .state{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.member-row .state.live{color:var(--good)}
.member-row form{display:inline}
.member-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.member-actions .btn{height:32px;padding:0 10px}
.photo-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.photo-pick figure{margin:0;display:flex;flex-direction:column;gap:4px;font:11px var(--mono)}
.photo-pick img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--wash)}
@media (max-width:900px){.member-grid{grid-template-columns:minmax(0,1fr)}.member-row{grid-template-columns:84px minmax(0,1fr)}.member-row img,.member-row .nophoto{width:84px}.member-actions{grid-column:1/-1;justify-content:flex-start}}
.sheet{display:flex;flex-direction:column;gap:36px}
.sheet .section-head{margin-bottom:-12px}
.sheet-group{display:flex;flex-direction:column;gap:10px}
.sheet-group .ident dd{max-width:60%;overflow-wrap:anywhere}
.sheet-sub{margin:8px 0 0;font:600 13px/1.3 var(--label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sheet-note{margin:0;max-width:44em;font:16px/1.55 var(--serif);color:var(--ink-2)}
.sale-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:0 28px;border-top:1px solid var(--rule)}
.sale-list li{padding:8px 0 8px 16px;border-bottom:1px dotted var(--rule);font:16px/1.4 var(--serif);position:relative}
.sale-list li::before{content:"";position:absolute;left:0;top:16px;width:6px;height:6px;background:var(--accent)}
.sale-seller{font:14px/1.4 var(--label);color:var(--ink-2)}
.sale-seller a{color:inherit;text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px}
.sale-price{font:800 26px/1 var(--display)}
.sale-price small{font:12px var(--mono);color:var(--muted)}
.sale-links{display:flex;flex-wrap:wrap;gap:4px 14px;font:12px var(--mono)}
.sale-links a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.card-foot{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* listing */
.news-draft .news-photo img{max-width:480px}
/* news: a front page (lead story, then the latest in a grid) and article pages with a reading column and a side rail */
.nw-kicker{margin:0;font:700 13px/1.2 var(--label);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.nw-meta{margin:0;font:12px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.nw-lead{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,3.4vw,56px);align-items:center;padding:clamp(28px,4vw,48px) 0;border-bottom:1px solid var(--rule)}
.nw-lead--text{grid-template-columns:minmax(0,1fr);max-width:900px}
.nw-lead-img img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;background:var(--wash)}
.nw-lead-text{display:flex;flex-direction:column;gap:16px}
.nw-lead h2{margin:0;font:800 clamp(40px,4.6vw,72px)/.9 var(--display);text-transform:uppercase;text-wrap:balance}
.nw-lead h2 a,.nw-card h3 a,.nw-latest a{color:var(--ink);text-decoration:none}
.nw-lead h2 a:hover,.nw-card h3 a:hover,.nw-latest a:hover{text-decoration:underline;text-decoration-thickness:2px}
.nw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;padding-bottom:16px}
.nw-card{display:flex;flex-direction:column;gap:10px}
.nw-card--text{border-top:2px solid var(--ink);padding-top:14px}
.nw-card-img img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.nw-card h3{margin:0;font:800 clamp(26px,2.2vw,34px)/.95 var(--display);text-transform:uppercase;text-wrap:balance}
.nw-card-dek{margin:0;font:16px/1.45 var(--serif);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-article{padding-bottom:clamp(48px,6vw,80px)}
.nw-head{display:flex;flex-direction:column;gap:16px;max-width:1000px;padding-bottom:clamp(24px,3vw,36px)}
.nw-head .crumbs{padding-bottom:8px}
.nw-title{margin:0;font:800 clamp(44px,5.6vw,88px)/.88 var(--display);text-transform:uppercase;text-wrap:balance}
.nw-dek{margin:0;max-width:40em;font:clamp(19px,1.7vw,24px)/1.45 var(--serif);color:var(--ink-2)}
.nw-hero{margin:0 0 clamp(28px,3.6vw,48px)}
.nw-hero img{width:100%;height:auto;max-height:78vh;aspect-ratio:16/9;object-fit:cover;background:var(--wash)}
.nw-hero figcaption{padding-top:10px;border-bottom:1px solid var(--rule);padding-bottom:12px}
.nw-hero figcaption a{color:inherit}
.nw-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:clamp(32px,5vw,88px);align-items:start}
.nw-prose > p:first-child::first-letter{float:left;margin:6px 10px 0 0;font:800 4.6em/.8 var(--display);color:var(--accent)}
.prose p.nw-sources{border-top:1px solid var(--rule);padding-top:14px;max-width:38em;font:12px/1.6 var(--mono)}
.nw-aside{display:flex;flex-direction:column;gap:36px;position:sticky;top:24px}
.nw-aside-head{margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--ink);font:700 14px/1.2 var(--label);letter-spacing:.14em;text-transform:uppercase}
.nw-latest{list-style:none;margin:0;padding:0;counter-reset:nw}
.nw-latest li{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px dotted var(--rule)}
.nw-latest a{font:800 22px/1 var(--display);text-transform:uppercase}
.nw-latest time{font:11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.nw-all{display:inline-block;margin-top:14px;padding:6px 0;font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase}
@media (max-width:1000px){.nw-lead{grid-template-columns:minmax(0,1fr)}.nw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nw-body{grid-template-columns:minmax(0,1fr)}.nw-aside{position:static}}
@media (max-width:600px){.nw-grid{grid-template-columns:minmax(0,1fr);gap:32px}.nw-hero{margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter))}
  .nw-hero figcaption{padding-left:var(--gutter);padding-right:var(--gutter)}}
.news-date{margin:0;font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.news-dek,.news-lead{margin:0;font:18px/1.5 var(--serif);color:var(--ink-2)}
.news-lead{font-size:21px}
.news-photo{margin:8px 0}.news-photo img{width:100%;height:auto}.news-photo figcaption{font:12px var(--mono);color:var(--muted);margin-top:6px}
.news-draft{padding:24px 0;border-bottom:2px solid var(--ink);display:flex;flex-direction:column;gap:10px;max-width:820px}
.news-draft h2{margin:0;font:800 28px/1.05 var(--display);text-transform:uppercase}
.review-states{display:flex;gap:16px;flex-wrap:wrap;padding:16px 0;font:13px var(--mono)}
.review-states a[aria-current]{font-weight:700;color:var(--ink)}
.maker-section{display:flex;flex-direction:column;gap:20px;padding:40px 0 16px}
.maker-section + .maker-section{margin-top:40px;border-top:2px solid var(--ink)}
.review-switch{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 10px}
.review-switch a{padding:7px 12px;border:1.5px solid var(--ink);font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.review-switch a[aria-current]{background:var(--ink);color:var(--panel)}
.review-switch small{opacity:.7;margin-left:6px}
.list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:28px 0;border-bottom:2px solid var(--ink)}
.list-head > div{display:flex;flex-direction:column;gap:10px}
.count{margin:0;font:14px/1.5 var(--mono);text-align:right}
.lh-side{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
/* fingers: small links get a taller tap area without moving anything */
.card .maker a,.sale-card .maker a,.form a{display:inline-block;padding:6px 0;margin:-6px 0}
.count b{display:block;font:800 44px/1 var(--display)}
.list-grid{display:grid;grid-template-columns:264px minmax(0,1fr);gap:48px}
.filters{padding-top:24px;display:flex;flex-direction:column;gap:26px;font:16px var(--label)}
.filters fieldset{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}
.filters legend,.filters .legend,.enquiry-form .legend{padding:0 0 8px;font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.filters .opt{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none}
.filters .opt small{margin-left:auto;font:12px var(--mono)}
.filters .opt[aria-current="true"]{font-weight:700}
.filters .opt[aria-current="true"]::before{content:"";width:8px;height:8px;background:var(--accent)}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:1.5px solid var(--ink)}
.seg a{height:40px;display:flex;align-items:center;justify-content:center;background:var(--panel);color:var(--ink);text-decoration:none;font:13px var(--mono)}
.seg a + a{border-left:1px solid var(--rule)}
.seg a[aria-current="true"]{background:var(--ink);color:var(--panel)}
.field{height:40px;width:100%;border:1.5px solid var(--ink);border-radius:0;background:var(--panel);color:var(--ink);padding:0 10px;font:13px var(--mono)}
.range{display:flex;gap:8px;align-items:center}
.list-main{padding-top:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.toolbar .field[type=search]{flex:1 1 220px;width:auto}
.toolbar .field{width:auto}
.toolbar label{font:12px var(--mono);color:var(--muted);text-transform:uppercase}
.btn{height:40px;padding:0 20px;display:inline-flex;align-items:center;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.btn[aria-pressed="true"],.btn.on{background:var(--ink);color:var(--panel)}
.table-wrap{overflow-x:auto}
table.list{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
/* for-sale market: figure plates, tables of types and years, questions */
.mk-plates{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px;align-items:start}
.mk-plates .plate-row dt small{font:11px var(--mono);color:var(--muted)}
.mk-table-wrap{overflow-x:auto}
table.mk-table{max-width:960px}
table.mk-table th[scope="row"] a{display:block;margin:-10px -8px;padding:10px 8px}  /* the whole cell is the tap target */
table.mk-table caption{text-align:left;padding:8px 0;font:500 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
table.mk-table th:first-child,table.mk-table th[scope="row"]{text-align:left}
table.mk-table thead th:not(:first-child){text-align:right}
table.mk-table th[scope="row"]{padding:10px 8px;border-bottom:1px solid var(--rule);font:500 16px var(--label);letter-spacing:0;text-transform:none;color:var(--ink);white-space:normal}
.mk-faq{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:28px 48px}
.mk-faq h3{margin:0 0 6px;font:700 19px/1.25 var(--label)}
.mk-faq p{margin:0;font-size:17px;line-height:1.55;color:var(--ink-2);max-width:38em}
table.list thead tr{border-bottom:1.5px solid var(--ink)}
table.list th{padding:10px 8px;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:right;white-space:nowrap}
table.list th:nth-child(2){text-align:left}
table.list th a{color:inherit;text-decoration:none}
table.list th a[aria-current="true"]{color:var(--ink)}
table.list td{padding:10px 8px;border-bottom:1px solid var(--rule);text-align:right;font:14px var(--mono);white-space:nowrap}
table.list td small{display:none}
table.list td.name{text-align:left;white-space:normal}
table.list td.photo{width:136px;padding-left:0}
table.list td.photo img,table.list td.photo .nophoto{width:120px;height:80px;object-fit:cover}
table.list .name a{display:flex;flex-direction:column;gap:2px;color:var(--ink);text-decoration:none}
table.list .name span{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
table.list .name b{font:800 30px/1 var(--display);text-transform:uppercase}
table.list .name a:hover b{text-decoration:underline;text-decoration-thickness:2px}
table.list td.big{font:800 28px var(--display)}
.pager{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding-top:20px;margin-top:12px;border-top:1px solid var(--rule)}
.pager-links{display:flex;flex-wrap:wrap;gap:6px}
.pg{min-width:40px;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
a.pg:hover{background:var(--ink);color:var(--paper)}
.pg[aria-current="page"]{background:var(--ink);color:var(--paper)}
.pg[aria-disabled="true"]{border-color:var(--rule);color:var(--faint)}
.pg-gap{border-color:transparent;background:none;min-width:24px;padding:0}
@media (max-width:760px){.pg-word{display:none}.pager{justify-content:center}.pg{min-width:36px;height:36px;padding:0 8px}}

.index{columns:3 240px;padding:0;margin:24px 0;list-style:none;font:17px var(--label)}
.index li{break-inside:avoid;padding:5px 0;border-bottom:1px dotted var(--rule);display:flex;justify-content:space-between;gap:12px}
.index small{font:12px var(--mono)}

/* footer */
.foot-yt{display:inline-flex;align-items:center;gap:5px;vertical-align:middle}
.foot-yt svg{flex:none}
.site-foot{margin-top:96px;padding:28px var(--gutter);border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;font:12px/1.6 var(--mono);color:var(--muted)}

/* owner review */
.review-bar{position:sticky;top:0;z-index:5;margin:16px 0 0;padding:12px 16px;background:var(--note);border:1.5px solid var(--accent);display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;font:14px var(--mono)}
.review-bar form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.review-bar input{height:34px;border:1px solid var(--ink);padding:0 8px;font:13px var(--mono);background:var(--panel);color:var(--ink)}
.review-bar button{height:34px;padding:0 12px;border:1.5px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);cursor:pointer}
.review-bar button[value="approve"]{background:var(--ink);color:var(--panel)}
.good{color:var(--good)} .bad{color:var(--bad)}
.review-photo{font:12px var(--mono)}
.review-photo button{height:28px;padding:0 10px;border:1px solid var(--ink);background:var(--panel);color:var(--ink);font:12px var(--mono);cursor:pointer}

.filters-toggle{display:none}
@media (max-width:1100px){
  /* lists on phones and tablets: results first, the filters behind a button */
  .filters-toggle{display:inline-flex;justify-self:start;margin:18px 0 6px}
  .filters:not(.is-open){display:none}
  .filters .opt{padding:6px 0}
  .body-grid{grid-template-columns:minmax(0,1fr)}
  .list-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
}
@media (max-width:760px){
  body{font-size:17px}
  .title-block{grid-template-columns:minmax(0,1fr)}
  .site-search{width:100%;padding-bottom:12px}
  .site-search input{width:100%}
  .thumbs{margin-left:0}
  .thumbs img{width:84px;height:56px}
  .body-grid{padding-top:32px}
  .body-grid > div{gap:44px}
  table.list .opt-col{display:none}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* home */
.preview-flag{margin:16px 0 0;padding:10px 14px;background:var(--note);border:1.5px solid var(--accent);font:13px var(--mono)}
.h-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,64px);align-items:center;padding:clamp(32px,5vw,72px) 0 clamp(28px,4vw,56px)}
.h-hero--plain{grid-template-columns:minmax(0,1fr);max-width:760px}
.h-intro{display:flex;flex-direction:column;gap:20px}
.h-title{margin:0;font:800 clamp(52px,6.4vw,104px)/.86 var(--display);text-transform:uppercase;text-wrap:balance}
.h-title span{display:block;color:var(--accent)}
.lead-line{margin:0;max-width:32em;font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:var(--ink-2)}
.big-search{display:flex;max-width:560px}
.big-search input{flex:1 1 auto;min-width:0;height:56px;padding:0 16px;border:1.5px solid var(--ink);border-right:0;border-radius:0;background:var(--panel);color:var(--ink);font:15px var(--mono)}
.big-search .btn{height:56px}
.h-doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:560px;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule)}
.h-doors a{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px 0;color:var(--ink);text-decoration:none}
.h-doors a + a{padding-left:16px;border-left:1px solid var(--rule)}
.h-doors b{font:800 clamp(30px,2.6vw,40px)/1 var(--display);text-transform:uppercase}
.h-doors span{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.h-doors a:hover b{color:var(--accent)}
.h-doors a{position:relative}
.h-doors a::after{content:"";position:absolute;top:16px;right:12px;width:14px;height:14px;background:var(--muted);transition:transform .15s,background .15s;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='square'%3E%3Cpath d='M3 11 11 3M5 3h6v6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='square'%3E%3Cpath d='M3 11 11 3M5 3h6v6'/%3E%3C/svg%3E") center/contain no-repeat}
.h-doors a:hover::after{background:var(--accent);transform:translate(2px,-2px)}
.h-popular{margin:0;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;font:15px var(--label)}
.h-popular span{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.h-popular a{color:var(--ink);text-decoration-color:var(--rule)}
.h-popular a:hover{text-decoration-color:var(--accent)}

.h-feature{margin:0;background:var(--panel);border:1.5px solid var(--ink);display:flex;flex-direction:column}
.h-feature-img{display:block;aspect-ratio:16/9;max-height:min(54vh,560px);width:100%;overflow:hidden;background:var(--wash)}
.h-feature-img picture,.h-feature-img img{display:block;width:100%;height:100%;object-fit:cover}
.h-feature figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 24px;align-items:end;padding:16px 18px;border-top:1.5px solid var(--ink)}
.h-feature-name{display:flex;flex-direction:column;gap:6px;min-width:0}
.h-feature-name a{font:800 clamp(34px,3.2vw,48px)/.9 var(--display);text-transform:uppercase;color:var(--ink);text-decoration:none}
.h-feature-name a:hover{text-decoration:underline;text-decoration-thickness:2px}
.h-feature-figs{margin:0;display:flex;gap:0;border-left:1px solid var(--rule)}
.h-feature-figs div{padding:0 16px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}
.h-feature-figs dt{font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.h-feature-figs dd{margin:0;font:800 28px/1 var(--display);white-space:nowrap}
.h-feature-figs small{font:11px var(--mono);color:var(--muted)}
.h-feature .credit{grid-column:1/-1;margin:0;font-size:11px}
.h-feature .credit a{color:inherit}

.h-figures{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-bottom:1px solid var(--rule)}
.h-figures div{padding:14px 0 16px;display:flex;flex-direction:column;gap:6px}
.h-figures div + div{padding-left:20px;border-left:1px solid var(--rule)}
.h-figures dt{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.h-figures dd{margin:0;font:800 clamp(36px,3.6vw,52px)/.9 var(--display);font-variant-numeric:tabular-nums}

.home-section{padding-top:clamp(48px,6vw,80px);display:flex;flex-direction:column;gap:22px}
.home-section .section-head a{font:12px var(--mono);display:inline-block;padding:6px 0;margin:-6px 0}

.tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:20px 24px}
.tiles li:first-child{grid-row:span 2}
.tiles li:first-child .tile{aspect-ratio:auto;flex:1 1 auto;min-height:100%}
.tiles li:first-child .tile-text b{font-size:clamp(44px,4.6vw,72px)}
.tiles li:first-child .tile-blurb{font-size:17px}
.tiles li{display:flex;flex-direction:column;gap:6px}
.tile{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--ink);color:#fff;text-decoration:none}
.tile picture,.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.tile:hover img{transform:scale(1.03)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,10,12,.92) 0%,rgba(8,10,12,.7) 38%,rgba(8,10,12,.15) 72%,rgba(8,10,12,0) 100%)}
.tile-text{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.tile-text b{font:800 clamp(34px,3vw,44px)/.9 var(--display);text-transform:uppercase}
.tile-count{align-self:flex-start;padding:3px 7px;background:var(--accent);color:#120A05;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.tile-blurb{font:15px/1.4 var(--serif);color:rgba(255,255,255,.86);max-width:28em}
.tile--plain{background:var(--ink);color:var(--paper)}
.tile--plain::after{display:none}
.tile--plain .tile-text{top:0;justify-content:flex-end;border-left:8px solid var(--accent)}

.tile--plain .tile-blurb{color:var(--paper);opacity:.8}
.tile:hover b{text-decoration:underline;text-decoration-thickness:2px}
.tile-credit{font:11px/1.4 var(--mono);color:var(--faint)}

.leaders{list-style:none;margin:0;padding:0;border-top:1.5px solid var(--ink);counter-reset:none}
.leaders a{display:grid;grid-template-columns:40px 96px minmax(0,1.3fr) minmax(0,2fr) 90px;gap:18px;align-items:center;padding:10px 0;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none}
.leaders a:hover{background:var(--wash)}
.leaders img,.leaders .nophoto{width:96px;height:64px;object-fit:cover;background:var(--wash)}
.leaders picture{display:block}
.ld-rank{font:500 14px var(--mono);color:var(--muted);text-align:right}
.ld-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.ld-name span{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ld-name b{font:800 28px/1 var(--display);text-transform:uppercase}
.leaders a:hover .ld-name b{text-decoration:underline;text-decoration-thickness:2px}
.ld-bar{height:10px;background:var(--wash)}
.leaders a:hover .ld-bar{background:var(--paper)}
.ld-bar i{display:block;height:100%;background:var(--accent)}
.ld-n{font:800 30px/1 var(--display);text-align:right;font-variant-numeric:tabular-nums}

.h-indexes{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.h-indexes > div{display:flex;flex-direction:column}
.index--narrow{columns:1}
/* Aircraft by country: each country's three most flown aircraft beside its name */
.cx-list{margin-top:8px}
.cx-row{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,3fr);gap:28px;padding:26px 0;border-bottom:1px solid var(--rule)}
.cx-head{display:flex;flex-direction:column;gap:8px}
.cx-head h2{margin:0;font:800 clamp(26px,3vw,38px)/.95 var(--display);text-transform:uppercase}
.cx-head h2 a{color:var(--ink);text-decoration:none}
.cx-head h2 a:hover{color:var(--link-hover)}
.cx-all{font:12px var(--mono);letter-spacing:.06em;color:var(--link);text-decoration:none}
.cx-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cx-tile{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink)}
.cx-tile img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.cx-tile picture{display:block}
.cx-tile .maker{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cx-tile .model{font:800 18px/1 var(--display);text-transform:uppercase}
.cx-tile:hover .model{color:var(--link-hover)}
@media (max-width:760px){.cx-row{grid-template-columns:minmax(0,1fr);gap:14px;padding:20px 0}
  .cx-head{flex-direction:row;align-items:baseline;justify-content:space-between}
  .cx-tiles{gap:10px}.cx-tile .model{font-size:14px}}

.h-method ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;counter-reset:step}
.h-method li{counter-increment:step;display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--rule)}
.h-method li::before{content:counter(step,decimal-leading-zero);font:500 12px var(--mono);color:var(--accent);letter-spacing:.1em}
.h-method b{font:700 20px/1.2 var(--label);text-transform:uppercase;letter-spacing:.06em}
.h-method p{margin:0;font-size:16px;line-height:1.55;color:var(--ink-2)}

@media (max-width:1000px){
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tiles li:first-child{grid-row:auto;grid-column:1/-1}
  .tiles li:first-child .tile{aspect-ratio:16/9;min-height:0}
  .h-hero{grid-template-columns:minmax(0,1fr)}
  .h-indexes{grid-template-columns:minmax(0,1fr)}
  .leaders a{grid-template-columns:32px 72px minmax(0,1fr) 72px}
  .leaders img,.leaders .nophoto{width:72px;height:48px}
  .ld-bar{display:none}
}
@media (max-width:760px){
  /* phones: brand, account and theme on one row; sections on one swipeable row; then search */
  .site-head{gap:10px 12px;padding-top:10px}
  .site-head .site-account{order:1;margin-left:auto;gap:12px}
  .site-head .theme-switch{order:1;margin-left:0;height:34px;padding:0 9px}
  .site-head .theme-switch .t-label{display:none}
  .site-head .site-nav{order:2;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:14px;font-size:12px;letter-spacing:.05em;scrollbar-width:none}
  .site-head .site-nav::-webkit-scrollbar{display:none}
  .site-head .site-nav a{white-space:nowrap;padding:8px 0}
  .site-head .site-search{order:3}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}
  .card .model{font-size:24px}
  .card .facts{font-size:11px}
  .card-desc{font-size:14px}
  .card-foot{font-size:11px;letter-spacing:.04em}
  /* the heading's count and buttons sit under it, on the left, once the head stacks */
  .list-head .count{text-align:left}
  .lh-side{align-items:flex-start}

  .big-search input{font-size:14px;padding:0 12px}
  .h-feature-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-left:0}
  .h-feature-figs div{padding:0 8px}
  .h-feature-figs div:first-child{padding-left:0}
  .h-feature-figs dd{font-size:22px}
  .h-feature-figs dt{letter-spacing:.06em}
  .h-feature-figs small{display:block;margin-top:2px}
  .tiles{grid-template-columns:minmax(0,1fr)}
  .tiles li:first-child .tile{aspect-ratio:4/3}
  .h-figures{grid-template-columns:repeat(2,minmax(0,1fr))}
  .h-figures div:nth-child(3){padding-left:0;border-left:0}
  .h-feature figcaption{grid-template-columns:minmax(0,1fr)}
  .h-method ol{grid-template-columns:minmax(0,1fr)}
  .leaders a{grid-template-columns:24px 64px minmax(0,1fr) auto;gap:12px}
  .leaders img,.leaders .nophoto{width:64px;height:44px}
  .ld-name b{font-size:22px}
  .ld-n{font-size:22px}
}

/* owner review queue: rows expand in place */
.rv-list{display:flex;flex-direction:column;margin-top:16px;border-top:1.5px solid var(--ink)}
.rv{border-bottom:1px solid var(--rule)}
.rv summary{list-style:none;display:grid;grid-template-columns:96px minmax(0,1.5fr) minmax(0,.8fr) minmax(0,.6fr) minmax(0,1fr) 24px;gap:16px;align-items:center;padding:10px 0;cursor:pointer}
.rv summary::-webkit-details-marker{display:none}
.rv summary img,.rv summary .nophoto{width:96px;height:64px;object-fit:cover}
.rv-name{display:flex;flex-direction:column;gap:2px}
.rv-name span{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rv-name b{font:800 26px/1 var(--display);text-transform:uppercase}
.rv-meta{font:13px/1.4 var(--mono)}
.rv-summary{display:contents}
.rv-kind{font:11px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rv-missing{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rv-meta{white-space:nowrap}
.rv-badge{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rv-badge--published{color:var(--good)} .rv-badge--rejected{color:var(--bad)} .rv-badge--open{color:var(--accent)}
.rv-open::before{content:"+";font:500 22px var(--mono)}
.rv[open] .rv-open::before{content:"–"}
.rv[open] summary{border-bottom:1px dotted var(--rule)}
.rv-body{padding:20px 0 32px}
.rv-panel{display:flex;flex-direction:column;gap:24px}
.rv-actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding:12px 14px;background:var(--note);border:1.5px solid var(--accent);font:13px var(--mono)}
.rv-status{font-weight:500;text-transform:uppercase;letter-spacing:.08em}
.rv-buttons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rv-buttons .field{width:200px;height:40px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.rv-photos-head{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-bottom:12px}
.rv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.rv-photo{margin:0;display:flex;flex-direction:column;gap:6px;padding:6px;border:1.5px solid var(--rule);background:var(--panel)}
.rv-photo.is-approved{border-color:var(--good)}
.rv-photo.is-rejected{opacity:.55}
.rv-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;background:var(--wash)}
.rv-photo figcaption{font:11px/1.4 var(--mono);color:var(--muted)}
.rv-photo-actions{display:flex;gap:6px;align-items:center}
.rv-photo-actions .btn{height:34px;padding:0 12px;flex:1}
.rv-rejected{margin-top:12px}
.rv-family{font:11px var(--mono);color:var(--muted)}
.rv-family.is-published{color:var(--accent);font-weight:600}
/* phones: the photos as one strip swiped sideways, one card and the edge of the next in view */
@media (max-width:760px){
  .rv-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:10px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .rv-photo{flex:0 0 80%;scroll-snap-align:start}
  .rv-photo-actions .btn{height:44px}
  .rv-grid > .note{flex:1 0 100%}
}
.rv-cols{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:40px;align-items:start}
@media (max-width:1000px){.rv-cols{grid-template-columns:minmax(0,1fr)}.rv summary{grid-template-columns:72px minmax(0,1fr) 24px}.rv summary img,.rv summary .nophoto{width:72px;height:48px}.rv-meta{display:none}}
