*{box-sizing:border-box;margin:0;padding:0}html,body{color:#f4f4f4;background:#050505;width:100%;height:100%;font-family:Archivo,Helvetica,Arial,sans-serif;overflow:hidden}canvas{display:block}#ui{pointer-events:none;opacity:0;z-index:20;flex-direction:column;justify-content:space-between;padding:48px;font-family:Archivo,Helvetica,Arial,sans-serif;transition:opacity 1.8s;display:flex;position:fixed;inset:0}header{flex-direction:column;gap:10px;display:flex}.collection{letter-spacing:.34em;text-transform:uppercase;opacity:.9;text-align:left;font-family:Gloock,Georgia,serif;font-size:27px;font-weight:400}.project-description{text-align:left;opacity:.9;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:18px;font-weight:400;line-height:1.5}.specimen{flex-direction:column;gap:4px;margin-top:6px;display:flex}.specimen-name{letter-spacing:.14em;opacity:.95;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:20px;font-weight:400}.specimen-details,.tag-list,.author-block{display:none}.specimen-extra.open .specimen-details,.specimen-extra.open .author-block{display:block}.specimen-details{letter-spacing:.08em;opacity:.6;margin-bottom:8px;font-size:12px}.specimen-description{opacity:.9;margin-top:8px;font-size:15px;line-height:1.75}.expand-button{z-index:35;appearance:none;color:#ffffffbf;cursor:pointer;pointer-events:auto;background:0 0;border:none;justify-content:center;align-items:center;width:46px;height:46px;padding:0;font-size:27px;line-height:1;transition:color .25s;display:none;position:fixed;top:92px;right:48px}#ui:not(.default) .expand-button{display:flex}.expand-button:hover{color:#fff}header,footer{transition:opacity .45s}#ui.immersive header,#ui.immersive footer{opacity:0;pointer-events:none}.info-toggle{appearance:none;color:#ffffff8c;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:0;align-self:flex-start;margin-top:12px;padding:6px 0;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:11px;transition:color .2s;display:none}.info-toggle:hover{color:#fff;background:0 0}.section-toggle{text-align:left;appearance:none;color:#ffffffa6;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;pointer-events:auto;background:0 0;border:none;border-bottom:1px solid #ffffff59;border-radius:0;width:100%;margin-top:12px;padding:6px 0;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:11px;transition:all .2s;display:none}.section-toggle:hover{color:#fff;background:0 0;border-bottom-color:#ffffffa6}.section-content{display:none}.section-content.open{display:block}.specimen-hint{opacity:.55;letter-spacing:.02em;margin-top:6px;font-size:13px;line-height:1.7}.specimen-hint span{display:block}.specimen-hint strong{opacity:.85;font-weight:500}.specimen-hint:empty,#ui:not(.default) .project-description,.specimen-extra{display:none}.specimen-extra.open{display:block}@media (width<=768px){.specimen-extra.open{-webkit-overflow-scrolling:touch;z-index:25;background:#080808f7;border:1px solid #ffffff1a;border-radius:10px;max-height:calc(100dvh - 220px);padding:18px 16px 16px;position:fixed;bottom:90px;left:24px;right:24px;overflow-y:auto}}.specimen-body{opacity:.75;flex-direction:column;gap:10px;margin-top:10px;font-size:14px;line-height:1.75;display:flex}.specimen-medium{text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-top:10px;padding-top:0;font-size:12px;line-height:1.6}.tag-list{flex-wrap:wrap;gap:8px;margin:4px 0 8px}.tag{letter-spacing:.2em;text-transform:uppercase;opacity:.8;background:#ffffff0a;border:1px solid #ffffff29;border-radius:999px;padding:6px 10px;font-size:10px}.tag.compose-tag{color:#f7f2e8;background:#ffffff1f;border-color:#ffffff47;box-shadow:inset 0 0 0 1px #ffffff0f}.author-block{flex-direction:column;gap:6px;margin-top:0;padding-top:0}.author-label{letter-spacing:.24em;text-transform:uppercase;opacity:.5;font-size:10px}.author-quote{opacity:.85;color:#ffffffe0;font-size:14px;font-style:italic;line-height:1.7}.author-name{letter-spacing:.16em;text-transform:uppercase;opacity:.75;color:#ffffffd9;align-self:flex-start;font-size:12px;text-decoration:none;transition:opacity .2s,color .2s}.author-name:hover{opacity:1;color:#fff;text-decoration:underline}h1{letter-spacing:.03em;font-size:54px;font-weight:300}footer{pointer-events:auto;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:relative}.footer-left{z-index:10;flex-direction:column;align-items:flex-start;gap:20px;max-width:280px;display:flex;position:fixed;bottom:48px;left:48px}#ui:not(.default) .select-hint{display:none}footer .select-hint{height:auto;display:block;position:static;transform:none}.footer-right{z-index:10;flex-direction:column;align-items:flex-end;gap:20px;display:flex;position:fixed;bottom:48px;right:48px}.footer-menu{align-items:center;gap:24px;display:flex}.back-arrow{margin-right:7px;text-decoration:none;display:inline-block}footer #actionButton{flex:none;align-items:center;display:flex;position:static}@media (width<=768px){footer{flex-direction:column;align-items:center;gap:16px;display:flex;position:fixed;bottom:24px;left:24px;right:24px}.footer-left,.footer-right{display:contents}footer .select-hint,footer #actionButton{order:1}.footer-menu{order:3}footer #actionButton{padding:10px 16px}footer .select-hint{text-align:center;width:100%;font-size:13px}.footer-menu{position:relative}.back-button{white-space:nowrap;margin-right:18px;padding:4px 2px;font-size:12px;line-height:1.2;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.how-link{white-space:nowrap;margin-left:18px;padding:4px 2px;font-size:12px;line-height:1.2;position:absolute;top:50%;left:100%;transform:translateY(-50%)}.expand-button{width:52px;height:52px;font-size:26px;top:18px;right:18px}#ui.default .back-button{display:none}}button,#relocate{appearance:none;color:#fff;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #ffffff2e;border-radius:999px;padding:12px 22px;font-size:13px;text-decoration:none;transition:all .25s}button:hover,#actionButton:hover{color:#000;background:#fff}#actionButton{align-items:center;gap:8px;display:flex}.mb{display:none}.select-hint{letter-spacing:.18em;text-transform:uppercase;color:#ffffffb3;font-size:12px}.select-hint span{line-height:1.8;display:block}.back-button{appearance:none;color:#ffffff80;letter-spacing:.06em;text-transform:lowercase;cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:0;padding:6px 2px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:13px;transition:color .25s}.back-label{text-underline-offset:4px;text-decoration:underline}.back-button:hover{color:#fff;background:0 0}.about-link{appearance:none;color:#ffffff80;letter-spacing:.06em;text-transform:lowercase;text-underline-offset:4px;cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:0;padding:6px 2px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:13px;text-decoration:underline;transition:color .25s}.about-link:hover{color:#fff;background:0 0}.how-link{appearance:none;color:#ffffff80;letter-spacing:.06em;text-transform:lowercase;text-underline-offset:4px;cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:0;padding:6px 2px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:13px;text-decoration:underline;transition:color .25s}.how-link:hover{color:#fff}.about-overlay{z-index:40;opacity:0;pointer-events:none;background:#050505fb;justify-content:center;align-items:flex-start;transition:opacity .5s;display:flex;position:fixed;inset:0;overflow-y:auto}.about-overlay.open{opacity:1;pointer-events:auto}.about-panel{width:min(680px,86vw);margin:14vh 0;position:relative}.about-close{appearance:none;color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:0;padding:4px 8px;font-size:30px;line-height:1;transition:color .2s;position:fixed;top:34px;right:46px}.about-close:hover{color:#fff;background:0 0}.about-label{letter-spacing:.24em;text-transform:uppercase;color:#fff6;margin-bottom:12px;font-size:11px;display:block}.about-name{letter-spacing:.05em;color:#f4f4f4;margin-bottom:28px;font-family:Gloock,Georgia,serif;font-size:42px;font-weight:400}.about-body{flex-direction:column;gap:18px;display:flex}.about-body p{color:#ffffffb8;font-size:15px;font-weight:300;line-height:1.8}#ui.default header{text-align:left;align-self:flex-start;align-items:flex-start;max-width:none}#ui.default .specimen{display:none}@media (width<=768px){#actionButton{background:#ffffff14;border:1px solid #ffffff4d}#actionButton:hover{color:#64b4ff;background:#64b4ff33;border-color:#64b4ff80}#ui.default header{text-align:left;width:100%}#ui.default .specimen{align-items:center;margin-left:auto;margin-right:auto}#ui.default .specimen-description{text-align:left;margin-left:auto;margin-right:auto}#ui.default #actionButton{order:unset}.about-link{font-size:12px}.collection{letter-spacing:.22em;font-size:22px}.mb{display:inline}.about-close{top:20px;right:22px}.about-name{font-size:32px}.about-body p{font-size:14px;line-height:1.75}#ui{padding:24px}h1{font-size:34px}button{padding:10px 18px;font-size:11px}}@media (width>=769px){.footer-menu{z-index:30;position:fixed;top:41.5px;right:48px}.specimen{min-width:320px;max-width:35%}}#ui.default footer #actionButton{visibility:hidden;display:flex!important}@media (width<=768px){#ui.default footer #actionButton{display:none!important}}#ui.default .back-button{opacity:.35;cursor:not-allowed;pointer-events:none}#ui.default .back-button:hover{color:#ffffff80}#orientation{z-index:9999;pointer-events:none;opacity:1;background:#050505;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.orientation-content{flex-direction:column;gap:32px;width:min(760px,80vw);display:flex}.line{opacity:0;color:#fff;line-height:1.5;transition:opacity 1.8s,transform 1.8s;transform:translateY(16px)}.line.visible{opacity:1;transform:translateY(0)}.line1{max-width:620px;font-size:40px;font-weight:300}.line2{color:#ffffffe6;font-size:22px;font-weight:300}.line3{color:#fff9;font-size:16px;font-weight:300;line-height:1.6}#orientation{transition:opacity 2s}#orientation.hide{opacity:0}#orientation.hide .orientation-content{transition:transform 2s;transform:scale(.94)}@media (width<=768px){.orientation-content{gap:24px;width:86vw}.line1{font-size:28px}.line2{font-size:18px}.line3{letter-spacing:.14em;font-size:11px}}.onboarding{z-index:50;opacity:0;pointer-events:none;background:#050505e0;justify-content:center;align-items:center;padding:24px;transition:opacity .5s;display:flex;position:fixed;inset:0}.onboarding.open{opacity:1;pointer-events:auto}.onboarding-panel{flex-direction:column;align-items:flex-start;gap:28px;width:min(440px,100%);display:flex}.onboarding-text{color:#f4f4f4;margin:0;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:19px;line-height:1.55}.onboarding-button{appearance:none;color:#ffffffd9;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:999px;padding:10px 22px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:12px;transition:color .25s,border-color .25s}.onboarding-button:hover{color:#fff;border-color:#ffffff8c}@media (width<=768px){.onboarding-text{font-size:17px}.onboarding-panel{gap:24px}}.ar-overlay{z-index:60;pointer-events:none;flex-direction:column;justify-content:space-between;padding:24px;font-family:Archivo,Helvetica,Arial,sans-serif;display:none;position:fixed;inset:0}.ar-overlay.open{display:flex}.ar-name{letter-spacing:.06em;color:#ffffffe6;text-shadow:0 1px 8px #000c;font-size:13px}.ar-foot{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.ar-picker{pointer-events:auto;flex-wrap:wrap;gap:8px;display:flex}.ar-chip{appearance:none;color:#ffffffb3;letter-spacing:.1em;cursor:pointer;background:#00000080;border:1px solid #ffffff40;border-radius:999px;padding:8px 12px;font-family:Archivo,Helvetica,Arial,sans-serif;font-size:11px}.ar-chip.chosen{color:#fff;border-color:#ffffffbf}.ar-actions{gap:10px;display:flex}.ar-instruction{letter-spacing:.02em;color:#ffffffbf;text-shadow:0 1px 8px #000c;font-size:12px}.ar-overlay[data-state=placed] .ar-instruction:after{content:"Tap again to add another, or pick a different piece below."}.ar-overlay[data-state=seeking] .ar-instruction:after{content:"Point at a surface, then tap to place the piece."}.ar-exit{appearance:none;color:#fff;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;pointer-events:auto;background:#0000008c;border:1px solid #ffffff59;border-radius:999px;padding:10px 18px;font-size:12px}
