:root{--font-primary:"Helvetica Neue", Helvetica, Arial, sans-serif;--bg-dark:#111;--bg-light:#f4f4f4;--text-main:#111;--text-muted:#666;--glass-bg:#ffffffbf;--glass-blur:blur(15px);--border-light:#0000000f;--radius-rounded:50px;--radius-card:12px;--transition-smooth:all .4s cubic-bezier(.165, .84, .44, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;overflow:hidden}#gallery-canvas{z-index:1;width:100vw;height:100dvh;position:fixed;top:0;left:0}#ui-layer{z-index:10;pointer-events:none;width:100vw;height:100dvh;position:fixed;top:0;left:0}.ui-top-btn{pointer-events:auto;color:#fff;border-radius:var(--radius-rounded);cursor:pointer;letter-spacing:1px;text-transform:uppercase;-webkit-backdrop-filter:var(--glass-blur);transition:var(--transition-smooth);background:#ffffff1a;border:1px solid #fff3;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.8rem;display:flex;position:absolute;top:2rem;right:3rem}.ui-top-btn:hover{color:#111;background:#fff;box-shadow:0 10px 20px #0003}#gyro-activate-btn{z-index:100;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-light);color:var(--text-main);border-radius:var(--radius-rounded);letter-spacing:.5px;cursor:pointer;transition:var(--transition-smooth);pointer-events:auto;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:.8rem;font-weight:500;display:flex;position:fixed;bottom:2.5rem;left:3rem;box-shadow:0 10px 30px #0000000d}#gyro-activate-btn:hover{background:#fff;transform:scale(1.03)}#gyro-activate-btn.hidden-gyro-btn{display:none!important}#filter-dropdown-wrapper{pointer-events:auto;z-index:20;position:absolute;top:2rem;left:3rem}#filter-toggle-btn{color:#fff;border-radius:var(--radius-rounded);cursor:pointer;background-color:#1a1a1a;border:none;align-items:center;gap:10px;padding:12px 24px;font-size:14px;font-weight:700;transition:background-color .3s,transform .2s;display:flex;box-shadow:0 4px 15px #00000026}#filter-toggle-btn:hover{background-color:#333;transform:translateY(-2px)}#filter-menu-options{opacity:1;background-color:#fff;border:1px solid #eaeaea;border-radius:15px;flex-direction:column;min-width:180px;margin-top:.5rem;padding:10px;transition:all .3s cubic-bezier(.165,.84,.44,1);display:flex;transform:translateY(0);box-shadow:0 10px 25px #0000001a}#filter-menu-options.hidden-dropdown{opacity:0;pointer-events:none;transform:translateY(-10px)}.filter-btn{color:#1a1a1a;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;padding:10px 16px;font-size:14px;transition:background-color .2s}.filter-btn:hover,.filter-btn.active{background-color:#f5f5f5;font-weight:700}.nav-btn{pointer-events:auto;background:var(--glass-bg);border:1px solid var(--border-light);color:var(--text-main);cursor:pointer;width:54px;height:54px;transition:var(--transition-smooth);-webkit-backdrop-filter:var(--glass-blur);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 5px 15px #00000005}#btn-prev{left:3rem}#btn-next{right:3rem}.nav-btn:hover{background:#fff;transform:translateY(-50%)scale(1.08);box-shadow:0 15px 30px #00000014}#info-panel{pointer-events:auto;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-rounded);border:1px solid var(--border-light);align-items:center;gap:3rem;padding:1.2rem 2.5rem;transition:opacity .4s;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0000000d}.text-container{text-align:left}#art-title{color:var(--text-main);white-space:nowrap;margin-bottom:.15rem;font-size:1.15rem;font-weight:500}#art-details{color:var(--text-muted);white-space:nowrap;font-size:.8rem}#btn-view-more{background:var(--text-main);color:#fff;border-radius:var(--radius-rounded);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;border:none;padding:.8rem 2rem;font-size:.85rem;font-weight:500}#btn-view-more:hover{background:#333;transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}#loading-screen{background-color:var(--bg-dark);z-index:9999;justify-content:center;align-items:center;width:100vw;height:100dvh;transition:opacity .8s ease-in-out,visibility .8s ease-in-out;display:flex;position:fixed;top:0;left:0}#loading-screen.fade-out{opacity:0;visibility:hidden}.loader-content{text-align:center;color:#fff}.loader-title{letter-spacing:6px;text-transform:uppercase;margin-bottom:2rem;font-size:1.6rem;font-weight:300}.progress-bar-container{background:#ffffff26;width:180px;height:1px;margin:0 auto 1.5rem;overflow:hidden}#progress-bar{background:#fff;width:0%;height:100%;transition:width .2s}#loading-text{color:#666;letter-spacing:2px;text-transform:uppercase;font-size:.7rem}.modal-overlay{z-index:9999;opacity:0;pointer-events:none;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:auto}.hidden{display:none!important}.modal-card{border-radius:var(--radius-card);background:#fff;width:90%;max-width:500px;padding:3rem;transition:transform .4s cubic-bezier(.165,.84,.44,1);position:relative;transform:translateY(0);box-shadow:0 30px 60px #00000026}.small-card{text-align:center;max-width:400px}.modal-overlay.hidden .modal-card{transform:translateY(30px)}.close-modal-btn{cursor:pointer;color:#bbb;font-size:1.8rem;transition:color .3s;position:absolute;top:1.5rem;right:2rem}.close-modal-btn:hover{color:var(--text-main)}.modal-body{text-align:left}.category-badge{text-transform:uppercase;letter-spacing:1.5px;border-radius:var(--radius-rounded);color:var(--text-muted);background:#f0f0f0;margin-bottom:.8rem;padding:.3rem .8rem;font-size:.7rem;font-weight:600;display:inline-block}.modal-card h3{color:var(--text-main);margin-bottom:.4rem;font-size:1.6rem;font-weight:400}.art-specs{color:var(--text-muted);margin-bottom:1.5rem;font-size:.9rem}.modal-divider{background:var(--border-light);border:0;height:1px;margin-bottom:1.5rem}.art-description{color:#444;margin-bottom:2rem;font-size:.95rem;line-height:1.7}.primary-action-btn,#lead-form button[type=submit]{background:var(--text-main);color:#fff;cursor:pointer;letter-spacing:.5px;width:100%;transition:var(--transition-smooth);border:none;border-radius:6px;margin-top:1rem;padding:1rem;font-size:.9rem;font-weight:500}.primary-action-btn:hover,#lead-form button[type=submit]:hover{background:#333}#lead-form input,#lead-form textarea{width:100%;font-size:.95rem;font-family:var(--font-primary);border:1px solid #ddd;border-radius:6px;outline:none;margin-bottom:1rem;padding:.8rem;transition:border-color .3s}#lead-form input:focus,#lead-form textarea:focus{border-color:var(--text-main)}#lead-form textarea{resize:vertical;min-height:100px}@media (width<=992px){.ui-top-btn{padding:.5rem .8rem;font-size:.7rem;top:1rem;right:1rem}#gyro-activate-btn{padding:.5rem 1rem;font-size:.75rem;top:1rem;bottom:auto;left:1rem}#filter-dropdown-wrapper{top:3.5rem;left:1rem}#filter-toggle-btn{padding:8px 16px;font-size:12px}#filter-menu-options{min-width:150px}#btn-prev{left:.5rem}#btn-next{right:.5rem}.nav-btn{width:42px;height:42px}#info-panel{border-radius:20px;flex-direction:column;gap:.8rem;width:88%;padding:1rem 1.5rem;bottom:1.5rem}.text-container{text-align:center}#art-title{white-space:normal;font-size:1rem}#art-details{white-space:normal;font-size:.75rem}#btn-view-more{width:100%;padding:.7rem}}@media (width<=992px) and (orientation:landscape){.ui-top-btn{transform-origin:100% 0;top:.5rem;right:1rem;transform:scale(.85)}#gyro-activate-btn{transform-origin:0 100%;top:auto;bottom:.5rem;left:1rem;transform:scale(.85)}#filter-dropdown-wrapper{transform-origin:0 0;top:.5rem;left:1rem;transform:scale(.85)}#info-panel{border-radius:50px;flex-direction:row;justify-content:space-between;width:95%;padding:.5rem 1.5rem;bottom:.5rem}.text-container{text-align:left;margin-bottom:0;margin-right:1rem}#art-title{margin-bottom:0;font-size:.9rem}#art-details{display:none}#btn-view-more{width:auto;margin-top:0;padding:.5rem 1.5rem}.modal-card{max-height:90dvh;padding:1.5rem;overflow-y:auto}}
