/* Aircraft collection additions retain the original 3D Hangar palette. */
.model-tabs { flex-wrap:wrap; gap:5px; }
.model-tabs button { white-space:nowrap; }
.model-tabs button span { margin-left:5px; }
.canvas-word { font-size:clamp(54px,7vw,110px); letter-spacing:-.065em; }
.canvas-word #model-word { display:inline; font:inherit; color:inherit; }
.canvas-word #model-code { display:block; font-size:22px; letter-spacing:.18em; }
.viewer-caption { max-width:calc(100% - 30px); }
.viewer-caption #model-caption { max-width:320px; }
.viewer-caption #model-span { white-space:nowrap; }
.viewer-disclaimer { min-height:36px; }
.display-tabs button:disabled { opacity:.35; cursor:default; }
.product-image img { object-fit:contain; width:100%; }
.new-aircraft .product-image { background:#eef2ea; }
.new-aircraft .product-image img { padding:58px 20px 20px; }
.new-aircraft .product-number { left:18px; right:18px; top:15px; font-size:8px; }
.new-aircraft .pill { top:36px; right:18px; }
.new-aircraft .product-title h3 { min-width:0; }
.new-aircraft .price { flex-shrink:0; }
.price.pending { max-width:90px; text-align:right; font-size:13px; line-height:1.5; font-weight:500; }
.product-body .model-status { min-height:0; font-size:11px; color:#6c543f; margin:15px 0; }
.product-body .tags { flex-wrap:wrap; }
.product-body .button { margin-top:auto; }
.product-card { display:flex; flex-direction:column; }
.product-body { display:flex; flex-direction:column; flex:1; }
.aircraft-subnav { display:flex; flex-wrap:wrap; gap:10px 20px; margin:0 0 32px; font-size:12px; }
.aircraft-subnav a { text-decoration:underline; text-underline-offset:4px; }
.model-page .header nav { display:flex; }
.model-page .hero { grid-template-columns:.8fr 1.2fr; }
.model-page .hero h1 { font-size:clamp(46px,5vw,68px); }
.model-page .canvas-wrap { height:410px; }
.model-page .intro { margin-top:20px; }
.model-page .hero-detail { max-width:430px; }
.model-page .viewer-shell { min-width:0; }
.model-page .model-price { font-size:22px; margin:20px 0 14px; }
.model-page .model-price small { color:var(--muted); font-size:12px; }
.model-page .package-status { display:block; border:1px solid var(--line); padding:15px 18px; font-size:13px; background:#e7ebe1; }
.model-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:30px 0; border-block:1px solid var(--line); }
.model-facts dt { font:10px var(--mono); color:var(--muted); text-transform:uppercase; margin-bottom:8px; }
.model-facts dd { margin:0; font-size:18px; }
.package-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:55px 0; }
.package-grid h2 { font-size:32px; margin-bottom:20px; }
.package-grid h3 { font-size:17px; margin:24px 0 10px; }
.package-grid p,.package-grid li { font-size:14px; line-height:1.8; }
.package-grid li { margin-bottom:9px; }
.package-grid ul { padding-left:20px; }
.package-grid .status-panel { border-left:3px solid var(--orange); padding:18px 22px; background:#ece6d9; }
.model-photo { width:100%; max-height:350px; object-fit:contain; background:#eef2ea; border:1px solid var(--line); border-radius:5px; }
.model-page .footer { margin-top:30px; }
.model-page .footer a { font-size:12px; }
.download-detail { font-size:11px; margin-top:9px; }
.viewer-shell:fullscreen { background:var(--green); display:flex; flex-direction:column; padding:15px; }
.viewer-shell:fullscreen .canvas-wrap { flex:1; height:auto; min-height:180px; }
@media(max-width:1100px) { .viewer-caption { align-items:flex-start; gap:4px; flex-direction:column; } .package-grid { gap:30px; } }
@media(max-width:760px) {
 .model-page .hero { grid-template-columns:1fr; }
 .model-page .canvas-wrap { height:340px; }
 .model-page .header nav { font-size:11px; gap:13px; }
 .model-page .brand-sub { display:none; }
 .model-facts { grid-template-columns:1fr 1fr; gap:22px; }
 .model-facts dd { font-size:16px; }
 .package-grid { grid-template-columns:1fr; gap:30px; padding:35px 0; }
 .canvas-word { font-size:70px; }
 .model-tabs button { font-size:10px; padding:8px 9px; }
 .model-tabs button span { display:none; }
 .viewer-caption #model-caption { max-width:260px; font-size:8px; }
 .viewer-disclaimer { font-size:9px; }
}
