/* Photo records belong only to the fictional Demo House. */
.demo-body .demo-record-intro{max-width:48rem}
.demo-body .demo-media-note{max-width:56rem;margin:8px 0 0;color:#536b70;font-size:14px;line-height:1.6}
.demo-body .demo-media-note[hidden]{display:none}
.demo-body .demo-entries{align-items:start}
.demo-body .demo-entry.has-demo-photo{min-width:0;padding:0;overflow:hidden;border-radius:12px}
.demo-body .demo-entry[hidden]{display:none}
.demo-body .demo-record-photo{margin:0}
.demo-body .demo-photo-open{position:relative;display:block;background:#e7eeeb;color:#fff}
.demo-body .demo-photo-open img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.demo-body .demo-photo-open.is-plan img{object-fit:contain;background:#f5f2ea}
.demo-body .demo-photo-action{position:absolute;right:12px;bottom:12px;padding:8px 12px;border:1px solid #ffffff80;border-radius:7px;background:#173e40ed;color:#fff;font:600 14px/1.4 var(--sans,Arial,sans-serif)}
.demo-body .demo-photo-open:focus-visible{outline:3px solid #ac8646;outline-offset:-3px}
.demo-body .demo-photo-open:focus-visible .demo-photo-action,.demo-body .demo-photo-open:hover .demo-photo-action{background:#102e30;text-decoration:underline;text-underline-offset:3px}
.demo-body .demo-record-photo figcaption{padding:12px 22px;border-bottom:1px solid #d9e4e3;color:#536b70;font-size:13px;line-height:1.5}
.demo-body .demo-entry-content{padding:22px}
.demo-body .demo-entry-content .eyebrow{font-size:11px;letter-spacing:.1em;color:#536b70}
.demo-body .demo-entry-content h3{font-size:26px;line-height:1.2;margin:12px 0}
.demo-body .demo-entry-content p{font-size:16px;line-height:1.65;margin:0;color:#415d60}
.demo-body .demo-entry-content .document-meta{margin-top:18px;font-size:14px;color:#536b70}
.demo-body .demo-entry-content .document-actions{gap:10px 18px;margin-top:12px}
.demo-body .demo-entry-content .document-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;color:#175c60}
.demo-body .demo-entry-content small{margin-top:12px;font-size:12px;line-height:1.6;color:#536b70}
.demo-photo-dialog{width:min(1000px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #b9cfcd;border-radius:14px;background:#fff;color:#18383b;box-shadow:0 22px 80px #0005}
.demo-photo-dialog::backdrop{background:#10282bd9}
.demo-photo-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:0}
.demo-photo-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #d9e4e3}
.demo-photo-dialog-header h2{font:600 22px/1.3 var(--sans,Arial,sans-serif);margin:0;letter-spacing:0}
.demo-photo-close{flex:none;min-width:72px;min-height:44px;padding:9px 15px;border:1px solid #b8cfcc;border-radius:7px;background:#fff;color:#18383b;font:600 16px/1.4 var(--sans,Arial,sans-serif);cursor:pointer}
.demo-photo-stage{min-height:0;overflow:auto;overscroll-behavior:contain;background:#eef2ef;text-align:center}
.demo-photo-stage img{display:block;max-width:100%;max-height:65dvh;width:auto;height:auto;margin:auto;object-fit:contain}
.demo-photo-stage img[hidden]{display:none}
.demo-photo-error{padding:24px;font-size:16px;line-height:1.6}
.demo-photo-dialog-footer{padding:16px 22px 20px;border-top:1px solid #d9e4e3}
.demo-photo-dialog-footer p{margin:0;font-size:15px;line-height:1.5;color:#415d60}
.demo-photo-dialog-footer .demo-photo-note{margin-top:5px;font-size:13px;color:#536b70}
.demo-photo-full{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;color:#175c60;font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.demo-photo-dialog :is(button,a):focus-visible{outline:3px solid #ac8646;outline-offset:3px}
@media(min-width:781px) and (max-width:1120px){.demo-body .demo-entries{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.demo-body .demo-entry-content{padding:20px}.demo-body .demo-record-photo figcaption{padding:11px 20px}.demo-body .demo-entry-content h3{font-size:27px}.demo-photo-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:10px}.demo-photo-dialog-header{gap:14px;padding:14px 16px}.demo-photo-dialog-header h2{font-size:19px}.demo-photo-dialog-footer{padding:14px 16px 16px}.demo-photo-stage img{max-height:55dvh}}
@media(prefers-reduced-motion:reduce){.demo-photo-dialog{scroll-behavior:auto}}
