.element-label{position:absolute;left:40px;top:130px;padding:12px 18px;background:#f6f0e5ee;border-left:2px solid #ae9061;color:#655640;font:16px Georgia,serif;pointer-events:none;max-width:270px}
.element-label[hidden]{display:none}
.selection-copy{font:13px/1.6 Georgia,serif;margin:12px 0}
.selection-photo{width:100%;height:auto;display:block;margin-top:12px}
.site-intro{position:absolute;right:25px;top:38px;width:255px;padding:12px 18px;background:#f6f0e5ee;border-left:2px solid #ae9061;font:13px/1.6 Georgia,serif;color:#655640;max-height:78%;overflow:auto}
.site-intro h3{font:16px Georgia,serif;margin:0 0 12px}
.site-intro p{margin:0 0 15px}.site-intro img{width:100%;display:block}
.ack{overflow:auto;background:#faf8f3;padding:40px clamp(25px,5vw,80px)}.ack h2{font-size:30px;font-weight:normal}.ack h3{font-weight:normal;font-size:22px;margin-top:32px}.ack p,.ack li{line-height:1.75}.ack a{color:#796342;text-underline-offset:3px}.ack-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,1.4fr);gap:45px;max-width:1050px}.ack figure{margin:0}.ack figure img{width:100%;max-width:420px}.ack figcaption{font-size:12px;line-height:1.6;color:#837767;margin-top:12px}.ack li{margin:0 0 18px;padding-left:5px;font-size:14px}
@media(max-width:1100px){.site-intro{width:210px;font-size:11px}.element-label{max-width:220px}.selection-copy{font-size:12px}.top h2{font-size:23px}}
@media(max-width:760px){.site-intro{top:auto;bottom:75px;right:12px;width:190px;max-height:180px}.element-label{left:22px;top:115px;max-width:210px;max-height:45%;overflow:auto;pointer-events:auto}.ack{padding:24px}.ack-grid{grid-template-columns:1fr}.ack figure img{max-width:300px}.selection-photo{max-height:130px;object-fit:contain}}
.ack{padding:24px 30px}.ack h2{margin:14px 0 22px;font-size:28px}.ack-grid{max-width:none;grid-template-columns:38% minmax(0,1fr);grid-template-rows:auto auto;gap:18px 28px;align-items:start}.ack-photo{grid-column:1;grid-row:1/3}.ack-references{grid-column:2;grid-row:1}.ack-contribution{grid-column:2;grid-row:2}.ack figure img{max-width:none;width:100%;height:calc(100dvh - 190px);object-fit:contain;object-position:top left}.ack figcaption{font-size:11px;line-height:1.4;margin-top:8px}.ack h3{font-size:18px;margin:0 0 12px}.ack-references ol{columns:2;column-gap:25px;margin:0;padding-left:18px}.ack li{break-inside:avoid;font-size:11.5px;line-height:1.4;margin:0 0 11px;padding-left:2px}.ack-contribution p{font-size:11.5px;line-height:1.45;margin:8px 0}.ack-contribution{border-top:1px solid #d9d0bf;padding-top:12px}
@media(min-width:1500px) and (min-height:850px){.ack{padding:30px 40px}.ack li,.ack-contribution p{font-size:13px;line-height:1.5}.ack li{margin-bottom:15px}.ack figure img{height:calc(100dvh - 190px)}}
@media(max-width:1000px){.ack-grid{grid-template-columns:1fr}.ack-photo,.ack-references,.ack-contribution{grid-column:1;grid-row:auto}.ack figure img{height:auto;max-height:60dvh}.ack li,.ack-contribution p{font-size:13px}.ack-references ol{columns:1}}

/* Review 10: shared card position, credits below images, compact photo caption. */
.site-intro{left:40px;right:auto;top:130px;bottom:auto;width:270px;max-height:calc(100% - 220px)}
.site-intro[hidden]{display:none}
.photo-credit{font:11px/1.4 Georgia,serif;margin-top:6px;color:#837767}
.ack figure img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 190px)}
.ack figcaption{margin-top:6px}
@media(max-width:1100px){.site-intro{width:220px}}
@media(max-width:760px){.site-intro{left:22px;right:auto;top:115px;bottom:auto;width:210px;max-height:45%}.ack figure img{max-height:60dvh}}
.discovery-card{width:300px;max-width:calc(100% - 80px);max-height:calc(100% - 220px);overflow:auto}
.discovery-heading{font:normal 19px/1.25 Georgia,serif;margin:0 0 8px}
.discovery-term{font:11px/1.4 Georgia,serif;color:#837767}
.discovery-description{font:13px/1.6 Georgia,serif;margin:12px 0 0}
@media(max-width:760px){.discovery-card{width:270px;max-width:calc(100% - 44px);max-height:calc(100% - 195px)}.discovery-heading{font-size:18px}.discovery-description{font-size:12px;line-height:1.5}}

.discovery-photo{display:block;width:100%;height:auto;margin-top:14px}.discovery-photo[hidden]{display:none}.discovery-card{overscroll-behavior:contain}
/* Portrait phones: the description sits below the model instead of over it. */
@media(max-width:760px) and (orientation:portrait){
 main:has(>.site-intro:not([hidden])),main:has(>.discovery-card:not([hidden])),main:has(>.element-label[style*="display: block"]){--model-h:58%}
 #view{height:var(--model-h,100%)}
 .controls{bottom:calc(100% - var(--model-h,100%) + 14px)}.hint{bottom:calc(100% - var(--model-h,100%) + 76px)}
 main>.site-intro,main>.discovery-card,main>.element-label{position:absolute!important;left:0!important;right:0!important;top:var(--model-h,100%)!important;bottom:0!important;width:auto!important;max-width:none!important;max-height:none!important;overflow:auto!important;padding:14px 22px 18px!important;border-left:0!important;border-top:1px solid #d9d0bf!important;background:#f3eee3!important;pointer-events:auto!important}
 .selection-photo,.discovery-photo{max-height:none}
}
