@font-face{font-family:Kazimir;src:url('../fonts/kazimir-300.woff') format('woff');font-weight:300;font-display:swap}
*{box-sizing:border-box}body{margin:0;background:#b8bbaa;color:#fff8e9;font-family:Arial,sans-serif}.landscape{height:100svh;min-height:580px;position:relative;overflow:hidden}#scene,.veil{position:absolute;inset:0}#scene canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}.veil{pointer-events:none;background:linear-gradient(180deg,rgba(17,29,21,.35),transparent 20%,transparent 55%,rgba(17,29,21,.62));z-index:1}.topbar{position:absolute;top:30px;left:42px;right:42px;z-index:2;display:flex;align-items:center;justify-content:space-between}.brand img{width:135px;display:block}.place{font-size:10px;letter-spacing:2.5px;display:flex;align-items:center;gap:20px}.place i{width:24px;height:1px;background:currentColor;opacity:.6}a{color:inherit;text-decoration:none}.back{font-size:13px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #ffffff60;padding:12px 0}.back span{font-size:23px}.intro{position:absolute;left:42px;bottom:165px;z-index:2;pointer-events:none;text-shadow:0 2px 30px #13241755}.eyebrow{font-size:9px;letter-spacing:2.5px;margin:0 0 19px}h1{font-family:Kazimir,Georgia,serif;font-weight:300;font-size:clamp(38px,4.1vw,68px);line-height:1.08;letter-spacing:-2px;margin:0}.caption{font-family:Kazimir,Georgia,serif;font-weight:300;font-size:15px;line-height:1.65;margin:20px 0 0}.toolbar{position:absolute;z-index:2;bottom:65px;left:42px;right:42px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #fff5;padding-top:20px;gap:18px}.views,.settings{display:flex;gap:6px;align-items:center}button{font:12px Arial,sans-serif;color:inherit;border:0;cursor:pointer;background:transparent;min-height:44px;padding:12px 17px;transition:background .2s,color .2s}button:hover{background:#ffffff20}button:focus-visible,a:focus-visible{outline:2px solid #f3dfaa;outline-offset:5px}.views button{border:1px solid transparent}.views button[aria-pressed=true]{background:#f4efdf;color:#28382e}.views span{font-size:9px;margin-right:16px;opacity:.55}#glass{display:flex;align-items:center;gap:18px}.switch{width:28px;height:15px;border:1px solid #ffffff90;border-radius:10px;padding:2px}.switch:after{content:'';display:block;width:9px;height:9px;background:#fff8e9;border-radius:50%;transition:transform .25s}#glass[aria-pressed=true] .switch:after{transform:translateX(12px)}#reset{font-size:25px;border-left:1px solid #fff5;padding:5px 15px}.bottom{position:absolute;z-index:2;bottom:25px;left:42px;right:42px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.4px;color:#fffa}.hint,.model-note{letter-spacing:.3px}#loading{position:absolute;z-index:5;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px;background:#25362c;transition:opacity .7s}#loading.dismissed{opacity:0;pointer-events:none}.loading-mark{font-family:Kazimir,serif;font-size:45px;letter-spacing:12px}#loading>span:last-child{font-size:11px;letter-spacing:2px}#fallback{position:absolute;inset:0;z-index:3;background:#25362c}#fallback img{width:100%;height:100%;object-fit:cover;opacity:.45}#fallback p{position:absolute;left:8%;bottom:12%;font:22px/1.7 Kazimir,serif}#fallback a{text-decoration:underline}.no-js{position:absolute;z-index:8;inset:40%;width:300px}.intro,.toolbar{animation:enter 1.2s both .4s}@keyframes enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.topbar{top:20px;left:20px;right:20px}.brand img{width:105px}.place{display:none}.intro{left:20px;bottom:205px}h1{font-size:38px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:1.5px}.caption{display:none}.toolbar{left:20px;right:20px;bottom:54px;flex-direction:column;align-items:stretch;padding-top:12px;gap:8px}.views{justify-content:space-between}.views button{padding:10px 11px;font-size:11px;flex:1}.views span{margin-right:6px}.settings{justify-content:space-between}#glass{padding-left:0}.bottom{left:20px;right:20px;bottom:18px;font-size:8px}.bottom>span:first-child,.hint{display:none}.model-note{margin:auto}.veil{background:linear-gradient(180deg,#111d154d,transparent 20%,transparent 45%,#111d15bb)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
