/* Scoped to the seven-model gallery. Does not target the existing homepage hero. */
.dn6-models{--dn6-ink:#142d3c;--dn6-muted:#52646e;--dn6-line:#dce3e2;--dn6-accent:#ff9e16;color:var(--dn6-ink);max-width:1440px;margin:0 auto;padding:64px 0}
.dn6-models *{box-sizing:border-box}
.dn6-models-header{max-width:740px;margin-bottom:28px}
.dn6-models .dn6-eyebrow{margin:0 0 13px;font-size:14px;line-height:1.5;font-weight:700;letter-spacing:.12em}
.dn6-models h2{margin:0 0 16px;font-size:clamp(32px,4vw,48px);font-weight:500;line-height:1.1;letter-spacing:-.04em}
.dn6-models-intro{margin:0;color:var(--dn6-muted);font-size:17px;line-height:1.6}
.dn6-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:24px}
.dn6-filters{display:flex;flex-wrap:wrap;gap:8px}
.dn6-models [hidden]{display:none!important}
.dn6-filters button{appearance:none;min-height:44px;border:1px solid #a4b2b9;border-radius:3px;background:#fff;color:var(--dn6-ink);padding:10px 18px;font:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
.dn6-filters button[aria-pressed="true"]{background:var(--dn6-ink);border-color:var(--dn6-ink);color:#fff}
.dn6-filters button:hover{border-color:var(--dn6-ink)}
.dn6-count{margin:0;font-size:14px;line-height:1.5;color:var(--dn6-muted)}
.dn6-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.dn6-model-card{min-width:0;background:#fff;border:1px solid var(--dn6-line);display:flex;flex-direction:column;border-radius:4px;overflow:hidden;scroll-margin-top:160px;transition:border-color .18s ease}
.dn6-model-card:hover{border-color:#899ca6}
:is(.dn6-models,.dn6-model-render) .dn6-render-window{position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:#f4f5f3;margin:0;padding:0;isolation:isolate}
:is(.dn6-models,.dn6-model-render) .dn6-render-window>img{position:absolute;display:block;margin:0;padding:0;width:var(--dn6-render-width);height:var(--dn6-render-height);left:var(--dn6-render-left);top:var(--dn6-render-top);max-width:none;max-height:none;object-fit:fill;transform:none!important;mix-blend-mode:normal;filter:none;border:0;border-radius:0;opacity:1}
.dn6-model-render{box-sizing:border-box;width:100%;max-width:640px;margin:0 auto;padding:0;border:1px solid #dce3e2;border-radius:4px;overflow:hidden;background:#fff;color:#142d3c}
.dn6-model-render figcaption{margin:0;padding:13px 16px;border-top:1px solid #dce3e2;color:#52646e;font-size:14px;line-height:1.6}
.dn6-model-copy{padding:23px 22px 18px;display:flex;flex:1;flex-direction:column}
.dn6-models .dn6-model-copy h3{margin:0 0 9px;font-size:34px;line-height:1.08;font-weight:500;letter-spacing:-.035em}
.dn6-mount{margin:0 0 23px;color:var(--dn6-muted);font-size:14px;line-height:1.5}
.dn6-model-actions{margin-top:auto;border-top:1px solid var(--dn6-line);padding-top:11px;display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.dn6-model-actions a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:var(--dn6-ink);font-size:14px;line-height:1.5;text-decoration-thickness:1px;text-underline-offset:4px}
.dn6-view-render{font-weight:400;text-decoration:underline;text-decoration-color:#82959e}
.dn6-request-model{font-weight:700;text-decoration:underline;text-decoration-color:var(--dn6-accent)}
.dn6-model-actions a:hover{text-decoration-thickness:2px}
.dn6-model-notes{margin-top:23px;max-width:840px;color:var(--dn6-muted);font-size:14px;line-height:1.7}
.dn6-model-notes p{margin:0 0 5px}
.dn6-models :is(a,button):focus-visible{outline:3px solid var(--dn6-ink);outline-offset:4px}
.dn6-render-dialog{width:min(920px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid #9cabb2;border-radius:5px;background:#fff;color:var(--dn6-ink);box-shadow:0 20px 80px #07172055}
.dn6-render-dialog:not([open]){display:none}
.dn6-render-dialog::backdrop{background:rgb(9 22 30 / .72)}
.dn6-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;background:#fff;border-bottom:1px solid var(--dn6-line)}
.dn6-models .dn6-dialog-header h3{margin:0;font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.025em}
.dn6-dialog-close{appearance:none;min-width:66px;min-height:44px;flex:none;border:1px solid #9aabb4;border-radius:3px;background:#fff;color:var(--dn6-ink);padding:10px 15px;font:inherit;font-size:14px;line-height:1.4;cursor:pointer}
.dn6-dialog-close:hover{background:#edf1ef}
.dn6-dialog-media{display:flex;justify-content:center;background:#f4f5f3}
.dn6-dialog-media .dn6-render-window{width:min(100%,max(230px,calc(100dvh - 210px)))}
.dn6-dialog-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 16px;padding:12px 24px;border-top:1px solid var(--dn6-line);font-size:14px;line-height:1.5}
.dn6-dialog-footer p{margin:0;color:var(--dn6-muted)}
.dn6-dialog-footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--dn6-ink);text-underline-offset:4px}
.dn6-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1200px){.dn6-model-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.dn6-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dn6-model-copy{padding:21px 19px 16px}}
@media(max-width:560px){.dn6-models{padding:42px 0}.dn6-model-grid{grid-template-columns:1fr;gap:20px}.dn6-model-card{width:100%;max-width:420px;margin:0 auto}.dn6-filters button{padding:10px 15px}.dn6-toolbar{align-items:flex-start}.dn6-count{width:100%}.dn6-model-copy{padding:23px}.dn6-dialog-header{padding:13px 16px}.dn6-dialog-footer{padding:10px 16px}.dn6-models .dn6-dialog-header h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.dn6-model-card{transition:none}}

/* V22 fit dialog only. The model cards and original render geometry stay unchanged.
   Scope also outranks the later V15 dialog rules without affecting other media. */
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog{width:min(940px,calc(100vw - 32px));border-color:#ccd6d7;border-radius:10px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-header{position:sticky;top:0;z-index:2;padding:16px 24px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-media{align-items:center;padding:24px 16px;min-width:0}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-media>.dn6-render-window{width:min(100%,340px);height:auto;aspect-ratio:1}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-details{min-width:0;padding:24px 28px;border-top:0;border-left:1px solid #e1e7e4}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-details p{font-size:14px!important;line-height:1.55!important;margin:0 0 10px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-mount{font-weight:600;color:#52646e}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-spec{color:#19323e;font-weight:700}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-actions{margin:15px 0 22px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-actions [data-dn15-dialog-request]{min-height:46px;padding:10px 20px;font-weight:650}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-actions [data-dn15-dialog-request]:hover{background:#ff9e16;border-color:#ff9e16;color:#19323e}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-checks{padding-top:18px;border-top:1px solid #dce3e2}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-checks h4{margin:0 0 8px;font-size:15px;line-height:1.4;font-weight:700;letter-spacing:0}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog [data-dn15-dialog-fit]{margin:0 0 18px;padding:0 0 0 19px;list-style:disc}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog [data-dn15-dialog-fit] li{margin:0 0 7px;padding:0;font-size:14px;line-height:1.55;color:#52646e}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-resources{display:flex;flex-direction:column;align-items:flex-start;margin-top:12px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-resources a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;font-size:14px;line-height:1.5;color:#19323e;text-underline-offset:4px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-footer{padding:10px 24px;gap:2px 16px}
:is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-footer p{font-size:12px!important;line-height:1.6!important}
@media(max-width:700px){
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-header{padding:12px 16px;gap:12px}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-header h3{font-size:21px;line-height:1.25}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn22-dialog-body{grid-template-columns:minmax(0,1fr)}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-media{padding:6px 16px}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-media>.dn6-render-window{width:min(100%,clamp(190px,26dvh,220px));height:auto}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-details{padding:18px 20px;border-left:0;border-top:1px solid #e1e7e4}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn15-dialog-actions{margin:14px 0 18px}
 :is(.dn6-models.dn15-models,#models .dn6-models.dn15-models) .dn22-fit-dialog .dn6-dialog-footer{padding:10px 20px}
}
