.pv-overlay{position:fixed;inset:0;z-index:100;background:#050609d9;backdrop-filter:blur(8px);padding:16px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.pv-dialog{width:100%;max-width:1440px;height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:#101216;border:1px solid #ffffff24;border-radius:8px;box-sizing:border-box;color:var(--ink);scrollbar-color:#655444 #15171b}
.pv-header{position:sticky;top:0;z-index:5;background:#101216f5;backdrop-filter:blur(12px);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 28px;border-bottom:1px solid #ffffff20}
.pv-header span{display:block;color:var(--acc);font:10px/1.5 'IBM Plex Mono',monospace;letter-spacing:.12em}
.pv-header h3{font:600 clamp(23px,2.5vw,34px)/1.15 'Cormorant Garamond',serif;margin:5px 0 0}
.pv-close,.pv-enlarge{padding:0;display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:1px solid #ffffff38;border-radius:50%;background:#17191ed9;color:#f4f1ec;cursor:pointer}
.pv-close svg,.pv-enlarge svg{width:23px;height:23px}.pv-close:hover,.pv-enlarge:hover{background:var(--acc,#e5751f);color:#0b0c10}
.pv-close:focus-visible,.pv-enlarge:focus-visible,.pv-details summary:focus-visible{outline:2px solid var(--acc,#e5751f);outline-offset:4px}
.pv-content{padding:6px 28px 28px;max-width:1280px;margin:auto}
.pv-section{margin:24px 0 14px;padding-top:20px;border-top:1px solid #ffffff20}.pv-section:first-child{padding-top:0;border:0;margin-top:18px}
.pv-section h4{font:500 22px/1.3 'Cormorant Garamond',serif;margin:0 0 12px;color:#f4f1ec}
.pv-content h5{font:500 13px/1.5 'IBM Plex Mono',monospace;margin:16px 0 9px;color:#e3b38d}
.pv-bullets{font:400 15px/1.6 'IBM Plex Sans',sans-serif;color:#c8c2b9;margin:10px 0 18px;padding-left:21px;max-width:1000px}.pv-bullets li{padding-left:3px;margin:4px 0}.pv-bullets li::marker{color:var(--acc)}.pv-bullets strong{font-weight:500;color:#f4f1ec}
.pv-figure{margin:10px 0 18px;min-width:0}.pv-media{position:relative;min-width:0}.pv-figure img{display:block;width:100%;height:auto;max-height:620px;max-height:min(72dvh,620px);object-fit:contain;border-radius:4px;background:transparent}.pv-figure iframe{display:block;width:100%;height:min(65dvh,660px);min-height:300px;border:1px solid #ffffff16;border-radius:4px;background:#080a0e;box-sizing:border-box}.pv-figure video{display:block;width:100%;max-height:66dvh;object-fit:contain;background:#080a0e;border-radius:4px}.pv-enlarge{position:absolute;right:10px;top:10px;width:34px;height:34px;opacity:.85}.pv-figure:hover .pv-enlarge{opacity:1}.pv-enlarge svg{width:19px;height:19px}
.pv-figure figcaption{font:400 12px/1.5 'IBM Plex Sans',sans-serif;color:#a49e95;margin-top:7px;max-width:100%;letter-spacing:0;text-transform:none}
.pv-pair,.pv-three,.pv-comparison,.pv-measurements,.pv-video-pair{display:grid;gap:18px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.pv-three{grid-template-columns:repeat(3,minmax(0,1fr))}.pv-comparison{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pv-comparison h5{min-height:20px;margin-bottom:5px}.pv-comparison .pv-figure{margin-bottom:10px}.pv-measurements{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.pv-measurements .pv-figure{margin:0 0 12px}.pv-measurements .pv-figure img{width:100%;height:155px;object-fit:contain}.pv-measurements .pv-figure figcaption{font-size:11px}.pv-pair>.pv-bullets{align-self:center}.pv-video-pair{max-width:860px;margin:auto}.pv-video-pair video{height:60dvh;max-height:580px}
.pv-stats{display:flex;flex-wrap:wrap;gap:16px 32px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;padding:15px 0;margin:18px 0}.pv-stats>div{flex:1;min-width:150px}.pv-stats strong{display:block;color:#e6a16b;font:500 clamp(25px,3vw,36px)/1.1 'IBM Plex Sans',sans-serif}.pv-stats span{display:block;margin-top:6px;color:#aaa397;font:12px/1.4 'IBM Plex Sans',sans-serif}
.pv-table{overflow-x:auto;max-width:100%;margin:15px 0;scrollbar-color:#655444 #15171b}.pv-table table{border-collapse:collapse;width:100%;font:400 13px/1.5 'IBM Plex Sans',sans-serif;color:#c8c2b9}.pv-table th,.pv-table td{padding:11px 12px;text-align:left;border-bottom:1px solid #ffffff20;vertical-align:middle;white-space:nowrap}.pv-table th{color:#eee7df;font-weight:500;background:#1a1c21}.pv-table td:first-child{color:#eee7df}.pv-table tr:hover td{background:#ffffff04}.pv-table sub{font-size:.8em}.pv-table p{margin:0}.pv-table table *{line-height:1.5}
.pv-details{border-top:1px solid #ffffff20;margin:0;padding:0}.pv-details summary{cursor:pointer;padding:15px 4px;color:#d3c9be;font:400 14px/1.45 'IBM Plex Sans',sans-serif}.pv-details summary::marker{color:var(--acc)}.pv-details[open]>summary{color:#f4f1ec}.pv-details>div{padding:0 4px 18px}.pv-links{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0 12px;font-size:14px}.pv-links a{color:#e6a16b}
.pv-bars{max-width:850px;padding:10px 0}.pv-bars>div{display:grid;grid-template-columns:185px 1fr 45px;align-items:center;gap:12px;margin:10px 0;font-size:13px;color:#c8c2b9}.pv-bars i{display:block;height:14px;background:#ffffff09}.pv-bars b{display:block;height:100%;background:#e5751f}.pv-bars strong{font:12px 'IBM Plex Mono',monospace}
.pv-compact{max-width:620px;margin:0 auto}.pv-compact .pv-figure img{max-height:300px}
.pv-context .pv-figure img{aspect-ratio:4/3;height:auto;max-height:none;object-fit:cover}
.pv-photo-pair{max-width:min(100%,calc(110dvh + 18px));margin:auto}.pv-figure video{width:min(100%,calc(66dvh * 16 / 9));height:auto;aspect-ratio:16/9;margin:auto}.pv-video-pair{max-width:min(100%,calc(67.5dvh + 18px))}.pv-video-pair video{width:min(100%,33.75dvh);height:auto;aspect-ratio:9/16;max-height:60dvh}.pv-video-pair .pv-figure figcaption{max-width:100%}
.pv-lightbox{border:1px solid #ffffff30;border-radius:6px;background:#07090d;color:#f4f1ec;padding:0;width:calc(100vw - 24px);height:calc(100dvh - 24px);max-width:none;max-height:none;box-sizing:border-box}.pv-lightbox::backdrop{background:#000d}.pv-lightbox header{height:56px;box-sizing:border-box;padding:8px 14px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111319}.pv-lightbox header span{font:13px/1.35 'IBM Plex Sans',sans-serif}.pv-lightbox .pv-lightbox-stage{width:100%;height:calc(100% - 56px);display:grid;place-items:center;overflow:auto}.pv-lightbox img{width:100%;height:100%;object-fit:contain}.pv-lightbox iframe{width:100%;height:100%;border:0}
@media(min-width:1500px){.pv-measurements .pv-figure img{height:180px}}
.pv-intro{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:center}.pv-intro-three{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:center}.pv-intro-three img{max-height:350px}.pv-measurements .pv-figure img{height:auto}.pv-measurements .pv-figure figcaption{font-size:12px}.pv-lightbox .pv-lightbox-stage{position:absolute;inset:56px 0 0;height:auto;display:block;overflow:hidden}.pv-lightbox img,.pv-lightbox iframe{position:absolute;inset:0;min-width:0;min-height:0;max-width:100%;max-height:100%;box-sizing:border-box}
@media(max-width:1000px){.pv-measurements{grid-template-columns:repeat(3,minmax(0,1fr))}.pv-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-comparison .pv-figure img{max-height:330px}}
@media(max-width:800px){.pv-intro,.pv-intro-three{grid-template-columns:1fr;gap:0}.pv-intro-three .pv-pair{grid-template-columns:1fr 1fr;gap:12px}.pv-intro-three img{max-height:280px}}
@media(max-width:640px){.pv-overlay{padding:0}.pv-dialog{height:100dvh;border:0;border-radius:0}.pv-header{padding:12px 16px;gap:10px}.pv-header span{font-size:9px}.pv-header h3{font-size:24px}.pv-content{padding:0 16px 24px}.pv-pair,.pv-three,.pv-video-pair{grid-template-columns:1fr;gap:0}.pv-bullets{font-size:14px}.pv-figure iframe{height:56dvh;min-height:260px}.pv-figure img{max-height:65dvh}.pv-stats{gap:18px}.pv-stats>div{min-width:120px}.pv-comparison{gap:10px}.pv-comparison h5{font-size:11px;min-height:33px}.pv-measurements{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-measurements .pv-figure img{height:auto}.pv-bars>div{grid-template-columns:125px 1fr 36px;gap:7px;font-size:11px}.pv-table th,.pv-table td{padding:9px;font-size:12px}.pv-section h4{font-size:22px}.pv-lightbox header span{font-size:11px}}

/* A compact frame for the single-rock completion sequence. */
.pv-figure.pv-completion{max-width:760px;margin-left:auto;margin-right:auto}
.pv-figure.pv-completion iframe{height:min(62dvh,520px);min-height:300px}

/* Preserve the introduction above the separate project cards. */
.pv-project-intro{max-width:790px;margin:0 auto 36px;color:var(--body);font-size:15px;line-height:1.65;text-align:center}
.pv-project-intro>p{margin:0 0 16px}
